This is a Zoom recording (hope the quality is still okay) of a session on computing the steady-state of DSGE models numerically. I try to explain what the underlying objective function is and what it means to use numerical optimization techniques. This is illustrated by the RBC model, preprocessed manually in MATLAB and using different optimization methods. I also compare this to what Dynare's steady command does.
Note that Dynare's steady command is capable to do much more things than I cover in this video, but I still hope this is useful for people to understand the underlying objective and approach.
Slides, notes and codes: https://mutschler.eu/teaching/steadys...
*Timestamps*
00:00 - Start
00:10 - Recap how to preprocess DSGE models with MATLAB
06:56 - Preprocess RBC model with MATLAB
11:50 - (Not so good) explanation of how numerical optimizers (e.g. Newton-Raphson) work
18:26 - Vector-valued vs scalar objective functions
24:04 - MATLAB: Provide initial values
26:49 - MATLAB: Create function handle for vector-valued optimizers
30:26 - MATLAB: use fsolve to find steady-state numerically
34:34 - MATLAB: use lsqnonlin with bounds to find steady-state numerically
39:27 - MATLAB: use fminsearch and sum-of-squared-residuals objective function to find steady-state numerically
45:09 - MATLAB: use patternsearch and sum-of-squared-residuals objective function to find steady-state numerically
47:17 - Compare residuals and sum-of-squared-residuals
50:25 - Compare steady-states computed with MATLAB vs with Dynare vs the analytical way
58:33 - Additional info on the steady command in Dynare
*References*
Dynare Manual
*Corrections*
-
Checkout https://mutschler.eu/dynare for more stuff on DSGE models and Dynare.