由于 matplotlib.finance 已被弃用,我该如何使用新的 mpl_finance 模块?

新手上路,请多包涵

我正在尝试在 python 中导入 matplotlib.finance 模块,以便制作烛台 OCHL 图。我的 matplotlib.pyplot 版本是 2.00。我尝试使用以下命令导入它:

 import matplotlib.finance
from matplotlib.finance import candlestick_ohlc

我收到此错误:

warnings.warn(message, mplDeprecation, stacklevel=1) MatplotlibDeprecationWarning:财务模块在 mpl 2.0 中已被弃用,并将在 mpl 2.2 中删除。请改用模块 mpl_finance。

然后,我尝试使用以下行,而不是在 python 中使用上述行:

 import mpl_finance

我收到此错误:

导入错误:没有名为“mpl_finance”的模块

我应该怎么做才能从 matplotlib.pyplot 导入烛台?

原文由 Furqan Hashim 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 950
2 个回答

此警告告诉您财务模块将在某个时候被删除。

目前你不需要担心这个警告。它只会在您更新到尚未发布的 matplotlib 2.2 版时影响您,在这种情况下,您需要更改导入。

如果您现在已经想与未来的版本兼容,您可以从 https://github.com/matplotlib/mpl_finance 下载 mpl_finance 模块。

下载文件后,您可以按照通常的方式安装,

 python setup.py install

或者你可以尝试通过 pip 安装,

 pip install https://github.com/matplotlib/mpl_finance/archive/master.zip

这样做的原因是 matplotlib 的人们希望保持他们的代码干净,而不是在主代码中维护这样一个专门的 sidepackage。他们可能也不想维护包并在上面花费资源,这些资源可以更好地用于核心开发。

原文由 ImportanceOfBeingErnest 发布,翻译遵循 CC BY-SA 4.0 许可协议

我已经停止使用 mpl_finance(和 plotly),因为它们太慢了。相反,我编写了一个优化的财务绘图库 finplot ,我用它来回测多达 10 6 个蜡烛。

这是一个小例子:

 import yfinance as yf
import finplot as fplt

df = yf.download('SPY',start='2018-01-01', end = '2020-04-29')
fplt.candlestick_ochl(df[['Open','Close','High','Low']])
fplt.plot(df.Close.rolling(50).mean())
fplt.plot(df.Close.rolling(200).mean())
fplt.show()

示例包括 显示 SMA、EMA、布林带、累积/分布、Heikin Ashi、平衡量、RSI、TD 序列、MACD、散点图指标、热图、直方图、实时更新图表和交互式测量;所有这些都具有可供使用的合理默认值。

MACD 标准普尔 500 示例

我每天都做 dogfooding,如果你想要什么,请给我留言或拉取请求。希望你试一试!

原文由 Jonas Byström 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
logo
Stack Overflow 翻译
子站问答
访问
宣传栏