Page 1 of 1

Identification Issue

PostPosted: Fri Feb 10, 2017 1:46 pm
by jd1090
Hi,

I have come across a bizarre identification issue. I'm working with quadratic adjustment costs:

Code: Select all
DELTA_m=(phi_m/2)*(((m/m(-1))-1)^2);                                                                                 %QAC
dDELTA_m=phi_m*((m/m(-1))-1);                                                                                           %slope of the QAC


where phi_m>0 and m is a control variable. Now suppose that these QAC are meant to model deviations from the following equation:

Code: Select all
q_dot=s*e


where s is another control variable and e is an endogenous 'error' term given by:

Code: Select all
(1-DELTA_m-dDELTA_m*(m/m(-1)))*(e-1)+beta*dDELTA_m(+1)*((m(+1)/m)^2)*(e(+1)-1)=0;                                     


Now the issue is as follows. Although both s and m are well-behaved, mean-reverting endogenous variables, for some reason DELTA_m is not identified for a first order perturbation (it is for 2nd and 3rd). While dDELTA_m is always identified, 'e' is never identified. And when I say not identified, I mean that their value is stuck at the initial condition (i.e. the steady state) throughout the 'irf=integer' horizon.

Why is this happening? The error term function looks a lot like a standard Tobin's Q. There is no collinearity, BK conditions hold and irfs of all the other variables look smooth.

Thanks

Re: Identification Issue

PostPosted: Sat Feb 11, 2017 6:47 am
by jpfeifer
I am not sure I really understand the problem. It seems not to be about identification of parameters in estimation, which is the usual use of the term "identification" .
What you describe sounds more like a case where you have something that is 0 at first order and not 0 at higher order. An example of this would be quadratic adjustment costs. They are 0 in the budget constraint at first order, but they affect the dynamics in e.g. the investment FOC, because the derivative is not 0. Only when you go to second order is there an effect in the budget constraint.

Re: Identification Issue

PostPosted: Mon Feb 13, 2017 8:06 am
by jd1090
That's right, I may have missused the jargon, but the issue is to do with the endo_simul part of the code. It simply won't generate any dynamics for 'e' and I don't understand why. Please have a look at the .mod file attached below.

Many thanks

Re: Identification Issue

PostPosted: Mon Feb 13, 2017 1:45 pm
by jpfeifer
You need to check your model. If you look at the theoretical moments and policy functions, by using
Code: Select all
stoch_simul(order=1,pruning,irf=12,irf_shocks=(u_lambda_UK),periods=10000,nograph) e;

you will see that
Code: Select all
e

is simply a constant and not affected by anything in your model. You need to find out why. Either it is a model feature or a problem with the first order approximation.

Re: Identification Issue

PostPosted: Mon Feb 13, 2017 2:09 pm
by jd1090
Yes, that is exactly the issue I was trying to raise. Now, because you may not specialise in international macro, I don't want to bore you with the explanations as to why I introduce these additional frictions. But from the outsiders perspective,

Code: Select all
(1-DELTA_m-dDELTA_m*(m/m(-1)))*(e-1)+beta*dDELTA_m(+1)*((m(+1)/m)^2)*(e(+1)-1)=0; 


simply looks like the Tobin's Q if you replace m=investment and "e-1=TQ". The only other equation 'e' appears is:

Code: Select all
q_dot=s*e


And as you can see from the code, there is no collinearity, so that all equations are relevant. I don't understand why the dynamics for 'e' are "not defined"?

Thank you

Re: Identification Issue

PostPosted: Mon Feb 13, 2017 3:17 pm
by jpfeifer
Please have a look at my initial comment. You always have a product of
Code: Select all
dDELTA_m*(e-1)
, which is a product of two objects with steady state 0. Simply do the math here. Up to first order, these terms are 0. A 1% increase of e will increase the product by dDELTA_m, but dDELTA_m=0 in steady state.