How do data characteristics affect DSGE model estimation?

A quick thought for everyone:

In using a linear model, the data used must be stationary. Concisely put, Im having some estimation problems most likely stemming from my data.

  1. So just how “stationary” should the data be?
  2. What if there are extreme outliers? What to do? How is estimation affected by these?
  3. What are the most applied detrending procedures? Are filtering procedures used to remove outliers?
  4. Would it be a good idea to divide a series by any number to at least decrease the effect of outliers?

Thanks y’all for giving your thoughts/recommendations/similar experiences on this.


I do not think that a series can be more or less stationary. Either it is or it is not. As for the outliers I think you should proceed as you learned to deal with them in the introductory econometric course. The detrending procedures are a big topic. You should read Fabio Canova papers and book.
If you divide the series for a given number you do not reduce the effect of the outliers, because their relative sizes remain unaffected.


Hi Paolo,

Regarding dividing a series with a number, the reason I ask this is because most of the data series I have (after first difference) are stationary with range from around 2 to -2, but one of the series, though also stationary, but range from around 30 to -15. So when I run dynare using these data series, it tells me ‘{Warning: Matrix is close to singular or badly scaled.’ right before it shows the mode estimates. This is usually accompanied by highly inflated t-stats. I was wondering if this case can be considered a case of badly scaled data resulting to unstable estimates.

warm thanks,

In the classical regression if you divide a regressor by a fix number, the estimation is not affected with the exception of the estimated parameter referring to that regressor. It will be estimated as the same value divided by the fix number. All the other parameters will be unaffected. In the Bayesian set-up? I guess you can do the same (but you should check).


Thanks Paolo G. I very much appreciate your comments.
Also , if any others has similar experiences, will be happy to hear your thoughts as well. Thanks.


Hi. I’m currently experiencing the same difficulty but do not know the problem comes from. I’m running a bayesian estimation but even after zillions of changes in my priors, the posterior matrix of my estimates is not positive definite. the model seems ok but I suspect the problem to be due to data.
Here are the attached data and model files.
Thks for having a glance on them
RBC_RCV.mod (4.13 KB)
data_rbc_v1.m (3.67 KB)

Among the zillions of changes in your priors, did you also try to change the shape. Uniform priors for all the paramenters is a very non-informative approach.
I will have a look to data next days.


Thks Paolo. As you mentionned I tried to also change the shapes but still the same problem…I’ve also tried to estimate only part of parameters specifically those driving the exogenous processes.

Dear aghaly

data look ok (although 48 observation are quite few). Just one question: shouldn’t your linearized model have zero steady state? In principle it should. Instead it has not. Are you happy with that? In fact your data do not have zero mean, hence they are not detrended or demeaned, implying that you assumed the steady state of your (linearized) model is not zero.
Nevertheless, if you use the attached file you will obtain reasonable results (I tried the estimation with 150 000 iterations, maybe if you use a bit more you will have better results)


RBC.mod (4.38 KB)

Hi Paolo, thks for your help. I tried what you suggested and the results are seriously promissing. However it happens that I still have the following message and I do not really understand its meaning:
“MCMC Diagnostics: Univariate convergence diagnostic, Brooks and Gelman (1998):
??? Error: File: C:\dynare\4.1.1\matlab\McMCDiagnostics_core.m Line: 36 Column: 8
Functions cannot be indexed using {} or . indexing.
Error in ==> McMCDiagnostics at 100
fout = McMCDiagnostics_core(localVars,1,npar,0);
Error in ==> dynare_estimation_1 at 1062
McMCDiagnostics(options_, estim_params_, M_);
Error in ==> dynare_estimation at 62
Error in ==> RBC at 276
Error in ==> dynare at 132
evalin(‘base’,fname) ;”

In addition I do not get the IRF plots although I have clearly specified it in the options during the estimation.
BR, Aghaly

I have no clue about your error. When I run the estimation in my computer everything was ok. So maybe you should take care of having the most recent Dynare version installed (if you have it already you can try to uninstall and install it again). Or take care of setting the path properly. As for the IRF, do you refer to the Bayesian ones? Because those charts open and close automatically. You can find them in the folder which Dynare creates inside the folder where the .mod file is located, and then the folder output.


Thks. As you have mentionned my problem might stem from the new dynare version I’ve installed. I’ll be trying to check it out.
BR, Aghaly.