结合公司财务报表数据的股票指数预测方法

2022-01-05 02:32王基厚林培光周佳倩李庆涛蹇木伟
计算机应用 2021年12期
关键词:历史数据降维财务报表

王基厚,林培光,周佳倩,李庆涛,张 燕,蹇木伟

(山东财经大学计算机科学与技术学院,济南 250014)

(∗通信作者电子邮箱llpwgh@163.com)

0 引言

股票市场是国家经济的重要组成部分,股票指数作为反映股市变化的重要标志,也反映了国家经济发展变化的情况,同时股票指数的变化还影响着投资者的经济利益。然而受到政治、军事、宏观经济等多种因素的影响,使得股票指数充满复杂性,也使准确预测股票指数成为一个困难的问题。许多学者[1-4]通过增加数据特征来应对这种复杂性,提高预测准确率。

有效市场假说的半强势形式表明,资产价格完全反映了可公开获得的信息[5]。基于这个前提,只要有新的信息进入市场,价格就会发生变化。在市场中,上市公司以定期报告和临时报告等形式,向投资者和社会公众公开披露公司及与公司相关的信息。研究表明,财务披露是预测股票指数变化的一种吸引人的且具有潜在财务回报的手段[6]。因此,本文结合公司披露信息中的财务报表进行股票指数预测研究。

本文主要工作是提出了一种结合公司披露的财务报表数据进行股票指数预测的方法。该方法在使用股票指数历史数据进行预测的同时还结合了公司财务报表数据,并通过降维方法处理公司财务报表数据形成的高维矩阵,在减少数据噪声影响的同时,保留对原始数据表达最优的数据特征。该方法通过增加数据特征来应对股票指数波动的复杂性,提高预测的准确性,在沪深300和上证50数据集上的实验结果表明,与其他预测方法相比,本文提出的结合公司财务报表进行股票指数预测的方法具有较好的预测结果和较高的准确度。

1 相关工作

股票市场具有较高的复杂性,影响股票市场的波动存在着多方面的因素,仅仅利用历史数据有局限性,不能完全模拟出复杂的市场变化。国内外学者利用金融文本挖掘、金融情绪分析等方法增加数据特征来应对这种复杂性。如文献[1]中提出了一种名为StockAssistant 的股票评论分析方法,该方法综合考虑股价走势、评论内容、分析师表现等多个因素,对股票评论的可靠性进行建模,并通过真实股票数据的交易模拟清楚地验证了该方法对股票评论可靠性建模的有效性;文献[2]中通过提取和探索股票的内在属性来增强股票的趋势预测,并证明了从集体投资行为中提取股票属性在股票预测任务中的有效性;文献[3]中提出了一种基于情感分析的金融市场趋势预测方法,该模型通过对股民评价进行情感分析来提取情感向量和计算情感权重,随后利用股民情感数据和股市历史数据进行预测研究,并通过实验证明,相比一些传统模型,该方法在较小的样本集上依旧有很好的预测效果;文献[4]中开发了一种新颖的模糊双支持向量机,以合并从新闻文章中提取隐藏的主题模型和情感信息,从而预测股价趋势。

数据特征的增多,会带来大量噪声,使预测精准度下降,因此需要降维方法来进行特征提取,以减少噪声。如文献[7]中使用小波变换来处理高度不规则的金融时间序列以进行数据去噪,该方法可以同时分析金融时间序列的频率和时间分量;文献[8-9]中进行金融时间序列预测研究时,均使用主成分分析(Principal Component Analysis,PCA)消除冗余信息,在保留大部分原始数据信息的同时,提高了数据质量和预测响应速度。

近年来,随着深度学习技术在图像识别[10-11]、自然语言理解[12-13]、语音识别[14-15]等领域的成功应用,越来越多的研究者在金融时间序列预测领域使用深度学习技术。如文献[16]中采用多层感知器回归(MultiLayer Perceptron Regression,MLPR)构建预测模型,并通过实验验证了所提出的模型在预测准确性上优于比较模型;文献[17]中提出了一种基于支持向量回归(Support Vector Regression,SVR)的混合算法,该方法在聚类大量财务时间序列数据方面具有巨大潜力,能有效提高预测股价和财务指标的准确性。

