Brier Score: How to Grade a Forecast
Brier score of the market's own stated probability, by underlyingranking ·
2026-08-13 · 6×4
The market's Brier score across expiry horizons, SPYranking ·
2026-08-13 · 6×4
SPY option deltas against how often those contracts finished in the moneyranking ·
2026-08-13 · 10×4
Brier score of the market's own stated probability, by underlying
Brier score of the market's own stated probability, by underlying
| symbol | market_brier | coin_flip_brier | graded_contracts |
|---|---|---|---|
| NVDA | 0.1122 | 0.25 | 28.54 thousand |
| TSLA | 0.1125 | 0.25 | 42.23 thousand |
| AAPL | 0.1173 | 0.25 | 14.98 thousand |
| MSFT | 0.1338 | 0.25 | 22.61 thousand |
| KO | 0.1341 | 0.25 | 8.61 thousand |
| SPY | 0.1375 | 0.25 | 79.74 thousand |
the exact SQL behind every number
WITH settle AS
(
SELECT
underlying_symbol AS sym,
date AS settle_date,
any(toFloat64(underlying_close)) AS settle_px
FROM global_markets.options_greeks
WHERE underlying_symbol IN ('SPY', 'AAPL', 'MSFT', 'NVDA', 'KO', 'TSLA')
AND date >= '2025-01-01'
AND date < '2026-08-01'
GROUP BY sym, settle_date
),
scored AS
(
SELECT
g.underlying_symbol AS symbol,
abs(toFloat64(g.delta)) AS stated,
startsWith(lower(toString(g.option_type)), 'c') AS is_call,
if(is_call,
s.settle_px > toFloat64(g.strike_price),
s.settle_px < toFloat64(g.strike_price)) AS finished_itm
FROM global_markets.options_greeks AS g
INNER JOIN settle AS s
ON s.sym = g.underlying_symbol AND s.settle_date = g.expiration_date
WHERE g.underlying_symbol IN ('SPY', 'AAPL', 'MSFT', 'NVDA', 'KO', 'TSLA')
AND g.date >= '2025-01-01'
AND g.date < '2026-06-01'
AND g.expiration_date <= '2026-07-31'
AND g.days_to_expiry BETWEEN 28 AND 35
AND g.iv_converged = 1
AND g.volume > 0
AND abs(g.delta) > 0.02
AND abs(g.delta) < 0.98
)
SELECT
symbol,
round(avg((stated - finished_itm) * (stated - finished_itm)), 4) AS market_brier,
round(avg((0.5 - finished_itm) * (0.5 - finished_itm)), 4) AS coin_flip_brier,
formatReadableQuantity(count()) AS graded_contracts
FROM scored
GROUP BY symbol
ORDER BY market_brier
More from this analysisBrier Score: How to Grade a Forecast
SPY option deltas against how often those contracts finished in the money
ranking 10×4
→
The market's Brier score across expiry horizons, SPY
ranking 6×4
→
Buyer and seller collateral at every contract price
ranking 19×4
→
Return on collateral for each side, by contract price
ranking 13×4
→
See all 2,173 queries →