How one SD shock can be converted into percentage shock
Re: How one SD shock can be converted into percentage shock
That was explained earlier in the thread. See http://www.estima.com/forum/viewtopic.php?p=2613#p2613.
Re: How one SD shock can be converted into percentage shock
Dear Tom,
I am using the @SURGibbsSetup. I would like to compare the IRFs obtained by running different models (in terms of the size of the response). How do I interpret the generated IRFs? In the @SURGibbsSetup, the command for the IRFs is the following:
impulse(noprint,model=varmodel,factor=%decomp(inv(hdraw)),results=impulses,steps=steps)
Does it imply that I got the IRFs as the response of the variables to 1SD shock? If this is the case, I guess I cannot compare the IRFs obtained via different model specifications. How can I modify the above code to get comparable IRFs? Many thanks.
Best regards,
Adrian
I am using the @SURGibbsSetup. I would like to compare the IRFs obtained by running different models (in terms of the size of the response). How do I interpret the generated IRFs? In the @SURGibbsSetup, the command for the IRFs is the following:
impulse(noprint,model=varmodel,factor=%decomp(inv(hdraw)),results=impulses,steps=steps)
Does it imply that I got the IRFs as the response of the variables to 1SD shock? If this is the case, I guess I cannot compare the IRFs obtained via different model specifications. How can I modify the above code to get comparable IRFs? Many thanks.
Best regards,
Adrian
Re: How one SD shock can be converted into percentage shock
That does Cholesky shocks. Those change from simulation to simulation within a model (around the factor for the model covariance matrix) and also change from model to model since the modal covariance matrix would change with the model. That may or may not be what you want. If you standardize to unit impact shocks, and one model is noisier than another, that won't be obvious from looking at your output. On the other hand, if one model is noisier than another, and you don't standardize, the responses may look more substantial for the noisier model.
Re: How one SD shock can be converted into percentage shock
Thanks Tom,
what I would like to do is simply to compare the magnitude of the responses obtained using different model specifications. What do you suggest for this? Many thanks.
Adrian
what I would like to do is simply to compare the magnitude of the responses obtained using different model specifications. What do you suggest for this? Many thanks.
Adrian
Re: How one SD shock can be converted into percentage shock
How can I change the code to standardize to a unit impact shock and have the responses in % changes? Thanks.
Adrian
Adrian
Re: How one SD shock can be converted into percentage shock
To get unit shocks, change the option on IMPULSE to factor=%identity(%nvar). The responses would be interpreted as percentages if the variables are in logs.
Re: How one SD shock can be converted into percentage shock
Thanks Tom, and how can I adjust the IRFs in order to have the original cholesky identification? I couldn't understand how to practically implement this from the previous threads. Thanks.
Adrian
Adrian
Re: How one SD shock can be converted into percentage shock
I'm not sure what you mean. The original code does Cholesky factors.
Re: How one SD shock can be converted into percentage shock
I mean that if I plug this command: factor=%identity(%nvar) in my impulse command of the @SURGibbsSetup, I obtain unit shocks IRFs, but I lose the cholesky structure. All the other variables do not react contemporaneously to the shocks.
Adrian S.
Adrian S.
Re: How one SD shock can be converted into percentage shock
You need to be much clearer about what you want. Each pass through the loop produces a draw for the covariance matrix. That will be different from draw to draw and from model to model. What do you want to do with that?
If you're looking to keep the Cholesky "shape" but standardize to unit impacts, you can do that to any "factor" matrix with:
compute shocks=%ddivide(factor,%xdiag(factor))
which divides each column of FACTOR by its diagonal element.
If you're looking to keep the Cholesky "shape" but standardize to unit impacts, you can do that to any "factor" matrix with:
compute shocks=%ddivide(factor,%xdiag(factor))
which divides each column of FACTOR by its diagonal element.