时间序列分析
时间序列分析是一种数据分析方法,它研究的对象是代表某一现象的一串随时间变化而又相关联的数据系列,从而描述和探索该现象随时间发展变化的规律性。
时间序列分析方法包括:
(1)确定性时序分析
(2)随机性时序分析
平稳时序分析主要通过建立:
自回归模型( ,Autoregressive Models)、
滑动平均模型( ,Moving Average Models)
自回归滑动平均模型( ,Autoregressive Moving Average Models)
分析平稳的时间序列的规律,一般的分析程序可用下面框图表示:
1.自回归模型AR§
如果时间序列Xt是它的前期值和随机项的线性函数,即可表示为
称为P阶自回归模型,记为AR(P)
注1:实参数 称为自回归系数,是待估参数。随机项 at是相互独立的白噪声序列,且服从均值为0、方差为 的正态分布。随机项与滞后变量不相关。
注2:一般假定Xt均值为0,否则令
2.滑动平均模型 MA(q)
如果时间序列Xt是它的当期和前期的随机误差项的线性函数,即可表示为
称为q阶移动平均模型,记为MA(q)注:实参数 为移动平均系数,是待估参数。
引入滞后算子,并令
则模型可简写为
注1:移动平均过程无条件平稳。
注2:滞后多项式 的根都在单位圆外时,AR过程与MA过程能相互表出,即过程可逆,
,即为MA过程的逆转形式,也就是MA过程等价于无穷阶的AR过程。
注3:
满足平稳条件时, AR过程等价于无穷阶的MA 过程,即
3. 自回归移动平均模型ARMA(p,q)
如果时间序列Xt是它的当期和前期的随机误差项以及前期值的线性函数,即可表示为
称为(p,q)阶的自回归移动平均模型,记为ARMA(p,q)
在实际的社会经济现象中收集到的时序大多数是呈现出明显的趋势性或周期性,要把趋势和波动综合考虑进来,于是Xt = μt+Yt。其中μt 表示Xt中随时间变化的均值(往往是趋势值),Yt是Xt中剔除μt后的剩余部分,表示零均值平稳过程。
Matlab有关时间序列分析命令 (matlab 2013)
在工具箱中可以通过命令garchset指定模型的结构,garchset的语法为
Spec=garchset(‘属性1’,属性1的值,’属性2’,属性2的值,…)
在工具箱中可以通过命令garchfit对模型中的参数进行估计,garchfit的语法为
[Coeff,Errors,LLF,Innovations,Sigmas]=garchfit(Spec,Series)
其中输入参数Spec指定模型的结构,Series 为时间序列的样本观测值。输出参数Coeff是模型的参数估计值,Errors是模型参数的标准差,LLF是最大似然估计法中的对数目标函数值,Innovations是残差向量,Sigmas是对应于Innovations 的标准差。
案例分析:
选取1978-2006历年国内生产总值数据如下,试对该时间序列进行建模并预测。
1、问题分析与模型建立
首先画出数据的走势图,这一时间序列是具有明显趋势且不含有周期性变化经济波动序列,即为非平稳的时间序列,对此序列进行建模预测需要用上面介绍的非平稳时间序列分析方法。采用模型:Xt = μt+Yt
2. 模型求解
2.1 确定性趋势
确定趋势是按指数趋势发展的
t=1978:2006;
x=[3624.10 4038.20 4517.80 4862.40 5294.70 5934.50 7171.00 8964.40 10202.20 11962.50 14928.30 16909.20 18547.90 21617.80 26638.10 34634.40 46759.40</