I am afraid the last xtdpdgmm update (version 2.3.11) was premature and did more harm than good. I "fixed" a bug that actually wasn't one. I apologize for this mishap.
With the now available latest version 2.4.0, the correct computations have been restored for estat serial and estat hausman. Furthermore, a minor bug in option auxiliary has been fixed which was introduced in version 2.3.10.
As a major new feature, this latest version can now compute the continously-updating GMM estimator as an alternative to the two-step and iterated GMM estimators. Simply specify the new option cugmm. The CU-GMM estimator updates the weighting matrix simultaneously with the coefficient estimates while minimizing the objective function. This is in contrast to the iterated GMM estimator (of which the two-step estimator is a special case), which iterates back and forth between updating the coefficient estimates and the weighting matrix. As a technical comment: The CU-GMM objective function generally does not have a unique minimum. The estimator therefore can be sensitive to the choice of initial values. By default, xtdpdgmm uses the two-stage least squares estimates, ignoring any nonlinear moment conditions, as starting values for the numerical CU-GMM optimization. This seems to work fine.
The following example illustrates the CU-GMM estimator, and how the xtdpdgmm results can be replicated with ivreg2 (up to minor differences due to the numerical optimization):
To update to the new version, type the following in Stata's command window:
Disclaimer: I have extensively tested this new version. However, due to the complexity of the command, the variety of options, and the lack of alternative software to compare the results for some advanced options, I cannot guarantee that the implementation is error-free. Please let me know if you spot any irregularities.
With the now available latest version 2.4.0, the correct computations have been restored for estat serial and estat hausman. Furthermore, a minor bug in option auxiliary has been fixed which was introduced in version 2.3.10.
As a major new feature, this latest version can now compute the continously-updating GMM estimator as an alternative to the two-step and iterated GMM estimators. Simply specify the new option cugmm. The CU-GMM estimator updates the weighting matrix simultaneously with the coefficient estimates while minimizing the objective function. This is in contrast to the iterated GMM estimator (of which the two-step estimator is a special case), which iterates back and forth between updating the coefficient estimates and the weighting matrix. As a technical comment: The CU-GMM objective function generally does not have a unique minimum. The estimator therefore can be sensitive to the choice of initial values. By default, xtdpdgmm uses the two-stage least squares estimates, ignoring any nonlinear moment conditions, as starting values for the numerical CU-GMM optimization. This seems to work fine.
The following example illustrates the CU-GMM estimator, and how the xtdpdgmm results can be replicated with ivreg2 (up to minor differences due to the numerical optimization):
Code:
. webuse abdata . xtdpdgmm L(0/1).n w k, gmm(L.n w k, l(1 4) c m(d)) iv(L.n w k, d) cu nofooter Generalized method of moments estimation Fitting full model: Continously updating: Iteration 0: f(b) = .22189289 Iteration 1: f(b) = .08073713 Iteration 2: f(b) = .07655265 Iteration 3: f(b) = .07646044 Iteration 4: f(b) = .07645679 Iteration 5: f(b) = .07645673 Group variable: id Number of obs = 891 Time variable: year Number of groups = 140 Moment conditions: linear = 16 Obs per group: min = 6 nonlinear = 0 avg = 6.364286 total = 16 max = 8 ------------------------------------------------------------------------------ n | Coefficient Std. err. z P>|z| [95% conf. interval] -------------+---------------------------------------------------------------- n | L1. | .4342625 .1106959 3.92 0.000 .2173024 .6512225 | w | -2.153388 .3702817 -5.82 0.000 -2.879126 -1.427649 k | -.0054155 .1221615 -0.04 0.965 -.2448477 .2340166 _cons | 7.284639 1.123693 6.48 0.000 5.082241 9.487037 ------------------------------------------------------------------------------ . predict iv*, iv 1, model(diff): L1.L.n L2.L.n L3.L.n L4.L.n L1.w L2.w L3.w L4.w L1.k L2.k L3.k L4.k 2, model(level): D.L.n D.w D.k 3, model(level): _cons . ivreg2 n (L.n w k = iv*), cue cluster(id) nofooter Iteration 0: f(p) = 31.065005 (not concave) Iteration 1: f(p) = 27.307398 (not concave) Iteration 2: f(p) = 26.543788 (not concave) Iteration 3: f(p) = 25.047573 (not concave) Iteration 4: f(p) = 24.521102 (not concave) Iteration 5: f(p) = 24.107293 (not concave) Iteration 6: f(p) = 23.931765 (not concave) Iteration 7: f(p) = 23.746613 (not concave) Iteration 8: f(p) = 23.636564 Iteration 9: f(p) = 23.304181 (not concave) Iteration 10: f(p) = 23.241277 (not concave) Iteration 11: f(p) = 23.178503 (not concave) Iteration 12: f(p) = 23.125314 (not concave) Iteration 13: f(p) = 23.074408 Iteration 14: f(p) = 19.278726 Iteration 15: f(p) = 12.160385 (not concave) Iteration 16: f(p) = 11.700402 Iteration 17: f(p) = 11.03222 (not concave) Iteration 18: f(p) = 10.950583 (not concave) Iteration 19: f(p) = 10.907663 Iteration 20: f(p) = 10.800048 Iteration 21: f(p) = 10.704051 Iteration 22: f(p) = 10.703945 Iteration 23: f(p) = 10.703942 Iteration 24: f(p) = 10.703942 CUE estimation -------------- Estimates efficient for arbitrary heteroskedasticity and clustering on id Statistics robust to heteroskedasticity and clustering on id Number of clusters (id) = 140 Number of obs = 891 F( 3, 139) = 83.84 Prob > F = 0.0000 Total (centered) SS = 1601.042507 Centered R2 = 0.5099 Total (uncentered) SS = 2564.249196 Uncentered R2 = 0.6940 Residual SS = 784.7107633 Root MSE = .9385 ------------------------------------------------------------------------------ | Robust n | Coefficient std. err. z P>|z| [95% conf. interval] -------------+---------------------------------------------------------------- n | L1. | .4342987 .1003318 4.33 0.000 .2376521 .6309453 | w | -2.153233 .2986292 -7.21 0.000 -2.738535 -1.56793 k | -.0053816 .1162739 -0.05 0.963 -.2332742 .2225111 _cons | 7.284114 .8901409 8.18 0.000 5.539469 9.028758 ------------------------------------------------------------------------------
Code:
net install xtdpdgmm, from(http://www.kripfganz.de/stata) replace
Comment