Prediction Market Scanner: Polymarket + Kalshi Odds & Arbitrage avatar

Prediction Market Scanner: Polymarket + Kalshi Odds & Arbitrage

Pricing

from $0.35 / 1,000 markets

Go to Apify Store
Prediction Market Scanner: Polymarket + Kalshi Odds & Arbitrage

Prediction Market Scanner: Polymarket + Kalshi Odds & Arbitrage

Polymarket and Kalshi in one Actor: live odds, cross-platform arbitrage, whale trades, wallet PnL and positions, top traders, new and resolved markets, and price history. Official public APIs, no login.

Pricing

from $0.35 / 1,000 markets

Rating

0.0

(0)

Developer

Jay Novello

Jay Novello

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

Live odds, cross-venue price gaps, whale trades, wallet PnL, the top-traders leaderboard, new and resolved market feeds and price history from Polymarket and Kalshi, through their official public APIs, with no login, API key or browser.

Try it: Click Start with the default input: 8 matched Polymarket/Kalshi pairs in 4.5 s for about $0.04 (run on October 21, 2026).

Default input: mode: arbitrage, keywords bitcoin, fed, election, 300 markets per venue. Real rows from that run (prices are dollars per share):

Question (both venues)Polymarket YES askKalshi YES askGap (points)Cheapest YES+NOEdge per $1
Will Israel Katz be the next Prime Minister of Israel?0.0030.0593.7$0.983 (YES Polymarket + NO Kalshi)+1.7¢
Will Benny Gantz be the next Prime Minister of Israel?0.0010.0070.5$0.996+0.4¢
Will Yariv Levin be the next Prime Minister of Israel?0.0010.0200.85$1.0000
Will Yair Lapid be the next Prime Minister of Israel?0.0020.0190.9$1.001−0.1¢

Every row carries both markets in full (bid, ask, implied probability, 24h volume, close time, URL) plus matchScore, priceGap, bestStrategy, combinedCost and edge. Edges are before fees; verify each pair yourself.

Pricing: $0.50 per 1,000 market rows (primary event); add-ons: matched pairs $5, whale trades $1, trader summaries $2, wallet records and leaderboard rows $0.30, price points $0.05 per 1,000. Platform usage included; failed runs are not charged.

Eight modes

ModeWhat you getTypical use
Markets and oddsEvery open market with YES/NO bid and ask, implied probability, 24h volume, liquidity, close time and link, from both venues in one schemaDashboards, research, feeding odds into a model or a Google Sheet
Cross-platform arbitrageMarkets that ask the same question on both venues, with the price gap, the cheapest YES+NO combination and the edge before feesSpotting mispricings, cross-venue hedging
Whale tradesPolymarket trades above a dollar threshold with trader, side, outcome, price and sizeFollowing smart money, alerts on large bets
Trader analytics (new in 0.2)For Polymarket wallets, usernames or profile URLs: a summary (portfolio value, total / realized / unrealized PnL, volume, rank, 7 and 30-day PnL), open positions, closed positions with realized PnL, and trade historyCopy-trading research, tracking a list of sharp wallets, tax and PnL exports
Top traders (new)The public Polymarket leaderboard by profit or volume, for today, this week, this month or all time, overall or by category (politics, sports, crypto, economics and more)Finding wallets worth following, feeding trader analytics
New markets (new)Markets created since a date or since the last run, both venues, with event, category, opening odds, close timeBeing first to new markets, alerts on new questions in your niche
Resolved markets (new)Recently resolved Polymarket markets and settled Kalshi markets with the winning outcome and resolution timeSettling bets in your own tools, backtests, model scoring
Price history (new)Price time series per market at 1-minute, 1-hour or 1-day spacing: Polymarket prices and Kalshi OHLC candles with bid, ask, volume and open interestCharts, backtesting, studying how odds moved before an event

More real output (October 13, 2026, UTC)

Wallet PnL in one call, run on October 13, 2026 (UTC) with mode: traderAnalytics and two inputs, a wallet address and a username (BreakTheBank). The summary row per trader:

TraderPortfolio valueTotal PnLUnrealized PnLRealized PnLAll-time volume30-day PnLRank (all time)Markets traded
BreakTheBank$1,559,130$5,586,241$182,481$5,403,759$281.4M$2,646,024211,037
e46m3$31,247$738,669−$51,911$790,580$19.5M$2,692,22525652,667

Followed by one row per open position, closed position and trade, for example:

