全部 智大领峰 TBQuant功能 TBL语言 TB开户 问答专区 高手圈 其他
多图层中在onbaropen里给序列变量赋值问题
heeroyuy 分享到
2023-12-28 13:44

如果定义一个序列变量,在onbaropen里对它进行自加1(初始值在vars里赋值),那么第一根bar计算实际上就是初始值加1,和onbar域里对它自加1是一样的;但如果是多图层,onbaropen的运行结果就是初始值加了2次1,onbar域里结果是正确的,相当于在data0第一根bar出现的起始时间以前,data1如果有更早时间的bar,data0虽然没有bar但是执行过一次onbaropen,是不是?这算不算bug呢?

wangkaiming

实时环境会复杂一点,如何程度的复杂取决于你的代码

建议用代码举例子

2023-12-28 13:50
heeroyuy

data-href=

2023-12-28 14:17
heeroyuy

Vars

Series <Numeric> x(0);

Events

OnInit()

{

SubscribeBar(Data0.Symbol,\"5m\",Data0.BeginDateTime);

}

OnBarOpen(ArrayRef<Integer> indexs)

{

   x = x + 1;

}


OnBar(ArrayRef<Integer> indexs)

{

    Commentary(text(x));

}

2023-12-28 14:17
heeroyuy

这个放在onbar就是1,放在openbar就是2,多图层就会这样

2023-12-28 14:18
您未登录,请先 登录注册 后发表评论
顶部