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

如何指出指定時間內(nèi)的高低收位置? [MC]

  • MC用戶求助: 您可以看一下帖子http://forums.touchance.cn/forum ... &extra=page%3D1,里面說的比較詳細。
    一、由于HighS和LowS函數(shù)中使用了關(guān)鍵字sessionlastbar來區(qū)分交易所時段,不同的交易所對于時間的劃分可能不一樣,同一個交易所不同的商品合約對于交易時段的劃分也可能不一樣,關(guān)于某個商品合約的交易所時段您可以在報價管理器中查看。
    二、恒指期貨的交易所時段是從9:15到23:45,所以通過highD和HighS函數(shù)求得的交易日的最高價是一樣的,對于LowD和LowS、closeD和closeS、OpenD和OpenS求得的值都是一樣的。
    三、如果您只是想求得日市,也就是恒指的9:15到16:30時間段內(nèi)的最高價、最低價、開盤價和收盤價,那么您需要自己寫一個特定的函數(shù)(對HighD、LowD、closeD、openD進行修改就可以了),MC中沒有針對特殊時段的求日內(nèi)最高價、最低價、開盤價和收盤價的函數(shù)。

    ?

  • MC回復(fù)討論一: 您可以看一下帖子http://forums.touchance.cn/forum ... &extra=page%3D1,里面說的比較詳細。
    一、由于HighS和LowS函數(shù)中使用了關(guān)鍵字sessionlastbar來區(qū)分交易所時段,不同的交易所對于時間的劃分可能不一樣,同一個交易所不同的商品合約對于交易時段的劃分也可能不一樣,關(guān)于某個商品合約的交易所時段您可以在報價管理器中查看。
    二、恒指期貨的交易所時段是從9:15到23:45,所以通過highD和HighS函數(shù)求得的交易日的最高價是一樣的,對于LowD和LowS、closeD和closeS、OpenD和OpenS求得的值都是一樣的。
    三、如果您只是想求得日市,也就是恒指的9:15到16:30時間段內(nèi)的最高價、最低價、開盤價和收盤價,那么您需要自己寫一個特定的函數(shù)(對HighD、LowD、closeD、openD進行修改就可以了),MC中沒有針對特殊時段的求日內(nèi)最高價、最低價、開盤價和收盤價的函數(shù)。

    ?

  • MC回復(fù)討論二: (對HighD、LowD、closeD、openD進行修改就可以了)<<這個我可以如何入手?
    是否先開一個$OHLCPeriodsAgo ,?
    修改內(nèi)容


    然後新增名為??$HighD 的函數(shù)

    inputs: PeriodsAgo( numericsimple ) ;
    variables: var1(0), var2(0), var3(0), var4(0) ;
    Value1 = $OHLCPeriodsAgo( PeriodsAgo, var1, var2, var3, var4 ) ;
    $HighD = var2 ;

    ?

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

    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 ;
    ? ?? ???test_OHLCPeriodsAgo = -1 ;
    ? ?? ???end
    else
    ? ?? ???begin
    ? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??
    ? ?? ???if PeriodType = 0 then
    ? ?? ?? ?? ?? ? Condition1 = sess_last_bar[1] and time[1]<=1600 and time[1]>=1130
    ? ?? ???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 if PeriodType = 1 and time<=1630 then? ?? ?? ?? ?? ?? ?? ?? ?? ???
    ? ?? ?? ?? ?? ? 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?
    ? ?? ???else if periodtype<>1 then
    ? ?? ?? ?? ?? ? 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 ) ] ;

    ? ?? ???test_OHLCPeriodsAgo = 1 ;
    ? ?? ???end ;

    ? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?
    ? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??
    if false then
    ? ?? ???Value1 = test_OHLCPeriodsAgo[1] ;

    這個是您需要的代碼,新建一個函數(shù)腳本,名稱命名為test_ohlcperiodsago即可,然后再新建test_highd函數(shù),在內(nèi)部調(diào)用test_ohlcperiodsago函數(shù)即可。

    ?

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

    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 ;
    ? ?? ???test_OHLCPeriodsAgo = -1 ;
    ? ?? ???end
    else
    ? ?? ???begin
    ? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??
    ? ?? ???if PeriodType = 0 then
    ? ?? ?? ?? ?? ? Condition1 = sess_last_bar[1] and time[1]<=1600 and time[1]>=1130
    ? ?? ???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 if PeriodType = 1 and time<=1630 then? ?? ?? ?? ?? ?? ?? ?? ?? ???
    ? ?? ?? ?? ?? ? 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?
    ? ?? ???else if periodtype<>1 then
    ? ?? ?? ?? ?? ? 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 ) ] ;

    ? ?? ???test_OHLCPeriodsAgo = 1 ;
    ? ?? ???end ;

    ? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?
    ? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??
    if false then
    ? ?? ???Value1 = test_OHLCPeriodsAgo[1] ;

    這個是您需要的代碼,新建一個函數(shù)腳本,名稱命名為test_ohlcperiodsago即可,然后再新建test_highd函數(shù),在內(nèi)部調(diào)用test_ohlcperiodsago函數(shù)即可。

 

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

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


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

相關(guān)文章

    沒有相關(guān)內(nèi)容
主站蜘蛛池模板: 老鸭窝在线视频观看| 亚洲午夜国产精品无码老牛影视| 99自拍视频在线观看| 欧美激情综合亚洲五月蜜桃| 国产一区二区三区在线免费| 3d动漫精品啪啪一区二区免费| 日韩精品成人一区二区三区| 同性女女黄h片在线播放| Aⅴ精品无码无卡在线观看| 日本最新免费二区三区| 亚洲欧洲无码av不卡在线| 领导边摸边吃奶边做爽在线观看 | 成人在线视频免费| 亚洲色图欧美色| 色欲AV无码一区二区三区| 国产精品嫩草影院人体模特| 久久五月天综合| 福利聚合app绿巨人入口| 国产精品一线二线三线| 中日韩中文字幕| 波多野结衣女上司| 国产在线拍偷自揄拍无码| 97精品伊人久久久大香线蕉| 日韩一区二区三区精品| 免费久久人人爽人人爽AV| 亚洲欧美自拍明星换脸| 天天干夜夜夜操| 久久精品国产一区二区三| 精品人妻一区二区三区四区 | 亚洲a级成人片在线观看| 美女被无套进入| 好妈妈5高清中字在线观看神马| 久久精品国产亚洲av水果派| 欧美日韩国产网站| 人妻系列无码专区久久五月天| 国产h视频在线观看网站免费| 尤物在线视频观看| 亚洲av无码片一区二区三区| 漂亮人妻被黑人久久精品| 午夜福利啪啪片| 诗涵留学荷兰被黑人摘小说|