全部 TBQuant功能 TBL语言 TB开户 问答专区 其他
跨周期订阅行情问题
xian99 分享到
2022-05-13 11:15

老师您好,我在15分钟级别订阅1小时级别的行情为啥价格不对sad


 SubscribeBar(symbol,"1h",BeginDateTime);
}
 OnBar(ArrayRef<Integer> indexs)
{
    ma1 = Average(Close,Length1);//15分钟级别的10ma
    ma2 = Average(Close,Length2);//15分钟级别的20ma
    
    data1.ma1 = data1.Average(data1.Close,Length1);//小时级别的10ma
    data1.ma2 = data1.Average(data1.Close,Length2);//小时级别的20ma

    PlotNumeric("mma1",ma1);
    PlotNumeric("mma2",ma2);

    data1.PlotNumeric("Hma1",data1.ma1);
    data1.PlotNumeric("Hma2",data1.ma2);

wangkaiming

//------------------------------------------------------------------------
// 简称: test_0513_2022
// 名称: 
// 类别: 公式应用
// 类型: 用户应用
// 输出: Void
//------------------------------------------------------------------------
Params
    //此处添加参数
    Numeric length1(10);
    Numeric length2(20);
Vars
    //此处添加变量
    Series<Numeric> ma1;
    Series<Numeric> ma2;
Events
OnInit()
{
SubscribeBar(symbol,"1h",BeginDateTime);
}
 OnBar(ArrayRef<Integer> indexs)
{
    ma1 = Average(Close,Length1);//15分钟级别的10ma
    ma2 = Average(Close,Length2);//15分钟级别的20ma
    
    data1.ma1 = data1.Average(data1.Close,Length1);//小时级别的10ma
    data1.ma2 = data1.Average(data1.Close,Length2);//小时级别的20ma

    PlotNumeric("mma1",ma1);
    PlotNumeric("mma2",ma2);

    data1.PlotNumeric("Hma1",data1.ma1);
    data1.PlotNumeric("Hma2",data1.ma2);
}

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

2022-05-13 15:00
wangkaiming
@wangkaiming

你的代码的效果,我觉得没问题,检查一下有什么设置的问题

2022-05-13 15:01
xian99
@wangkaiming

在各自的周期里画图是好的,但是把图都画在15分钟里并且是连续合约就出问题了

2022-05-13 16:48
xian99
@wangkaiming


 SubscribeBar("rb888.SHFE","1h",BeginDateTime);
}
 OnBar(ArrayRef<Integer> indexs)
{
    ma1 = Average(Close,Length1);//15分钟级别的10ma
    ma2 =Average(Close,Length2);//15分钟级别的20ma
    
    data1.ma1 = data1.Average(data1.Close,Length1);//小时级别的10ma
    data1.ma2 = data1.Average(data1.Close,Length2);//小时级别的20ma

    PlotNumeric("mma1",data0.ma1);
    PlotNumeric("mma2",data0.ma2);

    data0.PlotNumeric("Hma1",data1.ma1);
    data0.PlotNumeric("Hma2",data1.ma2);

2022-05-13 16:49
pansy_sx
@wangkaiming

纳闷,新手级的迷惑。我全盘复制这段代码,结果显示无法识别Series ,Events ,OnInit 。

是我的版本不对吗?

2022-05-14 22:47
wangkaiming

我来测试下

2022-05-13 14:58
xian99
@wangkaiming

在各自的周期是好的,但是把图画在15分钟里并且是连续合约就出问题了

2022-05-13 16:48
您未登录,请先 登录注册 后发表评论
顶部