NottingH 发表于 2022-7-24 17:03 
怎么做普通VAR的分样本脉冲响应函数呢
Journal of Political Economy有一篇文章,分别用matlab和Stata作门限VAR。结果发现,在确定门槛值的情况下,使用Stata分样本建立VAR模型,和直接做TVAR的区别不是太大。当然,本文的门限变量纯外生,内生门限变量还需要在模型里加入门限变量和交互项等。我把Stata代码贴上来:
- *** DEFINE STATE VARIABLE;
- gen slack = unemp >= 6.5; /* unemployment state with fixed threshold */ 第一个门槛虚拟变量
- gen zlb = zlb_dummy; /* zlb state */第二个门限虚拟变量
- **开始估计TVAR
- var newsy g y if L.zlb== 1, lags(1/4);
- varstable, graph name(stability);
- irf create irf, step(20) set(irf, replace);
- irf table oirf, impulse(newsy) response(newsy g y) ;
- irf graph oirf, impulse(newsy) response(newsy g y) byopts(rescale) saving(newszlb.gph, replace);
- var newsy g y if L.zlb== 0, lags(1/4);
- varstable, graph name(stability2);
- irf create irf, step(20) set(irf, replace);
- irf table oirf, impulse(newsy) response(newsy g y) ;
- irf graph oirf, impulse(newsy) response(newsy g y) byopts(rescale) saving(newsnozlb.gph, replace);
复制代码