Skip to content

Latest commit

 

History

History
447 lines (266 loc) · 14.1 KB

时间序列分析.md

File metadata and controls

447 lines (266 loc) · 14.1 KB

时间序列分析

时间序列

将某种现象的指标数值按照时间顺序排列而成的数值序列。(构成要素:时间要素、数值要素)

作用

  1. 描述过去

  2. 总结规律

  3. 预测未来

时期时间序列(可以叠加表示更长时期的结果)

现象在一定时间内发展的结果

时点时间序列(不可以叠加)

一定时点上的瞬时水平

数值变化规律

长期变动趋势(T)

长期的趋势(相当长的一段时间里)

季节变动规律(S):

以月及一下单位为周期发生规律性变动

循环变动规律(C)

以若干年为周期,波浪状的周期变动,典型的是市场的周期和国家的商业周期。

不规则变动(I)

由某些随机因素导致的数值变化,不可预知且没有规律。

如果四种变动是相互独立的关系,那么叠加模型可以表示为

$$ Y = T+S+C+I $$

如果四种变动量之间相互影响,那么使用的乘积模型为

$$ Y = T×S×C×I $$

如果数据有周期性才能做时间序列分解,例如数据是月份数据和季度数据,如果是年份数据则不行

如果再时间序列图上,随着时间推移,波动越来越大,那么应该用乘积模型,如果保持恒定,则应该用叠加模型。

替换缺失值的方法

1.序列平均值

整个序列的平均数替代

2.临近点平均值

用邻近的几个点的平均数替代

3.临近点的中位数

用临近的几个点的中位数替代

4.线性插值

只用相邻两个点的平均数替代

5.临近点的线性趋势

将时期数作为x,时间序列值作为y进行回归

具体的步骤

• 作时间序列图

• 判断时间序列包含的变动成分

• 时间序列分解(有周期性且包含长期趋势、季节变动或循环变动)

• 建立时间序列分析模型

• 预测未来的指标数值

指数平滑模型

简单指数平滑(不含趋势和季节)

$$ \hat{x_{t + 1}}=\alpha x_t+\alpha(1-\alpha)x_{t-1}+\alpha(1-\alpha)^2x_{t-2}+\alpha(1-\alpha)^{t-1}x_1+(1-\alpha)^tl_0 $$

主要就是迭代最终得到结果

线性趋势模型(线性趋势、不含有季节成分)

霍特线性趋势模型

布朗线性趋势模型

$$ \begin{cases} l_t=\alpha x_t+(1-\alpha)(l_{t-1}+b_{t-1})\\ b_t=\beta(l_t-l_{t-1})+(1-\beta)b_{t-1}\\ \hat{x_{t+h}}=l_t+hb_t,\ \ h=1,2... \end{cases} $$

$$ \begin{cases} t:当前期\\ h:预测超前期数,也称为预测步长\\ x_t:第t期的实际观测值\\ l_t:时刻t的预估水平\\ b_t:时刻t的预测趋势(或坡度) \alpha:水平的平滑参数\\ \beta:趋势的平滑参数\\ \end{cases} $$

其中如果$\alpha$=$\beta$则为布朗模型

阻尼趋势模型(线性趋势逐渐减弱且不含季节成分)

$$ \begin{cases} l_t=\alpha x_t+(1-\alpha)(l_{t-1}+\phi b_{t-1})\ (水平平滑方程)\\ b_t=\beta(l_t-l_{t-1})+(1-\beta)\phi b_{t-1}\ (趋势平滑方程)\\ \hat{x_{t+h}}=l_t+(\phi + \phi^2 + .... + \phi^h))b_t,\ \ h=1,2...\ \ (预测方程) \end{cases} $$

$$ \begin{cases} \alpha:水平的平滑参数\\ \beta:趋势的平滑参数\\ \phi:阻尼参数(0\le\phi\le1) \end{cases} $$

简单季节性模型(含有稳定的季节成分、不含趋势)

$$ \begin{cases} l_t=\alpha (x_t-s_{t-m})+(1-\alpha)l_{t-1}(水平平滑方程)\ s_t=\gamma(x_t-l_{t-1})+(1-\gamma)s_{t-m}(季节平滑方程)\ \hat{x_{t+h}}=l_t+s_{t+h-m(k+1)},\ \ k = \frac{h-1}{m} \end{cases} $$

$$ \begin{cases} m:周期长度(月度数据取12,季度数据取4)\\ \alpha:水平的平滑参数\\ \gamma:季节的平滑参数\\ h:预测超前期数\\ \hat{x_{t+h}}:第h期的预测值 \end{cases} $$

温特加法模型(含有线性趋势和稳定的季节成分)

