参数
fastPeriod = 12
slowWindow = 26
signalPeriod = 9
self.am = ArrayManager(max(self.fastPeriod, self.slowWindow) + self.signalPeriod+10)
同时用am和talib来计算macd,存在两个问题
- am和talib算出来的值不一样
- am在2天算出来的同一天的值不一样(如红框中所示)
参数
fastPeriod = 12
slowWindow = 26
signalPeriod = 9
self.am = ArrayManager(max(self.fastPeriod, self.slowWindow) + self.signalPeriod+10)
同时用am和talib来计算macd,存在两个问题
talib的MACD计算基于EMA,和数据起始点有相关性。
如果觉得不习惯自行另外实现一个MACD函数即可
因为am里面只保存了固定大小的bar,不过我觉得这个区别还是挺隐蔽的,比较容易让人犯错