商品换月可以通过 代码来实现吗?

OnBar(ArrayRef<Integer> indexs) { If(GetDicTime(fRollover, 0) <> GetDicTime(fRollover, 1) And fRollover[0][1] <> InvalidString And fRollover[0][2] <> InvalidString) { If( MarketPosition == 1) { Lots = CurrentContracts; Sell( 0, Value(fRollover[0][1]), Enum_Signal_UnCorrectPrice ); Buy( Lots, Value(fRollover[0][2]), Enum_Signal_UnCorrectPrice ); Alert(DateTimeToString(Date + Time) + \" Sell\" + SymbolName + \"原 \" + fRollover[0][1]); Alert(DateTimeToString(Date + Time) + \" Buy \" + SymbolName + \"新 \" + fRollover[0][2]); }Else If( MarketPosition == -1) { Lots = Abs(CurrentContracts); BuyToCover( 0, Value(fRollover[0][1]), Enum_Signal_UnCorrectPrice ); SellShort( Lots, Value(fRollover[0][2]), Enum_Signal_UnCorrectPrice ); Alert(DateTimeToString(Date + Time) + \" BuyToCover\" + SymbolName + \"原 \" + fRollover[0][1]); Alert(DateTimeToString(Date + Time) + \" SellShort \" + SymbolName + \"新 \" + fRollover[0][2]); } } }帮我看看我这样写的商品换月代码有什么问题吗?

换月是平老仓,开新仓。你用buy sell ,那么交易的不是同一个合约么,平掉合约再开同一个合约,这样操作真的能换月么?

回复:是这个问题, 那么这么实现平老仓呢?谢谢, 能给我一段代码吗?我参考一下 ,谢谢

回复:用buy和sell是实现不了的如果一定要实现,恐怕不是一段代码那么简单一般都是用监控器去实现的,更方便。这个功能如果硬要写进自己模型里,就算拿到源代码,也要知道往哪里加,怎么加,如果一点都不懂,基本上不太可能成功。