Ta-lib:指标适用于股票,但不适用于加密货币

问题描述

我在使用 Ta-lib 库时遇到问题。我正在尝试找到 BTC-USD 的 RSI 和布林带。问题是,当我尝试为任何加密货币查找它们时,它没有任何价值(NaN)。但是当我尝试为任何股票找到它们时,它就起作用了。当我显示数据(打开关闭高低成交量)时,它一直有效(对于加密货币和股票)。它给了我正确的: picture_0

但是当我计算加密货币的 RSI 和 BANDS 时,它不起作用。

这是我的代码

classification.prediction(test_data.values)

当我运行它时,它给了我,当我的 df 是股票的数据框时: picture_1

当我运行它时,当我的 df 是加密货币的数据框时,它给了我: picture_2

一开始,我认为问题出在指标上,所以我尝试用 ROC 替换 RSI,看看它是否有变化。

因此,我将 def get_indicators(data): # Get RSI data["rsi"] = talib.RSI(data["Close"],timeperiod=7) data["upper"],data["middle"],data["lower"] = talib.BBANDS(data["Close"],timeperiod=10,nbdevup=2,nbdevdn=2) # pprint(upper) # pprint(middle) # pprint(lower) return data df2 = get_indicators(df) df2 替换为 data["rsi"] = talib.ROC(data["Close"],timeperiod=7),这一次它正确计算了股票和加密货币的 ROC。它给了我:

picture_3

我不明白问题出在哪里,可以计算股票的 RSI 和布林带,但不能计算加密货币。有人可以帮我吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)