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

請老師幫我看一下這個畫圖的代碼出現了什么問題 [MC]

  • MC用戶求助:

    input:n(36);

    Var:x(0),z(0),z_sell(0),z_buy(0);

    once begin

    ? ? ? ?value1=tl_new(date ,2100,z,date ,2300,z);?

    ? ? ? ?value2=tl_new(date ,2100,z_Sell,date ,2300,z_Sell);

    ? ? ? ?value3=tl_new(date ,2100,z_buy,date ,2300,z_buy);

    ? ? end;

    ?

    ?

    x=AvgTrueRange(n);

    ? ? ? z=open;

    ? ? ? ?z_sell= z + 2 * x;

    ? ? ? ?z_buy= z - 2 * x;

    ? ? ? ? tl_setbegin(value1,date,2100,z);

    ? ? ? ? tl_setend(value1,date,2300,z);

    ?

    第一、tl_new是用于新建趨勢線的,每次新建時會返回該趨勢線的編號;

    第二、tl_setbegin和tl_setend用于更改趨勢線的開始位置和終點位置,通過趨勢線的編號;

    第三、MC是每一根bar執行一次計算,而您的代碼是每次計算時都執行三次tl_new,從而導致每次計算時都新建三條趨勢線,所以才會那么多趨勢線,這樣很占用資源的。

    第四、once關鍵字的用法見帖子http://forums.icetech.com.cn/for ... &highlight=once

    ?

  • MC回復討論一:

    input:n(36);

    Var:x(0),z(0),z_sell(0),z_buy(0);

    once begin

    ? ? ? ?value1=tl_new(date ,2100,z,date ,2300,z);?

    ? ? ? ?value2=tl_new(date ,2100,z_Sell,date ,2300,z_Sell);

    ? ? ? ?value3=tl_new(date ,2100,z_buy,date ,2300,z_buy);

    ? ? end;

    ?

    ?

    x=AvgTrueRange(n);

    ? ? ? z=open;

    ? ? ? ?z_sell= z + 2 * x;

    ? ? ? ?z_buy= z - 2 * x;

    ? ? ? ? tl_setbegin(value1,date,2100,z);

    ? ? ? ? tl_setend(value1,date,2300,z);

    ?

    第一、tl_new是用于新建趨勢線的,每次新建時會返回該趨勢線的編號;

    第二、tl_setbegin和tl_setend用于更改趨勢線的開始位置和終點位置,通過趨勢線的編號;

    第三、MC是每一根bar執行一次計算,而您的代碼是每次計算時都執行三次tl_new,從而導致每次計算時都新建三條趨勢線,所以才會那么多趨勢線,這樣很占用資源的。

    第四、once關鍵字的用法見帖子http://forums.icetech.com.cn/for ... &highlight=once

    ?

  • MC回復討論二:

    老師您好,我在問題里面沒有描述清楚,用了您的改動發現還是沒有得到我需要的效果。我重新描述一遍問題吧:

    我想做一個日內突破模型,中心線(一條水平線)是每日9:00和每夜21:00的開盤價,然后沿著中心線每隔一個ATR單位便畫一條水平線,白天的代碼如下,if date <> Date[1] then

    begin

    ? ? ? ? Y = Opend(0) ;

    ? ? ? ? Y_Sell1 = Y + x ;

    ? ? ? ? Y_Sell2 = Y + 2 * x ;?

    ? ? ? ? Y_Sell3 = Y + 3 * x ;

    ? ? ? ? y_buy1 = Y - x ;

    ? ? ? ? Y_Buy2 = Y - 2 * x ;

    ? ? ? ? Y_buy3 = Y - 3 * x ;

    ? ? ? ? tl_new(date ,0900,Y,date ,1500,Y);?

    ? ? ? ? tl_new(date ,0900,Y_Sell1,date ,1500,Y_Sell1);

    ? ? ? ? tl_new(date ,0900,Y_Sell2,date ,1500,Y_Sell2);

    ? ? ? ? tl_new(date, 0900,y_sell3,date ,1500,y_sell3);

    ? ? ? ? tl_new(date ,0900,y_buy1,date ,1500,y_buy1);

    ? ? ? ? tl_new(date ,0900,Y_Buy2,date ,1500,Y_Buy2);

    ? ? ? ?tl_new(date, 0900,Y_buy3,date ,1500,Y_buy3);??

    end ;

    這樣寫完全能夠畫出我需要的線。但是晚上就不太靈了,經過我這一天的查詢與詢問,頂多能寫出如下的代碼(這里面的開盤價opedndy是我在論壇查詢夜盤代碼時查出來的,導入的函數,發現還挺好用,確實起到了夜盤21:00開盤價的作用):

    if time>=2100 and date=date[1] then?

    begin

    ? ? ? ?z=opendy(0);

    ? ? ? ? z_Sell1 = z + x ;

    ? ? ? ? z_Sell2 = z + 2 * x ;?

    ? ? ? ? z_Sell3 = z + 3 * x ;

    ? ? ? ? z_buy1 = z - x ;

    ? ? ? ? z_Buy2 = z - 2 * x ;

    ? ? ? ? z_buy3 = z - 3 * x ;

    ? ? ? ? tl_new(date ,2100,z,date ,2300,z);?

    ? ? ? ? tl_new(date ,2100,z_Sell1,date ,2300,z_Sell1);

    ? ? ? ? tl_new(date ,2100,z_Sell2,date ,2300,z_Sell2);

    ? ? ? ? tl_new(date, 2100,z_sell3,date ,2300,z_sell3);

    ? ? ? ? tl_new(date ,2100,z_buy1,date ,2300,z_buy1);

    ? ? ? ? tl_new(date ,2100,z_Buy2,date ,2300,z_Buy2);

    ? ? ? ?tl_new(date, 2100,z_buy3,date ,2300,z_buy3);??

    end;

    但是得到的還是無數條很亂的水平線,不像白天的那種很規律的七條線。

    我也試了您說的once begin函數,但是由于看不太懂說明,所以也是不太奏效,不知應該怎樣改進才可以?

    ?

  • MC回復討論三:

    if date <> Date[1] then

    begin

    ? ? ? ? Y = open;?

    {通過date<>date[1]來界定這段begin end內部的代碼只在白天開盤第一根bar執行,然后取open價格就可以了}

    ? ? ? ? Y_Sell1 = Y + x ;

    ? ? ? ? Y_Sell2 = Y + 2 * x ;?

    ? ? ? ? Y_Sell3 = Y + 3 * x ;

    ? ? ? ? y_buy1 = Y - x ;

    ? ? ? ? Y_Buy2 = Y - 2 * x ;

    ? ? ? ? Y_buy3 = Y - 3 * x ;

    ? ? ? ? tl_new(date ,0900,Y,date ,1500,Y);?

    ? ? ? ? tl_new(date ,0900,Y_Sell1,date ,1500,Y_Sell1);

    ? ? ? ? tl_new(date ,0900,Y_Sell2,date ,1500,Y_Sell2);

    ? ? ? ? tl_new(date, 0900,y_sell3,date ,1500,y_sell3);

    ? ? ? ? tl_new(date ,0900,y_buy1,date ,1500,y_buy1);

    ? ? ? ? tl_new(date ,0900,Y_Buy2,date ,1500,Y_Buy2);

    ? ? ? ?tl_new(date, 0900,Y_buy3,date ,1500,Y_buy3);??

    end ;

    ?

    if time>=2100 and time[1]<=1500 then?

    {通過time>=2100 and time[1]<=1500來界定這段begin end內部的代碼只在夜盤開盤第一根bar執行,然后取open價格就可以了}

    begin

    ? ? ? ?z=open;

    ? ? ? ? z_Sell1 = z + x ;

    ? ? ? ? z_Sell2 = z + 2 * x ;?

    ? ? ? ? z_Sell3 = z + 3 * x ;

    ? ? ? ? z_buy1 = z - x ;

    ? ? ? ? z_Buy2 = z - 2 * x ;

    ? ? ? ? z_buy3 = z - 3 * x ;

    ?

    ? ? ? ? tl_new(date ,2100,z,date ,2300,z);?

    ? ? ? ? tl_new(date ,2100,z_Sell1,date ,2300,z_Sell1);

    ? ? ? ? tl_new(date ,2100,z_Sell2,date ,2300,z_Sell2);

    ? ? ? ? tl_new(date, 2100,z_sell3,date ,2300,z_sell3);

    ? ? ? ? tl_new(date ,2100,z_buy1,date ,2300,z_buy1);

    ? ? ? ? tl_new(date ,2100,z_Buy2,date ,2300,z_Buy2);

    ? ? ? ?tl_new(date, 2100,z_buy3,date ,2300,z_buy3);??

    end;

    ?

  • MC回復討論四:

    if date <> Date[1] then

    begin

    ? ? ? ? Y = open;?

    {通過date<>date[1]來界定這段begin end內部的代碼只在白天開盤第一根bar執行,然后取open價格就可以了}

    ? ? ? ? Y_Sell1 = Y + x ;

    ? ? ? ? Y_Sell2 = Y + 2 * x ;?

    ? ? ? ? Y_Sell3 = Y + 3 * x ;

    ? ? ? ? y_buy1 = Y - x ;

    ? ? ? ? Y_Buy2 = Y - 2 * x ;

    ? ? ? ? Y_buy3 = Y - 3 * x ;

    ? ? ? ? tl_new(date ,0900,Y,date ,1500,Y);?

    ? ? ? ? tl_new(date ,0900,Y_Sell1,date ,1500,Y_Sell1);

    ? ? ? ? tl_new(date ,0900,Y_Sell2,date ,1500,Y_Sell2);

    ? ? ? ? tl_new(date, 0900,y_sell3,date ,1500,y_sell3);

    ? ? ? ? tl_new(date ,0900,y_buy1,date ,1500,y_buy1);

    ? ? ? ? tl_new(date ,0900,Y_Buy2,date ,1500,Y_Buy2);

    ? ? ? ?tl_new(date, 0900,Y_buy3,date ,1500,Y_buy3);??

    end ;

    ?

    if time>=2100 and time[1]<=1500 then?

    {通過time>=2100 and time[1]<=1500來界定這段begin end內部的代碼只在夜盤開盤第一根bar執行,然后取open價格就可以了}

    begin

    ? ? ? ?z=open;

    ? ? ? ? z_Sell1 = z + x ;

    ? ? ? ? z_Sell2 = z + 2 * x ;?

    ? ? ? ? z_Sell3 = z + 3 * x ;

    ? ? ? ? z_buy1 = z - x ;

    ? ? ? ? z_Buy2 = z - 2 * x ;

    ? ? ? ? z_buy3 = z - 3 * x ;

    ?

    ? ? ? ? tl_new(date ,2100,z,date ,2300,z);?

    ? ? ? ? tl_new(date ,2100,z_Sell1,date ,2300,z_Sell1);

    ? ? ? ? tl_new(date ,2100,z_Sell2,date ,2300,z_Sell2);

    ? ? ? ? tl_new(date, 2100,z_sell3,date ,2300,z_sell3);

    ? ? ? ? tl_new(date ,2100,z_buy1,date ,2300,z_buy1);

    ? ? ? ? tl_new(date ,2100,z_Buy2,date ,2300,z_Buy2);

    ? ? ? ?tl_new(date, 2100,z_buy3,date ,2300,z_buy3);??

    end;

 

