Closing Line Value Scorecard

Bot P&L is high-variance. CLV — the difference between our entry price and the market's closing price — is not. It tells you within a day whether the model beat the market, regardless of which side won the game. Most prediction-market vendors don't measure CLV. The ones that do, don't publish it. Here's ours, every sport, with full data download.

Why CLV is the leading indicator

Trades that beat the close win 91% of the time.
Trades that lost the close win 9%.

That spread is real edge. Within 1398 settled trades across 12 sports, the side of the closing-line you came out on is by far the strongest predictor of who won — stronger than the model's confidence, stronger than the live market price, stronger than any single feature in the model.

91%
+CLV WR
n=679
9%
−CLV WR
n=719
1398 / 2135
trades with CLV measured
65.5% coverage
What CLV measures

Whether our model's entry price was better than the market's closing price. Positive = we got in cheaper than where the market settled. Negative = the market moved against us between our entry and game start. Independent of which side won the game.

What CLV does NOT measure
  • Profit / loss (variance dominates over short windows)
  • Model accuracy on a single game
  • Liquidity at our trade size
  • Slippage between fair and entry

Per-sport CLV — sorted best to worst

Each row is one sport's mean CLV across every settled trade we have. Green bars = positive (beating the close). Red bars = negative (losing the close). Sports with under 10 measured trades are flagged as preliminary.

Sport Verdict Mean CLV (all-time) 30d Beat close Overall WR n
NCAAMB
+CLV WR 100% (n=4) · −CLV WR 0% (n=0)
preliminary
PRELIMINARY
+17.75c 100%
4/4
53%
128W/114L
4/242
NCAAWB
+CLV WR 100% (n=3) · −CLV WR 0% (n=1)
preliminary
PRELIMINARY
+6.82c 75%
3/4
49%
41W/43L
4/84
LOL
+CLV WR 86% (n=64) · −CLV WR 8% (n=63)
breakeven
KEEP
+0.83c -4.21c
n=73
50%
64/127
44%
60W/78L
127/141
NHL
+CLV WR 92% (n=63) · −CLV WR 19% (n=48)
breakeven
KEEP
+0.63c -8.20c
n=25
57%
63/111
56%
82W/65L
111/147
ATP
+CLV WR 83% (n=93) · −CLV WR 9% (n=120)
breakeven
KEEP
-0.48c -3.34c
n=154
44%
93/213
41%
88W/126L
213/214
WTA
+CLV WR 95% (n=127) · −CLV WR 7% (n=125)
breakeven
KEEP
-0.49c -0.47c
n=230
50%
127/252
52%
132W/122L
252/255
MLB
+CLV WR 97% (n=137) · −CLV WR 10% (n=126)
bleeding
RESTRICT
-1.79c -4.42c
n=122
52%
137/263
54%
176W/147L
263/325
SOCCER
+CLV WR 83% (n=29) · −CLV WR 7% (n=43)
bleeding badly
KILL
-3.22c -1.83c
n=46
40%
29/72
38%
28W/45L
72/74
?
+CLV WR 33% (n=3) · −CLV WR 0% (n=2)
preliminary
PRELIMINARY
-4.04c 60%
3/5
14%
1W/6L
5/7
CS2
+CLV WR 89% (n=136) · −CLV WR 10% (n=164)
bleeding badly
KILL
-4.23c -3.86c
n=190
45%
136/300
45%
223W/269L
300/497
TENNIS
+CLV WR 100% (n=2) · −CLV WR 0% (n=3)
preliminary
PRELIMINARY
-5.12c 40%
2/5
73%
8W/3L
5/11
NBA
+CLV WR 89% (n=18) · −CLV WR 0% (n=24)
bleeding badly
KILL
-10.10c -13.48c
n=19
43%
18/42
42%
58W/79L
42/137

Edge bucket detail — where the edge actually lives

For each sport with enough data, mean CLV broken down by the edge size at entry. This is the layer at which gate decisions get made: "do trades at 8-11c edge in MLB actually beat the close?" If the bucket is green, yes. If it's red, the model is selling closing-line value into that band.

