
Baseline — NBA Game and Data Analysis
Baseline — análisis de la NBA que muestra su trabajo
⚠ Solo análisis estadístico de la NBA — sin consejos de apuestas ni de juego. Cada cifra de abajo es una probabilidad modelada con un rango de incertidumbre explícito: no es una selección ni una recomendación. La herramienta no asigna etiquetas de acción y nunca presenta un resultado como seguro.
Qué hace
Baseline convierte un partido de la NBA en un análisis estadístico reproducible, construido únicamente con estadísticas publicadas de la NBA. Pide un partido y obtienes un marcador modelado, el margen local, el spread, el total, la probabilidad de victoria y un rango central del 60 %. Pide un jugador y obtienes los minutos esperados, además de puntos, rebotes, asistencias, triples y PRA modelados.
La diferencia está en lo que hay detrás del número. Cada análisis incluye su versión de modelo, la fecha de corte de datos, la temporada de origen y —cuando una temporada aún no tiene partidos— una marca explícita de que se usó un respaldo. Las tablas las escribe un generador determinista, no un modelo de lenguaje que improvisa prosa, así que la misma petición con el mismo corte devuelve la misma respuesta.
Cuándo usarlo
- Una lectura previa de un partido concreto. «Lakers vs 76ers el 23 de octubre: ¿qué dice el modelo?» Quieres marcador, margen y probabilidad de victoria a partir de estadísticas publicadas, no de una corazonada.
- Una temporada nueva con una plantilla nueva. Las plantillas cambian cada verano. Baseline reconstruye una rotación de 240 minutos con la plantilla actual y el historial NBA de cada jugador, en lugar de reutilizar en silencio el equipo del año pasado.
- Una cifra de jugador con una razón en minutos. Los minutos impulsan la estimación y los estados de los compañeros los reasignan, así que «¿por qué sale este número?» tiene una respuesta real.
- Tienes que defender la cifra. Analistas, periodistas y jugadores de fantasy que necesitan explicar de dónde sale un número obtienen el corte, la temporada de origen, la rotación y el JSON completo.
Cómo funciona
- Construir la rotación. Para un partido futuro, el CLI toma las plantillas publicadas de ambos equipos para la temporada objetivo y el historial NBA de cada jugador en la temporada anterior, y estima una rotación de diez jugadores y 240 minutos con un tope de 38 minutos por jugador.
- Encoger los priors. El rating ofensivo, el rating defensivo y el ritmo en cancha del jugador se encogen hacia la media de la liga de la temporada anterior con
0.60 × min(1, prior_player_minutes / 1200), y luego se ponderan por los minutos de rotación estimados. - Mezclar plantilla y equipo. El perfil de la plantilla se mezcla con el perfil del equipo anterior con
clamp(0.90 − 0.45 × retained_prior_rotation_minutes_share, 0.45, 0.90). Cuanto más ha desaparecido la rotación de la temporada pasada, más confía el modelo en la plantilla nueva: la rotación de plantilla cambia el número, no solo la etiqueta de confianza. - Absorber partidos reales. Cuando ambos equipos ya han jugado, su perfil observado se incorpora con
games / (games + 12). Una muestra de un solo partido apenas mueve la cifra. - Convertir a puntos. Cada ataque se empareja con la defensa rival en torno a la media de la liga, se convierte con el ritmo modelado y se ajusta por ventaja de local y descanso conocido.
- Cuantificar la incertidumbre. Una distribución normal de residuos produce la probabilidad de victoria y cualquier probabilidad de umbral que pidas. La rotación de plantilla y los jugadores sin historial NBA amplían el rango en lugar de ocultarse.
Por qué es distinto
- Modela quién juega de verdad. La mayoría del análisis rápido reutiliza los ratings del equipo de la temporada pasada. Baseline construye una rotación con las plantillas publicadas y el historial de cada jugador, y luego reasigna esos 240 minutos cuando un informe oficial de lesiones señala a alguien como baja.
- La cifra es reproducible. El CLI genera el informe y sella cada ejecución con la versión del modelo, el corte, la temporada de origen y las marcas de respaldo. Vuelve a ejecutar el análisis y llega a la misma cifra, o abre el JSON y síguela. Un modelo de chat que responde de memoria no puede hacer ni una cosa ni la otra.
- Fuentes con nombre, valores etiquetados. Las estadísticas de equipo y de jugador vienen de las estadísticas públicas de ESPN; el estado de lesiones viene de PDF del Informe Oficial de Lesiones de la NBA con sello temporal, en un dominio de la lista blanca. Todo lo que esa fuente no publica —los ratings individuales y el uso— se calcula aquí con una fórmula declarada y se etiqueta como calculado, no se presenta como publicado. Si falta una plantilla o una fuente necesaria, la ejecución falla y lo dice: no sustituye otra fuente en silencio ni adivina.
Ejemplo
Entrada: game --home PHI --away BOS --season 2026-27 --as-of 2026-11-10 (opcional: --margin-threshold 4.5 o --total-threshold 224.5)
Salida: un encabezado de partido y tres tablas Markdown — una tabla de modelo/contexto con marcadores, margen local y su rango central del 60 %, total, probabilidad de victoria, disponibilidad, temporadas de origen y confianza; una tabla de plantillas de dos equipos con fortalezas, debilidades, altas y bajas principales modeladas, y efectos del personal en ataque, defensa y neto por 100 posesiones; y una tabla de impacto del personal de dos equipos con minutos de los recién llegados, señales de rol y cambios de minutos y de estadísticas debidos a la disponibilidad.
La salida de ejemplo de ese comando da Philadelphia 113.2, Boston 115.3, margen local −2.0, probabilidad de victoria 0.4426 — una ligera ventaja para Boston, que es lo que decía el modelo en lugar de un pronóstico forzado.
Formatos de entrada
- Una petición en lenguaje natural que nombre los dos equipos y la fecha
- Selección de temporada (
2025-26,2026-27) y una fecha objetivo explícita--as-of - Un nombre de jugador, con o sin equipo
- Selección opcional de estadística:
pts,reb,ast,fg3m,praoall - Umbrales opcionales que aportas tú: margen, total o una estadística de jugador
- URL directa opcional a un PDF oficial del informe de lesiones de la NBA (debe estar en
official.nba.comoak-static.cms.nba.com) - Ajustes manuales de escenario opcionales, en puntos
- Salida como tablas Markdown renderizadas en chino o inglés, o JSON completo con
--format json/--output
Cobertura y profundidad de datos
Fuente: estadísticas públicas de ESPN, más PDF del Informe Oficial de Lesiones de la NBA con sello temporal en un dominio de la lista blanca.
- Perfil de equipo — rating ofensivo, rating defensivo, net rating, ritmo, partidos jugados
- Forma reciente — los últimos N partidos del club, para la mezcla en temporada
- Contexto de descanso — el registro de partidos y las fechas del propio club
- Historial de partidos del jugador — minutos, puntos, rebotes, asistencias, triples y fechas, partido a partido
- Prior de rol y uso del jugador — minutos de temporada, ratings y uso; los ratings individuales y el uso se calculan aquí en lugar de publicarse
- Tasas por 36 minutos — puntos, rebotes, asistencias, triples
- Calendario — identificadores de partido, fechas y asignación local/visitante
- Plantilla — la plantilla de la temporada objetivo; para una temporada pasada, reconstruida a partir de las estadísticas de esa temporada
- Disponibilidad — PDF del Informe Oficial de Lesiones de la NBA con sello temporal
Lo que no hace
- No te dirá qué hacer con la cifra. Los umbrales los pones tú; la herramienta solo devuelve la probabilidad modelada por encima de ellos y no asigna ninguna etiqueta de acción.
- No confirmará un quinteto inicial ni una restricción de minutos. Los informes oficiales no demuestran una alineación, así que ese campo sigue no disponible salvo que aportes una fuente oficial confirmada.
- No es un ensemble entrenado. Sin ajuste de hiperparámetros, sin defensa específica por jugador rival, sin variables de viaje, altitud o arbitraje, sin posesiones jugada a jugada.
- Aún no está calibrado. El estado de validación del modelo indica que sus pesos y términos de incertidumbre no se han entrenado en walk-forward. Trata la confianza como baja cuando las muestras son pequeñas o la disponibilidad es desconocida.
- No te dará posiciones ni dorsales de una plantilla pasada. Para un partido histórico, la plantilla se reconstruye con las estadísticas de esa temporada —todos los que registraron minutos—, así que acierta en quién jugó y dice claramente que la posición y el dorsal no están disponibles en lugar de adivinar.


