量化交易平台Quantopian讲座(5)—matplotlib绘图

将数据绘制为图表,可以帮我们直观地发现数据的一些内在结构,及数据层面可能存在的问题。但必须要注意的一点是,人们经常关注自己期望结果的相关证据,而会忽略其余部分,所以一般来说,对于构建一个假设来说绘图会很有帮助,但千万不要试图从图形层面去验证一个假设。
matplotlib是Python中常用的一个绘图库,之前的几篇文章中也有已经有所提及,这篇我们再专门介绍一下。

数据准备

在绘图前我们先准备一下后续需要的数据,先引入matplotlib库


引入matplotlib库

这篇文章中我们使用苹果与微软的价格数据为基础,通过get_pricing方法我们会获取到一个DataFrame,我们将列名由默认修改为易于处理的股票代码


量化交易平台Quantopian讲座(5)—matplotlib绘图_第1张图片
获取原始数据

接下来我们就根据这个数据,来介绍几种常见的图表。

直方图(Histogram)

直方图常用于显示不同数据的出现频率,可以直观地显示出观测数据中大部分数据的分布情况。直方图中每个条块的纵向高度表示频率,横向则为观测数据划分的不同区间。直方图可看作为一个离散的概率密度函数(P.D.F)。
首先我们将微软2014年的股价,横向切分为20个区间,展示价格在不同区间出现的频率。


示例代码

量化交易平台Quantopian讲座(5)—matplotlib绘图_第2张图片
微软2014年价格直方图

进一步,我们可以通过pct_change()函数将价格数据转换为价格变动数据,进而展示出每日价格波动比率的分布情况。


量化交易平台Quantopian讲座(5)—matplotlib绘图_第3张图片
示例代码

量化交易平台Quantopian讲座(5)—matplotlib绘图_第4张图片
微软2014年每日价格变动直方图

累计概率密度函数(C.D.F)应用也非常广泛,与概率密度函数不同之处在于,每个区域的直方块高度不仅仅包含本区间内出现次数,还包含了其左侧所有直方块代表的次数,所以图表中展示为一个从左至右不断升高的图形。


示例代码

量化交易平台Quantopian讲座(5)—matplotlib绘图_第5张图片
微软2014年每日价格波动的累计概率密度直方图

散点图(Scatter plot)

散点图常用于分析两个数据集间的关联关系,两个数据集需要有一定的关联,如下例中微软和苹果公司的股票价格通过日历关联,散点图中没一点表示相同日期两个公司的股票价格。


示例代码

量化交易平台Quantopian讲座(5)—matplotlib绘图_第6张图片
苹果与微软的股票价格散点图

同样,我们使用pct_change()函数,将价格数据转换为价格变动数据,再来绘制一次散点图


量化交易平台Quantopian讲座(5)—matplotlib绘图_第7张图片
示例代码

量化交易平台Quantopian讲座(5)—matplotlib绘图_第8张图片
苹果与微软价格变化率散点图

线图(Line graph)

线图用来展示Y轴变量随X轴变量的变化趋势,价格波动图就是最为常见的线图,表示股票价格随时间的变化所发生的变化。我们来绘制出微软与苹果2014年的股票价格变动图。


示例代码

量化交易平台Quantopian讲座(5)—matplotlib绘图_第9张图片
股票价格变动图

通过以上的介绍,是不是觉得matplotlib很酷,将扁平的数据转化为活灵活现的图标,这将非常有助于我们去验证一些自己的想法。
本文就到这里,感谢阅读,欢迎订阅。

你可能感兴趣的:(量化交易平台Quantopian讲座(5)—matplotlib绘图)