全文链接:http://tecdat.cn/?p=28265
作者:Xiaoyi Sun
预测股票价格,并在合适的时间产生交易策略实现收益,一直是一个热门的问题,到现在为止也提出了很多预测方法。但股票价格 的实时预测是一个难点,需要及时预测价格趋势并作出交易判断。
解决方案
任务/目标
根据市场上已有价格等数据,预测股票价格或趋势,形成交易策略,通过回测计算收益情况。
数据源准备
使用分钟集数据,获得股票价格、交易量、 流量数据,其中流量数据是用一种特殊的方 法计算。每天交易时间为 4 小时,所以一天 有 240 组数据。
由于数据量级的差异,需要对数据进行预处理,都进行归一化。
构造
以上说明了如何抽取相关特征,我们大致有如下训练样本(只列举部分特征)。
划分训练集和测试集
考虑到最终模型会预测将来的某时间段的销 量,为了更真实的测试模型效果,以时间来 切分训练集和测试集。其中训练集与测试集 的比例为 8:2。
建模
LSTM,长短期记忆网络,是一种特殊的 RNN 网络。LSTM 解决了 RNN 中存在的长期依赖问题, 有输入门、输出门和遗忘门。
EMD,经验模态分解,任何信号可以分解成若干模态分量之合。
EMD分解在处理非平稳及非线性数据上,具有非常明显的优势,适合于分析非线性、非 平稳信号序列,具有很高的信噪比。
模型优化
利用 LSTM 预测股票价格解决 EMD 分解的端点问题。
利用 LSTM 预测中国平安的股票价格情况:从 loss 图中可以看出,网络效果较好,训练集和测试集的loss 都是下降后趋于稳定,不存在过拟合现象。
从下图可以看出测试集的价格预测有很高的 一致性。
点击标题查阅往期内容
Python TensorFlow循环神经网络RNN-LSTM神经网络预测股票市场价格时间序列和MSE评估准确性
01
02
03
04
下图是放大后效果
利用EMD 分解计算 MACD 的值生成交易信号,将信号代入真实股价产生收益。可以 看出胜率在60%左右