实盘测试,仓位为零,却在一直平仓,程序有什么问题?
在跑实盘模拟的时候,按如下的方式,仓位一直为零,但是却在一直平仓。这样写有什么问题么?Params
Numeric MaxHold(5);
Vars
Numeric curLong1;
Numeric curLong2;
Numeric curShort1;
Numeric curShort2;
Numeric cnt;
Begin
curLong1 = Data1.A_BuyPosition();
curShort1 = Data1.A_SellPosition();
if (curLong1 == InvalidInteger || curShort1 == InvalidInteger)
return true;
if (curLong1 > 0) {
FileAppend("D:\\tb.log","平仓多Data1 空Data2 " + DateToString(Date()) + TimeToString(Time()));
Data1.Sell(1,Data1.Low);
Data2.BuyToCover(1,Data2.High);
SetGlobalVar(1,0);
SetGlobalVar(0,2);
}
if (curShort1 > 0) {
FileAppend("D:\\tb.log","平仓多Data2 空Data1 " + DateToString(Date()) + TimeToString(Time()));
Data1.BuyToCover(1,Data1.High);
Data2.Sell(1,Data2.Low);
SetGlobalVar(1,1);
SetGlobalVar(0,2);
}
Return true;
End
页:
[1]