移仓换月
2023-05-21 09:07

在换月日当天通常默认第一根K线换月,考虑到实际情况是第一根K线滑点较大,想移到如第5根K线移仓换月。移仓开仓价直接用=c映射即可,但我想问的是,第5根K线时,888映射的是新的主力合约,如何获得旧的合约正确移仓平仓价?

评论区
justin321

谢谢您的详细答复

2023-05-23 20:28
justin321

谢谢您的详细答复。追问:我用的是多品种888合约的图层,并且已经定位到换月当天的第5根K线。在init设定映射主力合约。tb给的换月移仓标准代码:

data[f*i+1].BuyToCover(0, Value(fRollover[0][1]), Enum_Signal_UnCorrectPrice);==A

data[f*i+1].SellShort(Lots, Value(fRollover[0][2]), Enum_Signal_UnCorrectPrice);==B

其中B我改成:data[f*i+1].SellShort(Lots, c, Enum_Signal_UnCorrectPrice);这样比B更准确,因为B是指第一根的值。而我是第5根。

但是A如果也改成data[f*i+1].BuyToCover(0, c, Enum_Signal_UnCorrectPrice); 这个C是新主力合约第5根K线的价格,是不对的;而原A是上一个主力合约的在当天第一根K线的收盘价格,我想要的是上一个主力合约-旧合约的第5根K线价格。

考虑我订阅888合约共6个品种,每个品种2个周期,会映射不同时期的主力合约。问:有否办法通过888数据可以映射前一个主力合约的价格?

2023-05-22 22:56
顶部