IRF as % deviation and different steady state

Dear all,

I was wondering if someone could explain something to me. If have written my model as a non-linear model; f.e.: y = a*(k_g^alpha)(k^gamma)(l^(1-gamma));. As such my impulse responses are in levels. I however, need my impulse responses as % deviations from the steady state. Now I have two questions:

  1. I tried to make dynare log-lin my model: exp(y) = exp(a)(exp(k_g)^alpha)(exp(k)^gamma)*(exp(l)^(1-gamma)); the impulse responses are then as % deviations from the steady state but the calculated states are very different from my non-linear equation model, with even many negative values. Do I need to convert these values to obtain the level steady state values? Or am I totally missing something?

  2. Is there away to type some code in the non-linear equation model that will give me the impulse responses as a % deviation from the steady state? I really prefer this method as I want to continue working with the non-linear equation model.

All tips and tricks are welcome!

  1. When you do an exp() substitution, the y in exp(y) measures actually the log-levels, i.e. the logarithm of the original output in levels. That taking the log explains why there are negative values. You would not to take the exp() of the log-levels to get the levels.
  2. First of all, when you do the substitution, your model is still nonlinear as you did not linearize it. You just used a substitution. That being said, I recommend appending the log-levels as separate auxiliary variables to the model. The IRFs of these variables will then capture the percentage deviations. An example would be github.com/JohannesPfeifer/DSGE_mod/blob/master/Jermann_Quadrini_2012/Jermann_Quadrini_2012_RBC/Jermann_Quadrini_2012_RBC.mod

Thank you! Got the output I needed!