BVAR syntax in Dynare

Dear all,

Where is it possible to find a link or documentation that describes the syntax and the available options for the estimation of a BVAR in Dynare?

I am thankful for your answers!



There is a documentation file, called “bvar-a-la-sims.pdf”, included with the distribution of Dynare 4.0.2.



Dear Sebastien,

Thanks a lot for your reply. I was just additionally wondering whether the syntax in the document to which you refer me is also valid for the estimation of dsge-vars a la Del Negro and Schorfheide? And if not where can this relevant syntax be also found?

Thank you,

The file that I mentionned is only related to BVAR with Minnesota priors.

For DSGE-Var, please refer to


Dear Sebastien,

Thanks a lot for your quick replies. They prove to be hugely useful. A few points come out after the examination of the link you referred me to and the example codes that exist there:

  1. In the bvar_forward.mod file provided there it is said that the observed endogeneous variables (those declared under varobs) are also the variables included in the VAR. Does Dynare indeed estimate a VAR only including the observables or can one also estimate a VAR in all the DSGE model variables?

  2. Is estimating the dsge_prior_weight together with the deep parameters equivalent in some way to the Del Negro and Schorfheide search for the optimal lambda? In other words, can one say that the estimated dsge_prior_weight is the optimal lambda?

  3. In the typical dsge-var literature one usually merges actual data with data generated by the dsge model. In the example in the link however the dsge-var estimation is performed only on artificial data generated by the dsge model (using the simul_hybrid.mod file). Where does in this case the actual dataset come in?
    Also, the calibration used in the simul_hybrid.mod file of course inflrunces the data that is simulated. Do the calibrated parameters there come from estimation on actual data (and is this where actual data in fact comes in?).

I will be very grateful for your kind clarification and answers!

Kind regards,

Hi George,

Yes, Dynare estimates the VAR model only using the declared observed endogenous variables. If you want to estimate a VAR with all the endogenous variables you just have to declare all the endogenous variables as observed variables… But you will also need data for all these variables !.. So I am not sure that it would be a good idea.

In my view, the main difference between the direct estimation of lambda and the DNS approach is that they consider a (flat) discrete prior probability function over values of lambda whereas, with the direct estimation, we consider a continuous (possibly flat) prior density for lambda. My intuition is that we should find the same estimates if we increase the number of elements in the grid considered by DNS.

Following DNS, we do not use artificial data to estimate the DSGE-VAR model, but we use the theoretical moments of the DSGE (see the papers by DNS or In the example files the actual data are simulated data (so that we know the true Data Generating Process) from an hybrid phillips curve model (simul_hybrid.mod). The idea is to estimate a misspecified model (with a forward looking phillips curve) and to show that even a misspecified model defines usefull restrictions on the data (the estimate of lambda is greater than its lower bound).

Best, Stéphane.