Question about IRFs

I have a question about producing IRFs from estimated models. I understand the difference between using bayesian_irfs and running stoch_simul after the estimation (the mean of the IRFs not being the same as the IRFs at the mean). What surprises me is that if I use stoch_simul after the estimation, and compare the resulting IRFs to those from a calibrated version of the same model, where all parameters in the calibrated model have been set to their estimated posterior mean values, then they are not identical - in fact, they are quite different. How can that be? I thought these two approaches should give the same results. Any help will be much appreciated!


I have the same problem. Are you trying to replicate a paper?



Hi Luciano,

No, my intention is to isolate the effect of a specific parameter in my model. For that, I first need to be able to replicate my own results!


I have exactly the same problem but I am trying to replicate a paper.

Unless I have committed an error somewhere, the IRFs calculated from the posterior (mean) estimate of the model parameters do not match the ones obtained in the paper using (I suppose) bayesian_irf.


Could you please provide me with a sample mod-file to replicate the issue.

Well, then you have a different problem than I do, I think. You can find answers to your question in these two links:

And: Bayesian IRF

Your estimation routine looks incorrect due the steady state not being correctly updated. This could explain your differences. After running estimation, Dynare will update the estimated parameters but not take any dependence into account that you did not specify. Rather, your calibration only once updates the other parameters depending on the estimated one. That’s why you should use model-local variables (the ones with the pound operator) or a steady state file. See Remark 4 (Parameter dependence and the use of model-local variables) in Pfeifer(2013): “A Guide to Specifying Observation Equations for the Estimation of DSGE Models”

In contrast, for stoch_simul the estimated parameters are used for the first run so that the subsequent parameters are correctly updated.

Dear jpfeifer,

Thanks a lot - that works! The steady state expressions have now been entered as model-local variables instead of parameters, so that they are updated in the estimation. That did the job. Thanks a lot!