基于马尔可夫链的股票价格波动预测
2021-11-19刘致谦
□文/刘致谦
(西安财经大学统计学院 陕西·西安)
[提要]本文首先对股票价格历史数据进行预处理和分析;其次对预处理后的数据进行马氏性检验,结果显示数据符合马氏性,然后建立马尔可夫链模型;最后通过计算概率转移矩阵得出概率转移向量,进而达到对股票价格波动率区间的预测。预测结果显示:在正常情况下,用此模型预测的股票价格波动率区间与实际数据在短期内预测结果保持一致,但随着时间的推移预测结果稍有偏差。此外,马尔可夫链模型适用于短期的股票价格波动率预测,并且对以往数据依赖性极大。
一、前言
股票作为金融市场最重要的金融工具之一,预测其价格波动及用何种方法进行预测一直都是金融领域研究的焦点问题之一。股票市场是一个数据非常庞大且非常复杂的非线性系统,对其进行预测十分困难,部分学者认为股市预测不可行。但是,仍然有许多国内外学者和投资者采用不同的预测方法得到较好的预测结果。
多年来,相关研究者提出了各种预测方法,早期大部分学者主要采用回归分析法、自回归模型、移动平均自回归模型、差分自回归移动平均模型、VAR(向量自回归模型)等方法进行股票价格预测。但由于股票价格波动的剧烈性、非线性以及数据噪声的影响,导致这些方法无法准确地描述和刻画股票价格变化的内在规律。因此,为了改进传统线性模型的缺陷,更好地进行股票价格预测,又衍生出ARCH模型、GARCH模型、模糊神经网络、BP神经网络、随机森林、支持向量机和极限学习机等方法,预测精度有了较大程度的提高。
SnehaSoni首次提出将分类回归树、线性判别分析和二次判别分析三种有监督机器学习算法结合起来对印度股市数据进行分类,分别以二叉树、线性曲面和二次曲面的形式给出股市数据的简单解释。SaeedAl-Salkhadi首次将多项式分类器应用于股票价格预测。QinglanYe提出了一种改进小波神经网络的方法。马健等利用改进型误差函数的复值BP模型来对股票的价格进行预测。张贵生等提出了一种基于近邻互信息特征选择的SVM-GARCH预测模型。邓晶针对股票预测问题,通过对不同股票进行股价涨跌的实验发现,在多个纯技术指标下,参数优化后的随机森林对股票的预测模型相对更具有可靠性。包振山主要针对LSTM模型的输出模块进行了改进,最终获取下一刻股票的涨跌信号。
总之,研究股票价格的方法各种各样,总结出来有三类:基于统计学方法的股票价格波动预测模型、机器学习预测模型和基于随机过程的预测模型。以统计原理为基础的预测模型主要有回归分析法、自回归模型、移动平均自回归模型、差分自回归移动平均模型、向量自回归模型、GARCH模型、Logit模型、Bayes方法、支持向量机等,许多学者基于该类模型发表了文章。此外,机器学习预测模型也被学者们广泛研究,而机器学习预测模型主要以神经网络预测模型为代表。在基于随机过程的预测模型中,马尔可夫预测引起学者们的重视。
二、马尔可夫链模型的理论基础
三、股票价格预测
本文以招商银行股票价格为例,通过马尔可夫链模型对在网易财经网上搜集到的数据进行分析,预测股票价格走势。此次研究收集从2020年9月2日~2020年11月5日的41个时间序列数据,进行每日收盘价格波动状态预测,单位:元/股。
(一)基于马尔可夫链的股票每日收盘价格波动状态预测
1、对价格时间序列数据分类。对股票每日收盘价格增长率进行有序聚类法分析处理,可将41组数据分为[-10%,-2%)、[-2%,-1%)、[-1%,0%)、[0%,1%)、[1%,2%)、[2%,10%)6个状态空间,用S1、S2、“S3、S4、S5、S6表示这6种状态,如表1所示。(表1)
表1 2020年9月2日~2020年11月5日股票价格指数一览表
2、建立股票每日收盘价格波动状态转移矩阵。根据表1得出价格增长率状态转移情况,如表2所示。(表2)
表2 价格增长率状态转移情况表
由表2可得,状态转移频数矩阵fij和状态转移概率矩阵pij,如下所示:
3、马氏性检验。由状态转移概率矩阵pij得到边际转移概率值,分别为:p.1=1/13,p.2=145/182,p.3=5297/2730,p.4=881/455,p.5=291/910,p.6=2539/2730。(表3)
表3 统计量计算表
表3 统计量计算表
?
给定显著性水平α=0.05,查χ2分布表可得分位点χ2α((m-1)2)=χ2(α25)=37.652。因为χ2=52.284>χ2(α25),所以招商银行股票价格时间序列满足马氏性。
2020年11月5日,招商银行股票价格增长率为-0.33%处于区间[-1%,0%),所以属于状态S3,初始状态向量定义为π(0)=(0 0 1 0 0 0)。则一步概率转移向量为π(1)=π(0)P=(0 0 0.4 0.2 0.1 0.3),由此可以预测出2020年11月6日的价格增长率处于状态S3,预测概率为40%,即对应的区间为[-1%,0%),实际增长率为-0.72%,处于区间[-1%,0%),预测比较准确。下面,可由两步转移概率向量π(2)=π(0)P2=(0.015 0.074 0.249 0.337 0.098 0.227)预测出2020年11月9日(7日、8日为周末市场没有交易)的价格增长率所处的状态为S4,则对应的状态区间为[0%,1%),实际增长率为1.29%,虽然没有预测在准确的区间内,但是实际增长率很靠近预测区间,差距不大,有参考价值。同理,可根据π(3)、π(4)、π(5)、π(6)预测出对应的状态区间如表4所示。(表4、表5)
表4 预测状态一览表
表5 实际状态一览表
(二)股票价格波动预测结果分析。招商银行股票价格波动预测结果表明,对短期的股票价格波动率预测是相当准确的,随着预测日的增加预测结果与实际稍有差别,预测的结果与真实结果虽然不在同一个状态,但是都是呈增长状态,例如根据两步转移概率向量预测,招商银行2020年11月9日的股票增长率属于状态S4,也就是意味着增长区间为[0%,1%),而实际增长率为1.29%,属于区间[1%,2%),预测状态与状态不符,但是1.29%很接近1%,所以预测的结果有一定的参考意义。但是在预测日超过5天的情况下,预测基本无效。股票价格波动是非线性的,金融环境的微小改变就可能导致股票价格的大范围波动。预测不准确的原因主要有两个方面:一方面是国家颁布的货币政策和财政政策;另一方面是由突发事件造成的,例如受新冠肺炎疫情影响,各航空公司股票价格连续大跌。
四、结论
利用马尔可夫链建模分析股票价格走势情况,结果表明用马尔可夫链预测受历史数据影响较大,对短期股票价格变化更适合运用马尔可夫链来预测,准确率也相对较高,随着时间的增加预测结果虽然有时候不太准确,但是与真实状态偏离不太多,也有参考价值。然而,股票的价格存在太多不确定因素,受国家政策、自然灾害影响,还有投机者情绪影响等。由此可知,马尔科夫链模型适合于稳定的、波动较小的、短期的指标值序列的预测,并且还能得到相对较好的结果;而对于受环境影响和变化范围比较大的、长期性的指标值序列,如果用马尔科夫链模型来预测其状态变化,那么结果就有点差强人意了。