Unable to obtain steady state


I am new to dynare. I have written my model. However, I am unable to obtain the steady state. I have attached my modmodel.mod (4.1 KB) el. I request someone to review my code and point out where its needs correction.

Dear Deepak,

this forum is to ask for help and not to request for reviews.
You did not give initial values to all endogenous variables in the initval block. For those not set, dynare takes 0 as an initial value. But then, for instance, in eq. 2 there is 0/0 which gives NaN.
If you can, solve the steady state analytically and plug it in, or at least give dynare a better starting point.
Here you have a helpful video that shows you different versions of implementing a steady state into dynare: https://www.youtube.com/watch?v=Ei_z0HSfYNo


You have

y       = A*(k^ALPHA)*(n^(1-ALPHA));                                                                         // (5)Production function

but A has steady state 0 in your model. You are missing an exp().

Thank you @DoubleBass and @jpfeifer for your replies. It helped me a lot.

I have now made the changes and also addressed some other errors in the model. Now, there are no NaN but some of the residuals of the static equation are the initial values itself. What is the reason for that? Does it mean that there are structural problems in the model?
model.mod (4.8 KB)

From what I can see, you have to give dynare better initial values for it to find the steady state. Try to solve the steady state by hand, I do not know if you tried that already. Even when it is not possible, you will find that you can find some of the variables and reduce the size system for which you then can use some solver or a method described in the video I’ve linked. But your model is not too large, so maybe you can actually solve it by hand.
Also, the resid(1); steady; model_diagnostics; part should be before the shocks-part. Don’t really know if that makes a difference, but still :wink:
Hope you can make progress.

pi      = p(+1)/p;            //(21)

usually implies that there is a unit root in the price level. That in turn implies that there are infinitely many steady state and you cannot let Dynare compute them endogenously.