Fortress toolchain - predicted vs realized

Calibration Report

Scored 2026-07-25 cc_scanner 5,555 picks logged - 2,139 matured fortress_fight 1417 graded - span 22d fortress_rebuild 123 resolved wall 0m 26s (26.2s)

Predicted vs realized, across every calibration ledger

3,679 graded predictions across cc_scanner, fortress_fight, and fortress_rebuild, scored against actual daily highs and closes. Bars and dots compare what the models claimed to what the market did.

cc_scanner - survival
81% 94%
predicted vs realized, 2,139 matured picks across all sigma bands.
fortress_fight - touch
39% 28%
raw factor 0.71 over 1417 expired contracts.
fortress_fight - breach
83 breaches
raw breach factor 0.31 (predicted rate vs realized) over 1417 graded contracts.
fortress_rebuild - OTM at expiry
85% 93%
114 of 123 resolved. Touch: 31% predicted, 28% realized.

fortress_fight: touch calibration curve

Each dot is a predicted-touch bucket of expired contracts (dot size = count, hover for exact rates). On the dashed line, prediction equals reality. Dots below the line = the engine over-warned; above = under-warned. Also on the books: 229 in progress (censored), 69 unexpired early touches (preview only).

perfectly calibrated 0-10% bucket - n=198 - predicted 4.3% - realized 0.5% 10-20% bucket - n=271 - predicted 16.1% - realized 4.8% 20-30% bucket - n=178 - predicted 24.4% - realized 12.9% 30-40% bucket - n=141 - predicted 34.3% - realized 18.4% 40-50% bucket - n=207 - predicted 44.1% - realized 28.0% 50-60% bucket - n=90 - predicted 55.1% - realized 43.3% 60-70% bucket - n=45 - predicted 65.6% - realized 51.1% 70-80% bucket - n=118 - predicted 76.0% - realized 59.3% 80-90% bucket - n=91 - predicted 84.2% - realized 80.2% 90-100% bucket - n=78 - predicted 96.9% - realized 89.7% 0 25 50 75 100 0 25 50 75 100 Predicted touch % Realized touch %

Correction-factor arming gates

Raw factors are written every grading pass; the engine only applies them when all four gates pass.

Graded contracts ≥ 30
1417 / 30
Breach events ≥ 10
83 / 10
Expiry weeks ≥ 6 (one cycle teaches one regime)
3 / 6
History span ≥ 60d (must see vol vary)
22d / 60d
Challenger beats raw out of sample (champion check)
raw
MetricNPredictedRealizedRaw factor
Touch141739.2%28.0%0.71
Breach1417realized 83 breach event(s)0.31
IV haircutcorrect the input: touch model on iv × h0.70
Champion/challenger (Brier, lower is better; holdout week 2026-W30, 887 train / 530 holdout): flat 0.1853, haircut 0.1684, raw 0.1434 → winner raw. Ties go to raw; a correction only arms while it wins.

cc_scanner: sigma bands, then ticker by ticker

2,139 matured picks graded against daily highs (5,555 logged since 20260703). Survival = finishing OTM. Red touch bars: realized ran hotter than predicted.

Predicted Realized

Survival % by sigma band

0.0-0.5σ - n=330
64%89%
0.5-1.0σ - n=1027
78%92%
1.0-1.5σ - n=463
88%98%
>1.5σ - n=319
97%100%

Touch % by sigma band

0.0-0.5σ - n=330
57%67%
0.5-1.0σ - n=1027
37%22%
1.0-1.5σ - n=463
24%10%
>1.5σ - n=319
6%0%

Predicted vs realized touch by ticker (min 3 matured picks)

Sorted by how hot reality ran vs the model. Red connectors: realized above predicted (model too relaxed). Gray connectors: realized below predicted (model too scared).

Ticker
0% — predicted • realized — 100%
Gap (real - pred)
IBIT
+39 ▲ n=4
META
+28 ▲ n=109
DELL
+22 ▲ n=111
NVDA
+10 ▲ n=63
AMZN
+10 ▲ n=102
SOFI
+6 ▲ n=94
RIOT
+4 ▲ n=111
GLD
0 n=16
RKLB
-3 n=18
ENPH
-5 n=26
COPX
-5 n=22
NEM
-6 n=9
GOOG
-6 n=309
SPY
-7 n=59
GLXY
-10 n=9
HIMS
-16 n=123
SPCX
-16 n=63
APP
-17 n=35
IREN
-20 n=193
IGV
-20 n=74
COIN
-22 n=63
MARA
-24 n=11
NOW
-26 n=115
INTC
-26 n=133
MU
-27 n=178
MDB
-36 n=86

fortress_rebuild: CC-survival forecasts

Rebuild-local ledger (same calibration machinery as fight): 195 predictions since 2026-07-03, 123 resolved. Buckets group picks by the survival odds the model claimed.

Predicted survival Realized OTM rate
0-60% - n=4
55%100%
60-70% - n=5
65%100%
70-80% - n=25
77%84%
80-90% - n=47
85%89%
90-100% - n=42
94%100%
MetricValue
Predictions logged195
Resolved (expiry passed)123
Predicted touch (avg)31.4%
Realized touch28.5%
Touch grades from exact daily highs123 / 123

Diversification complements

Out-of-sample search for tickers that zig when the $1M model book zags — low correlation, positive behaviour on the book's worst days, and enough volatility to sell covered calls against. 2 nights logged (2026-07-24 → 2026-07-25).

No confident add yet — 1 days of history, needs ≥60 nights at 70% persistence and 60% out-of-sample delivery. Candidates are ranked below; a complement moves opposite the model book (corr ≤ 0.30) AND still pays sellable CC premium (vol ≥ 25%).
TickerGroupNightsPersistMed corrCrisis dayOOS deliverVerdict
VGMidstream (ENERGY)1100%-0.36+1.60%youngnoise
XOPOil E&P (ENERGY)1100%-0.34+0.69%youngnoise
IHIMedTech (HEALTH)1100%-0.27+0.56%youngnoise
TOSTFintech (TECH)1100%-0.26+0.90%youngnoise
FLUTCasinos (CONS)1100%-0.26+0.57%youngnoise
LDOSDef Tech (INDL)1100%-0.23-0.22%youngnoise
EXPETravel (CONS)1100%-0.18+0.69%youngnoise
PARRRefiners (ENERGY)1100%-0.13+0.53%youngnoise
“Crisis day” = mean candidate return on the model composite's worst days (average correlation lies in a crash; this is the all-weather test). “OOS deliver” = share of matured claims whose low correlation held in the 30 days AFTER the flag. 0 WATCH.
Generated by calibration_report.py (weekly cron, Sat 08:30 SGT). Sources: runs/cc_scanner/PORTFOLIO/ledger_calibration.json, runs/fight/calib_factors.json, runs/rebuild/calibration_stats.json. Graders grade only fully expired windows; duplicate nightly re-forecasts of the same contract are deduped to one bet. This page mirrors the graders' published numbers and derives nothing of its own.