1. 引言
中国金融证券市场经过多年的发展已经逐渐成熟,吸引了各行各业的广泛投资者参与 [1] 。在这个市场中,每支股票的价格不仅受到其内在投资价值的影响,还受到整体大盘指数的波动影响 [2] 。投资者在买卖决策时常常面临时机选择的难题,同时也面临着被套和踏空等风险,因此对股票的风险价值进行深入分析显得尤为重要。
自股票市场诞生以来,人们一直致力于研究股票价格预测的方法 [3] ,并涌现出许多预测模型。然而,传统方法在一定程度上无法满足对准确性的高要求,因此近年来人们纷纷将机器学习算法引入股票预测领域,希望能够获得更为准确的预测结果。机器学习算法的优势在于能够最大程度地模拟对象的具体特征,尤其在处理大规模复杂数据和进行预测等方面具备更大的优势 [4] [5] [6] 。
为解决股票价格和风险预测的问题,本研究采用了卷积神经网络(CNN)和长短期记忆网络(LSTM)构建了一个新颖的股票价格预测模型。同时,还采用了信息熵与方差相结合的方法,建立了一个全面的风险度量模型,为投资决策提供了重要的参考依据。通过利用CNN和LSTM等先进算法,可以更加准确地预测股票价格的走势,并通过综合考量信息熵和方差来量化风险,使得投资者能够更加全面地评估投资风险。这一综合性的研究框架为股票市场的理解和投资决策提供了新的思路和方法。
2. 研究现状
在当前的研究现状中,针对股票市场的价格趋势预测,研究者们广泛采用了上证A股50和沪深300指数的历史交易数据作为研究对象,并利用了ARIMA模型和LSTM模型等方法进行预测分析。这些研究旨在提高股票市场预测的准确性和可靠性,以指导投资决策。
文献 [4] 基于上证A股50的历史交易数据,采用ARIMA模型和LSTM模型进行股价趋势预测。实证研究表明,基于LSTM模型的深度神经网络具有较好的预测精度,但未对过拟合问题进行充分解决。
文献 [5] 选取了沪深300指数的日交易数据、技术指标和估值指标作为样本数据,同样采用了LSTM模型进行未来一天收盘指数的预测建模,结果表明LSTM多特征输入模型相对较好,但在股价预测和涨跌预测中均存在过拟合问题。
文献 [6] 在LSTM模型基础上进行了结构改进和参数优化,使预测准确率提升10%以上,且优于SVM和随机森林模型。然而,该研究仅使用了有限的特征数据进行预测,存在提高预测准确率的潜在空间。
综合而言,这些研究在股票市场预测方面取得了一定的进展,然而仍普遍存在一些共同的不足之处,其中包括模型过拟合问题以及对特征数据的不充分利用。解决过拟合问题、深入探索更加丰富的特征数据,以进一步提高股票市场预测的准确性和稳定性,仍然是未来研究亟需深入探讨的重要方向。
3. 研究设计
3.1. 研究假设
1) 假设以股票的每日收盘价来衡量股票的每日价格情况。
2) 假设股票的价格不受到其内在投资价格的影响。
3) 假设金融证券市场未来的行情由现在的行情决定。
4) 假设无人为操作股市走向,所有数据为随机数据。
3.2. 数据来源
本文研究所使用的数据,晋控煤业股票数据。选取晋控煤业作为研究对象,收集了其自2006年1月1日至2022年5月17日的完整股票数据。数据内容包括每个交易日的开盘价、收盘价、最高价、最低价、成交量、成交额等信息。
3.3. 数据预处理
使用tushare库可以轻松获取晋控煤业从2006年至今的交易数据。针对每个交易日,可以获取开盘价、最高价、最低价等九个指标。接下来,将这些指标按照每个连续的365个交易日构建一个batchsize,其中该batchsize后的30个交易日的收盘价作为当前batchsize的目标值。因此,可以构建3679个这样的batchsize。
3.4. 研究流程
本研究的流程如图1所示。首先按照3.3节的方法对数据进行预处理,然后使用处理后的数据构建CNN-LSTM模型。基于该模型得到2021年交易日的价格预测,使用八分位数法分析出股票价格出现局部性顶部和底部的时间区间。此外基于该模型预测出2022年5月18日起3未来30个交易日的股票价格,基于信息熵-方差的风险度量模型得到股票风险值。
4. 实证分析
4.1. 基于CNN-LSTM的股票价格预测模型
4.1.1. 模型准备
卷积神经网络(Convolutional Neural Networks, CNN)是一种前馈神经网络结构,通过卷积操作实现对输入数据的特征提取。CNN具有表征学习能力,能够按照其深度结构对输入信息进行平移不变分类,因此也被称为“平移不变人工神经网络”。其局部感受特性使得CNN能够分别处理每个时间段的数据,并将长输入序列转换为由高级特征组成的更短序列,从而实现对序列空间特征的编码。
长短时记忆网络(Long Short Term Memory Network, LSTM)属于循环神经网络(Recurrent Neural Network, RNN)的一种。在处理较长序列数据时,传统RNN由于自身的记忆限制,无法充分结合之前的信息来赋予当前数据正确的权重,导致梯度消失问题。而LSTM网络通过引入门控机制,如遗忘门、输入门和输出门等,能够有效地保存和利用长序列中的重要信息,解决了RNN存在的长期依赖问题。
多层感知机(MLP, Multilayer Perceptron)是一种常见的人工神经网络结构,除了输入输出层外,中间可以包含多个隐层,通过多层的非线性变换实现对复杂数据的学习和表示。
基于CNN-LSTM的股票价格预测系统如图2所示,该系统主要包括五部分,分别是输入层、基于二维卷积神经网络的局部空间特征子模型、基于长短时记忆网络的时间特征提取子模型、用于融合全部特征的全连接层和输出层。
![](//html.hanspub.org/file/141-2310406x8_hanspub.png?20240522082207984)
Figure 2. Flowchart of stock price prediction model based on CNN-LSTM
图2. 基于CNN-LSTM的股票价格预测模型流程图
4.1.2. 模型建立
在局部特征提取阶段,对长度为n的股票数据序列做数据清洗,将其作为整个模型的输入,输入数据具体表示为
,式中
代表股票的最高价、最低价、开盘价和收益量等。本研究采用两层CNN结构来提取历史数据中的空间特征,以实现局部感知并提高特征质量。在这两层CNN中,数据通过卷积核进行特征抽取。CNN具有权值共享机制,有助于减少网络参数的复杂性,并提高整个模型的健壮性。此外,最大池化作为池化层的选择有利于特征降维,以避免网络训练过程中的过拟合现象。
随后,进行时间特征提取。为了提高特征提取的质量并降低整个网络的复杂度,本研究在时间特征提取子模型中引入了三层LSTM网络。LSTM网络包括遗忘门、输入门、输出门和细胞结构,各自担负着关键的作用。遗忘门通过选择性过滤掉特征不明显的信息,有助于提高网络的存储记忆能力。具体的计算公式如下所示:
其中,
是遗忘门的输出;
和
代表遗忘门的输入;
是偏置参数,
是线性关系的系数。
输入门决定当前细胞的输入需要加入多少新信息,以确定细胞中哪些信息需要更新,哪些信息被用作备用更新内容。具体的表达方式如下:
上述公式通过sigmoid函数决定网络需要更新的数据,并通过tanh函数创建候选值
,以去除网络中暂时不需要的信息,有效提高网络存储数据的能力。
输出门决定模型的输出,首先是通过sigmoid层得到初始输出,然后通过tanh函数将
的值缩放到[−1, 1],再sigmoid得到的输出逐对相乘,从而得到模型的输出,表达公式如下:
进一步,利用八分位数求局部性顶部或底部股票价格时间区间,本研究参考全年股票价格的整体趋势,运用改进后的八分位数法分析预测股票价格出现局部性顶部和底部的时间区间。
4.1.3. 模型结果分析
通过使用Python软件,绘制出基于CNN-LSTM的股票价格预测模型对2021年交易日的预测结果图,总计包含了242条数据。具体图示详见图3。全部预测结果见附件一。部分预测结果见表1。
在对2021年的股票价格进行全年的观察后,发现了一些显著的分布特征。前四个月的股票价格变化相对平缓,并于在3月股票价格跌至低谷。接下来的八个月,股票价格发生了较大波动,其中9月份股票价格上涨至全年的最高点。根据全年股票价格的变动特点,找到全年股票价格的中位数,依照此中位数将全年的价格分为两个时间段,在这两段时间内,将股票价格的最高点和最低点分别与股票价格的中位数相对应的四等分点进行对比,并在这些四等分点的股票价格处作水平参考线。图4仅展示部分参考线。
![](//html.hanspub.org/file/141-2310406x23_hanspub.png?20240522082207984)
Figure 3. Prediction performance of stock prices on trading days in 2021
图3. 2021年交易日股票价格预测效果
![](Images/Table_Tmp.jpg)
Table 1. Translation of the real and predicted values of prices for the year 2021 trading days
表1. 2021年交易日价格的真实值与预测值
![](//html.hanspub.org/file/141-2310406x24_hanspub.png?20240522082207984)
Figure 4. Scatter plot of stock price predictions on trading days in 2021
图4. 2021年交易日股票价格预测散点图
由图4可知,在2021年1月4日股票开盘后一段时间股票价格相对较低,预测在2021年1月26日至2021年2月22日股票价格出现局部性底部。之后7个月股票价格呈显著的上升趋势,预测在2021年9月8日至2021年9月24日内股票价格出现局部性顶部。2021年最后两个月股票价格先下降后上升,预测局部性顶部出现在2021年12月8日到2021年12月17日之间。
4.2. 基于信息熵与方差的风险度量模型
4.2.1. 模型准备
由于证券市场受经济政策和资金流动等不确定因素的影响,投资者的实际收益往往与决策时期望的收益不一致,即投资存在风险.在投资学中,投资风险可被刻画为未来收益的不确定性及其发生的概率。人们常常把风险度量 [7] 与方差联系在一起,因为方差是统计学中最常用的描述随机变量特性的指标,而风险中的损失和收益变化就是随机变量。
信息熵:设离散型随机变量X,
,
,
,则该离散概率事件X的信息熵 [8] 为
,其中,
,是一个取决于度量单位的常数,且规定
。设连续性随机变量X,概率密度为
,则该连续概率事件X的信息熵为
。
4.2.2. 模型建立
为了建立持有期股票价格预测模型,首先需要利用之前开发的股票价格预测模型,以便预测出未来30个交易日的每日股票价格
。
在预测股票价格的基础上,需要计算出相应的区间数。根据我国证券管理规定,股票在单日内的涨跌幅度通常被限制在正负10%之内。因此,本研究将股票实际收益区间划分为[−10%, 10%],并将其均分为q个收益子区间。
为了研究子区间数对熵风险度量 [9] 值的影响,q可取值如下
,其中q为子区间数,k定义为子区间数目指数。
接下来,计算股票的收益率与子区间,设
为股票的日收盘价,d为数据采集天数,则日收益率可以表示为:
本研究将区间[−10%, 10%]均分为
个子区间,取步长为
,子区间表示为:
随后计算熵风险值,假设
落在第i个子区间内的次数为
,记频数
,则定义股票的熵风险值如下式:
此外,还需要计算股票的方差。方差可通过下式计算:
其中,E(R)为随机变量R的均值。
最后计算风险值,风险值表示为:
其中
表示事件R的风险,
为风险事件R在
状态的信息熵 [10] ,
表示风险事件R的标准差,
为常数,是决策者的风险偏好系数。
4.2.3. 模型结果
首先通过Python编程求解,预测出从2022年5月18日起股票未来30个交易日的价格,预测结果请参见图5。
![](//html.hanspub.org/file/141-2310406x52_hanspub.png?20240522082207984)
Figure 5. Stock price chart for 30 trading days of Jinkou coal industry starting from May 18, 2022
图5. 2022年5月18日起股票晋控煤业30个交易日的价格图
其次根据预测出的股票价格测算出30个交易日的日收益率,结果见表2。
![](Images/Table_Tmp.jpg)
Table 2. Daily returns for 30 trading days starting from May 18, 2022
表2. 2022年5月18日起30个交易日日收益率表
接着根据日收益率和子区间划分数的不同,分别取区间数5,10,15计算股票持有30个交易日的信息熵风险值,结果见表3。
![](Images/Table_Tmp.jpg)
Table 3. Entropy risk values for different intervals
表3. 不同区间数的熵风险值表
然后计算30个交易日的标准差为0.155,通过
,令
,得到最终的风险值,结果见表4。
![](Images/Table_Tmp.jpg)
Table 4. Risk values for different intervals
表4. 不同区间数的风险值表
再对比晋控煤业(研究对象)与陕西煤业根据2022年3月29日~5月17日30个交易日价格计算出其对应风险值,结果见表5。
![](Images/Table_Tmp.jpg)
Table 5. Risk values for different interval divisions
表5. 不同区间数划分的风险值表
由表可知,若投资人于3月29日同时购买晋控煤业与陕西煤业并持有一个月,则持有晋控煤业的风险要高于陕西煤业。
下面给出晋控煤业与陕西煤业3月29日至5月17日30个交易日的对应股票价格图,见图6。
![](//html.hanspub.org/file/141-2310406x55_hanspub.png?20240522082207984)
Figure 6. Comparative chart of the prices of Jinkou coal industry and Shaanxi coal industry over 30 trading days
图6. 晋控煤业与陕西煤业30个交易日价格对比图
由图6可知,晋控煤业的波动性要比陕西煤业高,且晋控煤业的股票价格变化趋势向下,陕西煤业的股票价格变化趋势向上,无论在哪种区间划分下,晋控煤业的风险值都高于陕西煤业,因此可以证明,模型关于风险值测算的正确性。
5. 结论与建议
本文针对金融证券市场的股票价格和风险预测问题,综合运用深度学习、风险度量等方法,构建了CNN-LSTM股票价格预测模型和信息熵–方差风险度量模型,并通过实证分析验证了模型的有效性。研究结果表明,CNN-LSTM模型能够较好地预测股票价格走势,并判断出局部极值的出现时间;信息熵–方差模型能够合理地度量股票投资风险,为投资决策提供支持。
基于上述研究结果,本文提出以下建议:
首先,投资者在购买股票时,可以参考本文构建的股票价格预测模型,预测未来一段时间内股票价格的走势,把握买卖时机,避免在局部高点买入或局部低点卖出。
其次,在评估股票投资风险时,投资者可以综合考虑本文提出的信息熵和方差两个指标,全面衡量股票收益的不确定性和波动性,选择风险值较低的股票,控制投资风险。
最后,通过案例分析可以看出,在风险值较高的情况下,股票价格出现下跌趋势的可能性更大。因此,投资者在风险值较高时应谨慎投资,或者及时止损,规避风险。