How to include an endogenous initial condition

In ``Deficits and Inflation: HANK meets FTPL,´´ Angeletos,
Lian and Wolf derive a model for inflation (\pi), output
(y), and government debt (d), that has the following structure:

(1) \mathbb{E}_{t}\{d_{t+1}\}=a_{0}(d_{t}+\varepsilon_{t})+a_{1}y_{t}

(2) \mathbb{E}_{t}\{y_{t+1}\}=b_{0}(d_{t}+\varepsilon_{t})+b_{1}y_{t}

(3) \pi_{t}=\kappa y_{t}+\beta\mathbb{E}_{t}\{\pi_{t+1}\}

where \{\varepsilon_{t}\}\sim IID(0,\sigma_{\varepsilon}^{2}) and d_{0}=c\,\pi_{0}.

Notice that government debt has an endogenous initial condition,
d_{0}=c\,\pi_{0}.

My problem is that I don’t know how to introduce the initial condition for d in a Dynare code. Any help would be greatly appreciated.

My initial mod file, which doesn’t deal appropriately with the initial condition, is the following:

// Declare variables
var y pi d;

// Declare exogenous variables
varexo eps;

// Declare parameters
parameters beta sigma omega kappa Dss_Yss tauy taud phi a0 a1 b0 b1 c;

// Calibrate parameters
beta = 0.998;
sigma = 1;
omega = 0.8016;
kappa = 0.1275;
Dss_Yss = 1.79;
tauy = 0.33;
taud = 0;
phi = 0.1;

// Define intermediate parameters (for readability)
a0 = (1 - taud) / beta;
a1 = - (tauy - beta * phi * Dss_Yss) / beta;
b0 = - (1 - beta * omega) * (1 - omega) * (1 - taud) / (beta * omega);
b1 = (1 + sigma * phi + (1 - beta * omega) * (1 - omega) * (tauy - beta * phi * Dss_Yss) / (beta * omega));
c  = -Dss_Yss;

// Model equations
model;
d(+1) = a0 * (d + eps) + a1 * y;

y(+1) = b0 * (d + eps) + b1 * y;

pi = kappa * y + beta * pi(+1);
end;

// Initial values for variables
initval;
y = 0;
pi = 0;
d = c * pi;
eps = 0;
end;

// Define shocks
shocks;
var eps; stderr 1;
end;

// Run simulations
stoch_simul(order=1, irf=10) d y pi;

Additional comments

Equation (1) comes from

(1’) d_{t+1}=a_{0}(d_{t}+\varepsilon_{t})+a_{1}y_{t}+a_{2}\left(\pi_{t+1}-\mathbb{E}_{t}\{\pi_{t+1}\}\right)

In my code I used equation (1) instead of (1’) because I’m not sure how to include the latter (if needed).

I know from Proposition 5 in the paper that, under some restrictions
on the parameter values, there is a bounded solution that takes the form

\mathbb{E}_{t}\{d_{t+1}\}=\rho_{d}(d_{t}+\varepsilon_{t})

y_{t}=\chi(d_{t}+\varepsilon_{t})

\pi_{t}=g(d_{t}+\varepsilon_{t})

where d_{0}=v\,\varepsilon_{0}, and the coefficients v, g, \chi>0, and \rho_{d}\in(0,1) can be expressed in closed form. For government debt we get d_{t+1}=\rho_{d}(d_{t}+\varepsilon_{t})+v\,\varepsilon_{t+1}.

What is the timing assumption here? Is d_t predetermined?

Hi. Thanks a lot for the reply.

In the model, d_{t} denotes real government debt (actually,
its deviation with respect to the nonstochastic steady state, relative
to GDP in the nonstochastic steady state). The initial predetermined
variable is nominal government debt, that’s why d_{0} depends negatively
on \pi_{0}, reflecting debt erosion due to inflation. If I’m not mistaken, the authors solve equations (1) and (2) in closed form (subject to some constraints on the parameter values), taking d as a predetermined variable. They find a solution of the form \mathbb{E}_{t}\{d_{t+1}\}=\rho_{d}(d_{t}+\varepsilon_{t}) and y_{t}=\chi(d_{t}+\varepsilon_{t}), where \rho_{d}\in(0,1)
is one of the eigenvalues of the system and \chi is an element
of the corresponding eigenvector. Then they use equation (3) to solve
for inflation in terms of ouput: \pi_{t}=\frac{\kappa}{1-\beta\rho_{d}}y_{t}=\frac{\kappa\chi}{1-\beta\rho_{d}}(d_{t}+\varepsilon_{t}).
At t=0 this gives \pi_{0}=\frac{\kappa\chi}{1-\beta\rho_{d}}(d_{0}+\varepsilon_{0}). Combining this with the initial condition d_{0}=c\,\pi_{0} (where c=-\frac{D^{ss}}{Y^{ss}}), they solve for d_{0} in terms of \varepsilon_{0}. Given this, you can use (1’) to get the path of d_{t}. Then you can use y_{t}=\chi(d_{t}+\varepsilon_{t}) to recover the path for output, and \pi_{t}=\frac{\kappa}{1-\beta\rho_{d}}y_{t} to get the path for inflation.
I’ve tried with a modified mod file in which I erase the equation for inflation and keep the first two, but I get indeterminacy (Blanchard & Kahn conditions are not satisfied) even though, as far as I can tell, my parameters satisfy the authors restrictions.

My hunch is that this cannot be easily done in Dynare (or other software for that purpose). It looks like a fixed point problem. You would just pick an initial value for the actual state d_0, solve the model to get the endogenous \pi_0 and then numerically solve for the d_0 that satisfies the condition d_0=c\pi_0.

Thanks a lot, Johannes.