Dear Statalist-users,
I am using the system GMM method for dynamic panel data. I was wondering how to deal with time-invariant regressors in this method. Roodman (2009) says:
"In system GMM, one can include time-invariant regressors, which would disappear in difference GMM. Asymptotically, this does not affect the coefficient estimates for other regressors because all instruments for the levels equation are assumed to be orthogonal to fixed effects, indeed to all time-invariant variables."
However, I do not understand how one can use the lagged first-difference as instrument in the level equation and the lagged level as instrument in the first-difference equation, as the first-difference is by definition equal to zero. The only option, in my opinion, is to treat these time-invariant regressors as exogenous and only include them in the level equations, as this will make Stata only use the lagged levels as instruments for the levels (no first-difference is used).
What do you think? Is there a way to treat time-invariant variables as endogenous in the system GMM method? If so, how?
To be complete, this is the command in Stata I use, in which BF*_c is time-invariant:
Thank you in advance!
I am using the system GMM method for dynamic panel data. I was wondering how to deal with time-invariant regressors in this method. Roodman (2009) says:
"In system GMM, one can include time-invariant regressors, which would disappear in difference GMM. Asymptotically, this does not affect the coefficient estimates for other regressors because all instruments for the levels equation are assumed to be orthogonal to fixed effects, indeed to all time-invariant variables."
However, I do not understand how one can use the lagged first-difference as instrument in the level equation and the lagged level as instrument in the first-difference equation, as the first-difference is by definition equal to zero. The only option, in my opinion, is to treat these time-invariant regressors as exogenous and only include them in the level equations, as this will make Stata only use the lagged levels as instruments for the levels (no first-difference is used).
What do you think? Is there a way to treat time-invariant variables as endogenous in the system GMM method? If so, how?
To be complete, this is the command in Stata I use, in which BF*_c is time-invariant:
Code:
xi: xtabond2 logsavings L.logsavings BF*_c cc_hh ni incunc age agesq edu i.year, gmm(L.logsavings, lag(2 .)) gmm(cc_hh ni incunc age agesq edu, lag(2 .)) iv(BF*_c i.year, equation(level)) two r nocons
Comment