基于LSTM等深度学习方法的股指预测研究

2019-10-18 02:57李佳黄之豪陈冬兰
软件导刊 2019年9期
关键词:深度学习

李佳 黄之豪 陈冬兰

摘 要:为了改善传统时间序列方法无法在预测模型中添加相关变量等缺点,并提高股指预测精度,运用LSTM神经网络等深度学习方法对我国上证指数及沪深300指数进行预测分析,并将预测结果与RNN、CNN、ARMA等模型进行比较,然后在模型中加入百度指数测试其对预测精度的影响,最后检验LSTM模型对训练步长的敏感性。研究结果表明,LSTM能够实现对股指的精准预测,其预测评价指标MAE、MAPE、RMSE分别为0.008、0.025、0.011,预测误差低于其它模型,加入百度指数可进一步提升其预测能力,但改变LSTM模型训练步长对结果影响不大。因此,LSTM模型在金融经济预测领域有较高的应用价值。

关键词:深度学习;LSTM;股指预测;百度指数

DOI:10. 11907/rjdk. 191155 开放科学(资源服务)标识码(OSID):

中图分类号:TP306文献标识码:A 文章编号:1672-7800(2019)009-0017-05

Research on Stock Index Prediction Based on Deep Learning Methods Such as LSTM

LI Jia, HUANG Zhi-hao,CHEN Dong-lan

(Business School, Shanghai University of Science and Technology, Shanghai 200093, China)

Abstract:In order to improve the shortcomings such as impossible to add relevant variables to the prediction model of traditional time series methods and improve the accuracy of stock index prediction, this paper uses the deep learning method (LSTM neural network) to predict and analyze China's Shanghai Composite Index and the Shanghai and Shenzhen 300 Index. The prediction results are compared with RNN, CNN, ARMA and other models. Then, Baidu index is added to the model to test its influence on prediction accuracy. Finally, the sensitivity of LSTM model to train step size is tested. The research results show that LSTM can accurately predict the stock index. The forecasting indicators MAE, MAPE and RMSE are 0.008, 0.025 and 0.011 respectively. The prediction error of LSTM is lower than other models and adding Baidu index data can further improve the forecasting ability. Therefore, the LSTM model has application value in the field of financial economic forecasting.

Key Words: deep learning;LSTM;stock index prediction;Baidu index

0 引言

近年來,我国股票市场表现不佳,上证指数大部分时间都在3 000点以下徘徊,有时还会出现较大幅度的下跌。典型例子有: 2018年6月19日,上证指数收盘价从上一交易日的3 021.90点暴跌至2 907.82点,上证指数失守3 000点也即意味着广大股民、股票基金、基于股票的资产管理计划亏损惨重。然而股市似乎有继续暴跌的趋势,在之后的几个交易日内,上证指数分别跌破了2 900点和2 800点两个关口,截至2018年7月2日,上证指数的收盘价为2 775.56点。股市是经济的晴雨表,而股票指数又是股市状况的量化代表,因此如何精准预测股票指数成为了如证券市场管理机构、股票投资者等多方利益相关者致力于解决的难题。

现阶段,股指预测方法主要分为以下几类:首先是基于时间序列模型的股指预测方法,如万建强、文洲[1]以及薛勇等[2]使用ARIMA、ARMA、ARCH等方法对香港股指及股指期货进行预测,但由于时间序列预测方法的固有限制,存在预测精度难以提高、对预测变量要求较高等问题。之后,学者们对股指预测方法的研究开始转向机器学习方法,如田翔、邓飞其[3]使用支持向量机回归方法(SVR)对股指进行预测研究,解决了非线性时间序列预测相关问题,并提高了模型泛化能力;TAY&CAO[4]使用C-上升支持向量机对原有正则化函数进行改进,得到了更好的预测结果;孙彬、李铁克[5]则在支持向量机回归基础上进行改进,使用改进模型v-SVR对金融股指进行预测,并证明了其有效性;Wang&Shang[6]、Wang等[7]也将改进SVM模型应用于证券与股票指数预测中,证明了改进支持向量机模型的有效性。同时,学者们也关注了另一种机器学习方法——神经网络,如王光强和周佩玲[8]将神经网络算法应用于道琼斯股票指数预测中,增强了神经网络的实用性;Chen&Dissanayaka[9]使用前馈反向传播神经网络(BPNN)对2012年1月2日~2014年3月20日的股价数据进行预测,从原先的8个模型中筛选出最优模型,并得到预测效果与训练输入、隐层神经元个数有关的结论;鲍新中等[10]、汪劲松和石薇[11]、黄宏运等[12]对BP算法进行改进,解决了神经网络容易陷入局部最小值,以及收敛速度慢等问题。之后,随着灰色预测方法逐步得到推广,不少学者开始尝试将灰色预测方法应用于股指预测中,如崔铭元等[13]、张双[14]将灰色预测方法与BP神经网络相结合,从而提高了灰色预测法的精度。同样考虑到将不同模型进行结合,以充分利用各种模型优势的学者还有陈卓雷和蒋寒迪[15]、吴朝阳[16]、史文静和高岩[17]、严骏宏[18]等,其将传统时间序列方法、灰色预测法及BP神经网络进行组合,得到了预测精度更高的模型。

