论文部分内容阅读
摘 要:本文选取沪深300指数作为A股走势的代表,首先对马尔科夫链的理论进行了介绍,再根据马尔科夫链理论建立了分析预测股指变动趋势的数学模型,最后运用实例数据来对该模型的应用进行了说明。
关键词:马尔科夫链;马氏性检验;沪深300指数
中图分类号:F830191 文献标识码:A
对于股指的预测有许多种方法,然而利用马尔科夫建模并进行预测的相对较少,并且大部分该类文献在建模时都先假设所用的股指历史数据满足了马氏性,在状态空间的划分上也较为主观,这显然不够严谨。故本文在利用马氏过程理论建立预测模型的基础上加入了对所用沪深300指数部分历史数据马氏性的检验,并利用了系统聚类法对数据进行了客观的划分。最终模型的预测结果与实际数据有较好的吻合。
一、模型的理论基础[1][2]
(一)马尔科夫链的定义
设{Xn}为随机变量列,n∈N,其中时间参数集N={0,1,2,…}状态空间为I={i},若对任意时刻n,及任意状态i1,i2,...,in与j∈E,有P{Xn+1=j|Xn=in,Xk=ik,k=1,2,...,n-1}=P{Xn+1=j|Xn=in},则称{Xn}为马尔科夫链。
(二)马尔科夫链的转移概率
设{Xn}为马尔科夫链,若记
P(k)ij(m)=P{Xm+n=j|Xm=i},i,j∈E
其中k为正整数,m为非负整数,称P(k)ij(m)为{Xn}在时刻m从状态i出发k步到达j的转移概率,并称矩阵P(k)(m)=(p(k)ij(m))为{Xn}从时刻m出发的k步转移概率矩阵。
转移概率P(k)ij(m)具有下列性质:
(1)P(k)ij(m)≥0;(2)P(k)ij(m)=1
(三)平稳分布
设(Pij )为有限马氏链{Xn}的转移矩阵,存在非负数列{πj}满足
πj=1,πj=πkpkj
则称{πj}为{Xn}的平稳分布。
二、沪深300指数的马尔科夫预测模型的建立
(一)状态空间的划分
能否对状态空间进行科学的状态划分是马氏链预测能否准确的关键之一。本文运用系统聚类法来划分沪深300指数的变化区间,使划分的区间更趋合理。
系统聚类的基本思想可参考文献[3],本文采用类平均法来定义两类样品间的距离,即
D2pq=d2ij
类平均法是一种使用较广泛、聚类效果较好的办法。
(二)建立转移概率矩阵
本文采用统计估算法来建立马尔科夫转移概率矩阵。首先收集沪深300指数的历史一段时间内的每天收盘价,将其记为时间序列X1,...,Xn,根据指数区间将其分为m个状态即状态空间I={1,2,...,m},用fij表示指标序列中从状态i经过一步转移到状态j的频数,i,j∈I。由fij(i,j∈I)组成的矩阵(fij)称为“频数转移矩阵”,将转移频数矩阵的第i行第j列元素fij除以各行的总和的值为“转移概率”,记为pij,i,j∈I,即
pij=
pij就是从状态i经过一步转移到达状态j的转移概率,因此,一步转移概率矩阵可以表示为
p=(pij)i,j∈s
将数据代入,我们便可得到该指数序列的转移概率矩阵。
(三)“马氏性”的检验
检验随机变量序列是否具有“马氏性”,是应用马尔科夫链模型分析和解决实际问题的必要前提。对于离散序列的马尔科夫链,一般用χ2统计量来检验。具体方法如下:
在求出了上述股指指标序列X1,...,Xn,及其频数转移矩阵时,我们将频数转移矩阵的第j列之和除以各行各列的总和所得值称为“边际概率”,记为p•j
p•j=
当n充分大时,构造统计量
χ2=2fij|ln|
服从自由度为(m-1)2的χ2分布。
给定显著性水平α,查表可得分位点χ2α((m-1)2)的值,通过数学软件计算χ2的值,若χ2>χ2α((m-1)2),则可以认为股指序列(xi)符合马氏性。
(四)马尔科夫链的预测方法
以股指序列的第t时刻为基期,该时段的指标状态属于状态i,则可认为初始分布为
p(0)=(0,…,0,1,0…0)
这里p(0)是一个单位行向量,其第i个分量为1,其余为0,于是第t+1时刻的预测状态j满足:
p(1)=p(0)P=(p1(1),p1(2),...,p1(m)
则可认为第l+1时刻的预测状态满足:
p1(j)=max{p1(i),i∈I}
根据CK方程,从而可预测第l+k时刻的预测状态为:
p(k)=p(0)pk=(pk(1),pk(2),...,pk(m))则
pk(j)=max{pk(i),i∈I}
三、数据检验
我们利用大智慧行情软件收集了2011年6月17日至2011年8月25日期间沪深300指数的收盘价,将其排序后用SPSS 17软件运用类平均法进行系统聚类,并分为5类,如下表所示:
由于沪深300指数收盘价数据是离散的,而在状态空间的划分中我们需要连续不间断的区间,故依上述分类结果做出以下细微调整:
按上文所述方法得到频数转移矩阵
一步转移概率矩阵
接着构造统计量χ2=2fij|ln|,用matlab7.1求得χ2=46.8449,令自由度为16,取置信区间为α=0.01,查表可得χ2(0.01)(16)=32,χ2>χ2(0.01)(16),故改股指时间序列符合马氏性,可以利用马尔科夫链对其进行预测。
再用所建立的预测模型对接下来几个交易日的情况进行预测,结果如下:
记2011年8月26日收盘价状态概率向量为I1,
=(0.2000 0.7000 0.1000 0 0)
则2011年8月29收盘价状态概率向量为
I2=I0•P2=(0.2900 0.5491 0.1427 0.0182 0)
同理可得2011年8月30日收盘价状态概率向量
I3=I0•P3=(0.3273 0.4698 0.1633 0.0350 0.0045)
2011年8月31日收盘价状态概率向量
I4=I0•P4=(0.3395 0.4256 0.1745 0.0480 0.0125)
根据后来所收集数据,2011年8月26日至2011年8月31日沪深300指数的实际收盘价为2901.22,2852.81,
2841.74, 2846.78,分别处于状态2,状态2,状态1,状态1.
由此可见,该模型所做的预测效果还是比较良好的。
同时我们还可以求得该马尔科夫链的平稳分布,设π=(π1,π2,π3,π4,π5)为其平稳分布,则根据定义有:
求解得π=(0.16326 0.20408 0.22490 0.16327 0.24490),即系统处于各状态的稳态概率,由此可以看出沪深300指数站在3000点以上的可能性还是比较高的。
四、结束语
在运用马尔科夫链进行预测的时候,一般假定外部经济条件比较稳定,即所预测期间不会出现重大利好或利空消息使得股指暴涨暴跌,然而在实际运行中,这完全是可能的,故马尔科夫链较适用于短期预测。
本文在应用模型时只选取了50多个数据,对于更高准确度上的预测来说还远远不够,本文只是用此数据来举例说明模型的运用方法。当然值得指出的是,如果能够很好的选取样本及样本容量运用运用马尔科夫链预测模型来预测短时期内股指的大致走向还是比较可行合理的,可作为投资者投资时的参考依据。
参考文献:
[1] (美) 劳勒(Lawler G.F.)随机过程导论(原书第二版)[M].北京:机械工业出版社.
[2] 林元烈.应用随机过程[M]. 北京:清华大学出版社.
[3] 高惠璇. 应用多元统计分析[M]. 北京:北京大学出版社.
关键词:马尔科夫链;马氏性检验;沪深300指数
中图分类号:F830191 文献标识码:A
对于股指的预测有许多种方法,然而利用马尔科夫建模并进行预测的相对较少,并且大部分该类文献在建模时都先假设所用的股指历史数据满足了马氏性,在状态空间的划分上也较为主观,这显然不够严谨。故本文在利用马氏过程理论建立预测模型的基础上加入了对所用沪深300指数部分历史数据马氏性的检验,并利用了系统聚类法对数据进行了客观的划分。最终模型的预测结果与实际数据有较好的吻合。
一、模型的理论基础[1][2]
(一)马尔科夫链的定义
设{Xn}为随机变量列,n∈N,其中时间参数集N={0,1,2,…}状态空间为I={i},若对任意时刻n,及任意状态i1,i2,...,in与j∈E,有P{Xn+1=j|Xn=in,Xk=ik,k=1,2,...,n-1}=P{Xn+1=j|Xn=in},则称{Xn}为马尔科夫链。
(二)马尔科夫链的转移概率
设{Xn}为马尔科夫链,若记
P(k)ij(m)=P{Xm+n=j|Xm=i},i,j∈E
其中k为正整数,m为非负整数,称P(k)ij(m)为{Xn}在时刻m从状态i出发k步到达j的转移概率,并称矩阵P(k)(m)=(p(k)ij(m))为{Xn}从时刻m出发的k步转移概率矩阵。
转移概率P(k)ij(m)具有下列性质:
(1)P(k)ij(m)≥0;(2)P(k)ij(m)=1
(三)平稳分布
设(Pij )为有限马氏链{Xn}的转移矩阵,存在非负数列{πj}满足
πj=1,πj=πkpkj
则称{πj}为{Xn}的平稳分布。
二、沪深300指数的马尔科夫预测模型的建立
(一)状态空间的划分
能否对状态空间进行科学的状态划分是马氏链预测能否准确的关键之一。本文运用系统聚类法来划分沪深300指数的变化区间,使划分的区间更趋合理。
系统聚类的基本思想可参考文献[3],本文采用类平均法来定义两类样品间的距离,即
D2pq=d2ij
类平均法是一种使用较广泛、聚类效果较好的办法。
(二)建立转移概率矩阵
本文采用统计估算法来建立马尔科夫转移概率矩阵。首先收集沪深300指数的历史一段时间内的每天收盘价,将其记为时间序列X1,...,Xn,根据指数区间将其分为m个状态即状态空间I={1,2,...,m},用fij表示指标序列中从状态i经过一步转移到状态j的频数,i,j∈I。由fij(i,j∈I)组成的矩阵(fij)称为“频数转移矩阵”,将转移频数矩阵的第i行第j列元素fij除以各行的总和的值为“转移概率”,记为pij,i,j∈I,即
pij=
pij就是从状态i经过一步转移到达状态j的转移概率,因此,一步转移概率矩阵可以表示为
p=(pij)i,j∈s
将数据代入,我们便可得到该指数序列的转移概率矩阵。
(三)“马氏性”的检验
检验随机变量序列是否具有“马氏性”,是应用马尔科夫链模型分析和解决实际问题的必要前提。对于离散序列的马尔科夫链,一般用χ2统计量来检验。具体方法如下:
在求出了上述股指指标序列X1,...,Xn,及其频数转移矩阵时,我们将频数转移矩阵的第j列之和除以各行各列的总和所得值称为“边际概率”,记为p•j
p•j=
当n充分大时,构造统计量
χ2=2fij|ln|
服从自由度为(m-1)2的χ2分布。
给定显著性水平α,查表可得分位点χ2α((m-1)2)的值,通过数学软件计算χ2的值,若χ2>χ2α((m-1)2),则可以认为股指序列(xi)符合马氏性。
(四)马尔科夫链的预测方法
以股指序列的第t时刻为基期,该时段的指标状态属于状态i,则可认为初始分布为
p(0)=(0,…,0,1,0…0)
这里p(0)是一个单位行向量,其第i个分量为1,其余为0,于是第t+1时刻的预测状态j满足:
p(1)=p(0)P=(p1(1),p1(2),...,p1(m)
则可认为第l+1时刻的预测状态满足:
p1(j)=max{p1(i),i∈I}
根据CK方程,从而可预测第l+k时刻的预测状态为:
p(k)=p(0)pk=(pk(1),pk(2),...,pk(m))则
pk(j)=max{pk(i),i∈I}
三、数据检验
我们利用大智慧行情软件收集了2011年6月17日至2011年8月25日期间沪深300指数的收盘价,将其排序后用SPSS 17软件运用类平均法进行系统聚类,并分为5类,如下表所示:
由于沪深300指数收盘价数据是离散的,而在状态空间的划分中我们需要连续不间断的区间,故依上述分类结果做出以下细微调整:
按上文所述方法得到频数转移矩阵
一步转移概率矩阵
接着构造统计量χ2=2fij|ln|,用matlab7.1求得χ2=46.8449,令自由度为16,取置信区间为α=0.01,查表可得χ2(0.01)(16)=32,χ2>χ2(0.01)(16),故改股指时间序列符合马氏性,可以利用马尔科夫链对其进行预测。
再用所建立的预测模型对接下来几个交易日的情况进行预测,结果如下:
记2011年8月26日收盘价状态概率向量为I1,
=(0.2000 0.7000 0.1000 0 0)
则2011年8月29收盘价状态概率向量为
I2=I0•P2=(0.2900 0.5491 0.1427 0.0182 0)
同理可得2011年8月30日收盘价状态概率向量
I3=I0•P3=(0.3273 0.4698 0.1633 0.0350 0.0045)
2011年8月31日收盘价状态概率向量
I4=I0•P4=(0.3395 0.4256 0.1745 0.0480 0.0125)
根据后来所收集数据,2011年8月26日至2011年8月31日沪深300指数的实际收盘价为2901.22,2852.81,
2841.74, 2846.78,分别处于状态2,状态2,状态1,状态1.
由此可见,该模型所做的预测效果还是比较良好的。
同时我们还可以求得该马尔科夫链的平稳分布,设π=(π1,π2,π3,π4,π5)为其平稳分布,则根据定义有:
求解得π=(0.16326 0.20408 0.22490 0.16327 0.24490),即系统处于各状态的稳态概率,由此可以看出沪深300指数站在3000点以上的可能性还是比较高的。
四、结束语
在运用马尔科夫链进行预测的时候,一般假定外部经济条件比较稳定,即所预测期间不会出现重大利好或利空消息使得股指暴涨暴跌,然而在实际运行中,这完全是可能的,故马尔科夫链较适用于短期预测。
本文在应用模型时只选取了50多个数据,对于更高准确度上的预测来说还远远不够,本文只是用此数据来举例说明模型的运用方法。当然值得指出的是,如果能够很好的选取样本及样本容量运用运用马尔科夫链预测模型来预测短时期内股指的大致走向还是比较可行合理的,可作为投资者投资时的参考依据。
参考文献:
[1] (美) 劳勒(Lawler G.F.)随机过程导论(原书第二版)[M].北京:机械工业出版社.
[2] 林元烈.应用随机过程[M]. 北京:清华大学出版社.
[3] 高惠璇. 应用多元统计分析[M]. 北京:北京大学出版社.