Processing math: 100%

时间序列分析

时间序列分析

Knowledge sharing by FC

1 基本概念

1.1 随机过程

设 $X_0, X_1,X_2…$ 是一列独立同分布的随机变量序列,令
Sn=S0+X1+X2++Xn
则随机变量序列 Sn 为随机过程。

1.2 均值/协方差/方差函数

对于序列${X_t}$:

  • 均值函数:
    μX(t)=E[X(t)]

  • 协方差函数:
    γX(s,t)=E[(X(s)μX(s))(X(t)μX(t))]

  • 方差函数:
    DX(t)=rX(t,t)=E[(X(s)μX(s))2]
    Note:
    为弱平稳的描述做准备。

1.3 平稳性

平稳性:时间序列的行为不随时间改变。

Why stationary?

简化问题的假设。

  • 强平稳:对于一个时间序列${Zt}$与任意整数k,如果
    $$
    Z\
    {t1}, Z_{t2},…,Z_{tn}

    Z_{t1-k}, Z_{t2-k},…,Z_{tn-k}
    $$
    的联合分布一致,那么称该序列强平稳。
  • 弱平稳:对于一个序列,若其均值函数是常数,协方差函数仅与时间差相关,那么称该序列弱平稳。
    Note:
    强弱平稳并不相互包含。满足假设则预测结果好。ADF检验等,对不平稳的序列可做差分。

1.4 差分方程

一阶差分方程:

一个变量在$t$时刻的值记作$y_t$,$t$时刻和$t-1$时刻的值可以由以下一阶线性差分方程刻画:
yt=ϕyt1+wt
差分方程表达一个变量与他前期值的关系。

p阶差分方程

yt=ϕtyt1+ϕ2yt2++ϕpytp+wt

差分方程的递归解

yt=ϕt+1y1+(wt+ϕwt1+ϕ2wt2++ϕt1w1ϕtw0)

动态乘子

ytw0=ϕt,yt+jwt=ϕj
Note:
描述t时刻的扰动wt对于j时刻后的影响。
phi的取值以1为界对于过程的影响(消散,放大)

1.5 延迟算子

令B为一步延迟算子,如果当前序列乘以一个延迟算子,表示把当前序列值的时间向过去拨一个时刻。
使用延迟算子表示的一阶差分方程:
yt=ϕyt1+wtyt=ϕByt+wt(1ϕB)yt=wt

延迟算子性质

BXt=Xt1B2Xt=Xt2BnXt=Xtn
(1)B0=1(2)cB(cXt)=cB(Xt)=cXt1(3)(1B)n=ni=0(1)nn!i!(ni)!Bi

2 线性平稳时间序列

2.1 自回归过程(AR)

一阶自回归过程AR(1):

如${X_t}$为平稳序列,且满足如下差分方程:
Xt=c+ϕXt1+εt
其中系数表示对前一项的依赖程度,扰动为白噪声序列,则称${X_t}$满足一阶自回归模型。
Note:
WN: mean=0 方差sigma,不少分析中会先把序列中心化,即减均值。认为序列与前期值有关。

平稳条件:

特征方程:$\lambda-\phi=0$的根的绝对值小于1,即
|ϕ|<1
Note:
这与差分方程中动态乘子的意义一致。

方差与均值

E(Xt)=c1ϕE(Xtμ)2=σ21ϕ2

利用延迟算子,一阶自回归模型可以表示为:
(1ϕB)Xt=c+εtXt=(1ϕB)1(c+εt)=c1ϕ+(1ϕB)1εt
如果满足平稳条件,则可表示为:
Xt=c1ϕ+(1+ϕB++ϕjBj+)εt=c1ϕ+εt+ϕεt1++ϕjϵtj
Note:
类似于一个数列极限。平稳则扰动项必须收敛,否则与影响无限扩大。AR1是一个无限阶的移动平均过程。

2.2 移动平均过程

一阶移动平均过程MA(1):

