您现在的位置:程序化交易>> 期货公式>> 交易开拓者(TB)>> 开拓者知识>>正文内容

序列变量是,每个Tick变一次,还是每个Bar变一次呢? [开拓者 TB]

  • 咨询内容: 序列变量是,每个Tick变一次,还是每个Bar变一次呢?

     

  • TB技术人员: 每个Bar

     

  • TB客服: 最后一个Bar不是每个Tick都变的吗?

     

  • 网友回复: 是每个Tick都会计算,但序列变量只会记录该Bar的一个最新的值。不会记录过程中的变化
    全局变量则可以记录下来。

    举个例子:
    我们用一个数值型序列变量 CrossOverCounter; 另外用一个0号全局变量。
    在一个1分钟周期下计算,假定到当前Bar之前,CrossOverCounter = 0。0号变量的值也为0。

    If(CrossOver(Close,Avg5))
    {
         CrossOverCounter = CrossOverCounter[1] + 1;
         SetGlobalVar(0,GetGlobarVar(0)+1);
    }

    在这根Bar线上面执行完之后,这分钟有100个Tick,公式被执行了100次。其中30次发生了交叉,另外70次没有交叉。执行之后结果如下:

    如果最后一个Tick时交叉了,则CrossOverCounter  = 1,否则为0。
    0号全局变量的值为30。

    不明白

     

  • 网友回复: 既然在以分钟线为周期的一个bar上,有100次Tick,每个tick都去调用公式,岂不是说每出现一个tick就调用一次公式?那对于每一个Bar上,公式不是要被执行100次吗?在这100个tick运行的过程中,该Bar的close,High可能随时在刷新,如果交易系统需要该Bar定型之后的Close和High,怎么识别呢?
    交易系统中,是在每个bar的最后一个tick才去调用交易系统吗?

    [ 本帖最后由 leixb 于 2009-3-27 21:37 编辑 ]

 

如果以上指标公式不适用于您常用的行情软件

或者您想改编成选股公式,以便快速选出某种形态个股的话,

可以联系我们相关技术人员 QQ: 262069696  点击在线交流进行 有偿 改编!

 


【字体: 】【打印文章】【查看评论

相关文章

    没有相关内容