Dashboard
Latest report + tracker overview
Daily Bet Research Report β Wednesday, September 23, 2026
Start: 11:13 ET | End: 11:18 ET
Bankroll: $60.23 | Stake (12.5%, one play): $7.53 Record: 3-1-0 (Main bets, main leg, since 9/14 reset) | Hit rate: 75.0% Slate: 16 games Β· 9 analysed Β· 23 sources Β· Playbooks: MLB v1 (2026-09-16) Β· Verified at 11:13 ET
MLB only. NFL/NHL/NBA have no bookable games today; only the MLB playbook was read.
Section 2: Game Analysis
| Sport | Game | Time (ET) | DK Line | Note | Play? |
|---|---|---|---|---|---|
| MLB | WSH @ DET | 1:10 PM | DET -180 (1.55) / O-U 8.0 | WSH starts Richard Lovelady (career 154 G, 5 GS) a day after their pen threw 108 pitches across three arms, incl. J. Kent 72. | #1 |
| MLB | MIA @ CHC | 7:40 PM | CHC -175 (1.57) / O-U 7.0 | Gausman ERA 4.55 / xERA 4.01 (+0.542, unlucky) against Gusto 4.14 / 4.96 (β0.823, lucky) β both gaps point the same way. | #2 |
| MLB | MIN @ SF | 3:45 PM | MIN -149 (1.67) / O-U 7.5 | Prielipp ERA 4.94 / xERA 4.01 (+0.926) vs Cesar Perdomo, 3 career MLB starts and absent from the Savant qualified board. | #3 |
| MLB | CWS @ KC | 7:40 PM | CHW -118 (1.84) / O-U 8.5 | KC burned Gonsolin for 63 pitches in long relief in last night's 14-11 loss; CWS answered with four relievers for ~80. | #4 |
| MLB | TB @ NYY | 7:05 PM | NYY -156 (1.64) / O-U 7.0 | Yesterday's doubleheader did not tax either pen β NYY used two arms (RodΓ³n 96, Bednar 11) in G2 β so the fatigue angle isn't there. | No β line moved |
| MLB | CLE @ BOS | 7:10 PM | BOS -132 (1.75) / O-U 7.0 | Both starters are running lucky β Sonny Gray 2.82 / 3.84 (β1.024), Foster Griffin 3.67 / 4.36 (β0.688) β so the fade points both ways. | No β offsetting fades |
| MLB | STL @ PIT | 6:40 PM | PIT -121 (1.82) / O-U 7.5 | Liberatore 5.36 / 5.03 (+0.334) vs Bachar 3.56 / 3.52 β neither gap clears the 1.00 threshold, and the line hasn't moved a cent. | No β no signal |
| MLB | MIL @ PHI | 6:40 PM | MIL -145 (1.68) / O-U 7.5 | Logan Henderson (2.51 / 2.75) is the best starter on the board but MIL is priced for it, and the line already ticked β143 β β145. | No β fully priced |
| MLB | CIN @ ATL | 7:15 PM | ATL -258 (1.38) / O-U 7.5 | Sale 2.18 / 3.06 (β0.882) says regression is coming, but both sides sit outside the 1.50β2.10 band. | No β out of band |
| MLB | ARI @ COL | 8:40 PM | β | Coors Field. | No β Hard Rule H1 |
| MLB | TOR @ BAL (DH) | 1:35 / 6:35 PM | β | DraftKings feed returns count: 0 on both legs of the makeup doubleheader β no price to work from. |
No β unpriced |
Unanalysed: 7 of 16. ARI @ COL is a standing no-play (H1). Both legs of TOR @ BAL carry no DraftKings price on the ESPN feed. NYM @ TEX, LAA @ ATH, SD @ LAD and HOU @ SEA went unanalysed because the ESPN scoreboard payload only mapped eight event IDs to matchups and I stopped probing IDs once the eight-game floor was cleared with time in hand β I'd rather report that plainly than pad the count with games I priced by guesswork.
Section 3: Today's Plays
| # | Play | Sport | Market | Odds | Confidence | Calibrated | Edge % |
|---|---|---|---|---|---|---|---|
| 1 | Detroit Tigers ML (vs WSH) | MLB | Moneyline | 1.55 | 67% | 64% | β0.5% |
| 2 | Chicago Cubs ML (vs MIA) | MLB | Moneyline | 1.57 | 66% | 63% | β0.7% |
| 3 | Minnesota Twins ML (@ SF) | MLB | Moneyline | 1.67 | 61% | 58% | β1.9% |
| 4 | CWS @ KC Over 8.5 | MLB | Over/Under | 1.91 | 57% | 53% | +0.6% |
Negative edge on #1, #2 and #3. All three are moneylines inside a tight, efficiently-priced band; the calibration haircut eats the margin. Only #4 shows positive edge, and it is the lowest-confidence play on the card. That tension is the honest state of this slate.
Section 4: Reasoning
#1 β Detroit Tigers ML, 1.55. This is a Β§3 bullpen-state play, the playbook's "most under-priced factor available" [MODERATE]. Washington's listed starter is Richard Lovelady, a career reliever β 154 appearances against 5 career starts, 5.01 ERA β so this is a bullpen game, and it comes the day after their pen threw 108 pitches across three arms in Detroit (J. Kent 72 pitches / 19 batters faced, Sinclair 14, Tolman 22, per the 9/22 boxscore). Detroit's own pen barely worked: Kinley 8, Hurter 19, Brieske 10, 37 pitches total behind D. Anderson's 71. Framber Valdez (ERA 4.05, xERA 4.42, diff β0.365) is not sharp, but he only has to out-pitch a patchwork. The line has not moved a cent from β180, which means the market has not repriced Washington's staff state β exactly the slow-absorbing information Β§3 describes. Risk: Washington won 3-1 last night behind the same kind of staff and their opener plan can work for five innings; at 1.55 the price gives no cushion if it does.
#2 β Chicago Cubs ML, 1.57. A Β§2 ERAβxERA play, tagged [MODERATE] by the playbook's own honest limitation. Gausman is the playbook's worked example and the 2026 numbers still fit: ERA 4.55 against xERA 4.01, diff +0.542 β he has been unlucky and the results overstate the damage. Miami's Ryan Gusto is the mirror: ERA 4.14, xERA 4.96, diff β0.823 β better on paper than in substance. Neither gap clears the 1.00 flag on its own, which is why the playbook forbids carrying a play on the gap alone; the support comes from Β§4 wind. MET Norway has Wrigley at 6.5 m/s from 42.8Β° at 23:00Z and 6.8 m/s from 51.5Β° at 00:00Z β call it 15 mph from ~46Β°, NNE off the lake, blowing IN, the 7.72-run version of the park (7.12 at β₯10 mph). Wind in suppresses the contact-quality gap Gusto has been surviving on. The line has not moved from β175. Risk: Miami won 8-2 at Wrigley last night, and the Cubs' own pen absorbed that loss's innings. No total here β with the wind read in hand H2 is satisfied, but 7.12 expected against a posted 7.0 is not an edge.
#3 β Minnesota Twins ML, 1.67. Built on Β§2 plus H4's logic rather than against it. Connor Prielipp carries ERA 4.94 against xERA 4.01, diff +0.926 β just under the flag, pointing to positive regression. San Francisco counters with Cesar Perdomo: 4 career games, 3 career starts, 19.1 career innings, and absent from the Savant qualified-pitcher board, so there is no xERA for him at all. H4 bars a play on a starter with fewer than 3 starts; Perdomo has exactly 3, and in any case the play is against his team and rests on that inexperience β the explicit carve-out. Minnesota also took the series opener 3-2 on the road. Risk: rookie variance cuts both ways by definition, Oracle Park suppresses the Twins' offence as much as the Giants', and β149 is a real price for two 70-win clubs.
#4 β CWS @ KC Over 8.5, 1.91. Β§3 again, on the market where the playbook says a tired pen "pays most reliably." Last night's game at Kauffman finished 14-11 and both bullpens are shorter for it: Kansas City spent Gonsolin 63 pitches / 15 batters faced in long relief plus Hoffman 17 and Lange 10 behind Lynch IV's 78; Chicago used four relievers β Schultz 23, BrazobΓ‘n 14, Richards 23, Castillo 20 β behind Kay's 65. Today's starters do nothing to fix it: Seth Lugo sits at ERA 5.06 / xERA 5.09 (diff β0.031, so no hidden quality), and Chicago's Bryan Hudson is a 65.1-inning reliever, i.e. another bullpen game. Β§4 order of operations: Kauffman is a neutral-to-large park, and MET Norway has today's wind at ~3.6 m/s from 84Β° at first pitch β 8 mph, light, no suppression (speed only; the playbook only certifies an out/in bearing for Wrigley). Total moved 8.5 β 8.5 with the over drifting β107 β β109, a shade toward the over. Risk: two lineups that just combined for 25 runs are the classic candidate for a 3-2 hangover game, and Hudson's own ERA (3.03) is better than his role implies.
Sources
- https://statsapi.mlb.com/api/v1/schedule?sportId=1&date=2026-09-23&hydrate=probablePitcher
- https://statsapi.mlb.com/api/v1/schedule?sportId=1&startDate=2026-09-22&endDate=2026-09-22&fields=... (9/22 finals)
- https://statsapi.mlb.com/api/v1/people?personIds=702885,663992,687570,669199,701656&hydrate=stats(group=[pitching],type=[career])
- https://statsapi.mlb.com/api/v1/game/824061/boxscore (CWS @ KC 9/22 β full, then
?fields=info,label,value) - https://statsapi.mlb.com/api/v1/game/824222/boxscore (WSH @ DET 9/22 β full, then
?fields=info,label,value) - https://statsapi.mlb.com/api/v1/game/823543/boxscore?fields=info,label,value (TB @ NYY DH G2)
- https://baseballsavant.mlb.com/leaderboard/expected_statistics?type=pitcher&year=2026&min=q&csv=true
- https://sports.core.api.espn.com/v2/sports/baseball/leagues/mlb/events?dates=20260923&limit=100
- https://site.api.espn.com/apis/site/v2/sports/baseball/mlb/scoreboard?dates=20260923
- DraftKings odds, one per game:
https://sports.core.api.espn.com/v2/sports/baseball/leagues/mlb/events/{id}/competitions/{id}/oddsfor 401817045, 401817046, 401817047, 401817048, 401817049, 401817050, 401817051, 401817052, 401817053, 401817058 - https://sports.core.api.espn.com/v2/sports/baseball/leagues/mlb/events/401817051/competitions/401817051/probables
- https://api.met.no/weatherapi/locationforecast/2.0/compact?lat=41.948&lon=-87.656 (Wrigley)
- https://api.met.no/weatherapi/locationforecast/2.0/compact?lat=39.05&lon=-94.48&altitude=230 (Kauffman)
Research limitations
Counts: 9 of 16 games analysed Β· 23 distinct sources fetched Β· 1 analysed game missing a Tier-1 number.
The one gap: Cesar Perdomo (SF) has no xERA β he is not on the Savant qualified board, which the playbook warns happens for fringe starters. I did not substitute FIP. His career line (4 G, 3 GS, 19.1 IP, 3.72) came from statsapi instead, and the play is built on the inexperience rather than on a metric I don't have.
β H3 is only partially satisfied, and that applies to every play on this card. The rule wants both starters confirmed on two independent sources. I have MLB's own statsapi probablePitcher (the Step 1 ground truth) and an MLBAM-player-ID cross-match into Baseball Savant, which confirms identity but is not an independent board. A second board could not be obtained: ESPN's /probables sub-resource returned an empty body, and the ESPN scoreboard payload carries no pitcher names at all (grepped for Gausman, Valdez, Lovelady, probables β no matches). Treat all four plays as conditional on no late scratch; on 9/15 a board serving the previous day produced five phantom pitchers, and a single-source confirmation is exactly the exposure that rule exists to close.
Other gaps:
- Seven games unanalysed. The ESPN scoreboard response (88k chars, 5 lines) only yielded eight event-ID-to-matchup mappings under
Grep -o, which appears to be a match cap on a single very long line rather than a truncation of the file. I recovered two more IDs (401817052 CWS@KC, 401817053 MIA@CHC) by fetching their odds and identifying the teams from the ESPN team$refnumbers. That method works and would have mapped the rest; I stopped after clearing the floor. Worth adding to the playbook: ESPN team IDs are stable and the odds payload alone identifies the game β 2 BOS, 4 CHW, 5 CLE, 6 DET, 7 KC, 8 MIL, 9 MIN, 10 NYY, 15 ATL, 16 CHC, 17 CIN, 20 WSH, 22 PHI, 23 PIT, 24 STL, 26 SF, 28 MIA, 30 TB, all verified against today's matchups. - TOR @ BAL carries no DraftKings price on either leg of the makeup doubleheader (
count: 0). Not a fetch failure β the feed genuinely has nothing. - Umpire assignments: not obtained. Still on the playbook's "not yet verified" list; I did not spend the window on it. No play here rests on a total tight enough for a 0.3β0.5-run umpire effect to be decisive.
- Per-game bullpen usage took three attempts. The full boxscore (76k chars, 5 long lines) mixes season and per-game stats and
Grep -ocapped out before reaching the per-game block.?fields=info,label,valuereturns a ~1k-char payload with Pitches-strikes and Batters faced per pitcher, plus observed weather and umpires β this is the clean way to get bullpen state and should go in Β§9 as verified. - Statcast park factors: not fetched. Still unverified in the playbook; the two totals I looked at were reasoned from wind and pen state, not park multipliers.
- No sport outside MLB was in season today, so the NHL and NBA stubs were not used.
- Hard cutoff not reached.