基于多视角股票特征的股票预测研究

2021-01-30 14:00李金轩杜军平
南京大学学报(自然科学版) 2021年1期
关键词:股票价格股票神经网络

李金轩,杜军平,薛 哲

(智能通信软件与多媒体北京市重点实验室,北京邮电大学计算机学院,北京,100876)

人们对一个事物的全面认识往往需要从多个视角获取,通过多个视角的观察可以形成事物的多视角数据,而每个视角的数据又包含多个维度的特征,最终形成多视角特征数据.在很多实际场景中,多视角特征数据的应用十分广泛.例如,机械工业生产中不仅要考虑生产时的物理数据,也要考虑市场行情等数据;而对于股票预测,在长期的投资过程中,人们对股票分析有一些经验,形成了一些如Ma(平均移动线指数)、Macd(异同平均移动线指数)、Kdj(随机指标)、Boll(布林线指标)等数据指标,很多股票软件将这些数据指标可视化,人们根据可视化指标可以更好地指导股票投资.因此,基于多个视角的特征数据可实现基于多视角特征数据的股票预测研究,而且多视角特征数据可以较全面地表示股票数据的相关信息,从而通过多视角特征数据进行股票预测的深入研究.

股票预测研究是金融大数据领域的一个重要研究方向.股票预测的精度受到如市场信心、法规政策等外界因素[1]以及股票历史数据等内在因素的影响,同时股票预测可为股民的股票投资活动提供建议,促进经济的发展和社会的进步.因此,股票预测问题有很强的研究与现实意义[2].

目前关于股票预测的研究还存在以下问题:数据相关特征的一次性整体描述,目前股票预测的研究是将股票数据的所有特征整体作为输入变量,接着用机器学习方法来进行训练得到相应的模型,并得到最终预测结果,股票数据的特征没有被分层或分类看待,不便于理解,也无法满足股民的有时只想关注某个或某些特征的需求;目前股票预测的研究大多是利用股票的特征数据训练模型后直接给出预测的结果,无法给出数据的各特征重要度以及主要特征的参考意见,也就无法指导股民投资应关注的主要方向.

针对以上问题,本文提出一种基于多视角特征数据的股票预测方法,通过多个独立的长短期记忆力网络(Long and Short Term Memory network,LSTM)计算各个视角的股票数据,并通过集成学习自适应不同视角对预测结果的贡献,最终得到多视角股票数据的预测结果.该方法可以计算不同视角对最终预测结果的贡献程度,提高了最终的预测精度.

1 相关工作

近些年来,国内外学者使用各种各样的方法进行股票的预测研究,也提出了多种股票预测模型.目前,国外针对股票预测的研究,从数据内容来看主要分两个方面:一是根据不同时间股票价格数据或者与其相关的指标数据建立预测模型,再进行拟合预测的工作;二是根据股票舆情数据并通过自然语言处理与挖掘的方法进行建模并实现预测分析,舆情数据包括经济新闻、财经新闻、股票评论、社交媒体等数据.从采用的预测方法或技术来看:一是通过神经网络、支持向量机(Support Vector Machine,SVM)等单一机器学习方法或多种机器学习方法混合模型;二是使用自然语言处理和文本数据挖掘进行处理.具体研究情况如下.

Seker et al[3]关注土耳其的主流媒体发布的经济新闻数据和股票市场收盘价之间的关系.首先通过多种特征提取方法提取股票市场的价格演变数据与经济新闻的文本数据特征,并通过SVM算法、K 近邻(K-Nearest Neighbors,KNN)算法与决策树三种分类器进行分类,最后通过各个分类器进行投票得到最终结果.Schumaker and Chen[4]利用KNN、决策树和SVM 等方法对股票的价格数据与相关行业部门分类的财经新闻数据进行研究以进行股票价格的预测,使用该系统进行投资的回报率高于股票交易专家.Boyacioglu and Avci[5]利用基于模糊推理系统的自适应网络进行股票市场收益预测研究,输入六个经济变量和三个指数,通过基于模糊推理系统的自适应网络进行相应的建模与预测.Park and Shin[6]认为股票价格的变化受多种因素的影响,如市场政策、汇率、银行存贷款利率、全球市场股价以及国际经济发展情况,这些因素之间存在关联性,可通过半监督学习构建基于这些因素的结点和它们之间的相似性的边缘网络,并对全球经济指数和200 家上市公司的2007 年1 月至2008 年8 月的股票价格进行了预测.Guresen et al[7]评估了动态和静态的神经网络模型在股票市场预测中的有效性,通过使用纳斯达克证券交易所的股票数据来比较多层感知器、动态人工神经网络和结合广义自回归条件异方差的混合神经网络这三个模型的预测结果.

