您現(xiàn)在的位置:程序化交易>> 期貨公式>> (MC)multicharts>> MC知識>>正文內(nèi)容

如何獲取某一時段內(nèi)的開高低收 [MC]

  • MC用戶求助:

    MCpro版本有HighS和LowS函數(shù),沒有OpenS和CloseS函數(shù),MC8.8和MC8s都沒有。下面是OHLCPeriodsAgo的代碼。

    inputs:?

    ? ? ? ? PeriodType( numericsimple ),? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

    ? ? ? ? PeriodsAgo( numericsimple ),?

    ? ? ? ? oPeriodOpen( numericref ),?

    ? ? ? ? oPeriodHigh( numericref ),?

    ? ? ? ? oPeriodLow( numericref ),?

    ? ? ? ? oPeriodClose( numericref ) ;

    variables:

    ? ? ? ? var0( 0 ), sess_last_bar(false) ;

    arrays:

    ? ? ? ? arr0[ 4, 50 ]( -1 ) ;

    sess_last_bar = sessionlastbar;

    condition1 = PeriodsAgo > 50 or BarType > IFF(PeriodType<>0, PeriodType + 1, PeriodType + 2) or BarType > 4 ;

    if condition1 then

    ? ? ? ? begin

    ? ? ? ? oPeriodOpen = -1 ;

    ? ? ? ? oPeriodHigh = -1 ;

    ? ? ? ? oPeriodLow = -1 ;

    ? ? ? ? oPeriodClose = -1 ;

    ? ? ? ? OHLCPeriodsAgo = -1 ;

    ? ? ? ? end

    else

    ? ? ? ? begin? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??

    ? ? ? ? if PeriodType = 0 then

    ? ? ? ? ? ? ? ? Condition1 = sess_last_bar[1]

    ? ? ? ? else if PeriodType = 1 then

    ? ? ? ? ? ? ? ? Condition1 = Date <> Date[1]

    ? ? ? ? else if PeriodType = 2 then

    ? ? ? ? ? ? ? ? Condition1 = DayOfWeek( Date ) < DayOfWeek( Date[1] )

    ? ? ? ? else if PeriodType = 3 then

    ? ? ? ? ? ? ? ? Condition1 = Month( Date ) <> Month( Date[1] )?

    ? ? ? ? else if PeriodType = 4 then

    ? ? ? ? ? ? ? ? Condition1 = Year( Date ) <> Year( Date[1] ) ;

    ? ? ? ? condition1 = CurrentBar = 1 or Condition1 ;

    ? ? ? ? if condition1 then? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

    ? ? ? ? ? ? ? ? begin

    ? ? ? ? ? ? ? ? var0 = var0 - 1 ;? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??

    ? ? ? ? ? ? ? ? if var0 = -1?

    ? ? ? ? ? ? ? ? ? ? ? ? then var0 = 50 ;? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

    ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

    ? ? ? ? ? ? ? ? arr0[ 1, var0 ] = O ;

    ? ? ? ? ? ? ? ? arr0[ 2, var0 ] = H ;

    ? ? ? ? ? ? ? ? arr0[ 3, var0 ] = L ;

    ? ? ? ? ? ? ? ? arr0[ 4, var0 ] = C ;

    ? ? ? ? ? ? ? ? end?

    ? ? ? ? else? ? ? ? ? ? ? ? ? ? ? ?

    ? ? ? ? ? ? ? ? begin

    ? ? ? ? ? ? ? ? condition1 = H > arr0[ 2, var0 ] ;

    ? ? ? ? ? ? ? ? if condition1 then arr0[ 2, var0 ] = H ;

    ? ? ? ? ? ? ? ? condition1 = L < arr0[ 3, var0 ] ;

    ? ? ? ? ? ? ? ? if condition1 then arr0[ 3, var0 ] = L ;

    ? ? ? ? ? ? ? ? arr0[ 4, var0 ] = C ;

    ? ? ? ? ? ? ? ? end ;

    ? ? ? ? oPeriodOpen = arr0[ 1, Mod( var0 + PeriodsAgo, 51 ) ] ;

    ? ? ? ? oPeriodHigh = arr0[ 2, Mod( var0 + PeriodsAgo, 51 ) ] ;

    ? ? ? ? oPeriodLow = arr0[ 3, Mod( var0 + PeriodsAgo, 51 ) ] ;

    ? ? ? ? oPeriodClose = arr0[ 4, Mod( var0 + PeriodsAgo, 51 ) ] ;

    ? ? ? ? OHLCPeriodsAgo = 1 ;

    ? ? ? ? end ;? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

    if false then

    ? ? ? ? Value1 = OHLCPeriodsAgo[1] ;

    ?

  • MC回復(fù)討論一:

    MCpro版本有HighS和LowS函數(shù),沒有OpenS和CloseS函數(shù),MC8.8和MC8s都沒有。下面是OHLCPeriodsAgo的代碼。

    inputs:?

    ? ? ? ? PeriodType( numericsimple ),? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

    ? ? ? ? PeriodsAgo( numericsimple ),?

    ? ? ? ? oPeriodOpen( numericref ),?

    ? ? ? ? oPeriodHigh( numericref ),?

    ? ? ? ? oPeriodLow( numericref ),?

    ? ? ? ? oPeriodClose( numericref ) ;

    variables:

    ? ? ? ? var0( 0 ), sess_last_bar(false) ;

    arrays:

    ? ? ? ? arr0[ 4, 50 ]( -1 ) ;

    sess_last_bar = sessionlastbar;

    condition1 = PeriodsAgo > 50 or BarType > IFF(PeriodType<>0, PeriodType + 1, PeriodType + 2) or BarType > 4 ;

    if condition1 then

    ? ? ? ? begin

    ? ? ? ? oPeriodOpen = -1 ;

    ? ? ? ? oPeriodHigh = -1 ;

    ? ? ? ? oPeriodLow = -1 ;

    ? ? ? ? oPeriodClose = -1 ;

    ? ? ? ? OHLCPeriodsAgo = -1 ;

    ? ? ? ? end

    else

    ? ? ? ? begin? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??

    ? ? ? ? if PeriodType = 0 then

    ? ? ? ? ? ? ? ? Condition1 = sess_last_bar[1]

    ? ? ? ? else if PeriodType = 1 then

    ? ? ? ? ? ? ? ? Condition1 = Date <> Date[1]

    ? ? ? ? else if PeriodType = 2 then

    ? ? ? ? ? ? ? ? Condition1 = DayOfWeek( Date ) < DayOfWeek( Date[1] )

    ? ? ? ? else if PeriodType = 3 then

    ? ? ? ? ? ? ? ? Condition1 = Month( Date ) <> Month( Date[1] )?

    ? ? ? ? else if PeriodType = 4 then

    ? ? ? ? ? ? ? ? Condition1 = Year( Date ) <> Year( Date[1] ) ;

    ? ? ? ? condition1 = CurrentBar = 1 or Condition1 ;

    ? ? ? ? if condition1 then? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

    ? ? ? ? ? ? ? ? begin

    ? ? ? ? ? ? ? ? var0 = var0 - 1 ;? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??

    ? ? ? ? ? ? ? ? if var0 = -1?

    ? ? ? ? ? ? ? ? ? ? ? ? then var0 = 50 ;? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

    ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

    ? ? ? ? ? ? ? ? arr0[ 1, var0 ] = O ;

    ? ? ? ? ? ? ? ? arr0[ 2, var0 ] = H ;

    ? ? ? ? ? ? ? ? arr0[ 3, var0 ] = L ;

    ? ? ? ? ? ? ? ? arr0[ 4, var0 ] = C ;

    ? ? ? ? ? ? ? ? end?

    ? ? ? ? else? ? ? ? ? ? ? ? ? ? ? ?

    ? ? ? ? ? ? ? ? begin

    ? ? ? ? ? ? ? ? condition1 = H > arr0[ 2, var0 ] ;

    ? ? ? ? ? ? ? ? if condition1 then arr0[ 2, var0 ] = H ;

    ? ? ? ? ? ? ? ? condition1 = L < arr0[ 3, var0 ] ;

    ? ? ? ? ? ? ? ? if condition1 then arr0[ 3, var0 ] = L ;

    ? ? ? ? ? ? ? ? arr0[ 4, var0 ] = C ;

    ? ? ? ? ? ? ? ? end ;

    ? ? ? ? oPeriodOpen = arr0[ 1, Mod( var0 + PeriodsAgo, 51 ) ] ;

    ? ? ? ? oPeriodHigh = arr0[ 2, Mod( var0 + PeriodsAgo, 51 ) ] ;

    ? ? ? ? oPeriodLow = arr0[ 3, Mod( var0 + PeriodsAgo, 51 ) ] ;

    ? ? ? ? oPeriodClose = arr0[ 4, Mod( var0 + PeriodsAgo, 51 ) ] ;

    ? ? ? ? OHLCPeriodsAgo = 1 ;

    ? ? ? ? end ;? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

    if false then

    ? ? ? ? Value1 = OHLCPeriodsAgo[1] ;

    ?

  • MC回復(fù)討論二:

    再請教下老師:

    之前的問題算是明白了。但關(guān)于這個Session的定義與計算,我發(fā)現(xiàn)周五夜盤與周一早盤,系統(tǒng)會當(dāng)成是兩個Session(如圖),這樣會導(dǎo)致我的策略計算有誤,請問有何辦法解決這個問題?

    ?

  • MC回復(fù)討論三:

    我將原始的OHLCPeriodsAgo函數(shù)的代碼做了調(diào)整,使該代碼可以完全用于國內(nèi)期貨交易所的時間段,不會出現(xiàn)周五夜盤與周一早盤分成兩個交易時段的問題。詳細(xì)見代碼附件,順便寫了調(diào)整后的HighS和lowS代碼

    代碼見鏈接:

    http://dl.icetech.com.cn/download/forums/test_OHLCPeriodsAgo.rar

    ?

  • MC回復(fù)討論四:

    我將原始的OHLCPeriodsAgo函數(shù)的代碼做了調(diào)整,使該代碼可以完全用于國內(nèi)期貨交易所的時間段,不會出現(xiàn)周五夜盤與周一早盤分成兩個交易時段的問題。詳細(xì)見代碼附件,順便寫了調(diào)整后的HighS和lowS代碼

    代碼見鏈接:

    http://dl.icetech.com.cn/download/forums/test_OHLCPeriodsAgo.rar

 

