Page 1 of 2

VAR-GARCH BEKK and irf

Posted: Thu Aug 13, 2009 12:18 pm
by luxu1983
dear sir
how can i get the impulse response function from the VAR-Garch bekk model?
thanks

Re: VAR-GARCH BEKK and irf

Posted: Thu Aug 13, 2009 9:20 pm
by TomDoan
If you do GARCH(MODEL=mymodel,etc.), you can just do an IMPULSE(MODEL=mymodel,...) instruction. You'd have to pick a covariance matrix or otherwise come up with a set of shocks, since the GARCH model doesn't give you a fixed covariance matrix. But IMPULSE will take care of the dynamics.

Re: VAR-GARCH BEKK and irf

Posted: Thu Aug 13, 2009 11:25 pm
by luxu1983
TomDoan wrote:If you do GARCH(MODEL=mymodel,etc.), you can just do an IMPULSE(MODEL=mymodel,...) instruction. You'd have to pick a covariance matrix or otherwise come up with a set of shocks, since the GARCH model doesn't give you a fixed covariance matrix. But IMPULSE will take care of the dynamics.

yes i use (model=var) ,my code is

system(model=var1)
variables dlx dly
lags 1
det constant
end(system)
garch(p=1,q=1,model=var1,mv=bekk)
impulse(model=var1,step=20)

i use the impulse instruction but i can not get de irf.
how to modify the code ?
thank you very much TomDoan

Re: VAR-GARCH BEKK and irf

Posted: Fri Aug 14, 2009 7:26 am
by TomDoan
luxu1983 wrote: yes i use (model=var) ,my code is

Code: Select all

system(model=var1)
variables dlx dly
lags 1
det constant
end(system)
garch(p=1,q=1,model=var1,mv=bekk)
impulse(model=var1,step=20)
i use the impulse instruction but i can not get de irf.
how to modify the code ?
thank you very much TomDoan
You need a PRINT or a RESULTS option on the IMPULSE.

Re: VAR-GARCH BEKK and irf

Posted: Fri Aug 14, 2009 7:50 am
by luxu1983
TomDoan wrote:
luxu1983 wrote: yes i use (model=var) ,my code is

Code: Select all

system(model=var1)
variables dlx dly
lags 1
det constant
end(system)
garch(p=1,q=1,model=var1,mv=bekk)
impulse(model=var1,step=20)
i use the impulse instruction but i can not get de irf.
how to modify the code ?
thank you very much TomDoan
You need a PRINT or a RESULTS option on the IMPULSE.

need a RESULTS option likes "impulse(model=var1,step=20,result=impulses)"?
but the impulses are all zero
TomDoan you can try it
thank you very much

Re: VAR-GARCH BEKK and irf

Posted: Fri Aug 14, 2009 9:40 am
by TomDoan
luxu1983 wrote:
TomDoan wrote:
luxu1983 wrote: yes i use (model=var) ,my code is

Code: Select all

system(model=var1)
variables dlx dly
lags 1
det constant
end(system)
garch(p=1,q=1,model=var1,mv=bekk)
impulse(model=var1,step=20)
i use the impulse instruction but i can not get de irf.
how to modify the code ?
thank you very much TomDoan
You need a PRINT or a RESULTS option on the IMPULSE.

need a RESULTS option likes "impulse(model=var1,step=20,result=impulses)"?
but the impulses are all zero
TomDoan you can try it
thank you very much
That goes back to the previous point - because the GARCH model doesn't estimate a fixed covariance matrix, there isn't any obvious choice for the size of the shocks. So you need a FACTOR or SHOCKS option to feed those in. For instance,

Code: Select all

impulse(model=var1,step=20,result=impulses,factor=%identity(2))
will give you unit shocks to each variable.

Re: VAR-GARCH BEKK and irf

Posted: Wed Aug 19, 2009 4:14 am
by luxu1983
That goes back to the previous point - because the GARCH model doesn't estimate a fixed covariance matrix, there isn't any obvious choice for the size of the shocks. So you need a FACTOR or SHOCKS option to feed those in. For instance,

Code: Select all

impulse(model=var1,step=20,result=impulses,factor=%identity(2))
will give you unit shocks to each variable.[/quote]