国内相关的股票预测的研究主要是把开盘价、收盘价等通过其产生的数据整体作为研究对象,再利用KNN、神经网络、SVM 和它们的优化方法来进行股票预测研究.王波和程福云[8]通过KNN 算法,基于前n个交易日的股票历史收盘价预测n+1 日的股票价格.黄秋萍等[9]通过BP 神经网络与小波神经网络,利用开盘价、最高价、收盘价等股票数据,建立对应的股票价格预测模型,实现根据前一交易日的股票数据预测当天交易日的收盘价.任治国[10]、孙秋韵[11]、杜晓[12]分别对灰色模型、遗传算法与BP 神经网络进行改进,同样通过股票历史数据训练模型来预测当日的股票收盘价.文献[13-15]利用LSTM 网络对股票的时序信息进行建模,获取股票变化的潜在规律,然后对股票价格的变化进行预测.

2 基于多视角特征的预测模型的提出

本节主要介绍基于多视角特征的股票预测模型:2.1 给出模型所需的定义,2.2 描述如何构建多视角股票数据弱学习器,2.3 描述多视角集成预测模型的构建.

2.1 基本定义人们往往通过多个视角来客观全面地认识事物,这些视角包含的信息相互补充.不同视角包含的信息可以通过不同特征来描述,从而形成针对事物的多视角特征数据(Multi-View Feature Data,MVFD).多视角特征数据就是描述事物的多个视角的多个特征.Vi=表示第i个视角的特征表示第i个视角中的第j个特征,则多视角特征数据可以表示为X=(V1,V2,…,Vn).

为了研究影响不同的视角对股票预测结果的重要度,将每个视角的特征数据本身作为一个整体输入学习器中,再对得到的多个输出结果进行集成学习,从而得到最终结果.通过对训练样本集进行分类采样得到N个基于视角分类的样本采样机;对这N个基于视角分类的样本集分别使用学习器进行训练,得到N个弱学习器;再通过结合策略将N个弱学习器进行整合,得到最终的强学习器.结合策略的选择往往根据解决的问题不同而有区别,解决回归预测问题时结合策略应选择平均法,而解决分类预测问题时结合策略应使用投票法.基于多视角特征数据集成学习的MVLSTM-IL 模型结果如图1 所示.

图1 MVLSTM-IL 模型结构图Fig.1 The diagram of MVLSTM-IL model

2.2 多视角股票数据弱学习器的构建由于股票数据是一种连续、非线性的数据,股民投资时往往会参考过去一段时间这只股票的涨跌情况,所以弱学习器的选择应该尽量覆盖一段时间内的股票数据,并通过过往的数据来预测股票下一段的数据.因此弱学习器的构建使用LSTM 网络.对于第i个视角的特征数据集,初始化第一层LSTM 网络的隐含层,该层输入为t时刻前的一个视角的股票特征,通过一次线性变换与ReLU函数激活,将输入的股票特征数据投影为维度为d的隐含层,计算方法如式(1)所示:

其中,W0与b0是待学习的线性变换的参数.式(1)得到的结果即为初始化后的隐含层,之后每次迭代的LSTM 弱学习器模型输入包括两部分,分别是Vi和hi,hi表示t-1 时刻的LSTM 网络的隐含层,Vi表示t时刻该视角下的股票数据.将二者连接组合输入到t时刻的LSTM 网络中,经过预设的次数迭代后,得到最终的隐含层ht.具体计算方法如式(2)所示:

由于LSTM 网络每次迭代后的结果都会影响最终的模型输出,故将每次迭代生成的中间结果进行合并计算损失,选择均方差作为损失函数.损失函数的形式如式(3)所示:

其中,hi表示LSTM 网络每次迭代产生的中间结果,t表示迭代次数,n表示每次投入训练的batch大小.通过训练完成后的多视角股票数据弱学习器得到不同视角下的弱学习器生成的结果,组合成一个n×d维矩阵用于接下来的集成预测,n表示参与预测过程的视角数量,d表示每个视角下结果特征的维度.

2.3 多视角集成预测模型的构建 经过以上多个弱学习器模型后,本文算法已经针对各个视角给出了该视角下的股票指数预测.传统方法中将多个学习器的结果进行集成时,对于分类问题主要通过投票法,即将多个学习器给出的分类结果进行投票,选择票数最高的分类作为最终的分类结果;而对于回归问题,往往采用加权平均法,将多个学习器得到的结果进行加权平均得到最终的结果.由于股票的多视角数据的特性,直接进行加权平均得到的预测结果并不合适.本研究在多视角股票数据弱学习器得到的结果的基础上使用一个深度神经网络模型拟合多视角股票特征与股票价格之间的映射关系,最终得到具体的股票数据变化预测.第一层为输入层,将多视角股票数据弱学习器模型生成的矩阵输入网络;最后一层为线性输出层,将深度神经网络的结果输出成股票价格预测值;中间为隐含层.隐含层节点若数量过多会使网络的复杂度增高,甚至出现过拟合,而若节点数过少则会使结果难以收敛.本文采用经验公式得到隐含层的节点数,如式(4)所示:

其中,m为输入层节点数,n为输出层节点数,α为[1,10 ]之间的常数.

