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

求各位大仙解答 [开拓者 TB]

  • 咨询内容: 我想求日内K线根数,但是不用函数BARSSINCETODAY,可是按照下面公式写完后返回并不正确,请问你哪里出现问题?
    Vars
    Numeric TodayBars;
    Begin
    {
    TodayBars=0;
    While(currentBar>TodayBars and TrueDate[TodayBars]==TrueDate[TodayBars+1])
    {
    TodayBars=TodayBars+1;
    }
    Commentary("todaybars="+text(todaybars));
    }
    End

     

  • TB技术人员: 如果你不想使用barssincetoday,还可以用以下的方式来算得日内K线数
    1. if(truedate(0)!= truedate(1))
    2. {
    3.       Todaybars = 1;
    4. }else
    5. {
    6.     Todaybars = Todaybars+1;
    7. }
    复制代码个人觉得不明白这里用循环是为何,所以没法指出问题在哪里。只不过,truedate()的用户函数,使用时是需要参数的,而非回溯。。
    参数用(  ) ,回溯才是用[  ]

     

  • TB客服: 谢谢版主回复,我知道我的问题出在哪里了,就是“ TrueDate[TodayBars]==TrueDate[TodayBars+1])”里面不是中括号啊,改为TrueDate(TodayBars)==TrueDate(TodayBars+1))后,上面的公式就表示barssincetoday,并且加载后正确,只是来回循环很费运算时间,但是我只是想弄明白TB运算的某些机制。

 

有思路,想编写各种指标公式,程序化交易模型,选股公式,预警公式的朋友

可联系技术人员 QQ: 511411198  点击这里给我发消息进行 有偿 编写!不贵!点击查看价格!


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

相关文章

    没有相关内容