State space form of DSGE

Hi,

I want to do a Bayesian estimation on a DSGE model without using the mcmc technique embedded in the Dynare package, but firstly I still need to solve for its state space representation of the policy function. Unfortunately, my model is too big to be solved by hand. I am wondering if dynare could solve the model without estimation and return me the analytical state space representation, i.e y_t=Ay_(t-1)+Bu_t? Thanks a lot for the help!

Regards,
Christina

You can do this by using e.g. kalman_transition_matrix, see e.g. github.com/JohannesPfeifer/DSGE_mod/blob/master/FV_et_al_2007/ABCD_test.m
That being said, I would strongly discourage you from programming the MCMC itself outside of Dynare if there are not really good reasons for it. Programming this yourself is extremely error prone, while the Dynare routines are thoroughly tested. I would then rather recommend using the Schmitt-Grohe/Uribe solution and estimation routines.

Dear Prof. Pfeifer,

Thank you very much for the link that extracts steady state matrices. I have a related question, therefore, I assumed it is better to continue this thread. In the function dsge_likelihood, the function dynare_resolve gives T and R matrices which according to the comments are the transition equation matrices. But they have other dimensions than A and B that I get using kalman_transition_matrix function (for the Smets Wouters model A is 22 * 22 and T is 25 * 25). Could you, please, clarify the difference between those matrices?

Best,
Ekaterina

The likelihood routines in Dynare do not work with a minimal state space version, but rather augment the state space to include the observables. That makes running things like the Kalman smoother easier.

Thank you for your quick response.

I am sorry for maybe double asking the same thing, but I want to be sure in what I am doing. In principle, it does not matter whether I run Kalman filter with minimal state-space (with matrices that you got in the aforementioned ABCD_test.m by using kalman_transition_matrix function) or with augmented state-space (with observables). I should get the same results, right?

Thank you in advance.

Yes, you should get the same results.