Cross-Market Arb
phase 8 lab · cross-venue arbitrage · paper-only
Phase 8.0 — Build
LIVE FEED
Today’s barometercross-venue conditions
best edge per set · 24h

Phase 8 experiment · as of AWAITING SCAN

Live spread radar

Watching 8 cross-listed contract pairs across Kalshi and Polymarket (ForecastEx not active — normalizer is a stub), plus ~30 Kalshi multigame parlays for synthetic mispricings. The engine logs every observed spread; the learner updates match confidence and Kelly fraction nightly.

No capital at risk. This engine only logs observed spreads in Phase 8.0 — the “LIVE FEED” ticker shows watched markets, not executed trades. Numbers stay at zero until pairs clear the risk gate.

Opportunities · 24h
Last scan

01 State of the system paper bankroll — no capital, Phase 8.0

Bankroll · PAPER
cap rises only after Phase 8.3 PROCEED
Kelly fraction
recalibrated on rolling 30d Sharpe
Match patterns watched
≥20 obs required before live capital
Sharpe (30d, paper)
target > 1.5 for shadow→paper

02 Scan funnel is “0 pairs” the engine working, or a silent format drift?

fetched
normalized
certified
paired
tradeable
Diagnosis NO DATA
venue fetchednormalizedcertified pairedtradeablefunnel
No scan funnel recorded yet
Each scan records fetched→normalized→certified→paired→tradeable per venue. This distinguishes “everything filtered” (engine working) from “nothing matched” (silent format drift).

03 Recent opportunities

tscontractbuysell spreadedge_adj qtydecision
No opportunities logged yet
Engine in Phase 8.0 — Polymarket and Kalshi books will start producing pairs as the 2026 NBA Finals approach.

04 Match-pattern confidence

patternconfidenceobsstatuslast updated
Awaiting first paper trade
Confidence updates as paper trades close. Asymmetric: agreement +5%, divergence −30%.

05 Settlement risk per venue pair

venue pairriskobsstatus
No closed paper trades yet
Risk score = dispute_rate × 0.50 + late_payout_rate × 0.02 over rolling 30d.

06 Parlay arbitrage observation-only

Parlay obs · 24h
Kalshi multigame markets sampled
Actionable mispricings · 24h
parlay price ≠ ∏ leg prices > $0.02
Biggest mispricing · 24h
edge per contract (Phase 8.0 logs, no trades)
parlaylegsbid/ask fair lo/hidirectionedge
No parlay scans yet
First scheduled cross_market_scan.bat run populates this. Math: parlay_yes_price vs ∏ leg_side_prices on the same Kalshi venue. Single-venue, multi-leg arb — synthetic legs not yet hedged in Phase 8.0.

07 Basket Dutch-book intra-venue · no settlement-divergence risk

Events scanned · 24h
Polymarket negRisk events (World Cup, weather)
Actionable baskets · 24h
ΣYES_ask < $1 or complete buy-all-NO < (N−1)
Best edge per set · 24h
realistic edge at executable depth (post-fee)
eventsidelegs ΣYES askΣNO ask edge/setmax setsnote
No basket scans yet
First scheduled basket scan populates this. Math: buy one YES of every candidate for Σask, collect exactly $1 at resolution. Edge/set = 1 − Σask − fees. Intra-venue, so no cross-venue settlement risk.

08 Today’s miss reasons

reasoncountturn this knob
No misses to classify yet
Engine logs every rejected opportunity. Distribution of reasons drives the next operator action.

09 Phase gate

8.0 · Build
no capital
Adapters live · matcher ≥95% manual-spot accuracy
8.1 · Shadow
no capital · 14 d
≥30 sim trades · Sharpe > 1.5 · DD < 8%
8.2 · Paper
no capital · 30 d
Same metrics · realistic fill modeling
8.3 · Live small
$500 · 30 d
Sharpe > 1.0 · zero settlement disputes
8.4 · Live scaled
up to bankroll cap
Continued Sharpe > 1.0 · DD < 10%