$$ \begin{cases} l_t=\alpha (x_t-s_{t-m})+(1-\alpha)(l_{t-1}+b_{t-1})(水平平滑方程)\ b_t=\beta(l_t-l_{t-1})+(1-\beta)b_{t-1}(趋势平滑方程)\ s_t = \gamma(x_t-l_{t-1}-b_{t-1})+(1-\gamma)s_{t-m}(季节平滑方程)\ \hat{x_{t+h}}=l_t+hb_t+s_{t+h-m(k+1)},\ \ k = \frac{h-1}{m} \end{cases} $$

$$ \begin{cases} m:周期长度(月度数据取12,季度数据取4)\\ \alpha:水平的平滑参数\\ \beta:趋势的平滑参数\\ \gamma:季节的平滑参数\\ \hat{x_{t+h}}:第h期的预测值 \end{cases} $$

温特乘法模型(含有线性趋势和不稳定的季节成分)

$$ \begin{cases} l_t=\alpha \frac{x_t}{s_{t-m}}+(1-\alpha)(l_{t-1}+b_{t-1})(水平平滑方程)\ b_t=\beta(l_t-l_{t-1})+(1-\beta)b_{t-1}(趋势平滑方程)\ s_t = \gamma \frac{x_t}{l_{t-1}+b_{t-1}}+(1-\gamma)s_{t-m}(季节平滑方程)\ \hat{x_{t+h}}=(l_t+hb_t)s_{t+h-m(k+1)},\ \ k = \frac{h-1}{m} \end{cases} $$

$$ \begin{cases} m:周期长度(月度数据取12,季度数据取4)\\ \alpha:水平的平滑参数\\ \beta:趋势的平滑参数\\ \gamma:季节的平滑参数\\ \hat{x_{t+h}}:第h期的预测值 \end{cases} $$

一元时间序列分析模型

时间序列的平稳性

若时间序列{$x_t$}满足以下三个条件:

(1) $E$($x_t$) = $E$($x_{t-s}$) = $u$ (均值为固定常数)

(2) $Var(x_t)$ = $Var(x_{t-s})$ = $\sigma^2$

(3) $Cov(x_t,x_{t-s})$ = $0$ ($s \neq 0$)

则称{$x_t$}为白噪声序列。显然,白噪声序列是平稳时间序列的一个特例。

差分方程

将某个时间序列变量表示为该变量的滞后项、时间和其他变量的函数,这样的一个函数方程被称为差分方程

$$y_t=\alpha_0 + \alpha_1 y_{t-1} + \alpha_2 y_{t-2} + \alpha_p y_{t-p} + \epsilon_t$$

(自回归$AR(p)$模型)

$$y_t = \epsilon_t + \beta_1 \epsilon_{t-1} + \beta_2 \epsilon_{t-2} + ... + \beta_q \epsilon_{t-q}$$

(移动平均$MA(q)$模型)

$$y_t = \alpha_0 + \sum_{i=1}^{p} {\alpha_i y_{t-i}} + \epsilon_t + \sum_{i=1}^{q} {\beta_i \epsilon_{t-i}}$$

(自回归移动平均$ARMA(p, q)$模型)

$$y_t = a + b y_{t-1} + cz_{t} + dz_{t - 1} + \epsilon_t$$

$$y_t = a + b y_{t-1} + ct + \epsilon_t$$

注: $\epsilon_t$没有特殊说明一般默认为白噪声序列

差分方程的齐次部分: 只包含该变量自身和它的滞后项的式子。

差分方程的特征方程

差分方程的齐次部分: 只包含该变量自身和它的滞后项的式子。

$$y_t = \alpha_0 + \sum_{i = 1}^{p} {\alpha_i y_{t - i}} + \epsilon_t + \sum_{i=1}^{p}\beta_i \epsilon_{t-i}$$

($ARMA(p,q)$模型)

齐次部分: $$y_t = \sum_{i=1}^{p} {\alpha_i y_{t - i}}$$

将齐次部分转换为特征方程(代数方程): 令$y_t = x^t$后带入齐次方程化简

$x^t = \sum_{i=1} ^{p} {\alpha_i x^{t - i}} \Rightarrow x^p = \alpha_1 x^{p-1} + \alpha_2 x^{p-2} + ... +\alpha_p$

(同时除以$x^{t-p}$即可)

特征方程是一个$p$阶多项式,对应可求出$p$个解 (可能有实根,也可能有虚根)

这$p$个解的模长(实根取绝对值,虚根取模)的大小决定了形为$ARMA(p,q)$模型的{$y_t$}是否平稳。

滞后算子

用符号$L$表示滞后算子: $L^i y_t = y_{t-i}$

且有如下的性质:

(1) $LC = C$ (C为常数)

(2) ($L^i+L^j$)$y_t$ = $y_{t - i} + y_{t - j}$

(3) $L^iL^jy_t = y_{t-i-j}$

