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

精華 once關鍵字限制其后的語句只執行一次 [MC]

  • MC用戶求助: once關鍵字限制其后的語句只執行一次
    (原創:Alex)

    未開啟bar內模式下,信號腳本是在每根bar收盤時執行一次(當然,導致信號腳本執行的因素還有其它情況,在此不深入探討),所以信號腳本會在整個策略運行中執行很多次,那么如何限制某些語句命令只執行一次,我們可以使用once關鍵字來實現,關鍵字once限制其后的一條語句(只能限制一條語句,即一條簡單語句或者包含多條簡單語句的復合語句,因為一條復合語句也是一條語句)在整個策略運行中只執行一次(once關鍵字也可以使用在指標和函數中,效果是一樣的,這里不再贅述),下面以限制語句value1=value1+1在整個策略運行中只執行一次為例進行介紹。

    ? 一、一般用法 once?(condition1)?value1=value1+1;

    這是once關鍵字一般的用法(condition1需要用括號括起來,否則會報錯),也就是當condition1第一次滿足的時候,執行后面的語句value1=value1+1;而當condition1第二次滿足或者后續再次滿足的時候,value1=value1+1語句不再執行;這樣就達到了使value1=value1+1語句命令在整個策略運行中只執行一次。

    ? 二、其它變化

    除了以上的一般用法之外,還有其它變化;若需要限制兩個語句或者更多的語句命令在策略運行中只執行一次,我們可以使用復合語句(由于once后面只能限制一條語句,而復合語句也是一條語句)來代替上面的value1=value1+1,如下面所示:

    once?(condition1)?begin ? ?? ??value1=value1+1; ? ?? ??value2=value2+1; end;

    若需要限制語句命令在信號腳本第一次執行的時候就執行該語句命令,可以使用下面的代碼,將condition1直接替換成true,更簡單的方法就是將condition1直接刪除掉,兩者的效果完全一樣:

    once?(true)?value1=value1+1; 或者 once?(true)?begin ? ?? ??value1=value1+1; end; 或者 once?value1=value1+1; 或者 once begin ? ?? ??value1=value1+1; end;

    ?

    ?

  • MC回復討論一:

    那一般在什么情況下會用到只執行一次的情況?

    ?

  • MC回復討論二:

    我個人一般使用once都是用在初始化情境中,當然特殊情況下需要看策略的需求了

 

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

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


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

相關文章

    沒有相關內容
主站蜘蛛池模板: 无码人妻一区二区三区免费看| 亚洲欧美日韩精品中文乱码| 亚洲国产精品午夜电影| 18禁止午夜福利体验区| 日韩制服丝袜电影| 国产精品二区三区免费播放心| 久久在精品线影院精品国产| 精品国产一区AV天美传媒| 国产麻豆精品免费密入口| 久久综合九色综合欧美就去吻| 精品欧美同性videosbest| 国精无码欧精品亚洲一区| 九九热中文字幕| 纸画皮电影免费观看| 国模无码一区二区三区不卡| 久久久久九九精品影院| 第九色区AV天堂| 国产精品你懂得| 中文字幕视频不卡| 浮力影院第一页小视频国产在线观看免费| 国产精品一区二区综合| 中文字幕在线观看日韩| 污污视频在线观看免费| 国产在线精品一区二区不卡麻豆 | 久久久久性色AV毛片特级| 福利一区福利二区| 国产午夜精品久久久久免费视 | 日韩免费无码一区二区视频| 亚洲欧美一区二区三区电影| 青草青在线视频| 女人的精水喷出来视频| 亚洲av一本岛在线播放| 老扒系列40部分阅读| 在线不卡免费视频| 久久精品国产99国产精品澳门| 精品亚洲成a人在线观看| 国产精品区一区二区三| eeuss在线播放| 日韩有码第一页| 免费a级毛片在线观看| 日本黄色小视频在线观看|