Estimating a Cointegration Hedge Ratio with Regression or Johansen
Summary
The document compares ways to estimate a hedge ratio for two cointegrated price series, including when their ordinary correlation is low. One answer recommends regressing one series on the other and using the estimated slope as the hedge ratio. Another proposes the Johansen cointegration test, using the eigenvector associated with the largest eigenvalue to identify a linear combination intended to be stationary. It also advises checking whether each series is individually nonstationary before applying cointegration methods.
A final example highlights a limitation: a stationary series paired with a constant can produce a zero regression slope, even though no hedge is needed for the stationary series. The discussion is brief and gives no empirical comparison or detailed model diagnostics. It does not explain how regression direction, deterministic terms, sample choice, or changing hedge ratios may affect estimates, so these methods require further validation before trading use.
Key ideas
- OLS regression can estimate a slope used as a hedge ratio between two series.
- The Johansen method can estimate a stationary linear combination through its cointegrating eigenvector.
- Check that the original series are individually nonstationary before interpreting a cointegration relationship.
- A zero hedge ratio can arise when one series is stationary and the other is constant.
Tags
Full text
# If two price series are cointegrated but not correlated, how do I find the hedge ratio? # If two price series are cointegrated but not correlated, how do I find the hedge ratio? Mathematically, what is going on here? ## Answer by vibhu_singh (score 1) https://quant.stackexchange.com/a/45118 If two price series are cointegrated, you can run the linear regression to calculate the hedge ratio. The linear regression is in the form: $$y = \beta X + \epsilon$$ where, $y$ is the dependent variable, $X$ is the independent variables, and $\beta$ is the slope that we want to estimate and $\epsilon$ is the error term. In Python, the OLS function from the statsmodels package is used to calculate the hedge Ratio: ``` statsmodels.api.OLS (dependent_variable(y), independent_variable(X)) ``` ## Answer by Dhruv Mahajan (score 1) https://quant.stackexchange.com/a/53986 To find the hedge ratio you can run the Johansen Cointegration test and the eigen-vector corresponding to the largest eigenvalue would give you the hedge ratio, you can see with a bit mathematical intuition that it means “The best linear combination of the two series to maintain a stationary series”. The eigenvector would ideally be something like (1, -ve) for a pair since hedge ratio has to be negative. Also before this you’d need to check whether the original pair was individually non-stationary. ## Answer by LazyCat (score 0) https://quant.stackexchange.com/a/38467 Think of the case, when one time series is a constant equal to zero, and the second time series is stationary. You still can run regression to find the hedge ratio is zero, and you don't need to hedge a stationary price with a constant.
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.