Lesson 2.2: Distributions, fat tails and volatility
Learn why market returns are not normal: skewness, kurtosis and fat tails, volatility clustering, and how to estimate volatility with a rolling window and EWMA.
By the end of this lesson you will be able to describe a return distribution by its mean, standard deviation, skewness and kurtosis, explain why extreme days in financial markets happen far more often than a normal distribution allows, show how a mixture of calm and stormy days produces fat tails, and estimate current volatility with a rolling window and with an exponentially weighted average. You will show that a move of four standard deviations, which a normal model puts at one day in about 15,800, is closer to one day in 200 for a fat-tailed model, that a sample of twenty returns can have a kurtosis of 8.3 against the normal's 3, and that a single return of −3 per cent lifts an estimate of volatility from 1.00 to 1.22 per cent a day and takes about eleven days to lose half of its extra variance. You should have read Lesson 2.1 and Lesson 1.3, whose standard deviation and square-root rule we use here. The mathematics is averages, powers and square roots. This course is education about how markets and research work, not investment advice.
In Lesson 1.3 we used the standard deviation as the measure of risk, and in Lesson 2.1 we used the normal distribution to turn a z-score into a probability. Both are good first approximations and both fail in exactly the place where it hurts: the extreme days. A risk model that treats a 5 per cent fall in a day as a once-in-a-million event is not describing markets, and a trader who sizes positions on that model will be wiped out by an event the model calls impossible. This lesson shows what real return distributions look like, why, and what to do about it.
The normal distribution and why we start there
The normal distribution, or bell curve, is described by two numbers: its mean μ and its standard deviation σ. Its probabilities follow a fixed pattern. About 68 per cent of outcomes fall within one standard deviation of the mean, 95.4 per cent within two and 99.7 per cent within three. The chance of falling more than k standard deviations away, in either direction, falls extremely fast as k grows:
Move of at least k standard deviations · Probability · One in about1σ · 31.7% · 3
2σ · 4.55% · 22
3σ · 0.27% · 370
4σ · 0.0063% · 15,800
5σ · 0.000057% · 1,744,000
There is a good reason to begin with the normal. The central limit theorem says that the sum of many small independent effects is approximately normal whatever the shape of each effect. A day's return is the sum of thousands of trades, so one might expect it to be normal, and a century ago the first mathematical models of markets assumed exactly that.
Look at what the normal implies, though. If daily returns were normal, a move of four standard deviations in a day, up or down, where σ is the usual daily volatility, would happen on one day in 15,800. With 252 trading days a year, that is once in 63 years. A move of five standard deviations would happen once in about 6,900 years. Yet any trader who has worked for a few years has seen moves of that size, and often more than once. The data disagree with the model. Benoit Mandelbrot said so in 1963, studying cotton prices, and the finding has been repeated for every liquid market since.
Describing a distribution: four numbers
To compare a real distribution with the normal we need more than the mean and the standard deviation. Four numbers, called moments, capture its shape.
Mean, the centre: μ = the average of the returns.
Standard deviation, the spread: σ, the square root of the average squared distance from the mean.
Skewness, the lopsidedness: the average of ((r − μ) ÷ σ)³. It is zero for a symmetric distribution, negative when the long tail is on the downside and positive when it is on the upside.
Kurtosis, the weight of the tails: the average of ((r − μ) ÷ σ)⁴. For a normal distribution it equals 3, so people often quote the excess kurtosis, the kurtosis minus 3, which is zero for a normal. Values above zero mean fat tails: more extreme outcomes, and a more peaked centre, than the normal.
Raising each standardised return to the third or fourth power makes big moves dominate the sum, which is why these two numbers are sensitive to the tails.
Worked example 1. Here are twenty daily returns of an illustrative share, in per cent: 0.4, −0.3, 0.6, 0.1, −0.5, 0.2, 0.3, −0.2, 0.5, −0.4, 0.1, −3.1, 0.2, 0.4, −0.1, 2.2, −0.6, 0.3, −0.2 and 0.5. They are an invented sample built to look like a normal month with two shocks. The mean is 0.02 per cent and the standard deviation 0.94 per cent. The biggest fall, −3.1, is 3.3 standard deviations from the mean, and the biggest rise, 2.2, is 2.3 standard deviations. Computing the standardised cubes and fourth powers gives a skewness of −1.29 and a kurtosis of 8.3, an excess kurtosis of 5.3. Two of twenty observations, one-tenth of the sample, produce almost all of that. The skewness is negative because the big fall is bigger than the big rise, and the kurtosis is far above 3 because a few observations sit far from the rest.
For comparison, the chance under the normal model of a day at least 3.3 standard deviations below the mean is 0.047 per cent, about one day in 2,100. Seeing one such day in a sample of twenty would be a very rare event if the model were right.
Fat tails in the real world
Empirical studies of daily returns on stocks, indices, currencies and commodities report similar patterns, sometimes called stylised facts:
1. Fat tails. Daily returns have an excess kurtosis well above zero, often in the range of 3 to 10 or more for a single stock, and extreme days occur far more often than a normal model predicts.
2. Negative skewness for equity indices. Large falls are more frequent and bigger than large rises.
3. Volatility clustering. Large moves follow large moves, and calm periods follow calm periods.
4. Little autocorrelation in returns. Yesterday's return tells you very little about today's, but yesterday's size of move tells you something about today's, as Lesson 2.4 shows.
To make fat tails concrete, take a common alternative to the normal, the Student's t distribution with four degrees of freedom, scaled so that it has the same standard deviation as the normal. It is only an illustration, since real markets vary, but the comparison is instructive.
Move of at least k standard deviations · Normal · Fat-tailed (t, 4 degrees of freedom) · Ratio2σ · 4.55% · 4.74% · 1.0
3σ · 0.27% (1 in 370) · 1.32% (1 in 76) · 4.9
4σ · 0.0063% (1 in 15,800) · 0.48% (1 in 208) · 76
5σ · 0.000057% (1 in 1.7 million) · 0.21% (1 in 474) · 3,700
Notice the pattern. At two standard deviations the two distributions are almost identical, so the middle of the distribution tells you little. The difference is all in the tails, and it grows without limit: a 5σ day is 3,700 times more likely in the fat-tailed world. A 4σ day, one in about 15,800 under the normal, is one in about 208 in the fat-tailed model, or roughly once a year.
What fat tails do to risk numbers
The practical consequence shows up in value at risk, a loss that should not be exceeded with a stated probability, which Lesson 11.2 covers in full. Here is a preview. The 99 per cent daily loss threshold is the point that only 1 day in 100 falls below. Under the normal it is 2.33 standard deviations below the mean. Under the fat-tailed model it is 2.65 standard deviations. At 99.9 per cent, one day in a thousand, the normal gives 3.09 standard deviations and the fat-tailed model gives 5.07. A risk system built on the normal underestimates the 99.9 per cent loss by more than a third. The further out into the tail you look, the worse it gets, and the tail is where a firm goes bust.
Where fat tails come from
Why do markets have fat tails if the central limit theorem says that sums should be normal? Because the theorem needs the effects to be independent and to come from a stable distribution. Returns violate both. The most important reason is that volatility itself changes over time. Some days are calm and some are stormy, and a stormy day draws from a distribution with a larger spread.
You can see how this creates fat tails by mixing two normal regimes. Suppose 80 per cent of days are calm, with a daily standard deviation of 0.8 per cent, and 20 per cent are stormy, with 2.4 per cent. Each regime is perfectly normal. The mixture has a variance equal to the average of the two variances: 0.8 × 0.64 + 0.2 × 5.76 = 0.512 + 1.152 = 1.664, so the blended standard deviation is √1.664 = 1.29 per cent. The kurtosis of a mixture of zero-mean normals is
3 × (w₁σ₁⁴ + w₂σ₂⁴) ÷ (w₁σ₁² + w₂σ₂²)²
= 3 × (0.8 × 0.4096 + 0.2 × 33.18) ÷ 1.664² = 3 × 6.963 ÷ 2.769 = 7.54.
Two perfectly normal regimes, mixed, give a kurtosis of 7.5, an excess of 4.5. The tails are fat because a stormy day is a draw from a wide distribution, and you cannot tell in advance which kind of day it is. The stormy days are only a fifth of the sample but contribute 0.2 × 5.76 ÷ 1.664 = 69 per cent of the variance.
Other causes add to this: news arrives in jumps rather than smoothly, traders crowd into the same positions so that sales feed on sales, and liquidity vanishes when it is most needed, as Lesson 1.4 explained.
Try your own regimes. Change how stormy the storms are and how often they come, and watch what happens to the kurtosis and to the share of the variance that a few days produce.
Volatility clustering and how to measure it
Because volatility changes, an estimate that uses a lot of old data is a poor guide to risk today. We need an estimate that follows the market. There are two standard approaches.
The rolling window
The simplest estimate is the standard deviation of the last N daily returns, called a rolling or moving window. A window of 20 days, about a month, reacts quickly. A window of 250 days, about a year, is smooth and slow. Both annualise the same way: multiply by √252. The trade-off is between noise and lag: a short window is noisy because it uses few observations, and a long window lags because it clings to old data. A rolling window also has a defect: when a big day leaves the window, the estimate drops suddenly, although nothing happened in the market that day.
The exponentially weighted moving average
A better compromise gives recent days more weight and old days less, with the weights fading smoothly. The exponentially weighted moving average, or EWMA, updates the variance each day:
σ²ₜ = λ σ²ₜ₋₁ + (1 − λ) r²ₜ₋₁
where λ is a number between 0 and 1 called the decay factor. Each day, the new variance is a blend of yesterday's estimate and the square of yesterday's return. A common choice for daily data, popularised by the RiskMetrics system at J.P. Morgan in the 1990s, is λ = 0.94. The EWMA needs only the previous estimate and the last return, so it is easy to compute and update. It is also a special case of the GARCH family of models, which add a long-run average level that volatility reverts towards.
Worked example 2. Suppose yesterday's estimate of daily volatility was 1.00 per cent, so σ² = 1.00, and then the market falls 3 per cent. The new variance is
σ² = 0.94 × 1.00 + 0.06 × 3² = 0.94 + 0.54 = 1.48
and the new volatility is √1.48 = 1.217 per cent a day, or 1.217 × √252 = 19.3 per cent a year. One shock lifted the estimate by 22 per cent. If the next day is quiet, with a return of zero, the new variance is 0.94 × 1.48 = 1.391 and the volatility 1.180. Then 1.144, 1.109, 1.075, and so on: the shock fades by a constant factor of 0.94 in variance each day. The number of days for the extra variance to halve is ln 0.5 ÷ ln 0.94 = 11.2 days. The EWMA thus remembers a shock for a couple of weeks and then forgets it, without the sudden cliff of a rolling window.
The plain EWMA has no long-run average level, so with no further shocks it would decay towards zero, which is unrealistic. A GARCH model fixes this by adding a constant, so that volatility drifts back to a typical level. For short horizons the simple EWMA is a sound and widely used estimate.
Why this matters for a trader
Position sizes should follow volatility. If you hold a position sized to a 1 per cent daily volatility and the estimate rises to 1.5, your risk is 50 per cent higher without a single trade. Many systematic funds scale positions by the inverse of estimated volatility, a topic of Lesson 11.1.
Backtests must allow for fat tails. A strategy tested over a calm stretch will look safer than it is. The loss in the worst month of a longer history is what counts.
Short volatility looks safe until it is not. Strategies that earn small, steady premiums, like strategy C in Lesson 2.1, sit on the fat left tail.
Options prices embed fat tails. The volatility smile of Lesson 6.3 is the market's way of charging more for protection against large moves than the normal model suggests.
Do not trust a standard deviation alone. Report the skewness, the kurtosis and the worst day next to it.
The code below computes the four moments, compares tail frequencies and runs the EWMA recursion on your own numbers.
python
import numpy as np
from scipy import stats
r = np.array([0.4, -0.3, 0.6, 0.1, -0.5, 0.2, 0.3, -0.2, 0.5, -0.4,
0.1, -3.1, 0.2, 0.4, -0.1, 2.2, -0.6, 0.3, -0.2, 0.5])
print("mean", round(r.mean(), 3), "sd", round(r.std(ddof=1), 3))
print("skew", round(stats.skew(r), 2), "kurtosis", round(stats.kurtosis(r, fisher=False), 2))
print("worst day in sd units", round((r.min() - r.mean()) / r.std(ddof=1), 2))
tail probabilities: normal against a t distribution with 4 degrees of freedom scaled to the same sd
scale = np.sqrt(2) # variance of a t(4) is 2
for k in (2, 3, 4, 5):
normal = 2 stats.norm.cdf(-k)
fat = 2 stats.t(4).cdf(-k scale)
print(k, "normal 1 in", round(1 / normal), "| fat-tailed 1 in", round(1 / fat))
99% and 99.9% loss thresholds in standard deviations
for q in (0.99, 0.999):
print(q, "normal", round(stats.norm.ppf(q), 2), "fat-tailed", round(stats.t.ppf(q, 4) / scale, 2))
EWMA: one shock, then quiet days
lam, var = 0.94, 1.0
path = []
for ret in [-3.0] + [0.0] 12:
var = lam var + (1 - lam) ret 2
path.append(round(var 0.5, 3))
print(path)
print("days for extra variance to halve", round(np.log(0.5) / np.log(lam), 1))
mixture of calm and stormy days
w, calm, storm = 0.2, 0.8, 2.4
v = (1 - w) calm2 + w storm2
print("blended sd", round(v 0.5, 3), "kurtosis", round(3 ((1 - w) calm4 + w storm4) / v2, 2))
Common mistakes
Assuming returns are normal. The middle of the distribution looks normal, which is why the mistake is easy to make, but the tails are far fatter.
Treating a 4σ or 5σ day as impossible. Under fat tails these happen every year or every few years.
Using one standard deviation for all times. Volatility changes, so an estimate from a calm year understates risk in a stormy one.
Choosing a rolling window by habit. A short window is noisy and a long one lags. Check how your risk number behaves in a past crisis.
Annualising with an average that hides regimes. The yearly figure of 19 per cent may be 12 in calm months and 40 in a crisis.
Reporting the standard deviation without the skewness and kurtosis. Two strategies with the same volatility can have very different worst days.
Estimating kurtosis from a short sample. One big day dominates the fourth power, so the number is unstable. Use years of data and expect it to jump.
Confusing a model's confidence with the market's. "99 per cent value at risk" calculated from a normal model says nothing about what happens on the other 1 per cent of days.
Key takeaways
A normal distribution is described by a mean and a standard deviation, and puts a 4σ day at one in 15,800 and a 5σ day at one in 1.7 million. Real markets have far more extreme days.
The four moments are the mean, the standard deviation, the skewness (lopsidedness) and the kurtosis (weight of tails, 3 for a normal). A sample of twenty returns with two shocks had a skewness of −1.29 and a kurtosis of 8.3.
A fat-tailed distribution matches a normal near the centre and differs in the tails: a 4σ day is about once in 208 days under a t distribution with four degrees of freedom, against one in 15,800 under the normal.
Fat tails come largely from changing volatility. A mix of 80 per cent calm days at 0.8 per cent and 20 per cent stormy days at 2.4 per cent has a kurtosis of 7.5, and the stormy days carry 69 per cent of the variance.
Volatility can be estimated with a rolling window or an EWMA. With λ = 0.94, a −3 per cent day lifts volatility from 1.00 to 1.22 per cent, and the extra variance halves in about 11 days.
Risk numbers built on the normal understate the extreme tail: the 99.9 per cent loss is 3.09σ under the normal and 5.07σ under the fat-tailed model.
Check yourself
1. A distribution has an excess kurtosis of 6. What does that tell you about its tails compared with a normal distribution?
Fatter: extreme outcomes occur much more often than under a normal distribution, which has an excess kurtosis of zero.
2. Daily volatility is 1.2 per cent. What is a 4σ down day, and how often would a normal model say it happens?
4 × 1.2 = a fall of 4.8 per cent. A normal model says one day in about 31,600 for a fall (the one-sided probability is half the two-sided 1 in 15,800), about once in 125 years.
3. In an EWMA with λ = 0.94, yesterday's volatility estimate was 0.8 per cent and today's return is +2 per cent. What is the new volatility estimate?
Variance = 0.94 × 0.64 + 0.06 × 4 = 0.6016 + 0.24 = 0.8416. Volatility = 0.917 per cent a day. The sign of the return does not matter, only its size.
4. Why does mixing two normal regimes, one calm and one stormy, produce a distribution that is not normal?
Because the mixture is a draw from a narrow distribution on some days and a wide one on others. The wide-regime days put far more weight in the tails than a single normal with the same overall standard deviation would.
5. A fund reports a 99 per cent daily loss limit calculated from a normal model. Why might it be too small?
Real returns are fat-tailed, so the 99 per cent loss, and especially the 99.9 per cent loss, is larger than the normal model says, and volatility may also be higher today than the long-run average used.
6. Your 20-day volatility is 0.9 per cent and your 250-day volatility is 1.4 per cent. What does the gap suggest, and which estimate would you size positions on?
Recent days have been calmer than the last year. Neither number is right alone: the short window is noisy and may be unrepresentative, and the long one may be out of date. An EWMA between them is a reasonable compromise, and a cautious trader uses the larger one.
Try this
Set aside forty-five minutes. Download at least five years of daily closing prices for an index or a large share.
1. Compute daily log returns. Compute the mean, the standard deviation, the skewness and the kurtosis. Compare the kurtosis with 3.
2. Count the number of days with a move beyond 3σ and beyond 4σ, up and down separately. Compare with the numbers a normal model predicts for your sample size, using the table in this lesson.
3. Find your worst day and say how many standard deviations it was.
4. Compute a 20-day and a 250-day rolling volatility, annualise both and plot them together. Find the three dates on which they differ most, and say what happened.
5. Compute an EWMA volatility with λ = 0.94 and add it to the plot. Describe how its behaviour after the worst day differs from the rolling windows.
6. Use the first simulator to find calm and stormy standard deviations and a stormy share that reproduce your kurtosis approximately.
7. Write a short note: the four moments of your series, the frequency of extreme days against the normal, and the volatility you would use for risk today and why.
A good result is a chart of three volatility estimates with the extreme days marked, a table of tail counts against the normal and a sentence that says whether your series is closer to a normal or to the fat-tailed model. The next lesson moves from one series to two: how to measure how they move together, with correlation, regression and cointegration.
Read more
Benoit Mandelbrot's 1963 paper "The Variation of Certain Speculative Prices" is the classic observation of fat tails. Rama Cont's 2001 article "Empirical properties of asset returns: stylized facts and statistical issues" in Quantitative Finance summarises the stylised facts for many markets. Analysis of Financial Time Series by Ruey Tsay covers volatility models, including EWMA and GARCH, and The Black Swan by Nassim Taleb is an accessible, opinionated account of why tail events matter. For RiskMetrics, look for J.P. Morgan's RiskMetrics Technical Document.
Tags: Quant Trader Fat tails Volatility Kurtosis EWMA