我正在尝试创建一个程序,当股价超过移动平均线并且正在使用库yahoo_fin
(此处为docs时,通过电子邮件发送警报]
我正在尝试从yahoo_fin.stock_info.get_stats('a')
获取移动平均数据,但出现以下错误:
File "lib\site-packages\yahoo_fin\stock_info.py", line 241, in get_stats
table.columns = ["Attribute" , "Value"]
File "lib\site-packages\pandas\core\generic.py", line 5287, in __setattr__
return object.__setattr__(self, name, value)
File "pandas\_libs\properties.pyx", line 67, in pandas._libs.properties.AxisProperty.__set__
File "lib\site-packages\pandas\core\generic.py", line 661, in _set_axis
self._data.set_axis(axis, labels)
File "lib\site-packages\pandas\core\internals\managers.py", line 178, in set_axis
f"Length mismatch: Expected axis has {old_len} elements, new "
ValueError: Length mismatch: Expected axis has 9 elements, new values have 2 elements
任何解决此问题的帮助都会很棒!
[如果您不知道如何使该特定函数起作用,我尝试过的另一种可行的方法似乎是使用方法yahoo_fin.stock_info.get_data('a')
,但我需要帮助才能知道如何从该方法计算移动平均值数据。
您可以使用代码从get_data
计算50天移动平均线:
我为此推送了一个补丁-如果您将yahoo_fin的版本升级到0.8.5,则应该立即修复。