# vcovHC, vcovHAC, NeweyWest – which function to use?

I am trying to update my lm() based model to get correct standard errors and tests. I am really confused which VC matrix to use. The sandwich package offers vcovHC , vcovHAC and NeweyWest. While the former only accounts for heteroskedasticity the latter two account for both serial correlation and heteroskedasticity. Yet, the documentation does not tell much about the difference between the latter two (at least I don't get it). Looking to the function itself I realized that NeweyWest actually calls vcovHAC.

Empirically the results of coeftest(mymodel, vcov. = vcovHAC) and coeftest(mymodel, vcov. = NeweyWest)are mad different. While vcovHACis somewhat close to the naive lm results, using NeweyWest all coefficients turn insignificant (tests even close to 1).

-
Usually the R help pages give link to the articles. The precise details usually reside there. Zeileis article for example is freely available and contains wealth of information. –  mpiktas Sep 16 '11 at 7:15
Zeileis article specifically states how vcovHAC is different from NeweyWest. To summarise, different HAC methods differ only on choice of weights. NeweyWest has its specified weights, vcovHAC is a general function, which lets you supply your own weights, and by default uses Andrews weights. –  mpiktas Sep 16 '11 at 7:23
@mpiktas: thx for the summary. Since I haven't specified any weights, the respective default weights should be used. Now that I know, I should maybe restate my question to: Why do different default weights of vcovHAC and NeweyWest make such a huge difference and how to determine weights? I mean do you know which weights STATA or other packages use? –  hans0l0 Sep 16 '11 at 9:30
all these calculations depends on the fact that $x_tu_t$ are stationary variables, where $x_t$ are the regressors and $u_t$ are the disturbances. Stationarity is a bit restrictive property, so check whether it holds. –  mpiktas Sep 16 '11 at 11:22