通过整理上述文献可以发现,传统时间序列方法不易加入与预测指标相关的变量,而支持向量机与BP神经网络等算法则在预测精度上还有待提高。近年来,深度学习方法(Deep Learning,DL)逐渐成为机器学习领域的热门话题,并在图像处理、语音识别、文本识别、自然语言处理等领域应用广泛,但其在股指预测等金融领域的应用非常少。本文主要采用深度学习方法中十分适用于时间序列预测的长短期记忆模型(LSTM)对上证指数和沪深300指数进行预测,并将该方法与其它深度学习方法如循环神经网络(RNN)、卷积神经网络(CNN),以及其它机器学习方法如支持向量回归(SVR)、BP神经网络(BP)与ARMA模型等时间序列模型进行比较研究。

1 LSTM神经网络

由于神经网络算法从本质上来说更容易对复杂非线性关系进行拟合,而如股票指数等金融时间序列因受多种因素影响呈现出非线性特征,因此将传统BP神经网络应用于股指预测会提高预测精度。但BP神经网络虽然可以通过增加神经网络层数进一步提高预测精度,但随之也会出现梯度消失等问题。传统BP神经网络只在神经网络层与层之间建立了权连接,RNN神经网络(Recurrent Neural Networks,RNN)则通过在神经网络层的神经元间建立权连接方式,使隐藏层中间结果可以进行循环利用,从而使网络中的信息能够持久化,因此其相比于其它神经网络更适合处理序列预测问题,而传统RNN由于梯度消失等问题,对长期依赖问题的学习能力不足,导致其预测能力无法提升。Hochreiter&Schmidhuber[19]提出的长短期记忆神经网络(Long Short-Term Memory,LSTM)则通过引入“门控单元”,可以解决长期依赖问题,之后Gers等[20]对LSTM网络进行了改进,近年来Graves等[21]又对其进行了改良与推广,从而使LSTM网络更加有效。长短期记忆网络的门控单元包括输入门、遗忘门和输出门。此外,记忆单元(cell)也在LSTM网络中发挥着至关重要的作用。长短期记忆网络结构如图1所示。

(1)遗忘门[ft]。遗忘门的激活函数为sigmoid函数,其决定信息的遗忘。sigmoid函数值介于0~1之间,当函数值为0时,表示丢弃信息,当函数值为1时,表示完全接受信息,其公式如下:

以上简要介绍了LSTM神经网络将[ht-1]和[xt]逐步转变为[ht]的过程,正是由于LSTM神经网络对遗忘门、输入门、输出门及记忆单元的巧妙设置,使得该网络能够保留有用信息,从而一定程度上解决了长期依赖问题。因此,LSTM神经网络能更有效地对时间序列进行预测。

2 实证分析

2.1 实验数据来源及处理

