本文主要是介绍【计量经济学】时间序列预测,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
时间序列回归模型–潘登同学的计量经济学笔记
文章目录
- 时间序列回归模型--潘登同学的计量经济学笔记
- 时间序列数据
- 时间序列回归模型
- 静态模型(static model)
- 有限分布滞后项模型(finite distributed lag model)
- 冲击倾向
- 长期倾向
- 经典假设下OLS性质
- TS.1 线性于参数
- TS.2 无完全共线性
- TS.3 零条件均值
- 导致TS.3无效的可能原因
- OLS无偏性
- 另外两个假定
- TS.4 同方差性
- TS.5 无序列相关性
- OLS的样本方差
- 方差的无偏估计
- 经典线性模型假定下的推断
- TS.6 正态性
- TS.7 正态抽样分布
- 趋势
- 指数趋势
- 伪回归问题
- 除趋势解释
- 含趋势的 R 2 R^2 R2
- 季节性
时间序列数据
核心理解: 时间序列数据是一个标有时间序列下标的随机变量序列,也就是随机过程
当我们搜集到一个时间序列数据时,我们便得到该随机过程的一个可能结果或实现, 我们只能看到一个实现,因为我们不能让时间倒转重新开始这个过程。如果特定的历史条件有所不同,我们通常会得到这个随机过程的另一种不同实现,这就是随机过程的含义。
时间序列回归模型
静态模型(static model)
y t = β 0 + β 1 x t + u t y_t = \beta_0 + \beta_1 x_t + u_t yt=β0+β1xt+ut
‘静态模型’源于在设定模型时, y y y与 z z z同期的事实。若认为 z z z在时间 t t t的一个变化对 y y y有直接影响, △ y t = β 1 △ x t \triangle y_t = \beta_1 \triangle x_t △yt=β1△xt,就可以假设一个静态模型…
有限分布滞后项模型(finite distributed lag model)
y t = α 0 + δ 0 z t + δ 1 z t − 1 + δ 2 z t − 2 + u t y_t = \alpha_0 + \delta_0 z_t + \delta_1 z_{t-1} + \delta_2 z_{t-2} + u_t yt=α0+δ0zt+δ1zt−1+δ2zt−2+ut
冲击倾向
这是一个二阶的FDL,为了理解系数的作用,举个栗子
… \ldots … | t − 2 t-2 t−2 | t − 1 t-1 t−1 | t t t | t + 1 t+1 t+1 | t + 2 t+2 t+2 | … \ldots … | |
---|---|---|---|---|---|---|---|
z | c | c | c | c + 1 c+1 c+1 | c | c | c |
那么根据模型,可以写出下式(假设误差为0)
y t − 1 = α 0 + δ 0 c + δ 1 c + δ 2 c y t = α 0 + δ 0 ( c + 1 ) + δ 1 c + δ 2 c y t + 1 = α 0 + δ 0 c + δ 1 ( c + 1 ) + δ 2 c y t + 2 = α 0 + δ 0 c + δ 1 c + δ 2 ( c + 1 ) y t + 3 = α 0 + δ 0 c + δ 1 c + δ 2 c y_{t-1} = \alpha_0 + \delta_0 c + \delta_1 c + \delta_2 c \\ y_{t} = \alpha_0 + \delta_0 (c+1) + \delta_1 c + \delta_2 c \\ y_{t+1} = \alpha_0 + \delta_0 c + \delta_1 (c+1) + \delta_2 c \\ y_{t+2} = \alpha_0 + \delta_0 c + \delta_1 c + \delta_2 (c+1) \\ y_{t+3} = \alpha_0 + \delta_0 c + \delta_1 c + \delta_2 c \\ yt−1=α0+δ0c+δ1c+δ2cyt=α0+δ0(c+1)+δ1c+δ2cyt+1=α0+δ0c+δ1(c+1)+δ2cyt+2=α0+δ0c+δ1c+δ2(c+1)yt+3=α0+δ0c+δ1c+δ2c
根据前两个方程,得到 y t − y t − 1 = δ 0 y_t-y_{t-1}=\delta_0 yt−yt−1=δ0,表明 δ 0 \delta_0 δ0是 z z z在 t t t时期提高一个单位所引起 y y y的即期变化, δ 0 \delta_0 δ0通常被称作冲击倾向(impact propensity)或冲击乘数(impact multiplier).
类似地, δ 1 = y t + 1 − y t − 1 \delta_1 = y_{t+1} - y_{t-1} δ1=yt+1−yt−1这个是即期变化发生后,下一期 y y y的变化, δ 2 = y t + 2 − y t − 1 \delta_2 = y_{t+2} - y_{t-1} δ2=yt+2−yt−1这个是,而在 t + 3 t+3 t+3期, y y y回到了初始水平,这是因为我们只假定了 z z z中只有两期滞后。
如果将 δ j \delta_j δj作为 j j j的函数作图,变得到滞后分布(lag distribution)
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-P6VvUxWR-1649407145508)(滞后分布.png)]
上图意味着,最大的影响发生在第一期滞后;滞后分布的含义是: 如果我们把 y y y的初始值标准化为0,这个滞后分布就描绘出 z z z暂时提高一个单位所导致 y y y的随后所有取值
长期倾向
当 z z z永久提高所导致的 y y y的变化同样重要,根据模型我们可以写出下式
y t − 1 = α 0 + δ 0 c + δ 1 c + δ 2 c y t = α 0 + δ 0 ( c + 1 ) + δ 1 c + δ 2 c y t + 1 = α 0 + δ 0 ( c + 1 ) + δ 1 ( c + 1 ) + δ 2 c y t + 2 = α 0 + δ 0 ( c + 1 ) + δ 1 ( c + 1 ) + δ 2 ( c + 1 ) y_{t-1} = \alpha_0 + \delta_0 c + \delta_1 c + \delta_2 c \\ y_{t} = \alpha_0 + \delta_0 (c+1) + \delta_1 c + \delta_2 c \\ y_{t+1} = \alpha_0 + \delta_0 (c+1) + \delta_1 (c+1) + \delta_2 c \\ y_{t+2} = \alpha_0 + \delta_0 (c+1) + \delta_1 (c+1) + \delta_2 (c+1) \\ yt−1=α0+δ0c+δ1c+δ2cyt=α0+δ0(c+1)+δ1c+δ2cyt+1=α0+δ0(c+1)+δ1(c+1)+δ2cyt+2=α0+δ0(c+1)+δ1(c+1)+δ2(c+1)
随着 z z z从第 t t t期开始永久提高,一期后 y y y提高了 δ 0 + δ 1 \delta_0 + \delta_1 δ0+δ1,两期后提高了 δ 0 + δ 1 + δ 2 \delta_0 + \delta_1 + \delta_2 δ0+δ1+δ2,两期以后, y y y没有进一步变化。 z z z的当期及滞后项系数之和 δ 0 + δ 1 + δ 2 \delta_0+\delta_1+\delta_2 δ0+δ1+δ2,等于z的永久性提提高,导致y的长期变化,这被称为长期倾向(long run propensity,LRP)或长期乘数(long-run multiplier)
经典假设下OLS性质
与横截面分析类似, 时间序列回归也要做相关假定, 但假定的内容与横截面回归有些许差异…
TS.1 线性于参数
随机过程 { ( x t 1 , x t 2 , … , x t k , y i ) : t = 0 , 1 , … , n } \{(x_{t1},x_{t2},\ldots,x_{tk},y_i):t=0,1,\ldots,n\} {(xt1,xt2,…,xtk,yi):t=0,1,…,n}服从线性模型
y i = β 0 + β 1 x i 1 + … + β k x i k + u i y_i = \beta_0 + \beta_1 x_{i1} + \ldots + \beta_k x_{ik} + u_i yi=β0+β1xi1+…+βkxik+ui
其中, { u t : t = 1 , 2 , … , n } \{u_t: t=1,2,\ldots,n\} {ut:t=1,2,…,n}是误差或干扰序列。其中, n n n是观测次数
如果将解释变量 x x x视作矩阵 X t , j X_{t,j} Xt,j,第 t t t行表示时刻 t t t的横截面数据,第 j j j列则表示变量 j j j在时间上的变化
TS.2 无完全共线性
在样本中,没有任何自变量是恒定不变的,或者是其它自变量的一个完全的线性组合; 该假定允许解释变量之间相关,但是不允许样本中的完全相关。
TS.3 零条件均值
对每一个 t t t,给定所有时期的解释变量,误差项 u i u_i ui的期望值为0
E ( u i ∣ X ) = 0 , t = 1 , 2 , … , n E(u_i|X) = 0 , t=1,2,\ldots,n E(ui∣X)=0,t=1,2,…,n
以横截面分析中的说法,从无关性角度来考虑这个假定最为容易。 这个假定意味着, t t t时期的误差项 u i u_i ui与每个时期的任何解释变量都无关。
回想横截面的零条件均值,其实是TS.3的特例
E ( u i ∣ x t 1 , … , x t k ) = E ( u i ∣ X t ) = 0 E(u_i|x_{t1},\ldots,x_{tk}) = E(u_i|X_t) = 0 E(ui∣xt1,…,xtk)=E(ui∣Xt)=0
这就是在一个时期中, u i u_i ui与同时期的解释变量无关,此时我们称 x t j x_{tj} xtj是同期外生的
但TS.3不仅仅要求同期外生性: 即使 s ≠ t s\neq t s=t, u i u_i ui也必须与 x s j x_{sj} xsj无关。此时,我们称解释变量是严格外生的
另外一个重要的方面就是,假定TS.3并没有限制不同时期自变量或 u i u_i ui的相关性,他只是说, u i u_i ui的平均值与任何事情的解释变量都不相关。
导致TS.3无效的可能原因
导致TS.3无效的两个可能原因主要是: 遗漏变量和对某些回归元的测量误差。
考虑如下模型:
y t = β 0 + β 1 z t + u t y_t = \beta_0 + \beta_1 z_t + u_t yt=β0+β1zt+ut
假定TS.3不但要求 u t 和 z t u_t和z_t ut和zt不相关,而且要求 u t 与 z t u_t与z_t ut与zt的过去值和将来值都不相关。这有两重含义,
- z 对 y z对y z对y没有滞后影响,如果 z 对 y z对y z对y的确有滞后影响,那就应该估计一个分布滞后模型
- 严格外生性排除了误差项的即期变化,导致 z z z未来变化的可能性,这就有效排除了 y 对 z y对z y对z未来值的反作用
对于上面模型,假如 z t z_t zt表示农民的劳动投入量, y t y_t yt表示农作物产量,假定 u t u_t ut与过去的劳动投入量都无关; 一旦农民根据上一年劳动投入量来决定今年的劳动投入量,那么 u t u_t ut与 z t + 1 z_{t+1} zt+1可能就不是无关的,因为大的 u t u_t ut导致大的 y t y_t yt进而导致小的 z t + 1 z_{t+1} zt+1,这种变量就可能不是严格外生的
政策变量,如货币供给的增长、福利开支、高速公路的限速等经常受结果变量过去的影响。在社会科学中,很多解释变量都明显违背严格外生性假定
OLS无偏性
在满足TS.1-3,以 X X X为条件,OLS估计量是无偏的,并存在
E ( β ^ j ) = β j E(\hat{\beta}_j) = {\beta}_j E(β^j)=βj
另外两个假定
TS.4 同方差性
以 X X X为条件,在所有时期 t , u t t,u_t t,ut的方差都相等:
V a r ( u t ∣ X ) = V a r ( u t ) = σ 1 , t = 1 , 2 , … , n Var(u_t|X) = Var(u_t) = \sigma^1, t=1,2,\ldots,n Var(ut∣X)=Var(ut)=σ1,t=1,2,…,n
TS.5 无序列相关性
以X为条件,任意两个不同时期的误差都不相关:
C o r r ( u t , u s ∣ X ) = 0 , ∀ s ≠ t Corr(u_t,u_s|X) = 0, \forall s\neq t Corr(ut,us∣X)=0,∀s=t
当上式不成立时,就认为误差有序列相关或自相关的问题
OLS的样本方差
在时间序列高斯-马尔科夫假定TS.1到TS.5下,以 X X X为条件, β ^ j \hat{\beta}_j β^j的条件为方差
V a r ( β j ^ ∣ X ) = σ 2 S S T j ( 1 − R j 2 ) , j = 1 , 2 , … , k Var(\hat{\beta_j}|X) = \frac{\sigma^2}{SST_j(1-R_j^2)},j=1,2,\ldots,k Var(βj^∣X)=SSTj(1−Rj2)σ2,j=1,2,…,k
其中, S S T j 是 x t j SST_j是x_{tj} SSTj是xtj的总平方和(固定 j j j), R j 2 R_j^2 Rj2是所有其他自变量回归得到的 R 2 R^2 R2
上式方差基本上与在截面数据推导的方差一致,而且导致方差变大的因素(如多重共线性)都与截面数据的结论一致
方差的无偏估计
在TS.1-TS.5下,估计量 σ 2 ^ = S S R d f \hat{\sigma^2} = \frac{SSR}{df} σ2^=dfSSR是 σ 2 \sigma^2 σ2的一个无偏估计量,其中 d f = n − k − 1 df=n-k-1 df=n−k−1
在TS.1-TS.5下,以 X X X为条件,OLS估计量是最优线性无偏估计
经典线性模型假定下的推断
为了能够使用通常的OLS标准误,t统计量和F统计量,我们通常需要增加最后一个假定,他类似于横截面分析中所用的正态性假定
TS.6 正态性
误差 u t u_t ut独立于 X X X,且具有独立同分布 N ( 0 , σ 2 ) N(0,\sigma^2) N(0,σ2)
TS.7 正态抽样分布
在前6个假定下,以 X X X为条件,OLS估计量遵循正态分布,而且在原假设下,每个t统计量服从t分布,F统计量服从F分布,通常构造的置信区间也是有效的
趋势
在很多情况下,两个时间序列过程表现出相关性,仅仅是因为,由于某些无法观测的因素的作用,二者具有共同的时间趋势而已。如果忽略两个序列按照相同或者相反趋势延伸的事实,会导致错误的结论:认为一个变量的变化由另一个变量的变化导致。
一个能将统计模型描述有趋势行为的简单模型是
y t = α 0 + α 1 t + e t y_t = \alpha_0 + \alpha_1 t + e_t yt=α0+α1t+et
其中, { e t } \{e_t\} {et}是一个独立同分布(i.i.d.)的序列,且 E ( e t ) = 0 , V a r ( e t ) = σ t 2 E(e_t)=0,Var(e_t)=\sigma_t^2 E(et)=0,Var(et)=σt2。上式形成了一个线性时间趋势,当 △ e t = 0 \triangle e_t = 0 △et=0时,
△ y t = y t − y t − 1 = α 1 \triangle y_t = y_t - y_{t-1} = \alpha_1 △yt=yt−yt−1=α1
若 { e t } \{e_t\} {et}是一个独立同分布序列,则 { y t } \{y_t\} {yt}是一个独立(但非同分布)序列。对趋势时间序列更现实的描述是,允许 { e t } \{e_t\} {et}在不同时期相关,但这并没有改变线性时间趋势的本质。
指数趋势
许多经济时间序列都能用指数趋势来近似,当一个序列在每个时期都具有相同的增长率时,他就具有指数趋势。
时间序列的指数趋势可以通过建立有线性趋势的自然对数模型得到( y t > 0 y_t>0 yt>0)
log ( y t ) = β 0 + β 1 t + e t \log(y_t) = \beta_0 + \beta_1 t + e_t log(yt)=β0+β1t+et
将两边取指数后, y t y_t yt便表现出指数趋势: y t = exp ( β 0 + β 1 t + e t ) y_t = \exp(\beta_0 + \beta_1 t +e_t) yt=exp(β0+β1t+et)
解释 β 1 \beta_1 β1,对于很小的变化 △ log ( y t ) = log ( y t ) − log ( y t − 1 ) \triangle \log(y_t) = \log(y_t) - \log(y_{t-1}) △log(yt)=log(yt)−log(yt−1)近似等于 y t y_t yt的变化
△ log ( y t ) = y t − y t − 1 y t − 1 \triangle \log(y_t) = \frac{y_t - y_{t-1}}{y_{t-1}} △log(yt)=yt−1yt−yt−1
上式的右边,被称作 y y y从 t − 1 t-1 t−1时期到 t t t时期的增长率。 设 △ e t = 0 \triangle e_t = 0 △et=0便得到,对所有的 t t t
△ log ( y t ) = β 1 \triangle \log(y_t) = \beta_1 △log(yt)=β1
也就是说, β 1 \beta_1 β1近似等于 y t y_t yt每期增长率的平均值。
除了线性和指数趋势,还会有更复杂的时间趋势(如:二次时间趋势)
伪回归问题
考虑到某些无法观测的趋势因素影响 y t y_t yt又有可能与解释变量相关, 如果我们的方程中没有加入时间趋势,我们便可能得到 y t y_t yt与一个或多个解释变量之间的伪回归问题,仅仅因为每个变量都随着时间的推移而增长。 而解决的方法很简单,只需要将趋势变量放进方程中即可。
除趋势解释
考虑如下回归方程
y t ^ = β 0 ^ + β 1 ^ x t 1 + β 2 ^ x t 2 + β 3 ^ t \hat{y_t} = \hat{\beta_0} + \hat{\beta_1}x_{t1} + \hat{\beta_2}x_{t2} + \hat{\beta_3}t yt^=β0^+β1^xt1+β2^xt2+β3^t
具体做法如下:
- 将 y t , x t 1 , x t 2 y_t,x_{t1},x_{t2} yt,xt1,xt2分别对常数项和时间趋势 t t t回归,并记录残差 y t ¨ , x ¨ t 1 , x ¨ t 2 \ddot{y_t},\ddot{x}_{t1},\ddot{x}_{t2} yt¨,x¨t1,x¨t2,如:
y t = α 0 ^ + α 1 ^ t + y t ¨ y_t = \hat{\alpha_0} + \hat{\alpha_1}t + \ddot{y_t} yt=α0^+α1^t+yt¨ - 将 y t ¨ 对 x ¨ t 1 , x ¨ t 2 \ddot{y_t}对\ddot{x}_{t1},\ddot{x}_{t2} yt¨对x¨t1,x¨t2的回归,这个回归得到的碰巧就是原回归方程的 β 1 ^ , β 2 ^ \hat{\beta_1},\hat{\beta_2} β1^,β2^,这说明了原方程的估计值就是除去了时间趋势的解释,即 x t 1 x_{t1} xt1变化一单位, y t y_t yt变化 β 1 ^ \hat{\beta_1} β1^单位
如果某个自变量含有趋势,那么,即使 y t y_t yt不含趋势,在回归中包含趋势项是一个好主意。假若 y t y_t yt没有明显的趋势,但 x t 1 x_{t1} xt1可能随时间的推移而上升,那么去掉回归中的趋势变量,即使 x t 1 x_{t1} xt1沿着其趋势的变动对 y t y_t yt有影响,看起来也好像 x t 1 对 y t x_{t1}对y_{t} xt1对yt没有影响。若在回归中包含 t t t,便能刻画这种影响。
含趋势的 R 2 R^2 R2
时间序列回归中的 R 2 R^2 R2通常很大,特别是与横截面数据的 R 2 R^2 R2相比。这是因为时间序列总是以总量形式出现,而总量数据通常比个人、企业或家庭的数据更容易解释。 但是当因变量含有趋势时,时间序列回归中的普通或调整 R 2 R^2 R2基本关于人为地变大。 根据调整 R 2 R^2 R2
R 2 ˉ = 1 − σ u 2 ^ σ y 2 ^ \bar{R^2} = 1 - \frac{\hat{\sigma^2_u}}{{\hat{\sigma^2_y}}} R2ˉ=1−σy2^σu2^
其中, σ u 2 ^ \hat{\sigma^2_u} σu2^是误差方差的无偏估计, σ y ^ 2 = ∑ = 1 n ( y t − y ˉ ) 2 n − 1 \hat{\sigma_y}^2 = \frac{\sum_{=1}^{n}(y_t - \bar{y})^2}{n-1} σy^2=n−1∑=1n(yt−yˉ)2 在 y t y_t yt含有趋势时,只要回归中包含了时间趋势, S S T / ( n − 1 ) SST/(n-1) SST/(n−1)就不再是 V a r ( y t ) Var(y_t) Var(yt)无偏或一致估计。 S S T / ( n − 1 ) SST/(n-1) SST/(n−1)往往高估了 V a r ( y t ) Var(y_t) Var(yt),因为他没有解释 y t y_t yt的趋势
一般的做法是,当因变量含有趋势时,先过滤掉时间趋势对 y t y_t yt的影响,将 y t y_t yt对 t t t回归,得到残差 y t ¨ \ddot{y_t} yt¨,然后将 y t ¨ 对 x t 1 , x t 2 , t \ddot{y_t}对x_{t1},x_{t2},t yt¨对xt1,xt2,t进行回归,该回归的 R 2 R^2 R2是
1 − S S R ∑ t = 1 n y t ¨ 2 1 - \frac{SSR}{\sum_{t=1}^n\ddot{y_t}^2} 1−∑t=1nyt¨2SSR
显然 ∑ t = 1 n y t ¨ 2 ≤ ∑ t = 1 n ( y t − y t ˉ ) 2 \sum_{t=1}^n\ddot{y_t}^2 \leq \sum_{t=1}^n(y_t - \bar{y_t})^2 ∑t=1nyt¨2≤∑t=1n(yt−ytˉ)2,从而得出 R 2 R^2 R2比原本计算的要小。而这个 R 2 R^2 R2能够很好地反映出 x t 1 与 x t 2 x_{t1}与x_{t2} xt1与xt2能在多大程度上解释 y t y_t yt,因为他过滤掉了时间趋势的影响。
而调整 R 2 R^2 R2为
( 1 − S S R ∑ t = 1 n y t ¨ 2 ) ⋅ n − p n − k (1 - \frac{SSR}{\sum_{t=1}^n\ddot{y_t}^2}) \cdot \frac{n-p}{n-k} (1−∑t=1nyt¨2SSR)⋅n−kn−p
其中, n − k n-k n−k是主回归方程的自由度(这里是 n − 4 n-4 n−4), n − p n-p n−p是 y t y_t yt对时间趋势回归的自由度(这里是 n − 2 n-2 n−2)
注意: 虽然除趋势的 R 2 R^2 R2能更加好的刻画解释变量对被解释变量的影响,但是在计算 F F F统计量的 R 2 R^2 R2形式的时候,还是用未经除趋势的 R 2 R^2 R2
季节性
如果一个时间序列是每月或每季度观测而得到的,它就有可能表现出季节性。 同时很多月份或季度数据序列都表现出季节性变化,但也并非一律如此(如: 每月利息率或通货膨胀率就没有明显的季节性变化)。 而且,有季节性变化的序列通常在公布执之前就进行了季节调整,已经除掉了其中的季节性因素。 经过季节性调整的序列,拿过来直接用就行。
如果真的需要我们自己处理季节性问题的话,在回归方程中包含总季节-1个虚拟变量就足够了,如(月份=11,季节=3)
除季节性的 β \beta β解释、 R 2 R^2 R2都与上面除趋势的操作一致…
列是每月或每季度观测而得到的,它就有可能表现出季节性。 同时很多月份或季度数据序列都表现出季节性变化,但也并非一律如此(如: 每月利息率或通货膨胀率就没有明显的季节性变化)。 而且,有季节性变化的序列通常在公布执之前就进行了季节调整,已经除掉了其中的季节性因素。 经过季节性调整的序列,拿过来直接用就行。
如果真的需要我们自己处理季节性问题的话,在回归方程中包含总季节-1个虚拟变量就足够了,如(月份=11,季节=3)
除季节性的 β \beta β解释、 R 2 R^2 R2都与上面除趋势的操作一致…
这篇关于【计量经济学】时间序列预测的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!