Random walk with a drift process

Dear all,

Hi, I am a phd student and trying to simulate a Lucas (1978) endowment economy using the Dynare.
My issue is I don’t know how to make Dynare handle the random walk with a drift process for log consumption properly.
I am considering the two solutions as below, but nothing works.

By the way, I also looked into Professor Pfeifer’s replication of Jermann (1998). However, Jermann (1998) is based on a production economy and there is no issue regarding random walk process as I have in endowment economy.

Could you give me any advice?


  1. attached ‘lucas1.txt’
    : Use steady(nocheck) and impose a steady-state value for consumption.
    The problem is resulting values are far off from the ones from the closed-form.
    For example, the equity premium is 674.85%, which should be around 3.6%.

  2. attached ‘lucas2.txt’
    : Use AR(1), put rho=0.999, set qz_zero_threshold = 1e-999
    The problem is it generates an error message.

lucas1.txt (731 Bytes) lucas2.txt (766 Bytes)

Where did you get the analytical values from? Are you sure your parameterization is correct? Currently, you shock process has a standard deviation of 11 percent. That is huge. At second order 0.11 is not 0.1 percent.

In the discrete time, there is no analytical solution. But, approximately, the maximum Sharpe ratio is risk aversion * the standard deviation of dividend growth. Also, the equity premium is risk aversion * the standard deviation of dividend growth^2. I think the the second moment of dividend growth of 11 percent is reasonable. For example, in Bansal and Yaron (2004, JF), they estimate 11.49 percent for the second moment of dividend growth.

What is the difference between your model and Burnside (1998)?

Dear Professor Pfeifer,
Thank you for your reply.

In Burnside (1998), the endowment process is more general than the one I am studying.
The endowment process of this paper is

x_t = (1-rho) * mu + rho * x_{t-1}+epsilon_t

where x_t = log(D_t/D_{t-1}).

What I am studying is the case where rho = 0 so that the dividend growth is i.i.d such as
x_t = mu+epsilon_t


Then why don’t you try https://git.dynare.org/Dynare/dynare/blob/master/tests/second_order/burnside_1.mod
with the setting you have?

I wasn’t aware of this paper. Thank you so much! I will try this code.

Dear Professor Pfeifer,

As you suggested, I tried Burnside (1998) and it worked well. The issue is if I add the consumption level as additional endogenous variable, then it gives me an error message - “Blanchard Kahn conditions are not satisfied: no stable equilibrium”. I added the consumption level because I need this if I use the Epstein-zin preferences and I want to know how to model the consumption dynamics properly for the endowment economy. Burnside (1998) is based on the power utility, and for the power utility, we don’t need to have the consumption level.

Do you know how to handle this issue?

The following is the dynare code I tried. I added the consumption level from the original code.

var y x c;
varexo e;

parameters beta theta rho xbar;
xbar = 0.0179;
rho = 0;
%rho used to be -0.139
theta = -1.5;
theta = -10;
beta = 0.95;

y = betaexp(thetax(+1))*(1+y(+1));
x = (1-rho)xbar + rhox(-1)+e;
c = c(-1)*exp(x);

var e; stderr 0.0348;

x = xbar;
y = betaexp(thetaxbar)/(1-betaexp(thetaxbar));
c = 1;


stoch_simul(order=2,periods=1000,irf=0) x y c;

I am not sure I understand the problem. In your model the level of consumption will be nonstationary. Thus, a steady state does not exist and you cannot use a Taylor approximation around the steady state. That is why the model is usually written in detrended form.

I understand what caused the problem. I guess the consumption in Caldara et al. 2012 is stationary. That’s why you can code consumption level as a variable. Is it correct?

Yes, that is correct. But why can you not work with detrending with EZ?

I wasn’t sure that detrending EZ would lead to the same results as the value function iteration or other methodologies. Also, to be honest, I don’t know how to implement the detrending EZ. Should I just make the mean of consumption growth zero? then, the mean of the consumption growth doesn’t matter at all in this approach?

Detrending is just a convenient normalization for the solution technique. You can later add the trend back. See e.g. https://github.com/JohannesPfeifer/DSGE_mod/blob/master/Aguiar_Gopinath_2007/Aguiar_Gopinath_2007.mod