程序化交易策略變量生存周期 [開拓者 TB]
- 咨詢內容: 新手在接觸TB時,對變量的生存周期一般是沒有概念的,學過編程C 或 C++語言的,肯定知道變量的作用域這個概念,但對于生存周期一般接觸還是比較少的。
在使用時,我也總是納悶有時變量使用Numeric 類型,運算就是得不到想要的結果
但全部使用NumericSeries 類型,有覺得沒有必要,讓內存占用持續上升。
(對新手解釋一下:NumericSeries 相當于倉庫來了新值,就往里邊放;相當于無限大的數組
而Numeric 則里邊只能存一個值,來了新值,就把過去的值扔到。)
擴展下:無限制使用序列變量,也是部分網友反映,運行1~2小時后,內存用量上升的原因。
言歸正傳:為什么有時使用Numeric 類型,運算就是得不到想要的結果呢?
讓我們做個測試:
例1:周期一分鐘
Params
Vars
Numeric YourVar1(0);
NumericSeries YourVar2(0);
Begin
//這里加入你的程序...
FileAppend("d:\\alive.log","賦值前-"++TimeToString(time)+"--Y1="+Text(Yourvar1)+"--Y2="+Text(Yourvar2));
If(time>=0.095500 && time <0.095600) {yourvar1=1;Yourvar2=2;}
FileAppend("d:\\alive.log","賦值后-"+TimeToString(time)+"--Y1="+Text(Yourvar1)+"--Y2="+Text(Yourvar2));
End
結果如下
未命名.GIF (4.87 KB, 下載次數: 0) 2012-8-14 09:38:49 上傳 - TB技術人員: 全局變量是在每一個TICK都有一個固定的值,只要沒有語句修改,這個值不會改變,不需要申明,全局變量可直接使用
有思路,想編寫各種指標公式,程序化交易模型,選股公式,預警公式的朋友
可聯系技術人員 QQ: 262069696 進行 有償 編寫!(不貴!點擊查看價格!)
相關文章
-
沒有相關內容