股票分析离不开各种图表的绘制,尤其是最常用的蜡烛图。下面介绍python中使用matplotlib绘制蜡烛图的过程。
环境及配置
使用的环境如下:
1 | $ python3 --version |
绘制蜡烛图通常使用matplotlib.finance库,但这个库在matplotlib 2.0后已经被废弃,并被移到一个名叫mpl_finance的库中。可使用如下命令安装mpl_finance。
1 | pip3 install https://github.com/matplotlib/mpl_finance/archive/master.zip |
mpl_finance使用雅虎接口获取股票数据,但是不稳定,因此推荐使用tushare库获取股票数据。另外使用talib计算股票各种技术分析指标,例如常用的均线数据。需要注意的是通过pip3按照的talib库是对C/C++版talib的包装,因此需先安装C/C++版talib。
蜡烛图绘制
蜡烛图绘制函数简介
mpl_finance库中蜡烛图的绘制主要有以下四个函数:
1 | candlestick2_ochl(ax, opens, closes, highs, lows, width=4, colorup='k', colordown='r', alpha=0.75) |
在这四个函数的使用过程中需要注意的是:
candlestick2_ohlc函数假定opens, highs, lows, closes中任意一个值不存在,则其他值也不存在。
candlestick_ochl和candlestick_ohlc的输入参数quotes是(time, open, close, high, low, …)元组序列,其中time必须是浮点日期格式,具体参见date2num。
蜡烛图绘制函数存在日线图的时间间隔问题(非交易日无法跳过,导致图像断裂)。常用解决方法是建议重新调整横坐标,被动地过滤掉非交易时间段[2]。例如:
1 | ax.set_xticks(range(0, len(data['date']), 10)) |
蜡烛图的简单绘制
蜡烛图的简单例子如下:
1 | import numpy as np |
参考链接
- finance api, by matplotlib