有思路,想編寫各種指標公式,程序化交易模型,選股公式,預警公式的朋友

可聯系技術人員 QQ: 511411198  點擊這里給我發消息進行 有償 編寫!不貴!點擊查看價格!


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

相關文章

    沒有相關內容
主站蜘蛛池模板: 国产精品综合色区在线观看| 一卡二卡三卡四卡在线| 久久久久亚洲AV无码专区首JN| 一区二区三区视频| 1024人成网站色| 羞羞视频免费看| 欧美日韩精品一区二区三区不卡 | 国产精品第12页| 国产乱女乱子视频在线播放 | 制服丝袜日韩欧美| 亚洲偷偷自拍高清| 中国一级特黄特级毛片| caoporn地址| 看全色黄大色大片| 日韩亚洲人成在线综合| 在线精品免费视频| 国产va免费高清在线观看| 国产一区二区三精品久久久无广告| 亚洲男女内射在线播放| 中文字幕日韩专区| 亚洲伊人tv综合网色| 男人女人做a视频| 无人在线观看视频高清视频8| 国产精品女人呻吟在线观看 | 窝窝午夜看片国产精品人体宴| 日本爽爽爽爽爽爽在线观看免 | 国内大量揄拍人妻精品視頻| 又粗又硬又大又爽免费视频播放 | 天堂资源最新在线| 国产一区二区三区夜色| 亚洲一区二区三区影院| 99在线免费观看视频| 美女扒开尿口让男人桶进| 日韩在线一区二区三区| 国产精品成人免费视频网站| 人妻互换一二三区激情视频| 中国娇小与黑人巨大交| 边摸边脱吃奶边高潮视频免费| 欧美性大战久久久久久| 在线观看精品视频看看播放| 公的大龟慢慢挺进我的体内视频 |