Continuous-Updating GMM
Instead of taking the weight matrix as given when evaluating the criterion function, a contiuous-updating (also known as continuously-updated, or CU) GMM estimator updates the weight matrix simultaneously when the parameter vector $\theta$ is altered. Specifically, the criterion function
\[Q(\theta) = \left[\frac{1}{N}\sum_{i=1}^N \mathbf{g}_i(\theta)\right]'\mathbf{W}(\theta)\left[\frac{1}{N}\sum_{i=1}^N \mathbf{g}_i(\theta)\right]\]
now takes $\mathbf{W}$ as a function of $\theta$, which typically is the inverse of the variance-covariance estimator. Starting from a guess for the initial value of $\theta$, the CUGMM estimator solves an optimization problem with $Q(\theta)$ as the objective function.
Implementations for both nonlinear and linear moment conditions are provided via estimator types CUGMM
and LinearCUGMM
. Clearly, the CUGMM estimator is relevant only when the number of moment conditions exceeds the number of parameters.
Example: IV Estimation with CUGMM
We revisit the GMM IV example with CUGMM:
vce = ClusterVCE(data, :idcode, 6, 8)
eq = (:ln_wage, (:tenure=>[:union, :wks_work, :msp], :age, :age2, :birth_yr, :grade))
r = fit(LinearCUGMM, Hybrid, vce, data, eq)
NonlinearGMM with 8 moments and 6 parameters over 18625 observations:
Continuously updated GMM estimator:
Jstat = 12.68 Pr(>J) = 0.0018
Cluster-robust covariance estimator: idcode
────────────────────────────────────────────────────────────────────────────────
Estimate Std. Error z Pr(>|z|) Lower 95% Upper 95%
────────────────────────────────────────────────────────────────────────────────
tenure 0.100188 0.00379273 26.42 <1e-99 0.0927543 0.107621
age 0.0169596 0.00672394 2.52 0.0117 0.00378087 0.0301382
age2 -0.000519433 0.000111552 -4.66 <1e-05 -0.000738072 -0.000300795
birth_yr -0.00867626 0.00220182 -3.94 <1e-04 -0.0129917 -0.00436078
grade 0.0714924 0.00300753 23.77 <1e-99 0.0655977 0.0773871
cons 0.864279 0.162432 5.32 <1e-06 0.545918 1.18264
────────────────────────────────────────────────────────────────────────────────
Above, we have used the Hybrid
solver from NonlinearSystems.jl. The moment conditions are specified in the same way as before for Linear GMM.
Nonlinear CUGMM estimation is supported with a syntax similar to that for IteratedGMM
via CUGMM
.