BarsSinceToday问题

Commentary(Text(CloseD(1)));If(BarsSinceToday==0){ Commentary(Text(CloseD(1)));}两个输出结果完全不一样,放到外面是对的,但只要放到BarsSinceToday条件里,取的closeD就是错的了,这是什么原因?

放到外面编译通过放到BarsSinceToday条件里编译有警告错误你确要放到BarsSinceToday条件里可用下面的,效果是一样的

回复:谢谢,用closeD(1)可能超范围所以有警告吧?我还不能用close[1],因为还要取closeD(2),closeD(3)等,就是搞不懂这个条件BarsSinceToday==0,用了就取出的是错误的

回复:不是超范围警告 而是序列函数的警告close[1]只是一个数据,在任何地方使用都一样closeD () 是系统函数 ,是需要进行运算的,运算需要的取值如果是有条件的,那就会出错,凡是用到了序列变量的函数,都最好不要放在分支条件下执行至于为什么会出错零基础课有讲 https://video.tbquant.net/video?id=video443 最近直播课又有专门讲 https://video.tbquant.net/video?id=20250928093034238402

回复:感谢,已学习

回复:👍