This course is not for everybody. It is important that you have a solid knowledge of macroeconomic models taught at the graduate level. If you don't have the right background yet, then it is better to wait a year.
Required knowledge about dynamic models:
Know what an Euler and a Bellman equation is and how to derive them.
Know what state variables are.
Understand key economic mechanisms in representative-agent models such as consumption smoothing and precautionary savings.
Some Matlab programming.
You can find some preparation tips here.
This course runs online only. Therefore, if you are accepted and enroll into the course, you will need:
access to Zoom to participate in lectures and computer sessions.
access to Matlab for computer sessions (with the optimization toolbox).
some elements will require Dynare. If you're new to Dynare, make sure to go through the tutorial and example code here (please make sure you are able to run Dynare code before the course starts).
This graduate-level course teaches the key building blocks of solving, analyzing and estimating structural macroeconomic models. Students are shown how to use Dynare, but also how to write their own Matlab programs to solve and analyze models. Importantly, the course also focuses on practical problems that researchers run into when using these techniques.
The first lecture teaches you how to solve dynamic stochastic macroeconomic models using linearization techniques. We start with “do it yourself” methods and then move to a more general theory of perturbation. The latter is implemented using Dynare – a free perturbation software.
Topics
State variables and policy rules
Linearization and Perturbation analaysis
Certainty equivalence
Dynare
Exercise
In the first coding session, you will be asked to solve a simple DSGE model using both DIY methods and Dynare.
The second set of lectures discusses how to analyze linearized solutions of macroeconomic models. We begin by discussing how to simulate your model, how to compute impulse response functions and how to estimate business cycle statistics. Finally, in this lecture we move towards discussing the parameterization of macroeconomic models. We do so by discussing calibration and various alternatives.
Topics
Simulation, impulse responses
Filtering and business cycle statistics
Calibration example
Exercise
In the second exercise, 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).
This is the first of two lectures on estimating macroeconomic models. In this lecture, we teach you a powerful tool – the Kalman filter. This tool allows you to estimate unobserved components in time-series and, as such, it plays a key role in the estimation of macroeconomic models with Maximum Likelihood and Bayesian estimation. We will teach you how to calculate the likelihood of a model given the data and we’ll discuss some tricky issues you may run into in practice, such as stochastic singularity.
Topics
Kalman filter and the state-space form of macroeconomic models
Maximum Likelihood
Avoiding the singularity problem
Exercise
In the coding session, 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.
Building on the tools learned on Wednesday, this lecture gives you an introduction into Bayesian estimation. A key challenge of Bayesian estimation is the evaluation of the posterior and to tackle this problem, we introduce you to the basics of Markov Chain Monte Carlo (MCMC) techniques.
Topics
Bayesian estimation
Markov Chain Monte Carlo methods
Metropolis and Metropolis Hastings algorithms
Exercise
In this exercise you are asked to estimate a dynamic model, extract the unobserved components, and discuss which shock was most important for which recession.
Friday's lecture will cover two distinct topics. First, we will use the methods from Monday's lecture - DIY linearization - and show how these can be used to solve linear models with a "nonlinear flavor" (through exogenous, or endogenous, regime switches). Second, we will introduce the Bellman equation, and discuss how to solve it using value function iteration.
Topics
Regime switching and occasionally binding constraints
Value function iteration
Exercise
In this last exercise, you are asked to solve a stochastic Ramsey growth model nonlinearly, using value function iteration.