Horizon
Clock-aligned closes
At each :00 / :15 / :30 / :45 the model is asked whether the next close finishes above that captured price. At the mark that is a coin flip. Skill appears as time runs down and the live print leaves the mark.
At the mark
0.250
Brier · skill -0.04% · called 49.2% · 132 bars
10 minutes left
0.178
Brier · skill 28.75% · called 72.7% · 132 bars
5 minutes left
0.096
Brier · skill 61.52% · called 89.4% · 132 bars
Any-strike Brier
0.118
All σ-sliced strikes, overlapping windows.
Skill vs 50/50
52.85%
How much better than always saying 50%.
Called side
83.4%
When the model leans one way, how often that side prints.
Trials
3,546
Coinbase · Aug 18, 12:57 PM – Aug 20, 12:56 AM
Calibration
Horizontal is what the model said. Vertical is what the tape did. On the diagonal, the odds were honest.
What this can and cannot prove
Walk-forward on the last 36 hours of 1-minute Coinbase prints. At each step the model sees only the prior 180 minutes, then we wait 15 minutes and score the outcome.
Adjacent forecasts overlap, so the headline trial count is not independent. A thinned score — every third step, about one independent 15-minute window — is 0.123 Brier on 1,188 trials.
Code check on simulated GBM (the world the math assumes): Brier 0.123, skill 50.68%, max bucket gap 2.0%. The engine is unbiased on its own assumptions.
ATM is still a coin flip (Brier near 0.25). Skill comes from far strikes. Bitcoin also has a fatter right tail than a log-normal — +2σ prints more often than the formula allows. A good score on this window is not a promise about the next fifteen minutes.
By strike
| Strike | Said above | Was above | Gap | Brier | n |
|---|---|---|---|---|---|
| -2σ | 97.7% | 99.0% | +1.3% | 0.010 | 394 |
| -1.5σ | 93.3% | 96.4% | +3.1% | 0.035 | 394 |
| -1σ | 84.1% | 89.6% | +5.5% | 0.096 | 394 |
| -0.5σ | 69.1% | 73.6% | +4.5% | 0.196 | 394 |
| ATM | 50.0% | 48.2% | −1.7% | 0.250 | 394 |
| +0.5σ | 30.8% | 31.0% | +0.1% | 0.214 | 394 |
| +1σ | 15.8% | 14.5% | −1.4% | 0.124 | 394 |
| +1.5σ | 6.7% | 9.1% | +2.5% | 0.084 | 394 |
| +2σ | 2.3% | 5.3% | +3.1% | 0.051 | 394 |
How the odds are made
Each live quote is treated as a geometric Brownian step. One-minute closes become log returns. Volatility is an EWMA of those returns (λ = 0.94), then scaled by √15. Drift is the recent mean return — usually tiny against the noise.
If S is the live print and K is your strike, the chance of finishing above K is Φ(d₂), the same cumulative normal used in Black–Scholes when rates are ignored:
d₂ = [ln(S / K) + μ − σ² / 2] / σ
That is a statistical map of the recent tape, not a market-implied quote and not advice. Jumps, news, and weekend liquidity can all make the real distribution fatter than this model.