Skip to content
Backtesting VaR — counting exceptions

A correct VaR is breached on a known fraction of days, p = 1 − α. An exception is a day whose loss exceeds the −VaR line. Count them, compare to the expected p·T, and the Kupiec test asks whether the gap is just luck. Push the model below true risk and exceptions pile up.

Exceptions N vs expected p·T3 vs 2.5
495k247k+0k+247k+495k−VaR = −US$279kTrading day (1 … 250)Daily P&L (US$)−VaR thresholdException (loss > VaR)
Hit ratio N/T 1.20%Promised rate p 1.00%VaR threshold US$279,156
Confidence level α
Sample size T250 days
Model vs true volatility1.00×
At 1.00×: model matches true volatility (correctly specified).
Kupiec LRuc 0.09 vs 3.841
PASS
Basel zone GREEN (3 in 250)
3 exceptions against 2.5 expected is within sampling noise, so the model passes the unconditional-coverage test. Kupiec checks only the count, not whether breaches cluster in time.