对于集成预测模型,输入样本为四个指标的预测值xi,对应的隐含层和输出层分别为zi和yi;Vij是输入层和隐含层之间的权重,Vjk是隐含层和输出层之间的权重,θi和γi分别为隐含层和输出层的阈值.本文使用的激励函数如式(5)所示,输出层结果如式(6)所示:

本文的股票预测过程如算法1 所示.

3 实验与结果

本文使用的数据集为美国股票新闻数据集,该数据集涵盖了自2008 年6 月8 日到2016 年7 月1 日的道琼斯工业指数股票数据,包含600 只股票,记录每只股票的日期、开盘价、收盘价、当日最高与最低价,平均每只股票记录天数为2613 d,故最终的数据集包括1567800 条数据.经过清洗与筛选,本文将该数据集分为训练集和测试集,分别包含600000 条和300000 条数据.根据股票领域一些专业指数的定义与计算方法,将原始数据信息进行计算,得到四种股票指数,分别为Ma,Macd,Kdj,Boll 并以此作为四种股票视角.

实验环境为运行于Ubuntu 下的tensorflow 深度学习框架,配置NVIDIA CUDA 9.0,cuDNN 7.5 深度学习库加速GPU 计算;Python 版本为Python 3.5.

现有的预测算法的评测标准主要为计算预测结果与真实数据之间的误差和与均方误差,在通常标准上,本文额外给出不同指数的预测值与真实值的误差.

3.1 主要参数设置在进行实验之前,将数据集包含的开盘价、收盘价、当日最高与最低价以及基于以上数据计算得到Ma,Macd,Kdj,Boll 指数进行归一化,将不同范围的数据映射到(0,1)之间.Ma,Macd,Kdj,Boll 指数分别包括ma10,ma20,ma60;macd.dea,macd.diff,macd.macd;kdj.k,kdj.d,kdj.j;boll.lower,boll.mid,boll.upper 各三种特征.因此各视角的输入维度为1×3 维.

为了最后合并计算损失,在训练过程中将弱学习器中隐含层节点的数目设置为3.对于集成预测模型,经过实验验证,输入层神经元数量设置为12,隐含层层数设置为1,隐含层节点数量设置为6.

3.2 实验和结果在训练弱学习器时采用Adam 作为优化器,学习率设置为0.01,权重衰减设置为0.001,随机从数据集中选择了60 只股票进行训练,30 只进行测试.测试结果如图2 所示.各个视角的弱学习器模型在四种指标下的预测结果如图3 所示.可以看出,MVLSTM-IL 算法在Ma,Macd,Boll 三种指标的预测结果与原始数据比较接近,并且通过MVLSTM-IL 算法,使用多视角股票特征数据得到的七日内股价预测与真实数据的平均误差和直接使用股价这一单一视角或者使用BP 神经网络作为弱学习器的预测模型相比,得到的平均误差更小,更接近真实的股价.几种算法在股价的误差和、均方误差以及各指标平均误差的对比结果如表1 所示.

图2 三种方法下股票的七日预测平均值与真实值的误差Fig.2 The error between the seven days forecast average value and the real value of stocks by three methods

图3 三种方法下股票的四种指标预测平均值与真实值的误差Fig.3 The error between the predicted average value and the real value of four indexes of stock by three methods

表1 不同算法在美国股票新闻数据集下的评价指标Table 1 Evaluation indexes of different algorithms in American stock news dataset

4 总结

本文在现有研究的基础上设计了基于多视角股票特征的股票价格预测模型.针对传统方法中数据相关特征的一次性整体描述无法分清多个视角对预测结果的贡献的问题,将视角的概念引入到股票数据的特征表示中,通过对多个股票指标建立基于LSTM 网络的弱学习模型得到预测结果并对股票的多视角特征进行集成学习,得到最终的股票价格预测结果.基于美国股票新闻数据集,自2008 年6 月8 日到2016 年7 月1 日的道琼斯工业指数股票数据进行实验,本文模型得到的最终股票预测结果与真实的股票价格间的七日平均误差和与均方误差比直接对一体化的历史股价进行预测与使用多视角历史数据直接预测股票价格得到的七日平均误差和与均方误差都要小,证明本研究提出的模型可以更好地预测股价的波动,还发现Ma,Macd,Kdj,Boll 四种股票价格评价指标中,Ma,Macd,Kdj 指标对于最终股价预测准确度的影响比Boll 更大.

猜你喜欢
股票价格股票神经网络
基于GARCH族模型的重庆啤酒股票价格波动研究
神经网络抑制无线通信干扰探究
本周创出今年以来新高的股票
本周创出今年以来新高的股票
本周连续上涨3天以上的股票
近期连续涨、跌3天以上的股票
基于神经网络的拉矫机控制模型建立
论股票价格准确性的社会效益
复数神经网络在基于WiFi的室内LBS应用
我国股票价格指数与“克强指数”的关系研究