请问老师,我的委托映射出什么问题了吗?

OnInit() { layers[0]=SubscribeBar("pp888.DCE", "30m", 20211101.0930); layers[1]=SubscribeBar("MA888.CZCE", "30m", 20211101.0930); //与数据源有关 Range[0:DataCount-1] { SetOrderMap2MainSymbol(); //设置委托映射到主力 我的这个由连续映射到主力的策略,能够成功交易,但是下面的不行, OnInit() { layers[0]=SubscribeBar("pp2205.DCE", "30m", 20211101.0930); layers[1]=SubscribeBar("MA2208.CZCE", "30m", 20211101.0930); //与数据源有关 Range[0:DataCount-1] { //SetOrderMap2MainSymbol(); //设置委托映射到主力 改成具体合约的时候,屏蔽委托映射代码,可是结果只发送第一个pp2205的交易单子,一直没见第二个pp2208的,请问老师,问题出在哪呢?

还有,我发现本来data0和data1应该是只发送1手的,但是最总却成交了2手data0图层商品的单子,难道默认都由data0来发出了,搞不懂

@alang2005,那怎么样才能实现data0和data1都发送单子呢?

回复:我也不知道,我是新手

我注释掉就是不想映射,因为我之前订阅的是具体合约,可是,信号出现之后,只发送data0的单子,data1的单子一直不见发出

我后面紧接着是开仓的代码 //开仓1 If(k1==0 and jiacha<bz-db1) {data0.buy(lots1,data0.open); data1.SellShort(lots1,data1.open);Commentary("开仓1");lowestjc=bz-db1; lotsj=lots1;k1=1;Return; } 如果前面订阅的是指数或者连续,那么后面开仓的代码就能成功按要求发单,可是如果订阅的是具体合约,那后面就只有data0的发单,data1的没见发单,什么原因呢?

回复:你这个开单条件默认是data0发出的吧?那data1就是没信号了

没看懂你这个在写什么 注释掉set以后 所有图层都不会映射交易