介绍向量自回归模型
什么是向量自回归模型(Vector Autogressions Model)?
这个是拆开两部分来看,一部分是自回归,一部分是向量。我们先来看一个变量的自回归模型——自己与自己的滞后量进行回归。
当我们想研究超过1个变量的时候,单变量的自回归模型就会自然拓展成为多变量的自回归的模型——向量自回归模型。一个两变量一阶滞后的VAR模型,形式如下:
进行一个VAR模型的分析,只需要做想好两个选择
- 选好VAR模型中应该包含的变量(这个是由研究问题以及对应的经济学理论决定的)
- 选好滞后阶数。一般会有好几个标准可以为我们提供判断。
VAR模型的建立
现在我们尝试建立一个VAR模型,我们将会使用美国的失业率、CPI和短期的名义利率。数据是从1955年到2005年的季度数据。数据来源:the Federal Reserve Economic Database
在stata中,我们将进行如下变量命名:CPI被称为inflation,失业率被称为unrate,利率被称为ffr。
因此,这个VAR模型形式如下:
A1到Ak都是3×3的系数矩阵
到这里,我们就把变量都已经设置好了。
接下来我们要决定滞后多少阶
我要在stata中使用一个命令varsoc
详细的使用指南在stata中输入help varsoc
有四个指标都表明使用6阶滞后,我们就适用6阶作为我们的滞后阶数。
我们有了变量和滞后阶数,我们就可以进行模型的建立了。我们有两个估计的目标。一个是系数矩阵,另一个是误差项的协方差矩阵。
我们使用命令var inflation unrate ffr, lags(1/6) dfk small
这里进行一下小的说明:
我们得到的结果如下:
Vector autoregression
Sample: 39 - 236 Number of obs = 198
Log likelihood = -298.8751 AIC = 3.594698
FPE = .0073199 HQIC = 3.97786
Det(Sigma_ml) = .0041085 SBIC = 4.541321
Equation Parms RMSE R-sq F P > F
----------------------------------------------------------------
inflation 19 .430015 0.9773 427.7745 0.0000
unrate 19 .252309 0.9719 343.796 0.0000
ffr 19 .795236 0.9481 181.8093 0.0000
----------------------------------------------------------------
------------------------------------------------------------------------------
| Coef. Std. Err. t P>|t| [95% Conf. Interval]
-------------+----------------------------------------------------------------
inflation |
inflation |
L1. | 1.37357 .0741615 18.52 0.000 1.227227 1.519913
L2. | -.383699 .1172164 -3.27 0.001 -.6150029 -.1523952
L3. | .2219455 .1107262 2.00 0.047 .0034489 .440442
L4. | -.6102823 .1105383 -5.52 0.000 -.8284081 -.3921565
L5. | .6247347 .1158098 5.39 0.000 .3962065 .8532629
L6. | -.2352624 .0719141 -3.27 0.001 -.3771708 -.093354
|
unrate |
L1. | -.4638928 .1386526 -3.35 0.001 -.7374967 -.1902889
L2. | .6567903 .2370568 2.77 0.006 .1890049 1.124576
L3. | -.271786 .2472491 -1.10 0.273 -.759684 .2161119
L4. | -.4545188 .2473079 -1.84 0.068 -.9425328 .0334952
L5. | .6755548 .2387697 2.83 0.005 .2043893 1.14672
L6. | -.1905395 .136066 -1.40 0.163 -.4590393 .0779602
|
ffr |
L1. | .1135627 .0439648 2.58 0.011 .0268066 .2003187
L2. | -.1155366 .0607816 -1.90 0.059 -.2354774 .0044041
L3. | .0356931 .0628766 0.57 0.571 -.0883817 .1597678
L4. | -.0928074 .0620882 -1.49 0.137 -.2153263 .0297116
L5. | .0285487 .0605736 0.47 0.638 -.0909816 .1480789
L6. | .0309895 .0436299 0.71 0.478 -.0551055 .1170846
|
_cons | .3255765 .1730832 1.88 0.062 -.0159696 .6671226
-------------+----------------------------------------------------------------
unrate |
inflation |
L1. | .0903987 .0435139 2.08 0.039 .0045326 .1762649
L2. | -.1647856 .0687761 -2.40 0.018 -.3005019 -.0290693
L3. | .0502256 .064968 0.77 0.440 -.0779761 .1784273
L4. | .0919702 .0648577 1.42 0.158 -.036014 .2199543
L5. | -.0091229 .0679508 -0.13 0.893 -.1432106 .1249648
L6. | -.0475726 .0421952 -1.13 0.261 -.1308366 .0356914
|
unrate |
L1. | 1.511349 .0813537 18.58 0.000 1.350814 1.671885
L2. | -.5591657 .1390918 -4.02 0.000 -.8336363 -.2846951
L3. | -.0744788 .1450721 -0.51 0.608 -.3607503 .2117927
L4. | -.1116169 .1451066 -0.77 0.443 -.3979565 .1747227
L5. | .3628351 .1400968 2.59 0.010 .0863813 .639289
L6. | -.1895388 .079836 -2.37 0.019 -.3470796 -.031998
|
ffr |
L1. | -.022236 .0257961 -0.86 0.390 -.0731396 .0286677
L2. | .0623818 .0356633 1.75 0.082 -.0079928 .1327564
L3. | -.0355659 .0368925 -0.96 0.336 -.1083661 .0372343
L4. | .0184223 .0364299 0.51 0.614 -.0534651 .0903096
L5. | .0077111 .0355412 0.22 0.828 -.0624226 .0778449
L6. | -.0097089 .0255996 -0.38 0.705 -.0602247 .040807
|
_cons | .187617 .1015557 1.85 0.066 -.0127834 .3880173
-------------+----------------------------------------------------------------
ffr |
inflation |
L1. | .1425755 .1371485 1.04 0.300 -.1280603 .4132114
L2. | .1461452 .2167708 0.67 0.501 -.2816098 .5739003
L3. | -.0988776 .2047683 -0.48 0.630 -.502948 .3051928
L4. | -.4035444 .2044208 -1.97 0.050 -.8069291 -.0001598
L5. | .5118482 .2141696 2.39 0.018 .0892262 .9344702
L6. | -.1468158 .1329922 -1.10 0.271 -.40925 .1156184
|
unrate |
L1. | -1.411603 .2564132 -5.51 0.000 -1.917585 -.9056216
L2. | 1.525265 .4383941 3.48 0.001 .660179 2.39035
L3. | -.6439154 .4572429 -1.41 0.161 -1.546195 .2583646
L4. | .8175053 .4573517 1.79 0.076 -.0849893 1.72
L5. | -.344484 .4415619 -0.78 0.436 -1.21582 .5268524
L6. | .0366413 .2516297 0.15 0.884 -.459901 .5331835
|
ffr |
L1. | 1.003236 .0813051 12.34 0.000 .8427961 1.163676
L2. | -.4497879 .1124048 -4.00 0.000 -.6715968 -.2279789
L3. | .4273715 .1162791 3.68 0.000 .1979173 .6568256
L4. | -.0775962 .114821 -0.68 0.500 -.3041731 .1489807
L5. | .259904 .1120201 2.32 0.021 .0388542 .4809538
L6. | -.2866806 .0806857 -3.55 0.000 -.445898 -.1274631
|
_cons | .2580589 .3200865 0.81 0.421 -.3735695 .8896873
------------------------------------------------------------------------------
我们遇到了太多的系数,反而不是那么直观。因此我们更多地汇报地是脉冲响应。
matlist e(Sigma)
| inflation unrate ffr
-------------+---------------------------------
inflation | .1849129
unrate | -.0064425 .0636598
ffr | .0788766 -.09169 .6324
脉冲响应的意思是说,对一个变量给予一个标准差的波动,看看对整个系统的变量会有什么样的影响。
但是从上图的协方差矩阵,我们可以看到,各个变量之间是存在相关性的。很难单独地只讨论到一个变量的冲击。
因为我们要对协方差矩阵进行一些转化。
使用的是Cholesky分解的方法。
而这样的分解方法,与变量的顺序关系设置有非常大的关系。
不一样的顺序,我们会得到不一样的矩阵A,也就会可能产生不一样的脉冲响应
这样的顺序设置,好的时候,可以为我们人为地设置一些经济学含义。
当我们找到A之后,我们就可以制造一些冲击,这些冲击是与其他变量不相关的。
. quietly var inflation unrate ffr, lags(1/6) dfk small
. irf create var1, step(20) set(myirf) replace
. irf graph oirf, impulse(inflation unrate ffr) response(inflation unrate ffr)