利用數(shù)據(jù)庫(kù)控制重復(fù)開(kāi)倉(cāng)
作者:開(kāi)拓者 TB 來(lái)源:cxh99.com 發(fā)布時(shí)間:2016年08月24日
- 咨詢內(nèi)容:
我寫了一個(gè)利用數(shù)據(jù)庫(kù)來(lái)控制重復(fù)發(fā)單的簡(jiǎn)單例子,但是在測(cè)試中發(fā)現(xiàn)經(jīng)常重復(fù)發(fā)單,重復(fù)發(fā)單的時(shí)候都是在兩秒內(nèi)發(fā)兩個(gè)。請(qǐng)小米幫我看一下是哪里的問(wèn)題吧!謝謝!
- TB技術(shù)人員:
Params
Numeric L1(3);
Numeric L2(6);
Numeric Stoploss(2);
Vars
NumericSeries shortline;
NumericSeries longline;
Numeric protectprice;
Bool SonL;
Bool SunderL;
String orderstate;
Begin
If(!CallAuctionFilter()) Return;
shortline=XAverage(Close,L1);
longline=XAverage(Close,L2);
PlotNumeric("短期均線",shortline);
PlotNumeric("長(zhǎng)期均線",longline);
SonL=shortline[1]>longline[1];
SunderL=shortline[1]<longline[1];
If(BarStatus==2)
{
orderstate=GetTBProfileString2File("C:\\test1.log","開(kāi)倉(cāng)控制","發(fā)單狀態(tài)");
If(Value(orderstate)==0 Or orderstate==InvalidString)
{
If(SonL)
{
A_SendOrder(Enum_Buy,Enum_Entry,1,Q_AskPrice);
SetTBProfileString2File("C:\\test1.log","開(kāi)倉(cāng)控制","發(fā)單狀態(tài)",Text(1));
}
If(SunderL)
{
A_SendOrder(Enum_Sell,Enum_Entry,1,Q_BidPrice);
SetTBProfileString2File("C:\\test1.log","開(kāi)倉(cāng)控制","發(fā)單狀態(tài)",Text(-1));
}
}
If(Value(orderstate)==1)
{
protectprice=A_BuyAvgPrice-Stoploss;
If(Q_Last<protectprice)
{
A_SendOrder(Enum_Sell,Enum_Exit,1,Q_BidPrice);
SetTBProfileString2File("C:\\test1.log","開(kāi)倉(cāng)控制","發(fā)單狀態(tài)",Text(0));
}
}
If(Value(orderstate)==-1)
{
protectprice=A_SellAvgPrice+Stoploss;
If(Q_Last>protectprice)
{
A_SendOrder(Enum_Buy,Enum_Exit,1,Q_AskPrice);
SetTBProfileString2File("C:\\test1.log","開(kāi)倉(cāng)控制","發(fā)單狀態(tài)",Text(0));
}
}
}
End
- TB客服:
就是短期均線在長(zhǎng)期均線上就開(kāi)多一手,短期均線在長(zhǎng)期均線下就開(kāi)空一手。開(kāi)倉(cāng)后反向波動(dòng)兩點(diǎn)就平倉(cāng)。但是測(cè)試中經(jīng)常出現(xiàn)重復(fù)開(kāi)倉(cāng)、鎖倉(cāng)的問(wèn)題。
- 網(wǎng)友回復(fù):
zhoucx 發(fā)表于 2016-5-12 13:52
Params
Numeric L1(3);
Numeric L2(6);
將委托記錄也發(fā)過(guò)來(lái)看一下
- 網(wǎng)友回復(fù):
這是下午的記錄 |