GARCH
Coming soonAdvanced & specialized
This test is implemented and is currently going through StatMinds’ production verification: every statistic is independently checked against a trusted reference (scipy / R), locked with regression tests, and the screen is exercised across assumption-met/violated and significant/non-significant scenarios before it opens up.
See what’s live nowModels the CONDITIONAL VARIANCE of a time series as depending on lagged squared returns (ARCH terms) and lagged conditional variances (GARCH terms): σ²_t = ω + Σ α_i ε²_{t-i} + Σ β_j σ²_{t-j}.
Captures volatility clustering — periods of high vs low variance that is the dominant feature of financial returns. The engine fits GARCH(1,1) by default with auto-selection of ARMA mean structure, validates ARCH-LM on residuals, and reports volatility forecasts plus VaR / ES quantiles. Variants (EGARCH, GJR-GARCH) capture asymmetric volatility.
Worked example
How volatile are these returns, and does the volatility cluster?
Daily returns over 500 days were modelled with GARCH(1,1) to capture volatility that clusters into calm and turbulent periods.
Volatility was highly persistent (α + β = 0.97; α = 0.08, β = 0.88), confirming pronounced volatility clustering.
A GARCH(1,1) model showed strong, persistent volatility clustering (α + β = 0.97).
Try it yourself: Load this ready-made sample and follow the run above.
When to use it
- Financial returns volatility forecasting5 years of daily S&P 500 log-returns.
- Value-at-Risk (VaR) / Expected Shortfall calculationBank portfolio: compute daily 99% VaR on a $100M equity position.
When NOT to — use instead
- Mean-only forecastingIf you only need the conditional MEAN, ARIMA is sufficient and simpler. → ARIMA
- No volatility clustering (ARCH-LM fails to reject)GARCH adds parameters to capture volatility clustering. → ARIMA
- Multivariate volatility (correlation matrix dynamics)GARCH is univariate.
- Sub-100 observation seriesGARCH parameter estimation requires substantial data for stable estimates. → ARIMA
Hypotheses
Parameter tested: Persistence (alpha + beta) with model-comparison AIC across GARCH(1,1), GARCH(1,2), GARCH(2,1).
Assumptions (and what to do if they fail)
Check: ADF p < 0.05.
If violated: Non-stationary mean invalidates GARCH MLE; the unconditional variance does not exist.
Check: ARCH-LM p < 0.05.
If violated: No ARCH effects means constant variance — GARCH is unnecessary.
Check: No observations beyond 5 IQR.
If violated: Extreme outliers can bias GARCH parameter estimates and inflate persistence.
Ready to run a GARCH on your own data?
Guided setup, automatic assumption checks, effect sizes, figures and an APA write-up.
Run this test →