简介
时间序列是按照时间次序排列的随机变量序列。任何时间序列经过合理的函数变换都可以被认为是由三个部分叠加而成。这三个部分分别是趋势项部分,周期项部分和随机噪声项部分。时间序列分析的首要任务就是把这三个部分分解出来。
时间序列在适当的去掉趋势项和周期项之后,剩下的随机部分通常会有某种平稳性。因此我们首先重点介绍一个平稳时间序列。
平稳序列
时间序列的趋势项和周期项可以用非随机的函数进行刻画。分离出趋势项和周期项后的时间序列往往表示出平稳波动性,我们称这种时间序列为平稳序列。
平稳序列的定义:
如果时间序列{Xt}={Xt:t∈N}满足
- 对任何的t∈N, EXt2<∞
- 对任何的t∈N, EXt2=μ
- 对任何的t,s∈N, E[(Xt−μ)(Xs−μ)]=γt−s
就称{Xt}是平稳时间序列,简称为平稳序列,称实数列{γt}为{Xt}的自协方差函数。
由定义可以看出,平稳序列中的随机变量Xt的均值EXt2,方差var(Xt)=E(Xt−μ)2都是和t无关的常数。因此协方差结构的平移不变性是平稳序列的特性。因此,又称平稳序列是二阶矩平稳序列。
ARIMA模型
研究上述平稳时间序列分析和预测最常用的统计模型是ARIMA模型。ARIMA 模型的全称叫做自回归移动平均模型,全称是(ARIMA,Autoregressive Integrated Moving Average Model),也就做ARIMA(p,d,q)。其中
- p--表示预测模型中采用时序数据本身的滞后数(lags),也叫做AR/Auto-Regressive项。
- d--表示时序数据需要进行几阶差分化,才是稳定的,也叫做Integrated项。
- q--表示预测模型中采用的预测误差的滞后数,也叫做MA/Moving Average项。
下面分别介绍AR项,MA项,ARIMA模型的优缺点以及ARIMA建模基本步骤。
AR项
AR(p) 模型的定义:
如果{εt}是白噪声WN(0,σ2),实数a1,a2,⋯,ap(ap≠0)使得多项式A(z)的零点都在单位圆外:
A(z)=1−j=1∑pajzj≠0,∣z∣≤1,
就称p阶差分方程
Xt=j=1∑pajXt−j+εt,t∈Z
是一个p阶自回归模型,简称为AR(p)模型。满足AR(p)模型的平稳时间序列Xt称为平稳解或者AR(p)序列。
MA项
MA(Move Average) 有限运动平均的定义:
设{εt}={εt:t∈Z}是WN(0,σ2)。对于非负整数q和常数a0,a1,⋯,aq,我们称
Xt=a0εt+a1εt−1+⋯+aqεt−q,t∈Z
是白噪声{εt}的有限运动平均,简称为MA(MovingAverage)。
ARIMA的优缺点
- 优点:模型简单,只需要内生不变量而不需要借助其他外生变量
缺点:
- 要求时序数据是稳定的(stationary),或者是通过差分化后是稳定的。
- 本质上只能捕捉线性关系,而不能捕捉非线性关系。
ARIMA建模基本步骤
- 获取被观测系统时间序列数据
- 对数据绘图,观测是否为平稳时间序列,或者进行ADF检验,可以利用adfuller;对于非平稳时间序列要先进行d阶差分运算,转化为平稳时间序列。
- 经过第二步处理,得到平稳时间序列。然后确定ARMA(p,q)中的p,q参数,关于p和q的选择,一种方法是观察自相关图ACF和偏相关图PACF,另一种方法是通过AIC、BIC统计量自动确定。可以利用statsmodels包里面的arma_order_select_ic方法,返回以BIC准则确定的阶数。
- 由以上步骤确定p,d,q参数,得到ARIMA模型,然后对得到的模型进行模型检验。
在下一章,我们将介绍DLM(Dynamic Linear Model)模型。