时间序列统计模型是用来描述和预测时间序列数据的数学模型。这些模型通常基于过去的观测值,并假设时间序列的行为是可预测的。以下是一些常见的时间序列统计模型:
1. 自回归模型(autoregressive,AR)
自回归(Autoregressive,AR)模型是一种用于时间序列分析的统计模型。它描述了一个时间序列观测值与其过去观测值之间的关系,即当前时刻的观测值与过去时刻的观测值之间存在自回归关系。自回归模型的出发点是认为观测值是它前面的 p 个值的线性组合。
AR模型的一般形式为:
[ Y t = c + ϕ 1 Y t − 1 + ϕ 2 Y t − 2 + … + ϕ p Y t − p + ϵ t ] [ Y_t = c + \phi_1 Y_{t-1} + \phi_2 Y_{t-2} + \ldots + \phi_p Y_{t-p} + \epsilon_t ] [Yt=c+ϕ1Yt−1+ϕ2Yt−2+…+ϕpYt−p+ϵt]
其中:
- ( Y t ) ( Y_t ) (Yt) 是时间点 ( t ) ( t ) (t) 的观测值。
- ( c ) ( c ) (c) 是常数项。
- ( ϕ 1 , ϕ 2 , … , ϕ p ) ( \phi_1, \phi_2, \ldots, \phi_p ) (ϕ1,ϕ2,…,ϕp) 是自回归系数,表示当前时刻的观测值与过去 ( p ) ( p ) (p) 个时刻的观测值之间的线性关系。
- ( ϵ t ) ( \epsilon_t ) (ϵt) 是白噪声误差,表示模型无法解释的随机扰动。
AR模型通常用 ( A R ( p ) ) ( AR(p) ) (AR(p)) 表示,其中 ( p ) ( p ) (p) 是自回归阶数,表示模型考虑的过去观测值的数量。
估计AR模型的参数通常使用最小二乘法或其他最大似然估计方法。一旦模型参数被估计出来,可以使用模型来进行预测、分析时间序列的性质以及生成未来的观测值。
AR模型可以做单步预测和多步预测,其中多步预测通过多次预测下一步来实现预测多步。但自回归模型只适合做短期预测,因为向前的时间越远,实际的数据的重要性就越小,模型的系数仅与有限的先前时间点的输入数据有关。对于遥远的未来的某个时刻,当前的数据无法为我们提供明确的信息,因此我们的预测越来越多的回归到移已知过程的基线属性上,例如均值。
2.移动平均模型(moving average,MA)
移动平均模型(Moving Average,MA)是一种用于时间序列分析的统计模型。与自回归模型(AR)不同,MA模型描述了观测值与随机误差(白噪声)项的线性组合,而不涉及过去的观测值。
MA模型的一般形式为:
[ Y t = μ + ϵ t + θ 1 ϵ t − 1 + θ 2 ϵ t − 2 + … + θ q ϵ t − q ] [ Y_t = \mu + \epsilon_t + \theta_1 \epsilon_{t-1} + \theta_2 \epsilon_{t-2} + \ldots + \theta_q \epsilon_{t-q} ] [Yt=μ+ϵt+θ1ϵt−1+θ2ϵt−2+…+θqϵt−q]
其中:
- ( Y t ) ( Y_t ) (Yt)是时间点 ( t ) ( t ) (t)的观测值。
- ( μ ) ( \mu ) (μ) 是常数项。
- ( ϵ t ) ( \epsilon_t ) (ϵt) 是白噪声误差,表示当前时刻的观测值与随机扰动的关系。
- ( θ 1 , θ 2 , … , θ q ) ( \theta_1, \theta_2, \ldots, \theta_q ) (θ1,θ2,…,θq) 是移动平均系数,表示当前时刻的观测值与过去 ( q ) ( q ) (q) 个时刻的随机误差的线性关系。
MA模型通常用 ( M A ( q ) ) ( MA(q) ) (MA(q)) 表示,其中 ( q ) ( q ) (q) 是移动平均阶数,表示模型考虑的过去随机误差的数量。
移动平均模型有几种不同的计算方式,主要包括简单移动平均(SMA)、加权移动平均(WMA)和指数加权移动平均(EMA)。这些方法用于平滑时间序列数据,减少噪音,揭示趋势和模式。
-
简单移动平均(SMA):
- 简单移动平均是最基本的移动平均计算方式。对于时间序列中的每个数据点,SMA取前几期的观测值的算术平均。
- SMA的计算公式为: [ S M A t = X t − 1 + X t − 2 + … + X t − n n ] [ SMA_t = \frac{X_{t-1} + X_{t-2} + \ldots + X_{t-n}}{n} ] [SMAt=nXt−1+Xt−2+…+Xt−n]
- 其中, ( S M A t ) ( SMA_t ) (SMAt) 是时间点 ( t ) ( t ) (t) 的简单移动平均, ( X t ) ( X_t ) (Xt) 是时间点 ( t ) ( t ) (t) 的观测值, ( n ) ( n ) (n)是移动平均窗口的大小。
-
加权移动平均(WMA):
- 加权移动平均给不同时期的观测值赋予不同的权重。通常,最新的观测值权重最高,随着时期的减少,权重逐渐减小。
- WMA的计算公式为: [ W M A t = w 1 X t − 1 + w 2 X t − 2 + … + w n X t − n w 1 + w 2 + … + w n ] [ WMA_t = \frac{w_1X_{t-1} + w_2X_{t-2} + \ldots + w_nX_{t-n}}{w_1 + w_2 + \ldots + w_n} ] [WMAt=w1+w2+…+wnw1Xt−1+w2Xt−2+…+wnXt−n]
- 其中, ( W M A t ) ( WMA_t ) (WMAt) 是时间点 ( t ) ( t ) (t) 的加权移动平均, ( X t ) ( X_t ) (Xt) 是时间点 ( t ) ( t ) (t) 的观测值, ( w 1 , w 2 , … , w n ) ( w_1, w_2, \ldots, w_n ) (w1,w2,…,wn) 是权重。
-
指数加权移动平均(EMA):
- 指数加权移动平均是一种对最新观测值赋予更高权重的移动平均方法,而且不需要指定固定的窗口大小。
- EMA的计算公式为: [ E M A t = α X t + ( 1 − α ) E M A t − 1 ] [ EMA_t = \alpha X_t + (1-\alpha) EMA_{t-1} ] [EMAt=αXt+(1−α)EMAt−1]
- 其中, ( E M A t ) ( EMA_t ) (EMAt) 是时间点 ( t ) ( t ) (t) 的指数加权移动平均, ( X t ) ( X_t ) (Xt) 是时间点 ( t ) ( t ) (t)的观测值, ( α ) ( \alpha ) (α) 是平滑因子,通常取值在 (0, 1) 之间。
这三种方法在平滑时间序列中都有其应用场景,具体的选择取决于数据的性质和分析的需求。简单移动平均适用于周期性较为明显的数据,加权移动平均可以更灵活地对待不同时期的权重,而指数加权移动平均则更加关注最新的数据。
3. 自回归移动平均模型(ARMA):
ARMA 模型是由自回归部分(AR)和移动平均部分(MA)组成的线性模型。ARMA(p, q) 模型包括 p 阶自回归和 q 阶移动平均。
[ Y t = c + ϕ 1 Y t − 1 + ϕ 2 Y t − 2 + … + ϕ p Y t − p + ε t − θ 1 ε t − 1 − θ 2 ε t − 2 − … − θ q ε t − q ] [ Y_t = c + \phi_1 Y_{t-1} + \phi_2 Y_{t-2} + \ldots + \phi_p Y_{t-p} + \varepsilon_t - \theta_1 \varepsilon_{t-1} - \theta_2 \varepsilon_{t-2} - \ldots - \theta_q \varepsilon_{t-q} ] [Yt=c+ϕ1Yt−1+ϕ2Yt−2+…+ϕpYt−p+εt−θ1εt−1−θ2εt−2−…−θqεt−q]
- ( Y t ) ( Y_t ) (Yt)是时间点 ( t ) ( t ) (t)的观测值。
- ( c ) ( c ) (c) 是常数项。
- ( ϕ 1 , ϕ 2 , … , ϕ p ) ( \phi_1, \phi_2, \ldots, \phi_p ) (ϕ1,ϕ2,…,ϕp) 是自回归系数,表示当前观测值与前 ( p ) ( p ) (p) 个观测值的线性组合。
- ( ϵ t ) ( \epsilon_t ) (ϵt) 是白噪声误差,表示当前时刻的观测值与随机扰动的关系。
- ( θ 1 , θ 2 , … , θ q ) ( \theta_1, \theta_2, \ldots, \theta_q ) (θ1,θ2,…,θq) 是移动平均系数,表示当前时刻的观测值与过去 ( q ) ( q ) (q) 个时刻的随机误差的线性关系。
4. 自回归积分移动平均模型(ARIMA):
ARIMA模型详解
ARIMA 模型是 ARMA 模型的延伸,加入了差分(即积分)的概念。ARIMA(p, d, q) 模型包括 p 阶自回归、d 阶差分和 q 阶移动平均。是一种广泛应用于时间序列分析和预测的模型。ARIMA模型结合了自回归模型(AR)、差分(I,Integrated)和移动平均模型(MA)的元素,前面我们提到差分可以消除不平稳性,因此该模型可以适用于平稳或非平稳时间序列。
自回归积分移动平均模型(ARIMA)是一种用于时间序列分析和预测的统计模型。ARIMA模型包含三个主要部分:自回归部分(AR)、积分部分(I)和移动平均部分(MA)。
ARIMA(p, d, q)模型的数学表达式如下:
[ ( 1 − ϕ 1 B − ϕ 2 B 2 − … − ϕ p B p ) ( 1 − B ) d X t = ( 1 + θ 1 B + θ 2 B 2 + … + θ q B q ) ε t ] [ (1 - \phi_1 B - \phi_2 B^2 - \ldots - \phi_p B^p) (1 - B)^d X_t = (1 + \theta_1 B + \theta_2 B^2 + \ldots + \theta_q B^q) \varepsilon_t ] [(1−ϕ1B−ϕ2B2−…−ϕpBp)(1−B)dXt=(1+θ1B+θ2B2+…+θqBq)εt]
其中:
- ( X t ) ( X_t ) (Xt) 是时间序列的观测值。
- ( B ) ( B ) (B) 是滞后操作符(差分操作的一种表示)。
- ( ϕ 1 , ϕ 2 , … , ϕ p ) ( \phi_1, \phi_2, \ldots, \phi_p ) (ϕ1,ϕ2,…,ϕp) 是自回归系数,表示当前观测值与前 ( p ) ( p ) (p) 个观测值的线性组合。
- ( d ) ( d ) (d) 是差分次数,表示为了使时间序列平稳而需要进行的差分操作的次数(差分阶数)。
- ( θ 1 , θ 2 , … , θ q ) ( \theta_1, \theta_2, \ldots, \theta_q ) (θ1,θ2,…,θq) 是移动平均系数,表示当前观测值与前 ( q ) ( q ) (q) 个随机误差的线性组合。
- ( ε t ) ( \varepsilon_t ) (εt) 是白噪声误差项,表示不能由模型解释的随机部分。
ARIMA模型的目标是通过调整 ( p, d, q ) 的值来拟合时间序列,并使模型的残差尽可能地接近白噪声。
差分(Differences):差分是一种数学操作,用于计算一组数值序列中相邻数据点的差值。一阶差分其每一个值都是原时间序列中相邻两个值的差。二阶差分就是对一阶差分后的序列再次进行差分。
∇ Y t = Y t − Y t − 1 ( 1 ) 一阶差分 ∇ 2 Y t = ∇ ( Y t − Y t − 1 ) = ( Y t − Y t − 1 ) − ( Y t − 1 − Y t − 2 ) = ( Y t − 2 Y t − 1 − Y t − 2 ) ( 2 ) 二阶差分 \begin{aligned} &\nabla Y_t = Y_t-Y_{t-1} & (1)一阶差分 \\ & \nabla^2 Y_t = \nabla (Y_t-Y_{t-1}) \\ &=( Y_t-Y_{t-1} ) -(Y_{t-1}-Y_{t-2} ) \\ &=(Y_t-2Y_{t-1}-Y_{t-2})& (2) 二阶差分 \end{aligned} ∇Yt=Yt−Yt−1∇2Yt=∇(Yt−Yt−1)=(Yt−Yt−1)−(Yt−1−Yt−2)=(Yt−2Yt−1−Yt−2)(1)一阶差分(2)二阶差分
滞后(lag):滞后实际上是描述了时间序列数据点之间的时间差。举个例子,对于一个月度数据的时间序列, Y t − 1 Y_{t-1} Yt−1就代表了 Y t Y_t Yt的一个月的滞后。
差分的滞后(lag)与差分的阶数完全不同。正常的一阶差分是滞后为1的差分(lag-1 Differences),这代表在差分运算中,我们让相邻的两个观测值相减,即让间隔为(lag-1)的两个观测值相减。因此,当滞后为2时,则代表我们需要让相隔1个值的两个观测值相减。
让我们通过一个具体的例子来了解如何进行滞后操作。
假设我们有以下一组时间序列数据:
Y t = 4 , 8 , 6 , 5 , 3 , 4 Y_t =4, 8, 6, 5, 3, 4 Yt=4,8,6,5,3,4
如果我们想要计算这个时间序列的一阶滞后序列,我们只需要将原序列向左移动一个单位,然后删除掉移动后超出的数据点,具体操作如下:
我们先将整个序列向左移动一个单位,得到 { 4, 8, 6, 5, 3, 4,_}。
然后,我们删除掉移动后超出的数据点,得到滞后序列 { 8, 6, 5, 3, 4}。
如果我们想要计算二阶滞后序列,我们可以按照同样的方式进行操作:
我们先将一阶滞后序列再向左移动一个单位,得到 { 8, 6, 5, 3, 4,_}。
然后,我们删除掉移动后超出的数据点,得到二阶滞后序列 { 6, 5, 3, 4}。
滞后差分:滞后差分(Lag Differences)是在进行差分操作时,不是用相邻的观测值进行相减,而是用相隔一定数量(即滞后数量)的观测值进行相减。这种操作通常在时间序列具有周期性的情况下非常有用,例如,当我们处理的数据随季节有规律地波动或者随一周的时间有规律地波动时。带滞后的差分也叫做多步差分,例如,滞后为2的差分就叫做2步差分。相比起平时不怎么使用的高阶差分,多步差分应用非常广泛。
假设我们有以下一组时间序列数据:
Y t = 4 , 8 , 6 , 5 , 3 , 4 Y_t =4, 8, 6, 5, 3, 4 Yt=4,8,6,5,3,4
现在,我们想要计算这个时间序列的2步滞后差分(lag-2 Differences)序列。首先,我们让相隔1个值的两个观测值相减,具体操作如下:
首先,我们对序列进行滞后2差分运算(先求二阶滞后序列,再左对齐相减),即进行6-4、5-8、3-6、4-5的运算。
最终我们得到的新的时间序列:2,-3,-3,-1
当我们拿到一个陌生的数据集时,可能会思考应当使用AR,MA,还是结合AR和MA的模型,一个简单的准则是画出ACF和PACF曲线,根据其特征来判断
在实际分析过程中,我们也可以一律使用ARIMA模型,因为AR,MA,ARMA都是它的一种特殊情况。
5. 季节性自回归积分移动平均模型(SARIMA):
SARIMA 模型在 ARIMA 模型的基础上引入了季节性成分,包括季节性自回归、季节性差分和季节性移动平均。
6. VAR 模型:
VAR(Vector Autoregression)模型是一种多变量时间序列模型,用于描述和分析多个相关联的时间序列变量之间的动态关系。VAR模型是自回归模型的扩展,它允许多个变量相互影响,而不仅仅是单个变量受到自身滞后项的影响。
V A R ( p ) VAR(p) VAR(p) 模型的数学表达式如下:
[ Y t = c + ϕ 1 Y t − 1 + ϕ 2 Y t − 2 + … + ϕ p Y t − p + ε t ] [ Y_t = c + \phi_1 Y_{t-1} + \phi_2 Y_{t-2} + \ldots + \phi_p Y_{t-p} + \varepsilon_t ] [Yt=c+ϕ1Yt−1+ϕ2Yt−2+…+ϕpYt−p+εt]
其中:
- ( Y t ) ( Y_t ) (Yt) 是一个 ( K ) ( K ) (K)维向量,包含 ( K ) ( K ) (K)个时间序列变量在时刻 ( t ) ( t) (t) 的观测值。
- ( c ) ( c ) (c) 是截距项,是一个 ( K ) ( K ) (K)维向量。
- ( ϕ 1 , ϕ 2 , … , ϕ p ) ( \phi_1, \phi_2, \ldots, \phi_p ) (ϕ1,ϕ2,…,ϕp) 是 ( K × K ) ( K \times K ) (K×K) 的系数矩阵,分别表示每个时间序列变量受到自身滞后项的影响。
- ( ε t ) ( \varepsilon_t ) (εt) 是一个 ( K ) ( K ) (K)维向量,表示白噪声误差项。
VAR模型的阶数 ( p ) 表示每个变量受到多少个滞后项的影响。模型的参数 ( ϕ 1 , ϕ 2 , … , ϕ p ) ( \phi_1, \phi_2, \ldots, \phi_p ) (ϕ1,ϕ2,…,ϕp) 可以通过估计得到,通常使用最小二乘法或其他估计方法。
VAR模型的优势在于能够同时考虑多个变量之间的相互影响,适用于描述多变量系统的动态演化。VAR模型的应用包括宏观经济学、金融市场分析、宏观经济政策评估等领域。