self.atr_value = math.ceil(am.atr(self.atr_window))
ValueError: cannot convert float NaN to integer
self.atr_value = round(am.atr(self.atr_window),1)
ValueError: cannot convert float NaN to integer
以上遗传优化计算atr值时,均会报错NaN,如何解决这个问题呢?
self.atr_value = math.ceil(am.atr(self.atr_window))
ValueError: cannot convert float NaN to integer
self.atr_value = round(am.atr(self.atr_window),1)
ValueError: cannot convert float NaN to integer
以上遗传优化计算atr值时,均会报错NaN,如何解决这个问题呢?
你am_atr算出来有nan值吧,可以在策略里am.inited之后再计算指标值
xiaohe wrote:
你am_atr算出来有nan值吧,可以在策略里am.inited之后再计算指标值
经核实,代码self.atr_value = round(am.atr(self.atr_window),1)或者self.atr_value = math.ceil(am.atr(self.atr_window))是在am.inited之后,为什么会返回这个nan值呢?
atr_window检查下,是否超过了ArrayManager默认的size大小100,如果是的话,在初始化am的时候要调整大小:
self.am = ArrayManager(size=1000)