Modelos para apuestas de fútbol: Poisson, xG y pruebas con datos reales
La analítica aplicada al fútbol dejó de ser territorio exclusivo de scouts y entrenadores: hoy cualquier apostador con hojas de cálculo y datos públicos puede construir modelos que reduzcan la incertidumbre. Eso no equivale a “ganar siempre”, pero sí a tomar decisiones más informadas. Y, por cierto, aunque a veces se hable de casas de apuestas sin DNI en foros y redes, en España la normativa exige verificación de identidad; la discusión técnica de modelos no sustituye el cumplimiento legal ni una gestión del riesgo prudente.
Poisson para marcar y encajar: cuándo funciona y cómo contrastarlo
La familia de modelos de Poisson es un clásico para estimar cuántos goles anotará cada equipo en un partido. Trata los goles como “eventos” que ocurren a cierta tasa media (λ) y asume, de forma aproximada, independencia entre los conteos de ambos equipos. Con esta base se pueden simular marcadores, calcular cuotas justas y evaluar mercados como 1X2, hándicaps o totales.
- Pasos prácticos para construir y validar el enfoque
- Recolección y limpieza: compila varias temporadas de liga con resultados, localía, alineaciones conocidas y, si es posible, tiempo efectivo jugado. Excluye partidos atípicos (expulsiones tempranas muy raras) solo si vas a modelarlos por separado.
- Fuerza de ataque/defensa: estima parámetros de cada equipo con un modelo Poisson bivariado (por ejemplo, tipo Dixon–Coles) que ajuste por ventaja de local y dependencias en los minutos finales.
- Actualización temporal: usa ponderaciones que den más peso a los encuentros recientes sin borrar la “base” histórica; así reduces ruido por rachas.
- Cuotas “justas”: de las tasas λ_local y λ_visitante simula miles de marcadores para obtener probabilidades de 1X2, U/O y correct score; convierte a cuotas e incorpora el margen de la book para comparar.
- Contraste de hipótesis: aplica una prueba χ² de bondad de ajuste sobre la distribución de goles observada vs. la esperada por Poisson; revisa sobredispersión (si varianza ≫ media, quizá necesites un modelo Poisson–Gamma/NB).
- Backtest fuera de muestra: define H₀: “el modelo no supera la cuota implícita del mercado”, y usa un test binomial sobre aciertos/errores o diferencia de log-loss para valorar si hay señal estadística y su estabilidad.
- Control de tamaño de efecto: calcula ROI y su intervalo de confianza por bootstrap; una p baja sin tamaño de efecto consistente no es base para stakes altos.
Cierre del bloque: Poisson rinde bien en ligas estables y para mercados agregados (U/O, 1X2). Pierde precisión cuando los goles no son “independientes” (derbis tensos, lesiones del portero titular, cambios tácticos recientes). Si detectas sobredispersión o correlaciones fuertes, pasa a variantes (Dixon–Coles ajustado, modelos jerárquicos o negativos binomiales).
xG modernos: del disparo a la probabilidad de mercado y su verificación
Los expected goals (xG) modelan la probabilidad de que un tiro termine en gol dado su contexto: ubicación, ángulo, parte del cuerpo, tipo de asistencia, presión defensiva, etc. En lugar de suponer una tasa constante por equipo, estimas la calidad micro de cada ocasión y luego agregas por partido. Esto permite captar estilos (presión alta, centros laterales, transiciones) que un Poisson simple no ve.
- Pipeline recomendado de xG y pruebas con datos
- Variables del tiro: coordenadas y ángulo, distancia, pie/cabeza, velocidad de la jugada, tipo de pase, altura del centro, número de defensores cercanos y posición del portero cuando sea posible.
- Modelo de probabilidad: entrena regresión logística o un GBM/árboles con regularización para estimar P(gol|tiro); cuida el desbalance (la mayoría de tiros no acaban en gol).
- Validación: usa Brier score y log-loss, más curvas de calibración; un buen xG no solo clasifica, también calibra.
- Agregación por partido: suma xG a favor/en contra para cada equipo y proyecta distribución de goles mediante Monte Carlo (suma de Bernoulli) o aproximación Poisson si la tasa total lo permite.
- Del modelo al mercado: formula H₀: “la probabilidad implícita de la cuota = probabilidad del modelo”. Convierte cuota a probabilidad (p_im = 1/cuota ajustada por margen) y contrástala con p_mod usando un test binomial sobre una muestra de picks o un test de proporciones; aplica corrección por multiplicidad (p. ej., Holm–Bonferroni) si evaluas muchos mercados.
- Robustez temporal: recalibra cada X jornadas y repite el contraste; mira deriva de concepto (entrenadores nuevos, roles cambiados, lesiones) para decidir ventanas móviles.
- Staking y riesgo: implementa fijo por unidad o Kelly fraccionado (1/4 o 1/8) solo si la ventaja es estable y el intervalo de confianza no abraza cero.
Cierre del bloque: xG capta matices que un conteo de goles ignora y suele mejorar la predicción de totales y ambos marcan. Aun así, depende de la calidad del dato: si tu proveedor no incluye presión o altura de tiro, el modelo perderá granularidad y necesitarás compensar con regularización y más cautela en stakes.
Caso práctico breve (sin lista): imagina que tu xG proyecta para un Sevilla–Betis 1.55–1.10. Tras 20.000 simulaciones obtienes: 1 (44.8%), X (27.6%), 2 (27.6%). La book ofrece 2.25–3.25–3.40 con margen del 5.5%. Ajustas a probabilidades implícitas y comparas: si tu 1 está en 44.8% y la implícita ajustada es 42.0%, hay un edge del 2.8 p.p. Formulas H₀: edge = 0 y tests sobre una cartera de 300 picks similares. Si el intervalo de confianza del ROI anualizado es [0.4%, 2.1%] y la p es <0.05 tras corrección, puedes asignar 0.5–0.75 unidades por apuesta; si cae en negativo al cambiar la ventana temporal, detén el sistema y revisa supuestos.
Fuentes de datos y calidad: prioriza datos consistentes —minutos jugados, tiros bloqueados, ubicación exacta del disparo— y documenta cada transformación. Evita “sobre-optimizar” la muestra: si tuneas hiperparámetros con la misma temporada que usas para evaluar, tus métricas mentirán. Separar entrenamiento/validación/prueba por temporadas o semanas (split temporal) es obligatorio para reflejar el uso real.
Mercados donde cada enfoque brilla:
- Poisson tiende a ser competitivo en totales, correct scores y hándicaps asiáticos cuando las ligas son homogéneas y la localía es estable.
- xG suele destacar en ambos marcan, líneas alternativas y props de tiros si modelas la generación de ocasiones y el estilo de juego.
En ambos casos, evita ligas con cambios radicales de plantilla a mitad de temporada si no reentrenas parámetros.
Errores típicos a evitar: proyectar con Poisson en derbis de alto voltaje sin ajustar dependencia; mezclar datos de copas con rotaciones masivas junto a liga; ignorar el sesgo por marcador (equipos que levantan el pie con 2–0); usar xG sin calibración y creer que “+0.4 xG” equivale automáticamente a valor en el 1X2.
Gestión del proyecto y reproducibilidad: deja un rastro claro: versión del dataset, fecha de corte, código, parámetros y resultados. Un sistema que no puedes repetir es indistinguible de la suerte. Cada mes, re-estima parámetros, recalibra probabilidades y vuelve a pasar los mismos test de hipótesis. Si el performance no sobrevive a esos chequeos, reduce exposición o archiva el sistema.
Idea final para iniciar hoy mismo: implementa un Poisson sencillo con ventaja de local y fuerzas por equipo; en paralelo, entrena un xG básico con logística (solo distancia y ángulo si no tienes más). Compara ambos por Brier/log-loss y reconstruye probabilidades de 1X2. Sólo cuando la ventaja sea estable, y tras pasar tus contrastes de hipótesis en fuera de muestra, piensa en stakes. La estadística ayuda a decidir mejor; la disciplina protege el bankroll.
Última actualización: 18 septiembre 2025