SimpleFunctions
10 contractsKalshi + Polymarketrefreshed 14 min ago

VfB Stuttgart vs. SC Freiburg

Liquidity-weighted aggregate sits at 41% across 10 contracts. Kalshi at 42%, Polymarket at 39% — a 3pp cross-venue gap.

Implied probability

41%
0%50%100%

Kalshi

42%

7 contracts

Polymarket

39%

3 contracts

Cross-venue gap

3pp

modest gap

24h move

no pin

24h volume

$206

10 contracts

Top contract

12¢

$121 · Kalshi

30-day trend

0%50%100%-30d-3w-2w-1wtodayAggregate: 20% (9 days, 9 points)Aggregate: 20% on 2026-05-03
Aggregate of 10 contracts · 9d

Cross-venue edge

Kalshi 42¢ · Polymarket 39¢ · 3pp spread

Buy on Polymarket (39¢, 3 contracts) and sell on Kalshi (42¢) — assuming both contracts settle on the same outcome.

Bracket families

5 clusters across 10 contracts.

These contracts were grouped by title similarity. The headline aggregate combines all clusters; verify the cluster you actually need before quoting a number.

Cluster 1

Will VfB eSports win

3 contracts$121

Cluster 2

Will G2 NORD win

3 contracts$86

Cluster 3

Bundesliga: Team to qualify for UEFA

2 contracts$0

Cluster 4

Will over 2.5 maps be played in the G2 NORD vs. VfB eSports League of Legends match

1 contract$0

Cluster 5

DFB-Pokal: Winner: VfB Stuttgart

1 contract$0

What moved the line

  • Apr 28Winner: VfB Stuttgart8pp2028¢ · Polymarket
  • Apr 29Winner: VfB Stuttgart7pp2821¢ · Polymarket
  • Apr 30Winner: VfB Stuttgart6pp2115¢ · Polymarket
  • May 2Winner: VfB Stuttgart3pp1518¢ · Polymarket

Recently closed in general

These markets stopped trading. Last odds and any captured outcome are shown above — full settlement detail lives at the venue.

More like this

Adjacent prediction questions.

How we compute these odds

SimpleFunctions aggregates live prediction-market contracts from Kalshi and Polymarket. Each slug groups contracts that resolve on the same underlying event, identified by venue event_id.

For binary slugs, the headline probability is the liquidity-weighted mid-price across all bound contracts. For multi-outcome slugs (e.g. elections with 3+ candidates), the headline is the leader’s price; we never arithmetically average disjoint outcomes — that would produce a number with no real-world meaning.

Snapshots refresh every 5 minutes during market hours; daily aggregates are computed at 04:00 UTC. The 30-day sparkline is drawn from per-ticker daily means stored in market_indicator_daily; 24h delta and movement events are derived from the same source.

Last updated on this page: 14 min ago.