时间序列分析(二):AR 模型
admin
2023-06-24 17:01:01
0

1.导论

本节介绍线性时间序列最简单的模型AR模型,给出AR模型的性质和特征,结合R软件和实际例子说明AR模型的参数估计,预测等。

2.AR(p)过程


为一时间序列,满足对


为白噪声序列, 。称 为 阶自回归过程,记为AR(p)。

3.特征方程


结论:AR(p)过程是平稳的当且仅当特征方程解的模大于1.

4.均值为0的AR(p)过程

令 为平稳的AR(p)过程均值,那么

因此在以下的讨论中,我们假定AR(p)过程为


5.Yule-Walker方程组

为 阶自相关系数,则


解方程组可得自相关系数 。

然后利用递推关系求出各阶自相关系数:


.

6. 平稳的AR(1) 过程


,

性质

(1) ;

(2) ;

(3) 自相关系数 .

7.平稳的AR(1)过程的模拟


为高斯白噪声序列,即 。令 ,随机模拟 ,

代入迭代公式 ,可得序列

取序列 为模拟的样本。

为了避免初始值 的影响, 取得大一些。

例1 AR(1)过程模拟的R实现


wn<-rnorm(1100)#k=100,m=1000
x<-0
x[1]<-0
for (i in 2:1100){
x[i]<-0.5*x[i-1]+wn[i]
}
ts<-ts(x[101:1100])
par(mfrow=c(2,1))
plot(ts)
acf(ts)#样本自相关系

R基本包中有arima.sim函数,可以模拟AR(p)过程

8.平稳的AR(2) 过程


自相关系数为 , , .

例2 的模拟

> y<-arima.sim(model=list(ar=c(1.5,-0.3)),1000)

>par(mfrow=c(2,1))

> plot(y)

> acf(y)




9. AR模型的识别

在用AR模型对数据进行建模时,首先需要确定阶数 。确定 的方法有两种:一是利用样本偏自相关系数(pacf); 另一种是利用信息注册函数方法。

(1) 样本偏自相关系数

依次根据数据建立下面模型:





这样利用最小二乘法得到样本偏自相关系数 .

如果数据的模型为 ,可以证明:当样本容量 趋于无穷大时,

  • ;
  • 当 , 收敛于0;
  • 当 , 的渐进方差为 .

因此AR(p)模型的样本偏自相关系数时p阶截尾的。

例3.模拟模型 ,根据模拟的数据绘制样本偏自相关系数图。

>T<-10000

>y<-arima.sim(model=list(ar=c(.5,.3,.1)),T)

>acf(y,type="partial",main="AR(3)",20)




偏自相关系数

从样本偏自相关系数可以看出,AR模型的阶数为3,与实际模型符合。

(2) AIC准则


ln(似然函数的最大值)+ (参数的个数)

其中 是样本容量。对于高斯模型AR(p)模型,AIC简化为 ,其中 为 的最大是似然估计。

在实际应用当中,为了利用AIC来选择一个AR模型,首先计算 , , 是事先给定的正整数,然后选择 ,使得 达到最小。

例3续,根据模拟的数据,计算AIC,选择合适的阶数。

> order<-ar(y,method="mle")

> order$aic

0 1 2 3 4 5

12717.184047 1508.606900 84.285579 4.800284 5.970763 5.740316

6 7 8 9 10 11 12

5.752835 0.000000 1.367312 3.304709 5.198295 6.833067 8.763083

从上面结果来看, AR模型的阶数为7.显然与实际模型不符合。

10. 参数的估计

(1) 最小二乘估计

例3续 根据模拟的数据进行参数的最小二乘估计

>ar(y,method="ols", order.max = 3)

Call:

ar(x = y, order.max = 3, method = "ols")

Coefficients:

1 2 3

0.4890 0.3178 0.0898

Intercept: -0.0001573 (0.01001)

Order selected 3 sigma^2 estimated as 1.002

从上面的R结果可以看出,截距-0.0001573,其绝对值远小于样本标准差0.01001,因此认为截距为0.因此拟合的模型为 , 。

(2) 极大似然估计

例3续 根据模拟的数据进行参数的极大似然估计

> ar(y,method="mle", order.max = 3)

Call:

ar(x = y, order.max = 3, method = "mle")

Coefficients:

1 2 3

0.4888 0.3176 0.0901

Order selected 3 sigma^2 estimated as 1.002

从上面的R结果可以看出拟合的模型为


, 。

12 模型的检验

