Computations of statistics with moments_varendo

Dear Dynare developers,
I would like to have some information on the option moments_varendo and on how the statistics are computed:

  1. If I set 250,000 MH replications with mh_drop = 0.2, does it mean that statistics are computed using the 200,000 random draws generated from MH algorithm? For each draw then artificial time series (of the same length of the data) are generated, so that statistics and confidence intervals can be computed?
  2. in oo._PosteriorTheoreticalMoments.dsge.correlation.mean both auto-correlation and cross-correlation are stored. Let me define two variables: y (GDP) and c (consumption). It is clear to me that oo._PosteriorTheoreticalMoments.dsge.correlation.mean.y.y stores the auto-correlations. I am expecting to see the cross-correlation between y and c in oo._PosteriorTheoreticalMoments.dsge.correlation.mean.y.c (1,1), which should be the same as in oo._PosteriorTheoreticalMoments.dsge.correlation.mean.c.y(1,1). But this is not the case (the two numbers are different). Where is the cross-correlation between c and y stored in …y.c or in …c.y?
  3. When I compare the mean of the auto-correlations (as well as the other statistics) with the one produced by the stoch_simul command, they are different. Why is this the case?

Your help is **greatly **appreciated.
Thanks in advance,

Quick answer:
1.) After discarding the burn-in, theoretical moments are computed from the state-space representation for options_.PosteriorSampleSize random draws from the posterior. By default, this are 1000 draws.
2.) As discussed in the manual for 4.4, these are correlations starting at lag 1, i.e. not the contemporaneous correlations that should be symmetric. This explains the difference, as you are comparing corr(y,c(-1)) with corr(c,y(-1))
Thus, you would have to compute the contemporaneous correlations from the covariance matrix.
3.) Posterior moments are the mean of the moments while stoch_simul uses the moments at the mean. Those are two different concepts. Search the forum for more information.

Dear Johannes,
many thanks for your reply.
Concerning point (1), given the 1,000 draws from the posterior distribution, does Dynare generate 1,000 artificial time series of the variables (one artificial time series for each draw) or a certain number of artificial time series for each draw?
Thanks in advance.
Best regards,

Dear Lara,

as I said, Dynare computes theoretical moments here (see the manual). No artifical time series are needed due to linearity. With 1000 draws, you get 1000 sets of theoretical moments.