Edge Labs EDGE LABS Market intelligence
MLB CFB NFL
Research · Angle accuracy

Every angle, graded in public.

This is the live ledger behind the board: every research angle the nightly regrade engine tracks, with its real sample size and closing-line value. Most competitors show only wins. We show the kills too, struck through, right next to the survivors. That is the whole point of transparency: it is only worth something if it includes the losses.

7
Validated
9
Watching
4
Killed
9
Not yet modeled

Angle Accuracy Engine · regraded 7/29 7:56a ET · n=20 graded angles

How a row gets its label

Every angle is a (sport, category, market, side) combination pulled straight from the research database and re-graded nightly against settled games. Validated means the hit rate clears break-even by at least 2 percentage points. Underperforming means it trails break-even by the same margin or more, we call that a kill and leave it on the board anyway. Everything between is watching: not resolved either way yet.

Not yet modeled angles have real game_trends rows but no settlement pipeline wired up (mostly player props, which need per-player box-score data we do not grade yet). They are listed with their real row count and a plain note, never hidden.

min. n=20 before any grade is assigned
break-even is fixed -110 for totals/spreads, measured from real prices for moneyline
CLV: run-points for totals, de-vigged probability for moneyline, not modeled yet for spreads
Sample size vs. edge
min. credible sample (n=20) 20 50 100 250 500 1000 -20%-10%0%+10%+20% Sample size (n, log scale) Edge vs. break-even Team form (spreads) · Spreads (run line) AWAY -- n=528, edge +16.2% vs. break-even, status: validated. Outside the noise band: this deviation is larger than chance alone would typically produce at this sample size. Team form (spreads) · Spreads (run line) HOME -- n=511, edge -13.8% vs. break-even, status: underperforming. Outside the noise band: this deviation is larger than chance alone would typically produce at this sample size. Season record · Moneyline AWAY -- n=138, edge -1.1% vs. break-even, status: provisional. Inside the noise band: not yet distinguishable from chance at this sample size. Team form (moneyline) · Moneyline AWAY -- n=486, edge +5.1% vs. break-even, status: validated. Outside the noise band: this deviation is larger than chance alone would typically produce at this sample size. Team form · Moneyline AWAY -- n=288, edge +3.0% vs. break-even, status: validated. Inside the noise band: not yet distinguishable from chance at this sample size. Team form (moneyline) · Moneyline HOME -- n=583, edge -2.5% vs. break-even, status: underperforming. Inside the noise band: not yet distinguishable from chance at this sample size. Team form · Moneyline HOME -- n=281, edge +0.7% vs. break-even, status: provisional. Inside the noise band: not yet distinguishable from chance at this sample size. Season record · Moneyline HOME -- n=370, edge -0.9% vs. break-even, status: provisional. Inside the noise band: not yet distinguishable from chance at this sample size. Weather · Totals UNDER -- n=50, edge +10.2% vs. break-even, status: validated. Inside the noise band: not yet distinguishable from chance at this sample size. Park factor · Totals UNDER -- n=265, edge -2.2% vs. break-even, status: underperforming. Inside the noise band: not yet distinguishable from chance at this sample size. Situational · Totals OVER -- n=34, edge +3.9% vs. break-even, status: validated. Inside the noise band: not yet distinguishable from chance at this sample size. Market-implied · Totals UNDER -- n=144, edge +2.7% vs. break-even, status: validated. Inside the noise band: not yet distinguishable from chance at this sample size. Team form (totals) · Totals UNDER -- n=1163, edge -1.0% vs. break-even, status: provisional. Inside the noise band: not yet distinguishable from chance at this sample size. Team form (totals) · Totals OVER -- n=475, edge +0.4% vs. break-even, status: provisional. Inside the noise band: not yet distinguishable from chance at this sample size. Team form · Totals UNDER -- n=337, edge -3.8% vs. break-even, status: underperforming. Inside the noise band: not yet distinguishable from chance at this sample size. Team form · Totals OVER -- n=202, edge +0.5% vs. break-even, status: provisional. Inside the noise band: not yet distinguishable from chance at this sample size. Weather · Totals OVER -- n=157, edge +7.0% vs. break-even, status: validated. Inside the noise band: not yet distinguishable from chance at this sample size. Market-implied · Totals OVER -- n=188, edge +0.1% vs. break-even, status: provisional. Inside the noise band: not yet distinguishable from chance at this sample size. Park factor · Totals OVER -- n=553, edge +1.1% vs. break-even, status: provisional. Inside the noise band: not yet distinguishable from chance at this sample size. Situational · Totals UNDER -- n=747, edge +1.8% vs. break-even, status: provisional. Inside the noise band: not yet distinguishable from chance at this sample size. n=34, smallest sample on the boardinside the band = not proven yet n=1163, largest sample on the board clearest signal in the datafurthest outside the noise band
Validated
Watching
Underperforming
Noise band (approx. 95%, worst-case variance)
Minimum credible sample

The shaded band is how far a coin-flip could plausibly drift from break-even by chance alone at that sample size, not a line we chose to flatter our own angles. A point inside the band is not yet distinguishable from noise, whatever status the table below gives it. A point outside the band is a deviation bigger than chance alone would typically produce. Every point here is a real row in the ledger below; hover any dot for its angle and numbers.

