Chapter 23: Estimating Volatilities and Correlations
5 min readEstimating Volatility
For an asset with price SiS_i, define the continuously compounded daily return:
ui=ln(SiSi−1)u_i = \ln\left(\frac{S_i}{S_{i-1}}\right)
The standard estimate of daily variance:
σn2=1m−1∑i=1m(un−i−uˉ)2\sigma_n^2 = \frac{1}{m-1}\sum_{i=1}^{m}(u_{n-i} - \bar{u})^2
where uˉ\bar{u} is the mean of uiu_i. Usually uˉ\bar{u} is assumed to be zero for simplicity (daily mean return is negligible relative to volatility).
The annualized volatility:
σannual=σdaily×252\sigma_{\text{annual}} = \sigma_{\text{daily}} \times \sqrt{252}
Standard approach weighs all past observations equally — not ideal because recent data is more relevant.
EWMA Model
The Exponentially Weighted Moving Average model gives more weight to recent observations. The variance estimate is updated recursively:
σn2=λσn−12+(1−λ)un−12\sigma_n^2 = \lambda \sigma_{n-1}^2 + (1 - \lambda) u_{n-1}^2
where λ\lambda is the decay factor (0<λ<10 < \lambda < 1).
- λ=0.94\lambda = 0.94 is commonly used (RiskMetrics)
- As λ→1\lambda \to 1, the model approaches equal weighting
- As λ→0\lambda \to 0, only the most recent observation matters
Advantages:
- Less data needed to store
- More responsive to volatility changes
- Automatically captures volatility clustering
The GARCH(1,1) Model
Generalized AutoRegressive Conditional Heteroskedasticity (GARCH) adds mean reversion:
σn2=γVL+αun−12+βσn−12\sigma_n^2 = \gamma V_L + \alpha u_{n-1}^2 + \beta \sigma_{n-1}^2
where:
- VLV_L = long-run average variance
- γ\gamma = weight on long-run variance
- α\alpha = weight on the most recent squared return
- β\beta = weight on the most recent variance estimate
And the constraint: γ+α+β=1\gamma + \alpha + \beta = 1
Setting ω=γVL\omega = \gamma V_L:
σn2=ω+αun−12+βσn−12\sigma_n^2 = \omega + \alpha u_{n-1}^2 + \beta \sigma_{n-1}^2
- α+β\alpha + \beta measures persistence of volatility
- If α+β=1\alpha + \beta = 1, the model becomes the EWMA model (integrated GARCH or IGARCH)
- If α+β<1\alpha + \beta < 1, volatility reverts to VLV_L
GARCH captures two key features of financial returns:
- Volatility clustering: Large/small returns tend to be followed by large/small returns
- Mean reversion: Volatility tends toward a long-run average
Choosing Between Models
| Criterion | EWMA | GARCH(1,1) |
|---|---|---|
| Responsiveness | Good | Good (tunable) |
| Mean reversion | No | Yes |
| Forecast horizon | Short-term only | Short and long term |
| Parameter estimation | Simple (choose λ\lambda) | Requires MLE |
| Tracking structural changes | Better with small λ\lambda | Reverts to VLV_L |
Maximum Likelihood Estimation (MLE) is used to estimate GARCH parameters.
Forecasting Future Volatility
Under GARCH(1,1), the expected variance kk days ahead:
E[σn+k2]=VL+(α+β)k−1(σn+12−VL)E[\sigma_{n+k}^2] = V_L + (\alpha + \beta)^{k-1}(\sigma_{n+1}^2 - V_L)
As k→∞k \to \infty, the forecast converges to the long-run variance VLV_L. The speed of convergence depends on α+β\alpha + \beta.
The volatility term structure: for an option maturing at TT, the average variance over the life:
V(T)=VL+1−e−aTaT[σ(0)2−VL]V(T) = V_L + \frac{1 - e^{-aT}}{aT}[\sigma(0)^2 - V_L]
where a=ln(1/(α+β))a = \ln(1/(\alpha+\beta)).
Estimating Correlations
The covariance between two assets XX and YY:
covn=λ⋅covn−1+(1−λ)⋅xn−1⋅yn−1\text{cov}_n = \lambda \cdot \text{cov}_{n-1} + (1 - \lambda) \cdot x_{n-1} \cdot y_{n-1}
(using EWMA), where xix_i and yiy_i are the returns on day ii.
The correlation:
ρn=covn(X,Y)σX(n)⋅σY(n)\rho_n = \frac{\text{cov}_n(X, Y)}{\sigma_X(n) \cdot \sigma_Y(n)}
For multivariate GARCH, there are more sophisticated models like DCC (Dynamic Conditional Correlation) and BEKK that ensure the covariance matrix is positive definite.