1

For my project, I need to assess if a certain factor X leads to a CAPM-Anomaly. First, I sorted the monthly stock return (sample size: 500+ observations) according to the X factor in 10 decile portfolios ("DP"). Afterwards, I performed for each decile portfolio a linear regression to evaluate if each alpha is significantly different from zero. The linear Regression for the i-th decile portfolio is: $$R_{i,t}-R^f_t = \alpha_i + \beta_i(R^m_t-R^f_t)+ \epsilon_{i,t}$$

Since I'm dealing with a time serie, I will adjust for heteroskedasticity and autocorrelation with the Newey-West (1987) correlation corrector with 6 lags.

Results: The decile portfolios DP1, DP2 have significant negative alphas and DP8, DP9, DP10 a significant positive alpha. However, I would primarily be interested if/not all alphas are jointly equal to zero. I already saw posts that discussed the GRS-Test proposed by Gibbons, Ross, and Shanken (1989) but this test has the major drawback that it assumes normally distributed uncorrelated homoskedastic error terms. Somebody mentioned a test with the Chi-Squared-Distribution but didn't elaborate what the assumptions were let alone how to perform it in R.

I would be so grateful if somebody would know a less restrictive test for evaluating if all alphas are jointly equal to zero. Specifically, I would be interested in the underlying assumptions of the test (preferably with a source) as well as the concrete code in R (if it doesn't causes too much inconvenience) :D

Here is the code which I have so far (for the first decile portfolio DP1)

library(sandwich)
library(lmtest)

#Performing Linear Regression L1 <- lm(DP1 ~ MktRf, data = DATA)

#Building NeweyWest Covariance Corrector NW_VCOV_L1 <- NeweyWest(L1, lag = 6, prewhite = F, adjust = T)

#Performing Covariance Test coeftest(L1, vcov = NW_VCOV_L1)

which yields following Output

t test of coefficients:
           Estimate  Std. Error t value  Pr(&gt;|t|)    

(Intercept) -0.00327902 0.00068035 -4.8196 1.799e-06 *** MktRf 0.92165566 0.02334994 39.4714 < 2.2e-16 ***


Signif. codes: 0 ‘*’ 0.001 ‘’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Ocean
  • 31
  • 3

0 Answers0