在金融时间序列预测领域中,长短期记忆(Long Short-Term Memory,LSTM)网络是应用最多的机器学习模型之一。如文献[18]中结合注意力(Attention)机制将LSTM 用于研究互联网金融市场动态预测问题,并通过实验验证了所提模型在该问题上的有效性与稳健性;文献[19-20]中均使用基于变分模态分解(Variational Mode Decomposition,VMD)和LSTM的金融数据预测方法来进行研究,并通过实验验证了该模型的优越性;文献[21]中建立了基于LSTM 深度神经网络的高精度金融市场时间序列短期预测模型,并验证了LSTM 深度神经网络具有较高的预测精度,可以有效地预测股市时间序列。

本文提出的结合公司财务报表的股票指数预测方法,在考虑股票指数历史数据的前提下,融入公司财务报表信息的各项财务指标进行股票指数预测。新加入的财务指标增加了数据特征,但是含有大量噪声,因此需要进行数据降维,在消除噪声的同时,提取出有利于预测的信息。另外,由于股票指数历史数据和公司财务报表数据的时间间隔不同,本文使用了双通道的LSTM 模型,将两种数据从不同的通道输入模型。使用该方法在沪深300 和上证50 数据集上的预测实验表明,结合公司财务报表进行股票指数预测的结果较好,精度提高。

2 融入财报信息的指数预测方法

本文提出的结合公司财务报表的股票指数预测方法如图1 所示。该方法首先对股票指数历史数据和公司财务报表数据进行预处理,主要是对处理公司财务报表数据时生成的高维矩阵进行降维,然后用双通道的LSTM 对归一化后的数据进行预测研究。本章主要介绍公司财务报表信息中的财务指标选取、多种降维方法和所使用的机器学习方法。

图1 结合公司财务报表的股票指数预测方法Fig.1 Stock index forecasting method based on corporate financial statement data

2.1 财务报表信息

比率分析法是分析公司财务报表最基本的工具,它通过财务报表的有关指标的比率计算来分析公司的经营活动以及公司目前和历史的状况。该方法主要运用四类比率进行分析,这四类财务比率分别反映了公司的偿债能力、运营能力、盈利能力和成长能力。

本文方法运用这四类财务比率中的10 种财务比率进行股票指数预测研究,分别是反映偿债能力的产权比率、资产负债率,反映运营能力的总资产周转率,反映盈利能力的净资产收益率、总资产净利率、销售净利率,以及反映成长能力的营业收入增长率、净利润增长率、净资产增长率、总资产增长率。在使用这10 种财务比率时,需要将该数据处理成如式(1)所示的形式:

其中,ai.j.k表示截止第i天,公司j的第k种比率。本文使用第T天之前3个季度的公司财务报表数据来预测第T天的指数,这三个季度的数据分别保存在三个矩阵A中。

2.2 数据降维方法和归一化

将股票指数历史信息与财务报表信息相结合进行股票指数预测研究,在处理财务报表数据时会形成如式(1)所示的高维矩阵,虽然能为股票指数预测提供更丰富的预测信息,但是过高的维数会带来大量噪声,并且会占用大量的存储空间,使模型运行效率低下,所以需要对高维矩阵进行降维处理,提取出对原始数据表达最优的数据集。

本文分别使用了8 种降维方式来进行实验对比,分别是等距映射(Isomap)、快速独立成分分析(Fast Independent Component Analysis,FastICA)、局部线性嵌入(Locally Linear Embedding,LLE)、截断奇异值分解(Truncated Singular Value Decomposition,TSVD)、t-Distributed 随机邻域嵌入(tdistributed Stochastic Neighbor Embedding,t-SNE)、核主成分分析(Kernel Principal Component Analysis,KPCA)、多维缩放(Multiple Dimensional Scaling,MDS)和主成分分析(PCA)。

