2.5 The stylized facts
Motivation
Before building any model, know what it has to reproduce. Cont (2001) summarised eleven statistical properties common to returns across assets, markets and periods. A model that fails them, such as iid normal returns, will misprice options, underestimate drawdowns and size positions too large.
2.5.1Cont's eleven facts#
Cont's list (Quantitative Finance 1(2):223–236): (1) absence of linear autocorrelation, except at intraday scales; (2) heavy tails, with tail index between 2 and 5; (3) gain/loss asymmetry (large drawdowns without equally large upward moves); (4) aggregational Gaussianity (the distribution approaches normal as the horizon lengthens); (5) intermittency (bursts of large changes at all scales); (6) volatility clustering; (7) conditional heavy tails (residuals remain heavy-tailed after a GARCH-type correction); (8) slow decay of the autocorrelation of absolute returns, roughly a power law with exponent between 0.2 and 0.4; (9) the leverage effect (volatility is negatively correlated with past returns); (10) volume/volatility correlation; (11) asymmetry in time scales (coarse-grained volatility predicts fine-scale volatility better than the reverse).
2.5.2The facts in Indian data#
Evidence on the Nifty sample (daily, 2007–2026)
| Fact | Statistic | Nifty value | Under iid normal |
|---|---|---|---|
| (1) no autocorrelation | of | 0.037, −0.005, −0.025, −0.024, 0.004 | (2 s.e.) |
| (2) heavy tails | excess kurtosis | 15.2 | 0 ± 0.14 |
| (2) heavy tails | days with | 38 | 0.30 expected |
| (2) heavy tails | days with | 12 | 0.003 expected |
| (2) heavy tails | Hill , , both tails | 3.05 | |
| (3) asymmetry | skewness; Hill left vs right () | −0.28; 2.61 vs 2.86 | 0 |
| (6), (8) clustering | of at lags 1, 5, 10, 20, 50, 100 | 0.28, 0.27, 0.28, 0.22, 0.15, 0.14 | 0 ± 0.03 |
| (6) clustering | annual volatility by year | 9.0% (2017) to 44.7% (2008) | constant |
Two features deserve emphasis. The autocorrelation of is still 0.14 at a lag of 100 trading days, which is five months: volatility has long memory. And the largest standardised moves were (23 Mar 2020), (24 Oct 2008) and (18 May 2009, the first session after the 2009 general-election results, when the index hit its upper circuit), measured with the full-sample standard deviation. Under a normal model a day has probability about .
The existing exercise file exercises/modules/M02-statistics-of-returns/exercises/m02_returns_stats.py (functions excess_kurtosis, autocorr, vol_clustering, tail_ratio, looks_like_real_market) implements these diagnostics; its tests check that they separate GARCH-with-jumps synthetic data from GBM. Run them on a cached Nifty series (toolkit.data.load("NIFTY", source="cache"), from NSE's index files) to reproduce the table.
Practitioner notes
- Absence of autocorrelation in returns is not independence. Returns are close to unpredictable in sign and highly predictable in magnitude. Volatility forecasting (M09, M13) works for this reason; return forecasting mostly does not.
- The stylized facts are about liquid assets at daily frequency. Illiquid small-caps show positive autocorrelation from stale prices, and intraday returns show bid–ask bounce (negative first-order autocorrelation, M05).