{
  "as_of": "2026-09-22T16:52:20.044140+00:00",
  "sport": "MLB",
  "markets": [
    {
      "id": "total-394e1e2b849c5b4eaf2b5984eaa74b79",
      "sport": "MLB",
      "game": "Tampa Bay Rays @ New York Yankees",
      "commence_time": "2026-09-22T17:06:00+00:00",
      "start_label": "Tue 01:06 PM ET",
      "median": 6.5,
      "minimum": 6.5,
      "maximum": 7.0,
      "books": {
        "fanduel": 6.5,
        "fanatics": 6.5,
        "mybookieag": 6.5,
        "bovada": 6.5,
        "betonlineag": 6.5,
        "lowvig": 6.5,
        "betus": 7.0,
        "betmgm": 6.5,
        "draftkings": 6.5,
        "williamhill_us": 6.5,
        "betrivers": 6.5
      },
      "quotes": [
        {
          "book": "fanduel",
          "label": "FanDuel",
          "line": 6.5,
          "over_price": -124,
          "under_price": 102,
          "quoted_at": "2026-09-22T16:47:33+00:00"
        },
        {
          "book": "fanatics",
          "label": "Fanatics",
          "line": 6.5,
          "over_price": -120,
          "under_price": 100,
          "quoted_at": "2026-09-22T16:47:33+00:00"
        },
        {
          "book": "mybookieag",
          "label": "MyBookie.ag",
          "line": 6.5,
          "over_price": -120,
          "under_price": -102,
          "quoted_at": "2026-09-22T16:46:30+00:00"
        },
        {
          "book": "bovada",
          "label": "Bovada",
          "line": 6.5,
          "over_price": -125,
          "under_price": 105,
          "quoted_at": "2026-09-22T16:47:13+00:00"
        },
        {
          "book": "betonlineag",
          "label": "BetOnline.ag",
          "line": 6.5,
          "over_price": -117,
          "under_price": -103,
          "quoted_at": "2026-09-22T16:47:55+00:00"
        },
        {
          "book": "lowvig",
          "label": "LowVig.ag",
          "line": 6.5,
          "over_price": -115,
          "under_price": 100,
          "quoted_at": "2026-09-22T16:47:36+00:00"
        },
        {
          "book": "betus",
          "label": "BetUS",
          "line": 7.0,
          "over_price": 105,
          "under_price": -125,
          "quoted_at": "2026-09-22T16:47:54+00:00"
        },
        {
          "book": "betmgm",
          "label": "BetMGM",
          "line": 6.5,
          "over_price": -120,
          "under_price": 100,
          "quoted_at": "2026-09-22T16:47:55+00:00"
        },
        {
          "book": "draftkings",
          "label": "DraftKings",
          "line": 6.5,
          "over_price": -120,
          "under_price": 100,
          "quoted_at": "2026-09-22T16:47:54+00:00"
        },
        {
          "book": "williamhill_us",
          "label": "Caesars",
          "line": 6.5,
          "over_price": -121,
          "under_price": 103,
          "quoted_at": "2026-09-22T16:40:34+00:00"
        },
        {
          "book": "betrivers",
          "label": "BetRivers",
          "line": 6.5,
          "over_price": -118,
          "under_price": -103,
          "quoted_at": "2026-09-22T16:47:55+00:00"
        }
      ],
      "previous_books": {
        "betmgm": 6.5,
        "betonlineag": 6.5,
        "betrivers": 6.5,
        "betus": 6.5,
        "bovada": 7.0,
        "draftkings": 6.5,
        "fanatics": 6.5,
        "fanduel": 6.5,
        "lowvig": 6.5,
        "mybookieag": 6.5,
        "williamhill_us": 6.5
      },
      "change_from": "2026-09-22T16:26:50.754831+00:00",
      "change": 0.0,
      "change_label": "+0 (11 matched books)"
    },
    {
      "id": "total-7fafa79a573ac098f38c8c6c4293b93e",
      "sport": "MLB",
      "game": "Toronto Blue Jays @ Baltimore Orioles",
      "commence_time": "2026-09-22T22:36:00+00:00",
      "start_label": "Tue 06:36 PM ET",
      "median": 7.5,
      "minimum": 7.0,
      "maximum": 7.5,
      "books": {
        "fanduel": 7.5,
        "fanatics": 7.5,
        "mybookieag": 7.0,
        "bovada": 7.5,
        "lowvig": 7.0,
        "betonlineag": 7.0,
        "draftkings": 7.0,
        "williamhill_us": 7.5,
        "betmgm": 7.5,
        "betus": 7.0,
        "betrivers": 7.5
      },
      "quotes": [
        {
          "book": "fanduel",
          "label": "FanDuel",
          "line": 7.5,
          "over_price": 104,
          "under_price": -128,
          "quoted_at": "2026-09-22T16:47:33+00:00"
        },
        {
          "book": "fanatics",
          "label": "Fanatics",
          "line": 7.5,
          "over_price": 105,
          "under_price": -125,
          "quoted_at": "2026-09-22T16:47:33+00:00"
        },
        {
          "book": "mybookieag",
          "label": "MyBookie.ag",
          "line": 7.0,
          "over_price": -122,
          "under_price": 100,
          "quoted_at": "2026-09-22T16:46:30+00:00"
        },
        {
          "book": "bovada",
          "label": "Bovada",
          "line": 7.5,
          "over_price": 105,
          "under_price": -125,
          "quoted_at": "2026-09-22T16:47:13+00:00"
        },
        {
          "book": "lowvig",
          "label": "LowVig.ag",
          "line": 7.0,
          "over_price": -116,
          "under_price": 101,
          "quoted_at": "2026-09-22T16:47:36+00:00"
        },
        {
          "book": "betonlineag",
          "label": "BetOnline.ag",
          "line": 7.0,
          "over_price": -118,
          "under_price": -102,
          "quoted_at": "2026-09-22T16:47:55+00:00"
        },
        {
          "book": "draftkings",
          "label": "DraftKings",
          "line": 7.0,
          "over_price": -120,
          "under_price": -101,
          "quoted_at": "2026-09-22T16:47:54+00:00"
        },
        {
          "book": "williamhill_us",
          "label": "Caesars",
          "line": 7.5,
          "over_price": 107,
          "under_price": -125,
          "quoted_at": "2026-09-22T16:40:34+00:00"
        },
        {
          "book": "betmgm",
          "label": "BetMGM",
          "line": 7.5,
          "over_price": 105,
          "under_price": -125,
          "quoted_at": "2026-09-22T16:47:55+00:00"
        },
        {
          "book": "betus",
          "label": "BetUS",
          "line": 7.0,
          "over_price": -120,
          "under_price": 100,
          "quoted_at": "2026-09-22T16:47:54+00:00"
        },
        {
          "book": "betrivers",
          "label": "BetRivers",
          "line": 7.5,
          "over_price": 100,
          "under_price": -121,
          "quoted_at": "2026-09-22T16:47:55+00:00"
        }
      ],
      "previous_books": {
        "betmgm": 7.5,
        "betonlineag": 7.0,
        "betrivers": 7.5,
        "betus": 7.0,
        "bovada": 7.5,
        "draftkings": 7.0,
        "fanatics": 7.5,
        "fanduel": 7.5,
        "lowvig": 7.0,
        "mybookieag": 7.0,
        "williamhill_us": 7.5
      },
      "change_from": "2026-09-22T16:26:50.754831+00:00",
      "change": 0.0,
      "change_label": "+0 (11 matched books)"
    },
    {
      "id": "total-e1693becb4cbacb4b30e46c1c960d9a5",
      "sport": "MLB",
      "game": "Washington Nationals @ Detroit Tigers",
      "commence_time": "2026-09-22T22:41:00+00:00",
      "start_label": "Tue 06:41 PM ET",
      "median": 8.5,
      "minimum": 8.0,
      "maximum": 8.5,
      "books": {
        "fanduel": 8.5,
        "fanatics": 8.5,
        "mybookieag": 8.5,
        "bovada": 8.0,
        "lowvig": 8.5,
        "betonlineag": 8.5,
        "draftkings": 8.0,
        "williamhill_us": 8.5,
        "betmgm": 8.0,
        "betus": 8.5,
        "betrivers": 8.5
      },
      "quotes": [
        {
          "book": "fanduel",
          "label": "FanDuel",
          "line": 8.5,
          "over_price": 100,
          "under_price": -122,
          "quoted_at": "2026-09-22T16:47:33+00:00"
        },
        {
          "book": "fanatics",
          "label": "Fanatics",
          "line": 8.5,
          "over_price": 100,
          "under_price": -120,
          "quoted_at": "2026-09-22T16:47:33+00:00"
        },
        {
          "book": "mybookieag",
          "label": "MyBookie.ag",
          "line": 8.5,
          "over_price": -104,
          "under_price": -118,
          "quoted_at": "2026-09-22T16:46:30+00:00"
        },
        {
          "book": "bovada",
          "label": "Bovada",
          "line": 8.0,
          "over_price": -120,
          "under_price": 100,
          "quoted_at": "2026-09-22T16:47:13+00:00"
        },
        {
          "book": "lowvig",
          "label": "LowVig.ag",
          "line": 8.5,
          "over_price": 107,
          "under_price": -123,
          "quoted_at": "2026-09-22T16:47:36+00:00"
        },
        {
          "book": "betonlineag",
          "label": "BetOnline.ag",
          "line": 8.5,
          "over_price": 105,
          "under_price": -125,
          "quoted_at": "2026-09-22T16:47:55+00:00"
        },
        {
          "book": "draftkings",
          "label": "DraftKings",
          "line": 8.0,
          "over_price": -115,
          "under_price": -105,
          "quoted_at": "2026-09-22T16:47:54+00:00"
        },
        {
          "book": "williamhill_us",
          "label": "Caesars",
          "line": 8.5,
          "over_price": -103,
          "under_price": -115,
          "quoted_at": "2026-09-22T16:40:34+00:00"
        },
        {
          "book": "betmgm",
          "label": "BetMGM",
          "line": 8.0,
          "over_price": -118,
          "under_price": -102,
          "quoted_at": "2026-09-22T16:47:55+00:00"
        },
        {
          "book": "betus",
          "label": "BetUS",
          "line": 8.5,
          "over_price": 105,
          "under_price": -125,
          "quoted_at": "2026-09-22T16:47:54+00:00"
        },
        {
          "book": "betrivers",
          "label": "BetRivers",
          "line": 8.5,
          "over_price": -105,
          "under_price": -117,
          "quoted_at": "2026-09-22T16:47:55+00:00"
        }
      ],
      "previous_books": {
        "betmgm": 8.0,
        "betonlineag": 8.5,
        "betrivers": 8.5,
        "betus": 8.5,
        "bovada": 8.0,
        "draftkings": 8.0,
        "fanatics": 8.5,
        "fanduel": 8.5,
        "lowvig": 8.5,
        "mybookieag": 8.5,
        "williamhill_us": 8.5
      },
      "change_from": "2026-09-22T16:26:50.754831+00:00",
      "change": 0.0,
      "change_label": "+0 (11 matched books)"
    },
    {
      "id": "total-2ec6c946384087513c61f58aad6e082f",
      "sport": "MLB",
      "game": "Milwaukee Brewers @ Philadelphia Phillies",
      "commence_time": "2026-09-22T22:41:00+00:00",
      "start_label": "Tue 06:41 PM ET",
      "median": 7.0,
      "minimum": 7.0,
      "maximum": 7.5,
      "books": {
        "fanduel": 7.5,
        "fanatics": 7.0,
        "mybookieag": 7.0,
        "betonlineag": 7.5,
        "lowvig": 7.5,
        "bovada": 7.0,
        "betus": 7.0,
        "betmgm": 7.5,
        "draftkings": 7.0,
        "williamhill_us": 7.5,
        "betrivers": 7.0
      },
      "quotes": [
        {
          "book": "fanduel",
          "label": "FanDuel",
          "line": 7.5,
          "over_price": 104,
          "under_price": -128,
          "quoted_at": "2026-09-22T16:47:33+00:00"
        },
        {
          "book": "fanatics",
          "label": "Fanatics",
          "line": 7.0,
          "over_price": -120,
          "under_price": 100,
          "quoted_at": "2026-09-22T16:47:33+00:00"
        },
        {
          "book": "mybookieag",
          "label": "MyBookie.ag",
          "line": 7.0,
          "over_price": -119,
          "under_price": -103,
          "quoted_at": "2026-09-22T16:46:30+00:00"
        },
        {
          "book": "betonlineag",
          "label": "BetOnline.ag",
          "line": 7.5,
          "over_price": 110,
          "under_price": -130,
          "quoted_at": "2026-09-22T16:47:55+00:00"
        },
        {
          "book": "lowvig",
          "label": "LowVig.ag",
          "line": 7.5,
          "over_price": 112,
          "under_price": -128,
          "quoted_at": "2026-09-22T16:47:36+00:00"
        },
        {
          "book": "bovada",
          "label": "Bovada",
          "line": 7.0,
          "over_price": -120,
          "under_price": 100,
          "quoted_at": "2026-09-22T16:47:13+00:00"
        },
        {
          "book": "betus",
          "label": "BetUS",
          "line": 7.0,
          "over_price": -120,
          "under_price": 100,
          "quoted_at": "2026-09-22T16:47:54+00:00"
        },
        {
          "book": "betmgm",
          "label": "BetMGM",
          "line": 7.5,
          "over_price": 105,
          "under_price": -125,
          "quoted_at": "2026-09-22T16:47:55+00:00"
        },
        {
          "book": "draftkings",
          "label": "DraftKings",
          "line": 7.0,
          "over_price": -122,
          "under_price": 102,
          "quoted_at": "2026-09-22T16:47:54+00:00"
        },
        {
          "book": "williamhill_us",
          "label": "Caesars",
          "line": 7.5,
          "over_price": 106,
          "under_price": -125,
          "quoted_at": "2026-09-22T16:40:34+00:00"
        },
        {
          "book": "betrivers",
          "label": "BetRivers",
          "line": 7.0,
          "over_price": -132,
          "under_price": -108,
          "quoted_at": "2026-09-22T16:47:55+00:00"
        }
      ],
      "previous_books": {
        "betmgm": 7.5,
        "betonlineag": 7.5,
        "betrivers": 7.0,
        "betus": 7.0,
        "bovada": 7.0,
        "draftkings": 7.0,
        "fanatics": 7.0,
        "fanduel": 7.5,
        "lowvig": 7.5,
        "mybookieag": 7.0,
        "williamhill_us": 7.5
      },
      "change_from": "2026-09-22T16:26:50.754831+00:00",
      "change": 0.0,
      "change_label": "+0 (11 matched books)"
    },
    {
      "id": "total-388cb001ef45b493163b9d37cf60f606",
      "sport": "MLB",
      "game": "St. Louis Cardinals @ Pittsburgh Pirates",
      "commence_time": "2026-09-22T22:41:00+00:00",
      "start_label": "Tue 06:41 PM ET",
      "median": 7.0,
      "minimum": 7.0,
      "maximum": 7.5,
      "books": {
        "fanduel": 7.5,
        "fanatics": 7.0,
        "mybookieag": 7.0,
        "lowvig": 7.0,
        "betonlineag": 7.0,
        "bovada": 7.0,
        "betus": 7.0,
        "betmgm": 7.5,
        "draftkings": 7.0,
        "williamhill_us": 7.5,
        "betrivers": 7.0
      },
      "quotes": [
        {
          "book": "fanduel",
          "label": "FanDuel",
          "line": 7.5,
          "over_price": 110,
          "under_price": -134,
          "quoted_at": "2026-09-22T16:47:33+00:00"
        },
        {
          "book": "fanatics",
          "label": "Fanatics",
          "line": 7.0,
          "over_price": -120,
          "under_price": 100,
          "quoted_at": "2026-09-22T16:47:33+00:00"
        },
        {
          "book": "mybookieag",
          "label": "MyBookie.ag",
          "line": 7.0,
          "over_price": -120,
          "under_price": -102,
          "quoted_at": "2026-09-22T16:46:30+00:00"
        },
        {
          "book": "lowvig",
          "label": "LowVig.ag",
          "line": 7.0,
          "over_price": -118,
          "under_price": 103,
          "quoted_at": "2026-09-22T16:47:36+00:00"
        },
        {
          "book": "betonlineag",
          "label": "BetOnline.ag",
          "line": 7.0,
          "over_price": -120,
          "under_price": 100,
          "quoted_at": "2026-09-22T16:47:55+00:00"
        },
        {
          "book": "bovada",
          "label": "Bovada",
          "line": 7.0,
          "over_price": -120,
          "under_price": 100,
          "quoted_at": "2026-09-22T16:47:13+00:00"
        },
        {
          "book": "betus",
          "label": "BetUS",
          "line": 7.0,
          "over_price": -120,
          "under_price": 100,
          "quoted_at": "2026-09-22T16:47:54+00:00"
        },
        {
          "book": "betmgm",
          "label": "BetMGM",
          "line": 7.5,
          "over_price": 105,
          "under_price": -130,
          "quoted_at": "2026-09-22T16:47:55+00:00"
        },
        {
          "book": "draftkings",
          "label": "DraftKings",
          "line": 7.0,
          "over_price": -118,
          "under_price": -102,
          "quoted_at": "2026-09-22T16:47:54+00:00"
        },
        {
          "book": "williamhill_us",
          "label": "Caesars",
          "line": 7.5,
          "over_price": 109,
          "under_price": -129,
          "quoted_at": "2026-09-22T16:40:34+00:00"
        },
        {
          "book": "betrivers",
          "label": "BetRivers",
          "line": 7.0,
          "over_price": -127,
          "under_price": -112,
          "quoted_at": "2026-09-22T16:47:55+00:00"
        }
      ],
      "previous_books": {
        "betmgm": 7.5,
        "betonlineag": 7.0,
        "betrivers": 7.0,
        "betus": 7.0,
        "bovada": 7.0,
        "draftkings": 7.0,
        "fanatics": 7.0,
        "fanduel": 7.5,
        "lowvig": 7.0,
        "mybookieag": 7.0,
        "williamhill_us": 7.5
      },
      "change_from": "2026-09-22T16:26:50.754831+00:00",
      "change": 0.0,
      "change_label": "+0 (11 matched books)"
    },
    {
      "id": "total-3b4ceeb7bb4bee993b6876fead12eeba",
      "sport": "MLB",
      "game": "Cleveland Guardians @ Boston Red Sox",
      "commence_time": "2026-09-22T22:46:00+00:00",
      "start_label": "Tue 06:46 PM ET",
      "median": 6.5,
      "minimum": 6.5,
      "maximum": 6.5,
      "books": {
        "fanduel": 6.5,
        "mybookieag": 6.5,
        "fanatics": 6.5,
        "bovada": 6.5,
        "lowvig": 6.5,
        "betonlineag": 6.5,
        "betus": 6.5,
        "betmgm": 6.5,
        "draftkings": 6.5,
        "williamhill_us": 6.5,
        "betrivers": 6.5
      },
      "quotes": [
        {
          "book": "fanduel",
          "label": "FanDuel",
          "line": 6.5,
          "over_price": -115,
          "under_price": -105,
          "quoted_at": "2026-09-22T16:47:33+00:00"
        },
        {
          "book": "mybookieag",
          "label": "MyBookie.ag",
          "line": 6.5,
          "over_price": -111,
          "under_price": -110,
          "quoted_at": "2026-09-22T16:46:30+00:00"
        },
        {
          "book": "fanatics",
          "label": "Fanatics",
          "line": 6.5,
          "over_price": -115,
          "under_price": -105,
          "quoted_at": "2026-09-22T16:47:33+00:00"
        },
        {
          "book": "bovada",
          "label": "Bovada",
          "line": 6.5,
          "over_price": -110,
          "under_price": -110,
          "quoted_at": "2026-09-22T16:47:13+00:00"
        },
        {
          "book": "lowvig",
          "label": "LowVig.ag",
          "line": 6.5,
          "over_price": -113,
          "under_price": -102,
          "quoted_at": "2026-09-22T16:47:36+00:00"
        },
        {
          "book": "betonlineag",
          "label": "BetOnline.ag",
          "line": 6.5,
          "over_price": -115,
          "under_price": -105,
          "quoted_at": "2026-09-22T16:47:55+00:00"
        },
        {
          "book": "betus",
          "label": "BetUS",
          "line": 6.5,
          "over_price": -105,
          "under_price": -115,
          "quoted_at": "2026-09-22T16:47:54+00:00"
        },
        {
          "book": "betmgm",
          "label": "BetMGM",
          "line": 6.5,
          "over_price": -118,
          "under_price": -102,
          "quoted_at": "2026-09-22T16:47:55+00:00"
        },
        {
          "book": "draftkings",
          "label": "DraftKings",
          "line": 6.5,
          "over_price": -112,
          "under_price": -107,
          "quoted_at": "2026-09-22T16:47:54+00:00"
        },
        {
          "book": "williamhill_us",
          "label": "Caesars",
          "line": 6.5,
          "over_price": -117,
          "under_price": -102,
          "quoted_at": "2026-09-22T16:40:34+00:00"
        },
        {
          "book": "betrivers",
          "label": "BetRivers",
          "line": 6.5,
          "over_price": -124,
          "under_price": 102,
          "quoted_at": "2026-09-22T16:47:55+00:00"
        }
      ],
      "previous_books": {
        "betmgm": 6.5,
        "betonlineag": 6.5,
        "betrivers": 6.5,
        "betus": 6.5,
        "bovada": 6.5,
        "draftkings": 6.5,
        "fanatics": 6.5,
        "fanduel": 6.5,
        "lowvig": 6.5,
        "mybookieag": 6.5,
        "williamhill_us": 6.5
      },
      "change_from": "2026-09-22T16:26:50.754831+00:00",
      "change": 0.0,
      "change_label": "+0 (11 matched books)"
    },
    {
      "id": "total-574050c10d1acc2da7baf72384eeaa11",
      "sport": "MLB",
      "game": "Tampa Bay Rays @ New York Yankees",
      "commence_time": "2026-09-22T23:06:00+00:00",
      "start_label": "Tue 07:06 PM ET",
      "median": 6.5,
      "minimum": 6.5,
      "maximum": 6.5,
      "books": {
        "fanduel": 6.5,
        "fanatics": 6.5,
        "bovada": 6.5,
        "mybookieag": 6.5,
        "lowvig": 6.5,
        "betonlineag": 6.5,
        "betus": 6.5,
        "betmgm": 6.5,
        "draftkings": 6.5,
        "williamhill_us": 6.5,
        "betrivers": 6.5
      },
      "quotes": [
        {
          "book": "fanduel",
          "label": "FanDuel",
          "line": 6.5,
          "over_price": -106,
          "under_price": -114,
          "quoted_at": "2026-09-22T16:47:33+00:00"
        },
        {
          "book": "fanatics",
          "label": "Fanatics",
          "line": 6.5,
          "over_price": -105,
          "under_price": -115,
          "quoted_at": "2026-09-22T16:47:33+00:00"
        },
        {
          "book": "bovada",
          "label": "Bovada",
          "line": 6.5,
          "over_price": -105,
          "under_price": -115,
          "quoted_at": "2026-09-22T16:47:13+00:00"
        },
        {
          "book": "mybookieag",
          "label": "MyBookie.ag",
          "line": 6.5,
          "over_price": -104,
          "under_price": -117,
          "quoted_at": "2026-09-22T16:46:30+00:00"
        },
        {
          "book": "lowvig",
          "label": "LowVig.ag",
          "line": 6.5,
          "over_price": -102,
          "under_price": -113,
          "quoted_at": "2026-09-22T16:47:36+00:00"
        },
        {
          "book": "betonlineag",
          "label": "BetOnline.ag",
          "line": 6.5,
          "over_price": -105,
          "under_price": -115,
          "quoted_at": "2026-09-22T16:47:55+00:00"
        },
        {
          "book": "betus",
          "label": "BetUS",
          "line": 6.5,
          "over_price": -105,
          "under_price": -115,
          "quoted_at": "2026-09-22T16:47:54+00:00"
        },
        {
          "book": "betmgm",
          "label": "BetMGM",
          "line": 6.5,
          "over_price": -105,
          "under_price": -115,
          "quoted_at": "2026-09-22T16:47:55+00:00"
        },
        {
          "book": "draftkings",
          "label": "DraftKings",
          "line": 6.5,
          "over_price": -107,
          "under_price": -112,
          "quoted_at": "2026-09-22T16:47:54+00:00"
        },
        {
          "book": "williamhill_us",
          "label": "Caesars",
          "line": 6.5,
          "over_price": -109,
          "under_price": -108,
          "quoted_at": "2026-09-22T16:40:34+00:00"
        },
        {
          "book": "betrivers",
          "label": "BetRivers",
          "line": 6.5,
          "over_price": -105,
          "under_price": -117,
          "quoted_at": "2026-09-22T16:47:55+00:00"
        }
      ],
      "previous_books": {
        "betmgm": 6.5,
        "betonlineag": 6.5,
        "betrivers": 6.5,
        "betus": 6.5,
        "bovada": 6.5,
        "draftkings": 6.5,
        "fanatics": 6.5,
        "fanduel": 6.5,
        "lowvig": 6.5,
        "mybookieag": 6.5,
        "williamhill_us": 6.5
      },
      "change_from": "2026-09-22T16:26:50.754831+00:00",
      "change": 0.0,
      "change_label": "+0 (11 matched books)"
    },
    {
      "id": "total-0c17c76059d99e5bb249df6a7c540127",
      "sport": "MLB",
      "game": "Cincinnati Reds @ Atlanta Braves",
      "commence_time": "2026-09-22T23:16:00+00:00",
      "start_label": "Tue 07:16 PM ET",
      "median": 9.0,
      "minimum": 9.0,
      "maximum": 9.5,
      "books": {
        "fanduel": 9.5,
        "fanatics": 9.0,
        "mybookieag": 9.0,
        "betonlineag": 9.0,
        "lowvig": 9.0,
        "bovada": 9.0,
        "betus": 9.0,
        "betmgm": 9.5,
        "draftkings": 9.5,
        "williamhill_us": 9.5,
        "betrivers": 9.0
      },
      "quotes": [
        {
          "book": "fanduel",
          "label": "FanDuel",
          "line": 9.5,
          "over_price": 106,
          "under_price": -130,
          "quoted_at": "2026-09-22T16:47:33+00:00"
        },
        {
          "book": "fanatics",
          "label": "Fanatics",
          "line": 9.0,
          "over_price": -120,
          "under_price": 100,
          "quoted_at": "2026-09-22T16:47:33+00:00"
        },
        {
          "book": "mybookieag",
          "label": "MyBookie.ag",
          "line": 9.0,
          "over_price": -119,
          "under_price": -103,
          "quoted_at": "2026-09-22T16:46:30+00:00"
        },
        {
          "book": "betonlineag",
          "label": "BetOnline.ag",
          "line": 9.0,
          "over_price": -123,
          "under_price": 103,
          "quoted_at": "2026-09-22T16:47:55+00:00"
        },
        {
          "book": "lowvig",
          "label": "LowVig.ag",
          "line": 9.0,
          "over_price": -121,
          "under_price": 106,
          "quoted_at": "2026-09-22T16:47:36+00:00"
        },
        {
          "book": "bovada",
          "label": "Bovada",
          "line": 9.0,
          "over_price": -120,
          "under_price": 100,
          "quoted_at": "2026-09-22T16:47:13+00:00"
        },
        {
          "book": "betus",
          "label": "BetUS",
          "line": 9.0,
          "over_price": -120,
          "under_price": 100,
          "quoted_at": "2026-09-22T16:47:54+00:00"
        },
        {
          "book": "betmgm",
          "label": "BetMGM",
          "line": 9.5,
          "over_price": 100,
          "under_price": -120,
          "quoted_at": "2026-09-22T16:47:55+00:00"
        },
        {
          "book": "draftkings",
          "label": "DraftKings",
          "line": 9.5,
          "over_price": 100,
          "under_price": -121,
          "quoted_at": "2026-09-22T16:47:54+00:00"
        },
        {
          "book": "williamhill_us",
          "label": "Caesars",
          "line": 9.5,
          "over_price": 105,
          "under_price": -124,
          "quoted_at": "2026-09-22T16:40:34+00:00"
        },
        {
          "book": "betrivers",
          "label": "BetRivers",
          "line": 9.0,
          "over_price": -129,
          "under_price": -110,
          "quoted_at": "2026-09-22T16:47:55+00:00"
        }
      ],
      "previous_books": {
        "betmgm": 9.0,
        "betonlineag": 9.0,
        "betrivers": 9.0,
        "betus": 9.0,
        "bovada": 9.0,
        "draftkings": 9.0,
        "fanatics": 9.0,
        "fanduel": 9.5,
        "lowvig": 9.0,
        "mybookieag": 9.0,
        "williamhill_us": 9.5
      },
      "change_from": "2026-09-22T16:26:50.754831+00:00",
      "change": 0.0,
      "change_label": "+0 (11 matched books)"
    },
    {
      "id": "total-82b37a47daa08ef041c888d37b999303",
      "sport": "MLB",
      "game": "Miami Marlins @ Chicago Cubs",
      "commence_time": "2026-09-22T23:40:00+00:00",
      "start_label": "Tue 07:40 PM ET",
      "median": 6.5,
      "minimum": 6.5,
      "maximum": 7.0,
      "books": {
        "draftkings": 6.5,
        "williamhill_us": 6.5,
        "bovada": 6.5,
        "fanatics": 6.5,
        "betonlineag": 6.5,
        "lowvig": 6.5,
        "betmgm": 6.5,
        "mybookieag": 6.5,
        "betrivers": 7.0,
        "betus": 6.5,
        "fanduel": 6.5
      },
      "quotes": [
        {
          "book": "draftkings",
          "label": "DraftKings",
          "line": 6.5,
          "over_price": -119,
          "under_price": -101,
          "quoted_at": "2026-09-22T16:47:54+00:00"
        },
        {
          "book": "williamhill_us",
          "label": "Caesars",
          "line": 6.5,
          "over_price": -118,
          "under_price": 100,
          "quoted_at": "2026-09-22T16:40:34+00:00"
        },
        {
          "book": "bovada",
          "label": "Bovada",
          "line": 6.5,
          "over_price": -115,
          "under_price": -105,
          "quoted_at": "2026-09-22T16:47:13+00:00"
        },
        {
          "book": "fanatics",
          "label": "Fanatics",
          "line": 6.5,
          "over_price": -115,
          "under_price": -105,
          "quoted_at": "2026-09-22T16:47:33+00:00"
        },
        {
          "book": "betonlineag",
          "label": "BetOnline.ag",
          "line": 6.5,
          "over_price": -117,
          "under_price": -103,
          "quoted_at": "2026-09-22T16:47:55+00:00"
        },
        {
          "book": "lowvig",
          "label": "LowVig.ag",
          "line": 6.5,
          "over_price": -115,
          "under_price": 100,
          "quoted_at": "2026-09-22T16:47:36+00:00"
        },
        {
          "book": "betmgm",
          "label": "BetMGM",
          "line": 6.5,
          "over_price": -118,
          "under_price": -102,
          "quoted_at": "2026-09-22T16:47:55+00:00"
        },
        {
          "book": "mybookieag",
          "label": "MyBookie.ag",
          "line": 6.5,
          "over_price": -120,
          "under_price": -102,
          "quoted_at": "2026-09-22T16:46:30+00:00"
        },
        {
          "book": "betrivers",
          "label": "BetRivers",
          "line": 7.0,
          "over_price": -110,
          "under_price": -130,
          "quoted_at": "2026-09-22T16:47:55+00:00"
        },
        {
          "book": "betus",
          "label": "BetUS",
          "line": 6.5,
          "over_price": -120,
          "under_price": 100,
          "quoted_at": "2026-09-22T16:47:54+00:00"
        },
        {
          "book": "fanduel",
          "label": "FanDuel",
          "line": 6.5,
          "over_price": -120,
          "under_price": -102,
          "quoted_at": "2026-09-22T16:47:33+00:00"
        }
      ],
      "previous_books": {
        "betmgm": 6.5,
        "betonlineag": 6.5,
        "betrivers": 7.0,
        "betus": 6.5,
        "bovada": 6.5,
        "draftkings": 6.5,
        "fanatics": 6.5,
        "fanduel": 6.5,
        "lowvig": 6.5,
        "mybookieag": 6.5,
        "williamhill_us": 6.5
      },
      "change_from": "2026-09-22T16:26:50.754831+00:00",
      "change": 0.0,
      "change_label": "+0 (11 matched books)"
    },
    {
      "id": "total-ebb664c5095200280fa1b15540c2c88b",
      "sport": "MLB",
      "game": "Chicago White Sox @ Kansas City Royals",
      "commence_time": "2026-09-22T23:41:00+00:00",
      "start_label": "Tue 07:41 PM ET",
      "median": 8.0,
      "minimum": 7.5,
      "maximum": 8.0,
      "books": {
        "fanduel": 7.5,
        "mybookieag": 8.0,
        "bovada": 7.5,
        "fanatics": 7.5,
        "lowvig": 8.0,
        "betonlineag": 8.0,
        "betus": 8.0,
        "betmgm": 8.0,
        "draftkings": 8.0,
        "williamhill_us": 7.5,
        "betrivers": 8.0
      },
      "quotes": [
        {
          "book": "fanduel",
          "label": "FanDuel",
          "line": 7.5,
          "over_price": -120,
          "under_price": -102,
          "quoted_at": "2026-09-22T16:47:33+00:00"
        },
        {
          "book": "mybookieag",
          "label": "MyBookie.ag",
          "line": 8.0,
          "over_price": -104,
          "under_price": -118,
          "quoted_at": "2026-09-22T16:46:30+00:00"
        },
        {
          "book": "bovada",
          "label": "Bovada",
          "line": 7.5,
          "over_price": -120,
          "under_price": 100,
          "quoted_at": "2026-09-22T16:47:13+00:00"
        },
        {
          "book": "fanatics",
          "label": "Fanatics",
          "line": 7.5,
          "over_price": -120,
          "under_price": 100,
          "quoted_at": "2026-09-22T16:47:33+00:00"
        },
        {
          "book": "lowvig",
          "label": "LowVig.ag",
          "line": 8.0,
          "over_price": -102,
          "under_price": -113,
          "quoted_at": "2026-09-22T16:47:36+00:00"
        },
        {
          "book": "betonlineag",
          "label": "BetOnline.ag",
          "line": 8.0,
          "over_price": -105,
          "under_price": -115,
          "quoted_at": "2026-09-22T16:47:55+00:00"
        },
        {
          "book": "betus",
          "label": "BetUS",
          "line": 8.0,
          "over_price": -105,
          "under_price": -115,
          "quoted_at": "2026-09-22T16:47:54+00:00"
        },
        {
          "book": "betmgm",
          "label": "BetMGM",
          "line": 8.0,
          "over_price": 100,
          "under_price": -120,
          "quoted_at": "2026-09-22T16:47:55+00:00"
        },
        {
          "book": "draftkings",
          "label": "DraftKings",
          "line": 8.0,
          "over_price": -105,
          "under_price": -115,
          "quoted_at": "2026-09-22T16:47:54+00:00"
        },
        {
          "book": "williamhill_us",
          "label": "Caesars",
          "line": 7.5,
          "over_price": -127,
          "under_price": 108,
          "quoted_at": "2026-09-22T16:40:34+00:00"
        },
        {
          "book": "betrivers",
          "label": "BetRivers",
          "line": 8.0,
          "over_price": -122,
          "under_price": -117,
          "quoted_at": "2026-09-22T16:47:55+00:00"
        }
      ],
      "previous_books": {
        "betmgm": 8.0,
        "betonlineag": 8.0,
        "betrivers": 8.0,
        "betus": 8.0,
        "bovada": 7.5,
        "draftkings": 8.0,
        "fanatics": 7.5,
        "fanduel": 7.5,
        "lowvig": 8.0,
        "mybookieag": 8.0,
        "williamhill_us": 7.5
      },
      "change_from": "2026-09-22T16:26:50.754831+00:00",
      "change": 0.0,
      "change_label": "+0 (11 matched books)"
    },
    {
      "id": "total-1cfde197827ecee7feb17929bf32793b",
      "sport": "MLB",
      "game": "New York Mets @ Texas Rangers",
      "commence_time": "2026-09-23T00:05:00+00:00",
      "start_label": "Tue 08:05 PM ET",
      "median": 8.0,
      "minimum": 7.5,
      "maximum": 8.5,
      "books": {
        "draftkings": 8.0,
        "fanatics": 8.0,
        "betonlineag": 7.5,
        "lowvig": 7.5,
        "mybookieag": 8.0,
        "fanduel": 8.5,
        "williamhill_us": 7.5,
        "betus": 8.0,
        "betrivers": 8.0,
        "betmgm": 8.0,
        "bovada": 8.0
      },
      "quotes": [
        {
          "book": "draftkings",
          "label": "DraftKings",
          "line": 8.0,
          "over_price": -108,
          "under_price": -112,
          "quoted_at": "2026-09-22T16:47:54+00:00"
        },
        {
          "book": "fanatics",
          "label": "Fanatics",
          "line": 8.0,
          "over_price": -110,
          "under_price": -110,
          "quoted_at": "2026-09-22T16:47:33+00:00"
        },
        {
          "book": "betonlineag",
          "label": "BetOnline.ag",
          "line": 7.5,
          "over_price": -122,
          "under_price": 102,
          "quoted_at": "2026-09-22T16:47:55+00:00"
        },
        {
          "book": "lowvig",
          "label": "LowVig.ag",
          "line": 7.5,
          "over_price": -120,
          "under_price": 105,
          "quoted_at": "2026-09-22T16:47:36+00:00"
        },
        {
          "book": "mybookieag",
          "label": "MyBookie.ag",
          "line": 8.0,
          "over_price": -107,
          "under_price": -114,
          "quoted_at": "2026-09-22T16:46:30+00:00"
        },
        {
          "book": "fanduel",
          "label": "FanDuel",
          "line": 8.5,
          "over_price": 104,
          "under_price": -128,
          "quoted_at": "2026-09-22T16:47:33+00:00"
        },
        {
          "book": "williamhill_us",
          "label": "Caesars",
          "line": 7.5,
          "over_price": -121,
          "under_price": 103,
          "quoted_at": "2026-09-22T16:40:34+00:00"
        },
        {
          "book": "betus",
          "label": "BetUS",
          "line": 8.0,
          "over_price": -105,
          "under_price": -115,
          "quoted_at": "2026-09-22T16:47:54+00:00"
        },
        {
          "book": "betrivers",
          "label": "BetRivers",
          "line": 8.0,
          "over_price": -115,
          "under_price": -124,
          "quoted_at": "2026-09-22T16:47:55+00:00"
        },
        {
          "book": "betmgm",
          "label": "BetMGM",
          "line": 8.0,
          "over_price": -110,
          "under_price": -110,
          "quoted_at": "2026-09-22T16:47:55+00:00"
        },
        {
          "book": "bovada",
          "label": "Bovada",
          "line": 8.0,
          "over_price": -110,
          "under_price": -110,
          "quoted_at": "2026-09-22T16:47:13+00:00"
        }
      ],
      "previous_books": {
        "betmgm": 8.0,
        "betonlineag": 7.5,
        "betrivers": 8.0,
        "betus": 8.0,
        "bovada": 8.0,
        "draftkings": 8.0,
        "fanatics": 8.0,
        "fanduel": 8.5,
        "lowvig": 7.5,
        "mybookieag": 8.0,
        "williamhill_us": 7.5
      },
      "change_from": "2026-09-22T16:26:50.754831+00:00",
      "change": 0.0,
      "change_label": "+0 (11 matched books)"
    },
    {
      "id": "total-afbac30624ec674873fd96ac159f69ad",
      "sport": "MLB",
      "game": "Arizona Diamondbacks @ Colorado Rockies",
      "commence_time": "2026-09-23T00:41:00+00:00",
      "start_label": "Tue 08:41 PM ET",
      "median": 11.0,
      "minimum": 10.5,
      "maximum": 11.0,
      "books": {
        "fanduel": 10.5,
        "mybookieag": 11.0,
        "lowvig": 11.0,
        "betonlineag": 11.0,
        "bovada": 11.0,
        "betus": 11.0,
        "betmgm": 11.0,
        "draftkings": 11.0,
        "fanatics": 11.0,
        "williamhill_us": 10.5,
        "betrivers": 11.0
      },
      "quotes": [
        {
          "book": "fanduel",
          "label": "FanDuel",
          "line": 10.5,
          "over_price": -132,
          "under_price": 108,
          "quoted_at": "2026-09-22T16:47:33+00:00"
        },
        {
          "book": "mybookieag",
          "label": "MyBookie.ag",
          "line": 11.0,
          "over_price": -106,
          "under_price": -115,
          "quoted_at": "2026-09-22T16:46:30+00:00"
        },
        {
          "book": "lowvig",
          "label": "LowVig.ag",
          "line": 11.0,
          "over_price": -101,
          "under_price": -114,
          "quoted_at": "2026-09-22T16:47:36+00:00"
        },
        {
          "book": "betonlineag",
          "label": "BetOnline.ag",
          "line": 11.0,
          "over_price": -104,
          "under_price": -116,
          "quoted_at": "2026-09-22T16:47:55+00:00"
        },
        {
          "book": "bovada",
          "label": "Bovada",
          "line": 11.0,
          "over_price": -110,
          "under_price": -110,
          "quoted_at": "2026-09-22T16:47:13+00:00"
        },
        {
          "book": "betus",
          "label": "BetUS",
          "line": 11.0,
          "over_price": -105,
          "under_price": -115,
          "quoted_at": "2026-09-22T16:47:54+00:00"
        },
        {
          "book": "betmgm",
          "label": "BetMGM",
          "line": 11.0,
          "over_price": 100,
          "under_price": -120,
          "quoted_at": "2026-09-22T16:47:55+00:00"
        },
        {
          "book": "draftkings",
          "label": "DraftKings",
          "line": 11.0,
          "over_price": -105,
          "under_price": -115,
          "quoted_at": "2026-09-22T16:47:54+00:00"
        },
        {
          "book": "fanatics",
          "label": "Fanatics",
          "line": 11.0,
          "over_price": -105,
          "under_price": -115,
          "quoted_at": "2026-09-22T16:47:33+00:00"
        },
        {
          "book": "williamhill_us",
          "label": "Caesars",
          "line": 10.5,
          "over_price": -130,
          "under_price": 110,
          "quoted_at": "2026-09-22T16:40:34+00:00"
        },
        {
          "book": "betrivers",
          "label": "BetRivers",
          "line": 11.0,
          "over_price": -122,
          "under_price": -117,
          "quoted_at": "2026-09-22T16:47:55+00:00"
        }
      ],
      "previous_books": {
        "betmgm": 11.0,
        "betonlineag": 11.0,
        "betrivers": 11.0,
        "betus": 11.0,
        "bovada": 11.0,
        "draftkings": 11.0,
        "fanatics": 11.0,
        "fanduel": 10.5,
        "lowvig": 11.0,
        "mybookieag": 11.0,
        "williamhill_us": 10.5
      },
      "change_from": "2026-09-22T16:26:50.754831+00:00",
      "change": 0.0,
      "change_label": "+0 (11 matched books)"
    },
    {
      "id": "total-0ae15942e1f4c4657b06458868afbf96",
      "sport": "MLB",
      "game": "Los Angeles Angels @ Athletics",
      "commence_time": "2026-09-23T01:41:00+00:00",
      "start_label": "Tue 09:41 PM ET",
      "median": 9.5,
      "minimum": 9.5,
      "maximum": 9.5,
      "books": {
        "fanduel": 9.5,
        "mybookieag": 9.5,
        "bovada": 9.5,
        "lowvig": 9.5,
        "betonlineag": 9.5,
        "betus": 9.5,
        "draftkings": 9.5,
        "fanatics": 9.5,
        "betrivers": 9.5,
        "betmgm": 9.5,
        "williamhill_us": 9.5
      },
      "quotes": [
        {
          "book": "fanduel",
          "label": "FanDuel",
          "line": 9.5,
          "over_price": -104,
          "under_price": -118,
          "quoted_at": "2026-09-22T16:47:33+00:00"
        },
        {
          "book": "mybookieag",
          "label": "MyBookie.ag",
          "line": 9.5,
          "over_price": -104,
          "under_price": -118,
          "quoted_at": "2026-09-22T16:46:30+00:00"
        },
        {
          "book": "bovada",
          "label": "Bovada",
          "line": 9.5,
          "over_price": -110,
          "under_price": -110,
          "quoted_at": "2026-09-22T16:47:13+00:00"
        },
        {
          "book": "lowvig",
          "label": "LowVig.ag",
          "line": 9.5,
          "over_price": 101,
          "under_price": -116,
          "quoted_at": "2026-09-22T16:47:36+00:00"
        },
        {
          "book": "betonlineag",
          "label": "BetOnline.ag",
          "line": 9.5,
          "over_price": -102,
          "under_price": -118,
          "quoted_at": "2026-09-22T16:47:55+00:00"
        },
        {
          "book": "betus",
          "label": "BetUS",
          "line": 9.5,
          "over_price": 100,
          "under_price": -120,
          "quoted_at": "2026-09-22T16:47:54+00:00"
        },
        {
          "book": "draftkings",
          "label": "DraftKings",
          "line": 9.5,
          "over_price": -102,
          "under_price": -118,
          "quoted_at": "2026-09-22T16:47:54+00:00"
        },
        {
          "book": "fanatics",
          "label": "Fanatics",
          "line": 9.5,
          "over_price": -105,
          "under_price": -115,
          "quoted_at": "2026-09-22T16:47:33+00:00"
        },
        {
          "book": "betrivers",
          "label": "BetRivers",
          "line": 9.5,
          "over_price": -104,
          "under_price": -118,
          "quoted_at": "2026-09-22T16:47:55+00:00"
        },
        {
          "book": "betmgm",
          "label": "BetMGM",
          "line": 9.5,
          "over_price": -102,
          "under_price": -118,
          "quoted_at": "2026-09-22T16:47:55+00:00"
        },
        {
          "book": "williamhill_us",
          "label": "Caesars",
          "line": 9.5,
          "over_price": 101,
          "under_price": -118,
          "quoted_at": "2026-09-22T16:40:34+00:00"
        }
      ],
      "previous_books": {
        "betmgm": 9.5,
        "betonlineag": 9.5,
        "betrivers": 9.5,
        "betus": 9.5,
        "bovada": 9.5,
        "draftkings": 9.5,
        "fanatics": 9.5,
        "fanduel": 9.5,
        "lowvig": 9.5,
        "mybookieag": 9.5,
        "williamhill_us": 9.5
      },
      "change_from": "2026-09-22T16:26:50.754831+00:00",
      "change": 0.0,
      "change_label": "+0 (11 matched books)"
    },
    {
      "id": "total-a5e0deb6f51b7edebbd82d0eaf966294",
      "sport": "MLB",
      "game": "Houston Astros @ Seattle Mariners",
      "commence_time": "2026-09-23T01:41:00+00:00",
      "start_label": "Tue 09:41 PM ET",
      "median": 7.5,
      "minimum": 7.0,
      "maximum": 7.5,
      "books": {
        "fanduel": 7.5,
        "mybookieag": 7.5,
        "bovada": 7.0,
        "lowvig": 7.5,
        "betonlineag": 7.5,
        "betus": 7.0,
        "betmgm": 7.5,
        "draftkings": 7.5,
        "fanatics": 7.0,
        "williamhill_us": 7.5,
        "betrivers": 7.0
      },
      "quotes": [
        {
          "book": "fanduel",
          "label": "FanDuel",
          "line": 7.5,
          "over_price": 104,
          "under_price": -128,
          "quoted_at": "2026-09-22T16:47:33+00:00"
        },
        {
          "book": "mybookieag",
          "label": "MyBookie.ag",
          "line": 7.5,
          "over_price": 101,
          "under_price": -123,
          "quoted_at": "2026-09-22T16:46:30+00:00"
        },
        {
          "book": "bovada",
          "label": "Bovada",
          "line": 7.0,
          "over_price": -125,
          "under_price": 105,
          "quoted_at": "2026-09-22T16:47:13+00:00"
        },
        {
          "book": "lowvig",
          "label": "LowVig.ag",
          "line": 7.5,
          "over_price": 106,
          "under_price": -121,
          "quoted_at": "2026-09-22T16:47:36+00:00"
        },
        {
          "book": "betonlineag",
          "label": "BetOnline.ag",
          "line": 7.5,
          "over_price": 103,
          "under_price": -123,
          "quoted_at": "2026-09-22T16:47:55+00:00"
        },
        {
          "book": "betus",
          "label": "BetUS",
          "line": 7.0,
          "over_price": -125,
          "under_price": 105,
          "quoted_at": "2026-09-22T16:47:54+00:00"
        },
        {
          "book": "betmgm",
          "label": "BetMGM",
          "line": 7.5,
          "over_price": 105,
          "under_price": -125,
          "quoted_at": "2026-09-22T16:47:55+00:00"
        },
        {
          "book": "draftkings",
          "label": "DraftKings",
          "line": 7.5,
          "over_price": 104,
          "under_price": -125,
          "quoted_at": "2026-09-22T16:47:54+00:00"
        },
        {
          "book": "fanatics",
          "label": "Fanatics",
          "line": 7.0,
          "over_price": -120,
          "under_price": 100,
          "quoted_at": "2026-09-22T16:47:33+00:00"
        },
        {
          "book": "williamhill_us",
          "label": "Caesars",
          "line": 7.5,
          "over_price": 107,
          "under_price": -127,
          "quoted_at": "2026-09-22T16:40:34+00:00"
        },
        {
          "book": "betrivers",
          "label": "BetRivers",
          "line": 7.0,
          "over_price": -134,
          "under_price": -106,
          "quoted_at": "2026-09-22T16:47:55+00:00"
        }
      ],
      "previous_books": {
        "betmgm": 7.5,
        "betonlineag": 7.5,
        "betrivers": 7.0,
        "betus": 7.0,
        "bovada": 7.0,
        "draftkings": 7.5,
        "fanatics": 7.0,
        "fanduel": 7.5,
        "lowvig": 7.5,
        "mybookieag": 7.0,
        "williamhill_us": 7.5
      },
      "change_from": "2026-09-22T16:26:50.754831+00:00",
      "change": 0.0,
      "change_label": "+0 (11 matched books)"
    },
    {
      "id": "total-81f539754930db6ffbd116ca2d30ee9c",
      "sport": "MLB",
      "game": "Minnesota Twins @ San Francisco Giants",
      "commence_time": "2026-09-23T01:46:00+00:00",
      "start_label": "Tue 09:46 PM ET",
      "median": 7.5,
      "minimum": 7.5,
      "maximum": 7.5,
      "books": {
        "fanduel": 7.5,
        "mybookieag": 7.5,
        "bovada": 7.5,
        "lowvig": 7.5,
        "betonlineag": 7.5,
        "fanatics": 7.5,
        "draftkings": 7.5,
        "williamhill_us": 7.5,
        "betmgm": 7.5,
        "betrivers": 7.5,
        "betus": 7.5
      },
      "quotes": [
        {
          "book": "fanduel",
          "label": "FanDuel",
          "line": 7.5,
          "over_price": -104,
          "under_price": -118,
          "quoted_at": "2026-09-22T16:47:33+00:00"
        },
        {
          "book": "mybookieag",
          "label": "MyBookie.ag",
          "line": 7.5,
          "over_price": -103,
          "under_price": -118,
          "quoted_at": "2026-09-22T16:46:30+00:00"
        },
        {
          "book": "bovada",
          "label": "Bovada",
          "line": 7.5,
          "over_price": 100,
          "under_price": -120,
          "quoted_at": "2026-09-22T16:47:13+00:00"
        },
        {
          "book": "lowvig",
          "label": "LowVig.ag",
          "line": 7.5,
          "over_price": -102,
          "under_price": -113,
          "quoted_at": "2026-09-22T16:47:36+00:00"
        },
        {
          "book": "betonlineag",
          "label": "BetOnline.ag",
          "line": 7.5,
          "over_price": -105,
          "under_price": -115,
          "quoted_at": "2026-09-22T16:47:55+00:00"
        },
        {
          "book": "fanatics",
          "label": "Fanatics",
          "line": 7.5,
          "over_price": -105,
          "under_price": -115,
          "quoted_at": "2026-09-22T16:47:33+00:00"
        },
        {
          "book": "draftkings",
          "label": "DraftKings",
          "line": 7.5,
          "over_price": -103,
          "under_price": -117,
          "quoted_at": "2026-09-22T16:47:54+00:00"
        },
        {
          "book": "williamhill_us",
          "label": "Caesars",
          "line": 7.5,
          "over_price": -103,
          "under_price": -115,
          "quoted_at": "2026-09-22T16:40:34+00:00"
        },
        {
          "book": "betmgm",
          "label": "BetMGM",
          "line": 7.5,
          "over_price": -102,
          "under_price": -118,
          "quoted_at": "2026-09-22T16:47:55+00:00"
        },
        {
          "book": "betrivers",
          "label": "BetRivers",
          "line": 7.5,
          "over_price": -108,
          "under_price": -113,
          "quoted_at": "2026-09-22T16:47:55+00:00"
        },
        {
          "book": "betus",
          "label": "BetUS",
          "line": 7.5,
          "over_price": -105,
          "under_price": -115,
          "quoted_at": "2026-09-22T16:47:54+00:00"
        }
      ],
      "previous_books": {
        "betmgm": 7.5,
        "betonlineag": 7.5,
        "betrivers": 7.5,
        "betus": 7.5,
        "bovada": 7.5,
        "draftkings": 7.5,
        "fanatics": 7.5,
        "fanduel": 7.5,
        "lowvig": 7.5,
        "mybookieag": 7.5,
        "williamhill_us": 7.5
      },
      "change_from": "2026-09-22T16:26:50.754831+00:00",
      "change": 0.0,
      "change_label": "+0 (11 matched books)"
    },
    {
      "id": "total-85b75fcab1b69e0a4e414382b9f1cc7e",
      "sport": "MLB",
      "game": "San Diego Padres @ Los Angeles Dodgers",
      "commence_time": "2026-09-23T02:11:00+00:00",
      "start_label": "Tue 10:11 PM ET",
      "median": 8.5,
      "minimum": 8.0,
      "maximum": 8.5,
      "books": {
        "fanduel": 8.5,
        "fanatics": 8.5,
        "mybookieag": 8.5,
        "williamhill_us": 8.5,
        "bovada": 8.5,
        "draftkings": 8.5,
        "betmgm": 8.5,
        "betrivers": 8.0,
        "betus": 8.0,
        "lowvig": 8.0,
        "betonlineag": 8.0
      },
      "quotes": [
        {
          "book": "fanduel",
          "label": "FanDuel",
          "line": 8.5,
          "over_price": -108,
          "under_price": -112,
          "quoted_at": "2026-09-22T16:47:33+00:00"
        },
        {
          "book": "fanatics",
          "label": "Fanatics",
          "line": 8.5,
          "over_price": -105,
          "under_price": -115,
          "quoted_at": "2026-09-22T16:47:33+00:00"
        },
        {
          "book": "mybookieag",
          "label": "MyBookie.ag",
          "line": 8.5,
          "over_price": -106,
          "under_price": -115,
          "quoted_at": "2026-09-22T16:46:30+00:00"
        },
        {
          "book": "williamhill_us",
          "label": "Caesars",
          "line": 8.5,
          "over_price": 101,
          "under_price": -120,
          "quoted_at": "2026-09-22T16:40:34+00:00"
        },
        {
          "book": "bovada",
          "label": "Bovada",
          "line": 8.5,
          "over_price": -110,
          "under_price": -110,
          "quoted_at": "2026-09-22T16:47:13+00:00"
        },
        {
          "book": "draftkings",
          "label": "DraftKings",
          "line": 8.5,
          "over_price": -105,
          "under_price": -114,
          "quoted_at": "2026-09-22T16:47:54+00:00"
        },
        {
          "book": "betmgm",
          "label": "BetMGM",
          "line": 8.5,
          "over_price": -105,
          "under_price": -115,
          "quoted_at": "2026-09-22T16:47:55+00:00"
        },
        {
          "book": "betrivers",
          "label": "BetRivers",
          "line": 8.0,
          "over_price": -121,
          "under_price": -118,
          "quoted_at": "2026-09-22T16:47:55+00:00"
        },
        {
          "book": "betus",
          "label": "BetUS",
          "line": 8.0,
          "over_price": -120,
          "under_price": 100,
          "quoted_at": "2026-09-22T16:47:54+00:00"
        },
        {
          "book": "lowvig",
          "label": "LowVig.ag",
          "line": 8.0,
          "over_price": -118,
          "under_price": 103,
          "quoted_at": "2026-09-22T16:47:36+00:00"
        },
        {
          "book": "betonlineag",
          "label": "BetOnline.ag",
          "line": 8.0,
          "over_price": -120,
          "under_price": 100,
          "quoted_at": "2026-09-22T16:47:55+00:00"
        }
      ],
      "previous_books": {
        "betmgm": 8.5,
        "betonlineag": 8.0,
        "betrivers": 8.0,
        "betus": 8.0,
        "bovada": 8.5,
        "draftkings": 8.5,
        "fanatics": 8.5,
        "fanduel": 8.5,
        "lowvig": 8.0,
        "mybookieag": 8.5,
        "williamhill_us": 8.5
      },
      "change_from": "2026-09-22T16:26:50.754831+00:00",
      "change": 0.0,
      "change_label": "+0 (11 matched books)"
    }
  ],
  "model_rows": [],
  "model_status": "Independent MLB forecasts available",
  "model_validation": {
    "version": "mlb-v1.0-ffe831160a077d5d-2026-09-21",
    "created_at": "2026-09-22T09:40:48.943503Z",
    "games": 3181,
    "inputs_sha256": "9aac1a942aa788b337a0397c7b1dca5c89fd4c31b2155ffb4a56c9432fabc2fb",
    "sklearn_version": "1.9.1",
    "input_through": "2026-09-21",
    "training_through": "2026-07-23",
    "calibration_through": "2026-08-22",
    "test_start": "2026-08-23",
    "test_end": "2026-09-21",
    "postseason_year": 2025,
    "postseason_training_through": "2025-09-07",
    "postseason_calibration_through": "2025-09-28",
    "regular": {
      "pitcher_strikeouts": {
        "samples": 5110,
        "games": 392,
        "brier": 0.154523,
        "reference_brier": 0.171016,
        "brier_skill": 0.0964,
        "ece": 0.018332,
        "log_loss": 0.472311,
        "passed": true,
        "calibration_bins": [
          {
            "predicted": 0.0488,
            "observed": 0.0448,
            "n": 1094
          },
          {
            "predicted": 0.1316,
            "observed": 0.1281,
            "n": 562
          },
          {
            "predicted": 0.251,
            "observed": 0.2493,
            "n": 746
          },
          {
            "predicted": 0.3527,
            "observed": 0.3916,
            "n": 383
          },
          {
            "predicted": 0.4486,
            "observed": 0.4353,
            "n": 510
          },
          {
            "predicted": 0.5359,
            "observed": 0.6026,
            "n": 312
          },
          {
            "predicted": 0.6584,
            "observed": 0.6958,
            "n": 664
          },
          {
            "predicted": 0.7476,
            "observed": 0.7356,
            "n": 87
          },
          {
            "predicted": 0.8284,
            "observed": 0.8401,
            "n": 494
          },
          {
            "predicted": 0.9299,
            "observed": 0.8837,
            "n": 258
          }
        ],
        "forecasts": 730,
        "mae": 1.7504,
        "mean_prediction": 4.8668,
        "mean_actual": 4.7452,
        "lines": [
          2.5,
          3.5,
          4.5,
          5.5,
          6.5,
          7.5,
          8.5
        ]
      },
      "pitcher_outs": {
        "samples": 2920,
        "games": 392,
        "brier": 0.185473,
        "reference_brier": 0.200999,
        "brier_skill": 0.0772,
        "ece": 0.053806,
        "log_loss": 0.549074,
        "passed": true,
        "calibration_bins": [
          {
            "predicted": 0.0295,
            "observed": 0.0365,
            "n": 137
          },
          {
            "predicted": 0.1696,
            "observed": 0.1345,
            "n": 565
          },
          {
            "predicted": 0.2791,
            "observed": 0.3226,
            "n": 31
          },
          {
            "predicted": 0.3199,
            "observed": 0.2951,
            "n": 471
          },
          {
            "predicted": 0.4749,
            "observed": 0.4085,
            "n": 399
          },
          {
            "predicted": 0.5667,
            "observed": 0.4498,
            "n": 269
          },
          {
            "predicted": 0.6544,
            "observed": 0.5461,
            "n": 152
          },
          {
            "predicted": 0.7457,
            "observed": 0.689,
            "n": 283
          },
          {
            "predicted": 0.8373,
            "observed": 0.7672,
            "n": 451
          },
          {
            "predicted": 0.915,
            "observed": 0.9074,
            "n": 162
          }
        ],
        "forecasts": 730,
        "mae": 2.87,
        "mean_prediction": 15.7561,
        "mean_actual": 15.2384,
        "lines": [
          12.5,
          15.5,
          17.5,
          18.5
        ]
      },
      "batter_hits": {
        "samples": 20424,
        "games": 393,
        "brier": 0.150057,
        "reference_brier": 0.152149,
        "brier_skill": 0.0138,
        "ece": 0.0086,
        "log_loss": 0.458166,
        "passed": true,
        "calibration_bins": [
          {
            "predicted": 0.0468,
            "observed": 0.0492,
            "n": 6750
          },
          {
            "predicted": 0.1555,
            "observed": 0.1639,
            "n": 2825
          },
          {
            "predicted": 0.2439,
            "observed": 0.2511,
            "n": 3739
          },
          {
            "predicted": 0.3144,
            "observed": 0.3552,
            "n": 366
          },
          {
            "predicted": 0.4778,
            "observed": 0.494,
            "n": 579
          },
          {
            "predicted": 0.5815,
            "observed": 0.5906,
            "n": 3346
          },
          {
            "predicted": 0.6435,
            "observed": 0.6619,
            "n": 2585
          },
          {
            "predicted": 0.7251,
            "observed": 0.7037,
            "n": 216
          },
          {
            "predicted": 0.9008,
            "observed": 0.7778,
            "n": 18
          }
        ],
        "forecasts": 6808,
        "mae": 0.6855,
        "mean_prediction": 0.8832,
        "mean_actual": 0.8895,
        "lines": [
          0.5,
          1.5,
          2.5
        ]
      },
      "batter_total_bases": {
        "samples": 27232,
        "games": 393,
        "brier": 0.185892,
        "reference_brier": 0.188444,
        "brier_skill": 0.0135,
        "ece": 0.013378,
        "log_loss": 0.553543,
        "passed": true,
        "calibration_bins": [
          {
            "predicted": 0.0806,
            "observed": 0.0962,
            "n": 1986
          },
          {
            "predicted": 0.1531,
            "observed": 0.162,
            "n": 7913
          },
          {
            "predicted": 0.2364,
            "observed": 0.2463,
            "n": 4819
          },
          {
            "predicted": 0.3499,
            "observed": 0.3714,
            "n": 5461
          },
          {
            "predicted": 0.4759,
            "observed": 0.4772,
            "n": 811
          },
          {
            "predicted": 0.5737,
            "observed": 0.5698,
            "n": 2578
          },
          {
            "predicted": 0.633,
            "observed": 0.6568,
            "n": 3415
          },
          {
            "predicted": 0.7268,
            "observed": 0.7037,
            "n": 243
          },
          {
            "predicted": 0.8318,
            "observed": 0.8333,
            "n": 6
          }
        ],
        "forecasts": 6808,
        "mae": 1.3323,
        "mean_prediction": 1.468,
        "mean_actual": 1.4486,
        "lines": [
          0.5,
          1.5,
          2.5,
          3.5
        ]
      },
      "batter_home_runs": {
        "samples": 6808,
        "games": 393,
        "brier": 0.101692,
        "reference_brier": 0.103041,
        "brier_skill": 0.0131,
        "ece": 0.011061,
        "log_loss": 0.353469,
        "passed": true,
        "calibration_bins": [
          {
            "predicted": 0.0748,
            "observed": 0.0841,
            "n": 3091
          },
          {
            "predicted": 0.1279,
            "observed": 0.1401,
            "n": 3576
          },
          {
            "predicted": 0.214,
            "observed": 0.234,
            "n": 141
          }
        ],
        "forecasts": 6808,
        "mae": 0.2172,
        "mean_prediction": 0.1278,
        "mean_actual": 0.1228,
        "lines": [
          0.5
        ]
      },
      "batter_rbis": {
        "samples": 13616,
        "games": 393,
        "brier": 0.151334,
        "reference_brier": 0.152572,
        "brier_skill": 0.0081,
        "ece": 0.014699,
        "log_loss": 0.471161,
        "passed": true,
        "calibration_bins": [
          {
            "predicted": 0.0781,
            "observed": 0.0862,
            "n": 3366
          },
          {
            "predicted": 0.1153,
            "observed": 0.1271,
            "n": 3571
          },
          {
            "predicted": 0.2662,
            "observed": 0.2858,
            "n": 5031
          },
          {
            "predicted": 0.3268,
            "observed": 0.348,
            "n": 1342
          },
          {
            "predicted": 0.4106,
            "observed": 0.3987,
            "n": 306
          }
        ],
        "forecasts": 6808,
        "mae": 0.6289,
        "mean_prediction": 0.4526,
        "mean_actual": 0.4567,
        "lines": [
          0.5,
          1.5
        ]
      },
      "totals": {
        "samples": 1965,
        "games": 393,
        "brier": 0.232836,
        "reference_brier": 0.230632,
        "brier_skill": -0.0096,
        "ece": 0.060374,
        "log_loss": 0.658441,
        "passed": false,
        "calibration_bins": [
          {
            "predicted": 0.1785,
            "observed": 0.4167,
            "n": 12
          },
          {
            "predicted": 0.2621,
            "observed": 0.3156,
            "n": 263
          },
          {
            "predicted": 0.3484,
            "observed": 0.4041,
            "n": 443
          },
          {
            "predicted": 0.4518,
            "observed": 0.5082,
            "n": 425
          },
          {
            "predicted": 0.548,
            "observed": 0.623,
            "n": 374
          },
          {
            "predicted": 0.6484,
            "observed": 0.7092,
            "n": 337
          },
          {
            "predicted": 0.74,
            "observed": 0.7822,
            "n": 101
          },
          {
            "predicted": 0.8264,
            "observed": 0.8,
            "n": 10
          }
        ],
        "lines": [
          6.5,
          7.5,
          8.5,
          9.5,
          10.5
        ]
      },
      "h2h": {
        "samples": 393,
        "games": 393,
        "brier": 0.250643,
        "reference_brier": 0.25,
        "brier_skill": -0.0026,
        "ece": 0.055285,
        "log_loss": 0.694535,
        "passed": false,
        "calibration_bins": [
          {
            "predicted": 0.284,
            "observed": 0.0,
            "n": 1
          },
          {
            "predicted": 0.3729,
            "observed": 0.5217,
            "n": 23
          },
          {
            "predicted": 0.463,
            "observed": 0.5085,
            "n": 177
          },
          {
            "predicted": 0.5384,
            "observed": 0.5828,
            "n": 163
          },
          {
            "predicted": 0.6228,
            "observed": 0.5357,
            "n": 28
          },
          {
            "predicted": 0.7034,
            "observed": 1.0,
            "n": 1
          }
        ],
        "lines": [
          0
        ]
      },
      "spreads": {
        "samples": 786,
        "games": 393,
        "brier": 0.231448,
        "reference_brier": 0.230708,
        "brier_skill": -0.0032,
        "ece": 0.044789,
        "log_loss": 0.655815,
        "passed": false,
        "calibration_bins": [
          {
            "predicted": 0.1994,
            "observed": 0.0,
            "n": 1
          },
          {
            "predicted": 0.2738,
            "observed": 0.5,
            "n": 22
          },
          {
            "predicted": 0.3625,
            "observed": 0.3584,
            "n": 226
          },
          {
            "predicted": 0.4454,
            "observed": 0.3786,
            "n": 140
          },
          {
            "predicted": 0.5558,
            "observed": 0.6319,
            "n": 163
          },
          {
            "predicted": 0.6392,
            "observed": 0.6667,
            "n": 204
          },
          {
            "predicted": 0.7248,
            "observed": 0.6667,
            "n": 30
          }
        ],
        "lines": [
          -1.5,
          1.5
        ]
      }
    },
    "postseason": {
      "pitcher_strikeouts": {
        "samples": 609,
        "games": 46,
        "brier": 0.177065,
        "reference_brier": 0.210107,
        "brier_skill": 0.1573,
        "ece": 0.051706,
        "log_loss": 0.529402,
        "passed": true,
        "calibration_bins": [
          {
            "predicted": 0.0631,
            "observed": 0.0,
            "n": 36
          },
          {
            "predicted": 0.1357,
            "observed": 0.1045,
            "n": 67
          },
          {
            "predicted": 0.2462,
            "observed": 0.2198,
            "n": 91
          },
          {
            "predicted": 0.3591,
            "observed": 0.3281,
            "n": 64
          },
          {
            "predicted": 0.4137,
            "observed": 0.3939,
            "n": 33
          },
          {
            "predicted": 0.5282,
            "observed": 0.4915,
            "n": 59
          },
          {
            "predicted": 0.6376,
            "observed": 0.5507,
            "n": 69
          },
          {
            "predicted": 0.762,
            "observed": 0.6341,
            "n": 41
          },
          {
            "predicted": 0.8297,
            "observed": 0.7701,
            "n": 87
          },
          {
            "predicted": 0.9437,
            "observed": 0.8871,
            "n": 62
          }
        ],
        "forecasts": 87,
        "mae": 2.2561,
        "mean_prediction": 5.552,
        "mean_actual": 5.2989,
        "lines": [
          2.5,
          3.5,
          4.5,
          5.5,
          6.5,
          7.5,
          8.5
        ]
      },
      "pitcher_outs": {
        "samples": 348,
        "games": 46,
        "brier": 0.221001,
        "reference_brier": 0.230821,
        "brier_skill": 0.0425,
        "ece": 0.11812,
        "log_loss": 0.638303,
        "passed": true,
        "calibration_bins": [
          {
            "predicted": 0.0482,
            "observed": 0.0,
            "n": 13
          },
          {
            "predicted": 0.1357,
            "observed": 0.087,
            "n": 23
          },
          {
            "predicted": 0.2437,
            "observed": 0.1452,
            "n": 62
          },
          {
            "predicted": 0.3576,
            "observed": 0.3778,
            "n": 45
          },
          {
            "predicted": 0.4344,
            "observed": 0.4074,
            "n": 27
          },
          {
            "predicted": 0.526,
            "observed": 0.475,
            "n": 40
          },
          {
            "predicted": 0.6499,
            "observed": 0.4722,
            "n": 36
          },
          {
            "predicted": 0.7576,
            "observed": 0.5806,
            "n": 31
          },
          {
            "predicted": 0.8459,
            "observed": 0.551,
            "n": 49
          },
          {
            "predicted": 0.9201,
            "observed": 0.7727,
            "n": 22
          }
        ],
        "forecasts": 87,
        "mae": 4.3653,
        "mean_prediction": 16.1722,
        "mean_actual": 14.2989,
        "lines": [
          12.5,
          15.5,
          17.5,
          18.5
        ]
      },
      "batter_hits": {
        "samples": 2487,
        "games": 47,
        "brier": 0.148308,
        "reference_brier": 0.150418,
        "brier_skill": 0.014,
        "ece": 0.013673,
        "log_loss": 0.45235,
        "passed": true,
        "calibration_bins": [
          {
            "predicted": 0.0392,
            "observed": 0.0489,
            "n": 880
          },
          {
            "predicted": 0.1669,
            "observed": 0.1953,
            "n": 425
          },
          {
            "predicted": 0.2264,
            "observed": 0.2323,
            "n": 353
          },
          {
            "predicted": 0.4444,
            "observed": 0.5098,
            "n": 51
          },
          {
            "predicted": 0.5606,
            "observed": 0.5469,
            "n": 426
          },
          {
            "predicted": 0.6387,
            "observed": 0.6449,
            "n": 352
          }
        ],
        "forecasts": 829,
        "mae": 0.6957,
        "mean_prediction": 0.8076,
        "mean_actual": 0.8456,
        "lines": [
          0.5,
          1.5,
          2.5
        ]
      },
      "batter_total_bases": {
        "samples": 3316,
        "games": 47,
        "brier": 0.183419,
        "reference_brier": 0.186171,
        "brier_skill": 0.0148,
        "ece": 0.018294,
        "log_loss": 0.547094,
        "passed": true,
        "calibration_bins": [
          {
            "predicted": 0.0641,
            "observed": 0.0709,
            "n": 268
          },
          {
            "predicted": 0.1386,
            "observed": 0.1587,
            "n": 819
          },
          {
            "predicted": 0.2337,
            "observed": 0.2254,
            "n": 812
          },
          {
            "predicted": 0.3535,
            "observed": 0.3886,
            "n": 525
          },
          {
            "predicted": 0.4563,
            "observed": 0.4044,
            "n": 136
          },
          {
            "predicted": 0.5674,
            "observed": 0.5562,
            "n": 338
          },
          {
            "predicted": 0.6421,
            "observed": 0.6268,
            "n": 418
          }
        ],
        "forecasts": 829,
        "mae": 1.3372,
        "mean_prediction": 1.3734,
        "mean_actual": 1.4186,
        "lines": [
          0.5,
          1.5,
          2.5,
          3.5
        ]
      },
      "batter_home_runs": {
        "samples": 829,
        "games": 47,
        "brier": 0.105184,
        "reference_brier": 0.107078,
        "brier_skill": 0.0177,
        "ece": 0.017689,
        "log_loss": 0.360508,
        "passed": true,
        "calibration_bins": [
          {
            "predicted": 0.0675,
            "observed": 0.065,
            "n": 277
          },
          {
            "predicted": 0.124,
            "observed": 0.1493,
            "n": 536
          },
          {
            "predicted": 0.2131,
            "observed": 0.1875,
            "n": 16
          }
        ],
        "forecasts": 829,
        "mae": 0.2138,
        "mean_prediction": 0.1126,
        "mean_actual": 0.1339,
        "lines": [
          0.5
        ]
      },
      "batter_rbis": {
        "samples": 1658,
        "games": 47,
        "brier": 0.137447,
        "reference_brier": 0.140154,
        "brier_skill": 0.0193,
        "ece": 0.022955,
        "log_loss": 0.435402,
        "passed": true,
        "calibration_bins": [
          {
            "predicted": 0.0748,
            "observed": 0.065,
            "n": 585
          },
          {
            "predicted": 0.1325,
            "observed": 0.1628,
            "n": 258
          },
          {
            "predicted": 0.2618,
            "observed": 0.2177,
            "n": 487
          },
          {
            "predicted": 0.3312,
            "observed": 0.3406,
            "n": 323
          },
          {
            "predicted": 0.402,
            "observed": 0.4,
            "n": 5
          }
        ],
        "forecasts": 829,
        "mae": 0.5967,
        "mean_prediction": 0.443,
        "mean_actual": 0.4089,
        "lines": [
          0.5,
          1.5
        ]
      },
      "totals": {
        "samples": 235,
        "games": 47,
        "brier": 0.215973,
        "reference_brier": 0.255081,
        "brier_skill": 0.1533,
        "ece": 0.046435,
        "log_loss": 0.621194,
        "passed": true,
        "calibration_bins": [
          {
            "predicted": 0.1837,
            "observed": 0.0,
            "n": 7
          },
          {
            "predicted": 0.2631,
            "observed": 0.25,
            "n": 48
          },
          {
            "predicted": 0.3473,
            "observed": 0.34,
            "n": 50
          },
          {
            "predicted": 0.4462,
            "observed": 0.36,
            "n": 50
          },
          {
            "predicted": 0.5418,
            "observed": 0.4762,
            "n": 42
          },
          {
            "predicted": 0.6391,
            "observed": 0.6667,
            "n": 36
          },
          {
            "predicted": 0.7142,
            "observed": 1.0,
            "n": 2
          }
        ],
        "lines": [
          6.5,
          7.5,
          8.5,
          9.5,
          10.5
        ]
      },
      "h2h": {
        "samples": 47,
        "games": 47,
        "brier": 0.246184,
        "reference_brier": 0.25,
        "brier_skill": 0.0153,
        "ece": 0.047317,
        "log_loss": 0.685544,
        "passed": true,
        "calibration_bins": [
          {
            "predicted": 0.3989,
            "observed": 1.0,
            "n": 1
          },
          {
            "predicted": 0.487,
            "observed": 0.5,
            "n": 20
          },
          {
            "predicted": 0.5245,
            "observed": 0.5769,
            "n": 26
          }
        ],
        "lines": [
          0
        ]
      },
      "spreads": {
        "samples": 94,
        "games": 47,
        "brier": 0.232226,
        "reference_brier": 0.234614,
        "brier_skill": 0.0102,
        "ece": 0.031757,
        "log_loss": 0.657063,
        "passed": true,
        "calibration_bins": [
          {
            "predicted": 0.378,
            "observed": 0.4062,
            "n": 32
          },
          {
            "predicted": 0.4168,
            "observed": 0.4,
            "n": 15
          },
          {
            "predicted": 0.5793,
            "observed": 0.6,
            "n": 10
          },
          {
            "predicted": 0.6319,
            "observed": 0.6757,
            "n": 37
          }
        ],
        "lines": [
          -1.5,
          1.5
        ]
      }
    },
    "postseason_error": null,
    "models": {
      "team_runs": {
        "kind": "boosted",
        "train_n": 4456,
        "calibration_n": 816,
        "features": [
          "home",
          "opp_allowed",
          "opp_bb_rate",
          "opp_bullpen_ra9",
          "opp_bullpen_workload",
          "opp_hit_rate",
          "opp_hr_rate",
          "opp_k_rate",
          "opp_pa",
          "opp_runs",
          "opp_starter_bb_rate",
          "opp_starter_bf",
          "opp_starter_hit_rate",
          "opp_starter_hr_rate",
          "opp_starter_k_rate",
          "opp_starter_outs15",
          "opp_starter_outs5",
          "opp_starter_pitches5",
          "opp_starter_ra9",
          "opp_starter_rest",
          "opp_starter_starts",
          "opp_tb_rate",
          "opp_team_games",
          "park_factor",
          "postseason",
          "starter_bb_rate",
          "starter_bf",
          "starter_hit_rate",
          "starter_hr_rate",
          "starter_k_rate",
          "starter_outs15",
          "starter_outs5",
          "starter_pitches5",
          "starter_ra9",
          "starter_rest",
          "starter_starts",
          "team_allowed",
          "team_bb_rate",
          "team_bullpen_ra9",
          "team_bullpen_workload",
          "team_hit_rate",
          "team_hr_rate",
          "team_k_rate",
          "team_pa",
          "team_runs",
          "team_tb_rate",
          "team_team_games"
        ],
        "dispersion": 0.2421515724974347,
        "outs_sigma": null
      },
      "pitcher_strikeouts": {
        "kind": "rolling",
        "train_n": 3771,
        "calibration_n": 759,
        "features": [
          "home",
          "opp_allowed",
          "opp_bb_rate",
          "opp_bullpen_ra9",
          "opp_bullpen_workload",
          "opp_hit_rate",
          "opp_hr_rate",
          "opp_k_rate",
          "opp_pa",
          "opp_runs",
          "opp_starter_bb_rate",
          "opp_starter_bf",
          "opp_starter_hit_rate",
          "opp_starter_hr_rate",
          "opp_starter_k_rate",
          "opp_starter_outs15",
          "opp_starter_outs5",
          "opp_starter_pitches5",
          "opp_starter_ra9",
          "opp_starter_rest",
          "opp_starter_starts",
          "opp_tb_rate",
          "opp_team_games",
          "park_factor",
          "postseason",
          "starter_bb_rate",
          "starter_bf",
          "starter_hit_rate",
          "starter_hr_rate",
          "starter_k_rate",
          "starter_outs15",
          "starter_outs5",
          "starter_pitches5",
          "starter_ra9",
          "starter_rest",
          "starter_starts",
          "team_allowed",
          "team_bb_rate",
          "team_bullpen_ra9",
          "team_bullpen_workload",
          "team_hit_rate",
          "team_hr_rate",
          "team_k_rate",
          "team_pa",
          "team_runs",
          "team_tb_rate",
          "team_team_games"
        ],
        "dispersion": 0.009211848798420422,
        "outs_sigma": null
      },
      "pitcher_outs": {
        "kind": "boosted",
        "train_n": 3771,
        "calibration_n": 759,
        "features": [
          "home",
          "opp_allowed",
          "opp_bb_rate",
          "opp_bullpen_ra9",
          "opp_bullpen_workload",
          "opp_hit_rate",
          "opp_hr_rate",
          "opp_k_rate",
          "opp_pa",
          "opp_runs",
          "opp_starter_bb_rate",
          "opp_starter_bf",
          "opp_starter_hit_rate",
          "opp_starter_hr_rate",
          "opp_starter_k_rate",
          "opp_starter_outs15",
          "opp_starter_outs5",
          "opp_starter_pitches5",
          "opp_starter_ra9",
          "opp_starter_rest",
          "opp_starter_starts",
          "opp_tb_rate",
          "opp_team_games",
          "park_factor",
          "postseason",
          "starter_bb_rate",
          "starter_bf",
          "starter_hit_rate",
          "starter_hr_rate",
          "starter_k_rate",
          "starter_outs15",
          "starter_outs5",
          "starter_pitches5",
          "starter_ra9",
          "starter_rest",
          "starter_starts",
          "team_allowed",
          "team_bb_rate",
          "team_bullpen_ra9",
          "team_bullpen_workload",
          "team_hit_rate",
          "team_hr_rate",
          "team_k_rate",
          "team_pa",
          "team_runs",
          "team_tb_rate",
          "team_team_games"
        ],
        "dispersion": 0.0,
        "outs_sigma": 3.663490234040986
      },
      "batter_hits": {
        "kind": "boosted",
        "train_n": 35349,
        "calibration_n": 7039,
        "features": [
          "batter_bb_rate",
          "batter_games",
          "batter_hit_rate",
          "batter_hr_rate",
          "batter_k_rate",
          "batter_pa",
          "batter_rbi_rate",
          "batter_tb_rate",
          "home",
          "lineup_slot",
          "opp_allowed",
          "opp_bb_rate",
          "opp_bullpen_ra9",
          "opp_bullpen_workload",
          "opp_hit_rate",
          "opp_hr_rate",
          "opp_k_rate",
          "opp_pa",
          "opp_runs",
          "opp_starter_bb_rate",
          "opp_starter_bf",
          "opp_starter_hit_rate",
          "opp_starter_hr_rate",
          "opp_starter_k_rate",
          "opp_starter_outs15",
          "opp_starter_outs5",
          "opp_starter_pitches5",
          "opp_starter_ra9",
          "opp_starter_rest",
          "opp_starter_starts",
          "opp_tb_rate",
          "opp_team_games",
          "park_factor",
          "postseason",
          "projected_pa",
          "recent_pa",
          "starter_bb_rate",
          "starter_bf",
          "starter_hit_rate",
          "starter_hr_rate",
          "starter_k_rate",
          "starter_outs15",
          "starter_outs5",
          "starter_pitches5",
          "starter_ra9",
          "starter_rest",
          "starter_starts",
          "team_allowed",
          "team_bb_rate",
          "team_bullpen_ra9",
          "team_bullpen_workload",
          "team_hit_rate",
          "team_hr_rate",
          "team_k_rate",
          "team_pa",
          "team_runs",
          "team_tb_rate",
          "team_team_games"
        ],
        "dispersion": 0.0,
        "outs_sigma": null
      },
      "batter_total_bases": {
        "kind": "boosted",
        "train_n": 35349,
        "calibration_n": 7039,
        "features": [
          "batter_bb_rate",
          "batter_games",
          "batter_hit_rate",
          "batter_hr_rate",
          "batter_k_rate",
          "batter_pa",
          "batter_rbi_rate",
          "batter_tb_rate",
          "home",
          "lineup_slot",
          "opp_allowed",
          "opp_bb_rate",
          "opp_bullpen_ra9",
          "opp_bullpen_workload",
          "opp_hit_rate",
          "opp_hr_rate",
          "opp_k_rate",
          "opp_pa",
          "opp_runs",
          "opp_starter_bb_rate",
          "opp_starter_bf",
          "opp_starter_hit_rate",
          "opp_starter_hr_rate",
          "opp_starter_k_rate",
          "opp_starter_outs15",
          "opp_starter_outs5",
          "opp_starter_pitches5",
          "opp_starter_ra9",
          "opp_starter_rest",
          "opp_starter_starts",
          "opp_tb_rate",
          "opp_team_games",
          "park_factor",
          "postseason",
          "projected_pa",
          "recent_pa",
          "starter_bb_rate",
          "starter_bf",
          "starter_hit_rate",
          "starter_hr_rate",
          "starter_k_rate",
          "starter_outs15",
          "starter_outs5",
          "starter_pitches5",
          "starter_ra9",
          "starter_rest",
          "starter_starts",
          "team_allowed",
          "team_bb_rate",
          "team_bullpen_ra9",
          "team_bullpen_workload",
          "team_hit_rate",
          "team_hr_rate",
          "team_k_rate",
          "team_pa",
          "team_runs",
          "team_tb_rate",
          "team_team_games"
        ],
        "dispersion": 0.6704851433665721,
        "outs_sigma": null
      },
      "batter_home_runs": {
        "kind": "boosted",
        "train_n": 35349,
        "calibration_n": 7039,
        "features": [
          "batter_bb_rate",
          "batter_games",
          "batter_hit_rate",
          "batter_hr_rate",
          "batter_k_rate",
          "batter_pa",
          "batter_rbi_rate",
          "batter_tb_rate",
          "home",
          "lineup_slot",
          "opp_allowed",
          "opp_bb_rate",
          "opp_bullpen_ra9",
          "opp_bullpen_workload",
          "opp_hit_rate",
          "opp_hr_rate",
          "opp_k_rate",
          "opp_pa",
          "opp_runs",
          "opp_starter_bb_rate",
          "opp_starter_bf",
          "opp_starter_hit_rate",
          "opp_starter_hr_rate",
          "opp_starter_k_rate",
          "opp_starter_outs15",
          "opp_starter_outs5",
          "opp_starter_pitches5",
          "opp_starter_ra9",
          "opp_starter_rest",
          "opp_starter_starts",
          "opp_tb_rate",
          "opp_team_games",
          "park_factor",
          "postseason",
          "projected_pa",
          "recent_pa",
          "starter_bb_rate",
          "starter_bf",
          "starter_hit_rate",
          "starter_hr_rate",
          "starter_k_rate",
          "starter_outs15",
          "starter_outs5",
          "starter_pitches5",
          "starter_ra9",
          "starter_rest",
          "starter_starts",
          "team_allowed",
          "team_bb_rate",
          "team_bullpen_ra9",
          "team_bullpen_workload",
          "team_hit_rate",
          "team_hr_rate",
          "team_k_rate",
          "team_pa",
          "team_runs",
          "team_tb_rate",
          "team_team_games"
        ],
        "dispersion": 0.0,
        "outs_sigma": null
      },
      "batter_rbis": {
        "kind": "boosted",
        "train_n": 35349,
        "calibration_n": 7039,
        "features": [
          "batter_bb_rate",
          "batter_games",
          "batter_hit_rate",
          "batter_hr_rate",
          "batter_k_rate",
          "batter_pa",
          "batter_rbi_rate",
          "batter_tb_rate",
          "home",
          "lineup_slot",
          "opp_allowed",
          "opp_bb_rate",
          "opp_bullpen_ra9",
          "opp_bullpen_workload",
          "opp_hit_rate",
          "opp_hr_rate",
          "opp_k_rate",
          "opp_pa",
          "opp_runs",
          "opp_starter_bb_rate",
          "opp_starter_bf",
          "opp_starter_hit_rate",
          "opp_starter_hr_rate",
          "opp_starter_k_rate",
          "opp_starter_outs15",
          "opp_starter_outs5",
          "opp_starter_pitches5",
          "opp_starter_ra9",
          "opp_starter_rest",
          "opp_starter_starts",
          "opp_tb_rate",
          "opp_team_games",
          "park_factor",
          "postseason",
          "projected_pa",
          "recent_pa",
          "starter_bb_rate",
          "starter_bf",
          "starter_hit_rate",
          "starter_hr_rate",
          "starter_k_rate",
          "starter_outs15",
          "starter_outs5",
          "starter_pitches5",
          "starter_ra9",
          "starter_rest",
          "starter_starts",
          "team_allowed",
          "team_bb_rate",
          "team_bullpen_ra9",
          "team_bullpen_workload",
          "team_hit_rate",
          "team_hr_rate",
          "team_k_rate",
          "team_pa",
          "team_runs",
          "team_tb_rate",
          "team_team_games"
        ],
        "dispersion": 0.9791203125957592,
        "outs_sigma": null
      }
    },
    "reference": "Empirical outcome distribution in the training partition, independent of sportsbook prices",
    "thresholds": {
      "regular_min_games": 150,
      "regular_max_brier_excess": 0,
      "regular_max_ece": 0.06,
      "postseason_min_games": 30,
      "postseason_max_brier_excess": 0,
      "postseason_max_ece": 0.12
    },
    "limitations": [
      "Fixed threshold grids, not archived historical bookmaker lines; no historical ROI claim.",
      "Historical evaluation conditions on actual starters and original batting order; archived pregame announcements are unavailable.",
      "Postseason audit is small and uses an earlier model fitted before that postseason; upcoming playoff accuracy is unproven.",
      "No explicit handedness, weather, injury, umpire or tactical pinch-hit adjustments.",
      "Park estimates are shrunk venue scoring averages and can include home-team effects.",
      "Joint team-run approximation conditions out ties; extra-inning dynamics are not simulated pitch by pitch."
    ]
  },
  "model_summary": {
    "forecasts": 1333,
    "picks": 24,
    "unavailable_reasons": {
      "Waiting for both probable starters": 509,
      "Awaiting this player in a published starting batting order": 3955
    },
    "history_through": "2026-09-21",
    "weights_trained_through": "2026-07-23",
    "policy": "mlb-picks-v1"
  },
  "limitations": "NFL injury adjustments are not established by this evidence. A live total is not a prop forecast. Only validated fresh model rows are included. Historical quotes are not openers."
}
