data1.a_sendorder不能正常发单

 但需要在一个单元加载多个合约,并分别在data0,data1上发单时,data0.a_sendorder是正常的,但data1.a_sendorder不正常,显示不存在的价格和委托数量为零。

模拟发单正常,实盘却没有发单
BuyToCover不能正常运行
策略运行正常但是报警告未按信号发单
跨周期公式不能正常运用
图表有信号 实盘中不能发单
a函数发单
不发单
限制自动发单
如何解决策略中用A_SendOrderEx发单不能优化参数
A_SendOrder发单条件

myposition

data1sellprice

data1buyprice

这两个要么全局变量/要么临时变量/要么普通变量加上Data[X]前缀

否则,都是用的Data0的值

要么无效值,要么是0,甚至被污染过的其他残留数据

所以你会发现,Data0发单是正确的,Data1发单价格和数量都是0

那么你的代码是怎么写的呢

else If(myposition<0)

    {//If(data0.a_buyposition>0)data0.A_SendOrder(enum_sell,enum_exit,data0.a_buyposition,data0sellprice);

     //If(data0.a_sellposition>0)data0.A_SendOrder(enum_buy,enum_exit,data0.a_sellposition,data0buyprice);

     If(data1.a_buyposition>0)data1.A_SendOrder(enum_sell,enum_exit,data1.a_buyposition,data1sellprice);

     If(data1.a_sellposition<Abs(myposition))data1.A_SendOrder(enum_sell,enum_entry,abs(myposition)-data1.a_sellposition,data1sellprice);

     else If(data1.a_sellposition>Abs(myposition))data1.A_SendOrder(enum_buy,enum_exit,data1.a_sellposition-abs(myposition),data1buyprice);

    }

同样的代码在旗舰版正常运行快一年了

你A函数也没填品种代码,下的什么合约呢?连续合约?

消息中心截图有吗?

你这个代码看上去就很不稳定

data0,data1上的数据都是某个主力月份合约,myposition是读取本地数据库的数据计算得来,没有问题。为什么说不稳定?关键是在旗舰版上没问题,另外,只要把data0,data1的位置对调就能正常发单。

发了单,但发的是委托量为0的单,用commentary看a_buyposition,a_sllpositioa_buyposition,a_sellposition,myposition,都正常显示,也就是说委托量不应该是0

委托量肯定不能填0