RATS 10.1
RATS 10.1

If \(\bf{u}_t\) are the standard VAR residuals, and we have a structural model \(\bf{u}_t = \bf{F}\bf{v}_t\), then the structural residuals are the observed values of \(\bf{v}_t\), that is, \({\bf{v}}_t  = {\bf{F}}^{ - 1} {\bf{u}}_t \). In general, each component of \(\bf{v}_t\) will be a linear combination of the full corresponding vector of VAR residuals \(\bf{u}_t\). The easiest way to generate this is with the procedure @StructResids. This takes as input the factor matrix and the VECT[SERIES] of VAR residuals (retrieved using the RESIDS option on ESTIMATE), and produces a VECT[SERIES] of the structural residuals.

 

For instance, to compute the structural residuals for a Blanchard–Quah factorization, do:

 

estimate(resids=resids)

compute bqfactor=%bqfactor(%sigma,%varlagsums)

@impactsignflip ||+1,+1||

@structresids(factor=bqfactor) resids %regstart() %regend() sresids

 

For a Cholesky factorization, it would be

 

estimate(resids=resids)

@structresids(factor=%decomp(%sigma)) resids %regstart() %regend() sresids

 

@StructResids can also be used if you only have a partial factorization of the covariance matrix ("Isolating a Single Shock"), where it will produce a set of series with the same rank as your partial factor).


Copyright © 2025 Thomas A. Doan