A函数发单成交但返回值为False
老师: 您好,我在OnBar运行两腿套利的程序发送信号到OnSignal,在OnSignal中用A函数发单开平仓,模拟交易已经有成交持仓了,但A_SendOrderEx()的返回值为False 。下面是OnSignal中的程序: Onsignal(ArrayRef<Signal> sigs) { signal mysig0; signal mysig1; SignalRef sig = sigs[i]; Integer i = 0; For i = 0 To GetArraySize(sigs) - 1 { If(sig.index==0) { mysig0=sig; If(!BitHas(sig.flag,Enum_Signal_NotSend)&&QuoteStatus==Enum_QuoteStatus_RealTime ) { If(mysig0.side==1 and condition==0 ) { Bool ret0=data0.A_SendOrderEx(Enum_Buy,mysig0.combOffset,mysig0.volume, mytick.bidask1.bidP,myorderId); condition==1; Print("data0.A_SendOrderEx:" + IIFString(ret0,"True","False"); } If(mysig0.side==2 and condition==0) { Bool ret0=data0.A_SendOrderEx(Enum_Sell,mysig0.combOffset,mysig0.volume, mytick.bidask1.askP,myorderId); condition==1; Print("data0.A_SendOrderEx:" + IIFString(ret0,"True","False")); } } } If(sig.index==1) { mysig1=sig; If(!BitHas(sig.flag,Enum_Signal_NotSend)&&QuoteStatus==Enum_QuoteStatus_RealTime) { If(mysig1.side==1 and condition==0 ) { Bool ret1=data1.A_SendOrderEx(Enum_Buy, mysig1.combOffset, mysig1.volume, mytick.bidask1.bidP,myorderId); condition==1; Print("data1.A_SendOrderEx:" + IIFString(ret1,"True","False")); } If(mysig1.side==2 and condition==0) { bool ret1=data1.A_SendOrderEx(Enum_Sell, mysig1.combOffset, mysig1.volume, mytick.bidask1.askP,myorderId); condition==1; Print("data1.A_SendOrderEx:" + IIFString(ret1,"True","False")) } } } } }