虽然国际上有许多具有巨大影响力的股票指数如道琼斯、纳斯达克、日经、恒生等,但由于我国目前正处于股市动荡期,因此本文选择我国股票市场最具有代表性的两个股票指数——上证指数和沪深300的日收盘价进行实证研究。研究样本的时间范围为2014年7月1日~2018年7月2日,两种指数分别有978个观测值,两个股票指数的收盘价时间序列来自网易财经数据库。同时作为创新,本文也想探究互联网搜索行为数据作为一种大数据时代的特有数据,能否增强模型预测能力。我国互联网搜索行为一般以百度指数数据作为代表,因此本文在进行模型预测效果对比后,使用百度指数作为补充数据,以验证搜索行为数据能否增强预测能力。百度指数将关键词搜索行为按次数记录成日度数据,百度指数提供的数据分为PC趋势与移动趋势,本文使用两种趋势的求和数据作为具有代表性的在线大数据,搜索关键词选择与股票指数密切相关的证券、股票等,具体数据来源于百度指数官方网站(https://index.baidu.com/)。

在数据输入到神经网络模型之前,需要对数据进行归一化处理,从而避免数据对度量单位选择的依赖,并且有助于提高模型性能。本文采用最大—最小归一化方法将数据压缩到[0,1]区间,经过归一化后的数据有利于进行模型训练,如公式(7)所示。

2.2 模型性能评价与结果比较

为了使长短期记忆网络能与其它模型进行比较,本文选择平均绝对误差(MAE)、平均误差百分比(MAPE)、均方根误差(RMSE)作为统一、客观的评价标准,相关评价指标定义如下:

本文通过python中的神经网络构建框架keras构建2层LSTM网络(第1层128个神经元,第2层64个神经元,其中,每层激活函数使用relu函数缓解梯度消失问题)進行股票指数预测研究,选择的训练步长为7,即将所有数据进行划分,用过去7个交易日数据作为特征,而将当前交易日数据作为标签。将数据按上述方式确定数据特征及标签后,本文将所有样本数据按9∶1的比例划分,最后10%的数据作为测试集,即将978个观测值中的最后98个数据作为测试集,而在前90%的数据中,再取其中的10%作为验证集,用来调整模型超参数以及检验模型是否具有过拟合现象。上证指数与沪深300预测结果分别如图2、图3所示。

其中,训练拟合值是通过训练集训练得到LSTM模型后在训练集上的拟合值,测试预测值是通过训练集得到LSTM模型后在测试集上的表现。从图中可以看出,LSTM模型在预测上证指数和沪深300方面表现优异,除部分最高峰与最低峰外,几乎与真实值完全拟合。为了能更清晰地看出长短期网络在测试集上的效果,可在测试集上单独进行可视化作图后再进行分析,上证指数预测效果如图4所示。通过图4可直观地看出,LSTM神经网络在测试集上有着不错的表现。本文所有评价指标数据由测试集测试结果得到,并且神经网络模型迭代次数都为200次。从模型评价指标上看,LSTM模型对沪深300的预测不如对上证指数的预测精准,两者评价指标MAE、MAPE、RMSE分别为:0.011、0.022、0.015和0.008、0.025、0.011,但即便预测精度稍差的沪深300指数也达到了较高的预测精度。在此使用沪深300指数是为了说明LSTM模型对所有股指预测的适用性,后文都使用上证指数作为股票指数代表进行预测分析。

以上仅从单个模型角度对预测效果进行分析,为了检验LSTM模型是否如理论上所言的能实现更有效的预测,本部分选取包括循环神经网络(RNN)、卷积神经网络(CNN)、BP神经网络、支持向量回归(SVR)、ARMA模型等较为典型的深度学习、神经网络、机器学习及时间序列模型作对比分析,其中RNN同样使用两层神经网络,每层神经元个数和激活函数与长短期记忆网络相同,CNN使用两个一维卷积层网络,BP神经网络使用3层网络进行构建(第1层有128个神经元,第2层有64个神经元,第3层有32个神经元),SVR参数为惩罚参数C=4,核函数为RBF核函数,ARMA根据AIC准则得到ARMA(2,4),比较结果如表1所示。

通过表1可以看出,LSTM模型作为对RNN神经网络的改进,其相比于RNN神经网络预测精度更高;从评价指标来看,由于RNN考虑了时间序列先后关系,因此在预测效果上略优于BP神经网络;传统时间序列模型如ARMA模型,以及普通机器学习方法如SVR模型等,在预测时间序列精度上相比神经网络方法则略显不足。由于股票指数的复杂非线性等特征,也使得时间序列模型预测方法表现最差。

本文除提出使用深度学习方法预测股票指数外,还将探究互联网搜索行为数据是否能够提高预测精度,因此选取一些百度指数数据作为补充数据加入LSTM模型。百度指数数据加入前后预测精度对比如表2所示。

通过表2数据可知,加入证券、股票等百度指数虽然对LSTM模型预测精度的提高并不显著(MAE评价指标在小数点后第5位上显示出加入百度指数后预测精度更高),但仍在一定程度上有助于模型对上证指数的预测。百度指数对预测性能提高幅度小的一个可能原因是百度指数数据大多为非结构化数据,使用互联网搜索“股票”能突出人们对股票的关注度上升,而这种关注度可能来自于恐慌下跌,也可能来自于持续牛市。

2.3 LSTM模型预测步长研究

本部分旨在研究LSTM模型在改变模型超参数——预测步长时,模型预测性能的变化。之前研究都统一将预测步长设置为7,即用过去7个交易日数据进行预测,因此本文选择不同的预测步长:过去1个交易日、3个交易日、5个交易日、10个交易日、20个交易日及50个交易日进行比较研究,在探索LSTM神经网络是否对预测步长敏感的同时,也希望寻找最精准的预测步长,从而为今后的实践研究提供思路。通过选择1个交易日、3个交易日、5个交易日、10个交易日的训练步长,可研究如股票指数等高频数据对短步长的敏感性,选择20个交易日及50个交易日,可探索LSTM模型对相对较长步长的敏感性,结果如表3所示。

通过表3可以直观地看出,预测步长的改变对LSTM神经网络的影响极小,从而体现出LSTM模型训练的稳定性。另外当预测步长为10个交易日时,LSTM模型对上证指数的预测相对最为准确。但通过研究发现,其余比较模型在改变训练步长时,不但预测能力依旧不如LSTM模型,而且还会出现无法训练或训练敏感性很强等问题。

3 结论与启示

本文将深度学习方法运用于我国股票指数预测,可以看出LSTM神经网络既继承了RNN神经网络适合处理序列问题的特点,又进一步解决了长期依赖问题,同时对时间序列数据进行预测时能够得到高精度的预测结果,其预测效果优于RNN、CNN、BP神经网络、支持向量回归、ARMA等模型。通过将百度指数加入模型后的预测结果可以看出,互联网数据可以小幅提高LSTM神经网络预测效果,而通过对LSTM神经网络的训练步长参数作出调整,观测不同训练步长下LSTM神经网络的表现,可以发现LSTM神经网络对训练步长并不敏感。可见,LSTM在金融经济预测领域有良好的应用前景,未来可研究如何将LSTM网络与其它模型相结合形成集成模型,以进一步提高预测精度。

参考文献:

[1] 万建强,文洲. ARIMA模型与ARCH模型在香港股指预测方面的应用比较[J]. 数理统计与管理, 2001, 20(6):1-4.

[2] 薛勇,郭菊娥,梁伟. 股指期货预测模型构建及其应用效果分析[J]. 统计与决策,2009(13):19-22.

[3] 田翔,邓飞其. 精确在线支持向量回归在股指预测中的应用[J].计算机工程,2005,31(22):18-20.

[4] TAY F E H,CAO L J. Modified support vector machines in financial time series forecasting[J]. Neurocomputing, 2002,48:847-861.

[5] 孫彬,李铁克. 基于v-SVR的金融股指预测及选时策略研究[J]. 统计与决策,2010, 30(3):45-48.

[6] WANG S,SHANG W. Forecasting direction of China security index 300 movement with least squares support vector machine[J]. Procedia Computer Science, 2014, 31:869-874.

[7] WANG J, HOU R, WANG C, et al. Improved-support vector regression model based on variable selection and brain storm optimization for stock price forecasting[J]. Applied Soft Computing, 2016, 49:164-178.

[8] 王光强,周佩玲. 神经网络算法在股指预测中的应用[J]. 计算机工程,2006,32(1):211-212.

[9] CHEN D L,DISSANAYAKA M K N. Using feed forward BPNN for forecasting all share price index[J]. Journal of Data Analysis and Information Processing, 2014,2(4):87-94.

[10] 鲍新中,刘澄,孙彬. LM-BP算法在金融股指预测中的参数设定[J]. 系统管理学报,2009,18(6):667-671.

[11] 汪劲松,石薇. 多种群遗传神经网络在股指预测中的应用[J].统计与决策,2014(14):76-79.

[12] 黄宏运,朱家明,李诗争. 基于遗传算法优化的BP神经网络在股指预测中的应用研究[J]. 云南大学学报:自然科学版,2017(3):350-355.

[13] 崔铭元,杨成,温尚敏. 基于灰色神经网络的宏观经济因素修正股指预测模型[J].软件,2012,33(9):85-87.

[14] 张双. 基于遺传算法的灰色神经网络的预测[J].统计与决策, 2014(17):79-81.

[15] 陈卓雷,蒋寒迪. 基于GARCH-BP模型的股指预测及实证分析[J]. 当代财经,2006(6):41-44.

[16] 吴朝阳. 小波变换和GM—ARMA组合模型的股指预测[J]. 智能系统学报,2011,6(3):279-282.

[17] 史文静,高岩. EMD 结合 RBF 神经网络新混合模型及股指期货价格预测[J]. 经济数学,2015(1):47-51.

[18] 严骏宏. 基于离散小波分解和支持向量机的股指组合预测[J]. 统计与决策,2017(3):170-173.

[19] HOCHREITER S,SCHMIDHUBER J. Long short-term memory[J]. Neural Computation,1997,9(8):1735-1780.

[20] GERS F A,SCHMIDHUBER J,CUMMINS F. Learning to forget: continual prediction with LSTM[J]. Neural Computation, 2000, 12(10):2451-2471.

[21] GRAVES A,MOHAMED A R,HINTON G. Speech recognition with deep recurrent neural networks[C]. International Conference on Acoustics, Speech and Signal Processing,2013.

(责任编辑:黄 健)

猜你喜欢
深度学习
从合坐走向合学:浅议新学习模式的构建
搭建深度学习的三级阶梯
有体验的学习才是有意义的学习
利用网络技术促进学生深度学习的几大策略
MOOC与翻转课堂融合的深度学习场域建构
大数据技术在反恐怖主义中的应用展望
构建“单元整合、主题牵引”诗歌鉴赏“深度学习”课堂的策略