Processing math: 100%

时间序列分析:随机游走

1. 定义

  令 {et} 是均值为 μ,方差为 σ2e 的白噪声,如果

Xt=Xt1+et

则称 Xt 为随机游走(Random Walk)。

  式 (1) 也可以使用延迟算子表示为

Xt=BXt+et

ϕ(B)Xt=et

其中

ϕ(B)=1B

将随机游走的初始位置看做 e1,将 et 看做游走的步长,则 Xt 就是在 t 时刻所到达的位置,即有

Xt=ti=1ei

2. 均值和方差函数

  由式 (2) 易得随机游动的均值函数

E(Xt)=tμ

由白噪声的独立性,得到方差函数

Var(Xt)=Var(ti=1ei)=tσ2

可见随机游走的方差随时间线性增长,随机游走是非平稳的。

3. 协方差和自相关函数

  设 1ts,则协方差函数

γt,s=Cov(Xt,Xs)=Cov(e1+e2++et,e1+e2++et++es)

由协方差的性质(其中 c1,c2,,cmd1,d2,,dn 为常数,t1,t2,,tms1,s2,,sn 为时点)

Cov[mi=1ciXti,nj=1djXsj]=mi=1nj=1cidjCov(Xti,Xsj)

(5) 可以表示为

γt,s=si=1tj=1Cov(ei,ej)

由白噪声的独立性,当 ij 时,有 Cov(ei,ej)=0;当 i=j 时,有 Cov(ei,ej)=Var(ei)=σ2e,而这样的项有 t 个(因为 ts),于是有 γt,s=tσ2e。由于 γt,s=γs,t,于是在所有的时间点上,都有

γt,s=tσ2e,1ts

  于是可得随机游走的自相关函数为

ρt,s=γt,sγt,tγs,s=ts,1ts

可见随着时间的推移,相邻时点上的正相关程度越来越强,而相距较远时点的相关程度越来越弱。更直观地,有如下结果

ρ1,2=12=0.707ρ11,12=1112=0.957ρ31,32=3132=0.984ρ1,32=132=0.177

4. 模拟

  模拟随机游走过程,绘制序列和 ACF 如图 1、图 2。

set.seed(42)
x <- NULL
x[1] <- 0
for (i in 2:200) {
x[i] <- x[i - 1] + rnorm(1)
}
x <- ts(x)
plot(x, main="Random Walk")
set.seed(42) x <- NULL x[1] <- 0 for (i in 2:200) { x[i] <- x[i - 1] + rnorm(1) } x <- ts(x) plot(x, main="Random Walk")
set.seed(42)
x <- NULL
x[1] <- 0
for (i in 2:200) {
  x[i] <- x[i - 1] + rnorm(1)
}
x <- ts(x)
plot(x, main="Random Walk")

图 1

acf(x)
acf(x)
acf(x)

图 2

  由图 2 可见序列具有强自相关性,自相关随着滞后的增加而缓慢衰减。

5. 随机游走的一阶差分

  虽然随机游走式非平稳的,但对其进行一阶差分,得到

Xt=XtXt1=et

可见 Xt 是白噪声,它是平稳的。

  模拟随机游走的一阶差分,绘制序列和 ACF 如图 3、图 4。

x.diff <- diff(x)
plot(x.diff, main="Random Walk Diff")
x.diff <- diff(x) plot(x.diff, main="Random Walk Diff")
x.diff <- diff(x)
plot(x.diff, main="Random Walk Diff")

图 3

acf(x.diff)
acf(x.diff)
acf(x.diff)

图 4

  由图 4 可见一阶差分后的序列只在滞后为 0 时存在显著自相关。