后臺程式化同一根K線走完后,為何會開兩次倉? [金字塔]
- 咨詢內(nèi)容:
if duo and extgbdata(stklabel+'bn1')=0 then begin tbuy(1,手?jǐn)?shù),mkt); extgbdataset(stklabel+'bn1',1); extgbdataset(stklabel+'bn15',手?jǐn)?shù)); extgbdataset(stklabel+'bdcs',0); end s:=ref(15atr,tenterbars); if duo and extgbdata(stklabel+'bn1')=1 and c>=tENTERPRICE+zc*s then begin tbuy(1,手?jǐn)?shù),mkt); extgbdataset(stklabel+'bn1',2); extgbdataset(stklabel+'bn152',手?jǐn)?shù)); extgbdataset(stklabel+'bdcs',0); end s:=ref(15atr,tenterbars);
程式剛開始運(yùn)行時,達(dá)到條件只按“手?jǐn)?shù)”開倉,只偶爾有同一根K線走完后開兩倍手?jǐn)?shù)的倉位,并且是同一時間重復(fù)開倉,現(xiàn)在經(jīng)常是這樣了,是什么原因。我的策略是限制達(dá)到條件只開一次倉,加一次倉,但是加倉是至少在下一根K線以后,因?yàn)槭切枰獌r格離第一次開倉有一定的距離了,再加倉的。現(xiàn)在經(jīng)常這樣,同一時間開了兩倍手?jǐn)?shù)的倉位后,等后面達(dá)到條件了,也不會加倉了。這到底是什么原因。 - 金字塔客服:
這兩句中間sleep個1秒。在第一個開倉沒報(bào)出去之前會獲取到之前一個開倉價,中間sleep保證第一個開倉已經(jīng)報(bào)出去了,在第二個開倉時獲取的是第一個的開倉價
- 用戶回復(fù):
那這個應(yīng)該怎么寫,才能防止重復(fù)開倉呢?
- 網(wǎng)友回復(fù):
if duo and extgbdata(stklabel+'bn1')=0 then begin
tbuy(1,手?jǐn)?shù),mkt);
extgbdataset(stklabel+'bn1',1);
extgbdataset(stklabel+'bn15',手?jǐn)?shù));
extgbdataset(stklabel+'bdcs',0);
end
s:=ref(15atr,tenterbars);
sleep(1000);
if duo and extgbdata(stklabel+'bn1')=1 and c>=tENTERPRICE+zc*s then begin
tbuy(1,手?jǐn)?shù),mkt);
extgbdataset(stklabel+'bn1',2);
extgbdataset(stklabel+'bn152',手?jǐn)?shù));
extgbdataset(stklabel+'bdcs',0);
end
s:=ref(15atr,tenterbars);
- 網(wǎng)友回復(fù):
就在開倉與加倉之間加一句代碼就可以了,sleep(1000)?
有思路,想編寫各種指標(biāo)公式,程序化交易模型,選股公式,預(yù)警公式的朋友
可聯(lián)系技術(shù)人員 QQ: 511411198 進(jìn)行 有償 編寫!(不貴!點(diǎn)擊查看價格!)
相關(guān)文章
-
沒有相關(guān)內(nèi)容