A函數(shù)公式不發(fā)單有人懂嗎?麻煩幫忙解決可有償 [開(kāi)拓者 TB]
-
咨詢內(nèi)容:
Params
? ?? ???Numeric J1(55);
Vars
? ?? ???NumericSeries MA;
? ?? ???Numeric GG;
Begin
? ?? ???If(BarStatus==0) SetGlobalVar(0,0);
? ?? ???MA=Average(C,55);
? ?? ???GG=Highest(H[1],2);
? ?? ???PlotNumeric("MA",MA);
? ?? ?? ?? ?? ?
? ?? ???If(Barstatus <> 2 Or AccountDataExist()==false) return;
? ?? ?? ?? ?? ?
? ?? ???if(BarStatus==2)
? ?? ???{
? ?? ???If(Q_AskPrice > ma[1] and GetGlobalVar (0) <> 1 AND A_BuyPosition==0 )
? ?? ???{
? ?? ???//A_SendOrder(Enum_Sell,Enum_Exit,1,Q_AskPrice);? ?? ?
? ?? ???A_SendOrder (Enum_Buy,Enum_Entry,1,Q_AskPrice )? ?? ???;
? ?? ?? ?? ? SetGlobalVar (0,1);
? ?? ???}
? ?? ?
? ?? ???If(Q_BidPrice<=ma[1] AND GetGlobalVar (0)==1)
? ?? ???{
? ?? ?? ?? ?? ? //A_SendOrder(Enum_Buy,Enum_Exit,1,Q_BidPrice);
? ?? ?? ?? ?? ? A_SendOrder ( Enum_Sell,Enum_Exit,1,Q_BidPrice);? ?? ?
? ?? ?? ?? ?? ? SetGlobalVar (0,0);
? ?? ???}
? ?? ???}
End?
?來(lái)源:CXH99.COM
-
TB技術(shù)人員:
本帖最后由 追漲殺跌 于 2020-8-14 16:20 編輯
您好。您的問(wèn)題,我之前就回復(fù)過(guò)您,而且我是做過(guò)測(cè)試后再回復(fù)您的,單從發(fā)單角度策略是沒(méi)有問(wèn)題的。
但策略本身的邏輯是否有問(wèn)題,我確實(shí)沒(méi)有細(xì)測(cè)。說(shuō)實(shí)話,每個(gè)客戶寫個(gè)策略碰到問(wèn)題就丟給我們調(diào)試,我們?cè)俣嗟墓ぷ魅藛T也忙不過(guò)來(lái),這也絕不是解決問(wèn)題的正確服務(wù)方式,這點(diǎn)希望您多理解。
之后我看您還是不斷地在論壇發(fā)帖、到客服群詢問(wèn),雖然這種方式我并不認(rèn)同。但為了解決您的問(wèn)題, 就只有花點(diǎn)時(shí)間在極速版上做下測(cè)試,看看到底是什么原因。測(cè)試結(jié)果見(jiàn)下圖:
從測(cè)試的交易記錄看 ,滿足條件后,發(fā)單確實(shí)是沒(méi)有問(wèn)題的。但9點(diǎn)21分54秒后為什么就沒(méi)有繼續(xù)發(fā)單呢,仔細(xì)看消息中心,可以發(fā)現(xiàn)是有一個(gè)報(bào)錯(cuò)的。
所以,后面不發(fā)單,原因還是出在策略本身。
因?yàn)槟l(fā)出買入開(kāi)倉(cāng)單后,SetGlobalVar (0,1); 這是沒(méi)問(wèn)題的,因?yàn)槿绻辉O(shè)置,在A_BuyPosition改變之前,就有可能會(huì)重復(fù)地買入。
但買入指令后并不意味著回報(bào)就立即回來(lái)了,所以賣出平倉(cāng)時(shí),是需要判斷一下是否A_BuyPosition>0的
而您現(xiàn)在的代碼里并沒(méi)有判斷,所以,在9:21:54正好價(jià)格上穿完均線,馬上又下穿均線,就發(fā)出了買入開(kāi)倉(cāng)指令,還沒(méi)等成交,又立即發(fā)出了賣出平倉(cāng)指令,而這時(shí)買入的回報(bào)還沒(méi)回來(lái),賣出平倉(cāng)自然就報(bào)錯(cuò)了。但GlobalVar(0)又被您改成0了。后面買入的回報(bào)回來(lái)了,就演變成了,A_BuyPosition=1,GlobalVar(0)=0,這種出乎意外的情形了
后面就很好理解了,因?yàn)殚_(kāi)倉(cāng)和平倉(cāng)條件都不能滿足了,也就不會(huì)再發(fā)單了。按照這個(gè)分析,后面一個(gè)條件中,應(yīng)該改成
If(Q_BidPrice<ma[1] AND GetGlobalVar (0)==1 And A_BuyPosition==1)
因時(shí)間關(guān)系,我只能測(cè)試至此,如還有問(wèn)題,后面只能靠您自己繼續(xù)調(diào)試了。 附件: 你需要登錄才可以下載或查看附件。沒(méi)有帳號(hào)?注冊(cè)?
-
TB客服:
追漲殺跌 發(fā)表于 2020-8-14 16:18
您好。您的問(wèn)題,我之前就回復(fù)過(guò)您,而且我是做過(guò)測(cè)試后再回復(fù)您的,單從發(fā)單角度策略是沒(méi)有問(wèn)題的。
但策 ...
謝謝老師??給您添麻煩了,不發(fā)單的問(wèn)題已經(jīng)解決了是因?yàn)橛成涞膯?wèn)題,我用888合約映射主力? ?所以一直不發(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)簡(jiǎn)單備注下您的需求,否則無(wú)法通過(guò)。謝謝您!)
相關(guān)文章
-
沒(méi)有相關(guān)內(nèi)容