Hi Statalist users,
After Giovanni’s helpful comments, I did a little experiment with xtabond and got results that lead me to believe that there’s a programming flaw in xtabond (but I hope I’m wrong) with regard to how it deals with endogeneity. Consider the model
y(it) = a(i) + b1 * y(it-1) + b2 * x(it) + b3 * x(it-1) + e(it)
I found that the following two commands give identical results:
1. xtabond y , lags(1) pre(x, lag(1,1) )
4. xtabond y L.x, lags(1) pre(x, lag(0,1) )
So when you ask Stata to treat x as a predetermined variable, to use its lag also as a regressor, and to instrument x with its own lag, then what it is doing in reality is: treating x(it) as a predetermined variable, using x(it-1) as an instrument, and treating the variable z(it) = x(it-1) as strictly exogenous. However, if x(it) is predetermined, which means that
E[ e(it) | a(i), x(i1), x(i2),…,x(it-1), x(it) ] = 0 (Equ.1)
but that possibly
E[ e(it) | a(i), z(it+1), z(it+2),…,z(iT) ] not= 0 (Equ.2)
(where a(i) is the unobserved effect), then it is impossible that z(it) is strictly exogenous. Strict exogeneity of z(it) would mean that
E[ e(it) | a(i), z(i1), z(i2),…,z(iT) ] = 0 (Equ.3)
However, given Equ.1 and Equ.2 above, we must have
E[ e(it) | a(i), z(i1), z(i2),…,z(it), z(it+1) ] = 0
but possibly
E[ e(it) | a(i), z(it+2), …, z(iT) ] not= 0
Which obviously does not square with Stata’s treatment of z in the fashion of Equ.3. I hope this was lucidly explained. Am I seeing this wrongly or is there indeed a flaw with the way xtabond was programmed???
Thanks,
Tewodaj
*
* For searches and help try:
* http://www.stata.com/support/faqs/res/findit.html
* http://www.stata.com/support/statalist/faq
* http://www.ats.ucla.edu/stat/stata/