← Todas las guías
En esta página
Tutorial Estrategia GTO · 02/06 Entrenador 18 min Intermedio

Parte 1: Tu primera consulta de estrategia

Construye el núcleo de un entrenador de póker GTO a partir de un escenario de entrenamiento controlado o una mano completada — la misma clase de capa estratégica que impulsa Counterplay. Esta parte realiza una llamada real a la estrategia preflop, lee sus frecuencias mixtas verificables y califica una decisión tras revisarla.

Actualizado Mantenido por Pokerai API

1 · Primera llamada 2 · La cuadrícula de rangos 3 · Árbol postflop 4 · Resolución de turn/river

Lo que necesitarás

Una clave de API gratuita (consigue una aquí) y curl o Python 3. Establece tu clave como una variable de entorno:

export POKERAI_API_KEY="gto_your_key_here"

Paso 1 · Tu primera llamada

Solicita la estrategia GTO cuando Hero tiene A♥K♥ en MP y UTG ha hecho una subida:

curl https://pokerai.bet/v1/gto/preflop \
  -H "authorization: Bearer $POKERAI_API_KEY" \
  -H "content-type: application/json" \
  -d '{
    "hole_cards": "AhKh",
    "positions": { "hero": "MP" },
    "preflop_actions": [
      { "position": "SB", "action": "small blind", "amount": 0.5 },
      { "position": "BB", "action": "big blind", "amount": 1 },
      { "position": "UTG", "action": "raise", "amount": 3 }
    ]
  }'

Respuesta:

{
  "hole_cards": "AhKh",
  "situation": "Raise",
  "strategy": [
    { "action": "raise", "frequency": 1, "amount_bb": 9, "sizing_pot": 0.8 }
  ]
}

AKs frente a una apertura de UTG es un 3-bet puro: sube el 100% de las veces, a 9bb. situation se deriva de las acciones que enviaste (aquí, enfrentar una subida = "Raise").

Paso 2 · Lee las frecuencias

La idea clave: la API devuelve una estrategia mixta — la frequency GTO de cada acción — no un único movimiento "recomendado". La mayoría de las manos son puras (una acción al 100%), pero muchas son mixtas. Por ejemplo, UTG abre con A2s:

{ "action": "raise", "frequency": 0.296 }   # raise 29.6% of the time
{ "action": "fold",  "frequency": 0.704 }   # fold 70.4% of the time
Tanto subir como retirarse con A2s aquí son correctos según GTO. Un jugador que siempre se retira, o que siempre sube, no está "equivocado" en ninguna mano individual, pero a lo largo de muchas manos se desvía de la mezcla de equilibrio. Eso es exactamente lo que mide un entrenador.

Paso 3 · En código

Un pequeño cliente tipado — con la misma estructura que usa Counterplay (app/gto/client.py):

import os, httpx

class Pokerai:
    def __init__(self):
        self.h = {"Authorization": f"Bearer {os.environ['POKERAI_API_KEY']}"}
        self.c = httpx.Client(base_url="https://pokerai.bet", timeout=15)

    def preflop(self, hole_cards, hero, actions):
        r = self.c.post("/v1/gto/preflop", headers=self.h, json={
            "hole_cards": hole_cards,
            "positions": {"hero": hero},
            "preflop_actions": actions,
        })
        r.raise_for_status()
        return {s["action"]: s["frequency"] for s in r.json()["strategy"]}

gto = Pokerai()
strat = gto.preflop("AhKh", "MP", [{"position":"UTG","action":"raise","amount":3}])
print(strat)   # {'raise': 1.0}

Paso 4 · Evalúa una decisión

Este es el corazón del entrenador. Califica la acción de Hero según la frecuencia GTO de la acción que eligió — no según lo lejos que esté de la acción más frecuente. Una subida con una frecuencia del 14 % es una buena jugada mixta, no un error:

def grade(chosen_action, strategy):
    freq = strategy.get(chosen_action, 0.0)
    if freq >= 0.10: return "ok"        # a real part of the GTO mix
    if freq >= 0.005: return "minor"    # rare, but not a blunder
    return "major"                       # ~never played → a real leak

grade("raise", {"raise": 0.296, "fold": 0.704})   # "ok"  (A2s raise)
grade("raise", {"fold": 1.0})                     # "major" (raising 32o UTG)
Así es exactamente como Counterplay califica: la gravedad proviene de la frecuencia propia de la acción elegida, por lo que las acciones mixtas de baja frecuencia no se penalizan. (Consulta el caso de estudio.)

Lo que has creado

Una capa de estrategia funcional: obtiene frecuencias GTO para una situación de entrenamiento documentada y evalúa la decisión completada de un jugador frente al equilibrio. Pokerai API proporciona los datos de estrategia deterministas; cualquier entrenador o LLM puede explicar esas frecuencias devueltas, pero no sustituye al solver. Ese ciclo — situación → estrategia → evaluación — es todo el entrenador, una calle a la vez.

Uso aceptable

Acepte entradas solo de escenarios de entrenamiento controlados o manos que ya hayan terminado. Mantenga la evaluación, orientación o resultados de producto de alto impacto revisables por una persona. Pokerai API es para entrenamiento, orientación, revisión de manos, estudio e investigación. Se prohíbe la asistencia en tiempo real en mesas con dinero real.

Siguiente — Parte 2: la cuadrícula de rangos de 13×13

Obtén un rango completo en una sola llamada y renderízalo, como las páginas de rangos. Próximamente.

Recursos relacionados