Page 1 of 1

SVAR with long run restrictions

Posted: Wed Apr 19, 2017 1:45 pm
by pfb382
Hi,

I want to run a VAR model with long run restrictions (4 endo variables and 2 exog.). Ideally shock3 has a positive effect on var1 and shock4 has a positive effect on var4.
But it only lets me run the model when I put 4 sign restrictions. Why is that? See code and data attached.

If I dont want sign restriction at all, what do I need to delete? The instructions in the User Manual seem to add more complicated things, which I dont really understand/see the reason for.

Thanks

Re: SVAR with long run restrictions

Posted: Wed Apr 19, 2017 2:12 pm
by TomDoan
If you don't want to put a restriction on a particular column, use a 1 in place of the %sign(...)

compute FLongShort=%dmult(f,$
||%sign(f(1,3)),%sign(f(2,4)),%sign(f(2,3)),%sign(f(4,4))||)

If you don't want to pick signs at all, just do compute FLongShort=f. However, that's not a good idea---there is nothing in the calculation of long run restriction factors that fixes the sign, so you can end up with a bimodal distribution of responses with opposite signs.

By the way, a model long-run restrictions only and with just the upper triangular pattern can be doing using %BQFACTOR (rather than requiring @ShortAndLong), just like the two-variable BQ model. That's the one type of LR restriction model that can be done by a straightforward matrix calculation rather than by iteration.