作为深度学习技术的经典模型之一,长短期记忆(LSTM)神经网络在挖掘序列数据长期依赖关系中极具优势。本文选取了东方财富网股吧评论数据作为市场情绪因素以及具有代表性的LSTM神经网络模型在量化投资方面进行研究。结果表明:①基于股吧论坛评论数据构建情绪指标进行分层分析,结果表明股吧论坛评论形成的市场情绪与股票市场有较强的相关性,能够影响股票价格;②基于同一LSTM 神经网络结构对4000多只股票进行预测效果评估,证明 LSTM 神经网络在股价预测上具有优秀的预测能力和泛化能力;③将基于股吧论坛评论数据训练的LSTM神经网络模型构建量化策略并模拟真实的市场环境进行回测,证明该策略能够获得可观的超额收益,在实际应用中更具指导意义。鉴于LSTM神经网络强大的自我学习能力,LSTM神经网络在金融预测的发展中具有广阔前景。
关键词:LSTM神经网络;量化策略;股票预测
前言
随着我国证券交易体量的不断增大,我国量化投资的规模也在不断增加。在量化投资领域中,金融市场预测一直是被关注的重点问题,投资者和决策者都希望能够通过预判股票走势从金融市场上获利(程文辉等,2022)[1]。然而股票价格指数的变动是具有高噪声且非平稳非线性等特点的时间序列。股票价格指数一方面可以被用来衡量各个市场的经济发展状况,另一方面可以影响投资市场上投资者的投资策略。由于股票价格指数与社会公众的经济利益息息相关,因此使用各种时间序列模型对其未来的发展趋势进行预测向来是研究的热点(姚洪刚等,2021) [2]。在金融时间序列模型中,首先为了解决数据非平稳性的特点,自回归平均移动模型(ARIMA)被提出(戴晓枫,2005)[3],而为了提高预测精确度、预测误差方差,自回归条件异方差模型(ARCH)(钱争鸣,2000)[4]、广义自回归条件异方差(GARCH)(吴长凤,1999)[5]相继被提出并获得认可。然而这些线性预测模型对于非平稳非线性的金融时间序列的效果有限,非线性预测模型与线性预测模型之间的区别就在于非线性预测模型可以对于金融时间序列的非线性关系更加有效的识别(苏治,2008)[6]。其中运用广泛的主要包括支持向量机(Support Vector Machine,SVM)、随机森林以及深度学习模型如人工神经网络(Artificial Neural Network,ANN)等。其中SVM的优势在于解决小样本、非线性识别问题,在使用中主要与人工智能(黄卿,2018;王鹏,2018)[7,8]、遗传算法(徐国祥等,2011)[9]、粒子群算法(崔金鑫,2019;高杨等,2014)[10,11]、鱼群算法(杨建辉,2013)[12]等结合使用增强其对金融市场的预测精度,但是传统SVM依旧存在无法识别信息虚假、特征指标相关性等问题(徐国祥等,2011;黄梅,2008)[9,13]。Breiman在2001年提出随机森林这种非参数预测方法(Breiman,2001)[14],主要是通过优化Bagging算法监测变量残差平方和或回归平方和的边际减小量来评价解释变量的相对权重达到较好地排除异常值的影响的目的,能够解决过度拟合问题(闫政旭等,2021)[15]。而ANN同样是金融时间序列预测模型的热点方法之一,它通过一系列神经元之间互相进行信号传输的方式达到处理非线性、不连续和高频多维数据的目的,从而对股票市场趋势进行准确的预测(Abhishek Kumar等,2012;Neelima Budhani等,2014)[16,17]。目前可以使用单层低复杂度的预测模型与ANN进行连接,然后由遗传算法(GA)进行扩展优化,其预测精确度显著高于传统ANN(Gupta Abhinandan等,2017;Nayak S. C等,2015;Qiu Mingyue, Song Yu等,2016)[18,19,20],或者使用多层感知器(MLP)将输入的数据集映射到一组适当的输出上,通过多层节点相连接,每一个节点都具有非线性激活函数用来解决不可线性分离的问题(Dhenuvakonda P等,2020)[21]。再者利用数据的动态属性通过更新神经网络结构或调整权重来采用动态变化实现较低的错误率和较高的预测精度(S.M. Prabin,2021)[22]。但是人工神经网络为了最小化输出误差平方使用了梯度下降算法的预测模型(Mahasagara S Prashant,2017)[23],存在着收敛速度慢、局部最优等缺点,在此基础上提出了循环神经网络(Recurrent Neural Network,RNN),RNN通过将神经网络中嵌入循环系统的方式使得数据输入系统中包含着一层隐藏层中的数据,即将上一时刻的数据设置为隐藏层,在当前时刻输入数据时,此时的数据实则包括此时的输入数据和上一时刻输入的数据,这种循环结构在保存了历史信息的同时还能够随时保持数据的更新,RNN通过这种循环结构使得数据前后关联,有效地解决了时间序列之间存在的长期依赖问题(黄婷婷,2019) [24]。为了提高RNN的预测精度就需要降低维度数量,主要方法包括主成分分析方法(Berradi Zahra等,2019;Gao Tingwei等,2018)[25,26]、建立预测模型(Wei Liang-Ying等,2012)[27]、融合Lee振子算法(Jeff Wang Raymond Lee,2021)[28]、使用Takens嵌入定理(Ning Bo等,2009)[29]等。由于RNN使用了传统的误差反向传播算法来修正权重,因此RNN在实际运用中会存在梯度爆炸和梯度消失的问题。在此基础上,LSTM模型使用了一种特殊的RNN结构解决传统RNN模型中存在的梯度问题。LSTM模型的运行原理实则是在RNN模型的基础上加入了筛选的操作,通过“门限”对数据进行筛选控制,在进行权重修正时,部分误差会通过遗忘门而被剔除,从而达到解决梯度爆炸和梯度消失的问题(陈佳等,2019)[30]。目前已有研究证明基于深度学习的LSTM模型的精确性是高于其他模型的(任君等,2018;)[31]。
在提高金融时序预测的精确度上,除了对模型不断优化和创新之外,对数据的选择的也尤为重要。在互联网时代,微博、论坛、研究报告等文本信息均能在一定程度上体现投资者的情绪,而这些反应情绪的信息在投资者之间互相传递进而影响投资者的投资决策(杜剑等,2020)[32]。目前,金融市场预测所运用到的数据主要包括行情数据、财报数据及一些技术指标数据,与投资者情绪的相关研究主要应用于股票市场。已有研究一般通过股吧发帖量(胡昌生等,2017)[33]、投资者关注度(周孝华等,2017)[34]或者自行构建投资者情绪指数(尹莉娅等,2018)[35]等方法对投资者情绪进行衡量,并且运用资产定价模型(吴慧慧等,2022)[36]、Fama-French三因子模型(原东良,2018)[37]、SVAR模型(熊伟等,2015)[38]、Fama-Mac-Beth(李岩等,2018)[39]等估计方法探讨投资者情绪对股票收益的影响。目前普遍认为投资者情绪的变化对股票收益是有正向促进作用的,并且受到投资者关注度越高的股票对投资者情绪变动的反应越敏感、情绪交易者越多的股票对投资者情绪变动的反应越敏感(刘维奇等,2014)[40],在这二者之间高质量会计信息(刘斌等,2018)[41]、风险承担水平(吴慧慧等,2022)[36]等要素起着显著的中介作用。因此投资者情绪的变动对量化投资策略的选择有着较深的影响。
本文基于前沿研究的考虑,选取了东方财富网股吧论坛评论数据作为市场情绪因素数据以及具有代表性的LSTM神经网络模型在量化投资领域进行研究及实证。主要贡献在于: ①基于股吧论坛评论数据构建情绪指标进行分层分析,结果表明股吧论坛评论形成的市场情绪与股票市场有较强的相关性,能够影响股票价格;②选取ARIMA模型作为非线性模型的代表以及其他深度学习模型进行对照分析,分析结果显示深度学习模型比ARIMA模型具有更好的预测效果,LSTM模型比RNN模型有更好的预测效果,同时该情绪数据可以提升模型的预测效果;③基于同一LSTM 深度学习模型对全市场4000多只股票进行预测效果评估,而不局限个别几只股票,结果证明 LSTM 深度学习模型在股价预测上具有优秀的预测能力和泛化能力;④将基于股吧论坛评论数据训练的LSTM神经网络模型构建量化策略并模拟真实的市场环境进行回测,证明该策略能够获得可观的超额收益,在实际应用中更具指导意义。
模型构建
LSTM神经网络最早由Hochreiter和Schmidhuber(1997)[16]提出,LSTM每个神经元的结构见图2(Grave,2012)[17]。LSTM的一个神经元一般由一个细胞(Cell)、一个输入门(Input Gate)、一个输出门(Output Gate)和一个遗忘门(Forget Gate)组成。其中细胞用来记录神经元状态,输入门和输出门用来接收、输出参数和修正参数,遗忘门用来控制上一单元状态的被遗忘程度。在LSTM中,状态分为短期状态和长期状态,细胞可以学习识别重要的输入,将其存储在长期状态中,并在需要的时候提取这些信息。
本文设计的LSTM神经网络的主体结构如图3所示,其中包括两层LSTM神经层、一层Dropout层和一层全连接层。在隐藏层中使用太少的神经元将导致欠拟合,相反,使用过多的神经元可能会导致过拟合、增加训练时间,从而难以达到预期的效果。因此本模型在第一层LSTM层中设置32个神经元,第二层LSTM层中设置16个神经元,拥有较大的第一层并在其后跟随较小的层将导致更好的性能,因为第一层可以学习很多低阶的特征,这些较低层的特征可以馈入后续层中,提取出较高阶特征。为避免过拟合,其后加入Dropout层并将失活概率设为0.3。优化器方面,采用Adam优化器(Adaptive Moment Estimation,适应性矩估计)。Adam优化器由Kingma和Ba(2015)[18]提出,是目前最常用的算法(Sabour等2017[19];Wang等2018[20])。与其他自适应学习率算法相比,Adam算法收敛速度更快、学习效果更为有效。因为本文的主要目标是预测个股收盘价,因此选取均方误差(Mean Square Error,MSE)作为损失函数来评估模型,MSE的计算由神经网络模型直接输出,为归一化后的数据计算的结果。
其中,是第t日的预测值,为第t日对应的真实值。本文基于Python语言环境,并以Keras作为深度学习框架进行训练及预测。为加快模型训练时间,batch size设置为512。
数据来源及分析
已有的研究一般用引起投资者注意的事件或信息作为投资者关注度间接的代理变量,例如超额收益、异常交易量、换手率、涨跌停板等,但这些指标都是金融资产本身的交易特性和价格行为,并不直接反映投资者对股票市场的心理活动。在现实股票市场中,互联网成为广大股民获取信息最主要的渠道。东方财富网股吧论坛是专门的股票交流平台,因此,本文使用东方财富网股吧论坛中上市公司的帖子评论作为本文的研究数据。数据来源于中国研究数据服务平台(CNRDS)数据库中中国上市公司股吧评论数据库(Stocks Comments of Chinese Listed Companies,GUBA),该数据库是基于股吧论坛中上市公司的帖子评论进行统计研究而建立的专业性财经文本数据库。GUBA采用机器学习方法对每个帖子的正面、负面和中性情感进行判断,并统计当天该上市公司所在股吧的正面、负面和中性帖子总量以及阅读量、评论数。
在本节中,设立“正面率”作为投资者情绪的衡量指标,该指标仅为了验证东方财富网股吧评论数据与股票市场的相关性,考虑到LSTM模型可以自主挖掘数据中的有效信息,在后续模型的训练中并不采用该指标。将国内所有上市公司共计4000多只股票所有交易日每天的正面率计算出来,然后根据正面率的大小将所有上市公司分成五组进行收益率分析,第一组值最小,第五组值最大。若该指标有效,那么第一组的累积收益率最小,第五组的累积收益率最大。“正面率”计算公式为:
表1为1天调仓周期的信息系数分析,该指标具有相对稳定的IC序列,IC分布右偏且不存在肥尾的情况。图1中展示了1天调仓周期的各分组收益率曲线,其中,正面率最大的一组收益率也最大,可以说明该情绪指标在市场中是有效的。同时,随着时间推移各分组收益率曲线也逐渐分化,图形越发分散,表明该指标具有良好的筛选效果。但在该图中可以看到,第一组的收益率曲线在第二组的上方,这是因为该指标仅考虑了正面发帖量。因此本文用相同的方法构建了负面率指标进行收益率分析,得出结论负面率最大的一组收益率最低。由于方法相同,这里不再展示。可以初步得出结论股吧论坛评论数据可以反映投资者情绪和股票收益之间的关系。
表1 1天调仓周期的信息系数分析表
名称 | 值 |
---|---|
IC Mean | 0.015 |
IC Std. | 0.053 |
Risk-Adjusted IC | 0.272 |
t-stat(IC) | 13.950 |
p-value(IC) | 0.000 |
IC Skew | 0.316 |
IC Kurtosis | 1.401 |
3 模型训练
本文选取13个特征对次日收盘价进行预测,13个特征分别为个股当日开盘价、收盘价、最低价、最高价、成交量、成交额、涨跌幅、股吧论坛个股当日贴子总量、正面贴子量、负面贴子量、中性帖子、阅读量、评论数。其中股吧论坛个股当日贴子总量、正面贴子量、负面贴子量、中性帖子量、阅读量、评论数数据来源于中国研究数据服务平台(CNRDS)数据库,其余数据来源于Tushare大数据开放社区。数据所选时间段为2010年—2020年,共计710万余条数据,将其分为三段,分别进行模型训练、模型验证评估、量化策略回测,具体分配如图4。
在模型训练方面,用历史20个交易日的数据信息对未来1天的收盘价进行预测。对每只股票的数据进行依次输入训练模型,避免不同股票数据之间的影响,从而影响模型的预测效果。数据在输入前进行归一化处理,将数据范围变化到[0,1]内,提高模型的性能和训练速度,选取的归一化处理方式为:
其中,是经过归一化处理之后的数据,是原始数据,和分别为各指标变量的最小值和最大值。每只股票的样本数据输入后进行300轮迭代。针对模型预测结果的输出,为了确保纳入模型的数据最终的输出与原始数据保持同一个量纲,最后需要对模型输出的数据进行反归一化的处理。
模型评估
为了更好的评估该模型的效果,加入对照模型。时间序列模型的应用对金融市场的预测研究有极大的贡献,其本身也成为后续金融预测研究的经典对照模型(Kim和 Won,2018) [21] 。ARIMA(p,d,q)的预测思路是选取每只股票的收盘价时间序列,通过ADF检验选取最优差分阶数d获得平稳序列,再根据AIC或者BIC法则选取参数p,q进行序列建模,最后将预测预测值还原。因此,本文选取ARIMA(p,d,q) 模型作为评估LSTM神经网络模型其中一种对照模型。另外设计使用了相同数据、相同结构训练的RNN深度学习模型和使用了不包含情绪数据仅包含行情数据、相同结构训练的LSTM模型。将四个模型分别记为Model_LSTM、Model_RNN、Model_LSTM_No和Model_ARIMA。同时,引入根均方百分比误差(Root Mean Square Percentage Error,RMSPE),RMSPE的计算公式为:
是第t日的预测值,为第t日对应的真实值。将2016-2017年数据输入格训练好的模型进行评估,得到如表2的结果。三个神经网络模型的预测效果要优于线性模型ARIMA,使用情绪数据的LSTM模型要优于不使用情绪数据的LSTM模型和使用情绪数据的RNN模型,使用情绪数据的RNN模型要优于不使用情绪数据的LSTM模型。说明LSTM模型比RNN模型有更好的预测效果,同时该情绪数据可以提升模型的预测效果。
表2 模型评估结果对照表
MSE | RMSPE | |
---|---|---|
Model_LSTM | 0.0062 | 0.0026 |
Model_RNN | 0.0074 | 0.0049 |
Model_LSTM_No | 0.040 | 0.012 |
Model_ARIMA | 0.086 | 0.014 |
图5——图8展示了随机选取的1只股票价格的预测值与真实值的拟合情况,图中实线为真实值的价格曲线,虚线为各模型的预测价格曲线。可以很直观地看出,Model_LSTM模型的价格曲线与真实值的价格曲线拟合效果最好,Model_LSTM_No模型的价格曲线与真实值的价格曲线拟合效果在三个神经网络模型中是最差,Model_ARIMA在四个模型中的拟合效果是最差的。初步可以判断Model_LSTM模型具有较好的预测能力。
量化策略设计
模拟真实的市场环境回测是量化策略中不可或缺的环节,能够为投资提供数据决策依据。本文不仅仅对预测结果进行拟合,同时基于Model_LSTM模型形成完整的量化策略并回测,该策略的核心即为该深度学习模型。该量化策略设计的主要思想是将2018-2020年每只股票的数据依次输入到训练好的Model_LSTM模型中,用历史20个交易日的数据信息对当日收盘价进行预测,并计算所有股票价格当日的涨跌幅。计算公式为:
在开盘时,卖出仓位中所有股票,然后将所有资金分成十等份买入涨幅前十的股票。回测参数设定如表1所示。本策略以Python计算机编程语言为工具、聚宽网为平台,实现交易过程的自动化。
表3 回测参数
参数名称 | 参数值 |
---|---|
基准 | 沪深300指数 |
股票池更新天数 | 每天 |
交易频率 | 每天 |
回测时间 | 2018/01/01——2021/01/01 |
初始资金 | 100万元 |
动态复权 | 真实价格 |
滑点 | 股票价格的2% |
佣金及手续费 | 佣金:万分之三 印花税:千分之三 每笔交易最低扣5元 |
策略回测结果分析
策略回测的对数轴累积收益如图9所示,其中红色线为比较基准沪深300指数,蓝色线为策略的累积收益走势,策略累积收益仅在回测期初的一小段时间内低于基准,其余时间均明显优于基准的表现,相较于作为基准的沪深300指数取得了可观的超额收益。即使在2018年中美贸易摩擦阴云下的震荡下行期,策略的累积收益虽有回撤,但仍优于市场且为正,策略的最大回撤即发生在该区间内。表4为回测结果概览,虽然该策略获得了较高的超额收益,但由于Model_LSTM模型的训练使用了情绪数据,该策略的收益必然与股票市场高度相关,该策略的β也达到了1.025,表明该策略对市场变化非常敏感,在熊市时有可能会存在较高的风险;同样的,从2019年初开始,策略在市场回升行情中也获得了更多的超额收益。
整体而言,该策略拥有高收益和相对较小的风险,在评价策略的风险指标方面,夏普比率为2.322,表明该策略所形成的投资组合效果良好,最大回撤为28.47%,数值略高。主要原因在于,本策略在交易方面的设置相对简单,只有单纯的买入和卖出,没有设置资金管理和风险管理。在加入资金管理和风险控制后,在牺牲部分收益的同时回撤可以得到优化。此外,该量化交易策略为日频交易,每日调仓,交易相对频繁,手续费相对较高,在加入仓位管理后,亦可减少交易频率提高收益。在业绩评价指标方面,如超额收益、索提诺比率、信息比率等均表现优良。回测结果充分表明了该策略整体效果良好。
表4 回测结果
指标 | 值 |
---|---|
策略收益 | 393.21% |
策略年化收益 | 75.68% |
超额收益 | 304.68% |
基准收益 | 21.88% |
阿尔法 | 0.684 |
贝塔 | 1.025 |
夏普比率 | 2.322 |
最大回撤 | 28.47% |
索提诺比率 | 3.573 |
日均超额收益 | 0.21% |
超额收益最大回撤 | 17.72% |
日胜率 | 0.565 |
信息比率 | 3.177 |
策略波动率 | 0.309 |
基准波动率 | 0.216 |
最大回撤区间 | 2018/05/22——2018/10/18 |
图10为该策略参考Fama-French 五因子模型进行的风格分析曲线图,最上方曲线为规模因子(SMB)的值绘制的曲线,代表小市值组合与大市值组合收益率的差,这条曲线始终位于0线的上方,表明该策略在选股时更倾向于小市值的股票。第二条曲线为盈利因子(RMW)曲线, 代表盈利性好的组合与盈利性差的组合收益率的差,该策略在盈利因子上未表现出明显的特征。最下方的两条曲线分别是价值因子(HML)曲线和投资因子(CMA)曲线,分别代表高账面市值比组合与低账面市值比组合收益率的差和保守投资的公司组合与激进投资的公司组合收益率的差,这两条曲线均位于0线下方,可见该策略倾向于投资低账面市值比和激进投资的公司股票。表6为基于Barra风格因子模型对该策略进行的风险因子暴露度分析,图11为该策略风险因子暴露度直方图。可以很直观的看出,市值、杠杆、账面市值比和盈利能力为负,其余六项为正,但成长的值很小。表明该策略在选股时侧重于中小盘,不注重公司基本面的表现,更加侧重于波动率较高、波幅大且换手频繁的公司股票,这样的选股特点也与训练模型选择的情绪数据相符合,也反映出使用股吧评论数据训练的LSTM模型良好的预测能力。
表5 风格因子
风格因子 | 定义 | 代表含义 |
---|---|---|
SMB | 规模因子 | 代表小市值组合与大市值组合收益率的差 |
HML | 价值因子 | 代表高账面市值比组合与低账面市值比组合收益率的差 |
RMW | 盈利因子 | 代表盈利性好的组合与盈利性差的组合的差 |
CMA | 投资因子 | 代表保守投资的公司组合与激进投资的公司组合收益率的差 |
表6 策略风险因子暴露度分析
因子 | 策略风险因子暴露度 | 基准风险因子暴露度 | 风险因子暴露差值 | 具体含义 |
---|---|---|---|---|
非线性市值 | 0.90 | -0.86 | 1.76 | 中盘 |
市值 | -0.58 | 0.76 | -1.34 | 大小盘 |
杠杆 | -1.03 | 0.23 | -1.26 | 公司财务杠杆大小 |
账面市值比 | -1.30 | -0.12 | -1.18 | 股票估值,PB的倒数 |
盈利能力 | -0.99 | 0.04 | -1.03 | 表征公司盈利状况 |
残差波动率 | 0.85 | -0.11 | 0.96 | 不能被贝塔所解释的波动率 |
动量 | 0.98 | 0.14 | 0.84 | 过去一段时间的涨跌幅 |
贝塔 | 0.57 | -0.02 | 0.59 | 表征股票相对于市场的波动敏感度 |
流动性 | 0.72 | 0.13 | 0.59 | 换手率 |
成长 | 0.01 | 0.11 | -0.12 | 公司营收或者盈利的成长性 |
结论及启示
本文结合前沿的神经网络模型和大数据分析技术构建LSTM模型,通过对市场情绪的分析,将市场情绪因素作为特征训练模型,并基于该模型设计股票量化策略,将其应用于国内4000多只股票,得到如下结论:①基于股吧论坛评论数据构建情绪指标进行分层分析,结果表明股吧论坛评论形成的市场情绪与股票市场有较强的相关性,能够影响股票价格;②结合ARIMA以及其他深度学习模型进行对照分析,分析结果显示深度学习模型比ARIMA模型具有更好的预测效果,LSTM模型比RNN模型有更好的预测效果,同时该情绪数据可以提升模型的预测效果;③基于同一LSTM 神经网络结构对4000多只股票进行预测效果评估,证明 LSTM 神经网络在股价预测上具有优秀的预测能力和泛化能力;④将基于股吧论坛评论数据训练的LSTM神经网络模型构建量化策略并模拟真实的市场环境进行回测,证明该策略能够获得可观的超额收益,在实际应用中更具指导意义。鉴于LSTM神经网络强大的自我学习能力,LSTM神经网络在金融预测的发展中具有广阔前景。
本文在金融预测方向利用深度学习前沿技术进行积极探索,为将深度学习技术广泛应用于金融预测以及更符合在实践中的应用提供经验。鉴于神经网络的高度可调节性,未来本文在技术方面可以有多种改进方向,例如通过交叉验证等方法寻找最优参数优化模型,提高模型预测精度;在文本数据挖掘方面,基于大数据技术挖掘更多与股价相关的信息,作为特征添加到数据中训练模型(高扬等,2022)[22]。将深度学习技术应用于股价预测只是量化策略中的一环,本文仅在量化策略中的选股上应用了神经网络模型,后续还可以在其他方面上继续探索:在策略优化方面,将深度学习模型应用到策略的风险管理和资金管理的模块中,利用神经网络的优势更有效地进行风险识别和风险测度,在量化交易策略中进行止盈止损;随着我国量化规模的增加,将深度学习方法应用于投资领域,帮助金融机构快速识别投资机会,推动我国金融市场智能化投资的发展和市场有效性进程。
发表回复