Course on Dynamic Stochastic General Equilibrium (DSGE): Models, Solution, Estimation (graduate level)
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
Minikurs DSGE
PhD Macro SS2013
PhD Macro SS2015

Teaching material for a course on Dynamic Stochastic General Equilibrium (DSGE): Models, Solution and Estimation on a graduate level

Please feel free to use this for teaching or learning purposes, however, taking into account the license. If you spot mistakes, let me know.

Right now, this is just a collection of teaching materials I used in different courses. I will teach a course on DSGE models in the winter term 2018/19 and update and consolidate the material accordingly. Stay tuned.


The course is aimed at advanced students of economics, especially master students who are interested in basic methods and current developments in modern macroeconometrics. The course is also suitable for PhD students.

We cover modern theoretical macroeconomics (the study of aggregated variables such as economic growth, unemployment and inflation by means of structural macroeconomic models) and combine it with econometric methods (the application of formal statistical methods in empirical economics). Macroeconometrics is highly computational; therefore, we focus on the practical computational implementation using MATLAB.

The course comprises of three blocks. The first topic provides a basic knowledge of deriving the first-order conditions fo dynamic stochastic general equilibrium models (DSGE). Then we use numerical methods to solve these models into state-space form linearly and nonlinearly (perturbation and projection methods). The last block contains estimation techniques: Maximum Likelihood, Bayesian MCMC, GMM and indirect inference.

The students are thus enabled to understand the analyses and forecasts of public (universities, central banks, economic research institutes) as well as private (business banks, political consultations) research departments, but also to derive and empirically evaluate their own structural macroeconomic models.

The course is interactive and "hands-on", so there is no formal separation between the lecture and the exercise class. Each topic begins with a theoretical input and presentation of methods. These concepts are practiced directly thereafter (within the class) by means of exercises and implemented on the computer in MATLAB and DYNARE.


Basic knowledge of macroeconomics as well as econometrics are required, programming skills in Matlab (or R) are advantageous, but not necessary. Please bring a portable computer with installed MATLAB (or Octave) to each class. If you do not have a notebook or have problems with the installation, please contact us so that we can provide you with a device for the class.

Credits and examination

To obtain credits for the course, students are required to actively participate in the class as well as hand in three exercise sheets (for each topic) within a period of one week.


Topic 1: Deriving DSGE Models

Topic 2: Solution Methods

Topic 3: Estimation Methods


The course is based on techniques and applications and explores the importance of the labor market in macroeconomics using a variety of methodological tools. It is designed to develop and sharpen students’ prior knowledge dynamic macroeconomics and econometrics with a mixture of lectures on state-of-the-art solution and estimation techniques for macroeconomic models and application of the techniques to search theory with standard software packages and models from the literature.

Course Outline

  1. Introduction


Data filtering, DSGE linearized difference equations

Main readings:

King and Rebelo (1993), Shimer (2005), Uhlig (1997) sec. 3

Additional reading:

Hamilton (1994) ch. 1

  1. Baseline Search and Matching Model


Intertemporal optimization, search and matching


Merz (1995)

  1. Root Finding Methods, Linear Solution Methods


Bisection, Newton-based methods, eigenvalue methods


Judd (1998) ch. 5, Uhlig (1997) sec. 6 and 7

Additional readings:

Fernández-Villaverde (2010) sec. 4.1

  1. State Space and Likelihood Function


Kalman filter, likelihood function

Main reading:

Fernández-Villaverde (2010) sec. 4.2

Additional reading:

Hamilton (1994) ch. 13.2 and 13.4

  1. Estimation Methods and Model Analysis


Maximum likelihood, Bayesian methods, Markov Chain Monte Carlo, Diagnostics, Model Comparison

Main reading:

Fernández-Villaverde (2010) sec. 4 and 5

Additional reading:

An and Schorfheide (2007) sec. 3 and 4

  1. Nonlinear Methods


Perturbation, Particle Filter

Main reading:

Fernández-Villaverde (2010) sec. 4.2.2 and An and Schorfheide (2007) sec. 6

Additional reading:

Lan and Meyer-Gohde (2013), Schmitt-Grohé and Uribe (2004)


An, S., and F.Schorfheide (2007): “Bayesian Analysis of DSGE Models,” Econometric Reviews, 26(2-4), 113–172.

Canova, Fabio. Methods for Applied Macroeconomic Research.2007.

DeJong, David N. withChetan, Dave. Structural Macroeconomics.2007.

Fernández-Villaverde, Jesús (2010): “The Econometrics of DSGE Models,” SERIEs, Spanish Economic Association, vol. 1(1), pages 3-49.

Hamilton, James. Time Series Analysis. 1994.

Judd, Kenneth. Numerical Methods in Economics. 1998.

King, Robert G. and Rebelo, Sergio T. (1993):"Low frequency filtering and real business cycles," Journal of Economic Dynamics and Control, vol. 17(1-2), pages 207-231.

Merz, Monika (1995): “Search in the Labor Market and the Real Business Cycle.” Journal of Monetary Economics, 36(2): 269–300.

Shimer, Robert (2005): “The Cyclical Behavior of Equilibrium Unemployment and Vacancies.”American Economic Review, 95(1): 25–49.

Uhlig, Harald (1997): “A Toolkit for Analyzing Nonlinear Dynamic Stochastic Models Easily,” extended version:

Additional Literature

Fernández-Villaverde, Jesús, Pablo Guerron-Quintana, and Juan F. Rubio-Ramirez (2010): "The New Macroeconometrics: A Bayesian Approach," in A. O'Hagan and M. West ,eds., Handbook of Applied Bayesian Analysis.2010.

Lan, Hong & Meyer-Gohde, Alexander (2013): "Solving DSGE models with a nonlinear moving average," Journal of Economic Dynamics and Control, vol. 37(12), pages2643-2667.

Schmitt-Grohé, Stephanie & Uribe, Martin (2004): "Solving dynamic general equilibrium models using a second-order approximation to the policy function," Journal of Economic Dynamics and Control, vol. 28(4), pages 755-775.