{"recordType": "position", "trader": "e46m3", "marketTitle": "2026 Balance of Power: D Senate, D House",
"outcome": "Yes", "shares": 6516.3556, "avgPrice": 0.3738, "currentPrice": 0.615, "costBasisUsd": 2436.24,
"currentValueUsd": 4007.56, "unrealizedPnlUsd": 1571.32, "percentPnl": 64.5, "endDate": "2026-11-04",
"url": "https://polymarket.com/event/balance-of-power-2026-midterms"}
{"recordType": "activity", "trader": "e46m3", "time": "2026-10-13T00:04:24Z", "type": "TRADE", "side": "BUY",
"marketTitle": "Will the Republican Party candidate win the 2026 KY-01 House election by 55% or more?",
"outcome": "No", "price": 0.965, "shares": 8, "usdValue": 7.73, "transactionHash": "0xa9bb9d8e…c4962f"}

That run (2 traders, 62 rows) took 17 seconds.

Top traders, leaderboardPeriod: MONTH, overall, ranked by profit (50 rows in 8 seconds):

RankTrader30-day PnL30-day volume
1e46m3$2,692,225$2,288,936
2BreakTheBank$2,646,024$45,732,511
3UpTheBlues$1,881,450$133,230,698
400gringo00$1,739,969$19,407,750
5Kch-Temp$1,699,028$14,652,334

Resolved markets, last 24 hours, minTotalVolume: 100000, excluding "up or down" (25 per venue in 40 seconds):

VenueResolved (UTC)MarketWinnerVolume
PolymarketOct 12 23:21US x Iran ceasefire continues through October 12?Yes$1,988,650
PolymarketOct 12 21:12Will Newcastle United FC win on 2026-10-12?No$1,104,263
PolymarketOct 12 23:44Los Angeles Dodgers vs. Milwaukee Brewers: O/U 8.5Over$167,590
KalshiOct 13 00:07Torres vs Barrena: Alex Barrena winsYes908,645 contracts
KalshiOct 13 00:02BTC price on Oct 12, 2026 at 8pm EDT: $82,000 or aboveNo185,113 contracts

Price history, marketIds: ["https://polymarket.com/event/fed-decision-in-december-20260729232808632", "KXFED-26DEC"], daily, 30 days (120 points in 17 seconds). Weekly samples of the YES price:

MarketSep 14Sep 21Sep 28Oct 5Oct 12
Polymarket: Fed hikes 25 bps after the December 2026 meeting?0.570.6750.6750.7150.745
Polymarket: No change after the December 2026 meeting?0.3950.3050.2950.2550.225
Kalshi: Upper bound above 4.50% after Dec 9, 2026? (Sep 15 → Oct 6)0.0150.050.040.06–

New markets, last 24 hours, excluding sports, esports, weather and "up or down" markets (local run, 15 per venue):

VenueCreated (UTC)EventMarket
PolymarketOct 12 23:40Ethereum above ___ on October 12, 9PM ET?Ethereum above 2,430 (opened at 0.57)
KalshiOct 13 00:12Palladium price on Oct 12, 2026 at 11:00 PM ETAbove $1137.99 USD/ounce
KalshiOct 13 00:08Grammy Nominees: Best Pop Solo PerformanceSauvignon Blanc

New markets since the last run: two scheduled runs with sinceLastRun: true returned 50 markets each with zero overlap; the second run started exactly one market after where the first stopped (Polymarket 21:25:06.909 → 21:25:07.069 UTC).

