Epstein-Zin preference

Hi, I a beginner of Dynare. I coded the Epstein-Zin preference model using the paper by Caldara et al., ‘Computing DSGE Models with Recursive Preferences’.[econ.upenn.edu/~jesusfv/EZcomparison.pdf]

Can someone check if this coding is correct? Especially I really don’t know “EXPECTATION(0)(v(+1)^(1-gamma))” is a right syntax for EXPECTATION operator.

model.pdf (51.6 KB)
EZ.mod (1.13 KB)

EXPECTATION(0)(…) is basically useless, because it consists in taking the expectation with the current date, which is implicit in Dynare.

Hi, note that the used FOCs taken from the mentioned paper are wrong. The correct ones are in the “The Term Structure of Interest Rates in a DSGE Model with Recursive Preferences”-Paper.

Hi Johannes, do you (or anyone else on this forum) have Dynare code for “The Term Structure of Interest Rates in a DSGE Model with Recursive Preferences” that you mention here? I’m having some problems getting the system to solve in Dynare, mainly due to my handling (or lack thereof) of the unit root in the model I think. The parameters estimated in the paper also seem to cause the steady-state calculation to fail sometimes, even when a steady_state_model block is used.

If you don’t have any code but a few pointers that would be much appreciated too. I have been working on this long enough with no progress to safely say that I am stuck and don’t know how to proceed. I’ve attached my code if you or anyone else cares to look. One version presents the model detrended by technology, and the other present the detrended model, in log-deviations from steady-state.

neoez_ld.mod (6.45 KB)
neoez.mod (7.06 KB)

Best Regards,


As far as I know there is no mod-file for this one. Given that your steady state already solves, the non-linear file looks promising. There is no eigenvalue of one in the model, so there is no immediate problem with a unit root (and even if that were the case, you could ignore it for the moment). Given that

[quote]There are 19 eigenvalue(s) larger than 1 in modulus
for 25 forward-looking variable(s)[/quote]

it seems there is some fundamental error. What puzzles me is that there is no growth factor from detrending showing up. So it seems your detrending was incorrect. I would focus on that. See also Section 5 “Models with Explicitly Specified Trend” in Pfeifer(2013): “A Guide to Specifying Observation Equations for the Estimation of DSGE Models”.

An additional note: a mod-file for Caldara et al. (2012) “Computing DSGE Models with Recursive Preferences” can be found on my homepage.

Thank you for the pointers. I’m still not sure what I’m missing. I verified the system presented in the paper’s appendix and double-checked my code several times. I also checked timing conventions and they seem to be right. If I calibrate the model to the results in the paper, though, the steady state does not solve. If the IES is dialed back it does solve however, so maybe the value function or the SDF is not getting detrended properly? I’ll have to think about that.

I can’t find the Caldara code on your website that you refer to? Am I missing that one as well? I notice the Epstein-Zin preferences are specified a little differently in that paper, so maybe that will help me sort the problem out?

Thanks again for the help. It is most appreciated.

Best Regards,


A few things:

  1. Try to get the file to run completely for the special case of CRRA log utility first. This is usually much easier. Then go from there.
  2. Please make use of Dynare’s LaTeX-capabilities to let Dynare output the dynamic model, i.e. use write_latex_dynamic_model. This allows for an easier comparison.
  3. The missing mod-file is now online. My mistake.
  4. For extreme curvature, solving steady states is not easy because the numerical errors may become large.
  5. Keep me posted, but I will only be able to look at it thoroughly in May.

Hello, i am a beginner in Dynare++ (4.2.1) and Dynare (4.4.2). I am replicating a paper “Fiscal Policies and Asset Prices” by Croce, Kung, Nguyen, Schmid (RFS, 2012). To be more precise currently i am working on model 3 for the case with leverage and debt adjustment cost (fig 1 page 14 - black line with circles). I got a wrong IRF for SDF with Epstein Zin Utility and i feel that the problem is in the way i write the value function, even though i followed the suggestions jpfeifer and i wrote it as in Caldaraetal2012.mod. Could anyone please have a look? may be it’s an obvious mistake that i do, but i am really stuck with it. Thank you very much in advance. I upload both .mod file and also .m file for building IRF.
PLOT_GRAPH.m (1.33 KB)
rbc_cost.mod (3.72 KB)