關(guān)于全局變量的建議 [開拓者 TB]
-
咨詢內(nèi)容:
隨著模型的發(fā)展,全局變量500個(gè)不夠用了,同時(shí),多個(gè)策略,先每個(gè)策略留一段,但策略改進(jìn)后,后面發(fā)現(xiàn)留少了,結(jié)果一個(gè)策略在多個(gè)段內(nèi),程序不易讀,又容易錯(cuò)。造成這個(gè)情況是全部變量不能由用戶自己定義。
目前用GetGlobalVar和SetGlobalVar構(gòu)建的全局變量,在每個(gè)bar時(shí),可以看見其變化過程,明顯這些全局變量是用序列變量來實(shí)現(xiàn)的,因此,500,占用了很大空間,估計(jì)也是你們不愿意繼續(xù)擴(kuò)大全局變量數(shù)量的原因。
實(shí)際上,目前這種GetGlobalVar和SetGlobalVar的全部變量是需要的,但不要那么多,有10到20個(gè)夠了,只用于調(diào)試程序,但程序中需要大量的由用戶自己定義的全局變量,這種變量不需要記錄中間變化過程,因此,只需要把這個(gè)變量值記錄下來,在全局可以調(diào)用,每個(gè)變量只占用幾個(gè)字節(jié),因此不論定義多少,占用空間極少。
不知道,tb內(nèi)部是什么機(jī)制,開發(fā)一般意義上的全局變量那么難。?
?來源:CXH99.COM
-
TB技術(shù)人員:
頂
?
-
TB客服:
我也深受其害 做了個(gè)模型 tm 快氣死了 用a函數(shù)加全局變量怎么搞都是重復(fù)發(fā)單
?
-
網(wǎng)友回復(fù):
Params? ?? ?? ?? ?? ?? ?? ?? ???
Vars? ?? ?? ?? ?
? ?? ? NumericSeries SX;
? ?? ? NumericSeries DP;
? ?? ? NumericSeries KP;? ?? ?
? ?? ?? ?? ?? ?? ?? ?? ? //(CurrentTime-A_OrderTime)//平臺(tái)時(shí)間-委托單時(shí)間? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?
Begin? ?? ?? ?? ?? ?? ?? ?
? ?? ?? ?
? ?? ?? ?
? ?SX=20150701;
If(Date>=SX){setglobalvar(8,81);}? ?
? ?? ?? ?Else{setglobalvar(8,80);}? ?? ?
? ?? ?? ?? ?? ?? ?? ?? ?
? ?? ?? ?if(Getglobalvar(8)==80&&A_BuyPosition==0&&A_SellPosition==0&&(CurrentTime-A_OrderTime)>0.000020)? ?//賦予初始值
? ?? ???{setglobalvar(0,0);
? ???setglobalvar(1,10);
? ???setglobalvar(2,20);
? ???setglobalvar(3,30);
? ???setglobalvar(4,40);
? ???setglobalvar(5,50);}
? ?? ?? ?
? ?? ?? ?
? ?? ?? ?
If(A_BuyPosition==0&&A_SellPosition==0&&Getglobalvar(0)==0)
? ?{ A_SendOrder(Enum_Buy, Enum_Entry, 1 ,Q_AskPrice );??//多頭開倉??
? ? A_SendOrder(Enum_Sell, Enum_Entry,1 ,Q_BidPrice);? ? //空頭開倉??
? ?? ?? ?setglobalvar(0,1); }
根本控制不住重復(fù)發(fā)單??初始值就不知道放在那里才能不被初始化?
- 網(wǎng)友回復(fù):
有思路,想編寫各種指標(biāo)公式,交易模型,選股公式,還原公式的朋友
可聯(lián)系技術(shù)人員 QQ: 262069696 或微信號(hào):cxh99cxh99 進(jìn)行 有償收費(fèi) 編寫!
(怎么收費(fèi),代編流程等詳情請(qǐng)點(diǎn)擊閱讀!)
(注:由于人數(shù)限制,QQ或微信請(qǐng)選擇方便的一個(gè)聯(lián)系我們就行,加好友時(shí)請(qǐng)簡單備注下您的需求,否則無法通過。謝謝您!)
相關(guān)文章
-
沒有相關(guān)內(nèi)容