gmm (version 1.8)

KTest: Compute the K statistics of Kleibergen

Description

The test is proposed by Kleibergen (2005). It is robust to weak identification.

Usage

KTest(obj, theta0 = NULL, alphaK = 0.04, alphaJ = 0.01)
# S3 method for gmmTests
print(x, digits = 5, ...)

Value

Tests and p-values

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:\theta=theta_0\), in which case theta0 must be provided, or \(\beta=\beta_0\), where \(\theta=(\alpha', \beta')'\), and \(\alpha\) is assumed to be identified. In the latter case, theta0 is NULL and obj is a restricted estimation in which \(\beta\) is fixed to \(\beta_0\). See gmm and the option "eqConst" for more details.

References

Keibergen, F. (2005), Testing Parameters in GMM without assuming that they are identified. Econometrica, 73, 1103-1123,

Examples

Run this code

library(mvtnorm)
sig <- matrix(c(1,.5,.5,1),2,2)
n <- 400
e <- 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)

Run the code above in your browser using DataLab