NCAAMB
mean CLV +17.75c · 4 measured
preliminary
Edge band n Mean CLV Beat % WR
8-11c 2 +10.50c 100% 100%
11-15c 1 +26.00c 100% 100%
15-20c 1 +24.00c 100% 100%
NCAAWB
mean CLV +6.82c · 4 measured
preliminary
Edge band n Mean CLV Beat % WR
11-15c 1 +32.80c 100% 100%
15-20c 2 -12.25c 50% 50%
25c+ 1 +19.00c 100% 100%
LOL
mean CLV +0.83c · 127 measured
breakeven
Edge band n Mean CLV Beat % WR
<5c 2 +3.00c 50% 50%
5-8c 1 -42.00c 0% 0%
8-11c 39 +3.53c 62% 64%
11-15c 24 -6.03c 46% 46%
15-20c 19 +13.44c 63% 63%
20-25c 18 -16.26c 17% 17%
25c+ 24 +7.75c 54% 33%
NHL
mean CLV +0.63c · 111 measured
breakeven
Edge band n Mean CLV Beat % WR
<5c 10 +1.74c 70% 60%
5-8c 5 +0.82c 40% 40%
8-11c 33 -7.59c 42% 52%
11-15c 24 +3.87c 71% 67%
15-20c 19 +12.71c 63% 84%
20-25c 11 -6.56c 46% 54%
25c+ 9 +4.08c 67% 44%
ATP
mean CLV -0.48c · 213 measured
breakeven
Edge band n Mean CLV Beat % WR
<5c 2 -36.50c 0% 0%
5-8c 2 -28.50c 0% 0%
8-11c 39 -10.61c 33% 44%
11-15c 21 -6.15c 48% 38%
15-20c 92 +1.86c 45% 41%
20-25c 27 +5.65c 44% 30%
25c+ 30 +8.22c 57% 57%
WTA
mean CLV -0.49c · 252 measured
breakeven
Edge band n Mean CLV Beat % WR
<5c 42 -2.81c 52% 50%
5-8c 25 -3.04c 52% 64%
8-11c 37 -2.27c 49% 51%
11-15c 30 +6.93c 67% 67%
15-20c 52 +0.52c 50% 50%
20-25c 20 -1.17c 45% 45%
25c+ 46 -1.27c 41% 41%
MLB
mean CLV -1.79c · 263 measured
bleeding
Edge band n Mean CLV Beat % WR
<5c 20 -7.97c 35% 35%
5-8c 63 -1.40c 62% 70%
8-11c 30 -10.29c 43% 50%
11-15c 79 -1.80c 51% 56%
15-20c 34 +0.56c 50% 47%
20-25c 15 +3.36c 53% 53%
25c+ 22 +7.18c 59% 54%
SOCCER
mean CLV -3.22c · 72 measured
bleeding badly
Edge band n Mean CLV Beat % WR
<5c 2 +39.50c 100% 100%
8-11c 9 -14.90c 33% 44%
11-15c 46 -5.94c 37% 37%
15-20c 10 -3.86c 30% 20%
20-25c 3 +39.20c 100% 67%
25c+ 2 +8.50c 50% 0%
?
mean CLV -4.04c · 5 measured
preliminary
Edge band n Mean CLV Beat % WR
<5c 5 -4.04c 60% 20%
CS2
mean CLV -4.23c · 300 measured
bleeding badly
Edge band n Mean CLV Beat % WR
<5c 59 -12.15c 41% 51%
5-8c 18 -24.24c 28% 39%
8-11c 28 -0.98c 57% 57%
11-15c 41 -2.19c 46% 54%
15-20c 56 -5.38c 41% 38%
20-25c 65 +5.01c 54% 43%
25c+ 33 -0.74c 42% 39%
TENNIS
mean CLV -5.12c · 5 measured
preliminary
Edge band n Mean CLV Beat % WR
<5c 5 -5.12c 40% 40%
NBA
mean CLV -10.10c · 42 measured
bleeding badly
Edge band n Mean CLV Beat % WR
<5c 4 -15.43c 25% 25%
5-8c 9 +3.67c 78% 78%
8-11c 6 -7.50c 50% 50%
11-15c 4 -34.27c 0% 0%
15-20c 11 -19.13c 27% 18%
20-25c 7 -4.49c 43% 29%
25c+ 1 +28.50c 100% 100%

Why we publish this

Bot P&L is the wrong scoreboard for whether a probability model is good. P&L is dominated by single-game variance — five coin-flips in a row can wipe out a quarter of edge that took 200 trades to build. CLV doesn't have that problem. It settles within a day, can't be flipped by a buzzer-beater, and answers exactly the question every quant cares about: did the model beat the market on price, before the game even started?

We publish CLV by sport because that is where the trading decisions actually get made. If a sport's CLV is consistently negative, the model is selling closing-line value into the market — the bot will lose money on that sport regardless of which side wins. We use this page to make those decisions in public. As of this update, we trade only sports with positive or breakeven CLV. The bleeders (NBA, CS2, WTA, Soccer) are paused until their CLV either improves or the underlying model is retrained — see the changelog for the suspension log.

The data is updated by a weekly cron that pulls Polymarket price history for every settled trade and computes the closing-line difference. Coverage is currently 65.5% across all trades. Older trades may not have CLV because Polymarket's history API doesn't always return non-terminal prices for resolved markets.

Citing this dataset

CC BY 4.0. Reproduce, quote, and embed freely with attribution. Programmatic access via JSON / CSV is rate-unlimited for non-abusive use.

ZenHodl Sports Forecasting CLV. Accessed 2026-05-21. https://zenhodl.net/clv

Definition. CLV is computed as closing_price_c − entry_price_c for each trade. Closing price is the last non-terminal Polymarket midpoint observed before the market converges to its 0/100 resolution. Entry price is the ask we paid at trade-open time.

Coverage. Older trades may lack CLV because the close-price-tracker only stored prices in a 5–95c band; markets that resolved fast can have no non-terminal price recorded. The weekly backfill_clv.py cron pulls Polymarket price history to close that gap retroactively. Current coverage: 65.5%.

Verdicts. A sport is labeled beating close at mean CLV ≥ +1c, breakeven between −1c and +1c, bleeding from −1c to −3c, and bleeding badly below −3c. Sports with under 10 measured trades are flagged preliminary and excluded from go/no-go decisions.

Active vs paused sports. The bot currently trades only NHL, ATP, LOL, and MLB (the sports with positive or breakeven CLV). NBA, CS2, WTA, and Soccer remain in this dataset because their historical CLV is meaningful research data and we'd rather show it than hide it. Their trading is paused until CLV trends positive or the underlying model is retrained.

Why most vendors don't publish CLV. Because most can't measure it (no entry-price stamp, no closing-price archive), and the ones that can usually find their CLV is negative. Negative CLV is uncomfortable to publish. We publish it anyway — it's the same reason the transparency index shows ZenHodl ranked #2 instead of fudging us to #1.