掘金策量化选股是依据大数据做的吗?

本文开始探索使用深度学习进行量化交易的过程,几点说明如下:

  • 文章仍然以“趟路”为主要目的,旨在走通将深度学习在量化交易中使用过程,忽略当前学习模型的收益情况。
  • 深度学习框架选择使用Keras。没有特殊原因,就是之前下载zwPython时,里面集成了Keras,拿来直接用了,省去配置环境的工作量,图个方便。
  • 后续文章将陆续尝试多种模式、多种深度模型(包括RNN)在量化中的应用,望读者多多捧场指教。
  • 笔者对Python和深度学习来说都是新手,如有错误或待改进之处,还请多多批评指正。

本文首先探索使用简单的全连接网络筛选短线个股的流程,主要步骤如下:

  1. 数据预处理,根据短线个股筛选标准,给个股日线数据打标。
  2. 模型训练,针对每只股票,训练得到分类模型。
  3. 结果预测,根据训练得到的模型,计算股票每日的分类预测值。
  4. 策略回测,基于股票每日的分类预测值,回测策略收益情况。
  5. 个股筛选,如果策略验证可行,即可根据模型筛选出当前符合买入条件的股票。

这里将短线个股的筛选问题处理为使用深度学习解决的分类问题,目标是筛选出10个交易日内,上涨幅度大于10%的股票。这里选择2017年12月31日及之前的数据作为训练数据,2018年1月1日之后的数据用于做预测。

    为了应用深度学习算法,需要有足够的训练数据。为此,选择2016年1月1日至2017年12月31日内日线数量多于300的个股,代码如下:
    选择2017年12月31日及之前的数据作为训练数据,计算训练数据的输入特征及分类标签。
    将10个交易内上涨幅度超过10%的股票标记为类别1,其他股票标记为类别0。
    为了给深度学习模型提供更多的输入维度,可以基于日线数据的开盘价、收盘价、最高价、最低价、成交量等进行扩展。这里只扩展5、10、20、30、60、120、240均线及均量线数据,后续可根据需要计算MACD、KDJ、RSI等指标数据,进一步扩展输入维度。
    指标及类别计算代码如下:

上面代码中,调用topq_talib来计算扩展指标,读者可以根据具体情况调用其他包或者自己实现相应的指标。

为了应用时序上的信息,将前10日的指标数据合并到当日,作为输入特征,代码如下:

为了便于后面的回测使用,这里将预测数据的计算与训练数据的计算分开处理,但二者计算实现逻辑基本相同,对2018年1月1日至2020年6月30日间的数据进行预测,代码如下:

这篇文章完成了数据预处理工作,后续文章继续介绍基于这些数据进行训练、预测以及回测的过程。

欢迎大家关注、点赞、转发、留言,感谢支持!
为了便于相互交流学习,已建微信群,感兴趣的读者请加微信。

京东已向全国2661个区县提供自营配送服务,支持货到付款、POS机刷卡和售后上门服务。

互联网出版许可证编号新出网证(京)字150号 | | | 违法和不良信息举报电话:

| 消费者维权热线: |

京东旗下网站: | | 网络内容从业人员违法违规行为举报电话:-3

我要回帖

更多关于 如何选股技巧 的文章

 

随机推荐