$ARMA(p,q)$模型:

$y_t$=$\alpha_0$+$\sum_{i=1}^{p}{\alpha_i y_{t-i}}$ + $\epsilon_t$ + $\sum_{i=1}^{q}{\beta_i \epsilon_{t-i}}$

$\Rightarrow$ $y_t = \alpha_0 + \sum_{i=1}^{p} {\alpha_i L^{i} y_t}$ + $\epsilon_t$ + $\sum_{i=1}^{q} {\beta_i L^i \epsilon_t}$

$\Rightarrow$ $(1-\sum_{i=1}^{p} {\alpha_i L^i})y_t = \alpha_0 + (1 + \sum_{i=1}^{q} {\beta_i L^i}) \ epsilon_t$

$\Rightarrow$ $(1 - \alpha_1 L - ... - \alpha_p L^p) y_t = \alpha_0 + (1 + \beta_1 L + ... + \beta_q L^q) \epsilon_t$

一阶差分:

$\Delta y_t = y_t - y_{t-1} = (1 - L) y_t$

二阶差分:

$\Delta^2y_t = \Delta(\Delta y_t) = \Delta(y_t - y_{t-1}) = (1-L)^2 y_t$

d阶差分:

$\Delta^d y_t = (1-L)^d y_t$

季节差分(m 为周期):

$\Delta y_t - \Delta y_{t-m} = (1 - L) (1-L^m)y_t$

$AR(p)$模型

$AR(p)$模型一定是平稳的时间序列模型,如果原数据不稳定也要先转换为平稳的数据才能进行建模。

$p$阶的自回归模型($AR(p)$模型):

$y_t = \alpha_0 + \alpha_1 y_{t-1} + \alpha_2 y_{t-2} + ... + \alpha_p y_{t-p} + \epsilon_t$

$\epsilon_t$是方差为$\sigma^2$的白噪声序列

(自回归:将自己的$1 \to p$阶滞后项视为自变量来进行回归)

自回归只能适用于预测与自身前期相关的经济现象,即受自身历史因素影响较大的经济现象,如矿的开采量,各种自然资源的产量等。对于受社会因素影响较大的经济现象,不宜采用自回归,而应使用可纳入其他变量的向量自回归模型(多元时间序列)。

$AR(p)$模型平稳的条件

$p$阶的自回归模型($AR(p)$模型)

$y_t=\alpha_0+\alpha_1 y_{t-1} + \alpha_2 y_{t-2} + ... + \alpha_p y_{t-p} + \epsilon_t$

$\epsilon_t$是方差为$\sigma^2$的白噪声序列

(自回归: 将自己的1至$p$阶滞后项视为自变量来进行回归)

将齐次部分转换为特征方程(代数方程):

$x^p = \alpha_1 x^{p - 1} + \alpha_2 x^{p-2} + ... + \alpha_p$ (同时除以$x^{t-p}$即可)

特征方程是一个$p$阶多项式,对应可求出$p$个解(可能有实根,也可能有虚根)

(1) 如果这$p$个解的模长均小于1,则{$y_t$}平稳,我们也称{$y_t$}对应的$AR(p)$模型的平稳。

(2) 如果这$p$个解有$k$个解的模长等于1,则{$y_t$}为$k$阶单位根过程。

($k$阶段单位根过程可经过$k$阶差分变为平稳的时间序列)

(3) 如果这$p$个根中至少有一个的模长大于1,则{$y_t$}为爆炸过程。(现实生活中很少出现)

$MA(q)$模型

$q$阶移动平均过程($MA(q)$模型):

$y_t = \epsilon_t + \beta_1 \epsilon_{t-1} + \beta_2 \epsilon_{t-2} + ... + \beta_q \epsilon_{t-q}$

$MA(1)$ ~ $AR(\infty)$

类似的,我们也可以在某些条件下(可逆条件)也可以将$MA(q)$模型也转换为无穷阶的自回归过程。

只要$q$是常数,那么$MA(q)$模型一定是平稳的。

$ARMA(p, q)$模型

试图将前两种结合起来,共同模拟产生既有时间序列样本数据的那个随机过程的模型。

$ARMA(p,q)$模型:

$y_t=\alpha_0 + \sum_{i=1}^p \alpha_i y_{t-i} + \epsilon_t + \sum_{i=1}^q \beta_i \epsilon_{t-i}$

$\Rightarrow$ $y_t = \alpha_0 + \sum_{i=1}^p \alpha_i L^i y_t + \epsilon_t + \sum_{i=1}^{q}\beta_i L^i \epsilon_t$

$\Rightarrow$ ($1 - \sum_{i=1}^{p} \alpha_i L^i$)$y_t$ = $\alpha_0 + (1 + \sum_{i=1}^{q} \beta_i L^i) \epsilon_t$