有思路,想編寫各種指標(biāo)公式,程序化交易模型,選股公式,預(yù)警公式的朋友

可聯(lián)系技術(shù)人員 QQ: 511411198  點擊這里給我發(fā)消息進(jìn)行 有償 編寫!不貴!點擊查看價格!


【字體: 】【打印文章】【查看評論

相關(guān)文章

    沒有相關(guān)內(nèi)容
主站蜘蛛池模板: 香蕉久久夜色精品国产尤物| www.99re| 欧美午夜伦理片| 同性女电影三级中文字幕| 男女真实无遮挡xx00动态图120秒| 少妇人妻偷人精品视频| 久久精品成人无码观看56| 毛片免费全部免费观看| 唐人电影社欧美一区二区| 日本免费a视频| 夜夜夜精品视频免费| 中文字幕无码无码专区| 最近免费观看高清韩国日本大全| 交性大片欧美网| 自拍另类综合欧美小说| 国产日韩精品一区二区在线观看| 99免费观看视频| 性满足久久久久久久久| 久久福利资源网站免费看| 欧美成人午夜视频| 免费h视频在线观看| 色九月亚洲综合网| 国产无遮挡无码视频免费软件| 99riav视频国产在线看| 性做久久久久久| 久久久久无码中| 极品肌肉军警h文| 亚洲欧美日韩精品久久久| 男生被男生到爽动漫| 四虎国产永久免费久久| 颤声娇是什么意思| 国产真实乱了全集磁力| 91色综合综合热五月激情| 好男人手机在线| 中文字幕在线永久视频| 日韩一级欧美一级在线观看| 亚洲乱码国产乱码精品精| 毛片A级毛片免费播放| 免费在线视频你懂的| 美女脱了内裤打开腿让你桶爽 | 中文字幕色网站|