Help with SMM estimation

Dear Prof,

I try to estimate a model with SMM. It runs however I get the warning:

warning: matrix singular to machine precision, rcond = 4.35698e-17
warning: called from
dyn_second_order_solver at line 124 column 9
stochastic_solvers at line 259 column 12

secondly, I see red dots in most of the minimum check plots?

Please what can I do to adjust on these errors.

I have attached the code and the datafile
smm2.mod (12.0 KB)
fpmpq13.xlsx (14.8 KB)

  1. model_diagnostics suggests the presence of a singularity.
  2. The red dots happen when the steady state file does not solve the model.

Thank you for your response Prof.
I have the following questions:
(a) Is there need to use the one-sided hp filter in the case of data used for SMM estimation? please help suggest on data treatment in the case of SMM estimation
(b) I have a steady_state_model specified within the code and it runs when the model is solved at third order but it seems SMM requires the use of a steady state file. Is this true?
(c) how do I address stochastic singularity in this case? should I use mode_compute=6?

Thank you Prof.
epusmm1.mod (12.3 KB)
fpmpq3a.xlsx (10.4 KB)

  1. You need to make the model and the data consistent. From what I can see, the scaling of the data and the model is very different. Maybe because one is logged and the other is not.
  2. Some of your data still shows a large seasonal pattern.
  3. The steady_state_model-block must work for any parameter vector, not just the initial one. It seems you hard coded some values.
  4. Stochastic singularity is a fundamental issue you can only fix by changing the model or the observables.

Thank you Prof for your suggestions. I will work on them and revert back.

Thank you Prof.

The stochastic singualrity has been resolved by following your advice to make the model and data consistent. I simply logged the data.

I also modified the model.

However, I get a new error that the model is not Blanchard Khan stable. I suspect it concerns getting the steady_state _block to work for any parameter vector. If this is case. How do I go about this?

I have attached the mod.file.

Thank you Prof.

epusmss.mod (9.8 KB)
epusmss_steadystate.m (1.7 KB)
smma.xlsx (11.1 KB)

Hi, Estheroye
I run epusmss.mod in Dynare 5.0.
Dynare gives two errors:
(1)There is no value of parameter rrho_y.
(2)parameter cov points out a matlab function.
I assign a value to rrho_y, and change cov to covv, everything runs well.
epusmss.mod (9.8 KB)
epusmss_steadystate.m (1.7 KB)

1 Like

Thank you @Jingjing for your response.

I run the code you adjusted on Dynare 5.0 with Octave. It runs. However, I still get the following errors:
(1) The model is not blanchard khan stable
(2) the t-test of 3 of the 7 estimated parameters are inf
(3) there are red dots in the mode graphs

How do I address these for the SMM estimation?
epusmss.mod (9.8 KB)
epusmss_steadystate.m (1.7 KB)
smma.xlsx (11.1 KB)

Hi, Estheroye.

(1) Some of your data shows trend which may be cause the t-test show 'InforNaN`. You can check the data treatment. And you need to make the model and data consistent.

(2)As Prof.Pfeifer said, the red dots indicate that steady state file does not solve the model. You also could see the following picture:

Thank you.

In this case,what do you advice for data treatment? After Prof, Pfeifer’s comment, I logged the dataset? Does that suffice?

Your data treatment is still incorrect. y still has a trend and a clear seasonal pattern. Please read Pfeifer(2013): “A Guide to Specifying Observation Equations for the Estimation of DSGE Models”

Thank you Prof for your kind response. I will work on this.