其中PCA 是最常用的无监督降维算法,该方法通过寻找最大方差的方向来进行降维,即通过对特征的协方差矩阵进行分解来寻找方差最大维度,将多个特征变量转化为少数几个主成分,这些主成分之间彼此正交,能反映特征变量的大部分信息,从而达到降维目的。KPCA 是对PCA 的一种推广。该方法通过非线性变换将原始特征变量映射到高维特征空间,然后在高维特征空间利用PCA 进行特征提取。而TSVD则对特征变量的原始数据直接进行奇异值分解,找到其中指定的最大的K个奇异值,从而生成一个指定维度的分解矩阵,以达到降维目的。FastICA 是一种线性盲源分离算法,它通过寻找最大独立的方向来进行降维,降维后各个成分是独立的,有利于发现一些隐藏因素。与PCA 保留数据的最大可分性不同,MDS 降维方法更加关注高维数据内部的特征。使用MDS 降维后的数据,样本之间的欧氏距离在低维空间得以保持。与MDS 类似的降维方法是Isomap,这是一种流形学习方法,它与MDS 的不同之处在于计算样本距离时使用了测地距离。同为流形学习降维方法的是LLE,使用该方法进行降维,可以保持邻域内样本之间的线性关系,即样本之间的映射坐标能够在低维空间中得以保持。另一种流形学习降维方法t-SNE则尽量保证降维前后样本相互之间的分布概率不变。

降维后的数据表示为如式(2)所示的形式:

其中,bi,j表示降维后第i天第j维特征的值。本文使用第T天之前3个季度的公司财务报表数据来预测第T天的指数,这三个季度的数据降维后分别保存在三个矩阵B中。从这三个矩阵B中分别取出第T行数据表示为c1、c2和c3,依式(3)所示组成矩阵cT,其中下标1、2、3 分别表示第几个季度。要使用cT对第T天的指数进行预测,需要对cT进行归一化以消除变量间的量纲关系。归一化计算方式如式(4)所示:

其中:yi表示归一化后的数据,xi表示归一化前的数据,xmin表示数据集中的最小值,xmax表示数据集中最大值。

2.3 双通道的长短期记忆网络

本文方法使用双通道的LSTM(如图2 所示)进行股票指数预测。双通道的LSTM 模型拥有两个输入层,可以将时间跨度不同的两组数据输入到模型中,每个输入层分别与一层LSTM网络层相连接,在LSTM层之后加入Dropout层来防止过拟合,然后连接共享网络层将两种信息融合。共享网络层之后再连接一层LSTM网络层,并在LSTM层之后也加入Dropout层来防止过拟合。最后连接一个Dense输出层以输出结果。

图2 双通道的LSTMFig.2 Dual-channel LSTM

LSTM[22]是一种时间循环神经网络,是目前在金融时间序列预测领域中应用最多的机器学习模型之一。LSTM 的优越之处在于,它特有的“三门”结构,使它不必像常规循环神经网络(Rerrent Neural Network,RNN)那样在实际使用过程中面临梯度消失的问题,也使它能更好地处理长期依赖问题。LSTM 的“三门”结构包括遗忘门(ft决定丢弃信息)、输入门(it决定更新信息)和输出门(ot决定输出信息),具体情况如图3所示。如图3 所示,t时刻的输入xt与上一时刻的输出ht-1先经过遗忘门的sigmoid单元来决定LSTM 单元状态需要丢弃哪些信息,然后经过输入门的sigmoid 单元来决定LSTM 单元状态需要更新哪些信息,并通过一个tanh 层得到新的候选单元信息。旧的单元状态Ct-1根据上述信息来更新为新的单元状态Ct。最后xt与ht-1经过输出门的sigmoid 单元来决定LSTM 单元输出状态Ct的值ht。这一过程的计算公式如式(5)~(10)所示:

图3 LSTM的内部结构Fig.3 Internal structure of LSTM

其中:σ表示sigmoid 激活函数;Wf、Wi、WC、Wo是权重矩阵;bf、bi、bC、bo是相应的偏差矩阵。

3 实验与结果

3.1 度量标准

本文使用均方根误差(Root Mean Squared Error,RMSE)、平均绝对误差(Mean Absolute Error,MAE)和平均绝对百分比误差(Mean Absolute Percentage Error,MAPE)对本文所提方法的性能进行定量评价。式(11)~(13)是这三种标准的计算方式。

3.2 数据集

