I am estimating an equation using GMM in a panel workfile:
Code: Select all
equation eq.gmm y=exp(c(1))*x1+c(2)*x2+exp(c(3))*x3+(((2*exp(c(1))*(exp(c(3))-1))/( (c(2)^2+4*exp(c(1)))^0.5+c(2)) ) -c(2))*x4 @ x1 x2 x3 x4 ID
where ID is the cross-section identifier. If I alternatively create a dummy variable for each cross-section identifier and estimate the equation
Code: Select all
equation eq.gmm y=exp(c(1))*x1+c(2)*x2+exp(c(3))*x3+(((2*exp(c(1))*(exp(c(3))-1))/( (c(2)^2+4*exp(c(1)))^0.5+c(2)) ) -c(2))*x4 @ x1 x2 x3 x4 dummy1 dummy2 ... dummyN
I get identical results (see pictures below). The advantage of using the first specification is that it is about 15 times faster than the second specification (maybe because of sparse matrix functionality ...).
However, if I remove X1, X2, X3 and X4 as instruments, I can only estimate the second equation. The reason is that EViews states that when using the command
Code: Select all
equation eq.gmm y=exp(c(1))*x1+c(2)*x2+exp(c(3))*x3+(((2*exp(c(1))*(exp(c(3))-1))/( (c(2)^2+4*exp(c(1)))^0.5+c(2)) ) -c(2))*x4 @ ID
the order condition is violated as there are too few instruments. But is this not because EViews counts the ID variable as being one instrument (and not equal to the number of cross-sections?).
Question 1: are the first two gmm equation specifications above equivalent?
Question 2: if yes, why does not EViews count the ID variable as multiple instruments, equal to the number of cross-sections?
t