pepsi 发表于 2012-2-2 11:10:18

建议完善连续合约数据,并自动换月。

1.商品期货SR\CU\TA等品种的09月合约历史数据不足,最早只到2011年1月19日左右,导致连续合约888并没有介绍中的连续。
2.建议可以通过连续合约产生信号在当前主力合约发出委托,省的用户自己写代码,而且我写的代码还可能存在问题。如果TB当前版本还没有此功能,请问我们自己改如何写代码才能实现自动换月。
以下是我写的在TA中自动换月的代码。Params
        Numeric Length1(5);
        Numeric Length2(10);
        Numeric Lots(1);
       
Vars
        NumericSeries EMa1;
        NumericSeries EMa2;
Begin
        EMa1=XAverage(Close, Length1);
        EMa2=XAverage(Close, Length2);
        PlotNumeric("EMa1",EMa1);
        PlotNumeric("EMa2",EMa2);
        If(CrossOver(EMa1,EMa2))
        {
                If(Data0.Vol==Data1.Vol)
                {
                        Data1.Buy(Lots,Data1.Open);
                }
                If(Data0.Vol==Data2.Vol)
                {
                        Data2.Buy(Lots,Data2.Open);
                }
                If(Data0.Vol==Data3.Vol)
                {
                        Data3.Buy(Lots,Data3.Open);
                }
        }
        If(CrossUnder(EMa1,EMa2))
        {
                If(Data1.MarketPosition==1)
                {
                        Data1.Sell(Lots,Data1.Open);
                }
                If(Data2.MarketPosition==1)
                {
                        Data2.Sell(Lots,Data2.Open);
                }
                If(Data3.MarketPosition==1)
                {
                        Data3.Sell(Lots,Data3.Open);
                }
        }
End

Caesar 发表于 2012-2-13 15:16:52

:handshake好东西啊。。。

wanwan 发表于 2012-11-2 10:25:30

这样的话,每个月还是要手动换data1\data2\data3的合约啊

prozacer 发表于 2017-9-13 00:15:20

:victory:

a1100600154 发表于 2017-9-15 16:06:54

页: [1]
查看完整版本: 建议完善连续合约数据,并自动换月。