您現在的位置:程序化交易>> 期貨公式>> (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  點擊這里給我發消息進行 有償 編寫!不貴!點擊查看價格!


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

相關文章

    沒有相關內容
主站蜘蛛池模板: 欧洲精品无码一区二区三区在线播放 | 国产强伦姧在线观看无码| 一个人看的免费高清视频日本| 91色在线观看| 孪生兄弟3ph尴尬| 久久精品国产99久久久| 正在播放西川ゆい在线| 啊好深好硬快点用力视频| 国产精品嫩草影院人体模特| 在线a免费观看最新网站| 中文字幕无码不卡免费视频| 97视频资源总站| 色婷婷丁香六月| 国产精品深爱在线| √天堂资源最新版中文种子| 日本精品视频一区二区| 亚洲国产精品久久网午夜| 秋霞日韩久久理论电影| 国产三级在线观看视小说| 日本免费网站视频www区| 图片区亚洲色图| 一级做a爰片久久免费| 日本无遮挡边做边爱边摸| 亚洲中文无码a∨在线观看| 波多野结衣作品大全| 午夜福利一区二区三区在线观看 | 中文字幕侵犯一色桃子视频| 最近的中文字幕大全免费版| 亚洲毛片无码专区亚洲乱| 精品久久久久久无码中文字幕 | 女人被免费网站视频在线| 中文无码热在线视频| 日韩大片观看网址| 亚洲午夜精品一级在线播放放| 炕上摸着老妇雪白肥臀| 六月婷婷中文字幕| 老司机久久精品| 国产中文字幕在线免费观看| 91精品免费国产高清在线| 国产精品亚洲精品日韩已方| 久久9精品久久久|