How to use each mode

  • Trader analytics: put wallet addresses (0x…, the proxy wallet shown in the profile URL), exact usernames, or profile links (https://polymarket.com/@name, https://polymarket.com/profile/0x…) in Wallets or usernames. Choose sections (summary, positions, closedPositions, activity), the max rows per section, and which activity types to include (trades and redemptions by default).
  • Top traders: pick a period, category and ranking (profit or volume), and how many rows (up to about 2,000).
  • New markets / Resolved markets: set Since (2026-10-01 or 2026-10-12T08:00:00Z) or a Lookback in hours, or tick Only markets since the last run and schedule the Actor. Use Keywords, Exclude keywords and Minimum total volume to cut the flood: Polymarket alone creates about 14,000 and resolves about 20,000 markets a day, mostly 5-minute crypto and live sports markets.
  • Price history: paste market or event URLs, slugs, IDs, condition IDs or token IDs from Polymarket, and market, event or series tickers or URLs from Kalshi. Events expand to their highest-volume markets (up to Max markets per event or series). Choose 1-minute, 1-hour or 1-day spacing and how many days back. For a market that closed before the window, you get the last N days of its life.

Output fields

  • Markets: platform, eventTitle, marketTitle, outcomeLabel, yesBid, yesAsk, noBid, noAsk, lastPrice, impliedProbability, volume24hUsd, totalVolumeUsd, liquidityUsd, openInterestContracts (Kalshi), closeTime, categories, url, marketId, eventId.
  • New and resolved markets: the market fields plus createdAt, openTime, status, conditionId and outcomeTokenIds (Polymarket), rules (Kalshi); resolved rows add resolvedAt, winningOutcome, resolution (resolved, void, 50-50) and settlementValue (final value of the first outcome, 1 or 0). Kalshi volume is in contracts (each pays $1).
  • Trader summary: wallet, trader, pseudonym, xUsername, joinedAt, portfolioValueUsd, openPositions, openPositionsValueUsd, unrealizedPnlUsd, realizedPnlUsd, totalPnlUsd, totalVolumeUsd, allTimeRank, pnl30dUsd, volume30dUsd, pnl7dUsd, marketsTraded, resolvedUnredeemedPositions, unclaimedWinningsUsd, largestOpenPosition, positionsComplete, profileUrl.
  • Positions / closed positions / activity: market, outcome, shares, average and current price, cost basis, value, PnL, time, type and side, USD value, transaction hash, link.
  • Leaderboard: rank, trader, wallet, pnlUsd, volumeUsd, period, category, xUsername, profileUrl.
  • Price history: platform, marketTitle, outcome, time, timestamp, price, plus open, high, low, close, yesBid, yesAsk, volumeContracts and openInterestContracts for Kalshi.

Prices are in dollars per share (0 to 1). Multi-leg Kalshi parlays are excluded.

Pricing

Pay per result, platform usage included:

EventPrice
Market row (markets, new markets, resolved markets)$0.50 per 1,000
Matched pair (arbitrage)$5 per 1,000
Whale trade$1 per 1,000
Trader summary$2 per 1,000 ($0.002 per wallet)
Wallet record (position, closed position or activity row)$0.30 per 1,000
Leaderboard row$0.30 per 1,000
Price point$0.05 per 1,000

Examples: a full report on one wallet with 100 positions and 100 trades costs about $0.06; 30 days of daily prices for 10 markets costs about $0.015; the top 500 traders cost $0.15.

Accuracy and limits

  • Total PnL is Polymarket's own all-time profit figure (the number on the profile and leaderboard). Unrealized PnL is the mark-to-market PnL of open, unresolved positions. Realized PnL is derived as total minus unrealized. For wallets with more than 2,000 open positions only the 2,000 largest are counted (positionsComplete: false).
  • Usernames must match exactly; Polymarket's search does not find random pseudonyms like "Grown-Fence", so use the wallet address for those.
  • The public leaderboard goes about 2,000 rows deep.
  • Polymarket price history is the traded price of the first outcome (YES); the other outcome is 1 minus it. Kalshi candles are only produced for completed periods, so a market that opened an hour ago has no hourly candle yet.
  • New and resolved feeds scan at most 40,000 Polymarket and 60,000 Kalshi markets per run. That is about two days of Polymarket's flow but can be less than one day of Kalshi's (Kalshi lists tens of thousands of strike-ladder markets a day), so for Kalshi prefer windows of a few hours or "since last run" on a schedule; the log warns when a window was too big. In "since last run" mode a capped run delivers the oldest markets first and the next run continues from there, so nothing is skipped.
  • "Since last run" state lives in your account's key-value store prediction-market-scanner-state, one key per mode and filter combination (or per State key).

Use it with schedules and AI agents

  • Schedule newMarkets or resolvedMarkets with sinceLastRun every 15 minutes and send the rows to Slack, email, Sheets or a webhook with Apify integrations.
  • Schedule traderAnalytics on a watchlist of wallets to track their PnL and new trades daily.
  • The output is small, flat JSON, which makes it a good tool for AI agents through the Apify MCP server: "what are the current odds on X", "where do Polymarket and Kalshi disagree", "what is wallet 0x… holding".

FAQ

Is this financial advice? No. It reports public market data. Matching is automatic and can be wrong; verify each pair yourself.

How are markets matched? By normalized title similarity, with hard penalties when a named person, team, number or year appears on only one side, and when the questions use different relations (wins nomination vs. is on the ticket).

Do I need a Polymarket or Kalshi account? No. Every endpoint used here is public read-only data.

Is wallet data private? No. Polymarket positions and trades are public on-chain data and shown on every public profile page. Kalshi accounts are private and are not covered.

Something wrong or missing? Open an issue on this page. Problems are usually answered the same day.

Changelog

  • 0.2 (October 2026): five new modes: trader analytics (positions, realized and unrealized PnL, trade history for wallets or usernames), top-traders leaderboard, new markets and resolved markets feeds (both venues, with "since last run" state for schedules), and price history (Polymarket prices, Kalshi OHLC candles including settled markets). New exclude-keywords and volume filters. Faster handling of not-found errors.
  • 0.1 (October 2026): first release. Markets, arbitrage and whale-trade modes.