${X_t}$若满足如下方程:
Xt=μ+εtθεt1
其中$\mu$为常数,$\theta$为移动平均系数,$\varepsilon$为白噪声过程,则称${X_t}$满足一阶移动平均模型。
Note:
认为序列和前一时刻的扰动有关。

MA(1)的均值与方差

E(Xt)=μ
E(Xtμ)2=E(εtθεt1)2=(1+θ2)σ2

2.3 自回归移动平均过程

ARMA(p,q)模型的一般表达式为:
Xt=c+ϕ1Xt1++ϕpXtp+εtθ1εt1θqεtqs<t,E(Xsεt)=0

2.4 相关系数

2.4.1 自相关系数ACF

AR(1)的自协方差与自相关系数:
γk=E(xtxtk)=ϕ1E(xt1xtk)+E(εtxtk)=ϕ1γk1γk=ϕk1γ0
ρk=γkγ0=ϕk1
Note:
这里是中心化后的序列,自协方差受幅度影响,相关系数去除幅度影响。

AR(p)的自协方差与自相关系数:
γk=ϕ1γk1++ϕpγkp,k>0ρk=ϕ1ρk1++ϕpρkp,k>0
(Yule-Walker方程,系数阵正定,可解回归系数)
Note:
p1=1,自己和自己的相关系数。模型定阶后可以求p阶协方差,解方程组。

MA(1)的自协方差与自相关系数:
γ=E(xtμ)(xtkμ)=E(εθεt1)(εtkθεtk1)γ0=(1+θ2)σ2γ1=θσ2γk=0,k>1ρ1=θσ2(1+θ2)σ2=θ1+θ2
高阶自相关系数均为0。

MA(q)的自协方差与自相关系数:
γj=(θj+θj+1θ1+θj+2θ2++θqθqj)σ2,j=1,2,,qρj=θj+θ1θj+1++θqjθq1+θ21++θ2q,j=1,2,,q
解非线性方程,可得滑动平均系数。
Note:
for j>q, gamma=0,p=0,解非线性方程,可得滑动平均系数

ARMA(p,q)的自协方差与自相关系数:
Xt=c+ϕ1Xt1++ϕpXtp+εtθ1εt1θqεtq

先同乘以$X_{t-k}$,求均值得自协方差,得到Yule-Walker方程,求回归系数,然后构造:

Xt=Xt(ϕ1Xt1ϕpXtp)
$X_t^*$为MA(q)序列,按MA(q)序列计算自协方差/自相关系数,解非线性方程得滑动回归系数。

2.4 相关系数

2.4.2 偏自相关系数PACF

φ11=ρ1φk+1,k+1=(ρk+1kj=1ρk+1jφk,j)(1kj=1ρjφk,j)φk+1,j=φk,jφk+1,k+1φk+1,k+1j,j=1,2,k
Note:
用于定阶。

D=|1ρ1ρk1ρ11ρk2ρk1ρk21|
Dk=|1ρ1ρk1ρ11ρk2ρk1ρk2ρk|
φkk=DkD

3 实际应用

3.1 模型(阶数)识别

ACF/PACF定阶

序列 AR(p) MA(q) ARMA(p,q)
ACF 拖尾 q阶截尾 拖尾
PACF p阶截尾 拖尾 拖尾

acf
pacf

AIC/BIC准则:
AIC(p,q)=lnˆσ2k+2(p+q+1)NBIC(p,q)=logˆσ2k+p+q+1NlogN
选择最大阶数($N^\frac{1}{2},logN,\frac{N}{10}$),

计算使AIC or BIC最小的p,q,作为模型阶数。
Note:
耗时,每次要计算出模型,再计算拟合残差,MAXLAG^2次计算。

3.2 参数估计

  • 矩估计
  • 极大似然估计
    Note:
    矩估计:Yuler-Walker方程等。

极大似然估计

