Repository: ryankrumenacker/sports-betting-arbitrage-project Branch: main Commit: 6d42f85a4b61 Files: 4 Total size: 278.1 KB Directory structure: gitextract_6_k52l4o/ ├── API_KEY.txt ├── Arbitrage.ipynb ├── Books.txt └── README.md ================================================ FILE CONTENTS ================================================ ================================================ FILE: API_KEY.txt ================================================ PLACE API KEY HERE ================================================ FILE: Arbitrage.ipynb ================================================ { "cells": [ { "cell_type": "markdown", "id": "30146ed7", "metadata": {}, "source": [ "# Statistical Arbitrage for Sports Betting" ] }, { "cell_type": "markdown", "id": "fa0524d5", "metadata": {}, "source": [ "Using: Live Sports Odds API\n", "Documentation Link: https://the-odds-api.com/ " ] }, { "cell_type": "markdown", "id": "40bd8cd9", "metadata": {}, "source": [ "This program will look for statistical arbitrage opportunities in the upcoming eight games across all sports." ] }, { "cell_type": "markdown", "id": "88d7d4e1", "metadata": {}, "source": [ "### Importing Dependencies and Acquiring API Key" ] }, { "cell_type": "code", "execution_count": 1, "id": "31fa11dc", "metadata": {}, "outputs": [], "source": [ "import requests\n", "import xlsxwriter\n", "import pandas as pd\n", "import numpy as np\n", "import openpyxl\n", "from openpyxl import Workbook, load_workbook\n", "from openpyxl.styles import Border, Side, Font, Alignment, PatternFill, numbers\n", "\n", "f = open('API_KEY.txt', 'r')\n", "API_KEY = f.read()\n", "f.close()" ] }, { "cell_type": "markdown", "id": "2728ca07", "metadata": {}, "source": [ "### Defining Constants and Making API Call\n", "- ``BET_SIZE`` is the monetary amount in USD that you are willing to make for each bet. For example, if you define ``BET_SIZE`` as 100, you are telling the program that you want to bet a total of 100 dollars USD for each arbitrage opportunity that the program finds" ] }, { "cell_type": "code", "execution_count": 2, "id": "b07f9912", "metadata": { "scrolled": false }, "outputs": [], "source": [ "SPORT = 'upcoming' # use the sport_key from the /sports endpoint below, or use 'upcoming' to see the next 8 games across all sports\n", "\n", "REGIONS = 'us' # uk | us | eu | au. Multiple can be specified if comma delimited\n", "\n", "MARKETS = 'h2h' # h2h | spreads | totals. Multiple can be specified if comma delimited\n", "\n", "ODDS_FORMAT = 'decimal' # decimal | american\n", "\n", "DATE_FORMAT = 'iso' # iso | unix\n", "\n", "BET_SIZE = 100\n", "\n", "odds_response = requests.get(\n", " f'https://api.the-odds-api.com/v4/sports/{SPORT}/odds',\n", " params={\n", " 'api_key': API_KEY,\n", " 'regions': REGIONS,\n", " 'markets': MARKETS,\n", " 'oddsFormat': ODDS_FORMAT,\n", " 'dateFormat': DATE_FORMAT,\n", " }\n", ").json()" ] }, { "cell_type": "code", "execution_count": 3, "id": "a406cfc7", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[{'id': '3334a39ac46322911bb2cc9243e387ee',\n", " 'sport_key': 'baseball_mlb',\n", " 'sport_title': 'MLB',\n", " 'commence_time': '2022-09-18T16:11:45Z',\n", " 'home_team': 'Detroit Tigers',\n", " 'away_team': 'Chicago White Sox',\n", " 'bookmakers': [{'key': 'bovada',\n", " 'title': 'Bovada',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Chicago White Sox', 'price': 1.0},\n", " {'name': 'Detroit Tigers', 'price': 19.0}]}]},\n", " {'key': 'gtbets',\n", " 'title': 'GTbets',\n", " 'last_update': '2022-09-18T18:57:39Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Chicago White Sox', 'price': 1.09},\n", " {'name': 'Detroit Tigers', 'price': 6.92}]}]}]},\n", " {'id': '7ad8263939b57e14774e8210e00fbb69',\n", " 'sport_key': 'soccer_portugal_primeira_liga',\n", " 'sport_title': 'Primeira Liga - Portugal',\n", " 'commence_time': '2022-09-18T17:01:04Z',\n", " 'home_team': 'Benfica',\n", " 'away_team': 'CS Maritimo',\n", " 'bookmakers': [{'key': 'bovada',\n", " 'title': 'Bovada',\n", " 'last_update': '2022-09-18T18:50:01Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Benfica', 'price': 1.02},\n", " {'name': 'CS Maritimo', 'price': 91.0},\n", " {'name': 'Draw', 'price': 12.0}]}]},\n", " {'key': 'williamhill_us',\n", " 'title': 'William Hill (US)',\n", " 'last_update': '2022-09-18T18:48:41Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Benfica', 'price': 1.0},\n", " {'name': 'CS Maritimo', 'price': 31.0},\n", " {'name': 'Draw', 'price': 31.0}]}]},\n", " {'key': 'foxbet',\n", " 'title': 'FOX Bet',\n", " 'last_update': '2022-09-18T18:52:28Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Benfica', 'price': 1.0},\n", " {'name': 'CS Maritimo', 'price': 176.0},\n", " {'name': 'Draw', 'price': 34.0}]}]}]},\n", " {'id': '74f7692b13d4693b1806157f4083a8f8',\n", " 'sport_key': 'soccer_turkey_super_league',\n", " 'sport_title': 'Turkey Super League',\n", " 'commence_time': '2022-09-18T17:01:21Z',\n", " 'home_team': 'Fenerbahce',\n", " 'away_team': 'Alanyaspor',\n", " 'bookmakers': [{'key': 'bovada',\n", " 'title': 'Bovada',\n", " 'last_update': '2022-09-18T18:57:17Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Alanyaspor', 'price': 71.0},\n", " {'name': 'Fenerbahce', 'price': 1.02},\n", " {'name': 'Draw', 'price': 15.0}]}]},\n", " {'key': 'foxbet',\n", " 'title': 'FOX Bet',\n", " 'last_update': '2022-09-18T18:54:02Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Alanyaspor', 'price': 101.0},\n", " {'name': 'Fenerbahce', 'price': 1.0},\n", " {'name': 'Draw', 'price': 31.0}]}]},\n", " {'key': 'williamhill_us',\n", " 'title': 'William Hill (US)',\n", " 'last_update': '2022-09-18T18:55:02Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Alanyaspor', 'price': 22.0},\n", " {'name': 'Fenerbahce', 'price': 1.0},\n", " {'name': 'Draw', 'price': 22.0}]}]}]},\n", " {'id': '1d5db4032c3126733b24c8dc846360c4',\n", " 'sport_key': 'soccer_portugal_primeira_liga',\n", " 'sport_title': 'Primeira Liga - Portugal',\n", " 'commence_time': '2022-09-18T17:01:30Z',\n", " 'home_team': 'Casa Pia',\n", " 'away_team': 'Famalicão',\n", " 'bookmakers': [{'key': 'bovada',\n", " 'title': 'Bovada',\n", " 'last_update': '2022-09-18T18:52:29Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Casa Pia', 'price': 1.06},\n", " {'name': 'Famalicão', 'price': 101.0},\n", " {'name': 'Draw', 'price': 8.5}]}]},\n", " {'key': 'mybookieag',\n", " 'title': 'MyBookie.ag',\n", " 'last_update': '2022-09-18T18:58:04Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Casa Pia', 'price': 1.14},\n", " {'name': 'Famalicão', 'price': 34.96},\n", " {'name': 'Draw', 'price': 4.65}]}]},\n", " {'key': 'williamhill_us',\n", " 'title': 'William Hill (US)',\n", " 'last_update': '2022-09-18T18:52:28Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Casa Pia', 'price': 1.08},\n", " {'name': 'Famalicão', 'price': 91.0},\n", " {'name': 'Draw', 'price': 8.0}]}]},\n", " {'key': 'foxbet',\n", " 'title': 'FOX Bet',\n", " 'last_update': '2022-09-18T18:56:00Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Casa Pia', 'price': 1.14},\n", " {'name': 'Famalicão', 'price': 34.0},\n", " {'name': 'Draw', 'price': 5.5}]}]},\n", " {'key': 'barstool',\n", " 'title': 'Barstool Sportsbook',\n", " 'last_update': '2022-09-18T18:52:29Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Casa Pia', 'price': 1.03},\n", " {'name': 'Famalicão', 'price': 326.0},\n", " {'name': 'Draw', 'price': 16.0}]}]},\n", " {'key': 'twinspires',\n", " 'title': 'TwinSpires',\n", " 'last_update': '2022-09-18T18:52:29Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Casa Pia', 'price': 1.03},\n", " {'name': 'Famalicão', 'price': 326.0},\n", " {'name': 'Draw', 'price': 16.0}]}]},\n", " {'key': 'unibet',\n", " 'title': 'Unibet',\n", " 'last_update': '2022-09-18T18:52:27Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Casa Pia', 'price': 1.03},\n", " {'name': 'Famalicão', 'price': 326.0},\n", " {'name': 'Draw', 'price': 16.0}]}]},\n", " {'key': 'betfair',\n", " 'title': 'Betfair',\n", " 'last_update': '2022-09-18T18:54:42Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Casa Pia', 'price': 1.08},\n", " {'name': 'Famalicão', 'price': 4.8},\n", " {'name': 'Draw', 'price': 10.5}]},\n", " {'key': 'h2h_lay',\n", " 'outcomes': [{'name': 'Casa Pia', 'price': 1.1},\n", " {'name': 'Famalicão', 'price': 1000.0},\n", " {'name': 'Draw', 'price': 16.5}]}]},\n", " {'key': 'draftkings',\n", " 'title': 'DraftKings',\n", " 'last_update': '2022-09-18T18:54:40Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Casa Pia', 'price': 1.01},\n", " {'name': 'Famalicão', 'price': 56.0},\n", " {'name': 'Draw', 'price': 19.0}]}]}]},\n", " {'id': '5ee78ae20ac0510e4a78e03cb1c41e18',\n", " 'sport_key': 'americanfootball_nfl',\n", " 'sport_title': 'NFL',\n", " 'commence_time': '2022-09-18T17:02:32Z',\n", " 'home_team': 'Pittsburgh Steelers',\n", " 'away_team': 'New England Patriots',\n", " 'bookmakers': [{'key': 'unibet',\n", " 'title': 'Unibet',\n", " 'last_update': '2022-09-18T18:57:31Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'New England Patriots', 'price': 1.2},\n", " {'name': 'Pittsburgh Steelers', 'price': 4.5}]}]},\n", " {'key': 'williamhill_us',\n", " 'title': 'William Hill (US)',\n", " 'last_update': '2022-09-18T18:57:30Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'New England Patriots', 'price': 1.31},\n", " {'name': 'Pittsburgh Steelers', 'price': 3.5}]}]},\n", " {'key': 'mybookieag',\n", " 'title': 'MyBookie.ag',\n", " 'last_update': '2022-09-18T18:57:31Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'New England Patriots', 'price': 1.16},\n", " {'name': 'Pittsburgh Steelers', 'price': 4.99}]}]},\n", " {'key': 'sugarhouse',\n", " 'title': 'SugarHouse',\n", " 'last_update': '2022-09-18T18:57:32Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'New England Patriots', 'price': 1.2},\n", " {'name': 'Pittsburgh Steelers', 'price': 4.5}]}]},\n", " {'key': 'barstool',\n", " 'title': 'Barstool Sportsbook',\n", " 'last_update': '2022-09-18T18:57:31Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'New England Patriots', 'price': 1.2},\n", " {'name': 'Pittsburgh Steelers', 'price': 4.5}]}]},\n", " {'key': 'draftkings',\n", " 'title': 'DraftKings',\n", " 'last_update': '2022-09-18T18:57:31Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'New England Patriots', 'price': 1.24},\n", " {'name': 'Pittsburgh Steelers', 'price': 4.2}]}]},\n", " {'key': 'pointsbetus',\n", " 'title': 'PointsBet (US)',\n", " 'last_update': '2022-09-18T18:57:31Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'New England Patriots', 'price': 1.29},\n", " {'name': 'Pittsburgh Steelers', 'price': 3.8}]}]},\n", " {'key': 'foxbet',\n", " 'title': 'FOX Bet',\n", " 'last_update': '2022-09-18T18:57:31Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'New England Patriots', 'price': 1.35},\n", " {'name': 'Pittsburgh Steelers', 'price': 3.0}]}]},\n", " {'key': 'gtbets',\n", " 'title': 'GTbets',\n", " 'last_update': '2022-09-18T18:57:32Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'New England Patriots', 'price': 1.28},\n", " {'name': 'Pittsburgh Steelers', 'price': 3.36}]}]},\n", " {'key': 'fanduel',\n", " 'title': 'FanDuel',\n", " 'last_update': '2022-09-18T18:57:31Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'New England Patriots', 'price': 1.25},\n", " {'name': 'Pittsburgh Steelers', 'price': 3.85}]}]},\n", " {'key': 'betfair',\n", " 'title': 'Betfair',\n", " 'last_update': '2022-09-18T18:57:32Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'New England Patriots', 'price': 1.33},\n", " {'name': 'Pittsburgh Steelers', 'price': 3.8}]},\n", " {'key': 'h2h_lay',\n", " 'outcomes': [{'name': 'New England Patriots', 'price': 1.36},\n", " {'name': 'Pittsburgh Steelers', 'price': 4.1}]}]},\n", " {'key': 'betmgm',\n", " 'title': 'BetMGM',\n", " 'last_update': '2022-09-18T18:57:32Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'New England Patriots', 'price': 1.29},\n", " {'name': 'Pittsburgh Steelers', 'price': 3.6}]}]},\n", " {'key': 'bovada',\n", " 'title': 'Bovada',\n", " 'last_update': '2022-09-18T18:57:32Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'New England Patriots', 'price': 1.31},\n", " {'name': 'Pittsburgh Steelers', 'price': 3.3}]}]}]},\n", " {'id': '080f13421b3e5e54278a91ca84da1b5e',\n", " 'sport_key': 'americanfootball_nfl',\n", " 'sport_title': 'NFL',\n", " 'commence_time': '2022-09-18T17:02:34Z',\n", " 'home_team': 'Baltimore Ravens',\n", " 'away_team': 'Miami Dolphins',\n", " 'bookmakers': [{'key': 'fanduel',\n", " 'title': 'FanDuel',\n", " 'last_update': '2022-09-18T18:57:31Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Baltimore Ravens', 'price': 1.01},\n", " {'name': 'Miami Dolphins', 'price': 16.0}]}]},\n", " {'key': 'draftkings',\n", " 'title': 'DraftKings',\n", " 'last_update': '2022-09-18T18:57:31Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Baltimore Ravens', 'price': 1.02},\n", " {'name': 'Miami Dolphins', 'price': 16.0}]}]},\n", " {'key': 'pointsbetus',\n", " 'title': 'PointsBet (US)',\n", " 'last_update': '2022-09-18T18:57:31Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Baltimore Ravens', 'price': 1.02},\n", " {'name': 'Miami Dolphins', 'price': 18.0}]}]},\n", " {'key': 'foxbet',\n", " 'title': 'FOX Bet',\n", " 'last_update': '2022-09-18T18:57:31Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Baltimore Ravens', 'price': 1.03},\n", " {'name': 'Miami Dolphins', 'price': 10.0}]}]},\n", " {'key': 'bovada',\n", " 'title': 'Bovada',\n", " 'last_update': '2022-09-18T18:57:32Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Baltimore Ravens', 'price': 1.03},\n", " {'name': 'Miami Dolphins', 'price': 13.0}]}]},\n", " {'key': 'gtbets',\n", " 'title': 'GTbets',\n", " 'last_update': '2022-09-18T18:57:32Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Baltimore Ravens', 'price': 1.06},\n", " {'name': 'Miami Dolphins', 'price': 7.81}]}]},\n", " {'key': 'betmgm',\n", " 'title': 'BetMGM',\n", " 'last_update': '2022-09-18T18:57:32Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Baltimore Ravens', 'price': 1.04},\n", " {'name': 'Miami Dolphins', 'price': 12.5}]}]},\n", " {'key': 'betfair',\n", " 'title': 'Betfair',\n", " 'last_update': '2022-09-18T18:57:32Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Baltimore Ravens', 'price': 1.02},\n", " {'name': 'Miami Dolphins', 'price': 5.4}]},\n", " {'key': 'h2h_lay',\n", " 'outcomes': [{'name': 'Baltimore Ravens', 'price': 1.05},\n", " {'name': 'Miami Dolphins', 'price': 1000.0}]}]}]},\n", " {'id': 'ed269bc596b394ccf877e9663eaf6b45',\n", " 'sport_key': 'soccer_turkey_super_league',\n", " 'sport_title': 'Turkey Super League',\n", " 'commence_time': '2022-09-18T17:02:35Z',\n", " 'home_team': 'Ankaragücü',\n", " 'away_team': 'Sivasspor',\n", " 'bookmakers': [{'key': 'bovada',\n", " 'title': 'Bovada',\n", " 'last_update': '2022-09-18T18:57:17Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Ankaragücü', 'price': 1.08},\n", " {'name': 'Sivasspor', 'price': 56.0},\n", " {'name': 'Draw', 'price': 7.0}]}]},\n", " {'key': 'foxbet',\n", " 'title': 'FOX Bet',\n", " 'last_update': '2022-09-18T18:57:15Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Ankaragücü', 'price': 1.08},\n", " {'name': 'Sivasspor', 'price': 41.0},\n", " {'name': 'Draw', 'price': 6.5}]}]},\n", " {'key': 'betfair',\n", " 'title': 'Betfair',\n", " 'last_update': '2022-09-18T18:57:18Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Ankaragücü', 'price': 1.18},\n", " {'name': 'Sivasspor', 'price': 12.0},\n", " {'name': 'Draw', 'price': 7.6}]},\n", " {'key': 'h2h_lay',\n", " 'outcomes': [{'name': 'Ankaragücü', 'price': 1.19},\n", " {'name': 'Sivasspor', 'price': 1000.0},\n", " {'name': 'Draw', 'price': 16.5}]}]},\n", " {'key': 'williamhill_us',\n", " 'title': 'William Hill (US)',\n", " 'last_update': '2022-09-18T18:57:15Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Ankaragücü', 'price': 1.07},\n", " {'name': 'Sivasspor', 'price': 91.0},\n", " {'name': 'Draw', 'price': 7.0}]}]},\n", " {'key': 'twinspires',\n", " 'title': 'TwinSpires',\n", " 'last_update': '2022-09-18T18:57:17Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Ankaragücü', 'price': 1.07},\n", " {'name': 'Sivasspor', 'price': 91.0},\n", " {'name': 'Draw', 'price': 10.0}]}]},\n", " {'key': 'barstool',\n", " 'title': 'Barstool Sportsbook',\n", " 'last_update': '2022-09-18T18:57:16Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Ankaragücü', 'price': 1.07},\n", " {'name': 'Sivasspor', 'price': 91.0},\n", " {'name': 'Draw', 'price': 10.0}]}]},\n", " {'key': 'unibet',\n", " 'title': 'Unibet',\n", " 'last_update': '2022-09-18T18:57:17Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Ankaragücü', 'price': 1.07},\n", " {'name': 'Sivasspor', 'price': 91.0},\n", " {'name': 'Draw', 'price': 10.0}]}]},\n", " {'key': 'draftkings',\n", " 'title': 'DraftKings',\n", " 'last_update': '2022-09-18T18:57:15Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Ankaragücü', 'price': 1.06},\n", " {'name': 'Sivasspor', 'price': 46.0},\n", " {'name': 'Draw', 'price': 10.5}]}]}]},\n", " {'id': '657839ab389b71122d87801a3822ed4b',\n", " 'sport_key': 'americanfootball_nfl',\n", " 'sport_title': 'NFL',\n", " 'commence_time': '2022-09-18T17:02:54Z',\n", " 'home_team': 'Detroit Lions',\n", " 'away_team': 'Washington Commanders',\n", " 'bookmakers': [{'key': 'unibet',\n", " 'title': 'Unibet',\n", " 'last_update': '2022-09-18T18:57:31Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Detroit Lions', 'price': 1.13},\n", " {'name': 'Washington Commanders', 'price': 5.8}]}]},\n", " {'key': 'sugarhouse',\n", " 'title': 'SugarHouse',\n", " 'last_update': '2022-09-18T18:57:32Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Detroit Lions', 'price': 1.13},\n", " {'name': 'Washington Commanders', 'price': 5.8}]}]},\n", " {'key': 'barstool',\n", " 'title': 'Barstool Sportsbook',\n", " 'last_update': '2022-09-18T18:57:31Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Detroit Lions', 'price': 1.13},\n", " {'name': 'Washington Commanders', 'price': 5.8}]}]},\n", " {'key': 'fanduel',\n", " 'title': 'FanDuel',\n", " 'last_update': '2022-09-18T18:57:31Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Detroit Lions', 'price': 1.11},\n", " {'name': 'Washington Commanders', 'price': 6.2}]}]},\n", " {'key': 'pointsbetus',\n", " 'title': 'PointsBet (US)',\n", " 'last_update': '2022-09-18T18:57:31Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Detroit Lions', 'price': 1.11},\n", " {'name': 'Washington Commanders', 'price': 7.0}]}]},\n", " {'key': 'draftkings',\n", " 'title': 'DraftKings',\n", " 'last_update': '2022-09-18T18:57:31Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Detroit Lions', 'price': 1.11},\n", " {'name': 'Washington Commanders', 'price': 6.1}]}]},\n", " {'key': 'williamhill_us',\n", " 'title': 'William Hill (US)',\n", " 'last_update': '2022-09-18T18:57:30Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Detroit Lions', 'price': 1.11},\n", " {'name': 'Washington Commanders', 'price': 6.75}]}]},\n", " {'key': 'foxbet',\n", " 'title': 'FOX Bet',\n", " 'last_update': '2022-09-18T18:57:31Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Detroit Lions', 'price': 1.07},\n", " {'name': 'Washington Commanders', 'price': 7.5}]}]},\n", " {'key': 'bovada',\n", " 'title': 'Bovada',\n", " 'last_update': '2022-09-18T18:57:32Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Detroit Lions', 'price': 1.11},\n", " {'name': 'Washington Commanders', 'price': 6.0}]}]},\n", " {'key': 'betmgm',\n", " 'title': 'BetMGM',\n", " 'last_update': '2022-09-18T18:57:32Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Detroit Lions', 'price': 1.12},\n", " {'name': 'Washington Commanders', 'price': 6.25}]}]},\n", " {'key': 'betfair',\n", " 'title': 'Betfair',\n", " 'last_update': '2022-09-18T18:57:32Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Detroit Lions', 'price': 1.13},\n", " {'name': 'Washington Commanders', 'price': 8.0}]},\n", " {'key': 'h2h_lay',\n", " 'outcomes': [{'name': 'Detroit Lions', 'price': 1.14},\n", " {'name': 'Washington Commanders', 'price': 9.4}]}]}]},\n", " {'id': '3d469388c5e965ce890616a61441ff51',\n", " 'sport_key': 'americanfootball_nfl',\n", " 'sport_title': 'NFL',\n", " 'commence_time': '2022-09-18T17:02:54Z',\n", " 'home_team': 'Jacksonville Jaguars',\n", " 'away_team': 'Indianapolis Colts',\n", " 'bookmakers': [{'key': 'fanduel',\n", " 'title': 'FanDuel',\n", " 'last_update': '2022-09-18T18:57:31Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Indianapolis Colts', 'price': 16.0},\n", " {'name': 'Jacksonville Jaguars', 'price': 1.01}]}]},\n", " {'key': 'williamhill_us',\n", " 'title': 'William Hill (US)',\n", " 'last_update': '2022-09-18T18:57:30Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Indianapolis Colts', 'price': 17.0},\n", " {'name': 'Jacksonville Jaguars', 'price': 1.02}]}]},\n", " {'key': 'pointsbetus',\n", " 'title': 'PointsBet (US)',\n", " 'last_update': '2022-09-18T18:57:31Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Indianapolis Colts', 'price': 29.0},\n", " {'name': 'Jacksonville Jaguars', 'price': 1.01}]}]},\n", " {'key': 'bovada',\n", " 'title': 'Bovada',\n", " 'last_update': '2022-09-18T18:57:32Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Indianapolis Colts', 'price': 17.0},\n", " {'name': 'Jacksonville Jaguars', 'price': 1.01}]}]},\n", " {'key': 'gtbets',\n", " 'title': 'GTbets',\n", " 'last_update': '2022-09-18T18:57:32Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Indianapolis Colts', 'price': 8.05},\n", " {'name': 'Jacksonville Jaguars', 'price': 1.06}]}]},\n", " {'key': 'betfair',\n", " 'title': 'Betfair',\n", " 'last_update': '2022-09-18T18:57:32Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Indianapolis Colts', 'price': 8.0},\n", " {'name': 'Jacksonville Jaguars', 'price': 1.02}]},\n", " {'key': 'h2h_lay',\n", " 'outcomes': [{'name': 'Indianapolis Colts', 'price': 1000.0},\n", " {'name': 'Jacksonville Jaguars', 'price': 1.03}]}]},\n", " {'key': 'betmgm',\n", " 'title': 'BetMGM',\n", " 'last_update': '2022-09-18T18:57:32Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Indianapolis Colts', 'price': 26.0},\n", " {'name': 'Jacksonville Jaguars', 'price': 1.01}]}]}]},\n", " {'id': 'b4a7c5c1af92401d25765f20a28b3c3d',\n", " 'sport_key': 'americanfootball_nfl',\n", " 'sport_title': 'NFL',\n", " 'commence_time': '2022-09-18T17:02:55Z',\n", " 'home_team': 'New Orleans Saints',\n", " 'away_team': 'Tampa Bay Buccaneers',\n", " 'bookmakers': [{'key': 'unibet',\n", " 'title': 'Unibet',\n", " 'last_update': '2022-09-18T18:57:31Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'New Orleans Saints', 'price': 2.0},\n", " {'name': 'Tampa Bay Buccaneers', 'price': 1.8}]}]},\n", " {'key': 'foxbet',\n", " 'title': 'FOX Bet',\n", " 'last_update': '2022-09-18T18:57:31Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'New Orleans Saints', 'price': 1.85},\n", " {'name': 'Tampa Bay Buccaneers', 'price': 1.85}]}]},\n", " {'key': 'fanduel',\n", " 'title': 'FanDuel',\n", " 'last_update': '2022-09-18T18:57:31Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'New Orleans Saints', 'price': 2.0},\n", " {'name': 'Tampa Bay Buccaneers', 'price': 1.78}]}]},\n", " {'key': 'barstool',\n", " 'title': 'Barstool Sportsbook',\n", " 'last_update': '2022-09-18T18:57:31Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'New Orleans Saints', 'price': 2.0},\n", " {'name': 'Tampa Bay Buccaneers', 'price': 1.8}]}]},\n", " {'key': 'betfair',\n", " 'title': 'Betfair',\n", " 'last_update': '2022-09-18T18:57:32Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'New Orleans Saints', 'price': 1.87},\n", " {'name': 'Tampa Bay Buccaneers', 'price': 1.98}]},\n", " {'key': 'h2h_lay',\n", " 'outcomes': [{'name': 'New Orleans Saints', 'price': 2.02},\n", " {'name': 'Tampa Bay Buccaneers', 'price': 2.16}]}]},\n", " {'key': 'pointsbetus',\n", " 'title': 'PointsBet (US)',\n", " 'last_update': '2022-09-18T18:57:31Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'New Orleans Saints', 'price': 2.05},\n", " {'name': 'Tampa Bay Buccaneers', 'price': 1.83}]}]},\n", " {'key': 'sugarhouse',\n", " 'title': 'SugarHouse',\n", " 'last_update': '2022-09-18T18:57:32Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'New Orleans Saints', 'price': 2.0},\n", " {'name': 'Tampa Bay Buccaneers', 'price': 1.8}]}]},\n", " {'key': 'mybookieag',\n", " 'title': 'MyBookie.ag',\n", " 'last_update': '2022-09-18T18:57:31Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'New Orleans Saints', 'price': 1.83},\n", " {'name': 'Tampa Bay Buccaneers', 'price': 1.94}]}]},\n", " {'key': 'gtbets',\n", " 'title': 'GTbets',\n", " 'last_update': '2022-09-18T18:57:32Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'New Orleans Saints', 'price': 2.08},\n", " {'name': 'Tampa Bay Buccaneers', 'price': 1.7}]}]},\n", " {'key': 'williamhill_us',\n", " 'title': 'William Hill (US)',\n", " 'last_update': '2022-09-18T18:57:30Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'New Orleans Saints', 'price': 1.91},\n", " {'name': 'Tampa Bay Buccaneers', 'price': 1.83}]}]},\n", " {'key': 'betmgm',\n", " 'title': 'BetMGM',\n", " 'last_update': '2022-09-18T18:57:32Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'New Orleans Saints', 'price': 2.05},\n", " {'name': 'Tampa Bay Buccaneers', 'price': 1.77}]}]},\n", " {'key': 'bovada',\n", " 'title': 'Bovada',\n", " 'last_update': '2022-09-18T18:57:32Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'New Orleans Saints', 'price': 2.1},\n", " {'name': 'Tampa Bay Buccaneers', 'price': 1.69}]}]},\n", " {'key': 'draftkings',\n", " 'title': 'DraftKings',\n", " 'last_update': '2022-09-18T18:57:31Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'New Orleans Saints', 'price': 2.0},\n", " {'name': 'Tampa Bay Buccaneers', 'price': 1.77}]}]}]},\n", " {'id': 'db2d95a9bcb88932cbe6bc5382fbba99',\n", " 'sport_key': 'americanfootball_nfl',\n", " 'sport_title': 'NFL',\n", " 'commence_time': '2022-09-18T17:03:01Z',\n", " 'home_team': 'Cleveland Browns',\n", " 'away_team': 'New York Jets',\n", " 'bookmakers': [{'key': 'unibet',\n", " 'title': 'Unibet',\n", " 'last_update': '2022-09-18T18:57:31Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Cleveland Browns', 'price': 1.38},\n", " {'name': 'New York Jets', 'price': 3.05}]}]},\n", " {'key': 'barstool',\n", " 'title': 'Barstool Sportsbook',\n", " 'last_update': '2022-09-18T18:57:31Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Cleveland Browns', 'price': 1.36},\n", " {'name': 'New York Jets', 'price': 3.1}]}]},\n", " {'key': 'sugarhouse',\n", " 'title': 'SugarHouse',\n", " 'last_update': '2022-09-18T18:57:32Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Cleveland Browns', 'price': 1.36},\n", " {'name': 'New York Jets', 'price': 3.1}]}]},\n", " {'key': 'draftkings',\n", " 'title': 'DraftKings',\n", " 'last_update': '2022-09-18T18:57:31Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Cleveland Browns', 'price': 1.35},\n", " {'name': 'New York Jets', 'price': 3.25}]}]},\n", " {'key': 'fanduel',\n", " 'title': 'FanDuel',\n", " 'last_update': '2022-09-18T18:57:31Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Cleveland Browns', 'price': 1.29},\n", " {'name': 'New York Jets', 'price': 3.55}]}]},\n", " {'key': 'williamhill_us',\n", " 'title': 'William Hill (US)',\n", " 'last_update': '2022-09-18T18:57:30Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Cleveland Browns', 'price': 1.33},\n", " {'name': 'New York Jets', 'price': 3.4}]}]},\n", " {'key': 'mybookieag',\n", " 'title': 'MyBookie.ag',\n", " 'last_update': '2022-09-18T18:57:31Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Cleveland Browns', 'price': 1.37},\n", " {'name': 'New York Jets', 'price': 3.03}]}]},\n", " {'key': 'pointsbetus',\n", " 'title': 'PointsBet (US)',\n", " 'last_update': '2022-09-18T18:57:31Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Cleveland Browns', 'price': 1.36},\n", " {'name': 'New York Jets', 'price': 3.3}]}]},\n", " {'key': 'foxbet',\n", " 'title': 'FOX Bet',\n", " 'last_update': '2022-09-18T18:57:31Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Cleveland Browns', 'price': 1.3},\n", " {'name': 'New York Jets', 'price': 3.3}]}]},\n", " {'key': 'bovada',\n", " 'title': 'Bovada',\n", " 'last_update': '2022-09-18T18:57:32Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Cleveland Browns', 'price': 1.35},\n", " {'name': 'New York Jets', 'price': 3.05}]}]},\n", " {'key': 'gtbets',\n", " 'title': 'GTbets',\n", " 'last_update': '2022-09-18T18:57:32Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Cleveland Browns', 'price': 1.36},\n", " {'name': 'New York Jets', 'price': 2.97}]}]},\n", " {'key': 'betmgm',\n", " 'title': 'BetMGM',\n", " 'last_update': '2022-09-18T18:57:32Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Cleveland Browns', 'price': 1.4},\n", " {'name': 'New York Jets', 'price': 3.0}]}]},\n", " {'key': 'betfair',\n", " 'title': 'Betfair',\n", " 'last_update': '2022-09-18T18:57:32Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Cleveland Browns', 'price': 1.4},\n", " {'name': 'New York Jets', 'price': 3.05}]},\n", " {'key': 'h2h_lay',\n", " 'outcomes': [{'name': 'Cleveland Browns', 'price': 1.48},\n", " {'name': 'New York Jets', 'price': 3.5}]}]}]},\n", " {'id': '8cc8ad88130a20c5903a7242d78e8cf1',\n", " 'sport_key': 'americanfootball_nfl',\n", " 'sport_title': 'NFL',\n", " 'commence_time': '2022-09-18T17:03:02Z',\n", " 'home_team': 'New York Giants',\n", " 'away_team': 'Carolina Panthers',\n", " 'bookmakers': [{'key': 'unibet',\n", " 'title': 'Unibet',\n", " 'last_update': '2022-09-18T18:57:31Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Carolina Panthers', 'price': 1.7},\n", " {'name': 'New York Giants', 'price': 2.15}]}]},\n", " {'key': 'draftkings',\n", " 'title': 'DraftKings',\n", " 'last_update': '2022-09-18T18:57:31Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Carolina Panthers', 'price': 1.57},\n", " {'name': 'New York Giants', 'price': 2.4}]}]},\n", " {'key': 'fanduel',\n", " 'title': 'FanDuel',\n", " 'last_update': '2022-09-18T18:57:31Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Carolina Panthers', 'price': 1.68},\n", " {'name': 'New York Giants', 'price': 2.14}]}]},\n", " {'key': 'pointsbetus',\n", " 'title': 'PointsBet (US)',\n", " 'last_update': '2022-09-18T18:57:31Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Carolina Panthers', 'price': 1.69},\n", " {'name': 'New York Giants', 'price': 2.25}]}]},\n", " {'key': 'foxbet',\n", " 'title': 'FOX Bet',\n", " 'last_update': '2022-09-18T18:51:55Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Carolina Panthers', 'price': 1.25},\n", " {'name': 'New York Giants', 'price': 3.7}]}]},\n", " {'key': 'mybookieag',\n", " 'title': 'MyBookie.ag',\n", " 'last_update': '2022-09-18T18:57:31Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Carolina Panthers', 'price': 1.32},\n", " {'name': 'New York Giants', 'price': 3.31}]}]},\n", " {'key': 'williamhill_us',\n", " 'title': 'William Hill (US)',\n", " 'last_update': '2022-09-18T18:57:30Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Carolina Panthers', 'price': 1.71},\n", " {'name': 'New York Giants', 'price': 2.1}]}]},\n", " {'key': 'barstool',\n", " 'title': 'Barstool Sportsbook',\n", " 'last_update': '2022-09-18T18:57:31Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Carolina Panthers', 'price': 1.7},\n", " {'name': 'New York Giants', 'price': 2.15}]}]},\n", " {'key': 'sugarhouse',\n", " 'title': 'SugarHouse',\n", " 'last_update': '2022-09-18T18:57:32Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Carolina Panthers', 'price': 1.7},\n", " {'name': 'New York Giants', 'price': 2.15}]}]},\n", " {'key': 'bovada',\n", " 'title': 'Bovada',\n", " 'last_update': '2022-09-18T18:57:32Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Carolina Panthers', 'price': 1.69},\n", " {'name': 'New York Giants', 'price': 2.1}]}]},\n", " {'key': 'gtbets',\n", " 'title': 'GTbets',\n", " 'last_update': '2022-09-18T18:57:32Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Carolina Panthers', 'price': 1.7},\n", " {'name': 'New York Giants', 'price': 2.08}]}]},\n", " {'key': 'betmgm',\n", " 'title': 'BetMGM',\n", " 'last_update': '2022-09-18T18:57:32Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Carolina Panthers', 'price': 1.67},\n", " {'name': 'New York Giants', 'price': 2.2}]}]},\n", " {'key': 'betfair',\n", " 'title': 'Betfair',\n", " 'last_update': '2022-09-18T18:57:32Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Carolina Panthers', 'price': 1.25},\n", " {'name': 'New York Giants', 'price': 2.02}]},\n", " {'key': 'h2h_lay',\n", " 'outcomes': [{'name': 'Carolina Panthers', 'price': 1.98},\n", " {'name': 'New York Giants', 'price': 5.0}]}]}]},\n", " {'id': '1b1b9afd32c304acb2526759ad5e8e1a',\n", " 'sport_key': 'soccer_usa_mls',\n", " 'sport_title': 'MLS',\n", " 'commence_time': '2022-09-18T17:09:22Z',\n", " 'home_team': 'Columbus Crew SC',\n", " 'away_team': 'Portland Timbers',\n", " 'bookmakers': [{'key': 'mybookieag',\n", " 'title': 'MyBookie.ag',\n", " 'last_update': '2022-09-18T18:56:17Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Columbus Crew SC', 'price': 1.06},\n", " {'name': 'Portland Timbers', 'price': 123.58},\n", " {'name': 'Draw', 'price': 7.08}]}]},\n", " {'key': 'fanduel',\n", " 'title': 'FanDuel',\n", " 'last_update': '2022-09-18T18:57:09Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Columbus Crew SC', 'price': 1.04},\n", " {'name': 'Portland Timbers', 'price': 51.0},\n", " {'name': 'Draw', 'price': 10.5}]}]},\n", " {'key': 'pointsbetus',\n", " 'title': 'PointsBet (US)',\n", " 'last_update': '2022-09-18T18:57:09Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Columbus Crew SC', 'price': 1.07},\n", " {'name': 'Portland Timbers', 'price': 101.0},\n", " {'name': 'Draw', 'price': 9.5}]}]},\n", " {'key': 'bovada',\n", " 'title': 'Bovada',\n", " 'last_update': '2022-09-18T18:57:10Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Columbus Crew SC', 'price': 1.07},\n", " {'name': 'Portland Timbers', 'price': 101.0},\n", " {'name': 'Draw', 'price': 8.0}]}]},\n", " {'key': 'betfair',\n", " 'title': 'Betfair',\n", " 'last_update': '2022-09-18T18:56:16Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Columbus Crew SC', 'price': 1.1},\n", " {'name': 'Portland Timbers', 'price': 60.0},\n", " {'name': 'Draw', 'price': 9.8}]},\n", " {'key': 'h2h_lay',\n", " 'outcomes': [{'name': 'Columbus Crew SC', 'price': 1.12},\n", " {'name': 'Portland Timbers', 'price': 700.0},\n", " {'name': 'Draw', 'price': 14.0}]}]},\n", " {'key': 'draftkings',\n", " 'title': 'DraftKings',\n", " 'last_update': '2022-09-18T18:57:09Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Columbus Crew SC', 'price': 1.06},\n", " {'name': 'Portland Timbers', 'price': 46.0},\n", " {'name': 'Draw', 'price': 10.5}]}]},\n", " {'key': 'twinspires',\n", " 'title': 'TwinSpires',\n", " 'last_update': '2022-09-18T18:57:10Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Columbus Crew SC', 'price': 1.06},\n", " {'name': 'Portland Timbers', 'price': 126.0},\n", " {'name': 'Draw', 'price': 10.5}]}]},\n", " {'key': 'barstool',\n", " 'title': 'Barstool Sportsbook',\n", " 'last_update': '2022-09-18T18:57:10Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Columbus Crew SC', 'price': 1.06},\n", " {'name': 'Portland Timbers', 'price': 126.0},\n", " {'name': 'Draw', 'price': 10.5}]}]},\n", " {'key': 'sugarhouse',\n", " 'title': 'SugarHouse',\n", " 'last_update': '2022-09-18T18:57:10Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Columbus Crew SC', 'price': 1.06},\n", " {'name': 'Portland Timbers', 'price': 126.0},\n", " {'name': 'Draw', 'price': 10.5}]}]},\n", " {'key': 'unibet',\n", " 'title': 'Unibet',\n", " 'last_update': '2022-09-18T18:57:09Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Columbus Crew SC', 'price': 1.06},\n", " {'name': 'Portland Timbers', 'price': 126.0},\n", " {'name': 'Draw', 'price': 10.5}]}]},\n", " {'key': 'foxbet',\n", " 'title': 'FOX Bet',\n", " 'last_update': '2022-09-18T18:57:09Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Columbus Crew SC', 'price': 1.22},\n", " {'name': 'Portland Timbers', 'price': 15.0},\n", " {'name': 'Draw', 'price': 4.33}]}]}]},\n", " {'id': '77a6370d5507b4b52040af21ae6adb21',\n", " 'sport_key': 'baseball_mlb',\n", " 'sport_title': 'MLB',\n", " 'commence_time': '2022-09-18T17:10:20Z',\n", " 'home_team': 'Tampa Bay Rays',\n", " 'away_team': 'Texas Rangers',\n", " 'bookmakers': [{'key': 'draftkings',\n", " 'title': 'DraftKings',\n", " 'last_update': '2022-09-18T18:57:37Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Tampa Bay Rays', 'price': 1.22},\n", " {'name': 'Texas Rangers', 'price': 4.4}]}]},\n", " {'key': 'fanduel',\n", " 'title': 'FanDuel',\n", " 'last_update': '2022-09-18T18:57:37Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Tampa Bay Rays', 'price': 1.23},\n", " {'name': 'Texas Rangers', 'price': 4.0}]}]},\n", " {'key': 'bovada',\n", " 'title': 'Bovada',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Tampa Bay Rays', 'price': 1.18},\n", " {'name': 'Texas Rangers', 'price': 4.5}]}]},\n", " {'key': 'circasports',\n", " 'title': 'Circa Sports',\n", " 'last_update': '2022-09-18T18:44:49Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Tampa Bay Rays', 'price': 1.04},\n", " {'name': 'Texas Rangers', 'price': 11.9}]}]},\n", " {'key': 'gtbets',\n", " 'title': 'GTbets',\n", " 'last_update': '2022-09-18T18:57:39Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Tampa Bay Rays', 'price': 1.17},\n", " {'name': 'Texas Rangers', 'price': 4.85}]}]},\n", " {'key': 'betmgm',\n", " 'title': 'BetMGM',\n", " 'last_update': '2022-09-18T18:57:39Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Tampa Bay Rays', 'price': 1.25},\n", " {'name': 'Texas Rangers', 'price': 3.9}]}]},\n", " {'key': 'foxbet',\n", " 'title': 'FOX Bet',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Tampa Bay Rays', 'price': 1.1},\n", " {'name': 'Texas Rangers', 'price': 5.75}]}]},\n", " {'key': 'sugarhouse',\n", " 'title': 'SugarHouse',\n", " 'last_update': '2022-09-18T18:57:39Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Tampa Bay Rays', 'price': 1.13},\n", " {'name': 'Texas Rangers', 'price': 6.0}]}]},\n", " {'key': 'barstool',\n", " 'title': 'Barstool Sportsbook',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Tampa Bay Rays', 'price': 1.13},\n", " {'name': 'Texas Rangers', 'price': 6.0}]}]},\n", " {'key': 'twinspires',\n", " 'title': 'TwinSpires',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Tampa Bay Rays', 'price': 1.13},\n", " {'name': 'Texas Rangers', 'price': 6.0}]}]},\n", " {'key': 'unibet',\n", " 'title': 'Unibet',\n", " 'last_update': '2022-09-18T18:57:37Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Tampa Bay Rays', 'price': 1.13},\n", " {'name': 'Texas Rangers', 'price': 6.0}]}]},\n", " {'key': 'betfair',\n", " 'title': 'Betfair',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Tampa Bay Rays', 'price': 1.19},\n", " {'name': 'Texas Rangers', 'price': 4.0}]},\n", " {'key': 'h2h_lay',\n", " 'outcomes': [{'name': 'Tampa Bay Rays', 'price': 1.3},\n", " {'name': 'Texas Rangers', 'price': 7.0}]}]}]},\n", " {'id': 'bf43a0cd9018e9dd2d20de0ebf649724',\n", " 'sport_key': 'soccer_germany_bundesliga',\n", " 'sport_title': 'Bundesliga - Germany',\n", " 'commence_time': '2022-09-18T17:30:11Z',\n", " 'home_team': 'TSG Hoffenheim',\n", " 'away_team': 'SC Freiburg',\n", " 'bookmakers': [{'key': 'draftkings',\n", " 'title': 'DraftKings',\n", " 'last_update': '2022-09-18T18:58:02Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'SC Freiburg', 'price': 4.0},\n", " {'name': 'TSG Hoffenheim', 'price': 3.8},\n", " {'name': 'Draw', 'price': 1.8}]}]},\n", " {'key': 'fanduel',\n", " 'title': 'FanDuel',\n", " 'last_update': '2022-09-18T18:58:01Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'SC Freiburg', 'price': 4.5},\n", " {'name': 'TSG Hoffenheim', 'price': 3.6},\n", " {'name': 'Draw', 'price': 1.77}]}]},\n", " {'key': 'bovada',\n", " 'title': 'Bovada',\n", " 'last_update': '2022-09-18T18:58:01Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'SC Freiburg', 'price': 3.85},\n", " {'name': 'TSG Hoffenheim', 'price': 3.4},\n", " {'name': 'Draw', 'price': 1.93}]}]},\n", " {'key': 'mybookieag',\n", " 'title': 'MyBookie.ag',\n", " 'last_update': '2022-09-18T18:58:01Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'SC Freiburg', 'price': 3.14},\n", " {'name': 'TSG Hoffenheim', 'price': 2.77},\n", " {'name': 'Draw', 'price': 2.5}]}]},\n", " {'key': 'betfair',\n", " 'title': 'Betfair',\n", " 'last_update': '2022-09-18T18:58:01Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'SC Freiburg', 'price': 4.1},\n", " {'name': 'TSG Hoffenheim', 'price': 3.55},\n", " {'name': 'Draw', 'price': 2.06}]},\n", " {'key': 'h2h_lay',\n", " 'outcomes': [{'name': 'SC Freiburg', 'price': 4.3},\n", " {'name': 'TSG Hoffenheim', 'price': 3.6},\n", " {'name': 'Draw', 'price': 2.08}]}]},\n", " {'key': 'betmgm',\n", " 'title': 'BetMGM',\n", " 'last_update': '2022-09-18T18:58:02Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'SC Freiburg', 'price': 4.1},\n", " {'name': 'TSG Hoffenheim', 'price': 3.3},\n", " {'name': 'Draw', 'price': 1.83}]}]},\n", " {'key': 'williamhill_us',\n", " 'title': 'William Hill (US)',\n", " 'last_update': '2022-09-18T18:58:01Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'SC Freiburg', 'price': 3.9},\n", " {'name': 'TSG Hoffenheim', 'price': 3.55},\n", " {'name': 'Draw', 'price': 1.89}]}]},\n", " {'key': 'foxbet',\n", " 'title': 'FOX Bet',\n", " 'last_update': '2022-09-18T18:58:01Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'SC Freiburg', 'price': 3.7},\n", " {'name': 'TSG Hoffenheim', 'price': 2.75},\n", " {'name': 'Draw', 'price': 2.2}]}]},\n", " {'key': 'sugarhouse',\n", " 'title': 'SugarHouse',\n", " 'last_update': '2022-09-18T18:58:02Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'SC Freiburg', 'price': 4.1},\n", " {'name': 'TSG Hoffenheim', 'price': 3.4},\n", " {'name': 'Draw', 'price': 1.92}]}]},\n", " {'key': 'barstool',\n", " 'title': 'Barstool Sportsbook',\n", " 'last_update': '2022-09-18T18:58:02Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'SC Freiburg', 'price': 4.1},\n", " {'name': 'TSG Hoffenheim', 'price': 3.4},\n", " {'name': 'Draw', 'price': 1.92}]}]},\n", " {'key': 'unibet',\n", " 'title': 'Unibet',\n", " 'last_update': '2022-09-18T18:58:01Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'SC Freiburg', 'price': 4.1},\n", " {'name': 'TSG Hoffenheim', 'price': 3.4},\n", " {'name': 'Draw', 'price': 1.92}]}]},\n", " {'key': 'twinspires',\n", " 'title': 'TwinSpires',\n", " 'last_update': '2022-09-18T18:58:02Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'SC Freiburg', 'price': 4.1},\n", " {'name': 'TSG Hoffenheim', 'price': 3.4},\n", " {'name': 'Draw', 'price': 1.92}]}]}]},\n", " {'id': '5e8f224871d0cc053757ada05d97a275',\n", " 'sport_key': 'baseball_mlb',\n", " 'sport_title': 'MLB',\n", " 'commence_time': '2022-09-18T17:34:30Z',\n", " 'home_team': 'Washington Nationals',\n", " 'away_team': 'Miami Marlins',\n", " 'bookmakers': [{'key': 'foxbet',\n", " 'title': 'FOX Bet',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Miami Marlins', 'price': 1.62},\n", " {'name': 'Washington Nationals', 'price': 2.15}]}]},\n", " {'key': 'fanduel',\n", " 'title': 'FanDuel',\n", " 'last_update': '2022-09-18T18:57:37Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Miami Marlins', 'price': 1.32},\n", " {'name': 'Washington Nationals', 'price': 3.25}]}]},\n", " {'key': 'bovada',\n", " 'title': 'Bovada',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Miami Marlins', 'price': 1.35},\n", " {'name': 'Washington Nationals', 'price': 3.1}]}]},\n", " {'key': 'gtbets',\n", " 'title': 'GTbets',\n", " 'last_update': '2022-09-18T18:57:39Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Miami Marlins', 'price': 1.34},\n", " {'name': 'Washington Nationals', 'price': 3.17}]}]},\n", " {'key': 'circasports',\n", " 'title': 'Circa Sports',\n", " 'last_update': '2022-09-18T18:57:39Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Miami Marlins', 'price': 1.41},\n", " {'name': 'Washington Nationals', 'price': 3.03}]}]},\n", " {'key': 'draftkings',\n", " 'title': 'DraftKings',\n", " 'last_update': '2022-09-18T18:57:37Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Miami Marlins', 'price': 1.4},\n", " {'name': 'Washington Nationals', 'price': 3.0}]}]},\n", " {'key': 'betmgm',\n", " 'title': 'BetMGM',\n", " 'last_update': '2022-09-18T18:57:39Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Miami Marlins', 'price': 1.36},\n", " {'name': 'Washington Nationals', 'price': 3.1}]}]},\n", " {'key': 'sugarhouse',\n", " 'title': 'SugarHouse',\n", " 'last_update': '2022-09-18T18:57:39Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Miami Marlins', 'price': 1.38},\n", " {'name': 'Washington Nationals', 'price': 3.05}]}]},\n", " {'key': 'barstool',\n", " 'title': 'Barstool Sportsbook',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Miami Marlins', 'price': 1.38},\n", " {'name': 'Washington Nationals', 'price': 3.05}]}]},\n", " {'key': 'twinspires',\n", " 'title': 'TwinSpires',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Miami Marlins', 'price': 1.38},\n", " {'name': 'Washington Nationals', 'price': 3.05}]}]},\n", " {'key': 'unibet',\n", " 'title': 'Unibet',\n", " 'last_update': '2022-09-18T18:57:37Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Miami Marlins', 'price': 1.38},\n", " {'name': 'Washington Nationals', 'price': 3.05}]}]},\n", " {'key': 'betfair',\n", " 'title': 'Betfair',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Miami Marlins', 'price': 1.32},\n", " {'name': 'Washington Nationals', 'price': 3.55}]},\n", " {'key': 'h2h_lay',\n", " 'outcomes': [{'name': 'Miami Marlins', 'price': 1.4},\n", " {'name': 'Washington Nationals', 'price': 4.5}]}]},\n", " {'key': 'mybookieag',\n", " 'title': 'MyBookie.ag',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Miami Marlins', 'price': 1.3},\n", " {'name': 'Washington Nationals', 'price': 3.46}]}]}]},\n", " {'id': '294751cf15862ac1c449d60f2b700d56',\n", " 'sport_key': 'baseball_mlb',\n", " 'sport_title': 'MLB',\n", " 'commence_time': '2022-09-18T17:35:19Z',\n", " 'home_team': 'Boston Red Sox',\n", " 'away_team': 'Kansas City Royals',\n", " 'bookmakers': [{'key': 'foxbet',\n", " 'title': 'FOX Bet',\n", " 'last_update': '2022-09-18T18:56:44Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Boston Red Sox', 'price': 1.15},\n", " {'name': 'Kansas City Royals', 'price': 4.75}]}]},\n", " {'key': 'fanduel',\n", " 'title': 'FanDuel',\n", " 'last_update': '2022-09-18T18:57:37Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Boston Red Sox', 'price': 1.07},\n", " {'name': 'Kansas City Royals', 'price': 8.3}]}]},\n", " {'key': 'gtbets',\n", " 'title': 'GTbets',\n", " 'last_update': '2022-09-18T18:57:39Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Boston Red Sox', 'price': 1.09},\n", " {'name': 'Kansas City Royals', 'price': 7.16}]}]},\n", " {'key': 'bovada',\n", " 'title': 'Bovada',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Boston Red Sox', 'price': 1.07},\n", " {'name': 'Kansas City Royals', 'price': 8.0}]}]},\n", " {'key': 'circasports',\n", " 'title': 'Circa Sports',\n", " 'last_update': '2022-09-18T18:55:29Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Boston Red Sox', 'price': 1.09},\n", " {'name': 'Kansas City Royals', 'price': 8.06}]}]},\n", " {'key': 'draftkings',\n", " 'title': 'DraftKings',\n", " 'last_update': '2022-09-18T18:57:37Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Boston Red Sox', 'price': 1.13},\n", " {'name': 'Kansas City Royals', 'price': 6.3}]}]},\n", " {'key': 'betmgm',\n", " 'title': 'BetMGM',\n", " 'last_update': '2022-09-18T18:57:39Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Boston Red Sox', 'price': 1.1},\n", " {'name': 'Kansas City Royals', 'price': 6.5}]}]},\n", " {'key': 'sugarhouse',\n", " 'title': 'SugarHouse',\n", " 'last_update': '2022-09-18T18:57:39Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Boston Red Sox', 'price': 1.06},\n", " {'name': 'Kansas City Royals', 'price': 9.0}]}]},\n", " {'key': 'barstool',\n", " 'title': 'Barstool Sportsbook',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Boston Red Sox', 'price': 1.06},\n", " {'name': 'Kansas City Royals', 'price': 9.0}]}]},\n", " {'key': 'twinspires',\n", " 'title': 'TwinSpires',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Boston Red Sox', 'price': 1.06},\n", " {'name': 'Kansas City Royals', 'price': 9.0}]}]},\n", " {'key': 'unibet',\n", " 'title': 'Unibet',\n", " 'last_update': '2022-09-18T18:57:37Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Boston Red Sox', 'price': 1.06},\n", " {'name': 'Kansas City Royals', 'price': 9.0}]}]},\n", " {'key': 'betfair',\n", " 'title': 'Betfair',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Boston Red Sox', 'price': 1.1},\n", " {'name': 'Kansas City Royals', 'price': 7.4}]},\n", " {'key': 'h2h_lay',\n", " 'outcomes': [{'name': 'Boston Red Sox', 'price': 1.15},\n", " {'name': 'Kansas City Royals', 'price': 13.5}]}]}]},\n", " {'id': '711b32d572df77854ed31a5f6224b88d',\n", " 'sport_key': 'baseball_mlb',\n", " 'sport_title': 'MLB',\n", " 'commence_time': '2022-09-18T17:35:56Z',\n", " 'home_team': 'Atlanta Braves',\n", " 'away_team': 'Philadelphia Phillies',\n", " 'bookmakers': [{'key': 'foxbet',\n", " 'title': 'FOX Bet',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Atlanta Braves', 'price': 1.2},\n", " {'name': 'Philadelphia Phillies', 'price': 4.0}]}]},\n", " {'key': 'fanduel',\n", " 'title': 'FanDuel',\n", " 'last_update': '2022-09-18T18:57:37Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Atlanta Braves', 'price': 1.25},\n", " {'name': 'Philadelphia Phillies', 'price': 3.8}]}]},\n", " {'key': 'bovada',\n", " 'title': 'Bovada',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Atlanta Braves', 'price': 1.26},\n", " {'name': 'Philadelphia Phillies', 'price': 3.65}]}]},\n", " {'key': 'gtbets',\n", " 'title': 'GTbets',\n", " 'last_update': '2022-09-18T18:57:39Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Atlanta Braves', 'price': 1.28},\n", " {'name': 'Philadelphia Phillies', 'price': 3.57}]}]},\n", " {'key': 'circasports',\n", " 'title': 'Circa Sports',\n", " 'last_update': '2022-09-18T18:52:03Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Atlanta Braves', 'price': 1.24},\n", " {'name': 'Philadelphia Phillies', 'price': 4.27}]}]},\n", " {'key': 'draftkings',\n", " 'title': 'DraftKings',\n", " 'last_update': '2022-09-18T18:57:37Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Atlanta Braves', 'price': 1.29},\n", " {'name': 'Philadelphia Phillies', 'price': 3.65}]}]},\n", " {'key': 'betmgm',\n", " 'title': 'BetMGM',\n", " 'last_update': '2022-09-18T18:57:39Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Atlanta Braves', 'price': 1.22},\n", " {'name': 'Philadelphia Phillies', 'price': 4.1}]}]},\n", " {'key': 'sugarhouse',\n", " 'title': 'SugarHouse',\n", " 'last_update': '2022-09-18T18:57:39Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Atlanta Braves', 'price': 1.24},\n", " {'name': 'Philadelphia Phillies', 'price': 4.1}]}]},\n", " {'key': 'barstool',\n", " 'title': 'Barstool Sportsbook',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Atlanta Braves', 'price': 1.24},\n", " {'name': 'Philadelphia Phillies', 'price': 4.1}]}]},\n", " {'key': 'twinspires',\n", " 'title': 'TwinSpires',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Atlanta Braves', 'price': 1.24},\n", " {'name': 'Philadelphia Phillies', 'price': 4.1}]}]},\n", " {'key': 'unibet',\n", " 'title': 'Unibet',\n", " 'last_update': '2022-09-18T18:57:37Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Atlanta Braves', 'price': 1.24},\n", " {'name': 'Philadelphia Phillies', 'price': 4.1}]}]},\n", " {'key': 'betfair',\n", " 'title': 'Betfair',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Atlanta Braves', 'price': 1.24},\n", " {'name': 'Philadelphia Phillies', 'price': 4.0}]},\n", " {'key': 'h2h_lay',\n", " 'outcomes': [{'name': 'Atlanta Braves', 'price': 1.32},\n", " {'name': 'Philadelphia Phillies', 'price': 5.4}]}]}]},\n", " {'id': 'd5381d34df2482c116b2871b21bf62bf',\n", " 'sport_key': 'baseball_mlb',\n", " 'sport_title': 'MLB',\n", " 'commence_time': '2022-09-18T17:40:00Z',\n", " 'home_team': 'Cleveland Guardians',\n", " 'away_team': 'Minnesota Twins',\n", " 'bookmakers': [{'key': 'draftkings',\n", " 'title': 'DraftKings',\n", " 'last_update': '2022-09-18T18:57:37Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Cleveland Guardians', 'price': 2.85},\n", " {'name': 'Minnesota Twins', 'price': 1.43}]}]},\n", " {'key': 'foxbet',\n", " 'title': 'FOX Bet',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Cleveland Guardians', 'price': 2.1},\n", " {'name': 'Minnesota Twins', 'price': 1.65}]}]},\n", " {'key': 'gtbets',\n", " 'title': 'GTbets',\n", " 'last_update': '2022-09-18T18:57:39Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Cleveland Guardians', 'price': 2.61},\n", " {'name': 'Minnesota Twins', 'price': 1.48}]}]},\n", " {'key': 'bovada',\n", " 'title': 'Bovada',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Cleveland Guardians', 'price': 2.7},\n", " {'name': 'Minnesota Twins', 'price': 1.44}]}]},\n", " {'key': 'fanduel',\n", " 'title': 'FanDuel',\n", " 'last_update': '2022-09-18T18:57:37Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Cleveland Guardians', 'price': 3.05},\n", " {'name': 'Minnesota Twins', 'price': 1.36}]}]},\n", " {'key': 'circasports',\n", " 'title': 'Circa Sports',\n", " 'last_update': '2022-09-18T18:56:45Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Cleveland Guardians', 'price': 2.86},\n", " {'name': 'Minnesota Twins', 'price': 1.45}]}]},\n", " {'key': 'betmgm',\n", " 'title': 'BetMGM',\n", " 'last_update': '2022-09-18T18:57:39Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Cleveland Guardians', 'price': 2.8},\n", " {'name': 'Minnesota Twins', 'price': 1.4}]}]},\n", " {'key': 'sugarhouse',\n", " 'title': 'SugarHouse',\n", " 'last_update': '2022-09-18T18:57:39Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Cleveland Guardians', 'price': 3.05},\n", " {'name': 'Minnesota Twins', 'price': 1.38}]}]},\n", " {'key': 'barstool',\n", " 'title': 'Barstool Sportsbook',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Cleveland Guardians', 'price': 3.05},\n", " {'name': 'Minnesota Twins', 'price': 1.38}]}]},\n", " {'key': 'twinspires',\n", " 'title': 'TwinSpires',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Cleveland Guardians', 'price': 3.05},\n", " {'name': 'Minnesota Twins', 'price': 1.38}]}]},\n", " {'key': 'unibet',\n", " 'title': 'Unibet',\n", " 'last_update': '2022-09-18T18:57:37Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Cleveland Guardians', 'price': 3.05},\n", " {'name': 'Minnesota Twins', 'price': 1.38}]}]},\n", " {'key': 'betfair',\n", " 'title': 'Betfair',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Cleveland Guardians', 'price': 2.76},\n", " {'name': 'Minnesota Twins', 'price': 1.47}]},\n", " {'key': 'h2h_lay',\n", " 'outcomes': [{'name': 'Cleveland Guardians', 'price': 3.15},\n", " {'name': 'Minnesota Twins', 'price': 1.57}]}]},\n", " {'key': 'mybookieag',\n", " 'title': 'MyBookie.ag',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Cleveland Guardians', 'price': 2.67},\n", " {'name': 'Minnesota Twins', 'price': 1.46}]}]}]},\n", " {'id': '7fbc39964eb2153b7ecb165bf10a303f',\n", " 'sport_key': 'baseball_mlb',\n", " 'sport_title': 'MLB',\n", " 'commence_time': '2022-09-18T17:40:00Z',\n", " 'home_team': 'New York Mets',\n", " 'away_team': 'Pittsburgh Pirates',\n", " 'bookmakers': [{'key': 'draftkings',\n", " 'title': 'DraftKings',\n", " 'last_update': '2022-09-18T18:57:37Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'New York Mets', 'price': 1.04},\n", " {'name': 'Pittsburgh Pirates', 'price': 12.0}]}]},\n", " {'key': 'foxbet',\n", " 'title': 'FOX Bet',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'New York Mets', 'price': 1.02},\n", " {'name': 'Pittsburgh Pirates', 'price': 10.0}]}]},\n", " {'key': 'fanduel',\n", " 'title': 'FanDuel',\n", " 'last_update': '2022-09-18T18:57:37Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'New York Mets', 'price': 1.02},\n", " {'name': 'Pittsburgh Pirates', 'price': 24.0}]}]},\n", " {'key': 'gtbets',\n", " 'title': 'GTbets',\n", " 'last_update': '2022-09-18T18:57:39Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'New York Mets', 'price': 1.05},\n", " {'name': 'Pittsburgh Pirates', 'price': 9.09}]}]},\n", " {'key': 'bovada',\n", " 'title': 'Bovada',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'New York Mets', 'price': 1.02},\n", " {'name': 'Pittsburgh Pirates', 'price': 16.0}]}]},\n", " {'key': 'betmgm',\n", " 'title': 'BetMGM',\n", " 'last_update': '2022-09-18T18:57:39Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'New York Mets', 'price': 1.01},\n", " {'name': 'Pittsburgh Pirates', 'price': 23.0}]}]},\n", " {'key': 'betfair',\n", " 'title': 'Betfair',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'New York Mets', 'price': 1.02},\n", " {'name': 'Pittsburgh Pirates', 'price': 21.0}]},\n", " {'key': 'h2h_lay',\n", " 'outcomes': [{'name': 'New York Mets', 'price': 1.05},\n", " {'name': 'Pittsburgh Pirates', 'price': 55.0}]}]},\n", " {'key': 'mybookieag',\n", " 'title': 'MyBookie.ag',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'New York Mets', 'price': 1.01},\n", " {'name': 'Pittsburgh Pirates', 'price': 13.77}]}]}]},\n", " {'id': '5f5b11d2a4b9d45f517f24a36377847b',\n", " 'sport_key': 'baseball_mlb',\n", " 'sport_title': 'MLB',\n", " 'commence_time': '2022-09-18T17:40:22Z',\n", " 'home_team': 'Toronto Blue Jays',\n", " 'away_team': 'Baltimore Orioles',\n", " 'bookmakers': [{'key': 'draftkings',\n", " 'title': 'DraftKings',\n", " 'last_update': '2022-09-18T18:57:37Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Baltimore Orioles', 'price': 1.95},\n", " {'name': 'Toronto Blue Jays', 'price': 1.8}]}]},\n", " {'key': 'foxbet',\n", " 'title': 'FOX Bet',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Baltimore Orioles', 'price': 3.6},\n", " {'name': 'Toronto Blue Jays', 'price': 1.25}]}]},\n", " {'key': 'gtbets',\n", " 'title': 'GTbets',\n", " 'last_update': '2022-09-18T18:57:39Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Baltimore Orioles', 'price': 1.88},\n", " {'name': 'Toronto Blue Jays', 'price': 1.88}]}]},\n", " {'key': 'bovada',\n", " 'title': 'Bovada',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Baltimore Orioles', 'price': 1.95},\n", " {'name': 'Toronto Blue Jays', 'price': 1.8}]}]},\n", " {'key': 'fanduel',\n", " 'title': 'FanDuel',\n", " 'last_update': '2022-09-18T18:57:37Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Baltimore Orioles', 'price': 1.93},\n", " {'name': 'Toronto Blue Jays', 'price': 1.85}]}]},\n", " {'key': 'circasports',\n", " 'title': 'Circa Sports',\n", " 'last_update': '2022-09-18T18:52:03Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Baltimore Orioles', 'price': 3.4},\n", " {'name': 'Toronto Blue Jays', 'price': 1.34}]}]},\n", " {'key': 'betmgm',\n", " 'title': 'BetMGM',\n", " 'last_update': '2022-09-18T18:57:39Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Baltimore Orioles', 'price': 1.91},\n", " {'name': 'Toronto Blue Jays', 'price': 1.87}]}]},\n", " {'key': 'sugarhouse',\n", " 'title': 'SugarHouse',\n", " 'last_update': '2022-09-18T18:57:39Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Baltimore Orioles', 'price': 1.95},\n", " {'name': 'Toronto Blue Jays', 'price': 1.83}]}]},\n", " {'key': 'barstool',\n", " 'title': 'Barstool Sportsbook',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Baltimore Orioles', 'price': 1.95},\n", " {'name': 'Toronto Blue Jays', 'price': 1.83}]}]},\n", " {'key': 'twinspires',\n", " 'title': 'TwinSpires',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Baltimore Orioles', 'price': 1.95},\n", " {'name': 'Toronto Blue Jays', 'price': 1.83}]}]},\n", " {'key': 'unibet',\n", " 'title': 'Unibet',\n", " 'last_update': '2022-09-18T18:57:37Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Baltimore Orioles', 'price': 1.96},\n", " {'name': 'Toronto Blue Jays', 'price': 1.84}]}]},\n", " {'key': 'betfair',\n", " 'title': 'Betfair',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Baltimore Orioles', 'price': 1.94},\n", " {'name': 'Toronto Blue Jays', 'price': 1.83}]},\n", " {'key': 'h2h_lay',\n", " 'outcomes': [{'name': 'Baltimore Orioles', 'price': 2.22},\n", " {'name': 'Toronto Blue Jays', 'price': 2.08}]}]}]},\n", " {'id': '566b143a5d0cd382e0afe8c609effc30',\n", " 'sport_key': 'soccer_norway_eliteserien',\n", " 'sport_title': 'Eliteserien - Norway',\n", " 'commence_time': '2022-09-18T18:01:11Z',\n", " 'home_team': 'Molde',\n", " 'away_team': 'Aalesund',\n", " 'bookmakers': [{'key': 'fanduel',\n", " 'title': 'FanDuel',\n", " 'last_update': '2022-09-18T18:57:57Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Aalesund', 'price': 23.0},\n", " {'name': 'Molde', 'price': 1.1},\n", " {'name': 'Draw', 'price': 7.5}]}]},\n", " {'key': 'unibet',\n", " 'title': 'Unibet',\n", " 'last_update': '2022-09-18T18:57:57Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Aalesund', 'price': 29.0},\n", " {'name': 'Molde', 'price': 1.11},\n", " {'name': 'Draw', 'price': 8.5}]}]},\n", " {'key': 'barstool',\n", " 'title': 'Barstool Sportsbook',\n", " 'last_update': '2022-09-18T18:57:57Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Aalesund', 'price': 29.0},\n", " {'name': 'Molde', 'price': 1.11},\n", " {'name': 'Draw', 'price': 8.5}]}]},\n", " {'key': 'sugarhouse',\n", " 'title': 'SugarHouse',\n", " 'last_update': '2022-09-18T18:57:57Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Aalesund', 'price': 29.0},\n", " {'name': 'Molde', 'price': 1.11},\n", " {'name': 'Draw', 'price': 8.5}]}]},\n", " {'key': 'twinspires',\n", " 'title': 'TwinSpires',\n", " 'last_update': '2022-09-18T18:57:58Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Aalesund', 'price': 29.0},\n", " {'name': 'Molde', 'price': 1.11},\n", " {'name': 'Draw', 'price': 8.5}]}]},\n", " {'key': 'bovada',\n", " 'title': 'Bovada',\n", " 'last_update': '2022-09-18T18:57:58Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Aalesund', 'price': 25.0},\n", " {'name': 'Molde', 'price': 1.12},\n", " {'name': 'Draw', 'price': 7.0}]}]},\n", " {'key': 'draftkings',\n", " 'title': 'DraftKings',\n", " 'last_update': '2022-09-18T18:57:56Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Aalesund', 'price': 21.0},\n", " {'name': 'Molde', 'price': 1.12},\n", " {'name': 'Draw', 'price': 8.5}]}]},\n", " {'key': 'foxbet',\n", " 'title': 'FOX Bet',\n", " 'last_update': '2022-09-18T18:57:56Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Aalesund', 'price': 11.0},\n", " {'name': 'Molde', 'price': 1.11},\n", " {'name': 'Draw', 'price': 5.5}]}]},\n", " {'key': 'betfair',\n", " 'title': 'Betfair',\n", " 'last_update': '2022-09-18T18:57:58Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Aalesund', 'price': 36.0},\n", " {'name': 'Molde', 'price': 1.15},\n", " {'name': 'Draw', 'price': 9.4}]},\n", " {'key': 'h2h_lay',\n", " 'outcomes': [{'name': 'Aalesund', 'price': 40.0},\n", " {'name': 'Molde', 'price': 1.16},\n", " {'name': 'Draw', 'price': 9.6}]}]}]},\n", " {'id': '9e555a674dfd0b90f372e6f39de65c5b',\n", " 'sport_key': 'baseball_mlb',\n", " 'sport_title': 'MLB',\n", " 'commence_time': '2022-09-18T18:10:52Z',\n", " 'home_team': 'Milwaukee Brewers',\n", " 'away_team': 'New York Yankees',\n", " 'bookmakers': [{'key': 'fanduel',\n", " 'title': 'FanDuel',\n", " 'last_update': '2022-09-18T18:57:37Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Milwaukee Brewers', 'price': 1.47},\n", " {'name': 'New York Yankees', 'price': 2.64}]}]},\n", " {'key': 'bovada',\n", " 'title': 'Bovada',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Milwaukee Brewers', 'price': 1.24},\n", " {'name': 'New York Yankees', 'price': 3.85}]}]},\n", " {'key': 'circasports',\n", " 'title': 'Circa Sports',\n", " 'last_update': '2022-09-18T18:53:19Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Milwaukee Brewers', 'price': 1.32},\n", " {'name': 'New York Yankees', 'price': 3.52}]}]},\n", " {'key': 'gtbets',\n", " 'title': 'GTbets',\n", " 'last_update': '2022-09-18T18:57:39Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Milwaukee Brewers', 'price': 1.42},\n", " {'name': 'New York Yankees', 'price': 2.82}]}]},\n", " {'key': 'draftkings',\n", " 'title': 'DraftKings',\n", " 'last_update': '2022-09-18T18:57:37Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Milwaukee Brewers', 'price': 1.45},\n", " {'name': 'New York Yankees', 'price': 2.8}]}]},\n", " {'key': 'foxbet',\n", " 'title': 'FOX Bet',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Milwaukee Brewers', 'price': 1.28},\n", " {'name': 'New York Yankees', 'price': 3.3}]}]},\n", " {'key': 'betmgm',\n", " 'title': 'BetMGM',\n", " 'last_update': '2022-09-18T18:57:39Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Milwaukee Brewers', 'price': 1.44},\n", " {'name': 'New York Yankees', 'price': 2.7}]}]},\n", " {'key': 'sugarhouse',\n", " 'title': 'SugarHouse',\n", " 'last_update': '2022-09-18T18:57:39Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Milwaukee Brewers', 'price': 1.41},\n", " {'name': 'New York Yankees', 'price': 2.9}]}]},\n", " {'key': 'barstool',\n", " 'title': 'Barstool Sportsbook',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Milwaukee Brewers', 'price': 1.41},\n", " {'name': 'New York Yankees', 'price': 2.9}]}]},\n", " {'key': 'twinspires',\n", " 'title': 'TwinSpires',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Milwaukee Brewers', 'price': 1.41},\n", " {'name': 'New York Yankees', 'price': 2.9}]}]},\n", " {'key': 'unibet',\n", " 'title': 'Unibet',\n", " 'last_update': '2022-09-18T18:57:37Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Milwaukee Brewers', 'price': 1.41},\n", " {'name': 'New York Yankees', 'price': 2.9}]}]},\n", " {'key': 'betfair',\n", " 'title': 'Betfair',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Milwaukee Brewers', 'price': 1.32},\n", " {'name': 'New York Yankees', 'price': 3.75}]},\n", " {'key': 'h2h_lay',\n", " 'outcomes': [{'name': 'Milwaukee Brewers', 'price': 1.37},\n", " {'name': 'New York Yankees', 'price': 4.4}]}]}]},\n", " {'id': '3707f2ccc8078f945962d76e58f1fc14',\n", " 'sport_key': 'baseball_mlb',\n", " 'sport_title': 'MLB',\n", " 'commence_time': '2022-09-18T18:10:55Z',\n", " 'home_team': 'Houston Astros',\n", " 'away_team': 'Oakland Athletics',\n", " 'bookmakers': [{'key': 'draftkings',\n", " 'title': 'DraftKings',\n", " 'last_update': '2022-09-18T18:57:37Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Houston Astros', 'price': 1.34},\n", " {'name': 'Oakland Athletics', 'price': 3.3}]}]},\n", " {'key': 'fanduel',\n", " 'title': 'FanDuel',\n", " 'last_update': '2022-09-18T18:57:37Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Houston Astros', 'price': 1.28},\n", " {'name': 'Oakland Athletics', 'price': 3.5}]}]},\n", " {'key': 'foxbet',\n", " 'title': 'FOX Bet',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Houston Astros', 'price': 1.28},\n", " {'name': 'Oakland Athletics', 'price': 3.3}]}]},\n", " {'key': 'gtbets',\n", " 'title': 'GTbets',\n", " 'last_update': '2022-09-18T18:57:39Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Houston Astros', 'price': 1.29},\n", " {'name': 'Oakland Athletics', 'price': 3.48}]}]},\n", " {'key': 'bovada',\n", " 'title': 'Bovada',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Houston Astros', 'price': 1.31},\n", " {'name': 'Oakland Athletics', 'price': 3.3}]}]},\n", " {'key': 'betmgm',\n", " 'title': 'BetMGM',\n", " 'last_update': '2022-09-18T18:57:39Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Houston Astros', 'price': 1.29},\n", " {'name': 'Oakland Athletics', 'price': 3.4}]}]},\n", " {'key': 'sugarhouse',\n", " 'title': 'SugarHouse',\n", " 'last_update': '2022-09-18T18:57:39Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Houston Astros', 'price': 1.28},\n", " {'name': 'Oakland Athletics', 'price': 3.65}]}]},\n", " {'key': 'barstool',\n", " 'title': 'Barstool Sportsbook',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Houston Astros', 'price': 1.28},\n", " {'name': 'Oakland Athletics', 'price': 3.65}]}]},\n", " {'key': 'twinspires',\n", " 'title': 'TwinSpires',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Houston Astros', 'price': 1.28},\n", " {'name': 'Oakland Athletics', 'price': 3.65}]}]},\n", " {'key': 'unibet',\n", " 'title': 'Unibet',\n", " 'last_update': '2022-09-18T18:57:37Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Houston Astros', 'price': 1.28},\n", " {'name': 'Oakland Athletics', 'price': 3.65}]}]},\n", " {'key': 'betfair',\n", " 'title': 'Betfair',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Houston Astros', 'price': 1.31},\n", " {'name': 'Oakland Athletics', 'price': 3.55}]},\n", " {'key': 'h2h_lay',\n", " 'outcomes': [{'name': 'Houston Astros', 'price': 1.38},\n", " {'name': 'Oakland Athletics', 'price': 4.5}]}]}]},\n", " {'id': 'b3f08e2fd6e0704b7f90f01f73426f82',\n", " 'sport_key': 'baseball_mlb',\n", " 'sport_title': 'MLB',\n", " 'commence_time': '2022-09-18T18:16:28Z',\n", " 'home_team': 'St. Louis Cardinals',\n", " 'away_team': 'Cincinnati Reds',\n", " 'bookmakers': [{'key': 'fanduel',\n", " 'title': 'FanDuel',\n", " 'last_update': '2022-09-18T18:57:37Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Cincinnati Reds', 'price': 2.84},\n", " {'name': 'St. Louis Cardinals', 'price': 1.42}]}]},\n", " {'key': 'bovada',\n", " 'title': 'Bovada',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Cincinnati Reds', 'price': 2.9},\n", " {'name': 'St. Louis Cardinals', 'price': 1.38}]}]},\n", " {'key': 'circasports',\n", " 'title': 'Circa Sports',\n", " 'last_update': '2022-09-18T18:49:30Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Cincinnati Reds', 'price': 2.78},\n", " {'name': 'St. Louis Cardinals', 'price': 1.47}]}]},\n", " {'key': 'gtbets',\n", " 'title': 'GTbets',\n", " 'last_update': '2022-09-18T18:57:39Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Cincinnati Reds', 'price': 3.0},\n", " {'name': 'St. Louis Cardinals', 'price': 1.38}]}]},\n", " {'key': 'draftkings',\n", " 'title': 'DraftKings',\n", " 'last_update': '2022-09-18T18:57:37Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Cincinnati Reds', 'price': 3.0},\n", " {'name': 'St. Louis Cardinals', 'price': 1.4}]}]},\n", " {'key': 'foxbet',\n", " 'title': 'FOX Bet',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Cincinnati Reds', 'price': 2.7},\n", " {'name': 'St. Louis Cardinals', 'price': 1.4}]}]},\n", " {'key': 'betmgm',\n", " 'title': 'BetMGM',\n", " 'last_update': '2022-09-18T18:57:39Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Cincinnati Reds', 'price': 3.2},\n", " {'name': 'St. Louis Cardinals', 'price': 1.33}]}]},\n", " {'key': 'sugarhouse',\n", " 'title': 'SugarHouse',\n", " 'last_update': '2022-09-18T18:57:39Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Cincinnati Reds', 'price': 3.2},\n", " {'name': 'St. Louis Cardinals', 'price': 1.34}]}]},\n", " {'key': 'barstool',\n", " 'title': 'Barstool Sportsbook',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Cincinnati Reds', 'price': 3.2},\n", " {'name': 'St. Louis Cardinals', 'price': 1.34}]}]},\n", " {'key': 'twinspires',\n", " 'title': 'TwinSpires',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Cincinnati Reds', 'price': 3.2},\n", " {'name': 'St. Louis Cardinals', 'price': 1.34}]}]},\n", " {'key': 'unibet',\n", " 'title': 'Unibet',\n", " 'last_update': '2022-09-18T18:57:37Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Cincinnati Reds', 'price': 3.2},\n", " {'name': 'St. Louis Cardinals', 'price': 1.34}]}]},\n", " {'key': 'betfair',\n", " 'title': 'Betfair',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Cincinnati Reds', 'price': 2.84},\n", " {'name': 'St. Louis Cardinals', 'price': 1.43}]},\n", " {'key': 'h2h_lay',\n", " 'outcomes': [{'name': 'Cincinnati Reds', 'price': 3.35},\n", " {'name': 'St. Louis Cardinals', 'price': 1.54}]}]}]},\n", " {'id': 'a04f55f500c941579b55cdff64075ffe',\n", " 'sport_key': 'baseball_mlb',\n", " 'sport_title': 'MLB',\n", " 'commence_time': '2022-09-18T18:20:39Z',\n", " 'home_team': 'Chicago Cubs',\n", " 'away_team': 'Colorado Rockies',\n", " 'bookmakers': [{'key': 'draftkings',\n", " 'title': 'DraftKings',\n", " 'last_update': '2022-09-18T18:57:37Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Chicago Cubs', 'price': 4.4},\n", " {'name': 'Colorado Rockies', 'price': 1.22}]}]},\n", " {'key': 'foxbet',\n", " 'title': 'FOX Bet',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Chicago Cubs', 'price': 4.0},\n", " {'name': 'Colorado Rockies', 'price': 1.2}]}]},\n", " {'key': 'fanduel',\n", " 'title': 'FanDuel',\n", " 'last_update': '2022-09-18T18:57:37Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Chicago Cubs', 'price': 4.1},\n", " {'name': 'Colorado Rockies', 'price': 1.22}]}]},\n", " {'key': 'bovada',\n", " 'title': 'Bovada',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Chicago Cubs', 'price': 4.05},\n", " {'name': 'Colorado Rockies', 'price': 1.22}]}]},\n", " {'key': 'circasports',\n", " 'title': 'Circa Sports',\n", " 'last_update': '2022-09-18T18:50:56Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Chicago Cubs', 'price': 4.46},\n", " {'name': 'Colorado Rockies', 'price': 1.22}]}]},\n", " {'key': 'gtbets',\n", " 'title': 'GTbets',\n", " 'last_update': '2022-09-18T18:57:39Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Chicago Cubs', 'price': 4.56},\n", " {'name': 'Colorado Rockies', 'price': 1.19}]}]},\n", " {'key': 'sugarhouse',\n", " 'title': 'SugarHouse',\n", " 'last_update': '2022-09-18T18:57:39Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Chicago Cubs', 'price': 4.0},\n", " {'name': 'Colorado Rockies', 'price': 1.24}]}]},\n", " {'key': 'barstool',\n", " 'title': 'Barstool Sportsbook',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Chicago Cubs', 'price': 4.0},\n", " {'name': 'Colorado Rockies', 'price': 1.24}]}]},\n", " {'key': 'twinspires',\n", " 'title': 'TwinSpires',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Chicago Cubs', 'price': 4.0},\n", " {'name': 'Colorado Rockies', 'price': 1.24}]}]},\n", " {'key': 'unibet',\n", " 'title': 'Unibet',\n", " 'last_update': '2022-09-18T18:57:37Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Chicago Cubs', 'price': 4.0},\n", " {'name': 'Colorado Rockies', 'price': 1.24}]}]},\n", " {'key': 'betfair',\n", " 'title': 'Betfair',\n", " 'last_update': '2022-09-18T18:57:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Chicago Cubs', 'price': 4.3},\n", " {'name': 'Colorado Rockies', 'price': 1.22}]},\n", " {'key': 'h2h_lay',\n", " 'outcomes': [{'name': 'Chicago Cubs', 'price': 5.8},\n", " {'name': 'Colorado Rockies', 'price': 1.3}]}]},\n", " {'key': 'betmgm',\n", " 'title': 'BetMGM',\n", " 'last_update': '2022-09-18T18:57:39Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Chicago Cubs', 'price': 4.1},\n", " {'name': 'Colorado Rockies', 'price': 1.22}]}]}]},\n", " {'id': '8a57fe74d3ee9cdcde9ddd740eba720f',\n", " 'sport_key': 'soccer_italy_serie_a',\n", " 'sport_title': 'Serie A - Italy',\n", " 'commence_time': '2022-09-18T18:45:00Z',\n", " 'home_team': 'AC Milan',\n", " 'away_team': 'Napoli',\n", " 'bookmakers': [{'key': 'fanduel',\n", " 'title': 'FanDuel',\n", " 'last_update': '2022-09-18T18:57:27Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'AC Milan', 'price': 2.3},\n", " {'name': 'Napoli', 'price': 3.3},\n", " {'name': 'Draw', 'price': 3.0}]}]},\n", " {'key': 'wynnbet',\n", " 'title': 'WynnBET',\n", " 'last_update': '2022-09-18T18:44:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'AC Milan', 'price': 2.3},\n", " {'name': 'Napoli', 'price': 3.38},\n", " {'name': 'Draw', 'price': 3.25}]}]},\n", " {'key': 'draftkings',\n", " 'title': 'DraftKings',\n", " 'last_update': '2022-09-18T18:57:27Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'AC Milan', 'price': 2.2},\n", " {'name': 'Napoli', 'price': 3.35},\n", " {'name': 'Draw', 'price': 3.15}]}]},\n", " {'key': 'bovada',\n", " 'title': 'Bovada',\n", " 'last_update': '2022-09-18T18:57:27Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'AC Milan', 'price': 2.26},\n", " {'name': 'Napoli', 'price': 3.45},\n", " {'name': 'Draw', 'price': 3.0}]}]},\n", " {'key': 'mybookieag',\n", " 'title': 'MyBookie.ag',\n", " 'last_update': '2022-09-18T18:57:27Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'AC Milan', 'price': 2.27},\n", " {'name': 'Napoli', 'price': 3.41},\n", " {'name': 'Draw', 'price': 2.97}]}]},\n", " {'key': 'williamhill_us',\n", " 'title': 'William Hill (US)',\n", " 'last_update': '2022-09-18T18:47:01Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'AC Milan', 'price': 2.35},\n", " {'name': 'Napoli', 'price': 3.2},\n", " {'name': 'Draw', 'price': 3.2}]}]},\n", " {'key': 'foxbet',\n", " 'title': 'FOX Bet',\n", " 'last_update': '2022-09-18T18:57:27Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'AC Milan', 'price': 2.25},\n", " {'name': 'Napoli', 'price': 3.3},\n", " {'name': 'Draw', 'price': 3.15}]}]},\n", " {'key': 'betfair',\n", " 'title': 'Betfair',\n", " 'last_update': '2022-09-18T18:57:28Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'AC Milan', 'price': 2.4},\n", " {'name': 'Napoli', 'price': 3.65},\n", " {'name': 'Draw', 'price': 3.15}]},\n", " {'key': 'h2h_lay',\n", " 'outcomes': [{'name': 'AC Milan', 'price': 2.42},\n", " {'name': 'Napoli', 'price': 3.7},\n", " {'name': 'Draw', 'price': 3.2}]}]},\n", " {'key': 'superbook',\n", " 'title': 'SuperBook',\n", " 'last_update': '2022-09-18T18:44:39Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'AC Milan', 'price': 2.3},\n", " {'name': 'Napoli', 'price': 3.25},\n", " {'name': 'Draw', 'price': 3.2}]}]},\n", " {'key': 'barstool',\n", " 'title': 'Barstool Sportsbook',\n", " 'last_update': '2022-09-18T18:57:28Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'AC Milan', 'price': 2.28},\n", " {'name': 'Napoli', 'price': 3.45},\n", " {'name': 'Draw', 'price': 3.05}]}]},\n", " {'key': 'unibet',\n", " 'title': 'Unibet',\n", " 'last_update': '2022-09-18T18:57:27Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'AC Milan', 'price': 2.28},\n", " {'name': 'Napoli', 'price': 3.45},\n", " {'name': 'Draw', 'price': 3.05}]}]},\n", " {'key': 'twinspires',\n", " 'title': 'TwinSpires',\n", " 'last_update': '2022-09-18T18:57:28Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'AC Milan', 'price': 2.28},\n", " {'name': 'Napoli', 'price': 3.45},\n", " {'name': 'Draw', 'price': 3.05}]}]},\n", " {'key': 'sugarhouse',\n", " 'title': 'SugarHouse',\n", " 'last_update': '2022-09-18T18:57:28Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'AC Milan', 'price': 2.28},\n", " {'name': 'Napoli', 'price': 3.45},\n", " {'name': 'Draw', 'price': 3.05}]}]},\n", " {'key': 'intertops',\n", " 'title': 'Intertops',\n", " 'last_update': '2022-09-18T18:44:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'AC Milan', 'price': 2.3},\n", " {'name': 'Napoli', 'price': 3.3},\n", " {'name': 'Draw', 'price': 3.15}]}]},\n", " {'key': 'gtbets',\n", " 'title': 'GTbets',\n", " 'last_update': '2022-09-18T18:45:48Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'AC Milan', 'price': 2.31},\n", " {'name': 'Napoli', 'price': 3.2},\n", " {'name': 'Draw', 'price': 3.18}]}]},\n", " {'key': 'lowvig',\n", " 'title': 'LowVig.ag',\n", " 'last_update': '2022-09-18T18:44:40Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'AC Milan', 'price': 2.37},\n", " {'name': 'Napoli', 'price': 3.3},\n", " {'name': 'Draw', 'price': 3.22}]}]},\n", " {'key': 'betonlineag',\n", " 'title': 'BetOnline.ag',\n", " 'last_update': '2022-09-18T18:45:48Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'AC Milan', 'price': 2.37},\n", " {'name': 'Napoli', 'price': 3.3},\n", " {'name': 'Draw', 'price': 3.22}]}]},\n", " {'key': 'betus',\n", " 'title': 'BetUS',\n", " 'last_update': '2022-09-18T18:44:37Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'AC Milan', 'price': 2.25},\n", " {'name': 'Napoli', 'price': 3.5},\n", " {'name': 'Draw', 'price': 3.25}]}]}]},\n", " {'id': 'c6f751e51ad864201d5f583bc6802412',\n", " 'sport_key': 'soccer_france_ligue_one',\n", " 'sport_title': 'Ligue 1 - France',\n", " 'commence_time': '2022-09-18T18:45:00Z',\n", " 'home_team': 'Lyon',\n", " 'away_team': 'Paris Saint Germain',\n", " 'bookmakers': [{'key': 'wynnbet',\n", " 'title': 'WynnBET',\n", " 'last_update': '2022-09-18T18:44:22Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Lyon', 'price': 5.25},\n", " {'name': 'Paris Saint Germain', 'price': 1.54},\n", " {'name': 'Draw', 'price': 5.0}]}]},\n", " {'key': 'fanduel',\n", " 'title': 'FanDuel',\n", " 'last_update': '2022-09-18T18:57:13Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Lyon', 'price': 11.0},\n", " {'name': 'Paris Saint Germain', 'price': 1.22},\n", " {'name': 'Draw', 'price': 6.5}]}]},\n", " {'key': 'betfair',\n", " 'title': 'Betfair',\n", " 'last_update': '2022-09-18T18:57:14Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Lyon', 'price': 13.5},\n", " {'name': 'Paris Saint Germain', 'price': 1.26},\n", " {'name': 'Draw', 'price': 7.2}]},\n", " {'key': 'h2h_lay',\n", " 'outcomes': [{'name': 'Lyon', 'price': 14.5},\n", " {'name': 'Paris Saint Germain', 'price': 1.27},\n", " {'name': 'Draw', 'price': 7.4}]}]},\n", " {'key': 'draftkings',\n", " 'title': 'DraftKings',\n", " 'last_update': '2022-09-18T18:57:13Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Lyon', 'price': 9.5},\n", " {'name': 'Paris Saint Germain', 'price': 1.24},\n", " {'name': 'Draw', 'price': 6.5}]}]},\n", " {'key': 'bovada',\n", " 'title': 'Bovada',\n", " 'last_update': '2022-09-18T18:57:13Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Lyon', 'price': 9.0},\n", " {'name': 'Paris Saint Germain', 'price': 1.26},\n", " {'name': 'Draw', 'price': 6.0}]}]},\n", " {'key': 'mybookieag',\n", " 'title': 'MyBookie.ag',\n", " 'last_update': '2022-09-18T18:57:13Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Lyon', 'price': 5.1},\n", " {'name': 'Paris Saint Germain', 'price': 1.53},\n", " {'name': 'Draw', 'price': 5.0}]}]},\n", " {'key': 'sugarhouse',\n", " 'title': 'SugarHouse',\n", " 'last_update': '2022-09-18T18:57:14Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Lyon', 'price': 9.5},\n", " {'name': 'Paris Saint Germain', 'price': 1.24},\n", " {'name': 'Draw', 'price': 6.4}]}]},\n", " {'key': 'barstool',\n", " 'title': 'Barstool Sportsbook',\n", " 'last_update': '2022-09-18T18:57:14Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Lyon', 'price': 9.5},\n", " {'name': 'Paris Saint Germain', 'price': 1.24},\n", " {'name': 'Draw', 'price': 6.4}]}]},\n", " {'key': 'twinspires',\n", " 'title': 'TwinSpires',\n", " 'last_update': '2022-09-18T18:57:13Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Lyon', 'price': 9.5},\n", " {'name': 'Paris Saint Germain', 'price': 1.24},\n", " {'name': 'Draw', 'price': 6.4}]}]},\n", " {'key': 'unibet',\n", " 'title': 'Unibet',\n", " 'last_update': '2022-09-18T18:57:13Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Lyon', 'price': 9.5},\n", " {'name': 'Paris Saint Germain', 'price': 1.24},\n", " {'name': 'Draw', 'price': 6.4}]}]},\n", " {'key': 'foxbet',\n", " 'title': 'FOX Bet',\n", " 'last_update': '2022-09-18T18:57:13Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Lyon', 'price': 4.8},\n", " {'name': 'Paris Saint Germain', 'price': 1.5},\n", " {'name': 'Draw', 'price': 4.6}]}]},\n", " {'key': 'williamhill_us',\n", " 'title': 'William Hill (US)',\n", " 'last_update': '2022-09-18T18:45:32Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Lyon', 'price': 5.4},\n", " {'name': 'Paris Saint Germain', 'price': 1.53},\n", " {'name': 'Draw', 'price': 4.75}]}]},\n", " {'key': 'superbook',\n", " 'title': 'SuperBook',\n", " 'last_update': '2022-09-18T18:44:23Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Lyon', 'price': 5.25},\n", " {'name': 'Paris Saint Germain', 'price': 1.51},\n", " {'name': 'Draw', 'price': 5.0}]}]},\n", " {'key': 'intertops',\n", " 'title': 'Intertops',\n", " 'last_update': '2022-09-18T18:44:22Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Lyon', 'price': 5.0},\n", " {'name': 'Paris Saint Germain', 'price': 1.53},\n", " {'name': 'Draw', 'price': 5.0}]}]},\n", " {'key': 'gtbets',\n", " 'title': 'GTbets',\n", " 'last_update': '2022-09-18T18:45:33Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Lyon', 'price': 5.2},\n", " {'name': 'Paris Saint Germain', 'price': 1.49},\n", " {'name': 'Draw', 'price': 5.15}]}]},\n", " {'key': 'betus',\n", " 'title': 'BetUS',\n", " 'last_update': '2022-09-18T18:44:22Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Lyon', 'price': 5.3},\n", " {'name': 'Paris Saint Germain', 'price': 1.5},\n", " {'name': 'Draw', 'price': 5.2}]}]}]},\n", " {'id': '2d97074edd7f91177f632c65e27d0c0e',\n", " 'sport_key': 'soccer_spain_segunda_division',\n", " 'sport_title': 'La Liga 2 - Spain',\n", " 'commence_time': '2022-09-18T19:00:00Z',\n", " 'home_team': 'Albacete',\n", " 'away_team': 'SD Ponferradina',\n", " 'bookmakers': [{'key': 'wynnbet',\n", " 'title': 'WynnBET',\n", " 'last_update': '2022-09-18T18:57:42Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Albacete', 'price': 1.95},\n", " {'name': 'SD Ponferradina', 'price': 3.9},\n", " {'name': 'Draw', 'price': 3.5}]}]},\n", " {'key': 'superbook',\n", " 'title': 'SuperBook',\n", " 'last_update': '2022-09-18T18:57:43Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Albacete', 'price': 1.94},\n", " {'name': 'SD Ponferradina', 'price': 3.85},\n", " {'name': 'Draw', 'price': 3.55}]}]},\n", " {'key': 'williamhill_us',\n", " 'title': 'William Hill (US)',\n", " 'last_update': '2022-09-18T18:57:42Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Albacete', 'price': 1.91},\n", " {'name': 'SD Ponferradina', 'price': 3.7},\n", " {'name': 'Draw', 'price': 3.25}]}]},\n", " {'key': 'fanduel',\n", " 'title': 'FanDuel',\n", " 'last_update': '2022-09-18T18:57:42Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Albacete', 'price': 1.87},\n", " {'name': 'SD Ponferradina', 'price': 4.0},\n", " {'name': 'Draw', 'price': 3.3}]}]},\n", " {'key': 'foxbet',\n", " 'title': 'FOX Bet',\n", " 'last_update': '2022-09-18T18:57:42Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Albacete', 'price': 1.95},\n", " {'name': 'SD Ponferradina', 'price': 3.7},\n", " {'name': 'Draw', 'price': 3.25}]}]},\n", " {'key': 'draftkings',\n", " 'title': 'DraftKings',\n", " 'last_update': '2022-09-18T18:57:42Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Albacete', 'price': 1.95},\n", " {'name': 'SD Ponferradina', 'price': 3.9},\n", " {'name': 'Draw', 'price': 3.6}]}]},\n", " {'key': 'twinspires',\n", " 'title': 'TwinSpires',\n", " 'last_update': '2022-09-18T18:57:43Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Albacete', 'price': 1.96},\n", " {'name': 'SD Ponferradina', 'price': 3.7},\n", " {'name': 'Draw', 'price': 3.25}]}]},\n", " {'key': 'unibet',\n", " 'title': 'Unibet',\n", " 'last_update': '2022-09-18T18:57:42Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Albacete', 'price': 1.95},\n", " {'name': 'SD Ponferradina', 'price': 3.7},\n", " {'name': 'Draw', 'price': 3.2}]}]},\n", " {'key': 'barstool',\n", " 'title': 'Barstool Sportsbook',\n", " 'last_update': '2022-09-18T18:57:43Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Albacete', 'price': 1.96},\n", " {'name': 'SD Ponferradina', 'price': 3.7},\n", " {'name': 'Draw', 'price': 3.25}]}]},\n", " {'key': 'betfair',\n", " 'title': 'Betfair',\n", " 'last_update': '2022-09-18T18:57:43Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Albacete', 'price': 1.99},\n", " {'name': 'SD Ponferradina', 'price': 4.4},\n", " {'name': 'Draw', 'price': 3.6}]},\n", " {'key': 'h2h_lay',\n", " 'outcomes': [{'name': 'Albacete', 'price': 2.02},\n", " {'name': 'SD Ponferradina', 'price': 4.5},\n", " {'name': 'Draw', 'price': 3.7}]}]},\n", " {'key': 'betonlineag',\n", " 'title': 'BetOnline.ag',\n", " 'last_update': '2022-09-18T18:57:42Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Albacete', 'price': 1.91},\n", " {'name': 'SD Ponferradina', 'price': 3.5},\n", " {'name': 'Draw', 'price': 3.5}]}]}]},\n", " {'id': '7db6d9c695b2f56ef6fa82df26984419',\n", " 'sport_key': 'soccer_belgium_first_div',\n", " 'sport_title': 'Belgium First Div',\n", " 'commence_time': '2022-09-18T19:00:00Z',\n", " 'home_team': 'Anderlecht',\n", " 'away_team': 'KV Kortrijk',\n", " 'bookmakers': [{'key': 'unibet',\n", " 'title': 'Unibet',\n", " 'last_update': '2022-09-18T18:57:05Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Anderlecht', 'price': 1.29},\n", " {'name': 'KV Kortrijk', 'price': 9.0},\n", " {'name': 'Draw', 'price': 5.25}]}]},\n", " {'key': 'betrivers',\n", " 'title': 'BetRivers',\n", " 'last_update': '2022-09-18T18:46:37Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Anderlecht', 'price': 1.3},\n", " {'name': 'KV Kortrijk', 'price': 9.0},\n", " {'name': 'Draw', 'price': 5.3}]}]},\n", " {'key': 'barstool',\n", " 'title': 'Barstool Sportsbook',\n", " 'last_update': '2022-09-18T18:57:05Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Anderlecht', 'price': 1.3},\n", " {'name': 'KV Kortrijk', 'price': 9.0},\n", " {'name': 'Draw', 'price': 5.3}]}]},\n", " {'key': 'twinspires',\n", " 'title': 'TwinSpires',\n", " 'last_update': '2022-09-18T18:57:06Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Anderlecht', 'price': 1.3},\n", " {'name': 'KV Kortrijk', 'price': 9.0},\n", " {'name': 'Draw', 'price': 5.3}]}]},\n", " {'key': 'wynnbet',\n", " 'title': 'WynnBET',\n", " 'last_update': '2022-09-18T18:57:05Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Anderlecht', 'price': 1.33},\n", " {'name': 'KV Kortrijk', 'price': 9.0},\n", " {'name': 'Draw', 'price': 5.35}]}]},\n", " {'key': 'williamhill_us',\n", " 'title': 'William Hill (US)',\n", " 'last_update': '2022-09-18T18:57:04Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Anderlecht', 'price': 1.27},\n", " {'name': 'KV Kortrijk', 'price': 8.0},\n", " {'name': 'Draw', 'price': 4.7}]}]},\n", " {'key': 'fanduel',\n", " 'title': 'FanDuel',\n", " 'last_update': '2022-09-18T18:57:04Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Anderlecht', 'price': 1.27},\n", " {'name': 'KV Kortrijk', 'price': 8.5},\n", " {'name': 'Draw', 'price': 5.3}]}]},\n", " {'key': 'betfair',\n", " 'title': 'Betfair',\n", " 'last_update': '2022-09-18T18:57:06Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Anderlecht', 'price': 1.35},\n", " {'name': 'KV Kortrijk', 'price': 10.0},\n", " {'name': 'Draw', 'price': 5.9}]},\n", " {'key': 'h2h_lay',\n", " 'outcomes': [{'name': 'Anderlecht', 'price': 1.36},\n", " {'name': 'KV Kortrijk', 'price': 11.0},\n", " {'name': 'Draw', 'price': 6.2}]}]},\n", " {'key': 'intertops',\n", " 'title': 'Intertops',\n", " 'last_update': '2022-09-18T18:57:05Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Anderlecht', 'price': 1.33},\n", " {'name': 'KV Kortrijk', 'price': 8.5},\n", " {'name': 'Draw', 'price': 5.0}]}]},\n", " {'key': 'betus',\n", " 'title': 'BetUS',\n", " 'last_update': '2022-09-18T18:56:12Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Anderlecht', 'price': 1.34},\n", " {'name': 'KV Kortrijk', 'price': 8.75},\n", " {'name': 'Draw', 'price': 5.25}]}]},\n", " {'key': 'draftkings',\n", " 'title': 'DraftKings',\n", " 'last_update': '2022-09-18T18:57:04Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Anderlecht', 'price': 1.34},\n", " {'name': 'KV Kortrijk', 'price': 8.5},\n", " {'name': 'Draw', 'price': 5.5}]}]}]},\n", " {'id': 'c68da4c50573ae70ee81c363150cec84',\n", " 'sport_key': 'soccer_spain_la_liga',\n", " 'sport_title': 'La Liga - Spain',\n", " 'commence_time': '2022-09-18T19:00:00Z',\n", " 'home_team': 'Atlético Madrid',\n", " 'away_team': 'Real Madrid',\n", " 'bookmakers': [{'key': 'fanduel',\n", " 'title': 'FanDuel',\n", " 'last_update': '2022-09-18T18:57:23Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Atlético Madrid', 'price': 3.0},\n", " {'name': 'Real Madrid', 'price': 2.4},\n", " {'name': 'Draw', 'price': 3.1}]}]},\n", " {'key': 'draftkings',\n", " 'title': 'DraftKings',\n", " 'last_update': '2022-09-18T18:57:24Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Atlético Madrid', 'price': 3.05},\n", " {'name': 'Real Madrid', 'price': 2.35},\n", " {'name': 'Draw', 'price': 3.1}]}]},\n", " {'key': 'bovada',\n", " 'title': 'Bovada',\n", " 'last_update': '2022-09-18T18:57:24Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Atlético Madrid', 'price': 3.1},\n", " {'name': 'Real Madrid', 'price': 2.35},\n", " {'name': 'Draw', 'price': 3.3}]}]},\n", " {'key': 'mybookieag',\n", " 'title': 'MyBookie.ag',\n", " 'last_update': '2022-09-18T18:57:24Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Atlético Madrid', 'price': 3.1},\n", " {'name': 'Real Madrid', 'price': 2.43},\n", " {'name': 'Draw', 'price': 3.28}]}]},\n", " {'key': 'wynnbet',\n", " 'title': 'WynnBET',\n", " 'last_update': '2022-09-18T18:57:24Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Atlético Madrid', 'price': 3.15},\n", " {'name': 'Real Madrid', 'price': 2.4},\n", " {'name': 'Draw', 'price': 3.25}]}]},\n", " {'key': 'williamhill_us',\n", " 'title': 'William Hill (US)',\n", " 'last_update': '2022-09-18T18:57:23Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Atlético Madrid', 'price': 3.2},\n", " {'name': 'Real Madrid', 'price': 2.35},\n", " {'name': 'Draw', 'price': 3.2}]}]},\n", " {'key': 'foxbet',\n", " 'title': 'FOX Bet',\n", " 'last_update': '2022-09-18T18:57:23Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Atlético Madrid', 'price': 3.1},\n", " {'name': 'Real Madrid', 'price': 2.4},\n", " {'name': 'Draw', 'price': 3.1}]}]},\n", " {'key': 'betrivers',\n", " 'title': 'BetRivers',\n", " 'last_update': '2022-09-18T18:45:45Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Atlético Madrid', 'price': 3.15},\n", " {'name': 'Real Madrid', 'price': 2.43},\n", " {'name': 'Draw', 'price': 3.1}]}]},\n", " {'key': 'twinspires',\n", " 'title': 'TwinSpires',\n", " 'last_update': '2022-09-18T18:57:25Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Atlético Madrid', 'price': 3.15},\n", " {'name': 'Real Madrid', 'price': 2.43},\n", " {'name': 'Draw', 'price': 3.1}]}]},\n", " {'key': 'sugarhouse',\n", " 'title': 'SugarHouse',\n", " 'last_update': '2022-09-18T18:57:24Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Atlético Madrid', 'price': 3.2},\n", " {'name': 'Real Madrid', 'price': 2.48},\n", " {'name': 'Draw', 'price': 3.15}]}]},\n", " {'key': 'barstool',\n", " 'title': 'Barstool Sportsbook',\n", " 'last_update': '2022-09-18T18:57:24Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Atlético Madrid', 'price': 3.15},\n", " {'name': 'Real Madrid', 'price': 2.43},\n", " {'name': 'Draw', 'price': 3.1}]}]},\n", " {'key': 'unibet',\n", " 'title': 'Unibet',\n", " 'last_update': '2022-09-18T18:57:23Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Atlético Madrid', 'price': 3.15},\n", " {'name': 'Real Madrid', 'price': 2.43},\n", " {'name': 'Draw', 'price': 3.1}]}]},\n", " {'key': 'betfair',\n", " 'title': 'Betfair',\n", " 'last_update': '2022-09-18T18:57:24Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Atlético Madrid', 'price': 3.25},\n", " {'name': 'Real Madrid', 'price': 2.52},\n", " {'name': 'Draw', 'price': 3.3}]},\n", " {'key': 'h2h_lay',\n", " 'outcomes': [{'name': 'Atlético Madrid', 'price': 3.3},\n", " {'name': 'Real Madrid', 'price': 2.54},\n", " {'name': 'Draw', 'price': 3.35}]}]},\n", " {'key': 'superbook',\n", " 'title': 'SuperBook',\n", " 'last_update': '2022-09-18T18:57:24Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Atlético Madrid', 'price': 3.05},\n", " {'name': 'Real Madrid', 'price': 2.4},\n", " {'name': 'Draw', 'price': 3.25}]}]},\n", " {'key': 'intertops',\n", " 'title': 'Intertops',\n", " 'last_update': '2022-09-18T18:57:24Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Atlético Madrid', 'price': 3.05},\n", " {'name': 'Real Madrid', 'price': 2.45},\n", " {'name': 'Draw', 'price': 3.15}]}]},\n", " {'key': 'betus',\n", " 'title': 'BetUS',\n", " 'last_update': '2022-09-18T18:57:24Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Atlético Madrid', 'price': 3.2},\n", " {'name': 'Real Madrid', 'price': 2.35},\n", " {'name': 'Draw', 'price': 3.25}]}]},\n", " {'key': 'lowvig',\n", " 'title': 'LowVig.ag',\n", " 'last_update': '2022-09-18T18:57:25Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Atlético Madrid', 'price': 3.25},\n", " {'name': 'Real Madrid', 'price': 2.38},\n", " {'name': 'Draw', 'price': 3.25}]}]},\n", " {'key': 'betonlineag',\n", " 'title': 'BetOnline.ag',\n", " 'last_update': '2022-09-18T18:57:23Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Atlético Madrid', 'price': 3.25},\n", " {'name': 'Real Madrid', 'price': 2.38},\n", " {'name': 'Draw', 'price': 3.25}]}]}]},\n", " {'id': '967f0689e4cc2973de598b152be67016',\n", " 'sport_key': 'soccer_brazil_campeonato',\n", " 'sport_title': 'Brazil Série A',\n", " 'commence_time': '2022-09-18T19:00:00Z',\n", " 'home_team': 'Ceará',\n", " 'away_team': 'Sao Paulo',\n", " 'bookmakers': [{'key': 'wynnbet',\n", " 'title': 'WynnBET',\n", " 'last_update': '2022-09-18T18:57:20Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Ceará', 'price': 2.55},\n", " {'name': 'Sao Paulo', 'price': 3.0},\n", " {'name': 'Draw', 'price': 3.05}]}]},\n", " {'key': 'superbook',\n", " 'title': 'SuperBook',\n", " 'last_update': '2022-09-18T18:57:21Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Ceará', 'price': 2.65},\n", " {'name': 'Sao Paulo', 'price': 2.9},\n", " {'name': 'Draw', 'price': 3.05}]}]},\n", " {'key': 'williamhill_us',\n", " 'title': 'William Hill (US)',\n", " 'last_update': '2022-09-18T18:57:19Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Ceará', 'price': 2.45},\n", " {'name': 'Sao Paulo', 'price': 2.9},\n", " {'name': 'Draw', 'price': 2.9}]}]},\n", " {'key': 'fanduel',\n", " 'title': 'FanDuel',\n", " 'last_update': '2022-09-18T18:57:19Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Ceará', 'price': 2.55},\n", " {'name': 'Sao Paulo', 'price': 3.1},\n", " {'name': 'Draw', 'price': 2.95}]}]},\n", " {'key': 'mybookieag',\n", " 'title': 'MyBookie.ag',\n", " 'last_update': '2022-09-18T18:57:19Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Ceará', 'price': 2.66},\n", " {'name': 'Sao Paulo', 'price': 2.94},\n", " {'name': 'Draw', 'price': 3.08}]}]},\n", " {'key': 'pointsbetus',\n", " 'title': 'PointsBet (US)',\n", " 'last_update': '2022-09-18T18:57:19Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Ceará', 'price': 2.5},\n", " {'name': 'Sao Paulo', 'price': 2.95},\n", " {'name': 'Draw', 'price': 3.0}]}]},\n", " {'key': 'betfair',\n", " 'title': 'Betfair',\n", " 'last_update': '2022-09-18T18:57:20Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Ceará', 'price': 2.68},\n", " {'name': 'Sao Paulo', 'price': 3.2},\n", " {'name': 'Draw', 'price': 3.1}]},\n", " {'key': 'h2h_lay',\n", " 'outcomes': [{'name': 'Ceará', 'price': 2.74},\n", " {'name': 'Sao Paulo', 'price': 3.25},\n", " {'name': 'Draw', 'price': 3.15}]}]},\n", " {'key': 'foxbet',\n", " 'title': 'FOX Bet',\n", " 'last_update': '2022-09-18T18:57:19Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Ceará', 'price': 2.5},\n", " {'name': 'Sao Paulo', 'price': 2.9},\n", " {'name': 'Draw', 'price': 2.95}]}]},\n", " {'key': 'unibet',\n", " 'title': 'Unibet',\n", " 'last_update': '2022-09-18T18:57:19Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Ceará', 'price': 2.43},\n", " {'name': 'Sao Paulo', 'price': 3.05},\n", " {'name': 'Draw', 'price': 2.95}]}]},\n", " {'key': 'betrivers',\n", " 'title': 'BetRivers',\n", " 'last_update': '2022-09-18T18:49:06Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Ceará', 'price': 2.43},\n", " {'name': 'Sao Paulo', 'price': 3.05},\n", " {'name': 'Draw', 'price': 2.95}]}]},\n", " {'key': 'barstool',\n", " 'title': 'Barstool Sportsbook',\n", " 'last_update': '2022-09-18T18:57:20Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Ceará', 'price': 2.43},\n", " {'name': 'Sao Paulo', 'price': 3.05},\n", " {'name': 'Draw', 'price': 2.95}]}]},\n", " {'key': 'twinspires',\n", " 'title': 'TwinSpires',\n", " 'last_update': '2022-09-18T18:57:20Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Ceará', 'price': 2.43},\n", " {'name': 'Sao Paulo', 'price': 3.05},\n", " {'name': 'Draw', 'price': 2.95}]}]},\n", " {'key': 'sugarhouse',\n", " 'title': 'SugarHouse',\n", " 'last_update': '2022-09-18T18:57:20Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Ceará', 'price': 2.43},\n", " {'name': 'Sao Paulo', 'price': 3.05},\n", " {'name': 'Draw', 'price': 2.95}]}]},\n", " {'key': 'gtbets',\n", " 'title': 'GTbets',\n", " 'last_update': '2022-09-18T18:57:20Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Ceará', 'price': 2.52},\n", " {'name': 'Sao Paulo', 'price': 2.91},\n", " {'name': 'Draw', 'price': 3.14}]}]},\n", " {'key': 'intertops',\n", " 'title': 'Intertops',\n", " 'last_update': '2022-09-18T18:57:20Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Ceará', 'price': 2.6},\n", " {'name': 'Sao Paulo', 'price': 2.95},\n", " {'name': 'Draw', 'price': 2.9}]}]},\n", " {'key': 'draftkings',\n", " 'title': 'DraftKings',\n", " 'last_update': '2022-09-18T18:57:19Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Ceará', 'price': 2.65},\n", " {'name': 'Sao Paulo', 'price': 2.9},\n", " {'name': 'Draw', 'price': 3.0}]}]},\n", " {'key': 'betus',\n", " 'title': 'BetUS',\n", " 'last_update': '2022-09-18T18:57:20Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Ceará', 'price': 2.5},\n", " {'name': 'Sao Paulo', 'price': 3.1},\n", " {'name': 'Draw', 'price': 3.0}]}]},\n", " {'key': 'betonlineag',\n", " 'title': 'BetOnline.ag',\n", " 'last_update': '2022-09-18T18:57:19Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Ceará', 'price': 2.69},\n", " {'name': 'Sao Paulo', 'price': 2.9},\n", " {'name': 'Draw', 'price': 3.0}]}]}]},\n", " {'id': '043fa6445ae36a6cfc7405967d758142',\n", " 'sport_key': 'soccer_brazil_campeonato',\n", " 'sport_title': 'Brazil Série A',\n", " 'commence_time': '2022-09-18T19:00:00Z',\n", " 'home_team': 'Flamengo',\n", " 'away_team': 'Fluminense',\n", " 'bookmakers': [{'key': 'superbook',\n", " 'title': 'SuperBook',\n", " 'last_update': '2022-09-18T18:57:21Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Flamengo', 'price': 1.69},\n", " {'name': 'Fluminense', 'price': 5.25},\n", " {'name': 'Draw', 'price': 3.7}]}]},\n", " {'key': 'williamhill_us',\n", " 'title': 'William Hill (US)',\n", " 'last_update': '2022-09-18T18:57:19Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Flamengo', 'price': 1.62},\n", " {'name': 'Fluminense', 'price': 5.0},\n", " {'name': 'Draw', 'price': 3.5}]}]},\n", " {'key': 'fanduel',\n", " 'title': 'FanDuel',\n", " 'last_update': '2022-09-18T18:57:19Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Flamengo', 'price': 1.61},\n", " {'name': 'Fluminense', 'price': 5.6},\n", " {'name': 'Draw', 'price': 3.7}]}]},\n", " {'key': 'wynnbet',\n", " 'title': 'WynnBET',\n", " 'last_update': '2022-09-18T18:57:20Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Flamengo', 'price': 1.69},\n", " {'name': 'Fluminense', 'price': 5.35},\n", " {'name': 'Draw', 'price': 3.7}]}]},\n", " {'key': 'mybookieag',\n", " 'title': 'MyBookie.ag',\n", " 'last_update': '2022-09-18T18:57:19Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Flamengo', 'price': 1.71},\n", " {'name': 'Fluminense', 'price': 5.3},\n", " {'name': 'Draw', 'price': 3.7}]}]},\n", " {'key': 'pointsbetus',\n", " 'title': 'PointsBet (US)',\n", " 'last_update': '2022-09-18T18:57:19Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Flamengo', 'price': 1.67},\n", " {'name': 'Fluminense', 'price': 5.25},\n", " {'name': 'Draw', 'price': 3.6}]}]},\n", " {'key': 'foxbet',\n", " 'title': 'FOX Bet',\n", " 'last_update': '2022-09-18T18:57:19Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Flamengo', 'price': 1.67},\n", " {'name': 'Fluminense', 'price': 5.0},\n", " {'name': 'Draw', 'price': 3.5}]}]},\n", " {'key': 'betfair',\n", " 'title': 'Betfair',\n", " 'last_update': '2022-09-18T18:57:20Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Flamengo', 'price': 1.71},\n", " {'name': 'Fluminense', 'price': 6.0},\n", " {'name': 'Draw', 'price': 3.95}]},\n", " {'key': 'h2h_lay',\n", " 'outcomes': [{'name': 'Flamengo', 'price': 1.72},\n", " {'name': 'Fluminense', 'price': 6.2},\n", " {'name': 'Draw', 'price': 4.0}]}]},\n", " {'key': 'gtbets',\n", " 'title': 'GTbets',\n", " 'last_update': '2022-09-18T18:57:20Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Flamengo', 'price': 1.67},\n", " {'name': 'Fluminense', 'price': 5.2},\n", " {'name': 'Draw', 'price': 3.75}]}]},\n", " {'key': 'unibet',\n", " 'title': 'Unibet',\n", " 'last_update': '2022-09-18T18:57:19Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Flamengo', 'price': 1.64},\n", " {'name': 'Fluminense', 'price': 5.1},\n", " {'name': 'Draw', 'price': 3.65}]}]},\n", " {'key': 'betrivers',\n", " 'title': 'BetRivers',\n", " 'last_update': '2022-09-18T18:50:35Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Flamengo', 'price': 1.64},\n", " {'name': 'Fluminense', 'price': 5.1},\n", " {'name': 'Draw', 'price': 3.65}]}]},\n", " {'key': 'barstool',\n", " 'title': 'Barstool Sportsbook',\n", " 'last_update': '2022-09-18T18:57:20Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Flamengo', 'price': 1.64},\n", " {'name': 'Fluminense', 'price': 5.1},\n", " {'name': 'Draw', 'price': 3.65}]}]},\n", " {'key': 'twinspires',\n", " 'title': 'TwinSpires',\n", " 'last_update': '2022-09-18T18:57:20Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Flamengo', 'price': 1.64},\n", " {'name': 'Fluminense', 'price': 5.1},\n", " {'name': 'Draw', 'price': 3.65}]}]},\n", " {'key': 'sugarhouse',\n", " 'title': 'SugarHouse',\n", " 'last_update': '2022-09-18T18:57:20Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Flamengo', 'price': 1.64},\n", " {'name': 'Fluminense', 'price': 5.1},\n", " {'name': 'Draw', 'price': 3.65}]}]},\n", " {'key': 'intertops',\n", " 'title': 'Intertops',\n", " 'last_update': '2022-09-18T18:57:20Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Flamengo', 'price': 1.65},\n", " {'name': 'Fluminense', 'price': 5.25},\n", " {'name': 'Draw', 'price': 3.6}]}]},\n", " {'key': 'draftkings',\n", " 'title': 'DraftKings',\n", " 'last_update': '2022-09-18T18:57:19Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Flamengo', 'price': 1.67},\n", " {'name': 'Fluminense', 'price': 5.5},\n", " {'name': 'Draw', 'price': 3.7}]}]},\n", " {'key': 'betus',\n", " 'title': 'BetUS',\n", " 'last_update': '2022-09-18T18:57:20Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Flamengo', 'price': 1.69},\n", " {'name': 'Fluminense', 'price': 5.25},\n", " {'name': 'Draw', 'price': 3.65}]}]},\n", " {'key': 'betonlineag',\n", " 'title': 'BetOnline.ag',\n", " 'last_update': '2022-09-18T18:57:19Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Flamengo', 'price': 1.69},\n", " {'name': 'Fluminense', 'price': 5.5},\n", " {'name': 'Draw', 'price': 3.62}]}]}]},\n", " {'id': '0fcafe7f4a624a84c7e7b8d8b3d78d0c',\n", " 'sport_key': 'soccer_portugal_primeira_liga',\n", " 'sport_title': 'Primeira Liga - Portugal',\n", " 'commence_time': '2022-09-18T19:30:00Z',\n", " 'home_team': 'Braga',\n", " 'away_team': 'Vizela',\n", " 'bookmakers': [{'key': 'bovada',\n", " 'title': 'Bovada',\n", " 'last_update': '2022-09-18T18:58:05Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Braga', 'price': 1.41},\n", " {'name': 'Vizela', 'price': 6.75},\n", " {'name': 'Draw', 'price': 4.7}]}]},\n", " {'key': 'mybookieag',\n", " 'title': 'MyBookie.ag',\n", " 'last_update': '2022-09-18T18:58:04Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Braga', 'price': 1.4},\n", " {'name': 'Vizela', 'price': 7.0},\n", " {'name': 'Draw', 'price': 4.9}]}]},\n", " {'key': 'wynnbet',\n", " 'title': 'WynnBET',\n", " 'last_update': '2022-09-18T18:58:05Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Braga', 'price': 1.39},\n", " {'name': 'Vizela', 'price': 7.5},\n", " {'name': 'Draw', 'price': 5.0}]}]},\n", " {'key': 'williamhill_us',\n", " 'title': 'William Hill (US)',\n", " 'last_update': '2022-09-18T18:58:04Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Braga', 'price': 1.4},\n", " {'name': 'Vizela', 'price': 8.0},\n", " {'name': 'Draw', 'price': 4.7}]}]},\n", " {'key': 'intertops',\n", " 'title': 'Intertops',\n", " 'last_update': '2022-09-18T18:58:05Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Braga', 'price': 1.36},\n", " {'name': 'Vizela', 'price': 7.0},\n", " {'name': 'Draw', 'price': 5.0}]}]},\n", " {'key': 'barstool',\n", " 'title': 'Barstool Sportsbook',\n", " 'last_update': '2022-09-18T18:58:05Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Braga', 'price': 1.33},\n", " {'name': 'Vizela', 'price': 8.0},\n", " {'name': 'Draw', 'price': 5.0}]}]},\n", " {'key': 'betrivers',\n", " 'title': 'BetRivers',\n", " 'last_update': '2022-09-18T18:58:04Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Braga', 'price': 1.33},\n", " {'name': 'Vizela', 'price': 8.0},\n", " {'name': 'Draw', 'price': 5.0}]}]},\n", " {'key': 'twinspires',\n", " 'title': 'TwinSpires',\n", " 'last_update': '2022-09-18T18:58:05Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Braga', 'price': 1.33},\n", " {'name': 'Vizela', 'price': 8.0},\n", " {'name': 'Draw', 'price': 5.0}]}]},\n", " {'key': 'unibet',\n", " 'title': 'Unibet',\n", " 'last_update': '2022-09-18T18:58:04Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Braga', 'price': 1.33},\n", " {'name': 'Vizela', 'price': 8.0},\n", " {'name': 'Draw', 'price': 5.0}]}]},\n", " {'key': 'gtbets',\n", " 'title': 'GTbets',\n", " 'last_update': '2022-09-18T18:58:05Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Braga', 'price': 1.38},\n", " {'name': 'Vizela', 'price': 7.5},\n", " {'name': 'Draw', 'price': 4.95}]}]},\n", " {'key': 'betfair',\n", " 'title': 'Betfair',\n", " 'last_update': '2022-09-18T18:58:05Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Braga', 'price': 1.44},\n", " {'name': 'Vizela', 'price': 8.0},\n", " {'name': 'Draw', 'price': 5.3}]},\n", " {'key': 'h2h_lay',\n", " 'outcomes': [{'name': 'Braga', 'price': 1.46},\n", " {'name': 'Vizela', 'price': 8.2},\n", " {'name': 'Draw', 'price': 5.4}]}]},\n", " {'key': 'lowvig',\n", " 'title': 'LowVig.ag',\n", " 'last_update': '2022-09-18T18:57:01Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Braga', 'price': 1.37},\n", " {'name': 'Vizela', 'price': 6.7},\n", " {'name': 'Draw', 'price': 4.9}]}]},\n", " {'key': 'betonlineag',\n", " 'title': 'BetOnline.ag',\n", " 'last_update': '2022-09-18T18:58:04Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Braga', 'price': 1.37},\n", " {'name': 'Vizela', 'price': 6.7},\n", " {'name': 'Draw', 'price': 4.9}]}]},\n", " {'key': 'betus',\n", " 'title': 'BetUS',\n", " 'last_update': '2022-09-18T18:58:05Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Braga', 'price': 1.36},\n", " {'name': 'Vizela', 'price': 8.5},\n", " {'name': 'Draw', 'price': 5.25}]}]},\n", " {'key': 'foxbet',\n", " 'title': 'FOX Bet',\n", " 'last_update': '2022-09-18T18:58:04Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Braga', 'price': 1.4},\n", " {'name': 'Vizela', 'price': 7.5},\n", " {'name': 'Draw', 'price': 4.75}]}]},\n", " {'key': 'draftkings',\n", " 'title': 'DraftKings',\n", " 'last_update': '2022-09-18T18:58:04Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Braga', 'price': 1.38},\n", " {'name': 'Vizela', 'price': 8.0},\n", " {'name': 'Draw', 'price': 5.0}]}]}]},\n", " {'id': '65c9ec2d290f7662510a560051014739',\n", " 'sport_key': 'basketball_wnba',\n", " 'sport_title': 'WNBA',\n", " 'commence_time': '2022-09-18T20:00:00Z',\n", " 'home_team': 'Connecticut Sun',\n", " 'away_team': 'Las Vegas Aces',\n", " 'bookmakers': [{'key': 'fanduel',\n", " 'title': 'FanDuel',\n", " 'last_update': '2022-09-18T18:57:47Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Connecticut Sun', 'price': 2.02},\n", " {'name': 'Las Vegas Aces', 'price': 1.81}]}]},\n", " {'key': 'gtbets',\n", " 'title': 'GTbets',\n", " 'last_update': '2022-09-18T18:56:50Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Connecticut Sun', 'price': 2.0},\n", " {'name': 'Las Vegas Aces', 'price': 1.83}]}]},\n", " {'key': 'mybookieag',\n", " 'title': 'MyBookie.ag',\n", " 'last_update': '2022-09-18T18:57:50Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Connecticut Sun', 'price': 2.04},\n", " {'name': 'Las Vegas Aces', 'price': 1.78}]}]},\n", " {'key': 'foxbet',\n", " 'title': 'FOX Bet',\n", " 'last_update': '2022-09-18T18:57:48Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Connecticut Sun', 'price': 2.0},\n", " {'name': 'Las Vegas Aces', 'price': 1.8}]}]},\n", " {'key': 'williamhill_us',\n", " 'title': 'William Hill (US)',\n", " 'last_update': '2022-09-18T18:57:48Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Connecticut Sun', 'price': 2.05},\n", " {'name': 'Las Vegas Aces', 'price': 1.8}]}]},\n", " {'key': 'circasports',\n", " 'title': 'Circa Sports',\n", " 'last_update': '2022-09-18T18:57:49Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Connecticut Sun', 'price': 2.08},\n", " {'name': 'Las Vegas Aces', 'price': 1.79}]}]},\n", " {'key': 'betmgm',\n", " 'title': 'BetMGM',\n", " 'last_update': '2022-09-18T18:57:48Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Connecticut Sun', 'price': 2.05},\n", " {'name': 'Las Vegas Aces', 'price': 1.8}]}]},\n", " {'key': 'bovada',\n", " 'title': 'Bovada',\n", " 'last_update': '2022-09-18T18:57:48Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Connecticut Sun', 'price': 2.05},\n", " {'name': 'Las Vegas Aces', 'price': 1.8}]}]},\n", " {'key': 'lowvig',\n", " 'title': 'LowVig.ag',\n", " 'last_update': '2022-09-18T18:56:52Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Connecticut Sun', 'price': 2.01},\n", " {'name': 'Las Vegas Aces', 'price': 1.83}]}]},\n", " {'key': 'sugarhouse',\n", " 'title': 'SugarHouse',\n", " 'last_update': '2022-09-18T18:57:48Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Connecticut Sun', 'price': 1.96},\n", " {'name': 'Las Vegas Aces', 'price': 1.85}]}]},\n", " {'key': 'betrivers',\n", " 'title': 'BetRivers',\n", " 'last_update': '2022-09-18T18:57:48Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Connecticut Sun', 'price': 1.96},\n", " {'name': 'Las Vegas Aces', 'price': 1.85}]}]},\n", " {'key': 'barstool',\n", " 'title': 'Barstool Sportsbook',\n", " 'last_update': '2022-09-18T18:57:49Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Connecticut Sun', 'price': 1.96},\n", " {'name': 'Las Vegas Aces', 'price': 1.85}]}]},\n", " {'key': 'twinspires',\n", " 'title': 'TwinSpires',\n", " 'last_update': '2022-09-18T18:57:49Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Connecticut Sun', 'price': 1.96},\n", " {'name': 'Las Vegas Aces', 'price': 1.85}]}]},\n", " {'key': 'unibet',\n", " 'title': 'Unibet',\n", " 'last_update': '2022-09-18T18:56:51Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Connecticut Sun', 'price': 1.97},\n", " {'name': 'Las Vegas Aces', 'price': 1.85}]}]},\n", " {'key': 'pointsbetus',\n", " 'title': 'PointsBet (US)',\n", " 'last_update': '2022-09-18T18:57:47Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Connecticut Sun', 'price': 2.0},\n", " {'name': 'Las Vegas Aces', 'price': 1.83}]}]}]},\n", " {'id': 'b578ccb3df9e461e47400cd3178e4c60',\n", " 'sport_key': 'americanfootball_nfl',\n", " 'sport_title': 'NFL',\n", " 'commence_time': '2022-09-18T20:05:00Z',\n", " 'home_team': 'Los Angeles Rams',\n", " 'away_team': 'Atlanta Falcons',\n", " 'bookmakers': [{'key': 'unibet',\n", " 'title': 'Unibet',\n", " 'last_update': '2022-09-18T18:57:31Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Atlanta Falcons', 'price': 4.75},\n", " {'name': 'Los Angeles Rams', 'price': 1.22}]}]},\n", " {'key': 'draftkings',\n", " 'title': 'DraftKings',\n", " 'last_update': '2022-09-18T18:57:31Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Atlanta Falcons', 'price': 4.6},\n", " {'name': 'Los Angeles Rams', 'price': 1.22}]}]},\n", " {'key': 'williamhill_us',\n", " 'title': 'William Hill (US)',\n", " 'last_update': '2022-09-18T18:57:30Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Atlanta Falcons', 'price': 5.0},\n", " {'name': 'Los Angeles Rams', 'price': 1.18}]}]},\n", " {'key': 'betrivers',\n", " 'title': 'BetRivers',\n", " 'last_update': '2022-09-18T18:57:31Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Atlanta Falcons', 'price': 4.75},\n", " {'name': 'Los Angeles Rams', 'price': 1.22}]}]},\n", " {'key': 'foxbet',\n", " 'title': 'FOX Bet',\n", " 'last_update': '2022-09-18T18:57:31Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Atlanta Falcons', 'price': 4.33},\n", " {'name': 'Los Angeles Rams', 'price': 1.2}]}]},\n", " {'key': 'mybookieag',\n", " 'title': 'MyBookie.ag',\n", " 'last_update': '2022-09-18T18:57:31Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Atlanta Falcons', 'price': 4.9},\n", " {'name': 'Los Angeles Rams', 'price': 1.2}]}]},\n", " {'key': 'wynnbet',\n", " 'title': 'WynnBET',\n", " 'last_update': '2022-09-18T18:57:32Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Atlanta Falcons', 'price': 4.75},\n", " {'name': 'Los Angeles Rams', 'price': 1.2}]}]},\n", " {'key': 'sugarhouse',\n", " 'title': 'SugarHouse',\n", " 'last_update': '2022-09-18T18:57:32Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Atlanta Falcons', 'price': 4.75},\n", " {'name': 'Los Angeles Rams', 'price': 1.22}]}]},\n", " {'key': 'barstool',\n", " 'title': 'Barstool Sportsbook',\n", " 'last_update': '2022-09-18T18:57:31Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Atlanta Falcons', 'price': 4.6},\n", " {'name': 'Los Angeles Rams', 'price': 1.2}]}]},\n", " {'key': 'superbook',\n", " 'title': 'SuperBook',\n", " 'last_update': '2022-09-18T18:57:32Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Atlanta Falcons', 'price': 5.0},\n", " {'name': 'Los Angeles Rams', 'price': 1.2}]}]},\n", " {'key': 'betus',\n", " 'title': 'BetUS',\n", " 'last_update': '2022-09-18T18:57:32Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Atlanta Falcons', 'price': 5.0},\n", " {'name': 'Los Angeles Rams', 'price': 1.2}]}]},\n", " {'key': 'pointsbetus',\n", " 'title': 'PointsBet (US)',\n", " 'last_update': '2022-09-18T18:57:31Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Atlanta Falcons', 'price': 5.0},\n", " {'name': 'Los Angeles Rams', 'price': 1.18}]}]},\n", " {'key': 'fanduel',\n", " 'title': 'FanDuel',\n", " 'last_update': '2022-09-18T18:57:31Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Atlanta Falcons', 'price': 4.85},\n", " {'name': 'Los Angeles Rams', 'price': 1.2}]}]},\n", " {'key': 'bovada',\n", " 'title': 'Bovada',\n", " 'last_update': '2022-09-18T18:57:32Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Atlanta Falcons', 'price': 4.75},\n", " {'name': 'Los Angeles Rams', 'price': 1.19}]}]},\n", " {'key': 'gtbets',\n", " 'title': 'GTbets',\n", " 'last_update': '2022-09-18T18:57:32Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Atlanta Falcons', 'price': 5.2},\n", " {'name': 'Los Angeles Rams', 'price': 1.19}]}]},\n", " {'key': 'lowvig',\n", " 'title': 'LowVig.ag',\n", " 'last_update': '2022-09-18T18:56:38Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Atlanta Falcons', 'price': 4.85},\n", " {'name': 'Los Angeles Rams', 'price': 1.21}]}]},\n", " {'key': 'betonlineag',\n", " 'title': 'BetOnline.ag',\n", " 'last_update': '2022-09-18T18:57:30Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Atlanta Falcons', 'price': 4.9},\n", " {'name': 'Los Angeles Rams', 'price': 1.2}]}]},\n", " {'key': 'betmgm',\n", " 'title': 'BetMGM',\n", " 'last_update': '2022-09-18T18:57:32Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Atlanta Falcons', 'price': 4.75},\n", " {'name': 'Los Angeles Rams', 'price': 1.2}]}]},\n", " {'key': 'betfair',\n", " 'title': 'Betfair',\n", " 'last_update': '2022-09-18T18:57:32Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Atlanta Falcons', 'price': 5.1},\n", " {'name': 'Los Angeles Rams', 'price': 1.23}]},\n", " {'key': 'h2h_lay',\n", " 'outcomes': [{'name': 'Atlanta Falcons', 'price': 5.3},\n", " {'name': 'Los Angeles Rams', 'price': 1.25}]}]},\n", " {'key': 'intertops',\n", " 'title': 'Intertops',\n", " 'last_update': '2022-09-18T18:57:30Z',\n", " 'markets': [{'key': 'h2h',\n", " 'outcomes': [{'name': 'Atlanta Falcons', 'price': 4.75},\n", " {'name': 'Los Angeles Rams', 'price': 1.2}]}]}]}]" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# odds_response" ] }, { "cell_type": "markdown", "id": "795b37df", "metadata": {}, "source": [ "### Event Class\n", "- Each ``Event`` object represents an indivudal sporting event\n", "- The ``data`` parameter contains all of the odds data that is received from the API call" ] }, { "cell_type": "code", "execution_count": 4, "id": "bccd45dc", "metadata": {}, "outputs": [], "source": [ "BOOKMAKER_INDEX = 0\n", "NAME_INDEX = 1\n", "ODDS_INDEX = 2\n", "FIRST = 0\n", "\n", "class Event:\n", " def __init__(self, data):\n", " self.data = data\n", " self.sport_key = data['sport_key']\n", " self.id = data['id']\n", " \n", " def find_best_odds(self):\n", " # number of possible outcomes for a sporting event\n", " num_outcomes = len(self.data['bookmakers'][FIRST]['markets'][FIRST]['outcomes'])\n", " self.num_outcomes = num_outcomes\n", "\n", " # finding the best odds for each outcome in each event\n", " best_odds = [[None, None, float('-inf')] for _ in range(num_outcomes)]\n", " # [Bookmaker, Name, Price]\n", "\n", " bookmakers = event.data['bookmakers']\n", " for index, bookmaker in enumerate(bookmakers):\n", "\n", " # determing the odds offered by each bookmaker\n", " for outcome in range(num_outcomes):\n", "\n", " # determining if any of the bookmaker odds are better than the current best odds\n", " bookmaker_odds = float(bookmaker['markets'][FIRST]['outcomes'][outcome]['price'])\n", " current_best_odds = best_odds[outcome][ODDS_INDEX]\n", "\n", " if bookmaker_odds > current_best_odds:\n", " best_odds[outcome][BOOKMAKER_INDEX] = bookmaker['title']\n", " best_odds[outcome][NAME_INDEX] = bookmaker['markets'][FIRST]['outcomes'][outcome]['name']\n", " best_odds[outcome][ODDS_INDEX] = bookmaker_odds\n", " \n", " self.best_odds = best_odds\n", " return best_odds\n", " \n", " def arbitrage(self):\n", " total_arbitrage_percentage = 0\n", " for odds in self.best_odds:\n", " total_arbitrage_percentage += (1.0 / odds[ODDS_INDEX])\n", " \n", " self.total_arbitrage_percentage = total_arbitrage_percentage\n", " self.expected_earnings = (BET_SIZE / total_arbitrage_percentage) - BET_SIZE\n", " \n", " # if the sum of the reciprocals of the odds is less than 1, there is opportunity for arbitrage\n", " if total_arbitrage_percentage < 1:\n", " return True\n", " return False\n", " \n", " # converts decimal/European best odds to American best odds\n", " def convert_decimal_to_american(self):\n", " best_odds = self.best_odds\n", " for odds in best_odds:\n", " decimal = odds[ODDS_INDEX]\n", " if decimal >= 2:\n", " american = (decimal - 1) * 100\n", " elif decimal < 2:\n", " american = -100 / (decimal - 1)\n", " odds[ODDS_INDEX] = round(american, 2)\n", " return best_odds\n", " \n", " def calculate_arbitrage_bets(self):\n", " bet_amounts = []\n", " for outcome in range(self.num_outcomes):\n", " individual_arbitrage_percentage = 1 / self.best_odds[outcome][ODDS_INDEX]\n", " bet_amount = (BET_SIZE * individual_arbitrage_percentage) / self.total_arbitrage_percentage\n", " bet_amounts.append(round(bet_amount, 2))\n", " \n", " self.bet_amounts = bet_amounts\n", " return bet_amounts" ] }, { "cell_type": "markdown", "id": "0737847a", "metadata": {}, "source": [ "### Parsing Events and Calculating Arbitrage Bets\n", "- `BET_SIZE` is the amount of money in USD that you would like to bet across the outcomes of an event.\n", "- This calculation will used unbiased arbitrage, where the profit is the same regardless of the outcome." ] }, { "cell_type": "code", "execution_count": 5, "id": "9d71f761", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "{'id': '3334a39ac46322911bb2cc9243e387ee', 'sport_key': 'baseball_mlb', 'sport_title': 'MLB', 'commence_time': '2022-09-18T16:11:45Z', 'home_team': 'Detroit Tigers', 'away_team': 'Chicago White Sox', 'bookmakers': [{'key': 'bovada', 'title': 'Bovada', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Chicago White Sox', 'price': 1.0}, {'name': 'Detroit Tigers', 'price': 19.0}]}]}, {'key': 'gtbets', 'title': 'GTbets', 'last_update': '2022-09-18T18:57:39Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Chicago White Sox', 'price': 1.09}, {'name': 'Detroit Tigers', 'price': 6.92}]}]}]}\n", "\n", "{'id': '7ad8263939b57e14774e8210e00fbb69', 'sport_key': 'soccer_portugal_primeira_liga', 'sport_title': 'Primeira Liga - Portugal', 'commence_time': '2022-09-18T17:01:04Z', 'home_team': 'Benfica', 'away_team': 'CS Maritimo', 'bookmakers': [{'key': 'bovada', 'title': 'Bovada', 'last_update': '2022-09-18T18:50:01Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Benfica', 'price': 1.02}, {'name': 'CS Maritimo', 'price': 91.0}, {'name': 'Draw', 'price': 12.0}]}]}, {'key': 'williamhill_us', 'title': 'William Hill (US)', 'last_update': '2022-09-18T18:48:41Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Benfica', 'price': 1.0}, {'name': 'CS Maritimo', 'price': 31.0}, {'name': 'Draw', 'price': 31.0}]}]}, {'key': 'foxbet', 'title': 'FOX Bet', 'last_update': '2022-09-18T18:52:28Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Benfica', 'price': 1.0}, {'name': 'CS Maritimo', 'price': 176.0}, {'name': 'Draw', 'price': 34.0}]}]}]}\n", "\n", "{'id': '74f7692b13d4693b1806157f4083a8f8', 'sport_key': 'soccer_turkey_super_league', 'sport_title': 'Turkey Super League', 'commence_time': '2022-09-18T17:01:21Z', 'home_team': 'Fenerbahce', 'away_team': 'Alanyaspor', 'bookmakers': [{'key': 'bovada', 'title': 'Bovada', 'last_update': '2022-09-18T18:57:17Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Alanyaspor', 'price': 71.0}, {'name': 'Fenerbahce', 'price': 1.02}, {'name': 'Draw', 'price': 15.0}]}]}, {'key': 'foxbet', 'title': 'FOX Bet', 'last_update': '2022-09-18T18:54:02Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Alanyaspor', 'price': 101.0}, {'name': 'Fenerbahce', 'price': 1.0}, {'name': 'Draw', 'price': 31.0}]}]}, {'key': 'williamhill_us', 'title': 'William Hill (US)', 'last_update': '2022-09-18T18:55:02Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Alanyaspor', 'price': 22.0}, {'name': 'Fenerbahce', 'price': 1.0}, {'name': 'Draw', 'price': 22.0}]}]}]}\n", "\n", "{'id': '1d5db4032c3126733b24c8dc846360c4', 'sport_key': 'soccer_portugal_primeira_liga', 'sport_title': 'Primeira Liga - Portugal', 'commence_time': '2022-09-18T17:01:30Z', 'home_team': 'Casa Pia', 'away_team': 'Famalicão', 'bookmakers': [{'key': 'bovada', 'title': 'Bovada', 'last_update': '2022-09-18T18:52:29Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Casa Pia', 'price': 1.06}, {'name': 'Famalicão', 'price': 101.0}, {'name': 'Draw', 'price': 8.5}]}]}, {'key': 'mybookieag', 'title': 'MyBookie.ag', 'last_update': '2022-09-18T18:58:04Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Casa Pia', 'price': 1.14}, {'name': 'Famalicão', 'price': 34.96}, {'name': 'Draw', 'price': 4.65}]}]}, {'key': 'williamhill_us', 'title': 'William Hill (US)', 'last_update': '2022-09-18T18:52:28Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Casa Pia', 'price': 1.08}, {'name': 'Famalicão', 'price': 91.0}, {'name': 'Draw', 'price': 8.0}]}]}, {'key': 'foxbet', 'title': 'FOX Bet', 'last_update': '2022-09-18T18:56:00Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Casa Pia', 'price': 1.14}, {'name': 'Famalicão', 'price': 34.0}, {'name': 'Draw', 'price': 5.5}]}]}, {'key': 'barstool', 'title': 'Barstool Sportsbook', 'last_update': '2022-09-18T18:52:29Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Casa Pia', 'price': 1.03}, {'name': 'Famalicão', 'price': 326.0}, {'name': 'Draw', 'price': 16.0}]}]}, {'key': 'twinspires', 'title': 'TwinSpires', 'last_update': '2022-09-18T18:52:29Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Casa Pia', 'price': 1.03}, {'name': 'Famalicão', 'price': 326.0}, {'name': 'Draw', 'price': 16.0}]}]}, {'key': 'unibet', 'title': 'Unibet', 'last_update': '2022-09-18T18:52:27Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Casa Pia', 'price': 1.03}, {'name': 'Famalicão', 'price': 326.0}, {'name': 'Draw', 'price': 16.0}]}]}, {'key': 'betfair', 'title': 'Betfair', 'last_update': '2022-09-18T18:54:42Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Casa Pia', 'price': 1.08}, {'name': 'Famalicão', 'price': 4.8}, {'name': 'Draw', 'price': 10.5}]}, {'key': 'h2h_lay', 'outcomes': [{'name': 'Casa Pia', 'price': 1.1}, {'name': 'Famalicão', 'price': 1000.0}, {'name': 'Draw', 'price': 16.5}]}]}, {'key': 'draftkings', 'title': 'DraftKings', 'last_update': '2022-09-18T18:54:40Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Casa Pia', 'price': 1.01}, {'name': 'Famalicão', 'price': 56.0}, {'name': 'Draw', 'price': 19.0}]}]}]}\n", "\n", "{'id': '5ee78ae20ac0510e4a78e03cb1c41e18', 'sport_key': 'americanfootball_nfl', 'sport_title': 'NFL', 'commence_time': '2022-09-18T17:02:32Z', 'home_team': 'Pittsburgh Steelers', 'away_team': 'New England Patriots', 'bookmakers': [{'key': 'unibet', 'title': 'Unibet', 'last_update': '2022-09-18T18:57:31Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'New England Patriots', 'price': 1.2}, {'name': 'Pittsburgh Steelers', 'price': 4.5}]}]}, {'key': 'williamhill_us', 'title': 'William Hill (US)', 'last_update': '2022-09-18T18:57:30Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'New England Patriots', 'price': 1.31}, {'name': 'Pittsburgh Steelers', 'price': 3.5}]}]}, {'key': 'mybookieag', 'title': 'MyBookie.ag', 'last_update': '2022-09-18T18:57:31Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'New England Patriots', 'price': 1.16}, {'name': 'Pittsburgh Steelers', 'price': 4.99}]}]}, {'key': 'sugarhouse', 'title': 'SugarHouse', 'last_update': '2022-09-18T18:57:32Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'New England Patriots', 'price': 1.2}, {'name': 'Pittsburgh Steelers', 'price': 4.5}]}]}, {'key': 'barstool', 'title': 'Barstool Sportsbook', 'last_update': '2022-09-18T18:57:31Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'New England Patriots', 'price': 1.2}, {'name': 'Pittsburgh Steelers', 'price': 4.5}]}]}, {'key': 'draftkings', 'title': 'DraftKings', 'last_update': '2022-09-18T18:57:31Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'New England Patriots', 'price': 1.24}, {'name': 'Pittsburgh Steelers', 'price': 4.2}]}]}, {'key': 'pointsbetus', 'title': 'PointsBet (US)', 'last_update': '2022-09-18T18:57:31Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'New England Patriots', 'price': 1.29}, {'name': 'Pittsburgh Steelers', 'price': 3.8}]}]}, {'key': 'foxbet', 'title': 'FOX Bet', 'last_update': '2022-09-18T18:57:31Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'New England Patriots', 'price': 1.35}, {'name': 'Pittsburgh Steelers', 'price': 3.0}]}]}, {'key': 'gtbets', 'title': 'GTbets', 'last_update': '2022-09-18T18:57:32Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'New England Patriots', 'price': 1.28}, {'name': 'Pittsburgh Steelers', 'price': 3.36}]}]}, {'key': 'fanduel', 'title': 'FanDuel', 'last_update': '2022-09-18T18:57:31Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'New England Patriots', 'price': 1.25}, {'name': 'Pittsburgh Steelers', 'price': 3.85}]}]}, {'key': 'betfair', 'title': 'Betfair', 'last_update': '2022-09-18T18:57:32Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'New England Patriots', 'price': 1.33}, {'name': 'Pittsburgh Steelers', 'price': 3.8}]}, {'key': 'h2h_lay', 'outcomes': [{'name': 'New England Patriots', 'price': 1.36}, {'name': 'Pittsburgh Steelers', 'price': 4.1}]}]}, {'key': 'betmgm', 'title': 'BetMGM', 'last_update': '2022-09-18T18:57:32Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'New England Patriots', 'price': 1.29}, {'name': 'Pittsburgh Steelers', 'price': 3.6}]}]}, {'key': 'bovada', 'title': 'Bovada', 'last_update': '2022-09-18T18:57:32Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'New England Patriots', 'price': 1.31}, {'name': 'Pittsburgh Steelers', 'price': 3.3}]}]}]}\n", "\n", "{'id': '080f13421b3e5e54278a91ca84da1b5e', 'sport_key': 'americanfootball_nfl', 'sport_title': 'NFL', 'commence_time': '2022-09-18T17:02:34Z', 'home_team': 'Baltimore Ravens', 'away_team': 'Miami Dolphins', 'bookmakers': [{'key': 'fanduel', 'title': 'FanDuel', 'last_update': '2022-09-18T18:57:31Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Baltimore Ravens', 'price': 1.01}, {'name': 'Miami Dolphins', 'price': 16.0}]}]}, {'key': 'draftkings', 'title': 'DraftKings', 'last_update': '2022-09-18T18:57:31Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Baltimore Ravens', 'price': 1.02}, {'name': 'Miami Dolphins', 'price': 16.0}]}]}, {'key': 'pointsbetus', 'title': 'PointsBet (US)', 'last_update': '2022-09-18T18:57:31Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Baltimore Ravens', 'price': 1.02}, {'name': 'Miami Dolphins', 'price': 18.0}]}]}, {'key': 'foxbet', 'title': 'FOX Bet', 'last_update': '2022-09-18T18:57:31Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Baltimore Ravens', 'price': 1.03}, {'name': 'Miami Dolphins', 'price': 10.0}]}]}, {'key': 'bovada', 'title': 'Bovada', 'last_update': '2022-09-18T18:57:32Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Baltimore Ravens', 'price': 1.03}, {'name': 'Miami Dolphins', 'price': 13.0}]}]}, {'key': 'gtbets', 'title': 'GTbets', 'last_update': '2022-09-18T18:57:32Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Baltimore Ravens', 'price': 1.06}, {'name': 'Miami Dolphins', 'price': 7.81}]}]}, {'key': 'betmgm', 'title': 'BetMGM', 'last_update': '2022-09-18T18:57:32Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Baltimore Ravens', 'price': 1.04}, {'name': 'Miami Dolphins', 'price': 12.5}]}]}, {'key': 'betfair', 'title': 'Betfair', 'last_update': '2022-09-18T18:57:32Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Baltimore Ravens', 'price': 1.02}, {'name': 'Miami Dolphins', 'price': 5.4}]}, {'key': 'h2h_lay', 'outcomes': [{'name': 'Baltimore Ravens', 'price': 1.05}, {'name': 'Miami Dolphins', 'price': 1000.0}]}]}]}\n", "\n", "{'id': 'ed269bc596b394ccf877e9663eaf6b45', 'sport_key': 'soccer_turkey_super_league', 'sport_title': 'Turkey Super League', 'commence_time': '2022-09-18T17:02:35Z', 'home_team': 'Ankaragücü', 'away_team': 'Sivasspor', 'bookmakers': [{'key': 'bovada', 'title': 'Bovada', 'last_update': '2022-09-18T18:57:17Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Ankaragücü', 'price': 1.08}, {'name': 'Sivasspor', 'price': 56.0}, {'name': 'Draw', 'price': 7.0}]}]}, {'key': 'foxbet', 'title': 'FOX Bet', 'last_update': '2022-09-18T18:57:15Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Ankaragücü', 'price': 1.08}, {'name': 'Sivasspor', 'price': 41.0}, {'name': 'Draw', 'price': 6.5}]}]}, {'key': 'betfair', 'title': 'Betfair', 'last_update': '2022-09-18T18:57:18Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Ankaragücü', 'price': 1.18}, {'name': 'Sivasspor', 'price': 12.0}, {'name': 'Draw', 'price': 7.6}]}, {'key': 'h2h_lay', 'outcomes': [{'name': 'Ankaragücü', 'price': 1.19}, {'name': 'Sivasspor', 'price': 1000.0}, {'name': 'Draw', 'price': 16.5}]}]}, {'key': 'williamhill_us', 'title': 'William Hill (US)', 'last_update': '2022-09-18T18:57:15Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Ankaragücü', 'price': 1.07}, {'name': 'Sivasspor', 'price': 91.0}, {'name': 'Draw', 'price': 7.0}]}]}, {'key': 'twinspires', 'title': 'TwinSpires', 'last_update': '2022-09-18T18:57:17Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Ankaragücü', 'price': 1.07}, {'name': 'Sivasspor', 'price': 91.0}, {'name': 'Draw', 'price': 10.0}]}]}, {'key': 'barstool', 'title': 'Barstool Sportsbook', 'last_update': '2022-09-18T18:57:16Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Ankaragücü', 'price': 1.07}, {'name': 'Sivasspor', 'price': 91.0}, {'name': 'Draw', 'price': 10.0}]}]}, {'key': 'unibet', 'title': 'Unibet', 'last_update': '2022-09-18T18:57:17Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Ankaragücü', 'price': 1.07}, {'name': 'Sivasspor', 'price': 91.0}, {'name': 'Draw', 'price': 10.0}]}]}, {'key': 'draftkings', 'title': 'DraftKings', 'last_update': '2022-09-18T18:57:15Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Ankaragücü', 'price': 1.06}, {'name': 'Sivasspor', 'price': 46.0}, {'name': 'Draw', 'price': 10.5}]}]}]}\n", "\n", "{'id': '657839ab389b71122d87801a3822ed4b', 'sport_key': 'americanfootball_nfl', 'sport_title': 'NFL', 'commence_time': '2022-09-18T17:02:54Z', 'home_team': 'Detroit Lions', 'away_team': 'Washington Commanders', 'bookmakers': [{'key': 'unibet', 'title': 'Unibet', 'last_update': '2022-09-18T18:57:31Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Detroit Lions', 'price': 1.13}, {'name': 'Washington Commanders', 'price': 5.8}]}]}, {'key': 'sugarhouse', 'title': 'SugarHouse', 'last_update': '2022-09-18T18:57:32Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Detroit Lions', 'price': 1.13}, {'name': 'Washington Commanders', 'price': 5.8}]}]}, {'key': 'barstool', 'title': 'Barstool Sportsbook', 'last_update': '2022-09-18T18:57:31Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Detroit Lions', 'price': 1.13}, {'name': 'Washington Commanders', 'price': 5.8}]}]}, {'key': 'fanduel', 'title': 'FanDuel', 'last_update': '2022-09-18T18:57:31Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Detroit Lions', 'price': 1.11}, {'name': 'Washington Commanders', 'price': 6.2}]}]}, {'key': 'pointsbetus', 'title': 'PointsBet (US)', 'last_update': '2022-09-18T18:57:31Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Detroit Lions', 'price': 1.11}, {'name': 'Washington Commanders', 'price': 7.0}]}]}, {'key': 'draftkings', 'title': 'DraftKings', 'last_update': '2022-09-18T18:57:31Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Detroit Lions', 'price': 1.11}, {'name': 'Washington Commanders', 'price': 6.1}]}]}, {'key': 'williamhill_us', 'title': 'William Hill (US)', 'last_update': '2022-09-18T18:57:30Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Detroit Lions', 'price': 1.11}, {'name': 'Washington Commanders', 'price': 6.75}]}]}, {'key': 'foxbet', 'title': 'FOX Bet', 'last_update': '2022-09-18T18:57:31Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Detroit Lions', 'price': 1.07}, {'name': 'Washington Commanders', 'price': 7.5}]}]}, {'key': 'bovada', 'title': 'Bovada', 'last_update': '2022-09-18T18:57:32Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Detroit Lions', 'price': 1.11}, {'name': 'Washington Commanders', 'price': 6.0}]}]}, {'key': 'betmgm', 'title': 'BetMGM', 'last_update': '2022-09-18T18:57:32Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Detroit Lions', 'price': 1.12}, {'name': 'Washington Commanders', 'price': 6.25}]}]}, {'key': 'betfair', 'title': 'Betfair', 'last_update': '2022-09-18T18:57:32Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Detroit Lions', 'price': 1.13}, {'name': 'Washington Commanders', 'price': 8.0}]}, {'key': 'h2h_lay', 'outcomes': [{'name': 'Detroit Lions', 'price': 1.14}, {'name': 'Washington Commanders', 'price': 9.4}]}]}]}\n", "\n", "{'id': '3d469388c5e965ce890616a61441ff51', 'sport_key': 'americanfootball_nfl', 'sport_title': 'NFL', 'commence_time': '2022-09-18T17:02:54Z', 'home_team': 'Jacksonville Jaguars', 'away_team': 'Indianapolis Colts', 'bookmakers': [{'key': 'fanduel', 'title': 'FanDuel', 'last_update': '2022-09-18T18:57:31Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Indianapolis Colts', 'price': 16.0}, {'name': 'Jacksonville Jaguars', 'price': 1.01}]}]}, {'key': 'williamhill_us', 'title': 'William Hill (US)', 'last_update': '2022-09-18T18:57:30Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Indianapolis Colts', 'price': 17.0}, {'name': 'Jacksonville Jaguars', 'price': 1.02}]}]}, {'key': 'pointsbetus', 'title': 'PointsBet (US)', 'last_update': '2022-09-18T18:57:31Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Indianapolis Colts', 'price': 29.0}, {'name': 'Jacksonville Jaguars', 'price': 1.01}]}]}, {'key': 'bovada', 'title': 'Bovada', 'last_update': '2022-09-18T18:57:32Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Indianapolis Colts', 'price': 17.0}, {'name': 'Jacksonville Jaguars', 'price': 1.01}]}]}, {'key': 'gtbets', 'title': 'GTbets', 'last_update': '2022-09-18T18:57:32Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Indianapolis Colts', 'price': 8.05}, {'name': 'Jacksonville Jaguars', 'price': 1.06}]}]}, {'key': 'betfair', 'title': 'Betfair', 'last_update': '2022-09-18T18:57:32Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Indianapolis Colts', 'price': 8.0}, {'name': 'Jacksonville Jaguars', 'price': 1.02}]}, {'key': 'h2h_lay', 'outcomes': [{'name': 'Indianapolis Colts', 'price': 1000.0}, {'name': 'Jacksonville Jaguars', 'price': 1.03}]}]}, {'key': 'betmgm', 'title': 'BetMGM', 'last_update': '2022-09-18T18:57:32Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Indianapolis Colts', 'price': 26.0}, {'name': 'Jacksonville Jaguars', 'price': 1.01}]}]}]}\n", "\n", "{'id': 'b4a7c5c1af92401d25765f20a28b3c3d', 'sport_key': 'americanfootball_nfl', 'sport_title': 'NFL', 'commence_time': '2022-09-18T17:02:55Z', 'home_team': 'New Orleans Saints', 'away_team': 'Tampa Bay Buccaneers', 'bookmakers': [{'key': 'unibet', 'title': 'Unibet', 'last_update': '2022-09-18T18:57:31Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'New Orleans Saints', 'price': 2.0}, {'name': 'Tampa Bay Buccaneers', 'price': 1.8}]}]}, {'key': 'foxbet', 'title': 'FOX Bet', 'last_update': '2022-09-18T18:57:31Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'New Orleans Saints', 'price': 1.85}, {'name': 'Tampa Bay Buccaneers', 'price': 1.85}]}]}, {'key': 'fanduel', 'title': 'FanDuel', 'last_update': '2022-09-18T18:57:31Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'New Orleans Saints', 'price': 2.0}, {'name': 'Tampa Bay Buccaneers', 'price': 1.78}]}]}, {'key': 'barstool', 'title': 'Barstool Sportsbook', 'last_update': '2022-09-18T18:57:31Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'New Orleans Saints', 'price': 2.0}, {'name': 'Tampa Bay Buccaneers', 'price': 1.8}]}]}, {'key': 'betfair', 'title': 'Betfair', 'last_update': '2022-09-18T18:57:32Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'New Orleans Saints', 'price': 1.87}, {'name': 'Tampa Bay Buccaneers', 'price': 1.98}]}, {'key': 'h2h_lay', 'outcomes': [{'name': 'New Orleans Saints', 'price': 2.02}, {'name': 'Tampa Bay Buccaneers', 'price': 2.16}]}]}, {'key': 'pointsbetus', 'title': 'PointsBet (US)', 'last_update': '2022-09-18T18:57:31Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'New Orleans Saints', 'price': 2.05}, {'name': 'Tampa Bay Buccaneers', 'price': 1.83}]}]}, {'key': 'sugarhouse', 'title': 'SugarHouse', 'last_update': '2022-09-18T18:57:32Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'New Orleans Saints', 'price': 2.0}, {'name': 'Tampa Bay Buccaneers', 'price': 1.8}]}]}, {'key': 'mybookieag', 'title': 'MyBookie.ag', 'last_update': '2022-09-18T18:57:31Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'New Orleans Saints', 'price': 1.83}, {'name': 'Tampa Bay Buccaneers', 'price': 1.94}]}]}, {'key': 'gtbets', 'title': 'GTbets', 'last_update': '2022-09-18T18:57:32Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'New Orleans Saints', 'price': 2.08}, {'name': 'Tampa Bay Buccaneers', 'price': 1.7}]}]}, {'key': 'williamhill_us', 'title': 'William Hill (US)', 'last_update': '2022-09-18T18:57:30Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'New Orleans Saints', 'price': 1.91}, {'name': 'Tampa Bay Buccaneers', 'price': 1.83}]}]}, {'key': 'betmgm', 'title': 'BetMGM', 'last_update': '2022-09-18T18:57:32Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'New Orleans Saints', 'price': 2.05}, {'name': 'Tampa Bay Buccaneers', 'price': 1.77}]}]}, {'key': 'bovada', 'title': 'Bovada', 'last_update': '2022-09-18T18:57:32Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'New Orleans Saints', 'price': 2.1}, {'name': 'Tampa Bay Buccaneers', 'price': 1.69}]}]}, {'key': 'draftkings', 'title': 'DraftKings', 'last_update': '2022-09-18T18:57:31Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'New Orleans Saints', 'price': 2.0}, {'name': 'Tampa Bay Buccaneers', 'price': 1.77}]}]}]}\n", "\n", "{'id': 'db2d95a9bcb88932cbe6bc5382fbba99', 'sport_key': 'americanfootball_nfl', 'sport_title': 'NFL', 'commence_time': '2022-09-18T17:03:01Z', 'home_team': 'Cleveland Browns', 'away_team': 'New York Jets', 'bookmakers': [{'key': 'unibet', 'title': 'Unibet', 'last_update': '2022-09-18T18:57:31Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Cleveland Browns', 'price': 1.38}, {'name': 'New York Jets', 'price': 3.05}]}]}, {'key': 'barstool', 'title': 'Barstool Sportsbook', 'last_update': '2022-09-18T18:57:31Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Cleveland Browns', 'price': 1.36}, {'name': 'New York Jets', 'price': 3.1}]}]}, {'key': 'sugarhouse', 'title': 'SugarHouse', 'last_update': '2022-09-18T18:57:32Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Cleveland Browns', 'price': 1.36}, {'name': 'New York Jets', 'price': 3.1}]}]}, {'key': 'draftkings', 'title': 'DraftKings', 'last_update': '2022-09-18T18:57:31Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Cleveland Browns', 'price': 1.35}, {'name': 'New York Jets', 'price': 3.25}]}]}, {'key': 'fanduel', 'title': 'FanDuel', 'last_update': '2022-09-18T18:57:31Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Cleveland Browns', 'price': 1.29}, {'name': 'New York Jets', 'price': 3.55}]}]}, {'key': 'williamhill_us', 'title': 'William Hill (US)', 'last_update': '2022-09-18T18:57:30Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Cleveland Browns', 'price': 1.33}, {'name': 'New York Jets', 'price': 3.4}]}]}, {'key': 'mybookieag', 'title': 'MyBookie.ag', 'last_update': '2022-09-18T18:57:31Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Cleveland Browns', 'price': 1.37}, {'name': 'New York Jets', 'price': 3.03}]}]}, {'key': 'pointsbetus', 'title': 'PointsBet (US)', 'last_update': '2022-09-18T18:57:31Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Cleveland Browns', 'price': 1.36}, {'name': 'New York Jets', 'price': 3.3}]}]}, {'key': 'foxbet', 'title': 'FOX Bet', 'last_update': '2022-09-18T18:57:31Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Cleveland Browns', 'price': 1.3}, {'name': 'New York Jets', 'price': 3.3}]}]}, {'key': 'bovada', 'title': 'Bovada', 'last_update': '2022-09-18T18:57:32Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Cleveland Browns', 'price': 1.35}, {'name': 'New York Jets', 'price': 3.05}]}]}, {'key': 'gtbets', 'title': 'GTbets', 'last_update': '2022-09-18T18:57:32Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Cleveland Browns', 'price': 1.36}, {'name': 'New York Jets', 'price': 2.97}]}]}, {'key': 'betmgm', 'title': 'BetMGM', 'last_update': '2022-09-18T18:57:32Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Cleveland Browns', 'price': 1.4}, {'name': 'New York Jets', 'price': 3.0}]}]}, {'key': 'betfair', 'title': 'Betfair', 'last_update': '2022-09-18T18:57:32Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Cleveland Browns', 'price': 1.4}, {'name': 'New York Jets', 'price': 3.05}]}, {'key': 'h2h_lay', 'outcomes': [{'name': 'Cleveland Browns', 'price': 1.48}, {'name': 'New York Jets', 'price': 3.5}]}]}]}\n", "\n", "{'id': '8cc8ad88130a20c5903a7242d78e8cf1', 'sport_key': 'americanfootball_nfl', 'sport_title': 'NFL', 'commence_time': '2022-09-18T17:03:02Z', 'home_team': 'New York Giants', 'away_team': 'Carolina Panthers', 'bookmakers': [{'key': 'unibet', 'title': 'Unibet', 'last_update': '2022-09-18T18:57:31Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Carolina Panthers', 'price': 1.7}, {'name': 'New York Giants', 'price': 2.15}]}]}, {'key': 'draftkings', 'title': 'DraftKings', 'last_update': '2022-09-18T18:57:31Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Carolina Panthers', 'price': 1.57}, {'name': 'New York Giants', 'price': 2.4}]}]}, {'key': 'fanduel', 'title': 'FanDuel', 'last_update': '2022-09-18T18:57:31Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Carolina Panthers', 'price': 1.68}, {'name': 'New York Giants', 'price': 2.14}]}]}, {'key': 'pointsbetus', 'title': 'PointsBet (US)', 'last_update': '2022-09-18T18:57:31Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Carolina Panthers', 'price': 1.69}, {'name': 'New York Giants', 'price': 2.25}]}]}, {'key': 'foxbet', 'title': 'FOX Bet', 'last_update': '2022-09-18T18:51:55Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Carolina Panthers', 'price': 1.25}, {'name': 'New York Giants', 'price': 3.7}]}]}, {'key': 'mybookieag', 'title': 'MyBookie.ag', 'last_update': '2022-09-18T18:57:31Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Carolina Panthers', 'price': 1.32}, {'name': 'New York Giants', 'price': 3.31}]}]}, {'key': 'williamhill_us', 'title': 'William Hill (US)', 'last_update': '2022-09-18T18:57:30Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Carolina Panthers', 'price': 1.71}, {'name': 'New York Giants', 'price': 2.1}]}]}, {'key': 'barstool', 'title': 'Barstool Sportsbook', 'last_update': '2022-09-18T18:57:31Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Carolina Panthers', 'price': 1.7}, {'name': 'New York Giants', 'price': 2.15}]}]}, {'key': 'sugarhouse', 'title': 'SugarHouse', 'last_update': '2022-09-18T18:57:32Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Carolina Panthers', 'price': 1.7}, {'name': 'New York Giants', 'price': 2.15}]}]}, {'key': 'bovada', 'title': 'Bovada', 'last_update': '2022-09-18T18:57:32Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Carolina Panthers', 'price': 1.69}, {'name': 'New York Giants', 'price': 2.1}]}]}, {'key': 'gtbets', 'title': 'GTbets', 'last_update': '2022-09-18T18:57:32Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Carolina Panthers', 'price': 1.7}, {'name': 'New York Giants', 'price': 2.08}]}]}, {'key': 'betmgm', 'title': 'BetMGM', 'last_update': '2022-09-18T18:57:32Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Carolina Panthers', 'price': 1.67}, {'name': 'New York Giants', 'price': 2.2}]}]}, {'key': 'betfair', 'title': 'Betfair', 'last_update': '2022-09-18T18:57:32Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Carolina Panthers', 'price': 1.25}, {'name': 'New York Giants', 'price': 2.02}]}, {'key': 'h2h_lay', 'outcomes': [{'name': 'Carolina Panthers', 'price': 1.98}, {'name': 'New York Giants', 'price': 5.0}]}]}]}\n", "\n", "{'id': '1b1b9afd32c304acb2526759ad5e8e1a', 'sport_key': 'soccer_usa_mls', 'sport_title': 'MLS', 'commence_time': '2022-09-18T17:09:22Z', 'home_team': 'Columbus Crew SC', 'away_team': 'Portland Timbers', 'bookmakers': [{'key': 'mybookieag', 'title': 'MyBookie.ag', 'last_update': '2022-09-18T18:56:17Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Columbus Crew SC', 'price': 1.06}, {'name': 'Portland Timbers', 'price': 123.58}, {'name': 'Draw', 'price': 7.08}]}]}, {'key': 'fanduel', 'title': 'FanDuel', 'last_update': '2022-09-18T18:57:09Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Columbus Crew SC', 'price': 1.04}, {'name': 'Portland Timbers', 'price': 51.0}, {'name': 'Draw', 'price': 10.5}]}]}, {'key': 'pointsbetus', 'title': 'PointsBet (US)', 'last_update': '2022-09-18T18:57:09Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Columbus Crew SC', 'price': 1.07}, {'name': 'Portland Timbers', 'price': 101.0}, {'name': 'Draw', 'price': 9.5}]}]}, {'key': 'bovada', 'title': 'Bovada', 'last_update': '2022-09-18T18:57:10Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Columbus Crew SC', 'price': 1.07}, {'name': 'Portland Timbers', 'price': 101.0}, {'name': 'Draw', 'price': 8.0}]}]}, {'key': 'betfair', 'title': 'Betfair', 'last_update': '2022-09-18T18:56:16Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Columbus Crew SC', 'price': 1.1}, {'name': 'Portland Timbers', 'price': 60.0}, {'name': 'Draw', 'price': 9.8}]}, {'key': 'h2h_lay', 'outcomes': [{'name': 'Columbus Crew SC', 'price': 1.12}, {'name': 'Portland Timbers', 'price': 700.0}, {'name': 'Draw', 'price': 14.0}]}]}, {'key': 'draftkings', 'title': 'DraftKings', 'last_update': '2022-09-18T18:57:09Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Columbus Crew SC', 'price': 1.06}, {'name': 'Portland Timbers', 'price': 46.0}, {'name': 'Draw', 'price': 10.5}]}]}, {'key': 'twinspires', 'title': 'TwinSpires', 'last_update': '2022-09-18T18:57:10Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Columbus Crew SC', 'price': 1.06}, {'name': 'Portland Timbers', 'price': 126.0}, {'name': 'Draw', 'price': 10.5}]}]}, {'key': 'barstool', 'title': 'Barstool Sportsbook', 'last_update': '2022-09-18T18:57:10Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Columbus Crew SC', 'price': 1.06}, {'name': 'Portland Timbers', 'price': 126.0}, {'name': 'Draw', 'price': 10.5}]}]}, {'key': 'sugarhouse', 'title': 'SugarHouse', 'last_update': '2022-09-18T18:57:10Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Columbus Crew SC', 'price': 1.06}, {'name': 'Portland Timbers', 'price': 126.0}, {'name': 'Draw', 'price': 10.5}]}]}, {'key': 'unibet', 'title': 'Unibet', 'last_update': '2022-09-18T18:57:09Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Columbus Crew SC', 'price': 1.06}, {'name': 'Portland Timbers', 'price': 126.0}, {'name': 'Draw', 'price': 10.5}]}]}, {'key': 'foxbet', 'title': 'FOX Bet', 'last_update': '2022-09-18T18:57:09Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Columbus Crew SC', 'price': 1.22}, {'name': 'Portland Timbers', 'price': 15.0}, {'name': 'Draw', 'price': 4.33}]}]}]}\n", "\n", "{'id': '77a6370d5507b4b52040af21ae6adb21', 'sport_key': 'baseball_mlb', 'sport_title': 'MLB', 'commence_time': '2022-09-18T17:10:20Z', 'home_team': 'Tampa Bay Rays', 'away_team': 'Texas Rangers', 'bookmakers': [{'key': 'draftkings', 'title': 'DraftKings', 'last_update': '2022-09-18T18:57:37Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Tampa Bay Rays', 'price': 1.22}, {'name': 'Texas Rangers', 'price': 4.4}]}]}, {'key': 'fanduel', 'title': 'FanDuel', 'last_update': '2022-09-18T18:57:37Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Tampa Bay Rays', 'price': 1.23}, {'name': 'Texas Rangers', 'price': 4.0}]}]}, {'key': 'bovada', 'title': 'Bovada', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Tampa Bay Rays', 'price': 1.18}, {'name': 'Texas Rangers', 'price': 4.5}]}]}, {'key': 'circasports', 'title': 'Circa Sports', 'last_update': '2022-09-18T18:44:49Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Tampa Bay Rays', 'price': 1.04}, {'name': 'Texas Rangers', 'price': 11.9}]}]}, {'key': 'gtbets', 'title': 'GTbets', 'last_update': '2022-09-18T18:57:39Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Tampa Bay Rays', 'price': 1.17}, {'name': 'Texas Rangers', 'price': 4.85}]}]}, {'key': 'betmgm', 'title': 'BetMGM', 'last_update': '2022-09-18T18:57:39Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Tampa Bay Rays', 'price': 1.25}, {'name': 'Texas Rangers', 'price': 3.9}]}]}, {'key': 'foxbet', 'title': 'FOX Bet', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Tampa Bay Rays', 'price': 1.1}, {'name': 'Texas Rangers', 'price': 5.75}]}]}, {'key': 'sugarhouse', 'title': 'SugarHouse', 'last_update': '2022-09-18T18:57:39Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Tampa Bay Rays', 'price': 1.13}, {'name': 'Texas Rangers', 'price': 6.0}]}]}, {'key': 'barstool', 'title': 'Barstool Sportsbook', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Tampa Bay Rays', 'price': 1.13}, {'name': 'Texas Rangers', 'price': 6.0}]}]}, {'key': 'twinspires', 'title': 'TwinSpires', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Tampa Bay Rays', 'price': 1.13}, {'name': 'Texas Rangers', 'price': 6.0}]}]}, {'key': 'unibet', 'title': 'Unibet', 'last_update': '2022-09-18T18:57:37Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Tampa Bay Rays', 'price': 1.13}, {'name': 'Texas Rangers', 'price': 6.0}]}]}, {'key': 'betfair', 'title': 'Betfair', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Tampa Bay Rays', 'price': 1.19}, {'name': 'Texas Rangers', 'price': 4.0}]}, {'key': 'h2h_lay', 'outcomes': [{'name': 'Tampa Bay Rays', 'price': 1.3}, {'name': 'Texas Rangers', 'price': 7.0}]}]}]}\n", "\n", "{'id': 'bf43a0cd9018e9dd2d20de0ebf649724', 'sport_key': 'soccer_germany_bundesliga', 'sport_title': 'Bundesliga - Germany', 'commence_time': '2022-09-18T17:30:11Z', 'home_team': 'TSG Hoffenheim', 'away_team': 'SC Freiburg', 'bookmakers': [{'key': 'draftkings', 'title': 'DraftKings', 'last_update': '2022-09-18T18:58:02Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'SC Freiburg', 'price': 4.0}, {'name': 'TSG Hoffenheim', 'price': 3.8}, {'name': 'Draw', 'price': 1.8}]}]}, {'key': 'fanduel', 'title': 'FanDuel', 'last_update': '2022-09-18T18:58:01Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'SC Freiburg', 'price': 4.5}, {'name': 'TSG Hoffenheim', 'price': 3.6}, {'name': 'Draw', 'price': 1.77}]}]}, {'key': 'bovada', 'title': 'Bovada', 'last_update': '2022-09-18T18:58:01Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'SC Freiburg', 'price': 3.85}, {'name': 'TSG Hoffenheim', 'price': 3.4}, {'name': 'Draw', 'price': 1.93}]}]}, {'key': 'mybookieag', 'title': 'MyBookie.ag', 'last_update': '2022-09-18T18:58:01Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'SC Freiburg', 'price': 3.14}, {'name': 'TSG Hoffenheim', 'price': 2.77}, {'name': 'Draw', 'price': 2.5}]}]}, {'key': 'betfair', 'title': 'Betfair', 'last_update': '2022-09-18T18:58:01Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'SC Freiburg', 'price': 4.1}, {'name': 'TSG Hoffenheim', 'price': 3.55}, {'name': 'Draw', 'price': 2.06}]}, {'key': 'h2h_lay', 'outcomes': [{'name': 'SC Freiburg', 'price': 4.3}, {'name': 'TSG Hoffenheim', 'price': 3.6}, {'name': 'Draw', 'price': 2.08}]}]}, {'key': 'betmgm', 'title': 'BetMGM', 'last_update': '2022-09-18T18:58:02Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'SC Freiburg', 'price': 4.1}, {'name': 'TSG Hoffenheim', 'price': 3.3}, {'name': 'Draw', 'price': 1.83}]}]}, {'key': 'williamhill_us', 'title': 'William Hill (US)', 'last_update': '2022-09-18T18:58:01Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'SC Freiburg', 'price': 3.9}, {'name': 'TSG Hoffenheim', 'price': 3.55}, {'name': 'Draw', 'price': 1.89}]}]}, {'key': 'foxbet', 'title': 'FOX Bet', 'last_update': '2022-09-18T18:58:01Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'SC Freiburg', 'price': 3.7}, {'name': 'TSG Hoffenheim', 'price': 2.75}, {'name': 'Draw', 'price': 2.2}]}]}, {'key': 'sugarhouse', 'title': 'SugarHouse', 'last_update': '2022-09-18T18:58:02Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'SC Freiburg', 'price': 4.1}, {'name': 'TSG Hoffenheim', 'price': 3.4}, {'name': 'Draw', 'price': 1.92}]}]}, {'key': 'barstool', 'title': 'Barstool Sportsbook', 'last_update': '2022-09-18T18:58:02Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'SC Freiburg', 'price': 4.1}, {'name': 'TSG Hoffenheim', 'price': 3.4}, {'name': 'Draw', 'price': 1.92}]}]}, {'key': 'unibet', 'title': 'Unibet', 'last_update': '2022-09-18T18:58:01Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'SC Freiburg', 'price': 4.1}, {'name': 'TSG Hoffenheim', 'price': 3.4}, {'name': 'Draw', 'price': 1.92}]}]}, {'key': 'twinspires', 'title': 'TwinSpires', 'last_update': '2022-09-18T18:58:02Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'SC Freiburg', 'price': 4.1}, {'name': 'TSG Hoffenheim', 'price': 3.4}, {'name': 'Draw', 'price': 1.92}]}]}]}\n", "\n", "{'id': '5e8f224871d0cc053757ada05d97a275', 'sport_key': 'baseball_mlb', 'sport_title': 'MLB', 'commence_time': '2022-09-18T17:34:30Z', 'home_team': 'Washington Nationals', 'away_team': 'Miami Marlins', 'bookmakers': [{'key': 'foxbet', 'title': 'FOX Bet', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Miami Marlins', 'price': 1.62}, {'name': 'Washington Nationals', 'price': 2.15}]}]}, {'key': 'fanduel', 'title': 'FanDuel', 'last_update': '2022-09-18T18:57:37Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Miami Marlins', 'price': 1.32}, {'name': 'Washington Nationals', 'price': 3.25}]}]}, {'key': 'bovada', 'title': 'Bovada', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Miami Marlins', 'price': 1.35}, {'name': 'Washington Nationals', 'price': 3.1}]}]}, {'key': 'gtbets', 'title': 'GTbets', 'last_update': '2022-09-18T18:57:39Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Miami Marlins', 'price': 1.34}, {'name': 'Washington Nationals', 'price': 3.17}]}]}, {'key': 'circasports', 'title': 'Circa Sports', 'last_update': '2022-09-18T18:57:39Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Miami Marlins', 'price': 1.41}, {'name': 'Washington Nationals', 'price': 3.03}]}]}, {'key': 'draftkings', 'title': 'DraftKings', 'last_update': '2022-09-18T18:57:37Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Miami Marlins', 'price': 1.4}, {'name': 'Washington Nationals', 'price': 3.0}]}]}, {'key': 'betmgm', 'title': 'BetMGM', 'last_update': '2022-09-18T18:57:39Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Miami Marlins', 'price': 1.36}, {'name': 'Washington Nationals', 'price': 3.1}]}]}, {'key': 'sugarhouse', 'title': 'SugarHouse', 'last_update': '2022-09-18T18:57:39Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Miami Marlins', 'price': 1.38}, {'name': 'Washington Nationals', 'price': 3.05}]}]}, {'key': 'barstool', 'title': 'Barstool Sportsbook', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Miami Marlins', 'price': 1.38}, {'name': 'Washington Nationals', 'price': 3.05}]}]}, {'key': 'twinspires', 'title': 'TwinSpires', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Miami Marlins', 'price': 1.38}, {'name': 'Washington Nationals', 'price': 3.05}]}]}, {'key': 'unibet', 'title': 'Unibet', 'last_update': '2022-09-18T18:57:37Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Miami Marlins', 'price': 1.38}, {'name': 'Washington Nationals', 'price': 3.05}]}]}, {'key': 'betfair', 'title': 'Betfair', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Miami Marlins', 'price': 1.32}, {'name': 'Washington Nationals', 'price': 3.55}]}, {'key': 'h2h_lay', 'outcomes': [{'name': 'Miami Marlins', 'price': 1.4}, {'name': 'Washington Nationals', 'price': 4.5}]}]}, {'key': 'mybookieag', 'title': 'MyBookie.ag', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Miami Marlins', 'price': 1.3}, {'name': 'Washington Nationals', 'price': 3.46}]}]}]}\n", "\n", "{'id': '294751cf15862ac1c449d60f2b700d56', 'sport_key': 'baseball_mlb', 'sport_title': 'MLB', 'commence_time': '2022-09-18T17:35:19Z', 'home_team': 'Boston Red Sox', 'away_team': 'Kansas City Royals', 'bookmakers': [{'key': 'foxbet', 'title': 'FOX Bet', 'last_update': '2022-09-18T18:56:44Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Boston Red Sox', 'price': 1.15}, {'name': 'Kansas City Royals', 'price': 4.75}]}]}, {'key': 'fanduel', 'title': 'FanDuel', 'last_update': '2022-09-18T18:57:37Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Boston Red Sox', 'price': 1.07}, {'name': 'Kansas City Royals', 'price': 8.3}]}]}, {'key': 'gtbets', 'title': 'GTbets', 'last_update': '2022-09-18T18:57:39Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Boston Red Sox', 'price': 1.09}, {'name': 'Kansas City Royals', 'price': 7.16}]}]}, {'key': 'bovada', 'title': 'Bovada', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Boston Red Sox', 'price': 1.07}, {'name': 'Kansas City Royals', 'price': 8.0}]}]}, {'key': 'circasports', 'title': 'Circa Sports', 'last_update': '2022-09-18T18:55:29Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Boston Red Sox', 'price': 1.09}, {'name': 'Kansas City Royals', 'price': 8.06}]}]}, {'key': 'draftkings', 'title': 'DraftKings', 'last_update': '2022-09-18T18:57:37Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Boston Red Sox', 'price': 1.13}, {'name': 'Kansas City Royals', 'price': 6.3}]}]}, {'key': 'betmgm', 'title': 'BetMGM', 'last_update': '2022-09-18T18:57:39Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Boston Red Sox', 'price': 1.1}, {'name': 'Kansas City Royals', 'price': 6.5}]}]}, {'key': 'sugarhouse', 'title': 'SugarHouse', 'last_update': '2022-09-18T18:57:39Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Boston Red Sox', 'price': 1.06}, {'name': 'Kansas City Royals', 'price': 9.0}]}]}, {'key': 'barstool', 'title': 'Barstool Sportsbook', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Boston Red Sox', 'price': 1.06}, {'name': 'Kansas City Royals', 'price': 9.0}]}]}, {'key': 'twinspires', 'title': 'TwinSpires', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Boston Red Sox', 'price': 1.06}, {'name': 'Kansas City Royals', 'price': 9.0}]}]}, {'key': 'unibet', 'title': 'Unibet', 'last_update': '2022-09-18T18:57:37Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Boston Red Sox', 'price': 1.06}, {'name': 'Kansas City Royals', 'price': 9.0}]}]}, {'key': 'betfair', 'title': 'Betfair', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Boston Red Sox', 'price': 1.1}, {'name': 'Kansas City Royals', 'price': 7.4}]}, {'key': 'h2h_lay', 'outcomes': [{'name': 'Boston Red Sox', 'price': 1.15}, {'name': 'Kansas City Royals', 'price': 13.5}]}]}]}\n", "\n", "{'id': '711b32d572df77854ed31a5f6224b88d', 'sport_key': 'baseball_mlb', 'sport_title': 'MLB', 'commence_time': '2022-09-18T17:35:56Z', 'home_team': 'Atlanta Braves', 'away_team': 'Philadelphia Phillies', 'bookmakers': [{'key': 'foxbet', 'title': 'FOX Bet', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Atlanta Braves', 'price': 1.2}, {'name': 'Philadelphia Phillies', 'price': 4.0}]}]}, {'key': 'fanduel', 'title': 'FanDuel', 'last_update': '2022-09-18T18:57:37Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Atlanta Braves', 'price': 1.25}, {'name': 'Philadelphia Phillies', 'price': 3.8}]}]}, {'key': 'bovada', 'title': 'Bovada', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Atlanta Braves', 'price': 1.26}, {'name': 'Philadelphia Phillies', 'price': 3.65}]}]}, {'key': 'gtbets', 'title': 'GTbets', 'last_update': '2022-09-18T18:57:39Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Atlanta Braves', 'price': 1.28}, {'name': 'Philadelphia Phillies', 'price': 3.57}]}]}, {'key': 'circasports', 'title': 'Circa Sports', 'last_update': '2022-09-18T18:52:03Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Atlanta Braves', 'price': 1.24}, {'name': 'Philadelphia Phillies', 'price': 4.27}]}]}, {'key': 'draftkings', 'title': 'DraftKings', 'last_update': '2022-09-18T18:57:37Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Atlanta Braves', 'price': 1.29}, {'name': 'Philadelphia Phillies', 'price': 3.65}]}]}, {'key': 'betmgm', 'title': 'BetMGM', 'last_update': '2022-09-18T18:57:39Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Atlanta Braves', 'price': 1.22}, {'name': 'Philadelphia Phillies', 'price': 4.1}]}]}, {'key': 'sugarhouse', 'title': 'SugarHouse', 'last_update': '2022-09-18T18:57:39Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Atlanta Braves', 'price': 1.24}, {'name': 'Philadelphia Phillies', 'price': 4.1}]}]}, {'key': 'barstool', 'title': 'Barstool Sportsbook', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Atlanta Braves', 'price': 1.24}, {'name': 'Philadelphia Phillies', 'price': 4.1}]}]}, {'key': 'twinspires', 'title': 'TwinSpires', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Atlanta Braves', 'price': 1.24}, {'name': 'Philadelphia Phillies', 'price': 4.1}]}]}, {'key': 'unibet', 'title': 'Unibet', 'last_update': '2022-09-18T18:57:37Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Atlanta Braves', 'price': 1.24}, {'name': 'Philadelphia Phillies', 'price': 4.1}]}]}, {'key': 'betfair', 'title': 'Betfair', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Atlanta Braves', 'price': 1.24}, {'name': 'Philadelphia Phillies', 'price': 4.0}]}, {'key': 'h2h_lay', 'outcomes': [{'name': 'Atlanta Braves', 'price': 1.32}, {'name': 'Philadelphia Phillies', 'price': 5.4}]}]}]}\n", "\n", "{'id': 'd5381d34df2482c116b2871b21bf62bf', 'sport_key': 'baseball_mlb', 'sport_title': 'MLB', 'commence_time': '2022-09-18T17:40:00Z', 'home_team': 'Cleveland Guardians', 'away_team': 'Minnesota Twins', 'bookmakers': [{'key': 'draftkings', 'title': 'DraftKings', 'last_update': '2022-09-18T18:57:37Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Cleveland Guardians', 'price': 2.85}, {'name': 'Minnesota Twins', 'price': 1.43}]}]}, {'key': 'foxbet', 'title': 'FOX Bet', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Cleveland Guardians', 'price': 2.1}, {'name': 'Minnesota Twins', 'price': 1.65}]}]}, {'key': 'gtbets', 'title': 'GTbets', 'last_update': '2022-09-18T18:57:39Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Cleveland Guardians', 'price': 2.61}, {'name': 'Minnesota Twins', 'price': 1.48}]}]}, {'key': 'bovada', 'title': 'Bovada', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Cleveland Guardians', 'price': 2.7}, {'name': 'Minnesota Twins', 'price': 1.44}]}]}, {'key': 'fanduel', 'title': 'FanDuel', 'last_update': '2022-09-18T18:57:37Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Cleveland Guardians', 'price': 3.05}, {'name': 'Minnesota Twins', 'price': 1.36}]}]}, {'key': 'circasports', 'title': 'Circa Sports', 'last_update': '2022-09-18T18:56:45Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Cleveland Guardians', 'price': 2.86}, {'name': 'Minnesota Twins', 'price': 1.45}]}]}, {'key': 'betmgm', 'title': 'BetMGM', 'last_update': '2022-09-18T18:57:39Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Cleveland Guardians', 'price': 2.8}, {'name': 'Minnesota Twins', 'price': 1.4}]}]}, {'key': 'sugarhouse', 'title': 'SugarHouse', 'last_update': '2022-09-18T18:57:39Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Cleveland Guardians', 'price': 3.05}, {'name': 'Minnesota Twins', 'price': 1.38}]}]}, {'key': 'barstool', 'title': 'Barstool Sportsbook', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Cleveland Guardians', 'price': 3.05}, {'name': 'Minnesota Twins', 'price': 1.38}]}]}, {'key': 'twinspires', 'title': 'TwinSpires', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Cleveland Guardians', 'price': 3.05}, {'name': 'Minnesota Twins', 'price': 1.38}]}]}, {'key': 'unibet', 'title': 'Unibet', 'last_update': '2022-09-18T18:57:37Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Cleveland Guardians', 'price': 3.05}, {'name': 'Minnesota Twins', 'price': 1.38}]}]}, {'key': 'betfair', 'title': 'Betfair', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Cleveland Guardians', 'price': 2.76}, {'name': 'Minnesota Twins', 'price': 1.47}]}, {'key': 'h2h_lay', 'outcomes': [{'name': 'Cleveland Guardians', 'price': 3.15}, {'name': 'Minnesota Twins', 'price': 1.57}]}]}, {'key': 'mybookieag', 'title': 'MyBookie.ag', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Cleveland Guardians', 'price': 2.67}, {'name': 'Minnesota Twins', 'price': 1.46}]}]}]}\n", "\n", "{'id': '7fbc39964eb2153b7ecb165bf10a303f', 'sport_key': 'baseball_mlb', 'sport_title': 'MLB', 'commence_time': '2022-09-18T17:40:00Z', 'home_team': 'New York Mets', 'away_team': 'Pittsburgh Pirates', 'bookmakers': [{'key': 'draftkings', 'title': 'DraftKings', 'last_update': '2022-09-18T18:57:37Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'New York Mets', 'price': 1.04}, {'name': 'Pittsburgh Pirates', 'price': 12.0}]}]}, {'key': 'foxbet', 'title': 'FOX Bet', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'New York Mets', 'price': 1.02}, {'name': 'Pittsburgh Pirates', 'price': 10.0}]}]}, {'key': 'fanduel', 'title': 'FanDuel', 'last_update': '2022-09-18T18:57:37Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'New York Mets', 'price': 1.02}, {'name': 'Pittsburgh Pirates', 'price': 24.0}]}]}, {'key': 'gtbets', 'title': 'GTbets', 'last_update': '2022-09-18T18:57:39Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'New York Mets', 'price': 1.05}, {'name': 'Pittsburgh Pirates', 'price': 9.09}]}]}, {'key': 'bovada', 'title': 'Bovada', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'New York Mets', 'price': 1.02}, {'name': 'Pittsburgh Pirates', 'price': 16.0}]}]}, {'key': 'betmgm', 'title': 'BetMGM', 'last_update': '2022-09-18T18:57:39Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'New York Mets', 'price': 1.01}, {'name': 'Pittsburgh Pirates', 'price': 23.0}]}]}, {'key': 'betfair', 'title': 'Betfair', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'New York Mets', 'price': 1.02}, {'name': 'Pittsburgh Pirates', 'price': 21.0}]}, {'key': 'h2h_lay', 'outcomes': [{'name': 'New York Mets', 'price': 1.05}, {'name': 'Pittsburgh Pirates', 'price': 55.0}]}]}, {'key': 'mybookieag', 'title': 'MyBookie.ag', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'New York Mets', 'price': 1.01}, {'name': 'Pittsburgh Pirates', 'price': 13.77}]}]}]}\n", "\n", "{'id': '5f5b11d2a4b9d45f517f24a36377847b', 'sport_key': 'baseball_mlb', 'sport_title': 'MLB', 'commence_time': '2022-09-18T17:40:22Z', 'home_team': 'Toronto Blue Jays', 'away_team': 'Baltimore Orioles', 'bookmakers': [{'key': 'draftkings', 'title': 'DraftKings', 'last_update': '2022-09-18T18:57:37Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Baltimore Orioles', 'price': 1.95}, {'name': 'Toronto Blue Jays', 'price': 1.8}]}]}, {'key': 'foxbet', 'title': 'FOX Bet', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Baltimore Orioles', 'price': 3.6}, {'name': 'Toronto Blue Jays', 'price': 1.25}]}]}, {'key': 'gtbets', 'title': 'GTbets', 'last_update': '2022-09-18T18:57:39Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Baltimore Orioles', 'price': 1.88}, {'name': 'Toronto Blue Jays', 'price': 1.88}]}]}, {'key': 'bovada', 'title': 'Bovada', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Baltimore Orioles', 'price': 1.95}, {'name': 'Toronto Blue Jays', 'price': 1.8}]}]}, {'key': 'fanduel', 'title': 'FanDuel', 'last_update': '2022-09-18T18:57:37Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Baltimore Orioles', 'price': 1.93}, {'name': 'Toronto Blue Jays', 'price': 1.85}]}]}, {'key': 'circasports', 'title': 'Circa Sports', 'last_update': '2022-09-18T18:52:03Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Baltimore Orioles', 'price': 3.4}, {'name': 'Toronto Blue Jays', 'price': 1.34}]}]}, {'key': 'betmgm', 'title': 'BetMGM', 'last_update': '2022-09-18T18:57:39Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Baltimore Orioles', 'price': 1.91}, {'name': 'Toronto Blue Jays', 'price': 1.87}]}]}, {'key': 'sugarhouse', 'title': 'SugarHouse', 'last_update': '2022-09-18T18:57:39Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Baltimore Orioles', 'price': 1.95}, {'name': 'Toronto Blue Jays', 'price': 1.83}]}]}, {'key': 'barstool', 'title': 'Barstool Sportsbook', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Baltimore Orioles', 'price': 1.95}, {'name': 'Toronto Blue Jays', 'price': 1.83}]}]}, {'key': 'twinspires', 'title': 'TwinSpires', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Baltimore Orioles', 'price': 1.95}, {'name': 'Toronto Blue Jays', 'price': 1.83}]}]}, {'key': 'unibet', 'title': 'Unibet', 'last_update': '2022-09-18T18:57:37Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Baltimore Orioles', 'price': 1.96}, {'name': 'Toronto Blue Jays', 'price': 1.84}]}]}, {'key': 'betfair', 'title': 'Betfair', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Baltimore Orioles', 'price': 1.94}, {'name': 'Toronto Blue Jays', 'price': 1.83}]}, {'key': 'h2h_lay', 'outcomes': [{'name': 'Baltimore Orioles', 'price': 2.22}, {'name': 'Toronto Blue Jays', 'price': 2.08}]}]}]}\n", "\n", "{'id': '566b143a5d0cd382e0afe8c609effc30', 'sport_key': 'soccer_norway_eliteserien', 'sport_title': 'Eliteserien - Norway', 'commence_time': '2022-09-18T18:01:11Z', 'home_team': 'Molde', 'away_team': 'Aalesund', 'bookmakers': [{'key': 'fanduel', 'title': 'FanDuel', 'last_update': '2022-09-18T18:57:57Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Aalesund', 'price': 23.0}, {'name': 'Molde', 'price': 1.1}, {'name': 'Draw', 'price': 7.5}]}]}, {'key': 'unibet', 'title': 'Unibet', 'last_update': '2022-09-18T18:57:57Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Aalesund', 'price': 29.0}, {'name': 'Molde', 'price': 1.11}, {'name': 'Draw', 'price': 8.5}]}]}, {'key': 'barstool', 'title': 'Barstool Sportsbook', 'last_update': '2022-09-18T18:57:57Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Aalesund', 'price': 29.0}, {'name': 'Molde', 'price': 1.11}, {'name': 'Draw', 'price': 8.5}]}]}, {'key': 'sugarhouse', 'title': 'SugarHouse', 'last_update': '2022-09-18T18:57:57Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Aalesund', 'price': 29.0}, {'name': 'Molde', 'price': 1.11}, {'name': 'Draw', 'price': 8.5}]}]}, {'key': 'twinspires', 'title': 'TwinSpires', 'last_update': '2022-09-18T18:57:58Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Aalesund', 'price': 29.0}, {'name': 'Molde', 'price': 1.11}, {'name': 'Draw', 'price': 8.5}]}]}, {'key': 'bovada', 'title': 'Bovada', 'last_update': '2022-09-18T18:57:58Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Aalesund', 'price': 25.0}, {'name': 'Molde', 'price': 1.12}, {'name': 'Draw', 'price': 7.0}]}]}, {'key': 'draftkings', 'title': 'DraftKings', 'last_update': '2022-09-18T18:57:56Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Aalesund', 'price': 21.0}, {'name': 'Molde', 'price': 1.12}, {'name': 'Draw', 'price': 8.5}]}]}, {'key': 'foxbet', 'title': 'FOX Bet', 'last_update': '2022-09-18T18:57:56Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Aalesund', 'price': 11.0}, {'name': 'Molde', 'price': 1.11}, {'name': 'Draw', 'price': 5.5}]}]}, {'key': 'betfair', 'title': 'Betfair', 'last_update': '2022-09-18T18:57:58Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Aalesund', 'price': 36.0}, {'name': 'Molde', 'price': 1.15}, {'name': 'Draw', 'price': 9.4}]}, {'key': 'h2h_lay', 'outcomes': [{'name': 'Aalesund', 'price': 40.0}, {'name': 'Molde', 'price': 1.16}, {'name': 'Draw', 'price': 9.6}]}]}]}\n", "\n", "{'id': '9e555a674dfd0b90f372e6f39de65c5b', 'sport_key': 'baseball_mlb', 'sport_title': 'MLB', 'commence_time': '2022-09-18T18:10:52Z', 'home_team': 'Milwaukee Brewers', 'away_team': 'New York Yankees', 'bookmakers': [{'key': 'fanduel', 'title': 'FanDuel', 'last_update': '2022-09-18T18:57:37Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Milwaukee Brewers', 'price': 1.47}, {'name': 'New York Yankees', 'price': 2.64}]}]}, {'key': 'bovada', 'title': 'Bovada', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Milwaukee Brewers', 'price': 1.24}, {'name': 'New York Yankees', 'price': 3.85}]}]}, {'key': 'circasports', 'title': 'Circa Sports', 'last_update': '2022-09-18T18:53:19Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Milwaukee Brewers', 'price': 1.32}, {'name': 'New York Yankees', 'price': 3.52}]}]}, {'key': 'gtbets', 'title': 'GTbets', 'last_update': '2022-09-18T18:57:39Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Milwaukee Brewers', 'price': 1.42}, {'name': 'New York Yankees', 'price': 2.82}]}]}, {'key': 'draftkings', 'title': 'DraftKings', 'last_update': '2022-09-18T18:57:37Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Milwaukee Brewers', 'price': 1.45}, {'name': 'New York Yankees', 'price': 2.8}]}]}, {'key': 'foxbet', 'title': 'FOX Bet', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Milwaukee Brewers', 'price': 1.28}, {'name': 'New York Yankees', 'price': 3.3}]}]}, {'key': 'betmgm', 'title': 'BetMGM', 'last_update': '2022-09-18T18:57:39Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Milwaukee Brewers', 'price': 1.44}, {'name': 'New York Yankees', 'price': 2.7}]}]}, {'key': 'sugarhouse', 'title': 'SugarHouse', 'last_update': '2022-09-18T18:57:39Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Milwaukee Brewers', 'price': 1.41}, {'name': 'New York Yankees', 'price': 2.9}]}]}, {'key': 'barstool', 'title': 'Barstool Sportsbook', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Milwaukee Brewers', 'price': 1.41}, {'name': 'New York Yankees', 'price': 2.9}]}]}, {'key': 'twinspires', 'title': 'TwinSpires', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Milwaukee Brewers', 'price': 1.41}, {'name': 'New York Yankees', 'price': 2.9}]}]}, {'key': 'unibet', 'title': 'Unibet', 'last_update': '2022-09-18T18:57:37Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Milwaukee Brewers', 'price': 1.41}, {'name': 'New York Yankees', 'price': 2.9}]}]}, {'key': 'betfair', 'title': 'Betfair', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Milwaukee Brewers', 'price': 1.32}, {'name': 'New York Yankees', 'price': 3.75}]}, {'key': 'h2h_lay', 'outcomes': [{'name': 'Milwaukee Brewers', 'price': 1.37}, {'name': 'New York Yankees', 'price': 4.4}]}]}]}\n", "\n", "{'id': '3707f2ccc8078f945962d76e58f1fc14', 'sport_key': 'baseball_mlb', 'sport_title': 'MLB', 'commence_time': '2022-09-18T18:10:55Z', 'home_team': 'Houston Astros', 'away_team': 'Oakland Athletics', 'bookmakers': [{'key': 'draftkings', 'title': 'DraftKings', 'last_update': '2022-09-18T18:57:37Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Houston Astros', 'price': 1.34}, {'name': 'Oakland Athletics', 'price': 3.3}]}]}, {'key': 'fanduel', 'title': 'FanDuel', 'last_update': '2022-09-18T18:57:37Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Houston Astros', 'price': 1.28}, {'name': 'Oakland Athletics', 'price': 3.5}]}]}, {'key': 'foxbet', 'title': 'FOX Bet', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Houston Astros', 'price': 1.28}, {'name': 'Oakland Athletics', 'price': 3.3}]}]}, {'key': 'gtbets', 'title': 'GTbets', 'last_update': '2022-09-18T18:57:39Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Houston Astros', 'price': 1.29}, {'name': 'Oakland Athletics', 'price': 3.48}]}]}, {'key': 'bovada', 'title': 'Bovada', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Houston Astros', 'price': 1.31}, {'name': 'Oakland Athletics', 'price': 3.3}]}]}, {'key': 'betmgm', 'title': 'BetMGM', 'last_update': '2022-09-18T18:57:39Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Houston Astros', 'price': 1.29}, {'name': 'Oakland Athletics', 'price': 3.4}]}]}, {'key': 'sugarhouse', 'title': 'SugarHouse', 'last_update': '2022-09-18T18:57:39Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Houston Astros', 'price': 1.28}, {'name': 'Oakland Athletics', 'price': 3.65}]}]}, {'key': 'barstool', 'title': 'Barstool Sportsbook', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Houston Astros', 'price': 1.28}, {'name': 'Oakland Athletics', 'price': 3.65}]}]}, {'key': 'twinspires', 'title': 'TwinSpires', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Houston Astros', 'price': 1.28}, {'name': 'Oakland Athletics', 'price': 3.65}]}]}, {'key': 'unibet', 'title': 'Unibet', 'last_update': '2022-09-18T18:57:37Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Houston Astros', 'price': 1.28}, {'name': 'Oakland Athletics', 'price': 3.65}]}]}, {'key': 'betfair', 'title': 'Betfair', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Houston Astros', 'price': 1.31}, {'name': 'Oakland Athletics', 'price': 3.55}]}, {'key': 'h2h_lay', 'outcomes': [{'name': 'Houston Astros', 'price': 1.38}, {'name': 'Oakland Athletics', 'price': 4.5}]}]}]}\n", "\n", "{'id': 'b3f08e2fd6e0704b7f90f01f73426f82', 'sport_key': 'baseball_mlb', 'sport_title': 'MLB', 'commence_time': '2022-09-18T18:16:28Z', 'home_team': 'St. Louis Cardinals', 'away_team': 'Cincinnati Reds', 'bookmakers': [{'key': 'fanduel', 'title': 'FanDuel', 'last_update': '2022-09-18T18:57:37Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Cincinnati Reds', 'price': 2.84}, {'name': 'St. Louis Cardinals', 'price': 1.42}]}]}, {'key': 'bovada', 'title': 'Bovada', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Cincinnati Reds', 'price': 2.9}, {'name': 'St. Louis Cardinals', 'price': 1.38}]}]}, {'key': 'circasports', 'title': 'Circa Sports', 'last_update': '2022-09-18T18:49:30Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Cincinnati Reds', 'price': 2.78}, {'name': 'St. Louis Cardinals', 'price': 1.47}]}]}, {'key': 'gtbets', 'title': 'GTbets', 'last_update': '2022-09-18T18:57:39Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Cincinnati Reds', 'price': 3.0}, {'name': 'St. Louis Cardinals', 'price': 1.38}]}]}, {'key': 'draftkings', 'title': 'DraftKings', 'last_update': '2022-09-18T18:57:37Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Cincinnati Reds', 'price': 3.0}, {'name': 'St. Louis Cardinals', 'price': 1.4}]}]}, {'key': 'foxbet', 'title': 'FOX Bet', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Cincinnati Reds', 'price': 2.7}, {'name': 'St. Louis Cardinals', 'price': 1.4}]}]}, {'key': 'betmgm', 'title': 'BetMGM', 'last_update': '2022-09-18T18:57:39Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Cincinnati Reds', 'price': 3.2}, {'name': 'St. Louis Cardinals', 'price': 1.33}]}]}, {'key': 'sugarhouse', 'title': 'SugarHouse', 'last_update': '2022-09-18T18:57:39Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Cincinnati Reds', 'price': 3.2}, {'name': 'St. Louis Cardinals', 'price': 1.34}]}]}, {'key': 'barstool', 'title': 'Barstool Sportsbook', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Cincinnati Reds', 'price': 3.2}, {'name': 'St. Louis Cardinals', 'price': 1.34}]}]}, {'key': 'twinspires', 'title': 'TwinSpires', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Cincinnati Reds', 'price': 3.2}, {'name': 'St. Louis Cardinals', 'price': 1.34}]}]}, {'key': 'unibet', 'title': 'Unibet', 'last_update': '2022-09-18T18:57:37Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Cincinnati Reds', 'price': 3.2}, {'name': 'St. Louis Cardinals', 'price': 1.34}]}]}, {'key': 'betfair', 'title': 'Betfair', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Cincinnati Reds', 'price': 2.84}, {'name': 'St. Louis Cardinals', 'price': 1.43}]}, {'key': 'h2h_lay', 'outcomes': [{'name': 'Cincinnati Reds', 'price': 3.35}, {'name': 'St. Louis Cardinals', 'price': 1.54}]}]}]}\n", "\n", "{'id': 'a04f55f500c941579b55cdff64075ffe', 'sport_key': 'baseball_mlb', 'sport_title': 'MLB', 'commence_time': '2022-09-18T18:20:39Z', 'home_team': 'Chicago Cubs', 'away_team': 'Colorado Rockies', 'bookmakers': [{'key': 'draftkings', 'title': 'DraftKings', 'last_update': '2022-09-18T18:57:37Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Chicago Cubs', 'price': 4.4}, {'name': 'Colorado Rockies', 'price': 1.22}]}]}, {'key': 'foxbet', 'title': 'FOX Bet', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Chicago Cubs', 'price': 4.0}, {'name': 'Colorado Rockies', 'price': 1.2}]}]}, {'key': 'fanduel', 'title': 'FanDuel', 'last_update': '2022-09-18T18:57:37Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Chicago Cubs', 'price': 4.1}, {'name': 'Colorado Rockies', 'price': 1.22}]}]}, {'key': 'bovada', 'title': 'Bovada', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Chicago Cubs', 'price': 4.05}, {'name': 'Colorado Rockies', 'price': 1.22}]}]}, {'key': 'circasports', 'title': 'Circa Sports', 'last_update': '2022-09-18T18:50:56Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Chicago Cubs', 'price': 4.46}, {'name': 'Colorado Rockies', 'price': 1.22}]}]}, {'key': 'gtbets', 'title': 'GTbets', 'last_update': '2022-09-18T18:57:39Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Chicago Cubs', 'price': 4.56}, {'name': 'Colorado Rockies', 'price': 1.19}]}]}, {'key': 'sugarhouse', 'title': 'SugarHouse', 'last_update': '2022-09-18T18:57:39Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Chicago Cubs', 'price': 4.0}, {'name': 'Colorado Rockies', 'price': 1.24}]}]}, {'key': 'barstool', 'title': 'Barstool Sportsbook', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Chicago Cubs', 'price': 4.0}, {'name': 'Colorado Rockies', 'price': 1.24}]}]}, {'key': 'twinspires', 'title': 'TwinSpires', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Chicago Cubs', 'price': 4.0}, {'name': 'Colorado Rockies', 'price': 1.24}]}]}, {'key': 'unibet', 'title': 'Unibet', 'last_update': '2022-09-18T18:57:37Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Chicago Cubs', 'price': 4.0}, {'name': 'Colorado Rockies', 'price': 1.24}]}]}, {'key': 'betfair', 'title': 'Betfair', 'last_update': '2022-09-18T18:57:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Chicago Cubs', 'price': 4.3}, {'name': 'Colorado Rockies', 'price': 1.22}]}, {'key': 'h2h_lay', 'outcomes': [{'name': 'Chicago Cubs', 'price': 5.8}, {'name': 'Colorado Rockies', 'price': 1.3}]}]}, {'key': 'betmgm', 'title': 'BetMGM', 'last_update': '2022-09-18T18:57:39Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Chicago Cubs', 'price': 4.1}, {'name': 'Colorado Rockies', 'price': 1.22}]}]}]}\n", "\n", "{'id': '8a57fe74d3ee9cdcde9ddd740eba720f', 'sport_key': 'soccer_italy_serie_a', 'sport_title': 'Serie A - Italy', 'commence_time': '2022-09-18T18:45:00Z', 'home_team': 'AC Milan', 'away_team': 'Napoli', 'bookmakers': [{'key': 'fanduel', 'title': 'FanDuel', 'last_update': '2022-09-18T18:57:27Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'AC Milan', 'price': 2.3}, {'name': 'Napoli', 'price': 3.3}, {'name': 'Draw', 'price': 3.0}]}]}, {'key': 'wynnbet', 'title': 'WynnBET', 'last_update': '2022-09-18T18:44:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'AC Milan', 'price': 2.3}, {'name': 'Napoli', 'price': 3.38}, {'name': 'Draw', 'price': 3.25}]}]}, {'key': 'draftkings', 'title': 'DraftKings', 'last_update': '2022-09-18T18:57:27Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'AC Milan', 'price': 2.2}, {'name': 'Napoli', 'price': 3.35}, {'name': 'Draw', 'price': 3.15}]}]}, {'key': 'bovada', 'title': 'Bovada', 'last_update': '2022-09-18T18:57:27Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'AC Milan', 'price': 2.26}, {'name': 'Napoli', 'price': 3.45}, {'name': 'Draw', 'price': 3.0}]}]}, {'key': 'mybookieag', 'title': 'MyBookie.ag', 'last_update': '2022-09-18T18:57:27Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'AC Milan', 'price': 2.27}, {'name': 'Napoli', 'price': 3.41}, {'name': 'Draw', 'price': 2.97}]}]}, {'key': 'williamhill_us', 'title': 'William Hill (US)', 'last_update': '2022-09-18T18:47:01Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'AC Milan', 'price': 2.35}, {'name': 'Napoli', 'price': 3.2}, {'name': 'Draw', 'price': 3.2}]}]}, {'key': 'foxbet', 'title': 'FOX Bet', 'last_update': '2022-09-18T18:57:27Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'AC Milan', 'price': 2.25}, {'name': 'Napoli', 'price': 3.3}, {'name': 'Draw', 'price': 3.15}]}]}, {'key': 'betfair', 'title': 'Betfair', 'last_update': '2022-09-18T18:57:28Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'AC Milan', 'price': 2.4}, {'name': 'Napoli', 'price': 3.65}, {'name': 'Draw', 'price': 3.15}]}, {'key': 'h2h_lay', 'outcomes': [{'name': 'AC Milan', 'price': 2.42}, {'name': 'Napoli', 'price': 3.7}, {'name': 'Draw', 'price': 3.2}]}]}, {'key': 'superbook', 'title': 'SuperBook', 'last_update': '2022-09-18T18:44:39Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'AC Milan', 'price': 2.3}, {'name': 'Napoli', 'price': 3.25}, {'name': 'Draw', 'price': 3.2}]}]}, {'key': 'barstool', 'title': 'Barstool Sportsbook', 'last_update': '2022-09-18T18:57:28Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'AC Milan', 'price': 2.28}, {'name': 'Napoli', 'price': 3.45}, {'name': 'Draw', 'price': 3.05}]}]}, {'key': 'unibet', 'title': 'Unibet', 'last_update': '2022-09-18T18:57:27Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'AC Milan', 'price': 2.28}, {'name': 'Napoli', 'price': 3.45}, {'name': 'Draw', 'price': 3.05}]}]}, {'key': 'twinspires', 'title': 'TwinSpires', 'last_update': '2022-09-18T18:57:28Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'AC Milan', 'price': 2.28}, {'name': 'Napoli', 'price': 3.45}, {'name': 'Draw', 'price': 3.05}]}]}, {'key': 'sugarhouse', 'title': 'SugarHouse', 'last_update': '2022-09-18T18:57:28Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'AC Milan', 'price': 2.28}, {'name': 'Napoli', 'price': 3.45}, {'name': 'Draw', 'price': 3.05}]}]}, {'key': 'intertops', 'title': 'Intertops', 'last_update': '2022-09-18T18:44:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'AC Milan', 'price': 2.3}, {'name': 'Napoli', 'price': 3.3}, {'name': 'Draw', 'price': 3.15}]}]}, {'key': 'gtbets', 'title': 'GTbets', 'last_update': '2022-09-18T18:45:48Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'AC Milan', 'price': 2.31}, {'name': 'Napoli', 'price': 3.2}, {'name': 'Draw', 'price': 3.18}]}]}, {'key': 'lowvig', 'title': 'LowVig.ag', 'last_update': '2022-09-18T18:44:40Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'AC Milan', 'price': 2.37}, {'name': 'Napoli', 'price': 3.3}, {'name': 'Draw', 'price': 3.22}]}]}, {'key': 'betonlineag', 'title': 'BetOnline.ag', 'last_update': '2022-09-18T18:45:48Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'AC Milan', 'price': 2.37}, {'name': 'Napoli', 'price': 3.3}, {'name': 'Draw', 'price': 3.22}]}]}, {'key': 'betus', 'title': 'BetUS', 'last_update': '2022-09-18T18:44:37Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'AC Milan', 'price': 2.25}, {'name': 'Napoli', 'price': 3.5}, {'name': 'Draw', 'price': 3.25}]}]}]}\n", "\n", "{'id': 'c6f751e51ad864201d5f583bc6802412', 'sport_key': 'soccer_france_ligue_one', 'sport_title': 'Ligue 1 - France', 'commence_time': '2022-09-18T18:45:00Z', 'home_team': 'Lyon', 'away_team': 'Paris Saint Germain', 'bookmakers': [{'key': 'wynnbet', 'title': 'WynnBET', 'last_update': '2022-09-18T18:44:22Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Lyon', 'price': 5.25}, {'name': 'Paris Saint Germain', 'price': 1.54}, {'name': 'Draw', 'price': 5.0}]}]}, {'key': 'fanduel', 'title': 'FanDuel', 'last_update': '2022-09-18T18:57:13Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Lyon', 'price': 11.0}, {'name': 'Paris Saint Germain', 'price': 1.22}, {'name': 'Draw', 'price': 6.5}]}]}, {'key': 'betfair', 'title': 'Betfair', 'last_update': '2022-09-18T18:57:14Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Lyon', 'price': 13.5}, {'name': 'Paris Saint Germain', 'price': 1.26}, {'name': 'Draw', 'price': 7.2}]}, {'key': 'h2h_lay', 'outcomes': [{'name': 'Lyon', 'price': 14.5}, {'name': 'Paris Saint Germain', 'price': 1.27}, {'name': 'Draw', 'price': 7.4}]}]}, {'key': 'draftkings', 'title': 'DraftKings', 'last_update': '2022-09-18T18:57:13Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Lyon', 'price': 9.5}, {'name': 'Paris Saint Germain', 'price': 1.24}, {'name': 'Draw', 'price': 6.5}]}]}, {'key': 'bovada', 'title': 'Bovada', 'last_update': '2022-09-18T18:57:13Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Lyon', 'price': 9.0}, {'name': 'Paris Saint Germain', 'price': 1.26}, {'name': 'Draw', 'price': 6.0}]}]}, {'key': 'mybookieag', 'title': 'MyBookie.ag', 'last_update': '2022-09-18T18:57:13Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Lyon', 'price': 5.1}, {'name': 'Paris Saint Germain', 'price': 1.53}, {'name': 'Draw', 'price': 5.0}]}]}, {'key': 'sugarhouse', 'title': 'SugarHouse', 'last_update': '2022-09-18T18:57:14Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Lyon', 'price': 9.5}, {'name': 'Paris Saint Germain', 'price': 1.24}, {'name': 'Draw', 'price': 6.4}]}]}, {'key': 'barstool', 'title': 'Barstool Sportsbook', 'last_update': '2022-09-18T18:57:14Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Lyon', 'price': 9.5}, {'name': 'Paris Saint Germain', 'price': 1.24}, {'name': 'Draw', 'price': 6.4}]}]}, {'key': 'twinspires', 'title': 'TwinSpires', 'last_update': '2022-09-18T18:57:13Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Lyon', 'price': 9.5}, {'name': 'Paris Saint Germain', 'price': 1.24}, {'name': 'Draw', 'price': 6.4}]}]}, {'key': 'unibet', 'title': 'Unibet', 'last_update': '2022-09-18T18:57:13Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Lyon', 'price': 9.5}, {'name': 'Paris Saint Germain', 'price': 1.24}, {'name': 'Draw', 'price': 6.4}]}]}, {'key': 'foxbet', 'title': 'FOX Bet', 'last_update': '2022-09-18T18:57:13Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Lyon', 'price': 4.8}, {'name': 'Paris Saint Germain', 'price': 1.5}, {'name': 'Draw', 'price': 4.6}]}]}, {'key': 'williamhill_us', 'title': 'William Hill (US)', 'last_update': '2022-09-18T18:45:32Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Lyon', 'price': 5.4}, {'name': 'Paris Saint Germain', 'price': 1.53}, {'name': 'Draw', 'price': 4.75}]}]}, {'key': 'superbook', 'title': 'SuperBook', 'last_update': '2022-09-18T18:44:23Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Lyon', 'price': 5.25}, {'name': 'Paris Saint Germain', 'price': 1.51}, {'name': 'Draw', 'price': 5.0}]}]}, {'key': 'intertops', 'title': 'Intertops', 'last_update': '2022-09-18T18:44:22Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Lyon', 'price': 5.0}, {'name': 'Paris Saint Germain', 'price': 1.53}, {'name': 'Draw', 'price': 5.0}]}]}, {'key': 'gtbets', 'title': 'GTbets', 'last_update': '2022-09-18T18:45:33Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Lyon', 'price': 5.2}, {'name': 'Paris Saint Germain', 'price': 1.49}, {'name': 'Draw', 'price': 5.15}]}]}, {'key': 'betus', 'title': 'BetUS', 'last_update': '2022-09-18T18:44:22Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Lyon', 'price': 5.3}, {'name': 'Paris Saint Germain', 'price': 1.5}, {'name': 'Draw', 'price': 5.2}]}]}]}\n", "\n", "{'id': '2d97074edd7f91177f632c65e27d0c0e', 'sport_key': 'soccer_spain_segunda_division', 'sport_title': 'La Liga 2 - Spain', 'commence_time': '2022-09-18T19:00:00Z', 'home_team': 'Albacete', 'away_team': 'SD Ponferradina', 'bookmakers': [{'key': 'wynnbet', 'title': 'WynnBET', 'last_update': '2022-09-18T18:57:42Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Albacete', 'price': 1.95}, {'name': 'SD Ponferradina', 'price': 3.9}, {'name': 'Draw', 'price': 3.5}]}]}, {'key': 'superbook', 'title': 'SuperBook', 'last_update': '2022-09-18T18:57:43Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Albacete', 'price': 1.94}, {'name': 'SD Ponferradina', 'price': 3.85}, {'name': 'Draw', 'price': 3.55}]}]}, {'key': 'williamhill_us', 'title': 'William Hill (US)', 'last_update': '2022-09-18T18:57:42Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Albacete', 'price': 1.91}, {'name': 'SD Ponferradina', 'price': 3.7}, {'name': 'Draw', 'price': 3.25}]}]}, {'key': 'fanduel', 'title': 'FanDuel', 'last_update': '2022-09-18T18:57:42Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Albacete', 'price': 1.87}, {'name': 'SD Ponferradina', 'price': 4.0}, {'name': 'Draw', 'price': 3.3}]}]}, {'key': 'foxbet', 'title': 'FOX Bet', 'last_update': '2022-09-18T18:57:42Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Albacete', 'price': 1.95}, {'name': 'SD Ponferradina', 'price': 3.7}, {'name': 'Draw', 'price': 3.25}]}]}, {'key': 'draftkings', 'title': 'DraftKings', 'last_update': '2022-09-18T18:57:42Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Albacete', 'price': 1.95}, {'name': 'SD Ponferradina', 'price': 3.9}, {'name': 'Draw', 'price': 3.6}]}]}, {'key': 'twinspires', 'title': 'TwinSpires', 'last_update': '2022-09-18T18:57:43Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Albacete', 'price': 1.96}, {'name': 'SD Ponferradina', 'price': 3.7}, {'name': 'Draw', 'price': 3.25}]}]}, {'key': 'unibet', 'title': 'Unibet', 'last_update': '2022-09-18T18:57:42Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Albacete', 'price': 1.95}, {'name': 'SD Ponferradina', 'price': 3.7}, {'name': 'Draw', 'price': 3.2}]}]}, {'key': 'barstool', 'title': 'Barstool Sportsbook', 'last_update': '2022-09-18T18:57:43Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Albacete', 'price': 1.96}, {'name': 'SD Ponferradina', 'price': 3.7}, {'name': 'Draw', 'price': 3.25}]}]}, {'key': 'betfair', 'title': 'Betfair', 'last_update': '2022-09-18T18:57:43Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Albacete', 'price': 1.99}, {'name': 'SD Ponferradina', 'price': 4.4}, {'name': 'Draw', 'price': 3.6}]}, {'key': 'h2h_lay', 'outcomes': [{'name': 'Albacete', 'price': 2.02}, {'name': 'SD Ponferradina', 'price': 4.5}, {'name': 'Draw', 'price': 3.7}]}]}, {'key': 'betonlineag', 'title': 'BetOnline.ag', 'last_update': '2022-09-18T18:57:42Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Albacete', 'price': 1.91}, {'name': 'SD Ponferradina', 'price': 3.5}, {'name': 'Draw', 'price': 3.5}]}]}]}\n", "\n", "{'id': '7db6d9c695b2f56ef6fa82df26984419', 'sport_key': 'soccer_belgium_first_div', 'sport_title': 'Belgium First Div', 'commence_time': '2022-09-18T19:00:00Z', 'home_team': 'Anderlecht', 'away_team': 'KV Kortrijk', 'bookmakers': [{'key': 'unibet', 'title': 'Unibet', 'last_update': '2022-09-18T18:57:05Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Anderlecht', 'price': 1.29}, {'name': 'KV Kortrijk', 'price': 9.0}, {'name': 'Draw', 'price': 5.25}]}]}, {'key': 'betrivers', 'title': 'BetRivers', 'last_update': '2022-09-18T18:46:37Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Anderlecht', 'price': 1.3}, {'name': 'KV Kortrijk', 'price': 9.0}, {'name': 'Draw', 'price': 5.3}]}]}, {'key': 'barstool', 'title': 'Barstool Sportsbook', 'last_update': '2022-09-18T18:57:05Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Anderlecht', 'price': 1.3}, {'name': 'KV Kortrijk', 'price': 9.0}, {'name': 'Draw', 'price': 5.3}]}]}, {'key': 'twinspires', 'title': 'TwinSpires', 'last_update': '2022-09-18T18:57:06Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Anderlecht', 'price': 1.3}, {'name': 'KV Kortrijk', 'price': 9.0}, {'name': 'Draw', 'price': 5.3}]}]}, {'key': 'wynnbet', 'title': 'WynnBET', 'last_update': '2022-09-18T18:57:05Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Anderlecht', 'price': 1.33}, {'name': 'KV Kortrijk', 'price': 9.0}, {'name': 'Draw', 'price': 5.35}]}]}, {'key': 'williamhill_us', 'title': 'William Hill (US)', 'last_update': '2022-09-18T18:57:04Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Anderlecht', 'price': 1.27}, {'name': 'KV Kortrijk', 'price': 8.0}, {'name': 'Draw', 'price': 4.7}]}]}, {'key': 'fanduel', 'title': 'FanDuel', 'last_update': '2022-09-18T18:57:04Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Anderlecht', 'price': 1.27}, {'name': 'KV Kortrijk', 'price': 8.5}, {'name': 'Draw', 'price': 5.3}]}]}, {'key': 'betfair', 'title': 'Betfair', 'last_update': '2022-09-18T18:57:06Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Anderlecht', 'price': 1.35}, {'name': 'KV Kortrijk', 'price': 10.0}, {'name': 'Draw', 'price': 5.9}]}, {'key': 'h2h_lay', 'outcomes': [{'name': 'Anderlecht', 'price': 1.36}, {'name': 'KV Kortrijk', 'price': 11.0}, {'name': 'Draw', 'price': 6.2}]}]}, {'key': 'intertops', 'title': 'Intertops', 'last_update': '2022-09-18T18:57:05Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Anderlecht', 'price': 1.33}, {'name': 'KV Kortrijk', 'price': 8.5}, {'name': 'Draw', 'price': 5.0}]}]}, {'key': 'betus', 'title': 'BetUS', 'last_update': '2022-09-18T18:56:12Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Anderlecht', 'price': 1.34}, {'name': 'KV Kortrijk', 'price': 8.75}, {'name': 'Draw', 'price': 5.25}]}]}, {'key': 'draftkings', 'title': 'DraftKings', 'last_update': '2022-09-18T18:57:04Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Anderlecht', 'price': 1.34}, {'name': 'KV Kortrijk', 'price': 8.5}, {'name': 'Draw', 'price': 5.5}]}]}]}\n", "\n", "{'id': 'c68da4c50573ae70ee81c363150cec84', 'sport_key': 'soccer_spain_la_liga', 'sport_title': 'La Liga - Spain', 'commence_time': '2022-09-18T19:00:00Z', 'home_team': 'Atlético Madrid', 'away_team': 'Real Madrid', 'bookmakers': [{'key': 'fanduel', 'title': 'FanDuel', 'last_update': '2022-09-18T18:57:23Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Atlético Madrid', 'price': 3.0}, {'name': 'Real Madrid', 'price': 2.4}, {'name': 'Draw', 'price': 3.1}]}]}, {'key': 'draftkings', 'title': 'DraftKings', 'last_update': '2022-09-18T18:57:24Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Atlético Madrid', 'price': 3.05}, {'name': 'Real Madrid', 'price': 2.35}, {'name': 'Draw', 'price': 3.1}]}]}, {'key': 'bovada', 'title': 'Bovada', 'last_update': '2022-09-18T18:57:24Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Atlético Madrid', 'price': 3.1}, {'name': 'Real Madrid', 'price': 2.35}, {'name': 'Draw', 'price': 3.3}]}]}, {'key': 'mybookieag', 'title': 'MyBookie.ag', 'last_update': '2022-09-18T18:57:24Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Atlético Madrid', 'price': 3.1}, {'name': 'Real Madrid', 'price': 2.43}, {'name': 'Draw', 'price': 3.28}]}]}, {'key': 'wynnbet', 'title': 'WynnBET', 'last_update': '2022-09-18T18:57:24Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Atlético Madrid', 'price': 3.15}, {'name': 'Real Madrid', 'price': 2.4}, {'name': 'Draw', 'price': 3.25}]}]}, {'key': 'williamhill_us', 'title': 'William Hill (US)', 'last_update': '2022-09-18T18:57:23Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Atlético Madrid', 'price': 3.2}, {'name': 'Real Madrid', 'price': 2.35}, {'name': 'Draw', 'price': 3.2}]}]}, {'key': 'foxbet', 'title': 'FOX Bet', 'last_update': '2022-09-18T18:57:23Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Atlético Madrid', 'price': 3.1}, {'name': 'Real Madrid', 'price': 2.4}, {'name': 'Draw', 'price': 3.1}]}]}, {'key': 'betrivers', 'title': 'BetRivers', 'last_update': '2022-09-18T18:45:45Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Atlético Madrid', 'price': 3.15}, {'name': 'Real Madrid', 'price': 2.43}, {'name': 'Draw', 'price': 3.1}]}]}, {'key': 'twinspires', 'title': 'TwinSpires', 'last_update': '2022-09-18T18:57:25Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Atlético Madrid', 'price': 3.15}, {'name': 'Real Madrid', 'price': 2.43}, {'name': 'Draw', 'price': 3.1}]}]}, {'key': 'sugarhouse', 'title': 'SugarHouse', 'last_update': '2022-09-18T18:57:24Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Atlético Madrid', 'price': 3.2}, {'name': 'Real Madrid', 'price': 2.48}, {'name': 'Draw', 'price': 3.15}]}]}, {'key': 'barstool', 'title': 'Barstool Sportsbook', 'last_update': '2022-09-18T18:57:24Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Atlético Madrid', 'price': 3.15}, {'name': 'Real Madrid', 'price': 2.43}, {'name': 'Draw', 'price': 3.1}]}]}, {'key': 'unibet', 'title': 'Unibet', 'last_update': '2022-09-18T18:57:23Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Atlético Madrid', 'price': 3.15}, {'name': 'Real Madrid', 'price': 2.43}, {'name': 'Draw', 'price': 3.1}]}]}, {'key': 'betfair', 'title': 'Betfair', 'last_update': '2022-09-18T18:57:24Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Atlético Madrid', 'price': 3.25}, {'name': 'Real Madrid', 'price': 2.52}, {'name': 'Draw', 'price': 3.3}]}, {'key': 'h2h_lay', 'outcomes': [{'name': 'Atlético Madrid', 'price': 3.3}, {'name': 'Real Madrid', 'price': 2.54}, {'name': 'Draw', 'price': 3.35}]}]}, {'key': 'superbook', 'title': 'SuperBook', 'last_update': '2022-09-18T18:57:24Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Atlético Madrid', 'price': 3.05}, {'name': 'Real Madrid', 'price': 2.4}, {'name': 'Draw', 'price': 3.25}]}]}, {'key': 'intertops', 'title': 'Intertops', 'last_update': '2022-09-18T18:57:24Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Atlético Madrid', 'price': 3.05}, {'name': 'Real Madrid', 'price': 2.45}, {'name': 'Draw', 'price': 3.15}]}]}, {'key': 'betus', 'title': 'BetUS', 'last_update': '2022-09-18T18:57:24Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Atlético Madrid', 'price': 3.2}, {'name': 'Real Madrid', 'price': 2.35}, {'name': 'Draw', 'price': 3.25}]}]}, {'key': 'lowvig', 'title': 'LowVig.ag', 'last_update': '2022-09-18T18:57:25Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Atlético Madrid', 'price': 3.25}, {'name': 'Real Madrid', 'price': 2.38}, {'name': 'Draw', 'price': 3.25}]}]}, {'key': 'betonlineag', 'title': 'BetOnline.ag', 'last_update': '2022-09-18T18:57:23Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Atlético Madrid', 'price': 3.25}, {'name': 'Real Madrid', 'price': 2.38}, {'name': 'Draw', 'price': 3.25}]}]}]}\n", "\n", "{'id': '967f0689e4cc2973de598b152be67016', 'sport_key': 'soccer_brazil_campeonato', 'sport_title': 'Brazil Série A', 'commence_time': '2022-09-18T19:00:00Z', 'home_team': 'Ceará', 'away_team': 'Sao Paulo', 'bookmakers': [{'key': 'wynnbet', 'title': 'WynnBET', 'last_update': '2022-09-18T18:57:20Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Ceará', 'price': 2.55}, {'name': 'Sao Paulo', 'price': 3.0}, {'name': 'Draw', 'price': 3.05}]}]}, {'key': 'superbook', 'title': 'SuperBook', 'last_update': '2022-09-18T18:57:21Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Ceará', 'price': 2.65}, {'name': 'Sao Paulo', 'price': 2.9}, {'name': 'Draw', 'price': 3.05}]}]}, {'key': 'williamhill_us', 'title': 'William Hill (US)', 'last_update': '2022-09-18T18:57:19Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Ceará', 'price': 2.45}, {'name': 'Sao Paulo', 'price': 2.9}, {'name': 'Draw', 'price': 2.9}]}]}, {'key': 'fanduel', 'title': 'FanDuel', 'last_update': '2022-09-18T18:57:19Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Ceará', 'price': 2.55}, {'name': 'Sao Paulo', 'price': 3.1}, {'name': 'Draw', 'price': 2.95}]}]}, {'key': 'mybookieag', 'title': 'MyBookie.ag', 'last_update': '2022-09-18T18:57:19Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Ceará', 'price': 2.66}, {'name': 'Sao Paulo', 'price': 2.94}, {'name': 'Draw', 'price': 3.08}]}]}, {'key': 'pointsbetus', 'title': 'PointsBet (US)', 'last_update': '2022-09-18T18:57:19Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Ceará', 'price': 2.5}, {'name': 'Sao Paulo', 'price': 2.95}, {'name': 'Draw', 'price': 3.0}]}]}, {'key': 'betfair', 'title': 'Betfair', 'last_update': '2022-09-18T18:57:20Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Ceará', 'price': 2.68}, {'name': 'Sao Paulo', 'price': 3.2}, {'name': 'Draw', 'price': 3.1}]}, {'key': 'h2h_lay', 'outcomes': [{'name': 'Ceará', 'price': 2.74}, {'name': 'Sao Paulo', 'price': 3.25}, {'name': 'Draw', 'price': 3.15}]}]}, {'key': 'foxbet', 'title': 'FOX Bet', 'last_update': '2022-09-18T18:57:19Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Ceará', 'price': 2.5}, {'name': 'Sao Paulo', 'price': 2.9}, {'name': 'Draw', 'price': 2.95}]}]}, {'key': 'unibet', 'title': 'Unibet', 'last_update': '2022-09-18T18:57:19Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Ceará', 'price': 2.43}, {'name': 'Sao Paulo', 'price': 3.05}, {'name': 'Draw', 'price': 2.95}]}]}, {'key': 'betrivers', 'title': 'BetRivers', 'last_update': '2022-09-18T18:49:06Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Ceará', 'price': 2.43}, {'name': 'Sao Paulo', 'price': 3.05}, {'name': 'Draw', 'price': 2.95}]}]}, {'key': 'barstool', 'title': 'Barstool Sportsbook', 'last_update': '2022-09-18T18:57:20Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Ceará', 'price': 2.43}, {'name': 'Sao Paulo', 'price': 3.05}, {'name': 'Draw', 'price': 2.95}]}]}, {'key': 'twinspires', 'title': 'TwinSpires', 'last_update': '2022-09-18T18:57:20Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Ceará', 'price': 2.43}, {'name': 'Sao Paulo', 'price': 3.05}, {'name': 'Draw', 'price': 2.95}]}]}, {'key': 'sugarhouse', 'title': 'SugarHouse', 'last_update': '2022-09-18T18:57:20Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Ceará', 'price': 2.43}, {'name': 'Sao Paulo', 'price': 3.05}, {'name': 'Draw', 'price': 2.95}]}]}, {'key': 'gtbets', 'title': 'GTbets', 'last_update': '2022-09-18T18:57:20Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Ceará', 'price': 2.52}, {'name': 'Sao Paulo', 'price': 2.91}, {'name': 'Draw', 'price': 3.14}]}]}, {'key': 'intertops', 'title': 'Intertops', 'last_update': '2022-09-18T18:57:20Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Ceará', 'price': 2.6}, {'name': 'Sao Paulo', 'price': 2.95}, {'name': 'Draw', 'price': 2.9}]}]}, {'key': 'draftkings', 'title': 'DraftKings', 'last_update': '2022-09-18T18:57:19Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Ceará', 'price': 2.65}, {'name': 'Sao Paulo', 'price': 2.9}, {'name': 'Draw', 'price': 3.0}]}]}, {'key': 'betus', 'title': 'BetUS', 'last_update': '2022-09-18T18:57:20Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Ceará', 'price': 2.5}, {'name': 'Sao Paulo', 'price': 3.1}, {'name': 'Draw', 'price': 3.0}]}]}, {'key': 'betonlineag', 'title': 'BetOnline.ag', 'last_update': '2022-09-18T18:57:19Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Ceará', 'price': 2.69}, {'name': 'Sao Paulo', 'price': 2.9}, {'name': 'Draw', 'price': 3.0}]}]}]}\n", "\n", "{'id': '043fa6445ae36a6cfc7405967d758142', 'sport_key': 'soccer_brazil_campeonato', 'sport_title': 'Brazil Série A', 'commence_time': '2022-09-18T19:00:00Z', 'home_team': 'Flamengo', 'away_team': 'Fluminense', 'bookmakers': [{'key': 'superbook', 'title': 'SuperBook', 'last_update': '2022-09-18T18:57:21Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Flamengo', 'price': 1.69}, {'name': 'Fluminense', 'price': 5.25}, {'name': 'Draw', 'price': 3.7}]}]}, {'key': 'williamhill_us', 'title': 'William Hill (US)', 'last_update': '2022-09-18T18:57:19Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Flamengo', 'price': 1.62}, {'name': 'Fluminense', 'price': 5.0}, {'name': 'Draw', 'price': 3.5}]}]}, {'key': 'fanduel', 'title': 'FanDuel', 'last_update': '2022-09-18T18:57:19Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Flamengo', 'price': 1.61}, {'name': 'Fluminense', 'price': 5.6}, {'name': 'Draw', 'price': 3.7}]}]}, {'key': 'wynnbet', 'title': 'WynnBET', 'last_update': '2022-09-18T18:57:20Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Flamengo', 'price': 1.69}, {'name': 'Fluminense', 'price': 5.35}, {'name': 'Draw', 'price': 3.7}]}]}, {'key': 'mybookieag', 'title': 'MyBookie.ag', 'last_update': '2022-09-18T18:57:19Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Flamengo', 'price': 1.71}, {'name': 'Fluminense', 'price': 5.3}, {'name': 'Draw', 'price': 3.7}]}]}, {'key': 'pointsbetus', 'title': 'PointsBet (US)', 'last_update': '2022-09-18T18:57:19Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Flamengo', 'price': 1.67}, {'name': 'Fluminense', 'price': 5.25}, {'name': 'Draw', 'price': 3.6}]}]}, {'key': 'foxbet', 'title': 'FOX Bet', 'last_update': '2022-09-18T18:57:19Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Flamengo', 'price': 1.67}, {'name': 'Fluminense', 'price': 5.0}, {'name': 'Draw', 'price': 3.5}]}]}, {'key': 'betfair', 'title': 'Betfair', 'last_update': '2022-09-18T18:57:20Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Flamengo', 'price': 1.71}, {'name': 'Fluminense', 'price': 6.0}, {'name': 'Draw', 'price': 3.95}]}, {'key': 'h2h_lay', 'outcomes': [{'name': 'Flamengo', 'price': 1.72}, {'name': 'Fluminense', 'price': 6.2}, {'name': 'Draw', 'price': 4.0}]}]}, {'key': 'gtbets', 'title': 'GTbets', 'last_update': '2022-09-18T18:57:20Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Flamengo', 'price': 1.67}, {'name': 'Fluminense', 'price': 5.2}, {'name': 'Draw', 'price': 3.75}]}]}, {'key': 'unibet', 'title': 'Unibet', 'last_update': '2022-09-18T18:57:19Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Flamengo', 'price': 1.64}, {'name': 'Fluminense', 'price': 5.1}, {'name': 'Draw', 'price': 3.65}]}]}, {'key': 'betrivers', 'title': 'BetRivers', 'last_update': '2022-09-18T18:50:35Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Flamengo', 'price': 1.64}, {'name': 'Fluminense', 'price': 5.1}, {'name': 'Draw', 'price': 3.65}]}]}, {'key': 'barstool', 'title': 'Barstool Sportsbook', 'last_update': '2022-09-18T18:57:20Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Flamengo', 'price': 1.64}, {'name': 'Fluminense', 'price': 5.1}, {'name': 'Draw', 'price': 3.65}]}]}, {'key': 'twinspires', 'title': 'TwinSpires', 'last_update': '2022-09-18T18:57:20Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Flamengo', 'price': 1.64}, {'name': 'Fluminense', 'price': 5.1}, {'name': 'Draw', 'price': 3.65}]}]}, {'key': 'sugarhouse', 'title': 'SugarHouse', 'last_update': '2022-09-18T18:57:20Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Flamengo', 'price': 1.64}, {'name': 'Fluminense', 'price': 5.1}, {'name': 'Draw', 'price': 3.65}]}]}, {'key': 'intertops', 'title': 'Intertops', 'last_update': '2022-09-18T18:57:20Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Flamengo', 'price': 1.65}, {'name': 'Fluminense', 'price': 5.25}, {'name': 'Draw', 'price': 3.6}]}]}, {'key': 'draftkings', 'title': 'DraftKings', 'last_update': '2022-09-18T18:57:19Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Flamengo', 'price': 1.67}, {'name': 'Fluminense', 'price': 5.5}, {'name': 'Draw', 'price': 3.7}]}]}, {'key': 'betus', 'title': 'BetUS', 'last_update': '2022-09-18T18:57:20Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Flamengo', 'price': 1.69}, {'name': 'Fluminense', 'price': 5.25}, {'name': 'Draw', 'price': 3.65}]}]}, {'key': 'betonlineag', 'title': 'BetOnline.ag', 'last_update': '2022-09-18T18:57:19Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Flamengo', 'price': 1.69}, {'name': 'Fluminense', 'price': 5.5}, {'name': 'Draw', 'price': 3.62}]}]}]}\n", "\n", "{'id': '0fcafe7f4a624a84c7e7b8d8b3d78d0c', 'sport_key': 'soccer_portugal_primeira_liga', 'sport_title': 'Primeira Liga - Portugal', 'commence_time': '2022-09-18T19:30:00Z', 'home_team': 'Braga', 'away_team': 'Vizela', 'bookmakers': [{'key': 'bovada', 'title': 'Bovada', 'last_update': '2022-09-18T18:58:05Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Braga', 'price': 1.41}, {'name': 'Vizela', 'price': 6.75}, {'name': 'Draw', 'price': 4.7}]}]}, {'key': 'mybookieag', 'title': 'MyBookie.ag', 'last_update': '2022-09-18T18:58:04Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Braga', 'price': 1.4}, {'name': 'Vizela', 'price': 7.0}, {'name': 'Draw', 'price': 4.9}]}]}, {'key': 'wynnbet', 'title': 'WynnBET', 'last_update': '2022-09-18T18:58:05Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Braga', 'price': 1.39}, {'name': 'Vizela', 'price': 7.5}, {'name': 'Draw', 'price': 5.0}]}]}, {'key': 'williamhill_us', 'title': 'William Hill (US)', 'last_update': '2022-09-18T18:58:04Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Braga', 'price': 1.4}, {'name': 'Vizela', 'price': 8.0}, {'name': 'Draw', 'price': 4.7}]}]}, {'key': 'intertops', 'title': 'Intertops', 'last_update': '2022-09-18T18:58:05Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Braga', 'price': 1.36}, {'name': 'Vizela', 'price': 7.0}, {'name': 'Draw', 'price': 5.0}]}]}, {'key': 'barstool', 'title': 'Barstool Sportsbook', 'last_update': '2022-09-18T18:58:05Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Braga', 'price': 1.33}, {'name': 'Vizela', 'price': 8.0}, {'name': 'Draw', 'price': 5.0}]}]}, {'key': 'betrivers', 'title': 'BetRivers', 'last_update': '2022-09-18T18:58:04Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Braga', 'price': 1.33}, {'name': 'Vizela', 'price': 8.0}, {'name': 'Draw', 'price': 5.0}]}]}, {'key': 'twinspires', 'title': 'TwinSpires', 'last_update': '2022-09-18T18:58:05Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Braga', 'price': 1.33}, {'name': 'Vizela', 'price': 8.0}, {'name': 'Draw', 'price': 5.0}]}]}, {'key': 'unibet', 'title': 'Unibet', 'last_update': '2022-09-18T18:58:04Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Braga', 'price': 1.33}, {'name': 'Vizela', 'price': 8.0}, {'name': 'Draw', 'price': 5.0}]}]}, {'key': 'gtbets', 'title': 'GTbets', 'last_update': '2022-09-18T18:58:05Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Braga', 'price': 1.38}, {'name': 'Vizela', 'price': 7.5}, {'name': 'Draw', 'price': 4.95}]}]}, {'key': 'betfair', 'title': 'Betfair', 'last_update': '2022-09-18T18:58:05Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Braga', 'price': 1.44}, {'name': 'Vizela', 'price': 8.0}, {'name': 'Draw', 'price': 5.3}]}, {'key': 'h2h_lay', 'outcomes': [{'name': 'Braga', 'price': 1.46}, {'name': 'Vizela', 'price': 8.2}, {'name': 'Draw', 'price': 5.4}]}]}, {'key': 'lowvig', 'title': 'LowVig.ag', 'last_update': '2022-09-18T18:57:01Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Braga', 'price': 1.37}, {'name': 'Vizela', 'price': 6.7}, {'name': 'Draw', 'price': 4.9}]}]}, {'key': 'betonlineag', 'title': 'BetOnline.ag', 'last_update': '2022-09-18T18:58:04Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Braga', 'price': 1.37}, {'name': 'Vizela', 'price': 6.7}, {'name': 'Draw', 'price': 4.9}]}]}, {'key': 'betus', 'title': 'BetUS', 'last_update': '2022-09-18T18:58:05Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Braga', 'price': 1.36}, {'name': 'Vizela', 'price': 8.5}, {'name': 'Draw', 'price': 5.25}]}]}, {'key': 'foxbet', 'title': 'FOX Bet', 'last_update': '2022-09-18T18:58:04Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Braga', 'price': 1.4}, {'name': 'Vizela', 'price': 7.5}, {'name': 'Draw', 'price': 4.75}]}]}, {'key': 'draftkings', 'title': 'DraftKings', 'last_update': '2022-09-18T18:58:04Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Braga', 'price': 1.38}, {'name': 'Vizela', 'price': 8.0}, {'name': 'Draw', 'price': 5.0}]}]}]}\n", "\n", "{'id': '65c9ec2d290f7662510a560051014739', 'sport_key': 'basketball_wnba', 'sport_title': 'WNBA', 'commence_time': '2022-09-18T20:00:00Z', 'home_team': 'Connecticut Sun', 'away_team': 'Las Vegas Aces', 'bookmakers': [{'key': 'fanduel', 'title': 'FanDuel', 'last_update': '2022-09-18T18:57:47Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Connecticut Sun', 'price': 2.02}, {'name': 'Las Vegas Aces', 'price': 1.81}]}]}, {'key': 'gtbets', 'title': 'GTbets', 'last_update': '2022-09-18T18:56:50Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Connecticut Sun', 'price': 2.0}, {'name': 'Las Vegas Aces', 'price': 1.83}]}]}, {'key': 'mybookieag', 'title': 'MyBookie.ag', 'last_update': '2022-09-18T18:57:50Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Connecticut Sun', 'price': 2.04}, {'name': 'Las Vegas Aces', 'price': 1.78}]}]}, {'key': 'foxbet', 'title': 'FOX Bet', 'last_update': '2022-09-18T18:57:48Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Connecticut Sun', 'price': 2.0}, {'name': 'Las Vegas Aces', 'price': 1.8}]}]}, {'key': 'williamhill_us', 'title': 'William Hill (US)', 'last_update': '2022-09-18T18:57:48Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Connecticut Sun', 'price': 2.05}, {'name': 'Las Vegas Aces', 'price': 1.8}]}]}, {'key': 'circasports', 'title': 'Circa Sports', 'last_update': '2022-09-18T18:57:49Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Connecticut Sun', 'price': 2.08}, {'name': 'Las Vegas Aces', 'price': 1.79}]}]}, {'key': 'betmgm', 'title': 'BetMGM', 'last_update': '2022-09-18T18:57:48Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Connecticut Sun', 'price': 2.05}, {'name': 'Las Vegas Aces', 'price': 1.8}]}]}, {'key': 'bovada', 'title': 'Bovada', 'last_update': '2022-09-18T18:57:48Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Connecticut Sun', 'price': 2.05}, {'name': 'Las Vegas Aces', 'price': 1.8}]}]}, {'key': 'lowvig', 'title': 'LowVig.ag', 'last_update': '2022-09-18T18:56:52Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Connecticut Sun', 'price': 2.01}, {'name': 'Las Vegas Aces', 'price': 1.83}]}]}, {'key': 'sugarhouse', 'title': 'SugarHouse', 'last_update': '2022-09-18T18:57:48Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Connecticut Sun', 'price': 1.96}, {'name': 'Las Vegas Aces', 'price': 1.85}]}]}, {'key': 'betrivers', 'title': 'BetRivers', 'last_update': '2022-09-18T18:57:48Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Connecticut Sun', 'price': 1.96}, {'name': 'Las Vegas Aces', 'price': 1.85}]}]}, {'key': 'barstool', 'title': 'Barstool Sportsbook', 'last_update': '2022-09-18T18:57:49Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Connecticut Sun', 'price': 1.96}, {'name': 'Las Vegas Aces', 'price': 1.85}]}]}, {'key': 'twinspires', 'title': 'TwinSpires', 'last_update': '2022-09-18T18:57:49Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Connecticut Sun', 'price': 1.96}, {'name': 'Las Vegas Aces', 'price': 1.85}]}]}, {'key': 'unibet', 'title': 'Unibet', 'last_update': '2022-09-18T18:56:51Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Connecticut Sun', 'price': 1.97}, {'name': 'Las Vegas Aces', 'price': 1.85}]}]}, {'key': 'pointsbetus', 'title': 'PointsBet (US)', 'last_update': '2022-09-18T18:57:47Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Connecticut Sun', 'price': 2.0}, {'name': 'Las Vegas Aces', 'price': 1.83}]}]}]}\n", "\n", "{'id': 'b578ccb3df9e461e47400cd3178e4c60', 'sport_key': 'americanfootball_nfl', 'sport_title': 'NFL', 'commence_time': '2022-09-18T20:05:00Z', 'home_team': 'Los Angeles Rams', 'away_team': 'Atlanta Falcons', 'bookmakers': [{'key': 'unibet', 'title': 'Unibet', 'last_update': '2022-09-18T18:57:31Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Atlanta Falcons', 'price': 4.75}, {'name': 'Los Angeles Rams', 'price': 1.22}]}]}, {'key': 'draftkings', 'title': 'DraftKings', 'last_update': '2022-09-18T18:57:31Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Atlanta Falcons', 'price': 4.6}, {'name': 'Los Angeles Rams', 'price': 1.22}]}]}, {'key': 'williamhill_us', 'title': 'William Hill (US)', 'last_update': '2022-09-18T18:57:30Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Atlanta Falcons', 'price': 5.0}, {'name': 'Los Angeles Rams', 'price': 1.18}]}]}, {'key': 'betrivers', 'title': 'BetRivers', 'last_update': '2022-09-18T18:57:31Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Atlanta Falcons', 'price': 4.75}, {'name': 'Los Angeles Rams', 'price': 1.22}]}]}, {'key': 'foxbet', 'title': 'FOX Bet', 'last_update': '2022-09-18T18:57:31Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Atlanta Falcons', 'price': 4.33}, {'name': 'Los Angeles Rams', 'price': 1.2}]}]}, {'key': 'mybookieag', 'title': 'MyBookie.ag', 'last_update': '2022-09-18T18:57:31Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Atlanta Falcons', 'price': 4.9}, {'name': 'Los Angeles Rams', 'price': 1.2}]}]}, {'key': 'wynnbet', 'title': 'WynnBET', 'last_update': '2022-09-18T18:57:32Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Atlanta Falcons', 'price': 4.75}, {'name': 'Los Angeles Rams', 'price': 1.2}]}]}, {'key': 'sugarhouse', 'title': 'SugarHouse', 'last_update': '2022-09-18T18:57:32Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Atlanta Falcons', 'price': 4.75}, {'name': 'Los Angeles Rams', 'price': 1.22}]}]}, {'key': 'barstool', 'title': 'Barstool Sportsbook', 'last_update': '2022-09-18T18:57:31Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Atlanta Falcons', 'price': 4.6}, {'name': 'Los Angeles Rams', 'price': 1.2}]}]}, {'key': 'superbook', 'title': 'SuperBook', 'last_update': '2022-09-18T18:57:32Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Atlanta Falcons', 'price': 5.0}, {'name': 'Los Angeles Rams', 'price': 1.2}]}]}, {'key': 'betus', 'title': 'BetUS', 'last_update': '2022-09-18T18:57:32Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Atlanta Falcons', 'price': 5.0}, {'name': 'Los Angeles Rams', 'price': 1.2}]}]}, {'key': 'pointsbetus', 'title': 'PointsBet (US)', 'last_update': '2022-09-18T18:57:31Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Atlanta Falcons', 'price': 5.0}, {'name': 'Los Angeles Rams', 'price': 1.18}]}]}, {'key': 'fanduel', 'title': 'FanDuel', 'last_update': '2022-09-18T18:57:31Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Atlanta Falcons', 'price': 4.85}, {'name': 'Los Angeles Rams', 'price': 1.2}]}]}, {'key': 'bovada', 'title': 'Bovada', 'last_update': '2022-09-18T18:57:32Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Atlanta Falcons', 'price': 4.75}, {'name': 'Los Angeles Rams', 'price': 1.19}]}]}, {'key': 'gtbets', 'title': 'GTbets', 'last_update': '2022-09-18T18:57:32Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Atlanta Falcons', 'price': 5.2}, {'name': 'Los Angeles Rams', 'price': 1.19}]}]}, {'key': 'lowvig', 'title': 'LowVig.ag', 'last_update': '2022-09-18T18:56:38Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Atlanta Falcons', 'price': 4.85}, {'name': 'Los Angeles Rams', 'price': 1.21}]}]}, {'key': 'betonlineag', 'title': 'BetOnline.ag', 'last_update': '2022-09-18T18:57:30Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Atlanta Falcons', 'price': 4.9}, {'name': 'Los Angeles Rams', 'price': 1.2}]}]}, {'key': 'betmgm', 'title': 'BetMGM', 'last_update': '2022-09-18T18:57:32Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Atlanta Falcons', 'price': 4.75}, {'name': 'Los Angeles Rams', 'price': 1.2}]}]}, {'key': 'betfair', 'title': 'Betfair', 'last_update': '2022-09-18T18:57:32Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Atlanta Falcons', 'price': 5.1}, {'name': 'Los Angeles Rams', 'price': 1.23}]}, {'key': 'h2h_lay', 'outcomes': [{'name': 'Atlanta Falcons', 'price': 5.3}, {'name': 'Los Angeles Rams', 'price': 1.25}]}]}, {'key': 'intertops', 'title': 'Intertops', 'last_update': '2022-09-18T18:57:30Z', 'markets': [{'key': 'h2h', 'outcomes': [{'name': 'Atlanta Falcons', 'price': 4.75}, {'name': 'Los Angeles Rams', 'price': 1.2}]}]}]}\n", "\n" ] } ], "source": [ "events = []\n", "for data in odds_response:\n", " events.append(Event(data))\n", " # print(data)\n", " # print()\n", " \n", "arbitrage_events = []\n", "for event in events:\n", " best_odds = event.find_best_odds()\n", " if event.arbitrage():\n", " arbitrage_events.append(event)\n", " \n", "for event in arbitrage_events:\n", " event.calculate_arbitrage_bets()\n", " event.convert_decimal_to_american()" ] }, { "cell_type": "markdown", "id": "4cf86515", "metadata": {}, "source": [ "### Creating Dataframe and Writing to Excel File" ] }, { "cell_type": "code", "execution_count": 6, "id": "bdc8da60", "metadata": {}, "outputs": [], "source": [ "MAX_OUTCOMES = max([event.num_outcomes for event in arbitrage_events])\n", "ARBITRAGE_EVENTS_COUNT = len(arbitrage_events)\n", "\n", "my_columns = ['ID', 'Sport Key', 'Expected Earnings'] + list(np.array([[f'Bookmaker #{outcome}', f'Name #{outcome}', f'Odds #{outcome}', f'Amount to Buy #{outcome}'] for outcome in range(1, MAX_OUTCOMES + 1)]).flatten())\n", "dataframe = pd.DataFrame(columns=my_columns)" ] }, { "cell_type": "code", "execution_count": 7, "id": "1976164f", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[['GTbets', 'Chicago White Sox', -1111.11], ['Bovada', 'Detroit Tigers', 1800.0]]\n", "[['MyBookie.ag', 'Casa Pia', -714.29], ['Barstool Sportsbook', 'Famalicão', 32500.0], ['DraftKings', 'Draw', 1800.0]]\n", "[['FOX Bet', 'New England Patriots', -285.71], ['MyBookie.ag', 'Pittsburgh Steelers', 399.0]]\n", "[['GTbets', 'Baltimore Ravens', -1666.67], ['PointsBet (US)', 'Miami Dolphins', 1700.0]]\n", "[['Betfair', 'Ankaragücü', -555.56], ['William Hill (US)', 'Sivasspor', 9000.0], ['DraftKings', 'Draw', 950.0]]\n", "[['PointsBet (US)', 'Indianapolis Colts', 2800.0], ['GTbets', 'Jacksonville Jaguars', -1666.67]]\n", "[['Bovada', 'New Orleans Saints', 110.0], ['Betfair', 'Tampa Bay Buccaneers', -102.04]]\n", "[['BetMGM', 'Cleveland Browns', -250.0], ['FanDuel', 'New York Jets', 255.0]]\n", "[['William Hill (US)', 'Carolina Panthers', -140.85], ['FOX Bet', 'New York Giants', 270.0]]\n", "[['FOX Bet', 'Columbus Crew SC', -454.55], ['TwinSpires', 'Portland Timbers', 12500.0], ['FanDuel', 'Draw', 950.0]]\n", "[['BetMGM', 'Tampa Bay Rays', -400.0], ['Circa Sports', 'Texas Rangers', 1090.0]]\n", "[['FanDuel', 'SC Freiburg', 350.0], ['DraftKings', 'TSG Hoffenheim', 280.0], ['MyBookie.ag', 'Draw', 150.0]]\n", "[['FOX Bet', 'Miami Marlins', -161.29], ['Betfair', 'Washington Nationals', 255.0]]\n", "[['FOX Bet', 'Boston Red Sox', -666.67], ['SugarHouse', 'Kansas City Royals', 800.0]]\n", "[['FanDuel', 'Cleveland Guardians', 205.0], ['FOX Bet', 'Minnesota Twins', -153.85]]\n", "[['GTbets', 'New York Mets', -2000.0], ['FanDuel', 'Pittsburgh Pirates', 2300.0]]\n", "[['FOX Bet', 'Baltimore Orioles', 260.0], ['GTbets', 'Toronto Blue Jays', -113.64]]\n", "[['FanDuel', 'Milwaukee Brewers', -212.77], ['Bovada', 'New York Yankees', 285.0]]\n", "[['BetMGM', 'Cincinnati Reds', 220.0], ['Circa Sports', 'St. Louis Cardinals', -212.77]]\n", "[['Betfair', 'AC Milan', 140.0], ['Betfair', 'Napoli', 265.0], ['WynnBET', 'Draw', 225.0]]\n", "[['Betfair', 'Lyon', 1250.0], ['WynnBET', 'Paris Saint Germain', -185.19], ['Betfair', 'Draw', 620.0]]\n" ] } ], "source": [ "for event in arbitrage_events:\n", " # print(event.best_odds)\n", " row = []\n", " row.append(event.id)\n", " row.append(event.sport_key)\n", " row.append(round(event.expected_earnings, 2))\n", " for index, outcome in enumerate(event.best_odds):\n", " row.append(outcome[BOOKMAKER_INDEX])\n", " row.append(outcome[NAME_INDEX])\n", " row.append(outcome[ODDS_INDEX])\n", " row.append(event.bet_amounts[index])\n", " while len(row) < len(dataframe.columns):\n", " row.append('N/A')\n", " dataframe.loc[len(dataframe.index)] = row" ] }, { "cell_type": "code", "execution_count": 8, "id": "9aacaf0d", "metadata": {}, "outputs": [], "source": [ "writer = pd.ExcelWriter('bets.xlsx')\n", "dataframe.to_excel(writer, index=False)\n", "writer.save()" ] }, { "cell_type": "markdown", "id": "84aa0611", "metadata": {}, "source": [ "### Formatting the Excel File" ] }, { "cell_type": "code", "execution_count": 9, "id": "917c28ca", "metadata": {}, "outputs": [], "source": [ "BLACK = '000000'\n", "LIGHT_GREY = 'D6D6D6'\n", "DARK_GREY = '9F9F9F'\n", "RED = 'FEA0A0'\n", "BLUE = 'A0CEFE'\n", "YELLOW = 'FFE540'\n", "\n", "COLORS = [RED, BLUE]\n", "\n", "ID_COLUMN_FILL = PatternFill(fill_type='solid', start_color=DARK_GREY, end_color=DARK_GREY)\n", "SPORT_KEY_COLUMN_FILL = PatternFill(fill_type='solid', start_color=LIGHT_GREY, end_color=LIGHT_GREY)\n", "EXPECTED_EARNINGS_COLUMN_FILL = PatternFill(fill_type='solid', start_color=YELLOW, end_color=YELLOW)\n", "\n", "CENTER_ALIGNMENT = Alignment(horizontal='center', vertical='bottom', indent=0)\n", "\n", "TOP_ROW_BORDER = Border(bottom=Side(border_style='thick', color=BLACK))\n", "NORMAL_ROW_BORDER = Border(top=Side(border_style='thin', color=LIGHT_GREY), bottom=Side(border_style='thin', color=DARK_GREY))\n", "\n", "wb = load_workbook('bets.xlsx')\n", "ws = wb.active\n", "ws.title = 'Upcoming'\n", "# changing width\n", "for col in range(1, 26):\n", " ws.column_dimensions[chr(col + 64)].width = 20\n", "\n", "for cell in ws['A']:\n", " cell.fill = ID_COLUMN_FILL\n", " cell.alignment = CENTER_ALIGNMENT\n", " \n", "for cell in ws['B']:\n", " cell.fill = SPORT_KEY_COLUMN_FILL\n", " cell.alignment = CENTER_ALIGNMENT\n", " \n", "for cell in ws['C']:\n", " cell.fill = EXPECTED_EARNINGS_COLUMN_FILL\n", " cell.alignment = CENTER_ALIGNMENT\n", " cell.number_format = numbers.BUILTIN_FORMATS[7]\n", "\n", "START_INDEX = 'D'\n", "for index in range(MAX_OUTCOMES):\n", " for col in ws[START_INDEX : chr(ord(START_INDEX) + 3)]:\n", " for cell in col:\n", " color = COLORS[int(index % 2)]\n", " cell.fill = PatternFill(fill_type='solid', start_color=color, end_color=color)\n", " cell.alignment = CENTER_ALIGNMENT\n", " if cell.column % 4 == 3:\n", " cell.number_format = numbers.BUILTIN_FORMATS[7]\n", " \n", " START_INDEX = chr(ord(START_INDEX) + 4)\n", "\n", "for cell in ws['1']:\n", " cell.border = TOP_ROW_BORDER\n", "\n", "for row in range(2, ARBITRAGE_EVENTS_COUNT + 2):\n", " for cell in ws[str(row)]:\n", " cell.border = NORMAL_ROW_BORDER\n", " \n", "wb.save('upcoming_events_bets.xlsx')" ] }, { "cell_type": "code", "execution_count": null, "id": "06858b4a", "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.9.7" } }, "nbformat": 4, "nbformat_minor": 5 } ================================================ FILE: Books.txt ================================================ US Bookmakers: (1) Barstool Sportsbook : barstool (2) BetOnline.ag : betonlineag (3) Betfair Exchange: betfair (4) BetMGM : betmgm (5) BetRivers : betrivers (6) BetUS : betus (7) Bovada : bovada (8) DraftKings : draftkings (9) FanDuel : fanduel (10) FOX Bet : foxbet (11) GTbets : gtbets (12) Intertops : intertops (Everygame) (13) MyBookie.ag : mybookieag (14) PointsBet (US) : pointsbetus (15) SugarHouse : sugarhouse (16) TwinSpires : twinspires (17) Unibet : unibet (18) William Hill (Caesars) : williamhill_us (19) WynnBET : wynnbet ================================================ FILE: README.md ================================================ # Statistical Arbitrage for Sports Betting Project

