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

連續滿足如何編寫 [MC]

  • MC用戶求助:

    不知道您這里是要求close>lowest(L,10) 連續滿足十根bar還是十天,那這兩種情況下面都會給出相應的代碼:

    一、連續滿足十根bar,countif(close>lowest(L,10),10)=10即可,因為countif(test,length)統計的是最近length根bar(包括當根bar)上test成立的次數,若結果是length次就表明連續length根bar都滿足條件。

    二、連續滿足十天,這個有點麻煩,需要使用數組、關于每天的開始時間和結束時間的初始參數。
    input: starttime(2100), endtime(1500);
    {一天的開始時間starttime和一天的結束時間endtime}
    var: flag(-1), var_true(true);
    {flag用于統計天數,var_true變量用于判斷當天close>lowest(low,10)是否連續成立,默認是true}

    array: arr0[9](false);

    if time=starttime then begin
    ? ? ? ? var_true=true;
    ? ? ? ? flag=flag+1;
    end;
    {每天的開始時間點,變量設定,將flag累加1,將var_true賦值為true,因為在下面只判斷為false的情況}

    if flag<>-1 and var_true=true and close<=lowest(low,10) then
    ? ? ? ? var_true=false;
    {判斷當天是否有不連續的情況,若有則賦值var_true為false,當天的剩余時間將不再判斷}

    if time=endtime and flag<>-1 then
    ? ? ? ? arr0[mod(flag,10)]=var_true;
    {每天的結束時間點,將var_true賦值存儲到數組中,通過mod求余運算,使數組中存儲的是始終是最近10天是否連續的情況}

    if flag>9 then
    ? ? ? ? condition1=not array_contains(arr0,false);
    {當flag>9說明數組中已經存儲了最近10天是否連續的情況,若數組中沒有false,則說明連續10天close>lowest(low,10)成立,此時condition1為true;否則condition1為false}

    注意事項:對于短周期,比如1分鐘甚至更小,或者對于交易量比較小的商品合約,有可能開始時間或者結束時間點沒有K線,那么這個算法就會出現問題;所以這里只是給出一個模板,關于時間的界定,您可能需要貼出您的具體情境,然后特別定制代碼界定時間。

    此外,更簡單的辦法是,通過插入日線周期的子圖,然后聲明一個基于子圖的變量,通過這個變量來保存當天是否連續。

    ?

  • MC回復討論一:

    不知道您這里是要求close>lowest(L,10) 連續滿足十根bar還是十天,那這兩種情況下面都會給出相應的代碼:

    一、連續滿足十根bar,countif(close>lowest(L,10),10)=10即可,因為countif(test,length)統計的是最近length根bar(包括當根bar)上test成立的次數,若結果是length次就表明連續length根bar都滿足條件。

    二、連續滿足十天,這個有點麻煩,需要使用數組、關于每天的開始時間和結束時間的初始參數。
    input: starttime(2100), endtime(1500);
    {一天的開始時間starttime和一天的結束時間endtime}
    var: flag(-1), var_true(true);
    {flag用于統計天數,var_true變量用于判斷當天close>lowest(low,10)是否連續成立,默認是true}

    array: arr0[9](false);

    if time=starttime then begin
    ? ? ? ? var_true=true;
    ? ? ? ? flag=flag+1;
    end;
    {每天的開始時間點,變量設定,將flag累加1,將var_true賦值為true,因為在下面只判斷為false的情況}

    if flag<>-1 and var_true=true and close<=lowest(low,10) then
    ? ? ? ? var_true=false;
    {判斷當天是否有不連續的情況,若有則賦值var_true為false,當天的剩余時間將不再判斷}

    if time=endtime and flag<>-1 then
    ? ? ? ? arr0[mod(flag,10)]=var_true;
    {每天的結束時間點,將var_true賦值存儲到數組中,通過mod求余運算,使數組中存儲的是始終是最近10天是否連續的情況}

    if flag>9 then
    ? ? ? ? condition1=not array_contains(arr0,false);
    {當flag>9說明數組中已經存儲了最近10天是否連續的情況,若數組中沒有false,則說明連續10天close>lowest(low,10)成立,此時condition1為true;否則condition1為false}

    注意事項:對于短周期,比如1分鐘甚至更小,或者對于交易量比較小的商品合約,有可能開始時間或者結束時間點沒有K線,那么這個算法就會出現問題;所以這里只是給出一個模板,關于時間的界定,您可能需要貼出您的具體情境,然后特別定制代碼界定時間。

    此外,更簡單的辦法是,通過插入日線周期的子圖,然后聲明一個基于子圖的變量,通過這個變量來保存當天是否連續。

 

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

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


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

相關文章

    沒有相關內容
主站蜘蛛池模板: 黄瓜视频在线观看| а天堂中文最新版在线| 永生动漫免费观看完整版高清西瓜| 奇米影视第四色在线| 亚洲av无码一区二区三区性色| 色视频线观看在线播放| 国产美女一级毛片| 中文字幕无码日韩欧毛| 欧亚专线欧洲s码wm| 人人爽人人澡人人高潮| 蜜柚最新在线观看| 国产福利在线视频尤物tv| a级毛片免费播放| 文中字幕一区二区三区视频播放| 亚洲精品无码专区在线| 美女范冰冰hdxxxx| 国产成人涩涩涩视频在线观看 | 国产免费AV片在线观看播放| 99久久人妻精品免费一区| 成人欧美日韩一区二区三区| 久草福利在线观看| 欧美精品dorcelclub全集31| 免费的成人a视频在线观看| 视频二区好吊色永久视频| 国产欧美第一页| 91福利国产在线观看网站| 女邻居拉开裙子让我挺进| 丰满少妇被猛烈进入无码| 晚上睡不着来b站一次看过瘾| 先锋影音av资源网| 色偷偷亚洲第一综合网| 国产无遮挡又黄又爽在线观看| 一个人看的在线免费视频| 日本道在线播放| 亚洲一区二区观看播放| 欧美精品一区二区三区在线| 免费国产成人午夜电影| 美女视频黄频大全免费| 国产偷v国产偷v国产| 久草视频在线免费| 国产精品成人观看视频国产奇米|