如果模型是合理的, 则残差应该是白噪声。因此我们自相关系数和Ljung-Box统计量来检验残差是否为白噪声。

例3续 根据极大似然估计对模型的估计,然后给出自相关系数图和Ljung-Box检验。

(1)自相关系数图

> ar3<-ar(y,method="mle", order.max = 3)

>acf(ar3$resid[4:10000])




残差的自相关系数

从上图看出,自相关系数近似为0.

(2) Ljung-Box检验

> Box.test(ar3$resid,lag=12,type="Ljung")

Box-Ljung test

data: ar3$resid

X-squared = 14.654, df = 12, p-value = 0.2609

检验的p值= 0.2609,从而说明残差之间没有相关性。

13.预测

(1)预测值

已知时间序列样本数据为 ,下面我们根据估计的模型预测 .所谓预测是估计条件均值,即在已知数据 的条件下,估计 。根据


可得


, (这里的期望是条件期望)

其中 。

这样便有 , .

令 为 的估计值,这样便有


,

因此





(2)预测误差

  • 向前一步预测误差: ,这样便有预测误差的方差 .若 ,那么 的95%置信区间为 .
  • 向前两步预测误差: ,这样便有 ,说明随着步长的增加,预测的不确定性增加。

例3续,给出向前3步的预测

> predict(ar3, n.ahead = 3)

$pred

Time Series:

Start = 10001

End = 10003

Frequency = 1

[1] -1.480703 -1.437048 -1.349983


$se

Time Series:

Start = 10001

End = 10003

Frequency = 1

[1] 1.001142 1.114359 1.245899

从上面的结果可得 ,

预测误差的标准差分别为 1.001142,1.114359,1.245899。

14 AR模型建模步骤

  • 根据时间序列数据画出时序图;
  • 根据时序图判别是数据是否平稳?
  • 若平稳,则画出自相关系数图并做Ljung和Box检验,判断是否时间序列是否存在自相关性?
  • 若有自相关性,则根据数据绘制样本偏自相关系数图,根据自相关的截尾确定AR模型的阶数;
  • 估计模型的参数;
  • 画出残差图并进行Ljung和Box检验。若残差为白噪声,则说明AR模型对数据拟合充分;
  • 根据估计的模型进行预测。

15 案例

Teaching page: Ruey S. Tsay下载数据"m-ibm3dx2608.txt",对价值加权指数的月简单收益率进行时间序列建模。

(1)读取数据并画出时序图

> vw<-read.table(file="~/Desktop/ch2data/m-ibm3dx2608.txt",header=TRUE)[,3]

> vw<-ts(vw)

> plot(vw)



(2) 画出自相关系数图

> acf(vw)



(3) Ljung和Box检验

> Box.test(vw,lag=12,type="Ljung")


Box-Ljung test


data: vw

X-squared = 39.865, df = 12, p-value = 7.572e-05

分析:p值 = 7.572e-05远小于0.01,说明序列之间存在自相关性。

(4) 根据数据绘制样本偏自相关系数图



根据上面图分析,偏自相关系数大致3阶截尾,因此建立AR(3)模型

(5) 参数估计

> ar3<-ar(vw,method="mle", order.max = 3)

> ar3

Call:

ar(x = vw, order.max = 3, method = "mle")

Coefficients:

1 2 3

0.1158 -0.0188 -0.1042

Order selected 3 sigma^2 estimated as 0.002875

从上面结果得到AR(3)模型估计为


其中 .

(6) AR(3)模型的检验,即残差的白噪声检验

>res<-ar3$res

>res<-ts(res)

>plot(res)




残差序列

> res<-res[4:996]

> acf(res)




残差样本自相关系数

> Box.test(res,lag=12,type="Ljung")


Box-Ljung test


data: res

X-squared = 16.559, df = 12, p-value = 0.167

检验p值=0.167>0.05, 说明残差为白噪声,从而说明AR(3) 是充分的。

(7) 向前5步的预测

> predict(ar3, n.ahead = 5)

$pred

Time Series:

Start = 997

End = 1001

Frequency = 1

[1] 0.032299927 0.021182409 0.008576646 0.006198781 0.007318262


$se

Time Series:

Start = 997

End = 1001

Frequency = 1

[1] 0.05361892 0.05397696 0.05397773 0.05428167 0.05429736

向前5步的预测值分别为:0.032299927, 0.021182409 ,0.008576646 ,0.006198781, 0.007318262;

预测误差的标准差分别为:0.05361892 ,0.05397696, 0.05397773, 0.05428167 ,0.05429736。

相关内容