Zero steady state values and percentage deviations


I am trying to program the IRFs of my simulated model myself and I am wondering how to deal with zero steady state values to get IRFs which represent percentage deviations from the steady state ?

If I use the non log-linearized model, the percentage deviation from the steady state value of an endogenous variable at period t is (x_t - x*)/x* (with x* the steady state value). With a zero steady state value, I cannot derive this quantity… And obviously I cannot get the quantity ln(x_t)-ln(x*) either.

So how can I deal with that ? Should I stick to IRFS in absolute values ?

Thanks a lot for any help !

For variables with mean 0, you are typically interested in their absolute deviations from the zero 0 as percentage deviations are not defined. Therefore, you want to stick with IRFs in absolute values for these variables. A typical example is TFP deviations measured in percentage deviations from the balanced growth path. As this variable is already in percentage deviations, it is absolute deviations of this variable you want. If you could obtain percentage deviations, you would get percentage deviations of a percentage deviation, which rarely makes sense.

Thanks a lot for your answer jpeifer !

Due to some of the variables of my model having zero mean values at the steady state, should I conclude that it makes no sense to log-linearize my model ?
But the thing is that I want to compare the moments of my simulated variables with moments in actual data. Does this make sense to look at the moments of the data when it is not logged ?

Thanks again

Rule of thumb: express everything that is not already in percentage in logs and leave everything that is already in percentage deviations the way it is. By this mixture of log-linearization and linearization, all variables will be in percentage deviations in the end and can be easily compared to percentage deviations in the data.

Thanks a lot for your helpful answer !

I am wondering what is percentage deviations in the data ? Should I log the data and then substract the mean of the log data ? Should I hp-filtered the data first ? But the simulated data (generated from the model) should not be hp-filtered, right ?

You should always compare processed data to the same object from the model. The particular processing choice is up to you. The most common one is to compute growth rates in the data to growth rates from the model or HP-filtered data to HP-filtered variables from the model.

Thanks so much again !

I have two final questions about the topic :

  1. does it make sense to both log AND hp-filter the data ? In order to get only the cyclical component of growth rates ?

  2. I read in another post that log-linearized models give zero means for logged variables because mean are then the mean percentage deviation from steady state.
    But as variables are in log, the mean should be the mean log variable, which is not a percentage deviation from steady state. So is it that we get zero means from the log-linearized model because we usually hp-filtering the simulated data which demeans variables ?

  1. Logging has nothing to do with growth rates. The would be log differences. The logging is for transforming the variable into percentage deviations. Therefore, you should log your data before using the HP filter.

  2. Essentially we are considering demeaned logs in loglinearized models. For how to compare data and model variables, please see Pfeifer(2013): “A Guide to Specifying Observation Equations for the Estimation of DSGE Models”

Thanks, I have read your document and it is very useful !

There are still some points I don’t get :

  1. I read everywhere that when log-linearizing the model, variables are percentage deviations from the steady state. But are really the variables themselves percentage deviations or the variables to which we substract the log-mean are percent deviations from the steady state ?

  2. in my model the TFP productivity shock is stationary. So following what you write in your document (p.32) I should not detrend my model-generated variables, should I ? They should already be stationary.

Thank you

  1. Log-linearization typically means also subtracting the log mean.
  2. You hardly ever need a transformation of the model variables to make them “stationary”. Transformations are only made to make the model variables comparable to the data.

Ok, thanks a lot for those precisions !

I was asking this question about log-linearization because when I log-linearize the model myself, obviously variables are expressed as percentage deviations from the steady state and I suppose the IRFs I get in Dynare from the simulated log-linearized model are also percentage deviations from the steady state.
But when I use the log-linear option of the stoch_simul command, I get non zero mean for the logged variables, meaning that they are not automatically demeaned by Dynare. Therefore, if I want to express all the moments of my variables in terms of percentage deviations from the steady state, I need to do some additional transformation.

So I am wondering if with the loglinear option in Dynare the IRFs I get are log deviations from the steady state (I suppose so) or percentage deviations from the steady state (as when I log-linearize the model myself), even if I understand that this is roughly equivalent ?

Many thanks again

Sorry, but I do not understand your confusion. The difference between loglinearizing by hand and Dynare’s loglinear option at first order is an additive constant, the logged steady state. As all higher moments are centered moments, this constant does not matter. Similarly, IRFs are presented in deviations from the initial starting point, which means the steady state drops out as well.