animated

*Above is an example of what the output Excel file may look like.* This project was made in March 2022. In this project, I utilize the **Live Sports Odds API** (https://the-odds-api.com/) to find statistical arbitrage opportunities in upcoming sporting events across the world. For sports betting purposes, an arbitrage opportunity is when two books are offering such distinct odds that if a bettor makes a particular bet with one book and another particular bet with another book, they can hedge their bets in such a way that they will be guaranteed to make a profit. The **Live Sports Odds API** is a free, open source API that tracks the current odds of essentially any given sporting event that is offered by books across the United States. With data from the API, the program is able to find all possible artbitrage opportunities across the eight nearest upcoming sporting events. Once the program finds these opportunities and makes the necessary calculations for the user to understand the output, it writes all findings to an Excel file for the user to access. This file includes the **ID** and **Sport Key** (both of which are specific metrics to the Live Sports Odds API), along with the **Expected Earnings, Bookmaker, Name, Odds**, and **Amount to Buy** with each book for each respective bet. Each row in the file represents one artbitrage opportunity. All of the code for this program is included in the **Arbitrage.ipynb** file. Each chunk of code is commented so that the user knows exactly what is happening in each step of the program. Please note that the API does not update instantaneously, and since all books are constantly altering their odds as to eliminate such opportunities for bettors, the program will occasionally output odds that are slightly inaccurate due to the fact that they have already been updated on the book's website. The **Books.txt** file contains a list of all of the US bookmakers that are supported by the **Live Sports Odds API** as of 3/17/22 for reference. This information is also on the documentation website for the API listed above. NOTE: In order to use this project, you will need to acquire an API key from the website linked above. It is entirely free. Once you have done this, add your API key to the **API_KEY.txt** file.