前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >挖掘股票因子

挖掘股票因子

作者头像
用户6825444
发布2020-05-13 20:56:17
5090
发布2020-05-13 20:56:17
举报
文章被收录于专栏:木下学Python木下学Python

前言

前段时间,小编参加了某个数据挖掘的挑战赛,现在比赛已经过了,所以小编准备分享一下所用到的代码,知识。

题目

题目就如上图,有两问题,第一问是让我们根据所给数据找出影响高送转的因子(这些名词题目有给解释,小编也会给大家),第二问根据所给的前七年的数据,预测第八年那些股票会发生高送转。

第一问大家都很好理解,给了七年股票的因子数据,有基础数据,年数据,日数据,其中日数据有 3G,根据所给数据,从中找出影响一支股票是否发生高送转。

第二问就是根据选出来的这些因子,判断股票在第八年是否会高送转。

完整描述见题目 pdf。

代码流程

先给大家看看我代码目录,使用的 jupyter:

就如图看到的一个目录对应一个操作:

1.导入 pandas 库

2.导入数据,指定显示所有列,sample 随机查看数据

3.表以公共列横向拼接,默认是以所有公共列:

4.这一步是理解数据用的,就选一支股票查看有几条数据,长啥样,按条件选择行:

5.以日数据表分组计算,求每个因子的平均值:

6.这是根据经济学选一些因子,就是列的选择,根据指定列,不这样做的话,直接跟年数据表合并是不行的,因为日数据表有 3G 太大了,运行时内存不够,小编 16G 内存:

7.选出一些列后,就可以合并了,不会发生内存不够,修改指定列名,根据指定的键,进行表合并:

8.使用 map 对非数值型因子进行编码:

9.corr 计算相关系数矩阵:

10.选择相关系数达到条件的列:

11.缺失值填充:

12.使用 KNN 分类算法,对股票分类:

13.使用支持向量机算法,对股票分类:

14.对第八年的测试数据套进支持向量机模型

以上就是整个处理流程,完整代码会发关键词获取。

先使用了 KNN,又使用了支持向量机,因为发现支持向量机的准确率比 KNN 高一点。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-05-10,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 木下学Python 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档