For Agents
The backtest is SOLVED and FREE. The PortWatch FeatureServer gives daily transit counts 2019-to-present (see hormuz-bet-portwatch-data), so you can reconstruct what every past weekly / threshold / average market would have resolved to and run a purged walk-forward with realistic fees and thin-book slippage. This satisfies the same validation bar as polymarket-fetch purged-backtest gate. The Polymarket taker fee is 0.072(1-p) of stake*. Mind the wartime regime break (see hormuz-bet-basis-risk).
Why the hard part of quant — a clean, free, historical ground truth — is already handed to us here.
Ground Truth Is Free
The usual quant bottleneck is a trustworthy labelled history. Here it is solved:
- The PortWatch FeatureServer returns daily transit calls from 2019-01-01 to present (see hormuz-bet-portwatch-data).
- That daily series is exactly the input every market resolves on.
- So for any past market you can deterministically reconstruct its resolution by applying its (parsed) rule to the series.
Reconstructing each structure (see hormuz-bet-resolution-mechanics for the rules):
- Weekly TOTAL bucket = sum daily counts over the event week, map to the (event-specific) bracket.
- 7-day MA bucket = 7-day moving average at the named date, map to bracket, tie goes to the HIGHER bracket.
- Threshold leg >= N = did the single-day max reach N on or before the date.
- Deep binary = was the 7-day MA >= 60.
Never hard-code the brackets
Bucket edges shifted between the May and June events. Parse each event resolution text and apply its own brackets during reconstruction, or every reconstructed label past a boundary change will be wrong. See The Four Market Structures.
Validation Design
Mirror the discipline of polymarket-fetch purged-backtest gate and the crypto-shortterm honesty bar:
- Purged + embargoed walk-forward. Resolutions span multi-day windows (weekly sums, 7-day MAs), so purge any training window that overlaps a test events resolution window, and embargo around it. Overlapping MA/sum windows are a real leakage vector here.
- Negative control that should read ~0 edge (e.g. shuffled labels / random entries).
- Baselines to beat: market-implied price (buy at quoted prob), uniform-across-buckets, and a naive persistence model (last published number / last regime).
- Deflated performance for the number of strategies/params tried.
Cost Model (load-bearing)
Polymarket taker fee
Model the Polymarket taker fee as 0.072(1-p) of stake*, where
pis the trade price (probability). The fee is largest for cheap longshots (lowp) and vanishes nearp=1. This matters a lot on the threshold legs and tail buckets, which trade cheap.
- Slippage: the count books are thin (71k/event, single-digit-thousand buckets — see hormuz-bet-liquidity). Model fills against the actual shallow book with realistic walk-the-book slippage, not at mid. Assume ~2,000 realistic capacity per clip.
- Capacity-adjusted PnL: report edge at the size you can actually trade, not per-unit. A big percentage edge on $500 is not a strategy.
- The deep binary (~$14.7M) is the only instrument where size assumptions can be loosened.
Regime Break Caveat
The series is non-stationary (wartime ~3-10/day vs ~55-75/day in 2019 — see hormuz-bet-basis-risk). A walk-forward that trains on 2019 calm and tests on 2026 war will mislead. Either restrict to the comparable (wartime) regime, or explicitly model the regime as a covariate. Do not report a single blended Sharpe across the break.
Strategy C Paper Kill-Tests (2026-06-08)
Two zero-cost kill-tests on real free data — both PASSED → Strategy C is GO (conditional)
Before building any AIS collector, two paper kill-tests were run on real free data (the PortWatch daily series + Polymarket CLOB price history) to decide whether Strategy C — nowcast the weekly PortWatch count ahead of its Tuesday publish via live AIS, then trade the weekly buckets before they reprice — is worth pursuing. Both passed. Full write-up and caveats live in Strategy C Kill-Tests PASSED → GO (conditional) (2026-06-08); the backtest-relevant essentials are below.
These are a different validation than the hormuz-bet-build-spec1 walk-forward. That backtest tested trading the count markets on the public PortWatch number (verdict INCONCLUSIVE). These kill-tests test the informational inverse — having the number before the market via AIS.
Test 1 — outcomes are sensitive to pending-day info. Reconstructed weekly totals resolved within 2–4 ships of the bucket boundary (week of May 11: sum 44 vs 40 → 40-59; week of May 18: 42 vs 40), and the running cumulative crossed the boundary around Day 6 of the 7-day window — outcome is locked in before publish. Exclusion: the single-day threshold legs (40+/60+/80+) are pure regime-change bets (daily count never exceeds 29; April 18 = 29 outlier) → zero AIS edge, exclude from Strategy C.
Test 2 — the info is NOT priced (refutes “already priced”). On both markets with CLOB price data, the winning bucket stayed cheap through the weekend and repriced only the day AFTER the Tuesday publish. May 11: crossed into 40-59 on Sat May 16 but still priced ~19.5%, did not hit 90%+ until May 20 (day after the Tue May 19 drop) — ~4-day lag, ~5x gross if entered May 16. June 1: opened flat ~52.5% the day PortWatch published the prior week → ~+90% in 5 days for an AIS reader who already knew the answer. Prices REACT to PortWatch; they do not ANTICIPATE it.
The success bar — and the one untested gate
AIS gives the actual daily count in real time, so the bar is “track PortWatch’s daily
n_totalwithin ~2–4 ships,” NOT “within a bucket width.” The one gate free data could not test — and now THE question — is whether live AIS can actually hit that ~2–4 ship accuracy (terrestrial AIS may undercount mid-strait; PortWatch is satellite-fed). Hence a satellite coverage-probe is now first-class. Sample is only n=2 priced markets — directional, not robust; 10+ markets / ~25+ drops needed before any trading verdict, and capacity is ~1k/clip. Next: Milestone 1 AIS pilot (aisstream free + ~EUR 40–75/mo satellite probe, forward collection on the polymarket-infra fleet).
Related
- hormuz-bet — project index.
- hormuz-bet-portwatch-data — the free 2019-to-present daily series that is the ground truth.
- hormuz-bet-resolution-mechanics — the rules to reconstruct each past resolution.
- hormuz-bet-liquidity — the thin-book reality the slippage/capacity model must encode.
- hormuz-bet-basis-risk — the regime break and PortWatch-as-target framing; full Strategy C kill-test write-up and the GO (conditional) decision.
- hormuz-bet-ais-providers — the AIS feeds + satellite coverage-probe the Strategy C Milestone-1 pilot will use.
- polymarket-fetch — the purged-backtest gate this mirrors; reference for PM fee/slippage modelling.