全部 智大领峰 TBQuant功能 TBL语言 TB开户 问答专区 高手圈 其他
已解决
图表显示K线根数对数据影响的原因是什么
2021-04-14 15:34

有一个策略,图表显示K线根数大于5500根时数据正常,较低的k线根数,如5000以下时数据错误。

longlong88

K线根数不同,左侧alots的输出数据不同

2021-04-14 15:35
longlong88

与Average这个函数有关

2021-04-14 17:44
longlong88

ma7=Average(Close,120);

if(Close<ma7)

当K线根数少于一定值时上面的判断出问题

2021-04-14 18:15
tblaocai
@longlong88

自己写的公式有问题,一般来说还是自己找找原因吧。发到论坛,又不给出公式中alots的计算逻辑,这谁也帮不了你啊

2021-04-14 23:50
longlong88
@tblaocai

Series<Numeric> ma7;

ma7=Average(Close,120);

if(Close<ma7);

已经找到问题并写出来了,上面的if(Close<ma7);当K线根数少于一定数量时,if(Close<ma7);判断不出来,导致后续的计算出错。

而使用if(Close<Average(Close,120));后续计算正确。是不是不能用Series<Numeric>声明,这个函数有最少K线根数要求,并且不同品种,最少K线根数不同。

或者应该用哪个函数进行声明

2021-04-15 14:04
tblaocai
@longlong88

K线根数小于指标计算所需要的根数时,最好啥也别做,直接return

这个可通过函数MaxBarsBack获知至少需要多少根K线

2021-04-15 14:31
longlong88
@tblaocai

MaxBarsBack获取的是很小的一个数,一般不超过1000根,而Series<Numeric>有些品种需要6000根以上,有些需要1万根以上。否则,K先根数不足时,计算数值时没问题,参与大小判断,然后再计算其他数值会出现问题

再问与Series<Numeric>类似的函数还有哪些

2021-04-15 14:35
longlong88
@tblaocai

不是Series<Numeric>的问题,但与K线根数相关

2021-04-15 17:06
kyover

写了那么多 出问题的明明是alots 但是alots的算式却没看到 这怎么回答?

2021-04-15 14:34
longlong88
@kyover

问题出在Series<Numeric>上

2021-04-15 14:36
longlong88

解决了,但K线根数影响计算结果的情况仍在,只是绕过去了

2021-04-15 17:30
您未登录,请先 登录注册 后发表评论
顶部