you mentioned that the GARCH model doesn't estimate a fixed covariance matrix.
if i want cholesky impulse function, i must need the fixed covariance matrix??
can my code below can get the cholesky impulse function?
garch(p=1,q=1,model=var,mv=bekk,rvector=rr,hmatrices=hh)
*i get the fixed covariance through the standardresid
set standardresid1 = rr(t)(1)/sqrt(hh(t)(1,1))
set standardresid2 = rr(t)(2)/sqrt(hh(t)(2,2))
vcv(matrix=RR)
# standardresid1 standardresid2
impulse(model=var,step=20,result=impulses,decomp=%decomp(RR))

Re: VAR-GARCH BEKK and irf

Posted: Wed Aug 19, 2009 7:13 am
by TomDoan
luxu1983 wrote:That goes back to the previous point - because the GARCH model doesn't estimate a fixed covariance matrix, there isn't any obvious choice for the size of the shocks. So you need a FACTOR or SHOCKS option to feed those in. For instance,

Code: Select all

impulse(model=var1,step=20,result=impulses,factor=%identity(2))
will give you unit shocks to each variable.

you mentioned that the GARCH model doesn't estimate a fixed covariance matrix.
if i want cholesky impulse function, i must need the fixed covariance matrix??
can my code below can get the cholesky impulse function?

Code: Select all

garch(p=1,q=1,model=var,mv=bekk,rvector=rr,hmatrices=hh)
*i get the  fixed covariance through the standardresid
set standardresid1 = rr(t)(1)/sqrt(hh(t)(1,1))
set standardresid2 = rr(t)(2)/sqrt(hh(t)(2,2))
vcv(matrix=RR)
# standardresid1 standardresid2
impulse(model=var,step=20,result=impulses,decomp=%decomp(RR))
[/quote]

Yes. That will give you the IRF for the "average" empirical correlation matrix.

Re: VAR-GARCH BEKK and irf

Posted: Wed Aug 19, 2009 2:09 pm
by luxu1983
Yes. That will give you the IRF for the "average" empircal correlation matrix.[/quote]

the "average" empircal correlation matrix???
i know this is just Cholesky factorization,and"average" empircal correlation matrix you mentioned above is that meaning?

how can i get the confidence bands?

Re: VAR-GARCH BEKK and irf

Posted: Wed Aug 19, 2009 4:32 pm
by TomDoan
luxu1983 wrote:Yes. That will give you the IRF for the "average" empircal correlation matrix.

the "average" empircal correlation matrix???
i know this is just Cholesky factorization,and"average" empircal correlation matrix you mentioned above is that meaning?

how can i get the confidence bands?[/quote]

Because it's a GARCH model, the H matrix changes from period to period. What you're computing is the correlation matrix of the observed standardized residuals; that's going to average across time periods with different values of H.

What does it mean to get "confidence bands"? This isn't a standard VAR where the covariance matrix is time-invariant.

Re: VAR-GARCH BEKK and irf

Posted: Fri Oct 16, 2009 10:21 pm
by luxu1983
dear sir
how can i calculate the irf if var garch bekk model includes" M" term

Re: VAR-GARCH BEKK and irf

Posted: Mon Oct 19, 2009 8:59 am
by TomDoan
luxu1983 wrote:dear sir
how can i calculate the irf if var garch bekk model includes" M" term
There is no "IRF" for a model like that. For a standard VAR GARCH, the mean model is linear. Once you add an M term, the mean model is non-linear and you can't analyze the response to a shock in isolation.

Re: VAR-GARCH BEKK and irf

Posted: Mon Oct 19, 2009 11:47 am
by luxu1983
thank you very much
but how can i get something closer to a IRF

Re: VAR-GARCH BEKK and irf

Posted: Mon Oct 19, 2009 1:07 pm
by TomDoan
Closer to an IRF than what? Since an abstract IRF doesn't exist, what is it that you are trying to compute? An example of a generalized IRF for a specific type of VAR-GARCH-M is given in

http://www.estima.com/forum/viewtopic.php?f=8&t=1189

The response of the mean with the "M" effect is dependent upon both sign and size of the shock.

Re: VAR-GARCH BEKK and irf

Posted: Thu Oct 22, 2009 11:02 pm
by luxu1983
how can i do the forcast through different shocks

forcast(model=var,from=100,step=100,shocks=1)
how to set the "shock"