unit root variables

This forum is closed. You can read the posts but cannot write. We have migrated the forum to a new location where you will have to reset your password.
Forum rules
This forum is closed. You can read the posts but cannot write. We have migrated the forum to a new location (https://forum.dynare.org) where you will have to reset your password.

unit root variables

Postby dhcooper01 » Wed Apr 12, 2017 2:38 am

Hello,

I was reading some an old post about unit root variables in Dynare and the obsolete "unit_root_vars" command as well as the diffuse_filter.

https://github.com/DynareTeam/dynare/issues/573

Has dynare been updated at all over the last few years to deal with simulating models where one or more variables may be nonstationary? I have a model in growth rates (which are stationary) that includes some cointegrating relationships where the level variables are not stationary. I am able to simulate the model in AIM, but I am trying to convert everything to Dynare and it does not like the fact that there is not a steady state given the trending level variables (e.g. the log level of GDP). AIM is able to deal with the unit root processes, but I cannot figure out how to get the exact same model and model parameters to work with Dynare.

A very simplified example highlighting the issue is as follows:

gc = f(gc(-1), C(-1), Y(-1), W(-1), r, ...)

C = C(-1) + gc +eps_c

...and so on

where f(*) is a generic function command, gc is consumption growth, C is the log-level of consumption, Y is the log level of income, W is the log level of wealth, and r is the interest rate.
dhcooper01
 
Posts: 4
Joined: Thu Jun 23, 2016 1:54 pm

Re: unit root variables

Postby jpfeifer » Wed Apr 12, 2017 8:26 am

Hi,

pure non-stationary models have an infinity of steady states; non-stationary models with drift have none.

In Dynare, this creates a problem if you have a non-linear model where you need to compute a local approximation. In this case, you cannot endogenously compute the steady state, because there are many of them. You need to provide the steady state.

If your model is already linear, there should be no such problem, because the default initial value of 0 already is the steady state.

A simulation example of a model with unit root would be the standard local trend model:

Code: Select all
var beta mu psi   tren slop cyc v;

varexo e_irr e_lev e_slp e_cyc;

parameters rho sdirr sdlev sdslp sdcyc;
   
rho    = 0.75;   
sdirr = 0.005; 
sdlev = 0.0001;
sdslp = 0.0001;
sdcyc = 0.005;

model(linear);
   mu   = mu(-1) + beta(-1) + sdlev*e_lev;
   beta =   beta(-1) + sdslp*e_slp;
   psi = rho*psi(-1) + sdcyc*e_cyc;
      
   tren =   mu(-1);
   
   slop =   beta(-2);
   
   cyc = psi(-1);
   
   v = tren + cyc + sdirr*e_irr;   
end;

shocks;
   var e_irr; stderr 1;
   var e_lev; stderr 1;
   var e_slp; stderr 1;
   var e_cyc; stderr 1;
end;

stoch_simul(order=1,irf=20,periods=200);

rplot tren cyc;
------------
Johannes Pfeifer
University of Cologne
https://sites.google.com/site/pfeiferecon/
jpfeifer
 
Posts: 6940
Joined: Sun Feb 21, 2010 4:02 pm
Location: Cologne, Germany


Return to Dynare help

Who is online

Users browsing this forum: Google [Bot] and 6 guests