The test is proposed by Kleibergen (2005). It is robust to weak identification.
KTest(obj, theta0 =NULL, alphaK =0.04, alphaJ =0.01)## S3 method for class 'gmmTests'print(x, digits =5,...)
Arguments
obj: Object of class "gmm" returned by gmm
theta0: The null hypothesis being tested. See details.
alphaK, alphaJ: The size of the J and K tests when combining the two. The overall size is alphaK+alphaJ.
x: An object of class gmmTests returned by KTest
digits: The number of digits to be printed
...: Other arguments when print is applied to another class object
Details
The function produces the J-test and K-statistics which are robust to weak identification. The test is either H0:θ=theta0, in which case theta0 must be provided, or β=β0, where θ=(α′,β′)′, and α is assumed to be identified. In the latter case, theta0 is NULL and obj is a restricted estimation in which β is fixed to β0. See gmm and the option "eqConst" for more details.
Returns
Tests and p-values
References
Keibergen, F. (2005), Testing Parameters in GMM without assuming that they are identified. Econometrica, 73 , 1103-1123,
Examples
library(mvtnorm)sig <- matrix(c(1,.5,.5,1),2,2)n <-400e <- rmvnorm(n,sigma=sig)x4 <- rnorm(n)w <- exp(-x4^2)+ e[,1]y <-0.1*w + e[,2]h <- cbind(x4, x4^2, x4^3, x4^6)g3 <- y~w
res <- gmm(g3,h)# Testing the whole vector:KTest(res,theta0=c(0,.1))# Testing a subset of the vector (See \code{\link{gmm}})res2 <- gmm(g3, h, eqConst=matrix(c(2,.1),1,2))res2
KTest(res2)