This graduate-level course teaches the key building blocks of numerical analysis such as
function approximation and numerical integration. The course shows how these techniques are
used in perturbation and projection methods to accurately solve nonlinear dynamic stochastic models.
Relevant theoretical aspects such as the Blanchard-Kahn conditions and the possibility of sun spots
solutions are also covered. The course also teaches the tools to estimate such models (Kalman filter,
Bayesian estimation, MCMC). Students are taught how to use Dynare, but also how to write Matlab programs
to solve a variety of models with other techniques. In addition to teaching techniques such as projection
methods (policy function iteration) and parameterized expectations, the course also focuses on practical
problems that researchers run into when using these techniques.
Some knowledge about dynamic models, e.g., know what an Euler and a Bellman equation are
Some knowledge on programming with Matlab
Key elements
Each morning: 3 hour lecture
Each afternoon: computational assignments solved in groups with assistance provided by instructor and teaching assistants
Not a focus on one technique, but discussion of state of the art available alternatives
Focus on accuracy - making sure that what you get makes sense
Not just computational techniques; also links to economic problems
Focus on understanding the techniques, not on simply running programs and generating output
Lecture notes and programs with which you can do the assignments and improve your skills after the course has ended
Wouter den Haan, the main instructor, has taught at Carnegie Mellon University, University of California at San Diego,
Wharton School of the University of Pennsylvania, London Business School, London School of Economics, Stockholm School of
Economics, Mannheim University, CREST-ENSAE, Universitat Pompeu Fabra, Koc University, Bank of Portugal, Riksbank in
Stockholm, and the European Central Bank.
Course Outline
Monday: Solving and analyzing your first dynamic model
Overview
This morning we teach you how to use Dynare to solve dynamic stochastic macroeconomic models.
We also teach you how to incorporate Dynare programs into bigger Matlab programs so that you
can, for example, loop quickly over different parameter values. We also give you the information
to calculate standard errors for business cycle statistics like the ratio of two standard
deviations of HP-filtered series. With knowledge of both the theoretical and the empirical tool,
you will be able to build a theory, calculate its key properties, and confront these properties
with the analogues in the data.
Topics
State variables
Policy rules (i.e. the recursive solution to dynamic models)
Impulse response functions
Perturbation analaysis
Certainty equivalence
Dynare
Using the homotophy idea to get good initial values for the steady state
(often the hardest part of running Dynare)
Parameter values and properties of basic neoclassical model
Stylized facts
Applications & exercises
In the afternoon, you are asked to write a program to investigate how one can generate
sufficient volatility in the unemployment rate in a simple matching model (i.e. how to
solve the Shimer puzzle).
Other
Dynare uses perturbation analysis to solve dynamic models. This year we do not teach the
underlying theory in class, but we provide you with the notes to understand it.
Tuesday: Key tools from the numerical approximation literature and projection methods
Overview
In the morning, we teach you numerical integration and function approximation. These tools are
used inside and oustide economics. Within economics they are not only used to solve models, but
they are also widely used in, for example, econometrics. Numerical integration makes it possible
to approximate the conditional expectation with just a few lines of code. When you are familiar
with numerical integration and function analysis, then projection methods are quite easy to understand.
In contrast to the approximation technique underlying Dynare, projection methods are global approximation methods.
It is a bit more involved to program a projection method, but for some models it is a much better choice.
Topics
Numerical integration (Gaussian quadrature)
Function approximation (Splines & Polynomials)
Projection methods
Endogenous grid points
Fixed point iteration
Time iteration
Applications & exercises
In the afternoon, you are asked to solve a simple model in which the risk premium varies over the business
cycle.This is difficult to do for perturbation analysis since uncertainty affects the solution in only a
limited way. In fact, one needs at least third-order perturbation to have any time-variation in the risk
premium. In contrast, this is easy when using projection methods.
Wednesday: Topics
Overview
Perturbation is cheap to implement, but less/not appropriate when nonlinearities are important, when there
is substantial volatility (e.g. idiosyncratic risk), or when there are occasionally binding constraints.
Projection methods can in principle deal with all these complexities, but is more expensive to implement
and very costly if there are many state variables. We will teach you the Parameterized Expectations Algorithm
(PEA) which is a projection method but is less computer-intensive than classic projection methods. We discuss
the version of PEA proposed by Den Haan and Marcet, but also the recent version of Maliar, Maliar, & Judd which
contains a simple but powerful improvement. After the discussion of Value Function Iteration you will be
familiar with most of the available tools to solve dynamic models. We will discuss the advantages and disadvantages
of the different methods. As part of this discussion we will talk about accuracy tests, occasionally binding
constraints, and penalty functions. There is one topic that has to be discussed in any course on solving dynamic
models and that is stability and uniqueness of the solution. We will teach you what the Blanchard-Kahn conditions
have to say about this. Explaining the Blanchard-Kahn conditions automatically teaches you about sun spots or
self-fullfilling expectations an exciting part of economics.
Occasionally binding constraints and penalty functions
Blanchard-Kahn conditions
Sun spots and self-fulfilling expectations
Applications & exercises
In the afternoon we use PEA to look at another asset pricing model and check for the possiblity of sun spots.
Thursday: Kalman filter & full information methods
Overview
In the morning, we teach you possibly the most powerful tool in economics, namely the Kalman filter with
which you can estimate unobserved components. This tool also plays a key role in the estimation of dynamic
models with full information methods like Maximum Likelihood and Bayesian estimation. Full information
methods estimate the model use the complete specification including specifications of the distribution of
all the exogenous shocks. We will teach you how to calculate the likelihood of a model given the data.
More importantly, we discuss some tricky issues you will run into in practice, namely the singularity problems
which will restrict the number of observables you can use.
Topics
Kalman filter
State space form
Maximum Likelihood
Avoiding the singularity problem
Applications & exercises
In the afternoon, you are asked to estimate a time series model of the labor market and document how matching efficiency dropped during the Great Recession in the U.S.
Friday: Bayesian estimation
Overview
With the tools learned on Thursday, Bayesian estimation is actually not that difficult, since Bayesian
estimation is like Maximum Likelihood with a bit more information (the prior). One challenge of Bayesian
estimation is the evaluation of the posterior. To be able to do this, we teach you Markov Chain Monte Carlo
(MCMC) techniques. We also discuss the advantages and disadvantages of this method relative to its alternatives,
such as Maximum Likelihood, Generalized Method of Moments (GMM), and Simulated Method of Moments (SMM).
Topics
Bayesian estimation
Markov Chain Monte Carlo methods
Metropolis and Metropolis Hastings
Maximum Likelihood, GMM, SMM, idea of calibration
Applications & exercises
In the afternoon you are asked to estimate a dynamic model, extract the unobserved components, and discuss
which shock was most important for which recession.