Smets & Wouter 2007 - Steady State Ratios

Hi everyone,

This is my first time that I work with the SW model (and a steady state model block), so I apologize in advance for my stupid question.

I am working with Johannes’ SW code on github called - Smets_Wouters_2007_45.mod. Since my objective is to calibrate the model to a different economy, I would like to have a look at a few steady state ratios. In the codes there is a steady state model block and some of the ss-ratios have already been computed, e.g. consumption-investment ratio or consumption-output ratio. Do you know how I can extract these ratios to check whether they match a different economy based on the underlying calibration? Can I find them in the M_ or oo_ structure?

Many thanks for your help.

Robert

Hi Robert,

The steady-state ratios are functions of parameters and other variables at their steady-state values, which are constant.
The former are primitive, while the latter are themselves functions of parameters.
Therefore, if you were to lay-out a Matlab script, in the first place you could declare your calibration, then derive in order the steady-state variables, and finally define ratios among them; you would then be able to read these ratios off your workspace.

Say you are interested in the investment-capital ratio, the following would be sufficient, and you would find cik in your workspace (you can of course create a loop if you want to look at several values :slightly_smiling_face:)

ctou=.025;
constepinf=0.7;
constebeta=0.7420;
ctrend=0.3982;

cpie=1+constepinf/100;         %gross inflation rate
cgamma=1+ctrend/100 ;          %gross growth rate
cbeta=1/(1+constebeta/100);    %discount factor


cik=(1-(1-ctou)/cgamma)*cgamma;    %i_k: investment-capital ratio

This steady-state analysis is of course external to the model, and you could find it interesting per se.
Else, you could simply declare steady-state ratios, and the steady-state variables they are made up of, as as additional parameters, and express them as functions as paramters.

Your model file would then look as:

parameters
ctou
constepinf
constebeta
ctrend
cpie
cgamma
cbeta
cik
;


ctou=.025;
constepinf=0.7;
constebeta=0.7420;
ctrend=0.3982;

cpie=1+constepinf/100;         %gross inflation rate
cgamma=1+ctrend/100 ;          %gross growth rate
cbeta=1/(1+constebeta/100);    %discount factor


cik=(1-(1-ctou)/cgamma)*cgamma;    %i_k: investment-capital ratio

With this approach, you would find the value of your ratios of interest, updated as of your calibration, in the M_.params field, in order of declaration in the parameter block. This is innocuous, for example, if you are not going to estimate the model, or more in general if parameter dependencies do not matter.

In the file that you mention, parameters that are functions of other parameters or steady-state variables are conveniently defined as model-local variables, that is variables that only live in the processing of the model file but are not saved in the workspace. This is the reason why you can’ t find them there.
They are useful for at least two reasons; first, when parameters are estimated, parameter dependency is handled correctly, and second they reduce the number of parameters that you actually have to declare. :slightly_smiling_face:

I personally like to have a separate script for this kind of steady-state analyses, as suggested above, and use model-local variables in the model file, but you may prefer to first not estimate the model and follow method 2, conduct your steady-state analysis, and then handle parameter dependency correctly by switching to the approach with model-local variables when you decide to estimate the model.
As you prefer :slightly_smiling_face:

Hi Camilo,

Thanks for your help and your detailed answer. As you said, I think I will create a new script with the steady state computation. I also had forgotten that in SW everything is in deviation from the steady state and hence the steady state of the variables is 0. Anyways, thanks again for your reply!

Rob

Just a quick follow up question regarding the SW 2007 steady states/codes.

Is anyone aware of replication codes where the SW model has been entered into Dynare in a a non-linear fashion?

Many thanks.

Rob

You might need to look the following threads.