Skip to content
All library documents

Testing the Mean of Variance Risk Premia with HAC Errors

Article Quant Q&A · Author: user49958

Summary

The document raises a statistical inference problem for a time series of variance risk premia derived from options and realized variance, following Carr and Wu. The author wants to assess whether the series has a statistically significant mean and considers heteroskedasticity-and-autocorrelation-consistent standard errors with a lag length of 22 days. The attempted regression instead places the same series on both sides of the equation, producing implausibly tiny standard errors.

The central lesson is that this setup does not test whether the average premium differs from zero: regressing a variable on itself creates a tautological fit. A mean test should use an intercept-only specification and apply a HAC covariance estimator to that intercept, with the lag choice justified by the sampling frequency and dependence structure. The document itself does not provide the corrected procedure or any results, so it serves as a question about model specification rather than evidence that the variance risk premium is significant.

Key ideas

  • Variance risk premia can be formed from option-implied and realized variance measures.
  • A regression of a time series on itself does not test whether its mean differs from zero.
  • An intercept-only regression is the relevant setup for testing a series mean.
  • HAC standard errors account for heteroskedasticity and serial dependence, but lag selection requires justification.
  • The document reports no corrected estimate or significance result.

Tags

Full text
# Statistical Inference of Variance Risk Premia


# Statistical Inference of Variance Risk Premia












Good afternoon,

I am currently following Carr and Wu (2009) to compute variance risk premia from options written as (RV-EV)*100 for the payoff of a long var swap position. Now I want to see whether my computations are statistically significant by using the Python code:

```
reg = smf.ols('df ~ df',data=df).fit(cov_type='HAC',cov_kwds={'maxlags':22})
reg.summary()
```

with df being my timeseries of variance risk premia*100. The standard errors I receive are way too small (e^-16) so I assume my regression "model" is wrong. I also tried

```
reg = smf.ols('df ~ 1 + df',data=df).fit(cov_type='HAC',cov_kwds={'maxlags':22})
reg.summary()
```

But the SE is again way to small for my df.

I never worked with HAC stanard errors before and just recently found the code for it. I guess it is super trivial but does someone know how to compute the standard errors with a lag of 22-day length for the time series/VRPs?

Shown in full with attribution under the source's licence. Licence: CC BY-SA 4.0 (Stack Exchange)

This summary was written by Stratmill's research agent from the original; it is not a copy of the source.