全部 TBQuant功能 TBL语言 TB开户 问答专区 其他
跨周期模型策略源码如下
xian99 分享到
2022-05-06 19:14

请问老师,写的这个跨周期均线交易模型有没有什么问题,策略研究加载到品种上只开仓了一次,平仓是在最后一天平的。

 

-----------------------------------------------------------
Params
    array<string> mysymbol(["i9888.DCE","rb888.SHFE"]);

    Numeric Length1(5);
    Numeric Length2(10);
    Numeric Length3(20);
    Numeric Length4(40);
Vars
    Numeric pinzhon;
    Numeric ma;
    Numeric ma1;
    Numeric ma2;
    Numeric ma3;
    Numeric ma4;
    
Events
    OnInit()
    
    {
            for pinzhon = 0 to GetArraySize(mysymbol)
            {
                SubscribeBar(mysymbol[pinzhon],"1h",20220101);
                SubscribeBar(mysymbol[pinzhon],"15m",20220101);
                SubscribeBar(mysymbol[pinzhon],"3m",20220101);
            }
    }
    OnBar(ArrayRef<Integer> indexs)
    {
        Data0.ma1 = data0.Average(Data0.Close,Length1);//小时级别的5ma
        Data0.ma2 = data0.Average(Data0.Close,Length2);//小时级别的10ma
        Data0.ma3 = data0.Average(Data0.Close,Length3);//小时级别的20ma
        
        Data1.ma1 = data1.Average(Data1.Close,Length1);//15分钟级别的5ma
        Data1.ma2 = data1.Average(Data1.Close,Length2);//15分钟级别的10ma
        Data1.ma3 = data1.Average(Data1.Close,Length3);//15分钟级别的20ma
        
        Data2.ma1 = data2.Average(Data2.Close,Length1);//3分钟级别的5ma
        Data2.ma2 = data2.Average(Data2.Close,Length2);//3分钟级别的10ma
        Data2.ma3 = data2.Average(Data2.Close,Length3);//3分钟级别的20ma

 If( Marketposition == 0 
 and data0.ma1 > data0.ma2 
 and data1.ma1 > data1.ma2 and  data1.ma2 > data1.ma3 
 and data2.ma1 > data2.ma2 and  data2.ma2 > data2.ma3) 
      {
       Buy(1,Open);
      }
 
 If(Marketposition == 1 
 and data0.ma1 > data0.ma2 
 and data1.ma1 < data1.ma2 and  data1.ma2 < data1.ma3 
 Or data0.ma1  < data0.ma2
 and data1.ma1 > data1.ma2 and  data1.ma2 > data1.ma3)
 
    {
    Sell(1,Open);
    }

 }
//------------------------------------------------------------------------
// 编译版本    2022/05/06 180517
// 版权所有    xian99
// 更改声明    TradeBlazer Software保留对TradeBlazer平台
//            每一版本的TradeBlazer公式修改和重写的权利
//------------------------------------------------------------------------

下一篇: 跨周期模型编写
tb131****5960

需要代写策略或者体验策略的,可以加V13129075960,备注来意

2022-06-07 17:33
longco_gd

上面的代码订阅了三个周期,实际运行图表有4个图表,是什么原因?

2022-05-23 17:28
kyover
@longco_gd

图表最多只能显示四个数据源

打开策略单元设置 里面能看到剩下的两个数据源

2022-05-24 08:48
kyover

那就说明你平仓条件没写对啊,一个一个诊断你的平仓条件啊

2022-05-07 08:51
您未登录,请先 登录注册 后发表评论
顶部