## SVECM

A forum for questions and answers regarding the CATS cointegration procedure

### SVECM

Can I put short-run restrictions on contemporaneous impacts of endogenous variables (similar to Bernanke-Sims) on an estimated VECM to uncover the structural shocks.

Steps i want to follow is> Johansen cointegration to determine rank of cointegration> put long-run restrictions to uncover cointegrating vectors>estimate VECM> put short-run restrictions to conver the structural shocks.
smaha

Posts: 1
Joined: Fri Oct 24, 2008 10:55 am

The Johansen cointegration procedure only constrains the lags of the VAR; the contemporaneous covariance matrix is left free. So you can actually do that analysis in two steps. Where the cointegration does have an effect in "SVAR" modelling is on the combination of long and short run constraints (Blanchard-Quah type constraints on IRF's), since imposing cointegration gives you a reduced rank long-run response matrix. As long as your SVAR is strictly contemporaneous, you don't have a problem with separating the two steps.
TomDoan

Posts: 2725
Joined: Wed Nov 01, 2006 5:36 pm

### Re: SVECM

Hi,

I would like to estimate a SVECM as well...I am thinking of estimating a cointegrated model first using the command @cats, then do a structural decomposition using @cvmodel. But it seems my code is not working....may I ask what's wrong with the following code?

**********************************************************************************************************************
@cats(lags=4,export=ecm,r=2,dettrend=drift,noprint) 1984:1 2008:4
# govspendb gdp gdpdef netrevenue hibor

compute aye=ayr=bre=ape=apy=api=aie=aiy=aip=air=0
nonlin aey=0.0 aep=-0.5 aei=0.0 aye ayr ape apy api ary=1.0 arp=1.0 ari=0.0 aie aiy aip air bre ber=0.0

*
cvmodel(a=afrml,b=bfrml,method=bfgs,pmethod=genetic,piters=20,factor=swish) %sigma
*
*
impulse(noprint,model=ecm,factor=swish,results=impulses,steps=nstep)
*******************************************************************************************************************************8

Thank you so much!

MC
MC128

Posts: 36
Joined: Tue Jun 16, 2009 5:55 am

### Re: SVECM

What isn't working?
TomDoan

Posts: 2725
Joined: Wed Nov 01, 2006 5:36 pm

### Re: SVECM

Hi Tom,

A message propped up when I tried to run the code:

## MAT5. Needed Matrix with Dimensions 26 x 26, Got 5 x 5 Instead

I have attached my code for your reference.

May I also ask how to draw error bands for the impulse response?

Thank you so much!

MC
Attachments
fiscalcoin(partial).PRG
MC128

Posts: 36
Joined: Tue Jun 16, 2009 5:55 am

### Re: SVECM

CATS doesn't define the %SIGMA matrix. (It's possible that an instruction in CATS somewhere does set %SIGMA, but in any case, CATS is not storing the residual covariance matrix for the model in %SIGMA).

I think you want the variable %OMEGA1 rather than %SIGMA. It's one of the global variables defined by CATS (see the CATS Appendix), and I believe it is the variable CATS is using to store the residual covariance matrix.

Regards,
Tom Maycock
moderator

Posts: 306
Joined: Thu Oct 19, 2006 4:33 pm

### Re: SVECM

Hi Tom,

Thanks for your information! I have changed the code accordingly and it works now... Another question is: are you aware of any sample code or method that can draw error bands for SVECM?

Many thanks!

MC
MC128

Posts: 36
Joined: Tue Jun 16, 2009 5:55 am

### Re: SVECM

Hi Tom,

I am trying to draw bootstrapped error bands for a SVECM, following the example of bootvar.prg. May I ask how can we declare a model name for a VECM which is estimated by CATS, apart from using the Misc option available on the menu?

For example, in a VAR,

We can do this with the following syntax:

system(model=varmodel)
variables xx xx
lags 1 to nlags
end(system)

Is there a corresponding way to do that for a VECM estimated by CATS?

Also, can we access the residuals in a similar way?

Thanks.

MC
MC128

Posts: 36
Joined: Tue Jun 16, 2009 5:55 am

### Re: SVECM

MC128 wrote:I am trying to draw bootstrapped error bands for a SVECM, following the example of bootvar.prg. May I ask how can we declare a model name for a VECM which is estimated by CATS, apart from using the Misc option available on the menu?

If you are running CATS in batch mode (i.e. using the NOMENU option), you can use the EXPORT option to automatically export the estimated model. I'm not sure if that's what you were looking for?

Tom
moderator

Posts: 306
Joined: Thu Oct 19, 2006 4:33 pm

### Re: SVECM

Hi Tom,

Yes, I tried...but when I use the option export=ecm/var, how can I define a name for this model at the same time? This is very important as I would like to estimate several SVECMs within the same programme file. Similarly, how can we export the residuals of each SVECM?

Thanks!

MC
MC128

Posts: 36
Joined: Tue Jun 16, 2009 5:55 am

### Re: SVECM

Hi Tom, I would like to estimate a SVEC model by imposing long-run and short-run restrictions on the structural stochastic trends, is there any routine or procedure for so doing with RATS?
dacanoo

Posts: 6
Joined: Tue Aug 30, 2011 7:27 pm

### Re: SVECM

dacanoo wrote:Hi Tom, I would like to estimate a SVEC model by imposing long-run and short-run restrictions on the structural stochastic trends, is there any routine or procedure for so doing with RATS?

That's done using @ShortAndLong, which is explained in the RATS manual and in quite a few threads on the forum. One is:

http://www.estima.com/forum/viewtopic.php?f=4&t=730

but if you do the Search... within the forum, you'll find others.
TomDoan

Posts: 2725
Joined: Wed Nov 01, 2006 5:36 pm