以AR(1)为例:
Xt=c+ϕXt1+εt
序列观测值:$x_1,…x_T$
$\varepsilon_t$为白噪声,参数为$\theta=(\phi, \sigma^2)$
对于第一个样本,$X_1:N(\frac{c}{1-\phi},\frac{\sigma^2}{1-\phi^2})$,即$X1$的概率分布:
$$
f\
{X_1}(x_1;\phi,\sigma^2)=\frac{1}{\sqrt{2\pi}\sqrt{\sigma^2/(1-\phi^2)}}exp[-\frac{x_1^2}{2\sigma^2/(1-\phi^2)}]
$$
Note:
假设X1的期望与方差,与2.3中分析的一致。如果认为初始值也服从N(0,\sigma^2),则忽略了初始值之前的影响。

考察,第二个样本$X_2$在$X_1=x_1$已知条件下的概率分布,由于
X2=c+ϕX1+ε2
fX2|X1(x2|x1;ϕ,σ2)=12πσexp[(x2ϕx1)22σ2]
根据贝叶斯公式,$X_1,X2$的联合分布为:
$$
f\
{X_1,X_2}(x_1,x_2;\phi,\sigma^2)=f_{X_1}(x_1;\phi,\sigma^2)f_{X_2|X_1}(x_2|x_1;\phi,\sigma^2)
$$
Note:
X2~N((c+\phi x_1), \sigma^2)。常数+\varepsilon_t。

在前t-1个值已知的条件下,实际上$Xt$仅与$X{t-1}$有关:
fXt|Xt1,,X1(xt|xt1,,x1;ϕ,σ2)=12πσexp[(xtϕxt1)22σ2]
则$X_T…X1$的联合分布为:
$$
f\
{X_T,…,X_1}(x_T,…,x_1;\phi,\sigma^2)=f_{X_1}(x_1;\phi,\sigma^2)\prod_{t=2}^{T}f_{X_t|X_{t-1}}(x_t|x_{t-1};\phi,\sigma^2)
$$

对数似然函数为:
L(ϕ,σ2)T2log(2π)12log[σ2/(1ϕ2)]12σ2/(1σ2)x21[(T1)/2]log(σ2)12σ2Tt=2(xtϕxt1)2
Note:
求偏导数=0的点。

向量形式:
x=(x1,x2,,xT)TΩ=|E(X1μ)2E(X1μ)(X2μ)E(X1μ)(XTμ)E(X2μ)(X1μ)E(X2μ)2E(X2μ)(XTμ)E(XTμ)(X1μ)E(XTμ)(X2μ)E(XTμ)2|

Ω=σ2VV=11ϕ2|1ϕϕT1ϕ1ϕT2ϕT1ϕT21|
fX(x;ϕ,σ)=(2π)T/2|Ω1|1/2exp[12(xμ)tΩ1(xμ)]

MA(1)的似然函数:
xt=μ+εtθεt1L(θ)=T2T2log(σ2)Tt=1ε2t2σ2
εt=(xtμ)θ(xt1μ)+θ2(xt2μ)++(1)tθtε0
Note:
epsilon序列可表示为\theta的函数,非线性函数。

向量形式:
Ω=σ2|(1+θ2)θ00θ(1+θ2)θ00θ(1+θ2)0000(1+θ2)|
fX(x;θ)=(2π)T/2|Ω|1/2exp[12(xμ)tΩ1(xμ)]

ARMA(p,q)的极大似然估计:
令$\beta=(\phi_1,…,\phi_p,\theta_1,…,\theta_q)$,

似然函数为:
L(β)=T2log(2π)T2log(σ2)Tt=1ε2t2σ2
εt=xtcϕ1xt1ϕpxtpθ1εt1θqεtq
Note:
参数包含在epsilon序列中

4 一个实验

data:601000.ss, from 2014-8-9 to 2017-4-20,BIC准则定阶,前300个作为训练集,ARMA(4,0)。结果:RMSE:
0.30651974757
MAPE
0.0123583871228

res

res2

long_term

start

That’s all