408 settled bets | 92 sized | 5+ bet threshold for grade/type breakdowns
All tracked (408 bets): -27.49 units | ROI -7.2%
Sized only (92 bets): +0.45 units | ROI +0.7%
▲ Sizing discipline: sized bets outperform all tracked bets
Grade ROIs (5+ bet threshold):
Grade A: +8.9% (80 bets)
Grade B: -10.8% (328 bets)
✓ Grade hierarchy A>B>C ordering confirmed
Bet type performance (5+ bet threshold):
Moneyline: +81.6% ROI | 6 bets | +2.85 units
Run Line: +30.0% ROI | 44 bets | +8.39 units
Batter Hits: +11.9% ROI | 10 bets | +1.19 units
Pitcher Hits Allowed: +10.0% ROI | 41 bets | +4.09 units
Pitcher Outs: +9.7% ROI | 28 bets | +2.72 units
K Prop: -11.6% ROI | 58 bets | -6.72 units ★ HIGH VOLUME LOSER
Batter H+R+RBI: -16.8% ROI | 174 bets | -29.21 units ★ HIGH VOLUME LOSER
Total: -28.8% ROI | 41 bets | -9.79 units ★ HIGH VOLUME LOSER
⚠ Red flags:
Batter H+R+RBI: 174 bets, ROI -16.8% — strongly negative
Total: 41 bets, ROI -28.8% — strongly negative
Sized only = FULL/HALF/QRTR game bets; All tracked includes unsized props.
| Group | Bets | W | L | P | Win% | AvgOdds | BE% | Net Units | ROI |
|---|---|---|---|---|---|---|---|---|---|
| All tracked | 408 | 210 | 196 | 2 | 51.7% | -110 | 52.5% | -27.49 | -7.2% |
| Sized only | 92 | 44 | 46 | 2 | 48.9% | -51 | 33.7% | +0.45 | 0.7% |
| Group | Bets | W | L | P | Win% | AvgOdds | BE% | Net Units | ROI |
|---|---|---|---|---|---|---|---|---|---|
| Run Line | 44 | 27 | 17 | 0 | 61.4% | -49 | 33.1% | +8.39 | 30.0% |
| Pitcher Hits Allowed | 41 | 26 | 15 | 0 | 63.4% | -130 | 56.5% | +4.09 | 10.0% |
| Moneyline | 6 | 3 | 3 | 0 | 50.0% | +201 | 33.2% | +2.85 | 81.6% |
| Pitcher Outs | 28 | 16 | 12 | 0 | 57.1% | -24 | 19.1% | +2.72 | 9.7% |
| Batter Hits | 10 | 8 | 2 | 0 | 80.0% | -251 | 71.5% | +1.19 | 11.9% |
| F5 ML * | 1 | 0 | 1 | 0 | 0.0% | +165 | 37.7% | -1.00 | -100.0% |
| K Prop | 58 | 30 | 28 | 0 | 51.7% | -134 | 57.3% | -6.72 | -11.6% |
| Total | 41 | 14 | 25 | 2 | 35.9% | -95 | 48.6% | -9.79 | -28.8% |
| Batter H+R+RBI | 174 | 83 | 91 | 0 | 47.7% | -135 | 57.4% | -29.21 | -16.8% |
| NRFI * | 3 | 1 | 2 | 0 | 33.3% | — | — | — | — |
| YRFI * | 2 | 2 | 0 | 0 | 100.0% | — | — | — | — |
| Group | Bets | W | L | P | Win% | AvgOdds | BE% | Net Units | ROI |
|---|---|---|---|---|---|---|---|---|---|
| Run Line | 44 | 27 | 17 | 0 | 61.4% | -49 | 33.1% | +8.39 | 30.0% |
| Moneyline | 6 | 3 | 3 | 0 | 50.0% | +201 | 33.2% | +2.85 | 81.6% |
| F5 ML * | 1 | 0 | 1 | 0 | 0.0% | +165 | 37.7% | -1.00 | -100.0% |
| Total | 41 | 14 | 25 | 2 | 35.9% | -95 | 48.6% | -9.79 | -28.8% |
| Group | Bets | W | L | P | Win% | AvgOdds | BE% | Net Units | ROI |
|---|---|---|---|---|---|---|---|---|---|
| Batter H+R+RBI | A | 29 | 15 | 14 | 0 | 51.7% | -138 | 58.0% | -3.23 | -11.1% |
| Batter H+R+RBI | B | 145 | 68 | 77 | 0 | 46.9% | -134 | 57.3% | -25.98 | -17.9% |
| Batter Hits | B | 10 | 8 | 2 | 0 | 80.0% | -251 | 71.5% | +1.19 | 11.9% |
| F5 ML | B * | 1 | 0 | 1 | 0 | 0.0% | +165 | 37.7% | -1.00 | -100.0% |
| K Prop | A | 22 | 13 | 9 | 0 | 59.1% | -140 | 58.4% | +0.18 | 0.8% |
| K Prop | B | 36 | 17 | 19 | 0 | 47.2% | -131 | 56.7% | -6.91 | -19.2% |
| Moneyline | B | 6 | 3 | 3 | 0 | 50.0% | +201 | 33.2% | +2.85 | 81.6% |
| NRFI | B * | 3 | 1 | 2 | 0 | 33.3% | — | — | — | — |
| Pitcher Hits Allowed | B | 41 | 26 | 15 | 0 | 63.4% | -130 | 56.5% | +4.09 | 10.0% |
| Pitcher Outs | B | 28 | 16 | 12 | 0 | 57.1% | -24 | 19.1% | +2.72 | 9.7% |
| Run Line | A | 28 | 20 | 8 | 0 | 71.4% | -42 | 29.6% | +8.85 | 45.4% |
| Run Line | B | 16 | 7 | 9 | 0 | 43.8% | -63 | 38.5% | -0.46 | -5.4% |
| Total | A * | 1 | 1 | 0 | 0 | 100.0% | -101 | 50.2% | +0.49 | 99.0% |
| Total | B | 40 | 13 | 25 | 2 | 34.2% | -94 | 48.5% | -10.29 | -30.7% |
| YRFI | B * | 2 | 2 | 0 | 0 | 100.0% | — | — | — | — |
| Group | Bets | W | L | P | Win% | AvgOdds | BE% | Net Units | ROI |
|---|---|---|---|---|---|---|---|---|---|
| F5 ML | B * | 1 | 0 | 1 | 0 | 0.0% | +165 | 37.7% | -1.00 | -100.0% |
| Moneyline | B | 6 | 3 | 3 | 0 | 50.0% | +201 | 33.2% | +2.85 | 81.6% |
| Run Line | A | 28 | 20 | 8 | 0 | 71.4% | -42 | 29.6% | +8.85 | 45.4% |
| Run Line | B | 16 | 7 | 9 | 0 | 43.8% | -63 | 38.5% | -0.46 | -5.4% |
| Total | A * | 1 | 1 | 0 | 0 | 100.0% | -101 | 50.2% | +0.49 | 99.0% |
| Total | B | 40 | 13 | 25 | 2 | 34.2% | -94 | 48.5% | -10.29 | -30.7% |
| Group | Bets | W | L | P | Win% | AvgOdds | BE% | Net Units | ROI |
|---|---|---|---|---|---|---|---|---|---|
| ≤ -150 | 77 | 48 | 29 | 0 | 62.3% | -171 | 63.1% | -0.74 | -1.0% |
| -149 to -125 | 162 | 81 | 81 | 0 | 50.0% | -136 | 57.6% | -21.41 | -13.9% |
| -124 to -105 | 115 | 54 | 59 | 2 | 47.8% | -116 | 53.6% | -9.38 | -9.1% |
| -104 to +104 | 18 | 8 | 10 | 0 | 44.4% | -23 | 18.8% | -3.04 | -17.9% |
| +105 to +124 | 14 | 8 | 6 | 0 | 57.1% | +113 | 46.9% | +2.93 | 22.6% |
| +125 to +149 | 6 | 2 | 4 | 0 | 33.3% | +137 | 42.1% | -0.68 | -12.4% |
| ≥ +150 | 11 | 6 | 5 | 0 | 54.5% | +182 | 35.5% | +4.82 | 60.2% |
| Group | Bets | W | L | P | Win% | AvgOdds | BE% | Net Units | ROI |
|---|---|---|---|---|---|---|---|---|---|
| A | ≤ -150 | 13 | 10 | 3 | 0 | 76.9% | -157 | 61.1% | +3.43 | 26.4% |
| A | -149 to -125 | 39 | 21 | 18 | 0 | 53.8% | -137 | 57.7% | -3.31 | -9.6% |
| A | -124 to -105 | 18 | 11 | 7 | 0 | 61.1% | -117 | 54.0% | +1.36 | 9.4% |
| A | -104 to +104 * | 3 | 2 | 1 | 0 | 66.7% | +34 | 74.8% | +0.49 | 19.8% |
| A | +105 to +124 * | 1 | 1 | 0 | 0 | 100.0% | +113 | 46.9% | +1.13 | 113.0% |
| A | +125 to +149 * | 3 | 2 | 1 | 0 | 66.7% | +141 | 41.5% | +1.82 | 60.7% |
| A | ≥ +150 * | 3 | 2 | 1 | 0 | 66.7% | +157 | 38.9% | +1.38 | 55.0% |
| B | ≤ -150 | 64 | 38 | 26 | 0 | 59.4% | -174 | 63.5% | -4.17 | -6.5% |
| B | -149 to -125 | 123 | 60 | 63 | 0 | 48.8% | -136 | 57.5% | -18.09 | -15.2% |
| B | -124 to -105 | 97 | 43 | 52 | 2 | 45.3% | -115 | 53.6% | -10.74 | -12.1% |
| B | -104 to +104 | 15 | 6 | 9 | 0 | 40.0% | -34 | 25.6% | -3.53 | -24.3% |
| B | +105 to +124 | 13 | 7 | 6 | 0 | 53.8% | +113 | 46.8% | +1.80 | 15.0% |
| B | +125 to +149 * | 3 | 0 | 3 | 0 | 0.0% | +134 | 42.8% | -2.50 | -100.0% |
| B | ≥ +150 | 8 | 4 | 4 | 0 | 50.0% | +191 | 34.3% | +3.44 | 62.6% |
| Group | Bets | W | L | P | Win% | AvgOdds | BE% | Net Units | ROI |
|---|---|---|---|---|---|---|---|---|---|
| Batter H+R+RBI | ≤ -150 | 36 | 19 | 17 | 0 | 52.8% | -159 | 61.3% | -5.08 | -14.1% |
| Batter H+R+RBI | -149 to -125 | 90 | 43 | 47 | 0 | 47.8% | -135 | 57.4% | -14.89 | -16.5% |
| Batter H+R+RBI | -124 to -105 | 47 | 21 | 26 | 0 | 44.7% | -118 | 54.1% | -8.25 | -17.5% |
| Batter H+R+RBI | -104 to +104 * | 1 | 0 | 1 | 0 | 0.0% | -103 | 50.7% | -1.00 | -100.0% |
| Batter Hits | ≤ -150 | 10 | 8 | 2 | 0 | 80.0% | -251 | 71.5% | +1.19 | 11.9% |
| F5 ML | ≥ +150 * | 1 | 0 | 1 | 0 | 0.0% | +165 | 37.7% | -1.00 | -100.0% |
| K Prop | ≤ -150 | 15 | 12 | 3 | 0 | 80.0% | -155 | 60.8% | +4.71 | 31.4% |
| K Prop | -149 to -125 | 32 | 13 | 19 | 0 | 40.6% | -139 | 58.1% | -9.71 | -30.3% |
| K Prop | -124 to -105 | 10 | 5 | 5 | 0 | 50.0% | -117 | 53.9% | -0.72 | -7.2% |
| K Prop | +125 to +149 * | 1 | 0 | 1 | 0 | 0.0% | +129 | 43.7% | -1.00 | -100.0% |
| Moneyline | ≥ +150 | 6 | 3 | 3 | 0 | 50.0% | +201 | 33.2% | +2.85 | 81.6% |
| Pitcher Hits Allowed | ≤ -150 | 14 | 8 | 6 | 0 | 57.1% | -162 | 61.8% | -1.12 | -8.0% |
| Pitcher Hits Allowed | -149 to -125 | 18 | 12 | 6 | 0 | 66.7% | -137 | 57.8% | +2.85 | 15.8% |
| Pitcher Hits Allowed | -124 to -105 | 7 | 5 | 2 | 0 | 71.4% | -117 | 54.0% | +2.28 | 32.6% |
| Pitcher Hits Allowed | +105 to +124 * | 2 | 1 | 1 | 0 | 50.0% | +110 | 47.7% | +0.08 | 4.0% |
| Pitcher Outs | ≤ -150 * | 2 | 1 | 1 | 0 | 50.0% | -174 | 63.6% | -0.45 | -22.4% |
| Pitcher Outs | -149 to -125 | 5 | 3 | 2 | 0 | 60.0% | -136 | 57.6% | +0.18 | 3.6% |
| Pitcher Outs | -124 to -105 | 6 | 5 | 1 | 0 | 83.3% | -116 | 53.6% | +3.29 | 54.8% |
| Pitcher Outs | -104 to +104 | 5 | 2 | 3 | 0 | 40.0% | -21 | 17.2% | -0.98 | -19.6% |
| Pitcher Outs | +105 to +124 | 9 | 5 | 4 | 0 | 55.6% | +115 | 46.5% | +1.68 | 18.7% |
| Pitcher Outs | +125 to +149 * | 1 | 0 | 1 | 0 | 0.0% | +128 | 43.9% | -1.00 | -100.0% |
| Run Line | -149 to -125 | 17 | 10 | 7 | 0 | 58.8% | -135 | 57.4% | +0.16 | 1.9% |
| Run Line | -124 to -105 | 14 | 9 | 5 | 0 | 64.3% | -116 | 53.6% | +2.76 | 32.5% |
| Run Line | -104 to +104 * | 2 | 1 | 1 | 0 | 50.0% | +101 | 49.8% | +0.00 | 0.0% |
| Run Line | +105 to +124 * | 3 | 2 | 1 | 0 | 66.7% | +112 | 47.2% | +1.17 | 58.7% |
| Run Line | +125 to +149 * | 4 | 2 | 2 | 0 | 50.0% | +142 | 41.4% | +1.32 | 37.7% |
| Run Line | ≥ +150 * | 4 | 3 | 1 | 0 | 75.0% | +158 | 38.8% | +2.96 | 84.7% |
| Total | -124 to -105 | 31 | 9 | 20 | 2 | 31.0% | -112 | 52.8% | -8.74 | -35.0% |
| Total | -104 to +104 | 10 | 5 | 5 | 0 | 50.0% | -41 | 29.1% | -1.06 | -11.7% |
Props are always unsized. This section is unaffected by --sized-only.
| Group | Bets | W | L | P | Win% | AvgOdds | BE% | Net Units | ROI |
|---|---|---|---|---|---|---|---|---|---|
| Game bets (ML/RL/Total/F5) | 92 | 44 | 46 | 2 | 48.9% | -51 | 33.7% | +0.45 | 0.7% |
| All props combined | 316 | 166 | 150 | 0 | 52.5% | -128 | 56.1% | -27.93 | -8.8% |
| Group | Bets | W | L | P | Win% | AvgOdds | BE% | Net Units | ROI |
|---|---|---|---|---|---|---|---|---|---|
| Pitcher Hits Allowed | 41 | 26 | 15 | 0 | 63.4% | -130 | 56.5% | +4.09 | 10.0% |
| Pitcher Outs | 28 | 16 | 12 | 0 | 57.1% | -24 | 19.1% | +2.72 | 9.7% |
| Batter Hits | 10 | 8 | 2 | 0 | 80.0% | -251 | 71.5% | +1.19 | 11.9% |
| K Prop | 58 | 30 | 28 | 0 | 51.7% | -134 | 57.3% | -6.72 | -11.6% |
| Batter H+R+RBI | 174 | 83 | 91 | 0 | 47.7% | -135 | 57.4% | -29.21 | -16.8% |
| NRFI * | 3 | 1 | 2 | 0 | 33.3% | — | — | — | — |
| YRFI * | 2 | 2 | 0 | 0 | 100.0% | — | — | — | — |
Grades only populate from the run that fixed the tracker bug onward.
| Group | Bets | W | L | P | Win% | AvgOdds | BE% | Net Units | ROI |
|---|---|---|---|---|---|---|---|---|---|
| Batter H+R+RBI | A | 29 | 15 | 14 | 0 | 51.7% | -138 | 58.0% | -3.23 | -11.1% |
| Batter H+R+RBI | B | 145 | 68 | 77 | 0 | 46.9% | -134 | 57.3% | -25.98 | -17.9% |
| Batter Hits | B | 10 | 8 | 2 | 0 | 80.0% | -251 | 71.5% | +1.19 | 11.9% |
| K Prop | A | 22 | 13 | 9 | 0 | 59.1% | -140 | 58.4% | +0.18 | 0.8% |
| K Prop | B | 36 | 17 | 19 | 0 | 47.2% | -131 | 56.7% | -6.91 | -19.2% |
| NRFI | B * | 3 | 1 | 2 | 0 | 33.3% | — | — | — | — |
| Pitcher Hits Allowed | B | 41 | 26 | 15 | 0 | 63.4% | -130 | 56.5% | +4.09 | 10.0% |
| Pitcher Outs | B | 28 | 16 | 12 | 0 | 57.1% | -24 | 19.1% | +2.72 | 9.7% |
| YRFI | B * | 2 | 2 | 0 | 0 | 100.0% | — | — | — | — |
Reference guide for all columns, grades, sizing values, odds bands, and section descriptions used in this report.
| Column | Description |
|---|---|
| Bets | Number of settled bets in the bucket (result ≠ blank) |
| W / L / P | Wins, Losses, Pushes |
| Win% | Wins ÷ (Wins + Losses) — pushes excluded from denominator |
| AvgOdds | Mean American odds across all bets in the bucket |
| BE% | Break-even win rate implied by AvgOdds: 100/(100+odds) for + odds; |odds|/(|odds|+100) for − odds |
| Net Units | Sum of profit_loss_units across all bets; positive = profitable |
| ROI% | Net Units ÷ Total Units Risked × 100. Sized bets use actual sizing (FULL=1.0, HALF=0.5, QRTR=0.25); unsized bets treated as 1.0 unit risked. |
| * | Caution flag: bucket has fewer bets than the --min-sample threshold. Results may be noise. |
| Grade | Score Threshold | Conditions | Recommendation |
|---|---|---|---|
| A | ≥ 10 pts | 0 FAILs, 0 WARNs, 0 risk flags, no contradiction | BEST_PLAY |
| B | ≥ 8 pts | 0 FAILs — or Grade A capped by a WARN, risk flag, or ⚡ contradiction | GOOD_ADD |
| C | ≥ 4 pts | Including B capped by ⚡ contradiction, or Books Agree FAIL | PASS |
| D | ≥ 2 pts | Including Model Edge hard-FAIL override | PASS |
| F | < 2 pts | Negative or near-zero edge across checks | HARD_FADE |
Hard overrides: a Model Edge FAIL caps the grade at D regardless of other checks. A Books Agree FAIL caps at C (or D if model edge is also weak). C and D both map to PASS in v2_rec — Grade is strictly more informative for performance analysis.
| Check | Name | What it evaluates |
|---|---|---|
| 1 | Baby Line | Is the line large enough to bet? Very low lines (e.g., HR at 0.5) fail — the juice exceeds any realistic edge. |
| 2 | Model Edge | Does our model project positive expected value vs the posted line? Primary scoring signal. FAIL hard-caps grade at D. |
| 3 | Books Agree | Do ≥ 3 non-DK consensus books lean our direction? Requires ≥ 2 books to be actionable; ≥ 3 for A/B eligibility. FAIL caps grade at C/D. |
| 4 | Matchup | Context factors: pitcher handedness vs opposing lineup wRC+, park factors, platoon splits, head-to-head history. |
| 5 | Role / Injury | Is the pitcher confirmed as the starter? Are there injury designations or lineup changes that undermine the bet premise? |
| 6 | Game Script | Total-line alignment, weather, bullpen depth, and any flags that could affect scoring pace or game environment. |
Each check returns PASS (+2 pts), WARN (0–+1 pts, may cap grade), FAIL (−2 pts), or N/A (0 pts, not applicable for this bet type). A ⭐ Top Pick badge requires Grade A + 100% consensus across ≥ 3 books + raw model edge ≥ 1.5 units above the line. A ⚡ contradiction flag is set when NRFI + Over (or YRFI + Under) are both Grade A/B in the same game — a logical conflict. Contradicted plays are demoted one grade tier.
| Sizing | Units Risked | Included in "Sized Only"? |
|---|---|---|
| FULL | 1.00 | Yes |
| HALF | 0.50 | Yes |
| QRTR | 0.25 | Yes |
| (blank) | 1.00 (implicit) | No — unsized |
Props are always unsized and will not appear in sections A–F when --sized-only is active. Section H always shows full prop data regardless of the --sized-only flag.
| Band | American Odds Range |
|---|---|
| ≤ −150 | Heavy favorites — high implied probability, low payout |
| −149 to −125 | Moderate favorites |
| −124 to −105 | Slight favorites |
| −104 to +104 | Near pick-em |
| +105 to +124 | Slight underdogs |
| +125 to +149 | Moderate underdogs |
| ≥ +150 | Heavy underdogs — low implied probability, high payout |
| Section | What it answers |
|---|---|
| A — Headline Summary | Overall model performance: all tracked bets vs. sized-only bets side by side. |
| B — Bet Type | Performance split by bet type (NRFI, ML, Run Line, K prop, etc.), both all tracked and sized only. |
| C — Bet Type × Grade | Within each bet type, how each grade tier performs. Reveals whether A plays are actually better than B plays. |
| D — Odds Band Summary | Performance across price buckets. Reveals if edge is concentrated at certain prices. |
| E — Grade × Odds Band | Do A plays outperform at all prices, or only in a specific range? |
| F — Bet Type × Odds Band | Are certain markets only working at certain prices? |
| H1 — Game Bets vs Props | Side-by-side headline for game bets vs all props combined. Always shows full data — unaffected by --sized-only. |
| H2 — Prop Type Breakdown | Per-prop-type performance (K Props, H+R+RBI, Pitcher Outs, etc.) across all settled bets. |
| H3 — Prop Type × Grade | Within each prop type, how grade tiers compare. Use to validate that A props genuinely outperform B/C props. |