- Dynamic stochastic general equilibrium models
- Model solution
- Parameter estimation
- Identification diagnostics

- Tables for
- Policy matrix
- Transition matrix
- Stability of model

- Predictions
- Expected values of dependent variables
- Expected values of unobserved state variables
- Static (one-step) predictions
- Dynamic (multistep) predictions
- RMSEs of predictions

- Impulse–response functions (IRFs)

Dynamic stochastic general equilibrium (DSGE) models are used in macroeconomics to describe the structure of the economy. These models consist of systems of equations that are derived from economic theory. In these models, expectations of future variables play an important role in determining the values of variables today. The close connection to economic theory and the presence of expected future variables distinguish DSGE models from other models for multiple time series such as vector autoregressions.

Different DSGE models focus on different parts of the economy, and macroeconomists use these models to evaluate the impact of policy on economic outcomes such as output growth, inflation, and interest rates. A DSGE model can nest multiple theories, with the estimated parameter values shedding light on which theory provides a better fit to the data.

Stata's **dsge** command estimates the parameters of DSGE models
that are linear in the variables but potentially nonlinear in the
parameters.

A DSGE model might propose relationships among economic variables like inflation, the interest rate, and the output gap. Some of these variables will be observable, like inflation; others will be unobservable, like the output gap. These variables will be linked by a system of equations. Different theories propose different forms of the equations, and parameter estimates can help us discriminate among theories. Some of these equations will feature forward-looking elements, so expectations of future economic developments affect variables in the current period. The model will be driven by shocks, and these shocks will feed into the model through state variables.

A small DSGE model with all of these features looks like this:

dsge (x = E(F.x) - (r - E(F.p) - z), unobserved) (p = {beta}*E(F.p) + {kappa}*x) (r = 1/{beta}*p + u) (F.z = {rhoz}*z, state) (F.u = {rhou}*u, state)

The model consists of five equations.

The first three are the equations for the output gap **x**, the
inflation rate **p**, and the interest rate **r**.

- In the first equation, the output gap depends on its own
expected future value, the interest rate, and expected future
inflation.
- In the second equation, inflation depends on expected future
inflation and the output gap.
- In the third equation, the interest rate depends on inflation.

These variables depend on each other, on expectations
of future values of each other, and on two unobserved state
variables **z** and **u**.

State variables represent unobservable driving processes and
macroeconomists like to give these processes interpretations. In
this model, variable **z** is referred to as the natural rate of
interest, and **u** is referred to as describing the stance of monetary
policy. From the third equation, we can see that **u** represents all
movements in the interest rate other than those induced by a change
in inflation. The last two equations specify stochastic processes
for **z** and **u**.

We estimate the parameters of the model using US data on inflation and interest rates.

.dsge (x = E(F.x) - (r - E(F.p) - z), unobserved) (p = {beta}*E(F.p) + {kappa}*x) (r = 1/{beta}*p + u) (F.z = {rhoz}*z, state) (F.u = {rhou}*u, state)(output omitted) DSGE model Sample: 1955q1 thru 2015q4 Number of obs = 244 Log likelihood = -753.57131

Coefficient Std. err. z P>|z| [95% conf. interval] | ||

/structural | ||

beta | .514668 .078349 6.57 0.000 .3611067 .6682292 | |

kappa | .1659046 .047407 3.50 0.000 .0729885 .2588207 | |

rhoz | .9545256 .0186424 51.20 0.000 .9179872 .991064 | |

rhou | .7005492 .0452603 15.48 0.000 .6118406 .7892578 | |

sd(e.z) | .6211208 .1015081 .4221685 .820073 | |

sd(e.u) | 2.3182 .3047433 1.720914 2.915486 | |

Two of the parameters can be interpreted in terms of economic theory.

The parameter **kappa** is known as the slope of the Phillips curve.
Some theories predict it will be zero, and others predict it will
be positive.

The other parameter is 1/**beta**, which appeared in the third equation
of the **dsge** command we typed,

dsge (x = E(F.x) - (r - E(F.p) - z), unobserved) (p = {beta}*E(F.p) + {kappa}*x)(r = 1/{beta}*p + u)(F.z = {rhoz}*z, state) (F.u = {rhou}*u, state)

The coefficient on inflation in the interest rate equation—1/**beta**—is
known as the inflation response coefficient.
The point estimate for 1/**beta** is 1/0.515 or about 2, in line with
results from the literature.

An impulse–response function traces out how a shock to a state
variable feeds through the model. We mentioned before that the state
variable **u** can represent the stance of monetary policy. Let's
see how an unexpected tightening of monetary policy—a surprise
increase in interest rates—influences other variables.

.irf set dsgeirf, replace.irf create model1, replace.irf graph irf, impulse(u) response(x p r u) byopts(yrescale)

In the top-left graph, we see that the monetary tightening leads to a rise in interest rates. As a result, inflation falls (top-right graph), and the output gap falls (bottom-left graph). The model predicts a recession in response to a surprise increase in the interest rate.

Learn more about Stata's linearized DSGE features.

Read more about DSGE and see several worked examples in the *Stata DSGE Models Reference Manual*.