本文使用的数据集为上证50指数和沪深300指数的股票指数历史数据以及两者成分股中的上市公司的财务报表数据。其中,上证50 指数的股票指数历史数据选用的日期为2015 年1 月5 日至2019 年12 月31 日(共1 219 个交易日);沪深300 指数的股票指数历史数据选用的日期为2017 年1 月3日至2019 年12 月31 日(共731 个交易日)。本文使用的股票指数历史数据包括开盘价、最高价、最低价、收盘价、成交量、成交金额和涨跌幅。在将数据整理成监督学习形式后,使用前80%个样本的数据作为训练集,其余20%个样本的数据作为测试集。数据来源为锐思金融数据库(www.resset.com)。

3.3 降维方法对比实验

本节旨在研究在处理公司财务报表数据过程中,不同降维方法对预测结果的影响,找出使预测结果最优的降维方法。实验中使用的降维方法分别是FastICA、Isomap、KPCA、LLE、MDS、PCA、t-SNE 和TSVD。实验结果如表1 所示:在上证50数据集(SSE 50)上,使用PCA 降维方法的RMSE 值最小,使用TSVD 降维方法的MAE 值和MAPE 值最小;在沪深300数据集(CSI 300)上,使用TSVD 降维方法的误差最小,预测最精准。综合来看,TSVD 降维方法的效果最好,在后续的对比实验当中,将使用以TSVD方法降维的LSTM-TSVD模型进行对比。

表1 不同降维方法的预测效果对比Tab.1 Comparison of prediction effects of different dimension reduction methods

3.4 对比实验和结果

本文实验中使用第T天之前5 天的股票指数历史数据和第T天之前3 个季度的公司财务报表数据来预测第T天的指数收盘价。实验中batch_size 为128,epoch 为300。为验证本文方法的可行性与高效性,使用LSTM、CNN-LSTM、LSTMAttention和VMD-LSTM方法进行对比实验。其中,CNN-LSTM是由CNN 与LSTM 组成的混合网络,LSTM-Attention 是在LSTM 网络中加入注意力机制的预测模型,VMD-LSTM 是一种以VMD方法处理数据并结合LSTM进行预测的方法。为了更直观地对比各个模型在不同数据集上的实验结果,本文选择了部分实验预测结果展示在图4 和图5 中,从中可以看出,LSTM-TSVD模型的拟合效果优于其他方法。

图4 上证50指数测试集上的部分预测结果Fig.4 Partial prediction results on SSE 50 Index test set

图5 沪深300指数测试集上的部分预测结果Fig.5 Partial prediction results on CSI 300 Index test set

各模型在不同数据集上的评价指标如表2 所示。由表2可以看出,LSTM-TSVD 方法的所有评价指标均小于其他方法,说明与表2中其他预测方法相比,LSTM-TSVD方法的预测效果最好。

表2 各模型预测效果对比Tab.2 Comparison of prediction effects of different models

4 结语

本文提出的结合公司财务报表的股票指数预测方法,在考虑股票指数历史数据的同时,融入了公司财务报表信息的财务指标进行股票指数预测。新加入的数据增加了数据的特征数量,提供了更多的信息以应对复杂的股票指数变化。在处理公司财务报表数据时,诸多降维方法中,使用TSVD 降维方法的预测效果最好。另外,本文使用了双通道的LSTM 模型,将时间间隔不同的股票指数历史数据和公司财务报表数据从不同的通道输入模型。在沪深300和上证50数据集上的实验结果表明,结合公司财务报表进行股票指数预测的结果较好,精度较高。今后的工作将将尝试将更多的股票信息数据融合到一起,在现有工作的基础上加入如股民情感信息、新闻信息等。

猜你喜欢
历史数据降维财务报表
财务会计怎样提高财务报表编制的准确性
基于数据降维与聚类的车联网数据分析应用
企业财务报表审计风险及防范措施研究
基于设备PF性能曲线和设备历史数据实现CBM的一个应用模型探讨
降维打击
从数据分析的角度浅谈供水企业漏损诊断
内部控制审计与财务报表审计的整合思路
基于Hadoop技术实现银行历史数据线上化研究
用好细节材料 提高课堂实效
几种降维算法的研究及应用