Singular forecast error variance in the Kalman Filter

Dear all,

I know this has been questioned here numerous times, but having done everything I read in this forum the problem is still there. I am trying to estimate a BGG type of model with an uncertainty shock among other shocks. I have transformed the data as the observation equations in log deviations, I have more or equal shocks than observables, I checked the model_diagnostics and also the identification command. All shocks are identified. I keep getting the following well known error:

initial_estimation_checks:: The forecast error variance in the multivariate Kalman filter became singular.
initial_estimation_checks:: This is often a sign of stochastic singularity, but can also sometimes happen by chance
initial_estimation_checks:: for a particular combination of parameters and data realizations.
initial_estimation_checks:: If you think the latter is the case, you should try with different initial values for the estimated parameters.
ESTIMATION_CHECKS: There was an error in computing the likelihood for initial parameter values.
ESTIMATION_CHECKS: If this is not a problem with the setting of options (check the error message below),
ESTIMATION_CHECKS: you should try using the calibrated version of the model as starting values. To do
ESTIMATION_CHECKS: this, add an empty estimated_params_init-block with use_calibration option immediately before the estimation
ESTIMATION_CHECKS: command (and after the estimated_params-block so that it does not get overwritten)

Any ideas on what’s wrong?

Stelios (10.9 KB)

The myfun_BGG_entr.m is missing, so I cannot run the mod-file.
Having as many shocks as observables is just a necessary condition, not a sufficient one. You will get the same error message if your observables are related by an exact linear combination. A typical example is observing all components of the budget constraint.

Sorry for that Johannes, here it is. I get your point but these observables have been used in previous studies too (CMR,2014). What’s the difference here?

myfun_BGG_entr.m (734 Bytes)