平稳性只和$AR(p)$部分相关。

$ACF$自相关系数

(1) 相关系数

$X$和$Y$是两个随机变量,则$\rho = \frac{cov(X, Y)}{\sqrt{Var(X)} \sqrt{Var(Y)}}$即为相关系数(表示X和Y的线性关系)

(2) 自相关系数

我们探讨的时间序列假定是平稳的: (1) $E(x_t) = E(x_{t-s}) = u$

(2) $Var(x_t) = Var(x_{t-s}) = \sigma^2$

(3) $Cov(x_t, x_{t-s}) = \gamma_s$

我们自定义相关系数为$\rho_s = \frac{cov(x_t, x_{t-s})}{\sqrt{Var(x_t)} \sqrt{Var(x_{t-s})}} = \frac{\gamma_s}{\gamma_0}$

$\gamma_0 = Cov(x_t, x_t) = Var(x_t)$

则样本的自相关系数:

$r_s = \hat{\rho_s} = \frac{\sum_{t = s + 1}^{T}{(x_t - \bar{x})(x_{t-s}-\bar{x})}}{\sum_{t=1}^{T}(x_t - \bar{x})^2}$

如果{$\epsilon_t$}是白噪声序列,那么$\rho_s$ = $\begin{cases}1, s = 0\ 0, s \neq 0\end{cases}$

注意: ACF和接下来要介绍的PACF使用的前提是数据为平稳序列。

(4) 偏自相关函数

仍然假设{$x_t$}为平稳的序列,刚刚我们计算的自相关函数反映的是$x_t$和$x_{t-s}$这两个相隔时长为$s$的取值的线性相关程度,这个线性相关程度不是"直接的",可能受到中间时刻的影响。而偏自相关系数就是用来衡量$x_t$和$x_{t-s}$在剔除掉中间所有取值的线性关系。

$x_t = \phi_{s_1} x_{t-1} + \phi_{s_2} x_{t - 2} + \phi_{s_3} x_{t-3} + \phi_{s_s} x_{t-s} + \rho_t$

注: $\phi_{s_{1}} 、 \phi_{s_{2}}...\phi_{s_{s}}$分别表示$x_{t-s}$这一项与$x_t$之间的线性相关系数,通过引入这中间的$s-1$项,我们可以分离出$x_t$和$x_{t-s}$之间直接的关系,且这种关系是线性的,这也就是所得的偏自相关系数。

其中$\rho_t = x_t - \phi_{s_1} x_{t-1} - \phi_{s_2} x_{t - 2} - \phi_{s_3} x_{t-3} - ... - \phi_{s_s} x_{t-s}$是平稳过程

鉴定模型

模型 ACF PACF
$AR(p)$ 逐渐衰减、即拖尾 $p$阶后截尾
$MA(q)$ $q$阶后截尾 逐渐衰减,即截尾
$ARMA(p, q)$ 逐渐衰减,即拖尾 逐渐衰减,即拖尾

$ARIMA(p, d, q)$模型

$ARIMA(p, d, q)$模型:

$$ y't=\alpha_0+\sum{i=1}^{p}\alpha_i y'{t - i} + \epsilon_t + \sum{i=1}^{q}\beta_i \epsilon_{t-i} $$

且$y'_t = \Delta^d y_t = (1-L)^d y_t$

$(1 - \sum_{i=1}^{p}\alpha_i L^i)(1-L)^d y_t = \alpha_0 + (1+\sum_{i=1}^{q} \beta_i L^i) \epsilon_t$

即$AR(p) \ × difference × y_t = \alpha_0 + MA(q)$

简述:就是需要进行差分才能看到最终恰当的结果。

$SARIMA(p,d,q)$模型

在$ARIMA$模型中加入季节因素

$(1 - \sum_{i=1}^{p}\phi_i L^i)(1-\sum_{i=1}^{p}\Phi_i L^{mi})(1-L)^d(1-L^m)^D y_t = \alpha_0 + (1+\sum_{i=1}^{q} \theta_i L^i) (1+\sum_{i=1}^{Q}\Theta_i L^{mi}))$

总结:就是乘进去。

Spss时间序列建模思路

(1) 处理数据的缺失值问题、生成时间变量并画出时间序列图;

(2) 数据是否为季度数据或者月份(至少有两个完整的周期,即两年),如果是的话则要观察图形中是否存在季节性波动。

(3) 根据时间序列图大致判断是否为平稳序列。

(4) 打开Spss,分析---时间序列预测-创建传统模型,看看Spss专家建模器得出的最优的模型。

(5) 如果最后的结果是$ARIMA(p,0,q)$模型,那么我们画出ACF和PACF图形进行分析。如果和季节性相关,那么我们可以考虑使用时间序列分析分解。