pip install oddsapi_ev
pandas numpy requests json datetime dateutil.parser pytz typing
El módulo obtiene las próximas cuotas de apuestas deportivas de The Odds API y calcula el valor esperado (ev) de esa apuesta con respecto a uno o ambos estándares de "probabilidades reales". Para obtener más información sobre las apuestas eléctricas, consulte esta publicación informativa.
ev.py
Este es el único módulo del paquete. Contiene la función data()
.
data()
Esta es la única función en el módulo ev.py
Parámetros: consulte la sección de parámetros de data()
Devuelve: pandas DataFrame
data()
Cada parámetro es opcional y cada uno tiene un valor predeterminado. Sin embargo, se debe pasar api_key o filename .
api_key ( str
) :
Una clave API de probabilidades válida
nombre de archivo ( str
):
El nombre de un archivo JSON que contiene datos en el mismo formato que la API de Odds
SE DEBE PASAR Api_key O nombre de archivo (SE RECOMIENDA api_key ) DE LO CONTRARIO ¡LA FUNCIÓN SALDRÁ!**
Los siguientes parámetros se pasan a la llamada API para especificar qué tipos de probabilidades se obtienen y afectan la cantidad de solicitudes que se le cobran a su cuota . Al cargar un archivo en lugar de llamar a la API, se utilizará todo lo siguiente, excepto regions
para filtrar los datos del archivo. Si se proporciona una entrada incorrecta para cualquiera de los parámetros de la API, la función se cerrará.
deportes ( list[str]
):
Una lista de deportes que se incluirán según lo definido por The Odds API
regiones ( list[str]
):
Una lista de regiones de apuestas deportivas que se incluirán. Debe ser un subconjunto de: ['us', 'eu', 'uk', 'au']
mercados ( list[str]
):
Una lista de mercados de apuestas que se incluirán. Debe ser un subconjunto de ['h2h', 'spreads', 'totals']
. Para más información ver aquí
Este parámetro identifica qué tipo de valor esperado utilizar. Hay dos formas de determinar las probabilidades justas de una posición y, por tanto, dos formas de determinar el valor esperado de una apuesta.
Promedio: determina las probabilidades justas de una posición como el promedio de todas las probabilidades para esa posición en todas las casas de apuestas deportivas sin la ventaja de las casas de apuestas deportivas.
Pinnacle: determina que las probabilidades justas de una posición son las probabilidades ofrecidas por la casa de apuestas deportivas Pinnacle sin el borde de la casa de apuestas.
Si se proporciona una entrada incorrecta, la función se cerrará.
ev_type ( str
):
El método(s) de cálculo del valor esperado que se utilizará. Debe ser uno de los siguientes: 'avg' , 'pinnacle' o 'both'
Estos parámetros se utilizan para filtrar las probabilidades. Si se proporciona una entrada incorrecta, la función continuará pero no filtrará las probabilidades en función de ese valor.
recomendado ( bool
):
Si recomendado es Verdadero, todos los valores de filtro se anularán con valores recomendados para encontrar las apuestas más rentables.
días_desde_ahora ( int
o float
):
El número máximo de días en el futuro para devolver las probabilidades
libros ( list[str]
):
Una lista de casas de apuestas deportivas que se incluirán en las probabilidades. Consulte aquí las claves válidas de las casas de apuestas deportivas.
min_odds ( int
o float
):
La línea de probabilidades mínimas (en formato americano) de las probabilidades devueltas.
min_odds ( int
o float
):
La línea de probabilidades máximas (en formato americano) de las probabilidades devueltas.
Si min_odds > max_odds , la función devolverá un DataFrame vacío
max_width ( int
o float
):
El ancho máximo de las probabilidades devueltas. (Consulte Campos de marco de datos calculados para obtener más información sobre el ancho)
max_vig_pct ( int
o float
):
El máximo 'vig' o 'borde' en las cuotas de las casas de apuestas deportivas
min_ev_pct ( int
o float
):
El porcentaje mínimo del valor esperado de las probabilidades.
min_num_books ( int
o float
):
El número mínimo de casas de apuestas deportivas que ofrecen cada línea.
pref_ev_filter ( str
):
El método preferido de cálculo de ev para filtrar valores. Debe ser uno de los siguientes: 'avg' , 'pinnacle' o 'both' .
Nota: ev_type y pref_ev_filter no pueden contradecirse entre sí (por ejemplo, si 'avg' es ev_type , 'pinnacle' no puede ser pref_ev_filter . En ese escenario, pref_ev_filter por defecto será ev_type ).
Estos parámetros se utilizan para ordenar el DataFrame.
ordenar por ( str
):
El valor para ordenar el DataFrame.
Debe ser uno de los siguientes: 'commence_time' , 'line' , 'width' , 'ev_pct' , 'kelly_pct' o 'default' .
'predeterminado' ordena el DataFrame según una combinación predeterminada de campos.
ascendente ( bool
):
Ordene el valor elegido en orden ascendente cuando sea Verdadero y en orden descendente cuando sea Falso
pref_ev_sort ( str
):
El método preferido de cálculo de ev para ordenar valores. Debe ser "promedio" o "pinnacle" (NO "ambos" ).
Nota: ev_type y pref_ev_sort no pueden contradecirse entre sí (por ejemplo, si 'avg' es ev_type , 'pinnacle' no puede ser pref_ev_sort . En ese escenario, pref_ev_sort será predeterminado ev_type ).
Este parámetro controla si el DataFrame devuelto incluirá todos los campos de datos o solo los campos esenciales. El valor predeterminado es Falso.
expandido ( bool
):
Si expandido es Verdadero, se incluirán campos adicionales en el DataFrame devuelto. Muchos de estos campos son campos intermedios en el cálculo de campos más significativos.
Si expandido es Falso, el DataFrame devuelve solo los campos más importantes.
El valor predeterminado es Falso si no se especifica.
from oddsapi_ev import ev # get all of the most profitable bets odds1 = ev.data(api_key=YOURKEY, recommended=True) # get all odds from DraftKings, sorted by ev percentage with respect to the average odds odds2 = ev.data(api_key=YOURKEY, regions=['us'], ev_type='avg', books=['draftkings'], sortby='ev_pct', ascending=False, pref_ev_sort='avg') # get all head to head odds at eu book makers for UEFA champions league games with maximum odds of +110 and the ev calculated with respect to Pinnacle odds odds3 = ev.data(api_key=YOURKEY, sports=['soccer_uefa_champs_league'], regions=['eu'], markets=['h2h'], ev_type='pinnacle', min_odds=110, pref_ev_filter='pinnacle')
La siguiente es una descripción de los campos adicionales calculados por data()
(sin incluir los campos expandidos) que no existen en los datos de Odds API.
número_libros:
La cantidad de casas de apuestas deportivas que tienen probabilidades publicadas para la posición determinada. Esto es importante para los cálculos realizados con valores promedio, ya que cuanto mayor sea el número de libros que contribuyen al promedio, más confiable será.
línea_justa:
Estas son las probabilidades de una posición determinada si se eliminara la 'vig' o 'ventaja' que las casas de apuestas deportivas incorporan a sus probabilidades para garantizar ganancias.
Indican cuáles son las posibilidades reales del resultado según la casa de apuestas deportivas
ancho:
El número combinado de puntos en los que las probabilidades para ambos lados de un mercado están por debajo de las probabilidades justas (+100/-100)
Por ejemplo, si dos lados de un mercado fueran +105 y -125, el ancho sería 20 ya que -125 es 25 abajo y +105 es 5 arriba, por lo que el número neto sería 20.
Leer más aquí
vig_pct:
La diferencia porcentual entre el porcentaje de ganancias implícito de un determinado conjunto de probabilidades en una casa de apuestas deportivas con 'vig' o 'edge' incorporado y el porcentaje de ganancias de ese mismo conjunto de probabilidades en la misma casa de apuestas deportivas con el vig eliminado para encontrar el justo porcentaje de victorias. Es una medida de cuán injustas son las probabilidades.
ev_pct:
El porcentaje del valor esperado (ev) es la diferencia porcentual entre el porcentaje de ganancias implícito de una posición determinada en alguna casa de apuestas deportivas antes de que se elimine el vig y el porcentaje de ganancias implícito de la misma posición en una casa de apuestas deportivas más precisa (como Pinnacle) o promedio. de múltiples casas de apuestas deportivas después de que se eliminó la vig.
Más simplemente, representa la diferencia entre las probabilidades que usted apuesta y la verdadera probabilidad de ganar una apuesta.
La mayoría de las apuestas tendrán porcentajes ev negativos. Las pocas con porcentajes positivos son las apuestas rentables.
Leer más aquí
kelly_pct:
El porcentaje estadísticamente óptimo de tus fondos para apostar en función del porcentaje ev y la probabilidad general de ganar.