Epstein-Zin Preferences in basic New Keynesian model

Dear Dynare forum,

I am trying to implement a basic NK model with Epstein-Zin preferences. I am aware that professor Pfeifer has replicated some papers that uses EZ preferences (thanks a lot for that btw), but I am avoiding the explicit preferences suggested by EZ and using a more friendlier format:

V_t = u(C_t, L_t) + \beta ( E_t V_{t+1}^{1-\gamma_V} )^{1/(1-\gamma_V)}

The main issue of this implementation is that I am using an instantaneous utlity CRRA format, implying that u(.) < 0 everywhere. To adapt this feature I adjusted the recursive preferences format accordingly:

V_t = u(C_t, L_t) - \beta( E_t (-V_{t+1})^{1-\gamma_V} )^{1/(1-\gamma_V)}

This imply some small changes in the stochastic discount factor. Also implies that the risk aversion parameter, \gamma_V, should be negative to capture risk aversion.

I am having trouble to solve the model. Blanchard-Kahn and Rank conditions are not being met. I don’t know what is wrong because the calibration seems standard, it should work fine, unless this specification of EZ preferences does not work.

Please find the mod file attached. For a reference on the specification of EZ preferences please check: “The Bond Premium in a DSGE Model with Long-Run Real and Nominal Risks”, from Glenn D. Rudebusch and Eric T. Swanson (2012).

Appreciate any help.

epstein_dynare.mod (3.3 KB)

I hope this will help:

Please first verify that the model works with CRRA preferences. One immediate issue is An infinity of steady states with Taylor rules

It helps a lot ! I am a fan of professor Eric Sims notes. I am quite suprised that I did not saw these. In the notes, he cites the problem of the negativity of utility, but does not include the solution proposed by the authors.

Although his implementation appears to work fine, those equations does not avoid taking a root of a negative number to compute model steady state. I will send an email to him requesting the mod file. Thanks !

Thanks for you reply professor ! I was not aware of this problem, it makes a lot of sense. To correct it I defined an additional parameter called “Pi_ss” instead of using the STEADY_STATE() operator in the Taylor rule. I’ve attached this updated mod file.
epstein_dynare.mod (3.3 KB)

However, Blanchard Kahn conditions are still not being met. The model works fine with standard CRRA preferences.

Your problem may be numeric. See

Your steady states are


V                		 -172.197
Vexpec           		 1.08976e+114

which is a huge size difference. You may want to introduce a normalizing constant as in:

Much thanks Professor ! You’re right, Vexpec is definitely bringing numerical issues, I will look into your normalization example and that should do it. Many thanks !