本文引入了误差校正的思想,先利用ARIMA-GARCH模型对日收盘价进行初步预测,但是预测精度不高,通过对误差序列进行的白噪声检验,发现误差序列存在还有未被ARIMA-GARCH模型提取的信息。再利用变量间的相关关系,寻找与误差序列相关的变量。随后通过主成分分析对变量进行降维,以筛选出合适的解释变量。将解释变量与误差序列进行回归建模,对误差进行预测。最后将预测的误差值与ARIMA-GARCH模型的预测值相加,得到最终的预测值。通过将最终的预测值与ARIMA-GARCH模型的预测值相比较,观察到预测精度有了很大的提高,进而验证了引入误差校正的方法是合理的。 This paper introduces the idea of error correction. Firstly, ARIMA-GARCH model is used to predict the daily closing price, but the prediction accuracy is not high. Through the white noise test of the error sequence, it is found that there is information in the error sequence that has not been extracted by ARIMA-GARCH model. Then the correlation between variables is used to find the variables related to the error sequence. Then, the dimensionality of the variables is reduced by principal component analysis to screen out the appropriate explanatory variables. Regression modeling is carried out between explanatory variables and error series to predict the error. Finally, the predicted error value is added to the predicted value of ARIMA-GARCH model to obtain the final predicted value. By comparing the final prediction value with the prediction value of ARIMA-GARCH model, it is observed that the prediction accuracy has been greatly improved, and then it is verified that the method of introducing error correction is reasonable.
本文引入了误差校正的思想,先利用ARIMA-GARCH模型对日收盘价进行初步预测,但是预测精度不高,通过对误差序列进行的白噪声检验,发现误差序列存在还有未被ARIMA-GARCH模型提取的信息。再利用变量间的相关关系,寻找与误差序列相关的变量。随后通过主成分分析对变量进行降维,以筛选出合适的解释变量。将解释变量与误差序列进行回归建模,对误差进行预测。最后将预测的误差值与ARIMA-GARCH模型的预测值相加,得到最终的预测值。通过将最终的预测值与ARIMA-GARCH模型的预测值相比较,观察到预测精度有了很大的提高,进而验证了引入误差校正的方法是合理的。
股价预测,ARIMA模型,GARCH模型,误差校正
Lu Yin
School of Statistics and Mathematics, Yunnan University of Finance and Economics, Kunming Yunnan
Received: Dec. 26th, 2021; accepted: Jan. 16th, 2022; published: Jan. 28th, 2022
This paper introduces the idea of error correction. Firstly, ARIMA-GARCH model is used to predict the daily closing price, but the prediction accuracy is not high. Through the white noise test of the error sequence, it is found that there is information in the error sequence that has not been extracted by ARIMA-GARCH model. Then the correlation between variables is used to find the variables related to the error sequence. Then, the dimensionality of the variables is reduced by principal component analysis to screen out the appropriate explanatory variables. Regression modeling is carried out between explanatory variables and error series to predict the error. Finally, the predicted error value is added to the predicted value of ARIMA-GARCH model to obtain the final predicted value. By comparing the final prediction value with the prediction value of ARIMA-GARCH model, it is observed that the prediction accuracy has been greatly improved, and then it is verified that the method of introducing error correction is reasonable.
Keywords:Stock Price Forecast, ARIMA Model, GARCH Model, Error Correction
Copyright © 2022 by author(s) and beplay安卓登录
This work is licensed under the Creative Commons Attribution International License (CC BY 4.0).
http://creativecommons.org/licenses/by/4.0/
股票市场在金融领域占据了越来越重要的地位。股票市场的建立和发展对促进经济改革和经济发展发挥了重要作用。因此,股票发行一直是许多学者和投资者研究的焦点,准确预测股票价格一直是研究人员感兴趣的方向。但是,股票市场的价格经常大起大落,呈现复杂的非线性和随机性,影响股票价格的因素很多,每个因素对股票价格的影响程度都不一样,这使得准确预测股票变得很困难。因此,寻找有效的预测方法是摆脱股票预测困境的关键。
股票市场的价格预测研究不仅有重要的学术意义,而且有重要的实际意义。股票价格预测可以更好地理解和把握股票市场运行规律、股票价格波动规律及其对实体经济的影响机制和影响程度,更好地把握货币政策的传导机制。在实践中,在股票价格剧烈波动的情况下选择和实施有效的货币政策,有助于减少和消除股票市场的不稳定因素,从而进一步提高各国宏观经济的运行质量。
目前国内外对于股票价格预测的方法不尽相同,从最初的单一预测模型,如惠晓峰等人利用来自美国联邦储备局提供的统计数据(www.economagic.com)中的1994~1997年的日汇率数据建立GARCH模型。由于GARCH模型更适合于收益率的时间序列,因此作者对人民币/美元的日汇率序列进行了相应的处理,并将其转化为一个收益率序列。之后对收益性序列绘制了自相关图和偏自相关图,得出收益性序列是存在相关性的,接着又进行了ARCH检验,得出存在着明显的异方差性 [
由于模型复杂度的限制和信息冗余的影响,单个预测模型很难考虑所有的影响因素,因此预测精度无法保证。在这种情况下,人们提出了组合预测方法,即对同一对象采用两种或两种以上的预测方法进行预测。例如,张超首先将数据分为样本内数据和样本外数据。利用样本内数据进行建模,利用样本外数据检验模型的预测能力 [
形如如下结构的模型称为自回归移动平均模型,简记为ARMA(p, q):
{ x t = ϕ 0 + ϕ 1 x t − 1 + ⋯ + ϕ p x t − p + ε t − θ 1 ε t − 1 − ⋯ − θ q ε t − q ϕ p ≠ 0 , θ q ≠ 0 E ( ε t ) = 0 , V a r ( ε t ) = σ ε 2 , E ( ε t ε s ) = 0 , s ≠ t E ( x s ε t ) = 0 , ∀ s < t
当 ϕ 0 = 0 时,上述模型可以写为
{ x t = ϕ 1 x t − 1 + ⋯ + ϕ p x t − p + ε t − θ 1 ε t − 1 − ⋯ − θ q ε t − q ϕ p ≠ 0 , θ q ≠ 0 E ( ε t ) = 0 , V a r ( ε t ) = σ ε 2 , E ( ε t ε s ) = 0 , s ≠ t E ( x s ε t ) = 0 , ∀ s < t
该模型称为中心化ARMA(p, q)模型。
当前序列值乘以一个延迟算子时,此时就变为前一个序列值,即
x t − 1 = B x t x t − 2 = B 2 x t ⋮ x t − p = B p x t
为简化上述结构,引入延迟算子,故ARMA(p, q)模型简记为:
Φ ( B ) x t = Θ ( B ) ε t
其中 Φ ( B ) = 1 − ϕ 1 B − ⋯ − ϕ p B p 为p阶自回归系数多项式, Θ ( B ) = 1 − θ 1 B − ⋯ − θ q B q 为q阶移动平均系数多项式。
根据Cramer分解定理,方差齐性非平稳序列都可以分解为:
x t = ∑ j = 0 d β j t j + Ψ ( B ) a t
展开一个d阶差分,有
∇ d x t = ( 1 − B ) d x t = ∑ i = 0 d ( − 1 ) i C d i x t − i
进一步
x t = ∑ i = 1 d ( − 1 ) i + 1 C d i x t − i + ∇ d x t
假设在已知历史数据的情况下,零均值和纯随机残差序列具有异方差性 V a r ( ε t ) = h t ,在正态分布的假设下,有 ε t / h t ~ N ( 0 , 1 ) ,那么异方差等价于残差平方的均值 E ( ε t 2 ) = h t 。具有
h t = E ( ε t 2 ) = ω + ∑ j = 1 q λ j ε t − j 2
这种结构的模型称为q阶自回归条件异方差模型,简记为ARCH(q)。
而ARCH模型只适用于异方差函数的短期自相关过程。在实际应用中,残差序列的异方差函数并非都是短期自相关性的。因此,根据ARCH模型,通过加入考虑异方差函数的p阶自相关,建立了GARCH模型。GARCH模型能有效地拟合具有长期记忆的异方差函数。GARCH(p, q)模型的结构如下:
{ x t = f ( t , x t − 1 , x t − 2 , ⋯ ) + ε t ε t = h t e t h t = ω + ∑ i = 1 p η i h t − i + ∑ j = 1 q λ j ε t − j 2
其中 f ( t , x t − 1 , x t − 2 , ⋯ ) 为 { x t } 的确定性信息拟合模型, e t ~ i . i . d N ( 0 , σ 2 ) 。
对于非中心化ARMA(p, q)模型,有
x t = μ + Θ q ( B ) Φ p ( B ) ε t
其中 ε t ~ W N ( 0 , σ ε 2 ) , Θ q ( B ) = 1 − θ 1 B − ⋯ − θ q B q , Φ ( B ) = 1 − ϕ 1 B − ⋯ − ϕ p B p 。
参数 μ 采用矩估计的方法来估计,即用样本均值估计总体均值。
μ ^ = x ¯ = ∑ i = 1 n x i n
估计完参数 μ 后,估计参数 ϕ 1 , ⋯ , ϕ p , θ 1 , ⋯ , θ q , σ ε 2 ,用三种方法估计 p + q + 1 个未知参数:矩估计法,极大似然估计法和最小二乘估计法。
1) 矩估计法
采用样本自相关系数估计总体自相关系数的方法,即
{ ρ 1 ( ϕ 1 , ⋯ , ϕ p , θ 1 , ⋯ , θ q ) = ρ ^ 1 ⋮ ρ p + q ( ϕ 1 , ⋯ , ϕ p , θ 1 , ⋯ , θ q ) = ρ ^ p + q
通过求解以上方程组,可以获得参数值 ϕ 1 , ⋯ , ϕ p , θ 1 , ⋯ , θ q 的矩估计 ϕ ^ 1 , ⋯ , ϕ ^ p , θ ^ 1 , ⋯ , θ ^ q 。再用样本方差估计总体方差 σ x 2 = ∑ i = 1 n ( x i − x ¯ ) 2 n 。在ARMA(p, q)模型两边同时求方差,得到 σ ε 2 = 1 + ϕ 1 2 + ⋯ + ϕ p 2 1 + θ 1 2 + ⋯ + θ q 2 σ x 2 ,把估计值代入其中得到 σ ε 2 的估计值。
2) 极大似然估计法
假设序列服从多元正态分布
x t = ϕ 1 x t − 1 + ⋯ + ϕ p x t − p + ε t − θ 1 ε t − 1 − ⋯ − θ q ε t − q
记
x ˜ = ( x 1 , ⋯ , x n )
β ˜ = ( ϕ 1 , ⋯ , ϕ p , θ 1 , ⋯ , θ q ) ′
∑ n E ( x ˜ ′ x ˜ ) = Ω σ ε 2
其中
Ω = ( ∑ i = 0 ∞ G i 2 ⋯ ∑ i = 0 ∞ G i G i + n − 1 ⋮ ⋱ ⋮ ∑ i = 0 ∞ G i G i + n − 1 ⋯ ∑ i = 0 ∞ G i 2 )
那么 x ˜ 的似然函数为:
L ( β ˜ ; x ˜ ) = p ( x 1 , x 2 , ⋯ , x n ; β ˜ ) = ( 2 Π ) − n 2 ( σ ε 2 ) − n 2 | Ω | − 1 2 exp { − x ˜ ′ Ω − 1 x ˜ 2 σ ε 2 }
对数似然函数为:
L ( β ˜ ; x ˜ ) = − n 2 ln ( 2 Π ) − n 2 ln ( σ ε 2 ) − 1 2 ln | Ω | − 1 2 σ ε 2 | x ˜ ′ Ω − 1 x ˜ |
对未知参数求偏导数,得到似然方程组
{ ∂ ∂ σ ε 2 l ( β ˜ ; x ˜ ) = − n 2 σ ε 2 + S ( β ˜ ) 2 σ ε 4 = 0 ∂ ∂ β ˜ l ( β ˜ ; x ˜ ) = − 1 2 ∂ ln | Ω | ∂ β ˜ − 1 σ ε 2 ∂ S ( β ˜ ) 2 ∂ β ˜ = 0
其中 S ( β ˜ ) = x ˜ ′ Ω − 1 x ˜ 。
求解似然方程组就可得到未知参数的极大似然估计值。
1) 模型的显著性检验
如果一个序列的信息提取是充分的,那么拟合该序列的模型是显著的。也就是说,在一个好的拟合模型中,拟合残差项不再包含任何相关信息,残差序列是一个纯随机序列。所以接下来对残差序列进行白噪声检验。
原假设 H 0 : ρ 1 = ρ 2 = ⋯ = ρ m = 0 , ∀ m ≥ 1
备择假设 H 1 :至少存在某个 ρ k ≠ 0 , ∀ m ≥ 1 , k ≤ m
检验统计量: L B = n ( n + 2 ) ∑ k = 1 m ( ρ ^ k 2 n − k ) ~ χ 2 ( m ) , ∀ m > 0
如果零假设被拒绝,则表明残差序列中仍然存在未提取的信息,拟合模型不显著。
2) 参数的显著性检验
原假设 H 0 : β j = 0 , 1 ≤ ∀ j ≤ m
备择假设 H 1 : β j ≠ 0 , 1 ≤ ∀ j ≤ m
E ( β ^ ) = E [ ( X ′ X ) − 1 X ′ y ˜ ] = ( X ′ X ) − 1 X ′ X β ˜ = β ˜
V a r ( β ^ ) = V a r [ ( X ′ X ) − 1 X ′ y ˜ ] = ( X ′ X ) − 1 X ′ X ( X ′ X ) − 1 σ ε 2 = ( X ′ X ) − 1 σ ε 2
对于线性拟合模型,记 β ^ 为 β ˜ 的最小二乘估计,有
Ω = ( X ′ X ) − 1 = ( a 11 ⋯ a 1 m ⋮ ⋱ ⋮ a m 1 ⋯ a m m )
在正态分布假定下,第j个未知参数的最小二乘估计值 β ^ j 服从正态分布:
β ^ j ~ N ( 0 , a j j σ ε 2 ) , 1 ≤ j ≤ m (1)
由于 σ ε 2 不可观测,故用最小残差平方和估计 σ ε 2 :
σ ^ ε 2 = Q ( β ˜ ) n − m
根据正态分布的性质,有
Q ( β ˜ ) σ ε 2 ~ χ 2 ( n − m ) (2)
由式(1)和式(2)可以构造出检验统计量t:
t = n − m β ^ j a j j Q ( β ˜ ) ~ t ( n − m )
当 | t | ≥ t 1 − α ( n − m ) 时,拒绝原假设,则认为该参数显著。
本文中采用的是绿色拇指工业公司2018年6月18日至2020年10月21日的日收盘价格,其中2018年6月18日至2020年7月27日共计531个数据为样本内建模数据,2020年7月28日至2020年10月21日共计61个数据为样本外数据进行预测,所有的数据均来源于 https://www.datafountain.cn/datasets/5410。
序列 | 样本量 | 均值 | 方差 | 最大值 | 最小值 | 偏度 | 峰度 |
---|---|---|---|---|---|---|---|
close | 531 | 10.4746 | 8.8114 | 23.16 | 4.079 | 0.8361 | 1.1609 |
表1. 序列的基本统计特征
从表1可以看出,序列的偏度为0.8361,大于0,说明序列是右偏的;峰度为1.1609,小于3,表明该序列具有细尾特征。
通过观察日收盘价序列的时序图,该序列具有明显的递增趋势,所以它是非平稳序列。由于该数据是股票数据,为了能直观感受到收益率的变化,为了使数据更平稳,不改变数据间的相关关系,同时削弱数据的异方差和共线性,本文对数据进行预处理,采取对数收益率的方式。我们将日收益率定义为日收盘价的对数的一阶差分:
y t = ln ( x t ) − ln ( x t − 1 )
从时序图可以看出,日收益率始终在零值附近波动,没有明显的趋势和周期,因此可以初步认为是一个平稳序列。自相关图1显示出除了延迟3阶自相关系数在2倍标准差范围之外,其他阶数的自相关系数在2倍标准差范围之内,显示出很强的短期自相关性。但是衰减到零的速度很慢,可以判断该序列具有拖尾的特征。同时偏自相关图也显示了拖尾的性质。
通过对收益率序列进行纯随机性检验,发现延迟6阶的Q统计量的P值为0.0001689小于显著性水平 α = 0 .05 ,延迟12阶的Q统计量的P值为0.001266小于 α ,因此,可以拒绝纯随机性的原假设,并对该序列进行统计分析。
图1. 自相关图
当我们拿到一个观察值序列之后,一个完整的分析应该关注水平和波动两方面。首先提取序列的水平信息,然后分析残差序列的波动信息。所以我们首先对每日收益率序列进行ARIMA建模,对残差序列进行GARCH建模。通过用ARIMA模型和GARCH模型结合的ARIMA-GARCH模型进行预测。由于预测值与真实值之间存在误差,所以利用主成分分析剔除变量间的冗余信息,寻找适合回归模型的自变量,对误差序列进行回归拟合。利用该回归模型进行误差序列的预测,最后将预测值对ARIMA-GARCH模型的预测值进行校正。
如图2所示,本文建模步骤划分为四个流程:① 将原始数据序列转换为收益率数据序列,针对收益率序列建立ARIMA模型;② 对ARIMA模型的残差序列建立GARCH模型;③ 利用ARIMA-GARCH模型进行预测,得到预测值 y ^ ;④ 利用实际值与预测值之间的误差序列拟合回归模型并对误差序列进行预测,得到预测值 ε ^ ;⑤ 将误差序列的预测值对ARIMA-GARCH模型得预测值校正,得到最终的预测值 y ^ ′ 。
通过自相关图和偏自相关图分析,建立了ARIMA(1, 1, 1)模型。图3显示了建立的ARIMA模型的残差检验结果。延迟6阶的P值均大于0.05,没有充分的理由拒绝原假设。因此,残差序列是纯随机的,表明拟合模型ARIMA(1, 1, 1)显著有效。参数的显著性检验中P值均小于0.05,因此,该参数通过了显著性检验。
由于建立的模型和参数均通过了显著性检验,故所拟合模型可以用于进一步的预测。拟合的ARIMA(1, 1, 1)模型:
x t = − 0.5117 x t − 1 + ε t + 0.7406 ε t − 1 , ε t ~ N ( 0 , 0.002213 )
图2. 流程图
图3. ARIMA模型的显著性检验图
通过观察ARIMA(1, 1, 1)模型的残差序列时序图(如图4),发现残差序列的波动在大部分时期是平稳的,但在某些时期波动持续偏大,某些时期波动持续偏小,呈现出集群效应,有理由怀疑序列的方差是非齐性的。因此对残差序列进行ARCH检验,检验结果表明残差序列具有显著的方差异质性,故对残差序列进行了GARCH(1, 1)模型拟合。
图4. 残差时序图
GARCH(1, 1)模型拟合的结果表明模型和参数都通过了显著性检验。通过将水平模型和波动模型相结合,得到拟合的ARIMA-GARCH模型:
{ x t = − 0.5117 x t − 1 + ε t + 0.7406 ε t − 1 + ν t , ε t ~ N ( 0 , 0.002213 ) ν t = h t e t h t = 0.6640 h t − 1 + 0.2066 ν t − 1 2
采用ARIMA-GARCH模型进行初步预测,预测结果 y ^ 见下表2。
日期 | 实际值 | 预测值( y ^ ) | 误差/% |
---|---|---|---|
2020/7/28 | 13.28 | 14.09207 | −6.11500095 |
2020/7/29 | 13.635 | 13.94496 | −2.27325859 |
2020/7/30 | 13.455 | 14.44043 | −7.32389200 |
2020/7/31 | 13.413 | 14.05194 | −4.76355940 |
2020/8/3 | 13.927 | 13.94450 | −0.12567487 |
2020/8/4 | 13.88 | 14.08516 | −1.47810007 |
2020/8/5 | 13.84 | 13.51243 | 2.36681414 |
2020/8/6 | 14.44 | 13.39707 | 7.22253479 |
2020/8/7 | 14.35 | 13.34368 | 7.01269712 |
2020/8/10 | 14.99 | 13.28570 | 11.36956049 |
2020/8/11 | 14.47 | 13.28375 | 8.19797348 |
2020/8/12 | 14.91 | 13.26919 | 11.00473582 |
2020/8/13 | 15.45 | 13.21299 | 14.47902174 |
2020/8/14 | 16.01 | 13.34118 | 16.66970602 |
2020/8/17 | 15.84 | 13.19656 | 16.68835485 |
2020/8/18 | 15.1 | 13.16294 | 12.82823706 |
2020/8/19 | 14.66 | 13.24223 | 9.67103038 |
2020/8/20 | 14.3 | 13.24481 | 7.37892418 |
2020/8/21 | 14.008 | 13.23708 | 5.50339099 |
2020/8/24 | 14.6 | 13.27349 | 9.08568656 |
2020/8/25 | 14.45 | 13.29719 | 7.97790768 |
2020/8/26 | 14.191 | 13.28262 | 6.40112505 |
2020/8/27 | 14.64 | 13.36046 | 8.74000425 |
2020/8/28 | 15.25 | 13.40531 | 12.09629869 |
2020/8/31 | 15.25 | 13.37560 | 12.29114761 |
2020/9/1 | 14.819 | 13.22457 | 10.75938074 |
2020/9/2 | 14.04 | 13.17579 | 6.15534852 |
2020/9/3 | 13.7 | 13.09785 | 4.39523671 |
2020/9/4 | 13.8 | 12.98293 | 5.92078915 |
2020/9/8 | 13.45 | 12.96274 | 3.62276513 |
2020/9/9 | 13.6 | 12.95624 | 4.73356103 |
2020/9/10 | 13.25 | 13.01203 | 1.79600402 |
2020/9/11 | 13.86 | 13.08871 | 5.56489034 |
2020/9/14 | 13.556 | 13.16137 | 2.91108513 |
2020/9/15 | 13.423 | 13.08937 | 2.48547731 |
2020/9/16 | 13.82 | 13.00026 | 5.93155791 |
2020/9/17 | 14.15 | 12.96799 | 8.35341000 |
2020/9/18 | 14.1 | 13.01368 | 7.70438689 |
2020/9/21 | 13.505 | 13.01740 | 3.61049660 |
2020/9/22 | 13.555 | 13.03632 | 3.82647190 |
2020/9/23 | 12.91 | 13.00128 | −0.70703165 |
2020/9/24 | 12.328 | 12.94991 | −5.04473469 |
2020/9/25 | 12.36 | 12.96650 | −4.90694377 |
2020/9/28 | 12.67 | 12.95528 | −2.25162182 |
2020/9/29 | 12.89 | 12.92789 | −0.29398175 |
2020/9/30 | 12.955 | 12.92832 | 0.20590666 |
2020/10/1 | 12.93 | 12.95107 | −0.16292963 |
2020/10/2 | 12.97 | 12.97858 | −0.06617826 |
2020/10/5 | 13.33 | 13.01796 | 2.34090910 |
2020/10/6 | 13.308 | 13.00231 | 2.29701921 |
2020/10/7 | 13.76 | 13.05121 | 5.15111638 |
2020/10/8 | 15.107 | 13.04968 | 13.61832406 |
2020/10/9 | 15.32 | 13.05934 | 14.75629829 |
2020/10/12 | 15.84 | 13.13939 | 17.04933509 |
2020/10/13 | 15.85 | 13.19401 | 16.75700725 |
2020/10/14 | 15.658 | 13.19860 | 15.70695820 |
2020/10/15 | 15.513 | 13.32459 | 14.10691091 |
2020/10/16 | 15.88 | 13.28203 | 16.36000485 |
2020/10/19 | 15.84 | 13.20718 | 16.62132793 |
2020/10/20 | 16.209999 | 13.23843 | 18.33171958 |
2020/10/21 | 16.35 | 13.24379 | 18.99820861 |
表2. ARIMA-GARCH模型的预测值
从表2观察到预测值与真实值之间的误差比较大,并且通过对误差序列进行白噪声检验,发现误差序列不是白噪声序列,误差序列中还存在着未提取的有用信息,还可以对误差序列进行统计分析。同时考虑到ARIMA-GARCH模型仅仅考虑了用历史的日收盘价数据预测将来的日收盘价,没有考虑外部因素对于日收盘价的影响,建立的模型进行预测难免会使误差偏大。因此,本文通过主成分分析找出影响误差序列的因素,并对误差序列进行回归建模。
以ARIMA-GARCH模型2020年7月28日至2020年10月12日的拟合误差序列为样本内建模数据,把2020年10月13日至10月21日的误差序列作为样本外数据进行预测。取绿色拇指工业公司对应时间的Open、High、Low以及AdjClose,对这4组数据取对数,然后利用变量间的相关性分析方法判断哪些变量与ARIMA-GARCH模型误差序列具有相关关系。这4组数据与误差序列之间的相关性,P值均小于显著性水平 α = 0 .05 ,判别结果是Open、High、Low以及AdjClose与ARIMA-GARCH模型拟合残差都有一定的相关性。
为了降低自变量的维数,提取影响因素中包含的信息,考虑采用主成分分析法提取具有代表性的综合指标。bartlett球形检验的结果P值小于显著性水平 α = 0 .05 ,表明可以进行主成分分析。下方的子图显示了KMO检验,整体的与每个变量的检验统计量MSA均大于0.7,说明这4组数据非常适合做主成分分析。接下来针对这4组数据利用主成分分析法寻找误差序列的解释变量,进而对误差序列进行回归建模。
由主成分分析结果,可以看出,第一主成分所占方差贡献率为95.22139%,然而第二主成分所占方差贡献率仅为0.02647444%,因此,第一主成分能较好地反映4个一致指标的整体变化,因此本文仅提取第一主成分作为回归方程的解释变量,用Z表示。
Z = 0.494 x 1 + 0.506 x 2 + 0.502 x 3 + 0.498 x 4
以Z为解释变量,误差序列 ε t 为被解释变量,拟合回归模型。模型结果显示参数通过了显著性检验并且 R 2 = 0 .9716 ,这表明拟合的回归模型是显著的,回归方程: ε ^ t = 0 .50114 Z t 。
日期 | 实际值 | 校正前预测值 | 校正后预测值 | 校正前误差 | 校正后误差 |
---|---|---|---|---|---|
2020/10/13 | 15.85 | 13.19401 | 15.51296 | 16.75700725 | 2.1264554 |
2020/10/14 | 15.658 | 13.19860 | 15.53003 | 15.70695820 | 0.8173085 |
2020/10/15 | 15.513 | 13.32459 | 15.64123 | 14.10691091 | −0.8265740 |
2020/10/16 | 15.88 | 13.28203 | 15.60944 | 16.36000485 | 1.7037535 |
2020/10/19 | 15.84 | 13.20718 | 15.52507 | 16.62132793 | 1.9882029 |
2020/10/20 | 16.209999 | 13.23843 | 15.58176 | 18.33171958 | 3.8756145 |
2020/10/21 | 16.35 | 13.24379 | 15.60184 | 18.99820861 | 4.5758738 |
表3. 误差预测结果分析
利用回归模型给出的误差预测结果,对ARIMA-GARCH模型的预测误差结果进行修正,得到最终的股价预测值。从表3可以观察到回归模型对误差的预测明显减小了ARIMA-GARCH模型预测的误差,从而在一定程度上克服了ARIMA-GARCH模型因为考虑外因素不足导致预测误差偏大的缺点。
由于影响股票市场的随机因素有很多,股票价格波动大,表现出复杂的非线性、不确定性,故股票市场是一个很不平稳的动态变化过程,建立一个准确的预测模型是很困难的。仅用时间序列模型不能很好地预测股票价格。因此在对未来股票价格进行预测时,不能只关注于时间序列预测模型给出的预测值,同时要对预测的误差多加关注。因为误差序列中含有预测模型未提取的信息,充分利用误差值里所含有的重要信息,对于提高预测精度是很有帮助的。
本文引入了误差校正的思想,先利用ARIMA-GARCH模型对日收盘价进行初步预测,但是预测精度不高,通过对误差序列进行的白噪声检验,发现误差序列存在还有未被ARIMA-GARCH模型提取的信息。然后利用变量间的相关性,找出与误差序列相关的变量。接着通过主成分分析对变量进行降维,筛选出合适的解释变量。对解释变量和误差序列进行回归分析,预测误差。最后,将预测误差值与ARIMA-GARCH模型的预测值相加,得到最终的预测值。通过将最终的预测值与ARIMA-GARCH模型的预测值相比较,观察到预测精度有了很大的提高,进而验证了引入误差校正的方法是合理的。
此论文将ARIMA-GARCH模型与回归模型相结合对日收盘价进行了预测,提高预测精度,实现了不仅仅靠历史收盘价数据预测未来价格,还同时考虑了日开盘价、日最高价数据等对日收盘价的影响。综合模型的预测精度相较于单一的ARIMA-GARCH模型有所提高,可以为实际的股票预测工作提供一些参考价值。
尹 路. 基于ARIMA-GARCH模型的股票价格预测Stock Price Prediction Based on ARIMA-GARCH Model[J]. 应用数学进展, 2022, 11(01): 404-417. https://doi.org/10.12677/AAM.2022.111048
https://doi.org/10.1214/aoms/1177704840