OnSignal事件域不能成交,如何映射到主力合约?

   // 新增:OnSignal事件,处理所有信号并反向

   OnSignal(ArrayRef<Signal> sigs)

   {

       Integer i = 0;

       For i = 0 To GetArraySize(sigs) - 1

       {

           SignalRef sig = sigs[i];

           // 确保是实时行情且信号没有被其他条件过滤(如我们主动加的 Enum_Signal_NotSend 标记)

           // 注:所有信号都带有 Enum_Signal_NotSend,这里检查该标记以确保我们只处理我们产生的信号

           If(BitHas(sig.flag, Enum_Signal_NotSend) && QuoteStatus == Enum_QuoteStatus_RealTime)

           {

               // 准备反向订单的参数

               Array<Integer> orders;

               Bool ret = False;

               

               // 根据原信号的 side 和 combOffset 进行反向

               // 反向规则:买卖方向互换,开平类型保持不变

               If(sig.side == Enum_Buy)

               {

                   // 原买入(开多或平空) -> 变为卖出(开空或平多)

                   A_SendOrderEx(Enum_Sell, sig.combOffset, sig.volume, sig.price, orders);

               }

               Else If(sig.side == Enum_Sell)

               {

                   // 原卖出(开空或平多) -> 变为买入(开多或平空)

                    A_SendOrderEx(Enum_Buy, sig.combOffset, sig.volume, sig.price, orders);

               }

               Else

               {

                   // 其他未知方向,可忽略或按原方向发单

                    A_SendOrderEx(sig.side, sig.combOffset, sig.volume, sig.price, orders);

               }

               

               Print("反向发单: 原side=" + IIfString(sig.side==Enum_Buy,"Buy","Sell")

                     + " 新side=" + IIfString(sig.side==Enum_Buy,"Sell","Buy")

                     + " 结果=" + IIfString(ret,"成功","失败"));

           }

       }

   }

在策略中加上这段代码,我使用的是888连续合约,模拟盘中可以发出订单,但总是显示订单废单,原因为“申报失败,cs888.DCE,卖出,开仓,委托量1,委托价2688.00,成交量0,TEST38_MR@TEST38_MR@TEST36@cs888_M30,合约不可交易。”  

我已在策略单元设置中映射到主力合约,在不用OnSignal事件域,可以正常交易到主力合约。

我需要在哪里设置,通过OnSignal事件域能自动映射到主力合约进行交易。

成交事件域驱动
onsignal域
onsignal域问题
OnBarClose事件域
映射到主力合约后回测交易记录里还是888
增加交割月前一个月主力合约映射到后期的次主力合约选项
如何倒推主力合约?
指数映射到主力交易时,如何获取到主力的涨、跌停价?
onorder事件域
关于读取加权合约信号,映射到连续合约成交

第一个参数 合约填  mainsymbol 或 relativesymbol

谢谢。我写入mainsymbol后,开仓可以交易了,但是平仓时还是报废单。

我一直有个疑问,这样映射,如果买入后(平仓前),遇到主力合约换月了,还能被平掉吗?

我写入mainsymbol后,开、平仓都可以交易了。


CHAN

的问题,我也很想知道如何解决?