Validated
Team form (spreads) · Spreads (run line) AWAY
Samplen=528
Record337-191
Edge+16.2%
CLV, 90d--
regraded 7/29
Weather · Totals UNDER
Samplen=50
Record26-19-5
Edge+10.2%
CLV, 90d-0.43 pts
regraded 7/29
Weather · Totals OVER
Samplen=157
Record82-68-7
Edge+7.0%
CLV, 90d-0.26 pts
regraded 7/29
Team form (moneyline) · Moneyline AWAY
Samplen=486
Record262-224
Edge+5.1%
CLV, 90d--
regraded 7/29
Situational · Totals OVER
Samplen=34
Record17-16-1
Edge+3.9%
CLV, 90d+0.16 pts
regraded 7/29
Team form · Moneyline AWAY
Samplen=288
Record148-140
Edge+3.0%
CLV, 90d--
regraded 7/29
Market-implied · Totals UNDER
Samplen=144
Record70-69-5
Edge+2.7%
CLV, 90d+0.08 pts
regraded 7/29
Watching
Team form (totals) · Totals UNDER
Samplen=1163
Record521-596-46
Edge-1.0%
CLV, 90d+0.13 pts
regraded 7/29
Situational · Totals UNDER
Samplen=747
Record354-363-30
Edge+1.8%
CLV, 90d+0.15 pts
regraded 7/29
Park factor · Totals OVER
Samplen=553
Record259-273-21
Edge+1.1%
CLV, 90d+0.02 pts
regraded 7/29
Team form (totals) · Totals OVER
Samplen=475
Record220-238-17
Edge+0.4%
CLV, 90d+0.11 pts
regraded 7/29
Season record · Moneyline HOME
Samplen=370
Record204-166
Edge-0.9%
CLV, 90d--
regraded 7/29
Team form · Moneyline HOME
Samplen=281
Record155-126
Edge+0.7%
CLV, 90d--
regraded 7/29
Team form · Totals OVER
Samplen=202
Record92-99-11
Edge+0.5%
CLV, 90d+0.14 pts
regraded 7/29
Market-implied · Totals OVER
Samplen=188
Record85-93-10
Edge+0.1%
CLV, 90d+0.07 pts
regraded 7/29
Season record · Moneyline AWAY
Samplen=138
Record68-70
Edge-1.1%
CLV, 90d--
regraded 7/29
Underperforming · the kills
Team form (spreads) · Spreads (run line) HOME
Samplen=511
Record173-338
Edge-13.8%
CLV, 90d--
regraded 7/29
Team form · Totals UNDER
Samplen=337
Record142-182-13
Edge-3.8%
CLV, 90d+0.07 pts
regraded 7/29
Team form (moneyline) · Moneyline HOME
Samplen=583
Record301-282
Edge-2.5%
CLV, 90d--
regraded 7/29
Park factor · Totals UNDER
Samplen=265
Record115-138-12
Edge-2.2%
CLV, 90d+0.08 pts
regraded 7/29
Not yet modeled
Matchup · Batter hits OVER
Samplen/a
Record--
Edge--
CLV, 90d--
checked 7/29
132 game_trends row(s) exist for this angle but there is no settlement pipeline wired yet (e.g. player props need per-player box-score/statcast settlement). Listed honestly rather than omitted.
Matchup · Batter hits
Samplen/a
Record--
Edge--
CLV, 90d--
checked 7/29
351 game_trends row(s) exist for this angle but there is no settlement pipeline wired yet (e.g. player props need per-player box-score/statcast settlement). Listed honestly rather than omitted.
Player props (batter) · Batter hits OVER
Samplen/a
Record--
Edge--
CLV, 90d--
checked 7/29
3187 game_trends row(s) exist for this angle but there is no settlement pipeline wired yet (e.g. player props need per-player box-score/statcast settlement). Listed honestly rather than omitted.
Player props (batter) · Batter home runs OVER
Samplen/a
Record--
Edge--
CLV, 90d--
checked 7/29
267 game_trends row(s) exist for this angle but there is no settlement pipeline wired yet (e.g. player props need per-player box-score/statcast settlement). Listed honestly rather than omitted.
Player props (batter) · Batter total bases OVER
Samplen/a
Record--
Edge--
CLV, 90d--
checked 7/29
471 game_trends row(s) exist for this angle but there is no settlement pipeline wired yet (e.g. player props need per-player box-score/statcast settlement). Listed honestly rather than omitted.
Player props (pitcher) · Pitcher strikeouts UNDER
Samplen/a
Record--
Edge--
CLV, 90d--
checked 7/29
319 game_trends row(s) exist for this angle but there is no settlement pipeline wired yet (e.g. player props need per-player box-score/statcast settlement). Listed honestly rather than omitted.
Player props (pitcher) · Pitcher strikeouts OVER
Samplen/a
Record--
Edge--
CLV, 90d--
checked 7/29
174 game_trends row(s) exist for this angle but there is no settlement pipeline wired yet (e.g. player props need per-player box-score/statcast settlement). Listed honestly rather than omitted.
Player props (split) · Pitcher strikeouts OVER
Samplen/a
Record--
Edge--
CLV, 90d--
checked 7/29
504 game_trends row(s) exist for this angle but there is no settlement pipeline wired yet (e.g. player props need per-player box-score/statcast settlement). Listed honestly rather than omitted.
Player props · Pitcher strikeouts OVER
Samplen/a
Record--
Edge--
CLV, 90d--
checked 7/29
638 game_trends row(s) exist for this angle but there is no settlement pipeline wired yet (e.g. player props need per-player box-score/statcast settlement). Listed honestly rather than omitted.