数说君的文前话
本文开始正式进入python的金融数据学习,为更好的学习,数说君为大家准备了一些基础知识。
→ 如果对python完全不了解,点击这里:
统计师的Python日记【第1天:谁来给我讲讲Python?】
统计师的Python日记【第2天:再接着介绍一下Python呗】
→ 本集涉及到的一些知识(您可以先看看,也可以看完原文再回过来按需索取):
1)遍历一个文件夹里的数据文件(如很多csv文件),用 os.walk
import os
for root, dirs, files in os.walk('/opt/'):
print root #当前遍历到的目录的根
print dirs #当前遍历到的目录的根下的所有目录
print files #当前遍历到的目录的根下的所有文件
配合split()函数,可以提取文件夹里每个csv文件的名字,如果不了解的可以回复【split】查看。
2)本文涉及到的pandas中一些数据管理语句(神器啊!):
data=pd.read_csv( ' 路径 ', parse_dates= )
data.to_csv('路径', encoding= );
data=data [ data [' var '].notnull() ]
data.groupby('date') [ ['var1','var2'] ].sum()
这个语句以日期date为组,对每一组的var1和var2两个变量进行汇总。更多可以回复【groupby】,推荐小编找到的一些学习资料。
3)本集用到的金融学知识:
市盈率=总市值/净利润
本文中,计算创业板市盈率的思路为:
创业板平均市盈率 = 创业板所有股票市值之和 / 所有股票净利润之和
思路就是计算两个和,然后相除。
市盈率是什么?如何解读市盈率?回复【市盈率】看小编推荐给您的网页资料。
今天的文前话有点长,还没关掉页面的都是真爱,话说作者最后留的思考题大家都会做了么?么么哒!
【量化小讲堂-Python、pandas技巧系列】计算创业板平均市盈率
作者:邢不行
原文链接:
http://bbs.pinggu.org/thread-3655032-1-1.html
(本【量化小讲堂】系列已获作者授权转载,如需转载请与原作者联系)
最近创业板表现太猛了,很多人说估值太高,那么估值到底有多高?是否达到了历史上的高点?本案例中程序的功能是计算创业板股票历史上每天的平均市盈率,希望通过这个案例一来解答上述问题,二来向大家介绍pandas以下的几个操作:
计算创业板股票每天的平均市盈率,那么必须要知道每个股票每天的市盈率。从这里→(http://yucezhe.com/product?name=trading-data)可以下载到所有股票的从上市日起的每天的交易数据、以及市盈率数据,可以作为我们计算的原始数据。数据下载下来是下图这个样子:
每个股票一个csv文件
每一行是每一天的数据
有了原始数据之后就是代码了,下面是代码的截图,有详细的注释(要看文字版在微信后台回复【pecode】查看)
把数据下载下来,并且直接运行代码,结果就会输出到“创业板平均市盈率.csv”文件。至于创业板股票的现在的平均市盈率是多少,这里就不贴出来啦,大家还是自己运行程序之后看结果吧
思考题: 本案例中是计算创业板股票的平均市盈率,那么如果计算上证股票的平均市盈率呢?答案:其实只要修改代码中的一个数字就行了。