Kalshi Polymarket Arb Radar
Pricing
from $2.00 / 1,000 arb pair reports
Kalshi Polymarket Arb Radar
Cross-venue arbitrage scanner for Kalshi and Polymarket: fuzzy-matched binary markets with fee-inclusive bid/ask edges and risk flags, or watchlist mode for user-supplied exact pairs. No login, no proxies. Agent/MCP-friendly JSON.
Pricing
from $2.00 / 1,000 arb pair reports
Rating
0.0
(0)
Developer
dev bro
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
5 days ago
Last modified
Categories
Share
Prediction Market Arbitrage Radar (Kalshi ↔ Polymarket)
Scan Kalshi and Polymarket simultaneously and report cross-venue matched pairs with an
actionable, fee-inclusive edge — or feed it your own known pairs via manualPairs and let it
price them for you every run.
What you get
One dataset record per matched pair:
edgeCents— riskless lock-in edge in cents after Kalshi taker fees (0.07 × P × (1−P) per side). Polymarket charges no taker fee, so it is not added.strategy— which legs to buy:PM-YES/K-NO(Polymarket YES + Kalshi NO) orK-YES/PM-NO(Kalshi YES + Polymarket NO), computed from live asks, not last prices.- Full quotes on both sides: yes bid/ask, Kalshi no-ask, spreads, 24h volumes, end times, URLs.
similarity+matchMethod(fuzzy,h2h,manual) so you can judge match quality.riskFlags— honest warnings:end-date-gap-Nd(resolution dates differ),wide-*-spread,predicate-mismatch-style guards already exclude false pairs upstream.
Two modes
scan(default) — fuzzy-matches open binary markets across venues with strict guards (predicate signature, year consistency, exact team-token match for head-to-head markets). Filter withminEdgeCents,minSimilarity,minVolume24hUsd.watchlist— supply exact[{"kalshiTicker":"KX...","polymarketSlug":"will-..."}]pairs; the Actor re-prices them every run. This is the reliable way to monitor markets you already know are the same event.
Why a radar, not a geyser
True cross-venue edges are transient — they appear when news hits one venue first and close
within minutes. Today's scan may return one +0.4c pair or none; the value is running this on a
schedule (or after news) and catching the moment. Zero-result runs are honest runs, and cost you
only the run price. If you need guaranteed hits, use watchlist with pairs you track yourself.
Fees & assumptions
- Kalshi fee model: 0.07 × P × (1−P) per contract, applied to each Kalshi leg. Polymarket: 0.
- Edges use displayed asks; real fill depends on book depth at execution time.
- End-date gaps > 7 days are flagged: same question, different resolution dates ⇒ not a true arb.
Use cases
- Automated news-driven edge alerts (schedule the Actor hourly/daily).
- Monitoring your own Kalshi↔Polymarket pair book via
watchlist. - Research datasets of cross-venue spreads over time.
Input
| Field | Type | Default | Description |
|---|---|---|---|
mode | string | scan | scan or watchlist |
minEdgeCents | number | 0 | Report threshold (fee-inclusive edge in cents) |
minSimilarity | number | 0.55 | Fuzzy match threshold in scan mode |
minVolume24hUsd | number | 200 | Liquidity filter per venue |
maxKalshiEvents | integer | 1500 | Kalshi events to paginate |
maxPolymarketMarkets | integer | 300 | PM pool size (top by 24h volume) |
maxResults | integer | 100 | Cap on pair reports |
manualPairs | array | [] | Exact pairs for watchlist mode |
Output
Dataset of pair reports, sorted by edge descending. See the Overview table view in the Console,
or consume the JSON directly (edgeCents, strategy, quotes, riskFlags, URLs). MCP/agent-ready:
machine-readable fields, no scraping artifacts.
Sources
Official public endpoints only: trade-api/v2 (Kalshi), gamma-api.polymarket.com. No login,
no cookies, no proxies, no browser.