165 picks across 164 slates. Model-driven edge from scheme detection, lineup synergy, and DSI spread projections.
UNIT KEY: 8-10 CONF = 50 $PP · 5-7 CONF = 30 $PP · 1-10 SCALE — 5+ MINIMUM
▎ GAME LINES — 9 SPREADS
CLE @ ATL — CLE +8.0
FINAL: CLE 102 — ATL 124 | CLE +8.0 L (-50 $PP)
SIM edge: +6.0 pts vs book. SIM spread: -2.0, Book: -8.0.
MIA @ WAS — WAS +18.5
FINAL: MIA 140 — WAS 117 | WAS +18.5 L (-50 $PP)
SIM edge: -5.0 pts vs book. SIM spread: +13.5, Book: +18.5.
DET @ CHA — DET +4.0
FINAL: DET 118 — CHA 100 | DET +4.0 W (+45 $PP)
SIM edge: +7.5 pts vs book. SIM spread: +3.5, Book: -4.0.
PHI @ IND — IND +15.0
PENDING
SIM edge: -13.5 pts vs book. SIM spread: +1.5, Book: +15.0.
TOR @ NYK — TOR +6.5
FINAL: TOR 95 — NYK 112 | TOR +6.5 L (-30 $PP)
SIM edge: +3.5 pts vs book. SIM spread: -3.0, Book: -6.5.
ORL @ CHI — CHI +14.5
FINAL: ORL 127 — CHI 103 | CHI +14.5 L (-50 $PP)
SIM edge: -7.5 pts vs book. SIM spread: +7.0, Book: +14.5.
BKN @ MIL — BKN +9.5
FINAL: BKN 108 — MIL 125 | BKN +9.5 L (-50 $PP)
SIM edge: +5.5 pts vs book. SIM spread: -4.0, Book: -9.5.
MIN @ HOU — MIN +10.5
FINAL: MIN 136 — HOU 132 | MIN +10.5 W (+45 $PP)
SIM edge: +4.5 pts vs book. SIM spread: -6.0, Book: -10.5.
MEM @ UTA — MEM +4.0
FINAL: MEM 101 — UTA 147 | MEM +4.0 L (-30 $PP)
SIM edge: +4.0 pts vs book. SIM spread: +0.0, Book: -4.0.
NOP @ BOS — BOS -16.5
▎ GAME LINES — 3 SPREADS
BOS @ NYK — BOS +4.5
FINAL: BOS 106 — NYK 112 | BOS +4.5 L (-50 $PP)
SIM edge: +6.5 pts vs book. SIM spread: +2.0, Book: -4.5.
PHI @ HOU — HOU -6.0
FINAL: PHI 102 — HOU 113 | HOU -3.5 W (+27 $PP)
SIM edge: -4.0 pts vs book. SIM spread: -7.5, Book: -3.5.
LAL @ GSW — LAL +4.5
FINAL: NOP 118 — BOS 144 | BOS -17.0 W (+27 $PP)
SIM edge: +4.0 pts vs book. SIM spread: -0.5, Book: -4.5.
▎ GAME LINES — 4 SPREADS
MIL @ DET — MIL +18.5
FINAL: MIL 111 — DET 137 | MIL +18.5 L (-30 $PP)
SIM edge: +3.5 pts vs book. SIM spread: -15.0, Book: -18.5.
MIN @ ORL — MIN +6.0
FINAL: MIN 120 — ORL 132 | MIN +6.0 L (-50 $PP)
SIM edge: +6.0 pts vs book. SIM spread: +0.0, Book: -6.0.
POR @ SAS — SAS -3.5
FINAL: POR 101 — SAS 112 | SAS -3.5 W (+45 $PP)
SIM edge: -6.5 pts vs book. SIM spread: -10.0, Book: -3.5.
OKC @ LAC — OKC -7.0
FINAL: OKC 128 — LAC 110 | OKC -7.0 W (+45 $PP)
SIM edge: +5.0 pts vs book. SIM spread: +12.0, Book: +7.0.
▎ GAME LINES — 6 SPREADS
MIN @ IND — IND +12.5
FINAL: MIN 124 — IND 104 | IND +12.5 L (-50 $PP)
SIM edge: -4.5 pts vs book. SIM spread: +8.0, Book: +12.5.
CHI @ WAS — WAS +6.0
FINAL: CHI 129 — WAS 98 | WAS +6.0 L (-50 $PP)
SIM edge: -4.5 pts vs book. SIM spread: +1.5, Book: +6.0.
SAC @ GSW — SAC +15.5
FINAL: SAC 105 — GSW 110 | SAC +15.5 W (+45 $PP)
SIM edge: +6.5 pts vs book. SIM spread: -9.0, Book: -15.5.
DAL @ LAC — DAL +11.5
FINAL: DAL 103 — LAC 116 | DAL +11.5 L (-50 $PP)
SIM edge: +4.5 pts vs book. SIM spread: -7.0, Book: -11.5.
OKC @ LAL — LAL +16.5
PENDING
SIM edge: -3.5 pts vs book. SIM spread: +13.0, Book: +16.5.
HOU @ PHX — HOU +0.5
FINAL: HOU 119 — PHX 105 | HOU +0.5 W (+27 $PP)
SIM edge: +4.0 pts vs book. SIM spread: +3.5, Book: -0.5.
▎ GAME LINES — 3 SPREADS
NYK @ ATL — NYK +1.5
FINAL: NYK 108 — ATL 105 | NYK +1.5 W (+27 $PP)
SIM edge: +4.0 pts vs book. SIM spread: +2.5, Book: -1.5.
CLE @ MEM — MEM +13.5
FINAL: CLE 142 — MEM 126 | MEM +13.5 L (-30 $PP)
SIM edge: -4.0 pts vs book. SIM spread: +9.5, Book: +13.5.
POR @ DEN — POR +8.5
PENDING
SIM edge: +4.0 pts vs book. SIM spread: -4.5, Book: -8.5.
DET @ ORL — DET -1.5
▎ GAME LINES — 3 SPREADS
IND @ CLE — IND +16.5
FINAL: IND 108 — CLE 117 | IND +16.5 W (+45 $PP)
SIM edge: +9.0 pts vs book. SIM spread: -7.5, Book: -16.5.
UTA @ OKC — OKC -24.0
FINAL: UTA 111 — OKC 146 | OKC -22.5 W (+45 $PP)
SIM edge: -6.5 pts vs book. SIM spread: -29.0, Book: -22.5.
HOU @ GSW — HOU -3.5
FINAL: HOU 117 — GSW 116 | HOU -4.0 L (-50 $PP)
SIM edge: +6.5 pts vs book. SIM spread: +10.5, Book: +4.0.
LAL @ DAL — LAL -1.5
LAC @ SAC — SAC +13.0
▎ GAME LINES — 1 SPREAD
WAS @ MIA — WAS +17.0
FINAL: WAS 136 — MIA 152 | WAS +17.0 W (+27 $PP)
SIM edge: +4.0 pts vs book. SIM spread: -13.0, Book: -17.0.
▎ GAME LINES — 2 SPREADS
IND @ CHA — IND +15.5
FINAL: IND 108 — CHA 129 | IND +15.5 L (-30 $PP)
SIM edge: +3.5 pts vs book. SIM spread: -12.0, Book: -15.5.
UTA @ HOU — HOU -17.0
FINAL: LAL 128 — DAL 134 | LAL -1.5 L (-30 $PP)
SIM edge: -5.5 pts vs book. SIM spread: -22.5, Book: -17.0.
ATL @ BKN — BKN +17.0
MIN @ PHI — MIN +4.5
▎ GAME LINES — 2 SPREADS
CLE @ GSW — GSW +10.5
FINAL: CLE 118 — GSW 111 | GSW +10.5 W (+45 $PP)
SIM edge: -4.5 pts vs book. SIM spread: +6.0, Book: +10.5.
SAS @ LAC — SAS -4.0
FINAL: ATL 141 — BKN 107 | BKN +17.0 L (-30 $PP)
SIM edge: +4.5 pts vs book. SIM spread: +8.5, Book: +4.0.
PHX @ CHA — PHX +6.0
▎ GAME LINES — 3 SPREADS
MIL @ HOU — MIL +17.0
FINAL: MIL 113 — HOU 119 | MIL +17.0 W (+27 $PP)
SIM edge: +4.0 pts vs book. SIM spread: -13.0, Book: -17.0.
SAS @ GSW — SAS -13.0
FINAL: SAS 127 — GSW 113 | SAS -13.0 W (+45 $PP)
SIM edge: +5.5 pts vs book. SIM spread: +18.5, Book: +13.0.
SAC @ TOR — TOR -13.0
FINAL: SAC 123 — TOR 115 | TOR -13.0 L (-30 $PP)
SIM edge: -3.5 pts vs book. SIM spread: -16.5, Book: -13.0.
▎ GAME LINES — 4 SPREADS
CHI @ PHI — CHI +6.5
FINAL: CHI 137 — PHI 157 | CHI +6.5 L (-50 $PP)
SIM edge: +5.5 pts vs book. SIM spread: -1.0, Book: -6.5.
SAS @ MEM — SAS -16.5
FINAL: SAS 123 — MEM 98 | SAS -16.5 W (+45 $PP)
SIM edge: +4.5 pts vs book. SIM spread: +21.0, Book: +16.5.
DAL @ DEN — DAL +13.5
FINAL: DAL 135 — DEN 142 | DAL +13.5 W (+27 $PP)
SIM edge: +3.5 pts vs book. SIM spread: -10.0, Book: -13.5.
TOR @ LAC — TOR +4.0
FINAL: TOR 94 — LAC 119 | TOR +4.0 L (-50 $PP)
SIM edge: +5.5 pts vs book. SIM spread: +1.5, Book: -4.0.
BKN @ GSW — BKN +12.5
▎ GAME LINES — 1 SPREAD
DEN @ PHX — PHX +5.0
FINAL: DEN 125 — PHX 123 | PHX +5.0 W (+27 $PP)
SIM edge: -3.5 pts vs book. SIM spread: +1.5, Book: +5.0.
▎ GAME LINES — 4 SPREADS
LAL @ DET — DET +2.5
FINAL: LAL 110 — DET 113 | DET +2.5 W (+45 $PP)
SIM edge: -6.5 pts vs book. SIM spread: -4.0, Book: +2.5.
IND @ ORL — IND +13.0
FINAL: IND 128 — ORL 126 | IND +13.0 W (+27 $PP)
SIM edge: +4.0 pts vs book. SIM spread: -9.0, Book: -13.0.
BKN @ POR — BKN +14.5
FINAL: BKN 99 — POR 134 | BKN +14.5 L (-30 $PP)
SIM edge: +4.0 pts vs book. SIM spread: -10.5, Book: -14.5.
MIL @ LAC — MIL +13.5
FINAL: MIL 96 — LAC 129 | MIL +13.5 L (-50 $PP)
SIM edge: +6.5 pts vs book. SIM spread: -7.0, Book: -13.5.
▎ GAME LINES — 3 SPREADS
POR @ DEN — POR +9.0
FINAL: POR 112 — DEN 128 | POR +9.0 L (-30 $PP)
SIM edge: +3.5 pts vs book. SIM spread: -5.5, Book: -9.0.
BKN @ SAC — BKN +4.5
FINAL: BKN 122 — SAC 126 | BKN +4.5 W (+27 $PP)
SIM edge: +4.0 pts vs book. SIM spread: -0.5, Book: -4.5.
TOR @ PHX — TOR -3.0
FINAL: TOR 98 — PHX 120 | TOR -2.0 L (-30 $PP)
SIM edge: +3.5 pts vs book. SIM spread: +5.5, Book: +2.0.
▎ GAME LINES — 1 SPREAD
MIL @ PHX — MIL +11.5
FINAL: MIL 108 — PHX 105 | MIL +11.5 W (+27 $PP)
SIM edge: +4.0 pts vs book. SIM spread: -7.5, Book: -11.5.
▎ GAME LINES — 3 SPREADS
GSW @ DET — DET -5.0
FINAL: GSW 101 — DET 115 | DET -6.5 W (+45 $PP)
SIM edge: -5.5 pts vs book. SIM spread: -12.0, Book: -6.5.
ATL @ HOU — ATL +4.0
FINAL: ATL 95 — HOU 117 | ATL +4.0 L (-50 $PP)
SIM edge: +4.5 pts vs book. SIM spread: +0.5, Book: -4.0.
TOR @ DEN — TOR +7.0
FINAL: TOR 115 — DEN 121 | TOR +7.0 W (+45 $PP)
SIM edge: +7.0 pts vs book. SIM spread: +0.0, Book: -7.0.
▎ GAME LINES — 1 SPREAD
CLE @ CHI — CHI +13.0
FINAL: CLE 115 — CHI 110 | CHI +13.0 W (+45 $PP)
SIM edge: -5.5 pts vs book. SIM spread: +7.5, Book: +13.0.
DET @ WAS — DET -13.5
LAL @ MIA — LAL +6.0
▎ GAME LINES — 1 SPREAD
DEN @ MEM — MEM +13.0
FINAL: DEN 118 — MEM 125 | MEM +13.0 W (+27 $PP)
SIM edge: -4.0 pts vs book. SIM spread: +9.0, Book: +13.0.
▎ GAME LINES — 3 SPREADS
MIA @ CHA — MIA +3.5
FINAL: DET 130 — WAS 117 | DET -14.0 L (-30 $PP)
SIM edge: +4.0 pts vs book. SIM spread: +0.5, Book: -3.5.
CLE @ MIL — MIL +10.0
FINAL: CLE 123 — MIL 116 | MIL +10.0 W (+27 $PP)
SIM edge: -3.5 pts vs book. SIM spread: +6.5, Book: +10.0.
PHX @ MIN — PHX +4.0
FINAL: PHX 104 — MIN 116 | PHX +4.0 L (-30 $PP)
SIM edge: +3.5 pts vs book. SIM spread: -0.5, Book: -4.0.
▎ GAME LINES — 1 SPREAD
SAS @ LAC — LAC +9.5
FINAL: SAS 119 — LAC 115 | LAC +9.5 W (+27 $PP)
SIM edge: -3.5 pts vs book. SIM spread: +6.0, Book: +9.5.
▎ GAME LINES — 4 SPREADS
DAL @ CLE — DAL +16.5
FINAL: DAL 130 — CLE 120 | DAL +16.5 W (+45 $PP)
SIM edge: +6.0 pts vs book. SIM spread: -10.5, Book: -16.5.
IND @ MIL — IND +7.5
FINAL: IND 123 — MIL 134 | IND +7.5 L (-50 $PP)
SIM edge: +5.0 pts vs book. SIM spread: -2.5, Book: -7.5.
GSW @ NYK — NYK -14.5
FINAL: GSW 107 — NYK 110 | NYK -13.5 L (-30 $PP)
SIM edge: -3.5 pts vs book. SIM spread: -17.0, Book: -13.5.
UTA @ SAC — SAC -3.0
FINAL: UTA 111 — SAC 116 | SAC -1.5 W (+27 $PP)
SIM edge: -4.0 pts vs book. SIM spread: -5.5, Book: -1.5.
▎ GAME LINES — 2 SPREADS
BKN @ PHI — BKN +8.5
FINAL: BKN 97 — PHI 104 | BKN +8.5 W (+45 $PP)
SIM edge: +7.5 pts vs book. SIM spread: -1.0, Book: -8.5.
DEN @ LAL — LAL +2.5
FINAL: DEN 125 — LAL 127 | LAL +2.5 W (+45 $PP)
SIM edge: -5.0 pts vs book. SIM spread: -2.5, Book: +2.5.
▎ GAME LINES — 3 SPREADS
DEN @ SAS — SAS -3.0
FINAL: DEN 136 — SAS 131 | SAS -5.5 L (-50 $PP)
SIM edge: -3.5 pts vs book. SIM spread: -6.5, Book: -3.0.
BOS @ OKC — BOS +7.5
FINAL: BOS 102 — OKC 104 | BOS +6.5 W (+45 $PP)
SIM edge: +4.0 pts vs book. SIM spread: -3.5, Book: -7.5.
CHI @ LAL — CHI +11.5
FINAL: CHI 130 — LAL 142 | CHI +11.5 L (-30 $PP)
SIM edge: +3.5 pts vs book. SIM spread: -8.0, Book: -11.5.
CLE @ DAL — DAL +13.0
MEM @ DET — DET -16.0
NYK @ IND — NYK -13.5
CHI @ LAC — CHI +12.5
PHX @ TOR — PHX +4.5
UTA @ POR — UTA +15.5
▎ GAME LINES — 2 SPREADS + 1 ML
DAL @ MEM — MEM ML
FINAL: DAL 120 — MEM 112 | MEM ML L (-50 $PP)
SIM edge: -5.0 pts vs book. SIM spread: -0.5, Book: +4.5.
DEN @ SAS — SAS -3.0
FINAL: CLE 138 — DAL 105 | DAL +13.0 L (-30 $PP)
SIM edge: -4.5 pts vs book. SIM spread: -10.0, Book: -5.5.
BOS @ OKC — BOS +6.5
FINAL: MEM 110 — DET 126 | DET -15.5 W (+45 $PP)
SIM edge: +6.0 pts vs book. SIM spread: -0.5, Book: -6.5.
CHI @ LAL — CHI +11.5
▎ GAME LINES — 0 SPREADS + 2 ML
HOU @ DEN — HOU ML
FINAL: HOU 93 — DEN 129 | HOU ML L (-50 $PP)
SIM edge: +6.5 pts vs book. SIM spread: +1.0, Book: -5.5.
MIN @ LAC — MIN ML
FINAL: MIN 128 — LAC 153 | MIN ML L (-50 $PP)
SIM edge: +4.5 pts vs book. SIM spread: +2.5, Book: -2.0.
▎ GAME LINES — 1 SPREAD + 3 ML
DAL @ ATL — DAL +9.0
FINAL: DAL 112 — ATL 124 | DAL +9.0 L (-30 $PP)
SIM edge: +3.5 pts vs book. SIM spread: -5.5, Book: -9.0.
BOS @ SAS — BOS ML
FINAL: BOS 116 — SAS 125 | BOS ML L (-30 $PP)
SIM edge: +4.0 pts vs book. SIM spread: +1.0, Book: -3.0.
CHI @ GSW — CHI ML
FINAL: CHI 130 — GSW 124 | CHI ML W (+45 $PP)
SIM edge: +7.0 pts vs book. SIM spread: +0.5, Book: -6.5.
IND @ SAC — IND ML
FINAL: IND 109 — SAC 114 | IND ML L (-50 $PP)
SIM edge: +10.0 pts vs book. SIM spread: +6.0, Book: -4.0.
▎ GAME LINES — 1 SPREAD
NYK @ LAC — NYK -2.5
FINAL: NYK 118 — LAC 126 | NYK -2.5 L (-50 $PP)
SIM edge: +4.5 pts vs book. SIM spread: +7.0, Book: +2.5.
▎ GAME LINES — 2 SPREADS
IND @ POR — IND +8.5
FINAL: IND 111 — POR 131 | IND +8.5 L (-50 $PP)
SIM edge: +4.5 pts vs book. SIM spread: -4.0, Book: -8.5.
CHI @ SAC — CHI -2.5
FINAL: CHI 110 — SAC 126 | CHI -2.5 L (-50 $PP)
SIM edge: +5.0 pts vs book. SIM spread: +7.5, Book: +2.5.
▎ GAME LINES — 2 SPREADS
LAC @ MEM — MEM +6.5
FINAL: LAC 120 — MEM 123 | MEM +6.5 W (+45 $PP)
SIM edge: +4.5 pts vs book. SIM spread: +2.0, Book: +6.5.
GSW @ OKC — GSW +15.0
FINAL: GSW 97 — OKC 104 | GSW +15.0 W (+45 $PP)
SIM edge: +10.5 pts vs book. SIM spread: -4.5, Book: -15.0.
▎ GAME LINES — 3 SPREADS
MIA @ CHA — MIA +8.5
FINAL: MIA 128 — CHA 120 | MIA +8.5 W (+45 $PP)
SIM edge: +8.0 pts vs book. SIM spread: -0.5, Book: -8.5.
NOP @ PHX — NOP +7.5
FINAL: NOP 116 — PHX 118 | NOP +7.5 W (+45 $PP)
SIM edge: +7.5 pts vs book. SIM spread: +0.0, Book: -7.5.
LAC @ SAS — SAS -8.0
FINAL: LAC 112 — SAS 116 | SAS -8.0 L (-30 $PP)
SIM edge: -6.0 pts vs book. SIM spread: -14.0, Book: -8.0.
▎ GAME LINES — 3 SPREADS + 2 ML
GSW @ HOU — HOU -8.5
FINAL: GSW 115 — HOU 113 | HOU -8.5 L (-50 $PP)
SIM edge: -7.0 pts vs book. SIM spread: -15.5, Book: -8.5.
DET @ SAS — DET ML
FINAL: DET 106 — SAS 121 | DET ML L (-50 $PP)
SIM edge: +7.0 pts vs book. SIM spread: +3.5, Book: -3.5.
CHI @ PHX — CHI +10.5
FINAL: CHI 105 — PHX 103 | CHI +10.5 W (+27 $PP)
SIM edge: +6.0 pts vs book. SIM spread: -4.5, Book: -10.5.
LAL @ DEN — LAL ML
FINAL: LAL 113 — DEN 120 | LAL ML L (-30 $PP)
SIM edge: +6.5 pts vs book. SIM spread: +1.5, Book: -5.0.
NOP @ SAC — NOP -6.0
FINAL: NOP 133 — SAC 123 | NOP -6.0 W (+27 $PP)
SIM edge: +6.0 pts vs book. SIM spread: +12.0, Book: +6.0.
▎ GAME LINES — 3 SPREADS + 1 ML
CHA @ BOS — CHA +7.0
FINAL: CHA 118 — BOS 89 | CHA +7.0 W (+45 $PP)
SIM edge: +7.0 pts vs book. SIM spread: +0.0, Book: -7.0.
UTA @ PHI — UTA +9.5
FINAL: UTA 102 — PHI 106 | UTA +9.5 W (+18 $PP)
SIM edge: +3.5 pts vs book. SIM spread: -6.0, Book: -9.5.
ATL @ MIL — ATL ML
FINAL: ATL 131 — MIL 113 | ATL ML W (+39 $PP)
MIL 26-31 in freefall. ATL road value at +130.
IND @ LAC — IND +12.0
FINAL: IND 107 — LAC 130 | IND +12.0 L (-50 $PP)
SIM edge: +8.0 pts vs book. SIM spread: -4.0, Book: -12.0.
▎ GAME LINES — 6 SPREADS
SAS @ PHI — SAS -7.5
FINAL: SAS 131 — PHI 91 | SAS -7.5 W (+45 $PP)
PHX @ SAC — PHX -9.5
FINAL: PHX 114 — SAC 103 | PHX -9.5 W (+27 $PP)
DET @ CLE — DET -2.5
FINAL: DET 109 — CLE 113 | DET -2.5 L (-50 $PP)
BKN @ MIA — BKN +12.5
FINAL: BKN 98 — MIA 124 | BKN +12.5 L (-50 $PP)
WAS @ ORL — WAS +16.0
FINAL: WAS 109 — ORL 126 | WAS +16.0 L (-50 $PP)
OKC @ CHI — CHI +9.5
FINAL: OKC 116 — CHI 108 | CHI +9.5 W (+45 $PP)
▎ GAME LINES — 1 SPREAD
BOS @ MIL — BOS -7.0
FINAL: BOS 108 — MIL 81 | BOS -7.0 W (+27 $PP)
MIN @ DEN — MIN ML
IMPLIED: MIN 113 — DEN 116
FINAL: MIN 117 — DEN 108 | MIN ML W (+65 $PP)
Minnesota (DS #4, 35-22) at Denver (DS #7, 35-22). Book had DEN -3.0 at home but model projected MIN -1.5 — dog with an edge. MIN's Edwards + Randle 2-man NRtg +14.2 over 28 games, elite floor. Taking the ML for plus money (+130). POST: MIN won outright by 9. Edwards 34 pts. Denver's altitude advantage doesn't matter when the talent gap is this real.
MIL @ CHI — CHI +3.5
IMPLIED: MIL 112 — CHI 109
FINAL: MIL 97 — CHI 120 | CHI +3.5 W (+45 $PP)
Milwaukee (DS #16, 26-31) at Chicago (DS #17, 25-31). MIL road favorites but on a B2B. Model projected CHI +0.5 at home — 4.0pt edge on the +3.5 line. CHI home splits trending up, MIL fatigue factor unpriced by the book. POST: CHI won by 23. Absolute blowout. MIL completely gassed from the B2B. Bulls played with energy CHI hasn't shown all season.
CLE @ BKN — BKN +12
IMPLIED: CLE 117 — BKN 105
FINAL: CLE 106 — BKN 102 | BKN +12 W (+27 $PP)
Cleveland (DS #3, 40-16) at Brooklyn (DS #29, 16-40). CLE massive favorites but 12 points is too many for any NBA game. Model projected CLE -6.5 — 5.5pt edge on the +12 line. BKN at home with nothing to lose. POST: CLE won by just 4. BKN fought hard at home. The 12-point line was absurd — model saw the value.
OKC @ DAL — DAL +15.5
IMPLIED: OKC 122 — DAL 107
FINAL: OKC 100 — DAL 87 | DAL +15.5 W (+27 $PP)
Oklahoma City (DS #1, 43-12) at Dallas (DS #21, 24-32). OKC dominant but 15.5 is a massive number. Model projected OKC -10.0 — 5.5pt edge on the spread. DAL at home, large spreads compress in the NBA. Value on the dog. POST: OKC won by 13 but couldn't cover the massive 15.5. Model nailed the spread compression.
NOP @ LAC — NOP +8.5
IMPLIED: NOP 106 — LAC 114
FINAL: NOP 117 — LAC 137 | NOP +8.5 L (-30 $PP)
FINAL: LAC 137 — NOP 117 | NOP +8.5 L (-30 $PP)
New Orleans (DS #13, 26-31) at LA Clippers (DS #10, 31-26). LAC home favorites but model projected LAC -4.0 — 4.5pt edge on the +8.5 line. NOP getting big points on the road. Large underdogs tend to cover in this range. POST: LAC blew it open — 137 points. Zion sat with ankle injury, NOP had no shot. 20-point loss obliterated the 8.5.
LAL @ GSW — LAL -4
IMPLIED: LAL 118 — GSW 114
FINAL: LAL 129 — GSW 101 | LAL -4 W (+45 $PP)
Los Angeles Lakers (DS #15, 30-27) at Golden State (DS #18, 26-31). LAL road favorites for good reason — DSI 58.2 vs GSW 49.8. GSW still missing key rotation pieces. Model projected LAL -8.0, book had LAL -4.0 — 4.0pt edge. POST: LAL won by 28. Complete demolition. LeBron + AD combined for 58 pts. GSW had no answer.
HOU @ MIA — MIA +2
IMPLIED: HOU 113 — MIA 111
FINAL: HOU 105 — MIA 115 | MIA +2 W (+45 $PP)
Houston (DS #4, 34-21) at Miami (DS #11, 29-27). HOU road favorites but MIA at home with HCA +3 narrows the gap. Model projected MIA +0.5 — nearly a pick-em, creating 2.5pt edge on the +2 line. POST: MIA won outright by 10. Heat culture + home court. Model saw the HCA value that the book didn't.
NOP @ UTA — NOP -6
IMPLIED: NOP 116 — UTA 110
FINAL: NOP 115 — UTA 105 | NOP -6 W (+27 $PP)
New Orleans (DS #13, 26-31) at Utah (DS #28, 16-40). UTA in full tank mode — DSI 40.5 vs NOP 48.9. NRtg gap: NOP -2.1 vs UTA -9.3. Model projected NOP -9.5, book had NOP -6.0 — 3.5pt edge. POST: NOP won by 10. Controlled wire to wire. Model continues to nail the tanking matchups.
NYK @ MIL — NYK -8.5
IMPLIED: NYK 118 — MIL 109
FINAL: NYK 127 — MIL 98 | NYK -8.5 W (+45 $PP)
New York (DS #2, 38-18) at Milwaukee (DS #16, 26-30). NYK rolling — DSI 64.8 vs MIL 52.3. MIL without full rotation, Giannis load-managed. Model projected NYK -12.0, book had NYK -8.5 — 3.5pt edge. POST: NYK won by 29. Absolute destruction. Model conservative on this one — actual margin doubled the projection.
MEM @ DAL — MEM +5
IMPLIED: MEM 110 — DAL 115
FINAL: MEM 124 — DAL 105 | MEM +5 W (+27 $PP)
Memphis (DS #8, 33-23) at Dallas (DS #21, 24-31). DAL favored at home by 5 but MEM lineup combos dominate — Ja + Jackson Jr. 2-man NRtg +11.3 over 30 games. Model projected MEM -2.0 creating a 7.0pt edge. POST: MEM won outright by 19. Ja had 32/8/11. Dallas couldn't stop the MEM transition attack.
OKC @ LAL — LAL +3.5
IMPLIED: OKC 115 — LAL 112
FINAL: OKC 110 — LAL 113 | LAL +3.5 W (+45 $PP)
Oklahoma City (DS #1, 42-12) at Los Angeles Lakers (DS #15, 29-27). OKC elite but model sees LAL +0.5 at home after HCA adjustment — 4.0pt edge on the +3.5 line. LAL's home splits trending upward. DSI gap exists but HCA narrows it significantly. POST: LAL won outright. Home court advantage proved too much — model correctly identified the HCA discount the book was missing.
BOS @ DEN — BOS +4.5
IMPLIED: BOS 112 — DEN 116
FINAL: BOS 84 — DEN 103 | BOS +4.5 L (-50 $PP)
FINAL: BOS +4.5 L (-50 $PP)
Boston (DS #5, 39-17) at Denver (DS #7, 35-21). BOS on 2nd night of a B2B after dominating PHX. Model projected BOS -1.0 on talent gap despite being on the road — 5.5pt edge on the +4.5 line. POST: Denver too strong at home. BOS legs gave out on the back-to-back. Model needs a fatigue discount for B2B road games.
PHI @ IND — IND +9.5
IMPLIED: PHI 122 — IND 113
FINAL: PHI 135 — IND 114 | IND +9.5 L (-50 $PP)
Philadelphia (DS #14, 22-32) at Indiana (DS #12, 30-26). Model had IND at max confidence pre-SYN rebuild. DS gap marginally favored IND but Philly came out scorching — 135 points. POST: PHI shot 55% from the field. IND couldn't keep up. Model overweighted synergy signal on a night where raw talent dominated.
WAS @ ATL — WAS +12.5
IMPLIED: WAS 114 — ATL 124
FINAL: WAS 98 — ATL 119 | WAS +12.5 L (-50 $PP)
FINAL: ATL 119 — WAS 98 | WAS +12.5 L (-50 $PP)
Washington (DS #27, 14-40) at Atlanta (DS #20, 27-30). Model projected ATL -6.5 off rebuilt SYN v2 — saw 6.0pt edge on WAS. ATL with 5 OUT but still dominated. POST: ATL won by 21. WAS is just bad. The 12.5 line existed for a reason — model's SYN component compressed the spread too far toward neutral.
ORL @ LAL — ORL +5.5
IMPLIED: ORL 113 — LAL 118
FINAL: ORL 110 — LAL 109 | ORL +5.5 W (+45 $PP)
Orlando (DS #8, 31-26) at Los Angeles Lakers (DS #15, 29-27). Model projected LAL -0.0 — nearly a coinflip, creating a massive 5.5pt edge. DSI gap: ORL 55.6 vs LAL 55.2. NRtg favored ORL +1.5 vs LAL -1.3. POST: ORL won by 1. Closest game of the night — model nailed the pick-em projection. Rebalanced weights would've had this as the top pick.
BOS @ PHX — BOS -5.5
IMPLIED: BOS 106 — PHX 101
FINAL: BOS 97 — PHX 81 | BOS -5.5 W (+27 $PP)
Boston (DS #5, 39-17) at Phoenix (DS #10, 31-26). PHX missing 4 rotation players — depth decimated. BOS defense suffocating all night. POST: BOS won by 16. PHX held to 81 points. When the other team is missing 4 guys, trust the talent gap.
SAC @ MEM — MEM -3.0
IMPLIED: SAC 115 — MEM 118 · O/U 232.5
FINAL: SAC 123 — MEM 114 | MEM -3.0 L (-20 $PP)
Sacramento (DS #30, 12-44) at Memphis (DS #21, 19-32). SAC gutted at DSI 40.0 vs MEM 43.1. NRtg gap: SAC -8.5 vs MEM +1.1 — nearly 10 points. SIM projects MEM -6.5, book has MEM -3.0 — 3.5 point edge. Memphis at home with the floor advantage. POST: SAC snapped a 16-game losing streak behind Westbrook (25 pts) and Achiuwa (22/12). Model undervalued the desperation factor.
UTA @ HOU — HOU -13.0
IMPLIED: UTA 108 — HOU 121 · O/U 229.0
FINAL: UTA 105 — HOU 125 | HOU -13.0 W (+18 $PP)
Utah (DS #19, 18-38) at Houston (DS #4, 33-20). DSI gap massive: UTA 42.8 vs HOU 62.6 (+19.7). NRtg: UTA -6.7 vs HOU +6.9. SIM projects HOU -16.5, book has HOU -13.0 — 3.5 point edge. Houston dominant at home in every metric. POST: HOU won by 20 behind Jabari Smith Jr. (31/9/3). Model nailed the blowout — projected -16.5, actual -20.
DEN @ GSW — GSW ML
IMPLIED: DEN 117 — GSW 110
FINAL: DEN 117 — GSW 128 | GSW ML W (+45 $PP)
Denver (DSI 48.5, 3 OUT: Gordon, Watson, Bates) at Golden State (DSI 50.7, 3 OUT: Curry, Butler, S. Curry). Both rosters gutted by injuries. SIM projects DEN -1.0 but book has DEN -5.5 — 4.5 point edge. Denver's frontcourt holes without Gordon are massive. GSW's remaining core (Draymond, Wiggins, Kuminga) edges DEN's depleted squad on DSI.
BOS @ LAL — BOS -2.0
IMPLIED: BOS 116 — LAL 114
FINAL: BOS 111 — LAL 89 | BOS -2.0 W (+45 $PP)
Boston (DSI 56.6) at Los Angeles (DSI 63.4). Book has BOS -1.5 but SIM projects BOS -6.0 — 4.5 point edge. Boston's NRtg +2.5 vs LAL +7.9 favors LA at home, but the DSI gap says Boston's available talent is significantly deeper. Model thinks the book is way too generous to the Lakers here.
POR @ PHX — PHX ML
IMPLIED: POR 113 — PHX 110
FINAL: POR 92 — PHX 77 | PHX ML L (-50 $PP)
Portland (DSI 51.7) at Phoenix (DSI 54.3). Book has POR -3.5 but SIM projects PHX -1.5 — 5.0 point edge. Phoenix at home with NRtg -1.4 vs POR +4.6 should favor Portland, but the DSI model sees Phoenix's lineup quality and HCA flipping the spread. Largest edge on the slate.
ORL @ LAC — ORL +3.5
IMPLIED: ORL 106 — LAC 109
FINAL: ORL 111 — LAC 109 | ORL +3.5 W (+45 $PP)
Orlando (DSI 46.8, 3 OUT) at LA Clippers (DSI 53.6). Book has LAC -3.5 but SIM projects ORL -1.5 — 5.0 point edge. Despite Orlando's injury losses, the model sees the Clippers as overvalued. ORL's NRtg +2.7 vs LAC -1.3 supports the lean. Getting 3.5 points of cushion.
PHI @ NOP — NOP +4.0
IMPLIED: PHI 120 — NOP 116
FINAL: PHI 111 — NOP 126 | NOP +4.0 W (+36 $PP)
Philadelphia at New Orleans. DSI model: NOP 48.3 vs PHI 46.2. Both teams banged up with 1-2 players OUT each. NOP at home with +3 HCA narrows the gap significantly. Model projects NOP +0.5, book has PHI -4.0 — 3.5 point edge. Highest confidence lean on the slate.
SAC @ SAS — SAS -18.0
IMPLIED: SAC 106 — SAS 124
FINAL: SAC 122 — SAS 139 | SAS -18.0 L (-30 $PP)
Sacramento (3 players OUT, DSI floor 40.0) at San Antonio (DSI 65.0). SAC gutted by injuries — DSI at absolute minimum. NRtg +8.8 vs -8.5, massive gap amplified by the injury disparity. Model projects SAS -21.0, 2.5 point edge over the 18.5 line.
HOU @ NYK — HOU +3.5
IMPLIED: HOU 108 — NYK 112
FINAL: HOU 106 — NYK 108 | HOU +3.5 W (+27 $PP)
Houston (DSI 62.0) at New York (DSI 59.5). Houston's DSI edges NYK despite being on the road. HCA +3 narrows it but model projects NYK -1.0 — only a 1-point home edge vs the 3.5 line. 2.5 point edge on the spread.
DAL @ MIN — MIN -12.5
IMPLIED: DAL 112 — MIN 124
FINAL: DAL 111 — MIN 122 | MIN -12.5 L (-50 $PP)
Dallas (DS #21) at Minnesota (DS #4, 34-22). MIN's elite defensive scheme shuts down DAL's offensive sets. Edwards + Towns driving the DS gap — Minnesota's lineup combos are dominant at home. Max unit on spread.
UTA @ MEM — MEM -2.0
IMPLIED: UTA 118 — MEM 121
FINAL: UTA 114 — MEM 123 | MEM -3.5 W (+27 $PP)
Utah (DS #22, 19-32) at Memphis. MEM's lineup combos outperform Utah across the board. Memphis holds the DS edge. Spread at 7 confidence.
BKN @ CLE — CLE -16.0
IMPLIED: BKN 107 — CLE 123
FINAL: BKN 84 — CLE 112 | CLE -16.0 W (+45 $PP)
Brooklyn (DS #29, 15-38) at Cleveland (DS #3, 34-21). BKN Spot-Up Heavy w/ Drop-Coverage (Poor) vs CLE PnR-Heavy (Fast) w/ Drop-Coverage (Good). DS gap: CLE 372 vs BKN 256. Lineup data: CLE's Merrill/Tyson/Mitchell 3-man core is +29.2 NET RTG over 21 games — elite floor. Their Mobley/Allen/Mitchell 5-man is +25.6 NET RTG. Brooklyn has no trending combos that compete. Max unit on spread.
PHX @ SAS — SAS -8.0
IMPLIED: PHX 111 — SAS 119
FINAL: PHX 65 — SAS 91 | SAS -8.0 W (+27 $PP)
Phoenix (DS #19, 32-23) at San Antonio (DS #6, 37-16). SAS Trans-Defense (Elite) shuts down PHX's PnR-Heavy sets. Lineup data: Wembanyama's 2-man duos are +29.0 NET RTG over 32 games — the largest sample of any trending combo in the league. PHX has zero lineup combos tracking above +10. Team DS 354 vs 321. SAS defense is elite at home.
| Pick | Side | Implied | Conf | $PP | Result |
|---|---|---|---|---|---|
| APR 10 — FRIDAY | |||||
| CLE @ ATL | CLE +8.0 | — | 10 | 50 | L |
| MIA @ WAS | WAS +18.5 | — | 8 | 50 | L |
| DET @ CHA | DET +4.0 | — | 10 | 50 | W |
| PHI @ IND | IND -4.0(PROJ. SPREAD) | — | 10 | 50 | — |
| TOR @ NYK | TOR +6.5 | — | 6 | 30 | L |
| ORL @ CHI | CHI +14.5 | — | 10 | 50 | L |
| BKN @ MIL | BKN +9.5 | — | 9 | 50 | L |
| MIN @ HOU | MIN +10.5 | — | 8 | 50 | W |
| MEM @ UTA | MEM +4.0 | — | 7 | 30 | L |
| NOP @ BOS | BOS -16.5 | — | 7 | 30 | — |
| APR 9 — THURSDAY | |||||
| BOS @ NYK | BOS -16.5 | — | 10 | 50 | — |
| PHI @ HOU | HOU -10.5 | — | 7 | 30 | — |
| LAL @ GSW | LAL -4.5(PROJ. SPREAD) | — | 7 | 30 | W |
| APR 8 — WEDNESDAY | |||||
| MIL @ DET | MIL -1.5(PROJ. SPREAD) | — | 6 | 30 | L |
| MIN @ ORL | MIN +6.0 | — | 10 | 50 | L |
| POR @ SAS | SAS -18.5 | — | 10 | 50 | W |
| OKC @ LAC | OKC -19.5(PROJ. SPREAD) | — | 8 | 50 | W |
| APR 7 — TUESDAY | |||||
| MIN @ IND | IND -4.0(PROJ. SPREAD) | — | 8 | 50 | L |
| CHI @ WAS | WAS +6.0 | — | 8 | 50 | L |
| SAC @ GSW | SAC +15.5 | — | 10 | 50 | W |
| DAL @ LAC | DAL +11.5 | — | 8 | 50 | L |
| OKC @ LAL | LAL -4.5(PROJ. SPREAD) | — | 6 | 30 | L |
| HOU @ PHX | HOU -10.5 | — | 7 | 30 | W |
| APR 6 — MONDAY | |||||
| NYK @ ATL | NYK -6.5 | — | 7 | 30 | W |
| CLE @ MEM | MEM +13.5 | — | 7 | 30 | L |
| POR @ DEN | POR -1.5 | — | 7 | 30 | W |
| DET @ ORL | DET -20.5 | — | 10 | 50 | L |
| APR 5 — SUNDAY | |||||
| IND @ CLE | IND -4.0(PROJ. SPREAD) | — | 10 | 50 | W |
| UTA @ OKC | OKC -19.5(PROJ. SPREAD) | — | 10 | 50 | W |
| HOU @ GSW | HOU -10.5 | — | 10 | 50 | W |
| LAL @ DAL | LAL -4.5(PROJ. SPREAD) | — | 6 | 30 | L |
| LAC @ SAC | SAC +13.0 | — | 6 | 30 | L |
| APR 4 — SATURDAY | |||||
| WAS @ MIA | WAS +17.0 | — | 7 | 30 | W |
| APR 3 — FRIDAY | |||||
| IND @ CHA | IND -4.0(PROJ. SPREAD) | — | 6 | 30 | L |
| UTA @ HOU | HOU -10.5 | — | 9 | 50 | W |
| ATL @ BKN | BKN -3.0 | — | 6 | 30 | L |
| MIN @ PHI | MIN -12.5 | — | 6 | 30 | L |
| APR 2 — THURSDAY | |||||
| CLE @ GSW | GSW -10.5 | — | 8 | 50 | W |
| SAS @ LAC | SAS -18.5 | — | 8 | 50 | W |
| PHX @ CHA | PHX -2.5 | — | 6 | 30 | L |
| APR 1 — WEDNESDAY | |||||
| MIL @ HOU | MIL -1.5(PROJ. SPREAD) | — | 7 | 30 | W |
| SAS @ GSW | SAS -18.5 | — | 9 | 50 | W |
| SAC @ TOR | TOR -3.5 | — | 6 | 30 | L |
| MAR 26 — THURSDAY | |||||
| SAC @ ORL | SAC +15.5 | — | 7 | 30 | W |
| MAR 26 — THURSDAY | |||||
| SAC @ ORL | SAC +15.5 | — | 7 | 30 | W |
| MAR 25 — WEDNESDAY | |||||
| CHI @ PHI | CHI -6.0 | — | 9 | 50 | L |
| SAS @ MEM | SAS -18.5 | — | 8 | 50 | W |
| DAL @ DEN | DAL +13.5 | — | 6 | 30 | W |
| TOR @ LAC | TOR -3.5 | — | 9 | 50 | L |
| BKN @ GSW | BKN -3.0 | — | 6 | 30 | W |
| MAR 24 — TUESDAY | |||||
| DEN @ PHX | PHX -2.5 | — | 6 | 30 | W |
| MAR 23 — MONDAY | |||||
| LAL @ DET | DET -20.5 | — | 10 | 50 | W |
| IND @ ORL | IND -4.0(PROJ. SPREAD) | — | 7 | 30 | W |
| BKN @ POR | BKN -3.0 | — | 7 | 30 | L |
| MIL @ LAC | MIL -1.5(PROJ. SPREAD) | — | 10 | 50 | L |
| MAR 22 — SUNDAY | |||||
| POR @ DEN | POR -1.5 | — | 6 | 30 | W |
| BKN @ SAC | BKN -3.0 | — | 7 | 30 | W |
| TOR @ PHX | TOR -3.5 | — | 6 | 30 | W |
| MAR 21 — SATURDAY | |||||
| MIL @ PHX | MIL -1.5(PROJ. SPREAD) | — | 7 | 30 | W |
| MAR 20 — FRIDAY | |||||
| GSW @ DET | DET -20.5 | — | 9 | 50 | W |
| ATL @ HOU | ATL -1.0(PROJ. SPREAD) | — | 8 | 50 | W |
| TOR @ DEN | TOR -3.5 | — | 10 | 50 | W |
| MAR 19 — THURSDAY | |||||
| CLE @ CHI | CHI -6.0 | — | 9 | 50 | W |
| DET @ WAS | DET -20.5 | — | 6 | 30 | W |
| LAL @ MIA | LAL -4.5(PROJ. SPREAD) | — | 8 | 50 | W |
| MAR 18 — WEDNESDAY | |||||
| DEN @ MEM | MEM +13.0 | — | 7 | 30 | W |
| MAR 17 — TUESDAY | |||||
| MIA @ CHA | MIA -16.5 | — | 7 | 30 | L |
| CLE @ MIL | MIL -1.5(PROJ. SPREAD) | — | 6 | 30 | W |
| PHX @ MIN | PHX -2.5 | — | 6 | 30 | L |
| MAR 16 — MONDAY | |||||
| SAS @ LAC | LAC -11.5 | — | 6 | 30 | W |
| MAR 15 — SUNDAY | |||||
| DAL @ CLE | DAL +16.5 | — | 10 | 50 | W |
| IND @ MIL | IND -4.0(PROJ. SPREAD) | — | 8 | 50 | L |
| GSW @ NYK | NYK -6.5 | — | 6 | 30 | W |
| UTA @ SAC | SAC -6.5 | — | 7 | 30 | L |
| MAR 14 — SATURDAY | |||||
| BKN @ PHI | BKN -3.0 | — | 10 | 50 | W |
| DEN @ LAL | LAL -4.5(PROJ. SPREAD) | — | 8 | 50 | W |
| MAR 13 — FRIDAY | |||||
| DEN @ SAS | SAS -18.5 | — | 6 | 30 | L |
| BOS @ OKC | BOS -16.5 | — | 7 | 30 | W |
| CHI @ LAL | CHI -6.0 | — | 6 | 30 | L |
| CLE @ DAL | DAL +13.0 | — | 6 | 30 | L |
| MEM @ DET | DET -20.5 | — | 8 | 50 | L |
| NYK @ IND | NYK -6.5 | — | 8 | 50 | L |
| CHI @ LAC | CHI -6.0 | — | 6 | 30 | L |
| PHX @ TOR | PHX -2.5 | — | 7 | 30 | L |
| UTA @ POR | UTA -3.5 | — | 7 | 30 | L |
| MAR 12 — THURSDAY | |||||
| DAL @ MEM | MEM ML | — | 8 | 50 | L |
| DEN @ SAS | SAS -18.5 | — | 8 | 50 | L |
| BOS @ OKC | BOS -16.5 | — | 10 | 50 | W |
| CHI @ LAL | CHI -6.0 | — | 7 | 30 | W |
| MAR 11 — WEDNESDAY | |||||
| HOU @ DEN | HOU ML | — | 10 | 50 | L |
| MIN @ LAC | MIN ML | — | 8 | 50 | L |
| MAR 10 — TUESDAY | |||||
| DAL @ ATL | DAL -5.5 | — | 6 | 30 | L |
| BOS @ SAS | BOS ML | — | 7 | 30 | L |
| CHI @ GSW | CHI ML | — | 10 | 50 | W |
| IND @ SAC | IND ML | — | 10 | 50 | L |
| MAR 9 — MONDAY | |||||
| NYK @ LAC | NYK -6.5 | — | 8 | 50 | L |
| MAR 8 — SUNDAY | |||||
| IND @ POR | IND -4.0(PROJ. SPREAD) | — | 8 | 50 | L |
| CHI @ SAC | CHI -6.0 | — | 8 | 50 | L |
| MAR 7 — SATURDAY | |||||
| LAC @ MEM | MEM -1.5 | — | 8 | 50 | W |
| GSW @ OKC | GSW -10.5 | — | 10 | 50 | W |
| MAR 6 — FRIDAY | |||||
| MIA @ CHA | MIA -16.5 | — | 9 | 50 | L |
| NOP @ PHX | NOP -10.5 | — | 8 | 50 | L |
| LAC @ SAS | SAS -18.5 | — | 7 | 30 | W |
| MAR 5 — THURSDAY | |||||
| GSW @ HOU | HOU -10.5 | — | 8 | 50 | W |
| DET @ SAS | DET ML | — | 8 | 50 | L |
| CHI @ PHX | CHI -6.0 | — | 7 | 30 | L |
| LAL @ DEN | LAL ML | — | 7 | 30 | L |
| NOP @ SAC | NOP -10.5 | — | 7 | 30 | W |
| MAR 4 — WEDNESDAY | |||||
| CHA @ BOS | CHA +0.0(PROJ. SPREAD) | 118-89 | 8 | 50 | W |
| UTA @ PHI | UTA -3.5 | 102-106 | 4 | 20 | W |
| ATL @ MIL | ATL ML | 131-113 | 7 | 30 | W |
| IND @ LAC | IND -4.0(PROJ. SPREAD) | 107-130 | 9 | 50 | L |
| MAR 3 — TUESDAY | |||||
| SAS @ PHI | SAS -18.5 | 131-91 | 7 | 50 | W |
| PHX @ SAC | PHX -2.5 | 114-103 | 7 | 30 | W |
| DET @ CLE | DET -20.5 | 109-113 | 7 | 50 | L |
| BKN @ MIA | BKN -3.0 | 98-124 | 7 | 50 | L |
| WAS @ ORL | WAS -2.0 | 109-126 | 7 | 50 | L |
| OKC @ CHI | CHI -6.0 | 116-108 | 7 | 50 | W |
| MAR 2 — MONDAY | |||||
| BOS @ MIL | BOS -16.5 | 108-81 | 7 | 30 | W |
| MAR 1 — SUNDAY | |||||
| MIN @ DEN | MIN ML | 117-108 | 8 | 50 | W |
| MIL @ CHI | CHI -6.0 | 97-120 | 8 | 50 | W |
| CLE @ BKN | BKN -3.0 | 106-102 | 6 | 30 | W |
| OKC @ DAL | DAL -5.5 | 100-87 | 6 | 30 | W |
| NOP @ LAC | NOP -10.5 | 137-117 | 7 | 30 | L |
| FEB 28 — SATURDAY | |||||
| LAL @ GSW | LAL -4.5(PROJ. SPREAD) | 129-101 | 9 | 50 | W |
| HOU @ MIA | MIA -16.5 | 105-115 | 8 | 50 | W |
| NOP @ UTA | NOP -10.5 | 115-105 | 7 | 30 | W |
| FEB 27 — FRIDAY | |||||
| NYK @ MIL | NYK -6.5 | 127-98 | 9 | 50 | W |
| MEM @ DAL | MEM -1.5 | 124-105 | 7 | 30 | W |
| FEB 26 — THURSDAY | |||||
| OKC @ LAL | LAL -4.5(PROJ. SPREAD) | 110-113 | 8 | 50 | W |
| FEB 25 — WEDNESDAY | |||||
| BOS @ DEN | BOS -16.5 | — | 8 | 50 | L |
| FEB 24 — TUESDAY | |||||
| PHI @ IND | IND -4.0(PROJ. SPREAD) | 135-114 | 10 | 50 | L |
| WAS @ ATL | WAS -2.0 | 98-119 | 10 | 50 | L |
| ORL @ LAL | ORL -15.5 | 110-109 | 9 | 50 | W |
| BOS @ PHX | BOS -16.5 | 97-81 | 5 | 30 | W |
| FEB 23 — MONDAY | |||||
| SAC @ MEM | MEM -1.5 | 123-114 | 6 | 20 | L |
| UTA @ HOU | HOU -10.5 | 105-125 | 6 | 20 | W |
| FEB 22 — SUNDAY | |||||
| DEN @ GSW | GSW ML | 117-128 | 8 | 50 | W |
| BOS @ LAL | BOS -16.5 | 111-89 | 8 | 50 | W |
| POR @ PHX | PHX ML | 92-77 | 8 | 50 | L |
| ORL @ LAC | ORL -15.5 | 111-109 | 8 | 50 | W |
| FEB 21 — SATURDAY | |||||
| PHI @ NOP | NOP -10.5 | 120-116 | 8 | 40 | W |
| SAC @ SAS | SAS -18.5 | 106-125 | 7 | 30 | L |
| HOU @ NYK | HOU -10.5 | 108-111 | 7 | 30 | W |
| FEB 20 — FRIDAY | |||||
| DAL @ MIN | MIN -12.5 | 112-124 | 9 | 50 | L |
| UTA @ MEM | MEM -1.5 | 118-123 | 7 | 30 | W |
| FEB 19 — THURSDAY | |||||
| BKN @ CLE | CLE -2.0 | 107-123 | 10 | 50 | W |
| PHX @ SAS | SAS -18.5 | 111-119 | 7 | 30 | W |
| TOTAL RISKED | 6,790 $PP | ||||
All picks sourced from the NBA SIM pipeline — scheme detection, archetype clustering (K-Means on 16 features), Dynamic Score rankings, and lineup synergy. Lines via The Odds API. Full methodology at nbasim.
GMM pitcher archetypes → batter-vs-cluster matchups → BaseRuns simulation with park factors, bullpen, and defensive adjustments. 57% winner accuracy on 2,437 backtested games.
UNIT KEY: 8-10 CONF = 50 $PP · 5-7 CONF = 30 $PP · 1-10 SCALE — 5+ MINIMUM
▌ 2026 MLB SEASON
▌ GAME LINES — 12 ML PICKS
ARI @ PHI — ARI ML (+108)
PENDING
Model WP: 53.4% vs Market: 45.6%. EV: +11.0%
MIA @ DET — DET ML (-142)
PENDING
Model WP: 68.3% vs Market: 55.6%. EV: +16.4%
PIT @ CHC — CHC ML (-148)
PENDING
Model WP: 73.6% vs Market: 56.5%. EV: +23.4%
CWS @ KC — KC ML (-191)
PENDING
Model WP: 88.2% vs Market: 60.5%. EV: +34.4%
NYY @ TB — NYY ML (-197)
PENDING
Model WP: 89.2% vs Market: 61.1%. EV: +34.4%
WSH @ MIL — MIL ML (-178)
PENDING
Model WP: 78.8% vs Market: 58.9%. EV: +23.1%
SF @ BAL — SF ML (-120)
PENDING
Model WP: 61.3% vs Market: 51.7%. EV: +12.3%
BOS @ STL — BOS ML (-141)
PENDING
Model WP: 69.6% vs Market: 55.4%. EV: +18.9%
CLE @ ATL — ATL ML (-117)
PENDING
Model WP: 86.2% vs Market: 51.0%. EV: +60.0%
COL @ SD — SD ML (-167)
PENDING
Model WP: 78.6% vs Market: 57.5%. EV: +25.7%
TEX @ LAD — TEX ML (+134)
PENDING
Model WP: 53.1% vs Market: 39.4%. EV: +24.4%
HOU @ SEA — HOU ML (+117)
PENDING
Model WP: 51.6% vs Market: 43.6%. EV: +12.0%
▌ GAME LINES — 4 ML PICKS
CIN @ MIA — MIA ML (-120)
FINAL: MIA 8 — CIN 1 | MIA ML W (+25 $PP)
Model WP: 59.5% vs Market: 51.7%. EV: +9.0%
DET @ MIN — DET ML (-140)
FINAL: DET 1 — MIN 3 | DET ML L (-50 $PP)
Model WP: 69.4% vs Market: 55.3%. EV: +19.0%
ARI @ NYM — NYM ML (-186)
FINAL: NYM 1 — ARI 7 | NYM ML L (-50 $PP)
Model WP: 78.9% vs Market: 59.9%. EV: +21.3%
CWS @ KC — KC ML (-182)
FINAL: KC 0 — CWS 2 | KC ML L (-50 $PP)
Model WP: 76.4% vs Market: 59.4%. EV: +18.3%
▌ GAME LINES — 10 ML PICKS
KC @ CLE — KC ML (-135)
FINAL: KC 2 — CLE 10 | KC ML L (-50 $PP)
Model WP: 80.2% vs Market: 54.4%. EV: +39.6%
MIL @ BOS — BOS ML (-140)
FINAL: BOS 5 — MIL 0 | BOS ML W (+21 $PP)
Model WP: 61.3% vs Market: 55.3%. EV: +5.0%
BAL @ CWS — BAL ML (-145)
FINAL: BAL 5 — CWS 3 | BAL ML W (+34 $PP)
Model WP: 68.4% vs Market: 56.1%. EV: +15.6%
LAD @ TOR — LAD ML (-160)
FINAL: LAD 3 — TOR 4 | LAD ML L (-30 $PP)
Model WP: 67.7% vs Market: 56.6%. EV: +9.9%
HOU @ COL — HOU ML (-135)
FINAL: HOU 1 — COL 9 | HOU ML L (-50 $PP)
Model WP: 89.0% vs Market: 54.4%. EV: +54.9%
STL @ WSH — WSH ML (+5740)
FINAL: WSH 1 — STL 6 | WSH ML L (-50 $PP)
Model WP: 80.9% vs Market: 1.7%. EV: +4626.1%
ATL @ LAA — LAA ML (+35000)
FINAL: LAA 2 — ATL 8 | LAA ML L (-50 $PP)
Model WP: 32.9% vs Market: 0.3%. EV: +11450.4%
CHC @ TB — TB ML (-114)
FINAL: TB 2 — CHC 6 | TB ML L (-30 $PP)
Model WP: 55.6% vs Market: 50.4%. EV: +4.3%
CIN @ MIA — CIN ML (+102)
FINAL: CIN 4 — MIA 7 | CIN ML L (-50 $PP)
Model WP: 73.4% vs Market: 46.9%. EV: +48.2%
DET @ MIN — DET ML (-153)
FINAL: DET 6 — MIN 8 | DET ML L (-50 $PP)
Model WP: 75.7% vs Market: 55.6%. EV: +25.2%
▌ GAME LINES — 11 ML PICKS
KC @ CLE — KC ML (+96)
FINAL: KC 1 — CLE 2 | KC ML L (-50 $PP)
Model WP: 83.2% vs Market: 48.3%. EV: +63.0%
BAL @ CWS — BAL ML (-145)
FINAL: BAL 4 — CWS 2 | BAL ML W (+34 $PP)
Model WP: 77.6% vs Market: 56.1%. EV: +31.1%
ARI @ NYM — NYM ML (+328)
FINAL: NYM 4 — ARI 3 | NYM ML W (+164 $PP)
Model WP: 50.6% vs Market: 22.1%. EV: +116.6%
CIN @ MIA — CIN ML (+111)
FINAL: CIN 6 — MIA 3 | CIN ML W (+56 $PP)
Model WP: 74.6% vs Market: 44.9%. EV: +57.3%
MIL @ BOS — MIL ML (+111)
FINAL: MIL 2 — BOS 3 | MIL ML L (-30 $PP)
Model WP: 49.4% vs Market: 43.6%. EV: +4.2%
LAD @ TOR — LAD ML (-155)
FINAL: LAD 4 — TOR 1 | LAD ML W (+32 $PP)
Model WP: 83.7% vs Market: 55.8%. EV: +37.8%
DET @ MIN — DET ML (-169)
FINAL: DET 2 — MIN 4 | DET ML L (-50 $PP)
Model WP: 89.6% vs Market: 57.8%. EV: +42.6%
SEA @ TEX — TEX ML (+95)
FINAL: TEX 3 — SEA 2 | TEX ML W (+48 $PP)
Model WP: 58.6% vs Market: 48.6%. EV: +14.2%
HOU @ COL — COL ML (+119)
FINAL: COL 5 — HOU 1 | COL ML W (+60 $PP)
Model WP: 74.0% vs Market: 42.0%. EV: +62.0%
ATL @ LAA — ATL ML (-130)
FINAL: ATL 7 — LAA 2 | ATL ML W (+23 $PP)
Model WP: 63.2% vs Market: 53.6%. EV: +11.8%
PHI @ SF — SF ML (+107)
FINAL: SF 6 — PHI 0 | SF ML W (+54 $PP)
Model WP: 70.2% vs Market: 44.3%. EV: +45.3%
▌ GAME LINES — 12 ML PICKS
CHC @ TB — CHC ML (+100)
FINAL: CHC 4 — TB 6 | CHC ML L (-30 $PP)
Model WP: 51.4% vs Market: 47.4%. EV: +2.9%
KC @ CLE — KC ML (+102)
FINAL: KC 4 — CLE 2 | KC ML W (+51 $PP)
Model WP: 68.3% vs Market: 46.9%. EV: +38.0%
SD @ PIT — SD ML (+111)
FINAL: SD 5 — PIT 0 | SD ML W (+56 $PP)
Model WP: 63.4% vs Market: 44.9%. EV: +33.8%
CIN @ MIA — CIN ML (+109)
FINAL: CIN 2 — MIA 0 | CIN ML W (+54 $PP)
Model WP: 84.7% vs Market: 45.3%. EV: +76.9%
STL @ WSH — STL ML (-115)
FINAL: STL 6 — WSH 9 | STL ML L (-50 $PP)
Model WP: 75.5% vs Market: 50.7%. EV: +41.1%
MIL @ BOS — MIL ML (-128)
FINAL: MIL 8 — BOS 6 | MIL ML W (+39 $PP)
Model WP: 72.4% vs Market: 53.1%. EV: +29.0%
LAD @ TOR — LAD ML (-129)
FINAL: LAD 14 — TOR 2 | LAD ML W (+39 $PP)
Model WP: 68.8% vs Market: 53.3%. EV: +22.1%
DET @ MIN — MIN ML (-123)
FINAL: MIN 7 — DET 3 | MIN ML W (+41 $PP)
Model WP: 71.4% vs Market: 52.2%. EV: +29.4%
BAL @ CWS — BAL ML (-141)
FINAL: BAL 2 — CWS 1 | BAL ML W (+35 $PP)
Model WP: 70.0% vs Market: 55.4%. EV: +19.7%
HOU @ COL — HOU ML (-157)
FINAL: HOU 7 — COL 9 | HOU ML L (-50 $PP)
Model WP: 79.3% vs Market: 56.1%. EV: +29.8%
ATL @ LAA — ATL ML (-176)
FINAL: ATL 2 — LAA 6 | ATL ML L (-50 $PP)
Model WP: 84.3% vs Market: 58.7%. EV: +32.2%
PHI @ SF — PHI ML (-118)
FINAL: PHI 6 — SF 4 | PHI ML W (+25 $PP)
Model WP: 60.3% vs Market: 51.2%. EV: +11.3%
▌ GAME LINES — 9 ML PICKS
CHC @ CLE — CHC ML (+114)
FINAL: CHC 5 — CLE 6 | CHC ML L (-50 $PP)
Model WP: 77.3% vs Market: 44.3%. EV: +65.5%
CHC @ CLE — CHC ML (+114)
FINAL: CHC 5 — CLE 6 | CHC ML L (-50 $PP)
Model WP: 73.0% vs Market: 44.3%. EV: +56.3%
LAD @ WSH — WSH ML (+1246)
FINAL: WSH 6 — LAD 8 | WSH ML L (-50 $PP)
Model WP: 43.7% vs Market: 7.3%. EV: +488.5%
BAL @ PIT — BAL ML (+100)
FINAL: BAL 2 — PIT 8 | BAL ML L (-50 $PP)
Model WP: 63.1% vs Market: 47.4%. EV: +26.2%
SD @ BOS — SD ML (+112)
FINAL: SD 8 — BOS 6 | SD ML W (+56 $PP)
Model WP: 58.9% vs Market: 43.4%. EV: +24.8%
NYM @ SF — SF ML (+17920)
FINAL: SF 2 — NYM 5 | SF ML L (-50 $PP)
Model WP: 52.8% vs Market: 0.6%. EV: +9422.6%
SEA @ LAA — SEA ML (+140)
FINAL: SEA 7 — LAA 8 | SEA ML L (-50 $PP)
Model WP: 56.5% vs Market: 38.5%. EV: +35.5%
ATL @ ARI — ATL ML (+381)
FINAL: ATL 5 — ARI 6 | ATL ML L (-50 $PP)
Model WP: 57.7% vs Market: 19.7%. EV: +177.5%
STL @ DET — DET ML (-141)
FINAL: DET 3 — STL 5 | DET ML L (-50 $PP)
Model WP: 76.5% vs Market: 55.4%. EV: +30.7%
▌ GAME LINES — 12 ML PICKS
STL @ DET — DET ML (-170)
FINAL: DET 11 — STL 6 | DET ML W (+29 $PP)
Model WP: 76.9% vs Market: 57.9%. EV: +22.1%
TOR @ CWS — TOR ML (-145)
FINAL: TOR 3 — CWS 6 | TOR ML L (-30 $PP)
Model WP: 62.2% vs Market: 56.1%. EV: +5.1%
MIL @ KC — KC ML (-116)
FINAL: KC 8 — MIL 2 | KC ML W (+43 $PP)
Model WP: 71.5% vs Market: 50.8%. EV: +33.2%
LAD @ WSH — LAD ML (-310)
FINAL: LAD 10 — WSH 5 | LAD ML W (+10 $PP)
Model WP: 81.9% vs Market: 70.6%. EV: +8.4%
BAL @ PIT — PIT ML (+256)
FINAL: PIT 3 — BAL 2 | PIT ML W (+128 $PP)
Model WP: 48.1% vs Market: 26.3%. EV: +71.1%
SD @ BOS — BOS ML (+202)
FINAL: BOS 2 — SD 3 | BOS ML L (-50 $PP)
Model WP: 68.2% vs Market: 30.8%. EV: +106.0%
CIN @ TEX — TEX ML (-143)
FINAL: TEX 0 — CIN 2 | TEX ML L (-50 $PP)
Model WP: 67.7% vs Market: 55.7%. EV: +15.1%
MIA @ NYY — NYY ML (-202)
FINAL: NYY 9 — MIA 7 | NYY ML W (+15 $PP)
Model WP: 74.9% vs Market: 61.7%. EV: +12.0%
TB @ MIN — TB ML (-114)
FINAL: TB 7 — MIN 1 | TB ML W (+44 $PP)
Model WP: 81.4% vs Market: 50.4%. EV: +52.7%
ATL @ ARI — ATL ML (+91)
FINAL: ATL 1 — ARI 2 | ATL ML L (-50 $PP)
Model WP: 67.1% vs Market: 49.6%. EV: +28.1%
PHI @ COL — PHI ML (-248)
FINAL: PHI 2 — COL 1 | PHI ML W (+20 $PP)
Model WP: 84.5% vs Market: 66.1%. EV: +18.5%
NYM @ SF — SF ML (+91)
FINAL: SF 0 — NYM 9 | SF ML L (-50 $PP)
Model WP: 65.6% vs Market: 49.6%. EV: +25.3%
▌ GAME LINES — 9 ML PICKS
MIA @ NYY — NYY ML (-165)
FINAL: NYY 8 — MIA 2 | NYY ML W (+18 $PP)
Model WP: 68.8% vs Market: 57.2%. EV: +10.4%
TOR @ CWS — TOR ML (-195)
FINAL: TOR 4 — CWS 5 | TOR ML L (-30 $PP)
Model WP: 68.8% vs Market: 60.9%. EV: +4.0%
CIN @ TEX — TEX ML (+1038)
FINAL: TEX 3 — CIN 5 | TEX ML L (-50 $PP)
Model WP: 61.5% vs Market: 8.6%. EV: +600.4%
CHC @ CLE — CHC ML (+8049)
FINAL: CHC 1 — CLE 4 | CHC ML L (-50 $PP)
Model WP: 76.2% vs Market: 1.2%. EV: +6110.3%
TB @ MIN — TB ML (-113)
FINAL: TB 4 — MIN 10 | TB ML L (-30 $PP)
Model WP: 57.5% vs Market: 50.2%. EV: +8.3%
BAL @ PIT — BAL ML (+443)
FINAL: BAL 4 — PIT 5 | BAL ML L (-50 $PP)
Model WP: 60.8% vs Market: 17.6%. EV: +229.9%
SEA @ LAA — SEA ML (-159)
FINAL: SEA 3 — LAA 1 | SEA ML W (+19 $PP)
Model WP: 62.8% vs Market: 56.4%. EV: +2.3%
ATL @ ARI — ATL ML (-116)
FINAL: ATL 2 — ARI 0 | ATL ML W (+43 $PP)
Model WP: 61.2% vs Market: 50.8%. EV: +13.9%
NYM @ SF — NYM ML (-130)
FINAL: NYM 10 — SF 3 | NYM ML W (+38 $PP)
Model WP: 65.9% vs Market: 53.6%. EV: +16.6%
▌ GAME LINES — 3 ML PICKS
MIN @ KC — KC ML (-150)
FINAL: KC 1 — MIN 5 | KC ML L (-50 $PP)
Model WP: 70.7% vs Market: 56.9%. EV: +17.9%
ATL @ ARI — ATL ML (-113)
FINAL: ATL 17 — ARI 2 | ATL ML W (+44 $PP)
Model WP: 75.1% vs Market: 50.2%. EV: +41.6%
NYM @ SF — SF ML (+99)
FINAL: SF 7 — NYM 2 | SF ML W (+50 $PP)
Model WP: 80.3% vs Market: 47.6%. EV: +59.7%
▌ GAME LINES — 10 ML PICKS
TEX @ BAL — TEX ML (+96)
FINAL: TEX 3 — BAL 8 | TEX ML L (-50 $PP)
Model WP: 75.3% vs Market: 48.3%. EV: +47.6%
PIT @ CIN — CIN ML (+112)
FINAL: CIN 3 — PIT 8 | CIN ML L (-30 $PP)
Model WP: 48.7% vs Market: 44.7%. EV: +3.2%
WSH @ PHI — PHI ML (-280)
FINAL: PHI 6 — WSH 5 | PHI ML W (+18 $PP)
Model WP: 92.2% vs Market: 68.6%. EV: +25.2%
COL @ TOR — COL ML (+192)
FINAL: COL 2 — TOR 1 | COL ML W (+96 $PP)
Model WP: 79.4% vs Market: 31.8%. EV: +131.9%
CWS @ MIA — MIA ML (-145)
FINAL: MIA 10 — CWS 0 | MIA ML W (+21 $PP)
Model WP: 65.7% vs Market: 56.1%. EV: +11.0%
NYM @ STL — NYM ML (-165)
FINAL: NYM 1 — STL 2 | NYM ML L (-50 $PP)
Model WP: 77.5% vs Market: 57.2%. EV: +24.5%
LAA @ CHC — CHC ML (-165)
FINAL: CHC 6 — LAA 2 | CHC ML W (+30 $PP)
Model WP: 84.7% vs Market: 57.2%. EV: +36.1%
DET @ ARI — DET ML (-150)
FINAL: DET 0 — ARI 1 | DET ML L (-50 $PP)
Model WP: 70.7% vs Market: 56.9%. EV: +17.8%
SF @ SD — SF ML (+14000)
FINAL: SF 1 — SD 7 | SF ML L (-50 $PP)
Model WP: 30.9% vs Market: 0.7%. EV: +4254.0%
NYY @ SEA — SEA ML (+2356)
FINAL: SEA 3 — NYY 5 | SEA ML L (-50 $PP)
Model WP: 47.6% vs Market: 4.0%. EV: +1068.1%
▌ GAME LINES — 11 ML PICKS
TEX @ BAL — TEX ML (-122)
FINAL: TEX 8 — BAL 5 | TEX ML W (+41 $PP)
Model WP: 74.0% vs Market: 52.0%. EV: +34.7%
WSH @ PHI — PHI ML (-192)
FINAL: PHI 3 — WSH 2 | PHI ML W (+16 $PP)
Model WP: 68.4% vs Market: 60.6%. EV: +4.0%
CWS @ MIA — MIA ML (-155)
FINAL: MIA 9 — CWS 2 | MIA ML W (+32 $PP)
Model WP: 79.1% vs Market: 55.8%. EV: +30.1%
COL @ TOR — TOR ML (-269)
FINAL: TOR 5 — COL 1 | TOR ML W (+11 $PP)
Model WP: 75.4% vs Market: 67.7%. EV: +3.4%
LAA @ CHC — LAA ML (+114)
FINAL: LAA 2 — CHC 0 | LAA ML W (+57 $PP)
Model WP: 56.0% vs Market: 44.3%. EV: +19.8%
TB @ MIL — MIL ML (-126)
FINAL: MIL 6 — TB 2 | MIL ML W (+24 $PP)
Model WP: 62.7% vs Market: 52.7%. EV: +12.5%
NYM @ STL — NYM ML (-152)
FINAL: NYM 0 — STL 3 | NYM ML L (-50 $PP)
Model WP: 86.5% vs Market: 55.4%. EV: +43.5%
BOS @ HOU — HOU ML (-150)
FINAL: HOU 9 — BOS 2 | HOU ML W (+20 $PP)
Model WP: 64.2% vs Market: 56.9%. EV: +6.9%
DET @ ARI — DET ML (+89)
FINAL: DET 5 — ARI 7 | DET ML L (-30 $PP)
Model WP: 56.6% vs Market: 50.0%. EV: +6.9%
SF @ SD — SF ML (-137)
FINAL: SF 9 — SD 3 | SF ML W (+22 $PP)
Model WP: 61.0% vs Market: 54.7%. EV: +5.5%
NYY @ SEA — SEA ML (+92)
FINAL: SEA 0 — NYY 5 | SEA ML L (-30 $PP)
Model WP: 57.6% vs Market: 49.3%. EV: +10.6%
▌ GAME LINES — 11 ML PICKS
TEX @ BAL — TEX ML (+102)
FINAL: TEX 5 — BAL 2 | TEX ML W (+51 $PP)
Model WP: 56.3% vs Market: 46.9%. EV: +13.7%
PIT @ CIN — PIT ML (+106)
FINAL: PIT 0 — CIN 2 | PIT ML L (-30 $PP)
Model WP: 50.7% vs Market: 46.0%. EV: +4.5%
CWS @ MIA — MIA ML (-147)
FINAL: MIA 4 — CWS 9 | MIA ML L (-30 $PP)
Model WP: 60.8% vs Market: 56.4%. EV: +2.1%
COL @ TOR — TOR ML (-294)
FINAL: TOR 5 — COL 14 | TOR ML L (-30 $PP)
Model WP: 81.9% vs Market: 69.5%. EV: +9.8%
TB @ MIL — MIL ML (-159)
FINAL: MIL 2 — TB 3 | MIL ML L (-50 $PP)
Model WP: 79.5% vs Market: 56.4%. EV: +29.5%
NYM @ STL — NYM ML (-150)
FINAL: NYM 4 — STL 2 | NYM ML W (+33 $PP)
Model WP: 73.0% vs Market: 56.9%. EV: +21.7%
BOS @ HOU — BOS ML (-127)
FINAL: BOS 1 — HOU 8 | BOS ML L (-30 $PP)
Model WP: 58.4% vs Market: 52.9%. EV: +4.3%
SF @ SD — SF ML (+94)
FINAL: SF 3 — SD 2 | SF ML W (+47 $PP)
Model WP: 59.8% vs Market: 48.8%. EV: +16.0%
NYY @ SEA — NYY ML (-120)
FINAL: NYY 1 — SEA 2 | NYY ML L (-30 $PP)
Model WP: 57.3% vs Market: 51.7%. EV: +5.0%
DET @ ARI — ARI ML (-120)
FINAL: ARI 9 — DET 6 | ARI ML W (+25 $PP)
Model WP: 57.7% vs Market: 51.7%. EV: +5.8%
CLE @ LAD — LAD ML (-193)
FINAL: LAD 2 — CLE 4 | LAD ML L (-50 $PP)
Model WP: 74.8% vs Market: 60.8%. EV: +13.6%
▌ GAME LINES — 9 ML PICKS
MIN @ BAL — BAL ML (-160)
FINAL: BAL 8 — MIN 6 | BAL ML W (+31 $PP)
Model WP: 77.5% vs Market: 56.6%. EV: +25.9%
TEX @ PHI — TEX ML (+112)
FINAL: TEX 8 — PHI 3 | TEX ML W (+34 $PP)
Model WP: 48.9% vs Market: 43.4%. EV: +3.6%
KC @ ATL — KC ML (+120)
FINAL: KC 4 — ATL 1 | KC ML W (+60 $PP)
Model WP: 55.8% vs Market: 43.1%. EV: +22.7%
BOS @ CIN — BOS ML (-135)
FINAL: BOS 2 — CIN 3 | BOS ML L (-50 $PP)
Model WP: 71.8% vs Market: 54.4%. EV: +25.0%
COL @ MIA — MIA ML (-190)
FINAL: MIA 4 — COL 3 | MIA ML W (+16 $PP)
Model WP: 67.5% vs Market: 60.4%. EV: +3.0%
LAA @ HOU — HOU ML (-170)
FINAL: HOU 9 — LAA 7 | HOU ML W (+18 $PP)
Model WP: 66.0% vs Market: 57.9%. EV: +4.8%
CWS @ MIL — MIL ML (-165)
FINAL: MIL 9 — CWS 7 | MIL ML W (+30 $PP)
Model WP: 76.1% vs Market: 57.2%. EV: +22.3%
TB @ STL — TB ML (-120)
FINAL: TB 11 — STL 7 | TB ML W (+25 $PP)
Model WP: 60.3% vs Market: 51.7%. EV: +10.5%
CLE @ SEA — SEA ML (-143)
FINAL: SEA 8 — CLE 0 | SEA ML W (+35 $PP)
Model WP: 67.0% vs Market: 55.7%. EV: +13.9%
▌ GAME LINES — 9 ML PICKS
TB @ STL — TB ML (-115)
FINAL: TB 5 — STL 6 | TB ML L (-50 $PP)
Model WP: 70.8% vs Market: 50.7%. EV: +32.4%
WSH @ CHC — CHC ML (-255)
FINAL: CHC 10 — WSH 2 | CHC ML W (+20 $PP)
Model WP: 96.1% vs Market: 66.6%. EV: +33.8%
TEX @ PHI — TEX ML (+116)
FINAL: TEX 5 — PHI 4 | TEX ML W (+58 $PP)
Model WP: 58.5% vs Market: 43.9%. EV: +26.3%
BOS @ CIN — BOS ML (+112)
FINAL: BOS 5 — CIN 6 | BOS ML L (-50 $PP)
Model WP: 62.1% vs Market: 43.3%. EV: +31.7%
CWS @ MIL — CWS ML (+1516)
FINAL: CWS 1 — MIL 6 | CWS ML L (-50 $PP)
Model WP: 15.5% vs Market: 6.1%. EV: +150.0%
KC @ ATL — ATL ML (-159)
FINAL: ATL 6 — KC 2 | ATL ML W (+19 $PP)
Model WP: 69.4% vs Market: 56.4%. EV: +13.0%
NYY @ SF — NYY ML (+92)
FINAL: NYY 3 — SF 1 | NYY ML W (+46 $PP)
Model WP: 74.7% vs Market: 49.2%. EV: +43.5%
DET @ SD — SD ML (-109)
FINAL: SD 3 — DET 0 | SD ML W (+46 $PP)
Model WP: 59.5% vs Market: 49.4%. EV: +14.0%
CLE @ SEA — SEA ML (-180)
FINAL: SEA 5 — CLE 6 | SEA ML L (-50 $PP)
Model WP: 76.5% vs Market: 59.1%. EV: +18.9%
▌ GAME LINES — 5 ML PICKS
NYY @ SF — NYY ML (-134)
FINAL: NYY 3 — SF 0 | NYY ML W (+22 $PP)
Model WP: 64.1% vs Market: 54.2%. EV: +11.9%
COL @ MIA — MIA ML (-195)
FINAL: MIA 2 — COL 1 | MIA ML W (+26 $PP)
Model WP: 76.5% vs Market: 60.9%. EV: +15.7%
LAA @ HOU — HOU ML (-163)
FINAL: HOU 2 — LAA 6 | HOU ML L (-50 $PP)
Model WP: 74.0% vs Market: 57.0%. EV: +19.5%
DET @ SD — SD ML (-127)
FINAL: SD 2 — DET 5 | SD ML L (-30 $PP)
Model WP: 64.1% vs Market: 52.9%. EV: +14.5%
CLE @ SEA — SEA ML (-172)
FINAL: SEA 5 — CLE 1 | SEA ML W (+29 $PP)
Model WP: 82.3% vs Market: 58.2%. EV: +30.1%
▌ GAME LINES — 6 ML PICKS
CWS @ MIL — MIL ML (-186)
FINAL: MIL 14 — CWS 2 | MIL ML W (+27 $PP)
Model WP: 76.5% vs Market: 59.9%. EV: +17.6%
WSH @ CHC — WSH ML (+157)
FINAL: WSH 10 — CHC 4 | WSH ML W (+78 $PP)
Model WP: 50.1% vs Market: 36.0%. EV: +28.8%
MIN @ BAL — MIN ML (+112)
FINAL: MIN 1 — BAL 2 | MIN ML L (-30 $PP)
Model WP: 53.1% vs Market: 44.7%. EV: +12.7%
DET @ SD — DET ML (-131)
FINAL: DET 8 — SD 2 | DET ML W (+23 $PP)
Model WP: 61.7% vs Market: 53.6%. EV: +8.9%
TEX @ PHI — TEX ML (+109)
FINAL: TEX 3 — PHI 5 | TEX ML L (-30 $PP)
Model WP: 53.7% vs Market: 44.0%. EV: +12.1%
CLE @ SEA — SEA ML (-186)
FINAL: SEA 4 — CLE 6 | SEA ML L (-50 $PP)
Model WP: 78.4% vs Market: 59.9%. EV: +20.5%
▌ GAME LINES — 1 ML PICK
NYY @ SF — NYY ML (-119)
FINAL: NYY 0 — SF 0 | NYY ML W (+25 $PP)
Model WP: 0% vs Market: 0%. EV: +16.3%
Statcast telemetry → GMM clustering → 3D terrain city. How we classify 5,983 pitcher-seasons into 34 archetypes and generate hitter matchup projections.
The MLB system is an 8-step sequential pipeline built in Python, orchestrated by run_all.py. Each step reads the previous step's output and writes its own artifacts. The entire pipeline can be resumed from any step with --from N.
pybaseball. Data is chunked by month (Mar-Oct) with retry logic and polite 2s delays. Each season yields ~700K pitches across 59 columns including release speed, spin rate, pitch movement (pfx_x/pfx_z), plate location, and batted ball outcomes. Saved as compressed Parquet files (~150MB/season).
is_sp flag used downstream for role-aware archetype naming.
GMM over K-Means: We use Gaussian Mixture Models instead of K-Means for clustering. GMM captures soft cluster boundaries and probabilistic membership—a pitcher can be 70% Ghost and 30% Swordfighter—which better reflects how real pitching styles blend. Model selection uses BIC (Bayesian Information Criterion) rather than silhouette score, with minimum K=8 enforced per hand.
SV Reclassification: Statcast's “SV” (sweeper) classification is inconsistent across seasons. We built a per-pitcher mapping that examines career-average SV velocity and vertical break to reclassify each pitcher's SV as curveball (pfx_z < −0.50), slider (speed > 84 mph), or sweeper (everything else). This ensures clustering stability across the 2015–2026 dataset.
Separate RHP/LHP Clustering: Rather than clustering all pitchers together, we split by handedness first. This prevents the dominant handedness signal from overwhelming the pitch-mix features. Each hand gets its own StandardScaler, GMM model, and PCA projection. The X-axis offset (+5/−5) in PCA space creates the visual highway divider in the city view.
Medoid over Centroid: Archetype representatives are chosen as the geometric medoid (the real pitcher that minimizes total distance to all cluster members), not the mathematical centroid. This means every archetype profile references an actual pitcher's stats, not a phantom average that no real pitcher matches.
Zone Location Entropy: The 13-feature zone location layer captures not just where pitchers throw, but how predictable their patterns are. Shannon entropy across a 9-quadrant grid (3 lateral × 3 vertical) measures location unpredictability, and platoon shift features capture how much a pitcher adjusts against same-side vs opposite-side batters.
LA-Style Terrain Heightfield: The flat ground plane is replaced with a 128×128 subdivided mesh whose vertices are displaced by a Gaussian kernel density function. Each of the 34 cluster centroids emits a Gaussian “hill” with amplitude proportional to log(pitcher_count). Dense clusters like RHP Ghost (542 pitchers) form prominent hilltops; sparse ones like Knuckleball Wizard sit in valleys. The result is an organic, LA-style rolling topography.
Voronoi Neighborhood Tessellation: Each archetype occupies a Voronoi cell computed via half-plane bisector clipping (Sutherland-Hodgman). These polygons are projected onto the terrain surface as ShapeGeometry meshes, with vertices displaced to follow the heightfield. A 3% inset creates natural “street” gaps between districts.
Buildings Confined to Voronoi Zones: Rather than placing buildings at individual pitcher PCA coordinates (which causes cross-cluster color mixing), buildings are packed into a grid of slots inside each Voronoi polygon using point-in-polygon tests. Slots fill center-outward, pitchers distribute round-robin. Each building's height maps to average fastball velocity; bases sit on the terrain surface. This guarantees clean, single-color districts.
Terrain-Following Highway: The RHP/LHP divider at X=0 is built as discrete segments that follow the terrain contour, with emissive orange dashes for the center line. All scene elements—neighborhoods, buildings, labels, batter route arcs—are terrain-aware via bilinear-interpolated height queries.
Scheme detection → player archetypes → lineup synergy → DSI spread model. The full pipeline from NBA API to game predictions.
The NBA SIM operates as a 4-phase CLI pipeline (python main.py [collect|analyze|scores|predict|all]). Each phase builds on the previous, with all data persisted to a 17-table SQLite database.
PlayerCollector pulls teams, rosters, and season stats from nba_api. GameCollector fetches game results. LineupCollector pulls 2-through-5-man lineup combinations with net rating and possession counts (with minimum possession thresholds: 30 for 5-man, 50 for 4-man, 75 for 3-man, 100 for 2-man). PlayTypeCollector calls SynergyPlayTypes for all 11 play types in both offensive and defensive groupings. BoxScoreCollector ingests per-game player stats with 27 columns (points, rebounds, assists, plus advanced metrics like usage rate, true shooting, offensive/defensive rating, PIE). OddsCollector pulls live spreads and totals from The Odds API across multiple bookmakers.
FeatureEngineer builds training matrices from the value scores and team-level features. A GamePredictor trains models for spread and total predictions. A ModelEvaluator backtests by training on season N-1 and evaluating on season N, measuring spread/total accuracy. The generate_frontend.py script produces a self-contained HTML dashboard that fetches live odds, computes consensus lines across bookmakers, grades matchup edges (A/B/C), and displays today's games with full scheme and archetype context.
Percentile-Rank Scheme Classification: Instead of using raw play type frequencies, we rank each team's values against all 30 teams to compute percentile scores (0-1). This ensures meaningful differentiation regardless of season-level shifts in play style trends. A team running 18% isolation isn't inherently "ISO-Heavy" unless they're in the top percentile of the league.
Position-Weighted Clustering: Not all stats matter equally for every position. Centers are weighted toward blocks and rebounds; guards toward assists and three-point attempts. The POSITION_FEATURE_WEIGHTS dictionary applies multipliers before StandardScaler normalization, ensuring PCA captures position-relevant variance. The K=4 bias (accepting K=4 over K=3 when silhouette delta < 0.05) prevents oversimplification.
Hungarian Algorithm for Label Assignment: Each archetype label (e.g., "Floor General", "Rim Protector") is defined as a z-score direction vector. After clustering, we build a cost matrix scoring how well each cluster centroid matches each label template, then use the Hungarian algorithm for optimal bipartite matching. This guarantees the most appropriate label assignment without manual intervention.
Bayesian Shrinkage in Synergy Scores: Small-sample lineup data is unreliable. A 5-man lineup with 35 possessions and +20 net rating shouldn't dominate a player's value. We apply Bayesian priors that shrink estimates toward league average, with prior strength proportional to data granularity (100 possessions for 5-man, 30 for 2-man). This balances signal extraction with noise reduction.
Every player on the dashboard receives a Dynamic Score (40-99), a single-number composite rating that blends offensive and defensive production into one sortable metric. The formula weights offense at 75% and defense at 25%, reflecting the NBA's offensive-skewing landscape.
Offensive sub-score compounds scoring (pts × 1.2), playmaking (ast × 1.8), efficiency (TS% × 40), and usage (USG% × 15). Defensive sub-score combines stocks (STL × 8.0 + BLK × 6.0) with defensive rating impact (max(0, (115 − DRtg) × 2.5)). Both sub-scores are clamped 0-99. The final blend adds shared components: rebounding (reb × 0.8), net rating impact (NRtg × 0.8), and minutes load (mpg × 0.3), then clamps the result to the 40-99 range. This floor prevents garbage-time players from showing misleadingly low scores.
The Dynamic Score Index (DSI) is a team-level aggregate that drives the spread prediction engine. For each team, DSI sums the Dynamic Scores of all available starters and rotation players, adjusted for injury absences and usage decay. The spread is computed as a 50/50 blend of DSI-based power rating and adjusted net rating:
Spread = -((DSI_power × 0.50 + NRtg_power × 0.50) + HCA)
Where HCA (home court advantage) = 3.0 points. The model also applies a 3.0 point back-to-back penalty for teams playing consecutive days, and a usage decay factor (0.995 per 1% excess usage for offensive archetypes, 0.985 for defensive archetypes) that taxes players with unsustainably high usage rates. A stocks penalty (0.8 per lost stock) accounts for missing defensive playmakers. The DSI spread is then compared against the market consensus line to generate edge values.
The Trends tab on the dashboard surfaces two layers of daily-refreshing intelligence, both powered by an automated GitHub Actions pipeline that runs every morning at 8 AM PST.
Trending Players: Compares each player's PRA (Points + Rebounds + Assists) over the last 14 days against their PRA from the prior 14 days (28-day total window). Players must have at least 2 games with 15+ minutes in each window to qualify. The top 4 risers and top 4 fallers are surfaced with direction badges: Hot, Trending Up, Cooling Down, Trending Down, or Steady.
Hot & Cold Lineup Combos: Queries the lineup_stats table for 5-man, 3-man, and 2-man combinations that have played at least 5 games and 8 minutes together. Hot combos are ranked by highest net rating, with badges for elite performance: HEATING UP (net > +15, 10+ GP), ELITE FLOOR (net > +10), MORE MINUTES (15+ min, 15+ GP). Cold combos surface the worst-performing lineups with severity badges: DISASTERCLASS (net < −15), COOKED (net < −10), or FADE. Each combo card displays every player's Dynamic Score and archetype for full context.
The daily pipeline uses incremental boxscore collection (only missing games, not the full season), refreshes lineup stats from the NBA.com API with browser-spoofed headers to avoid rate limiting, regenerates the static HTML, and auto-syncs to the live dashboard.