Understanding Croce (2014) Dynare Code with Epstein-Zin Preferences

Dear all,

I am attempting to understand the replication Dynare code for Croce (2014), “Long-run productivity risk: A New hope for production-based asset pricing” (pdf link to paper http://pages.stern.nyu.edu/~dbackus/BFZ/Literature/Croce_longrunrisk_JME_acc.pdf ) . If there is anyone who has worked with this code before and could help me out, I would be very grateful!

See attached code below.

Approx_10.mod (4.4 KB)

I don’t understand several equations in the model section of the code. In particular, the equations related to utility and the stochastic discount factor.

	// Utility and SDF
	Q 				  = exp((uc(+1)+dtc(+1))*(1-gam));
	logQ 			  = log(Q);
	exp((1-1/psi)*uc) = (1-beta)+beta*(Q^theta);
   exp(m)            = beta*exp(dc*(-1/f))*exp(dtc*(1/f-1/psi))*exp((uc+dtc)*(1/psi-gam))/exp(logQ(-1)*(1-theta));

(1) What is Q? uc? dtc?
(2) How are the equations derived? From what equations in the paper?

I appreciate any help, and am, sincerely,


Did you have a look at Croce Paper: Long-run productivity risk: A new hope for prod?

Many thanks for the response. For future reference, I looked through the thread and there was an interesting paper, MMC_JMP.pdf, which gave the answers to my question, particularly in Appendix C. It turns out the the variable ‘uc’ is the utility-value function divided by consumption. Q is defined as E_t [U_{t+1}^(1-gamma)] (pg 43).

I now understand the code, and have been able to run it. However, I am finding something curious – there is no equity premium when I run the model! Whereas previous people who have run the exact same code on this forum (see http://www.dynare.org/phpBB3/viewtopic.php?f=1&t=6064 , for example) have found an equity premium when they run the code. Does anyone know why I am not seeing an equity premium when I run the code?

What exactly do you do and where do you see that there is no equity premium?

Approx_10.mod (4.4 KB)

See attached code. I made no changes to the downloaded code from the previous thread, except for 1 – i added “stoch_simul (order=3,periods=10000);” to the end, and removed the line ‘order = 3.000000000000000;’

To see there is no equity premium, I look at the mean of “exr”, which is “r - rf”. The mean of this is zero in the simulations.

Many thanks,


That is because the file you downloaded was for Dynare++. Thus, you need to also transform the vcov-statement into a shocks-block.