Tushare财经数据接口
绘制股票k线图
不同种类财经数据的结构与变化特征是有差别的,适合描述不同种类数据特征的图表形式自然也会不同。线图和点图是金融分析者最常用的二维图,因为二维线图与点图比较容易展示金融数据的变化特征,并且绘制方法也较简单。本节以绘制股票k线图(也称蜡烛图)为例介绍Python语言实现时间序列数据可视化的基本方法。
在Python运行环境下利用Tushare平台数据绘制股票k线图的过程主要包含如下三个步骤:
第1步:确定数据来源。本节选择从Tushare平台获取股票行情数据,并利用Tushare包的内建接口函数获取股票行情数据,所以首先要使用命令import tushare导入Tushare包。
第2步:确定可视化的形式和实现工具。本节选择金融学图表包mpl_finance作为绘制股票价格k线图的工具,所以需要使用命令“from mpl_finance import candlestick_ochl”导入mpl_finance包中绘制k线图的子模块candlestick_ochl。
mpl_finance包是从Matplotlib中独立出来的图形包(执行“pip install mpl_finance”命令完成包的安装),通常用于绘制股票价格k线图及线图。由于Tushare包提供的pro接口函数与普通接口函数返回的数据结构存在差异,所以在调用绘图函数时需要确保数据格式的匹配。本节的程序中利用pro接口的
pro.daily()函数获取股票日线数据,并根据mpl_finance包的candlestick_ochl()函数的参数格式要求对行情数据结构进行适当的调整。此外,输出图表中绘制的k线数量不宜太多,因为k线数量太多势必导致k线之间距离太小而使得k线图不够清晰。
第3步:确定绘制图表的输出工具。本节选择图表绘制包Matplotlib作为k线图的输出工具,因为Matplotlib包提供了丰富的图表输出功能,可以比较容易地对图表的结构布局、颜色及坐标轴格式等诸多方面进行设置,使得图表更美观,也更容易理解。所以在程序中需要导入模块Matplotlib,命令为“import matplotlib”。
import tushare as ts
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
from matplotlib import ticker
from matplotlib.pylab import date2num
#from mpl_finance import candlestick_ochl #需要另外安装mpl_finance包
from mplfinance.original_flavor import candlestick_ochl #需要另外安装mpl_finance包
plt.rcParams['font.sans-serif']