python量化入门(一) | 您所在的位置:网站首页 › httpfrdbpediaorgresourcerampage › python量化入门(一) |
![]()
来源:雪球App,作者: 西瓜财经资讯,(https://xueqiu.com/9877481013/146957384) ![]() NO.70 2020.04.15 工欲善其事,必先利其器 // - 前言 - 今天,小咖带大家利用Python在特定指标下筛选股票并进行回测,最终将得到以下筛选Excel及图形。 数据来源:wind,西瓜财经资讯 数据来源:wind,西瓜财经资讯 数据来源:wind,西瓜财经资讯 - Python筛选股票并回测 - ◆ ◆ ◆ ◆ 为了得到以上结果需要进行以下完整步骤: 第一步:导入各种“包”(有些不一定用到)。 数据来源:西瓜财经资讯 第二步:从wind提取数据 (1)首次使用Python的wind接口时,需要进行如下操作:wind客户端——量化——修复插件——修复Python接口。 (2)在导入“包”时已经导入了Windpy,并设置为w,之后的语句直接使用w即可。 (3)语句需要以w.start() 开始,否则所有与wind相关的程序都无法运行,但只要运行一次后不用重复运行。 (4)通过w.wset函数,得到最新调整日期下所有A股上市公司的代码。 (5)由于本文将通过巴菲特提出的三个指标设定选股标准,即毛利率要高于40%、净利率要高于5%、净资产收益率要高于15%,因此通过w.wsd提取所有A股的三个指标在2016至2018年的年度数据。(日期与代码已经构成数据的行与列,如果一次性提取三个指标可能导致数据结构混乱,因此分三次进行提取) 第三步:根据三个指标筛选股票 (1)通过for循环,根据三个指标近三年的数据,按毛利率每年高于40%、净利率每年高于5%、净资产收益率每年高于15%进行筛选。 (2)将筛选出结果导出到Excel中。 第四步:利用筛选的股票代码提取收盘数据 (1)利用筛选的股票代码并使用w.wsd函数提取2005-2019年的收盘价数据。 (2)计算2005-2019的年化收益率,并进行由小大到排序。 第五步:从wind获取筛选数据的证券简称 (1)利用筛选的股票代码并使用w.wsd函数导出代码对应的证券简称。 (2)将年化收益率的表与证券简称的表进行合并。 第六步:制作散点图 (1)通过plt.scatter做散点图,横坐标轴为生成的随机数,纵坐标轴为年化收益率。具体方法见“Python金融应用之图表制作(三)”。(在计算年化收益率时由于有些证券数据缺失,因此只提取了有计算结果的35条数据) (2)为散点图添加其他其他图表要素,如标题、文本标签、网格线设置等。 第七步:制作直方图 (1)通过plt.hist制作直方图,方法与之前作图系列里折线、柱状、散点等类似。 - 后言 - 数据显示,尽管有部分股票的年化收益率超过指数,但数量较为有限,更多取得了近似于、甚至低于指数的收益。这个结果一方面源自模型的过于简化以及数据缺失,另外也反映了想要获得市场超额收益的难度。 格雷厄姆说:“投资艺术有一个特点不为大众所知。门外汉只需些微努力与能力,便可以取得令人尊敬(即使并不可观)的结果。但是如果想在这个容易获取的标准上更进一步,则需要更多的实践和智慧。” 希望上句话能与大家共勉。 想要获取源代码的小伙伴关注公众号,后台回复“python量化入门(一)——利用特定指标筛选股票并回测”即可。注意,源代码可以直接粘贴使用,而且是带文字说明的哦。 往期回顾: end 公众号:西瓜财经资讯 撰稿人:安静的金融美女子 |
CopyRight 2018-2019 实验室设备网 版权所有 |