Simulated method of moments using dynare


I am running to understand about SMM DSGE_mod/Born_Pfeifer_2014 at master · JohannesPfeifer/DSGE_mod · GitHub

First you run the code by setting recalibration and estimation to 0 then change to 1 to find values for sigma_x, phipar, D_bar, and Phi.

  1. In Born_Pfeifer_RM_Comment.mod, the values for sigma_x, phipar, D_bar, and Phi are written already which is the same as values from running smm_diff_function. What is smm_diff_function doing if we know values already in original mod file?

  2. simulated_moments have three values while moments_emp have 8 values, should they be equal when simulating?

  3. In simult_FGRU.m, they talk about exogenous states sigma_r, sigma_tb, eps_r, eps_tb, X. Are they playing any role to find values for sigma_x, phipar, D_bar, and Phi?


The code you are looking at is a replication file for an article.

  1. Minimizing the smm_diff_function requires some starting values. We provided the values we found as starting values, but you should get the same with other reasonable starting values.
  2. No, the 8 empirical moments are the ones used for the paper, but only four of them are matched. The moments at the optimum should be reasonably close to the empirical ones. There are four targets targeted with four parameters. If this were a linear equation system, you could typically find an exact solution. For practical applications, the fit will not be perfect.
  3. I don’t understand the question.

Thank you for your reply and explanation.
Lines 115-119 in simult_FGRU.m were mentioning about sigma_r, sigma_tb, eps_r, eps_tb, X. I thought sigma_x, phipar, D_bar, and Phi would be used in lines 115-119 since they are the parameter values to find?

I want to match theoretical moments from dynare to empirical data. Is working with SMM the right approach to find parameters that match theoretical moments to data?

  1. Dynare 5 has a method_of_moments-command to do such a matching.
  2. The mentioning of the shock is necessary for the simulation of the model. It’s specific to the replication of the original paper. Usually, you can use generic Dynare codes for that.