Todos los artículos
Datos de mercadoMercados Up/DownBTCETH

Mercados Up/Down de Polymarket: slugs, resolución y el precipicio del libro de órdenes

Los mercados cripto Up/Down de Polymarket son los instrumentos de mayor frecuencia de la plataforma y de los más incomprendidos. Así se decodifica un slug, esto es lo que determina la resolución y esto es exactamente lo que conserva Polymarket cuando un mercado cierra.

10 min de lecturaActualizado el 24 de septiembre de 2026

Los mercados cripto Up/Down de Polymarket se liquidan cada cinco minutos, funcionan las 24 horas y mueven un volumen serio: el mercado BTC de cinco minutos que usamos como ejemplo más abajo negoció $638,615. Son lo más parecido a un instrumento de alta frecuencia que tienen los mercados de predicción.

También son los mercados más difíciles de estudiar de la plataforma, por un motivo que no tiene nada que ver con su diseño y sí con lo que les pasa después de cerrar. Este artículo cubre las tres partes: leer los slugs, entender la resolución y qué sobrevive a ella.

Cómo decodificar el slug

Cada mercado Up/Down tiene un slug con un formato fijo y totalmente predecible:

{coin}-updown-{timeframe}-{unix_start}

btc-updown-5m-1775181000
│   │      │   └── Unix timestamp: window START, in UTC
│   │      └────── Timeframe: 5m | 15m | 1h | 4h | 24h
│   └───────────── Always "updown"
└───────────────── Coin: btc | eth | sol | xrp | doge | bnb

Ese entero final es la parte útil. Es la marca de tiempo Unix del momento en que se abre la ventana de negociación, en UTC. Decodifícalo y sabrás exactamente qué cinco minutos cubre el mercado:

from datetime import datetime, timezone

slug = "btc-updown-5m-1775181000"
coin, _, timeframe, ts = slug.split("-")

start = datetime.fromtimestamp(int(ts), tz=timezone.utc)
print(coin.upper(), timeframe, start)
# BTC 5m 2026-04-03 01:50:00+00:00

# The market's own title renders this in US Eastern:
# "Bitcoin Up or Down - April 2, 9:50PM-9:55PM ET"

Como el formato es determinista, puedes construir los slugs en lugar de buscarlos. Cada mercado BTC de 5m empieza en un límite de cinco minutos, así que el slug de cualquier ventana es btc-updown-5m- más la marca de tiempo Unix de ese límite. Si tienes un slug y quieres saber su resultado, pégalo en la búsqueda de mercados.

No te fíes del campo startDate

Esto confunde a casi todo el que procesa estos mercados. El startDate de la API en btc-updown-5m-1775181000 es 2026-04-02T01:58:12Z, 24 horas antes de la ventana de negociación. Ese campo registra cuándo se creó el objeto del mercado, no cuándo se abre la ventana. La marca de tiempo del slug es el inicio real; endDate (2026-04-03T01:55:00Z) es el cierre real. Fíjate en que endDate es exactamente la marca de tiempo del slug más 300 segundos.

Cómo funciona la resolución

La mecánica es simple a propósito. El mercado pregunta si el precio de la moneda al cierre de la ventana es más alto que en la apertura. Dos resultados, Up y Down, y uno de ellos se liquida a $1.

CampoValor para btc-updown-5m-1775181000
questionBitcoin Up or Down - April 2, 9:50PM-9:55PM ET
outcomes["Up", "Down"]
outcomePrices["0", "1"]: ganó Down
endDate2026-04-03T01:55:00Z
volumeNum638,615
spread0.01
umaResolutionStatusresolved
Valores en vivo obtenidos de la API Gamma. outcomePrices es la forma de leer el ganador después de la liquidación.

Algunas consecuencias de este diseño que importan a cualquiera que modele estos mercados:

  • Los empates se resuelven Down. La pregunta es si el cierre es más alto que la apertura. No ser más alto, incluido ser exactamente igual, es Down. En una ventana de 5 minutos esto es raro pero no despreciable, e introduce una pequeña asimetría estructural que un modelo ingenuo de cara o cruz pasa por alto.
  • La resolución usa un TWAP de Chainlink, no un snapshot. Desde el 7 de agosto de 2026, los mercados cripto Up/Down se liquidan con una media ponderada por tiempo en lugar de con un único precio al cierre, y desde el 14 de agosto todos los mercados de 5 minutos usan una ventana de 60 segundos (fue de 30 segundos la semana intermedia). Tanto el precio a batir como el de liquidación salen de ese TWAP. Esto cambia mucho el final: un pico en los últimos diez segundos apenas mueve una media de 60 segundos, así que las reversiones de última hora son mucho más débiles de lo que parecen en un gráfico del spot.
  • La probabilidad se comprime con fuerza al acercarse el vencimiento. Con sesenta segundos por delante y la moneda plana, ambos lados convergen hacia 50¢ y el spread decide. Con diez segundos por delante tras un movimiento decisivo, un lado está clavado en 97–99¢ y casi no queda nada que negociar.
  • El spread lo es todo. Un spread cotizado de 0.01 en un mercado que paga $1 es un coste de ida y vuelta del 1% sobre un resultado binario. La mayoría de las estrategias que parecen rentables con el precio medio no lo son después de cruzarlo; más abajo lo explicamos.

Si construiste algo antes de agosto, vuelve a revisarlo

Llegaron tres cambios de liquidación en cinco semanas: la resolución por TWAP el 7 de agosto (ventana de 30s para los mercados de 5m), el paso a una ventana de 60 segundos el 14 de agosto y el retraso del taker en los mercados cripto, que pasó de 250ms → 50ms el 17 de agosto y luego de 50ms → 150ms el 4 de septiembre. Cualquier modelo calibrado con el comportamiento anterior a agosto está calibrado con otro instrumento.

Por qué los mercados de 5m son estructuralmente distintos

En un mercado BTC de 24 horas, importan los fundamentales y el flujo. En un mercado de 5 minutos, negocias microestructura: el flujo de órdenes, el tick del feed de referencia y la forma del libro en los últimos segundos. Las estrategias no se trasladan entre intervalos, y probar con datos de 24h no te dice nada sobre el comportamiento de 5m. Trátalos como instrumentos distintos que casualmente comparten una convención de nombres.

Qué conserva Polymarket después de que un mercado se resuelve

Esto decide si puedes investigar estos mercados o no. Polymarket conserva el registro del mercado y una serie de precios escasa después de la resolución. No conserva el libro de órdenes. Revisamos seis mercados BTC de 5 minutos resueltos el 29 de septiembre de 2026, con antigüedades desde 4 días hasta unos seis meses.

Corrección, 29 de septiembre de 2026

Una versión anterior de este artículo decía que prices-history devuelve un array vacío después de la resolución. Eso era cierto para la única solicitud que hicimos (interval=max en un mercado de seis meses) y falso como afirmación general. Con un inicio y un fin explícitos, devuelve los puntos que conserva Polymarket. Lo dicho sobre el libro de órdenes no cambia y se cumplió en todos los mercados que probamos.

TOK=<token_id_of_a_resolved_market>
START=1790466900          # the number at the end of btc-updown-5m-1790466900
END=$((START + 300))

# 1. The order book: gone, at every age we tried.
curl -s "https://clob.polymarket.com/book?token_id=$TOK"
# {"error":"No orderbook exists for the requested token id"}     HTTP 404

# 2. The price series: thin, but there if you give it a window.
curl -s "https://clob.polymarket.com/prices-history?market=$TOK&startTs=$START&endTs=$END&fidelity=1"
# {"history":[{"t":...,"p":0.365}, ...]}          6 points for this 5-minute market

# 3. The same call with interval=max: empty for the six-month-old market we tried.
curl -s "https://clob.polymarket.com/prices-history?market=$TOK&interval=max&fidelity=1"
# {"history":[]}                                                  HTTP 200

Así que la serie de precios no ha desaparecido, pero es escasa. Para btc-updown-5m-1790466900, Polymarket devolvió seis puntos, entre 11 y 316 segundos después de abrirse la ventana, y al último minuto le tocó uno. PolyTest guarda 2,552 snapshots del mismo mercado, aproximadamente uno cada 0.12 segundos, cada uno con el libro de ambos lados. Un precio por minuto basta para ver quién ganó y, más o menos, cuándo se movió el precio. No puede decirte a qué precio se habría ejecutado una orden de 500 acciones, y apenas cubre el último minuto, que es donde se deciden estos mercados.

La Data API más reciente de Polymarket tiene una segunda ruta, GET /v2/prices-history, que devuelve agrupaciones de 60 segundos. En nuestra prueba tenía datos de mercados de hasta 8 días de antigüedad y nada para mercados de 15 días o más, así que no sustituye a un archivo.

Lo que quieres¿Disponible después de la resolución?
Metadatos del mercado (pregunta, resultado, volumen)Sí, mediante ?closed=true
Qué lado ganóSí, outcomePrices
Serie de precios durante la ventanaSí, aproximadamente un punto por minuto, con un inicio y un fin explícitos
Profundidad del libro de órdenes en cualquier momentoNo, 404 en todas las antigüedades que probamos
A qué precio se habría ejecutado tu ordenNo

Un precio por minuto no es un libro

Puedes saber que ganó Down y, más o menos, cómo se movió el precio minuto a minuto. No puedes saber qué había en reposo en cada lado del libro en ningún momento, y todas las preguntas sobre ejecución dependen de eso. Una serie de precios basta para las tasas base y un gráfico aproximado. No basta para hacer backtesting de una estrategia que paga un spread.

Por qué las tasas base no bastan

Un instinto habitual a estas alturas: si los resultados se pueden recuperar, ¿por qué no estudiar simplemente las frecuencias de resolución? Contar cuántas veces se resolvió Up el BTC de 5m en los últimos mil mercados, encontrar un sesgo y operarlo.

El problema es que cualquier sesgo así se incorpora a la cotización mucho antes de que lo veas. Si los mercados SOL de 5m se resolvieron Up el 52% de las veces el mes pasado, los creadores de mercado lo saben, y Up abre a 52¢. La tasa base no es una ventaja; ya está en el precio. Lo que necesitarías para encontrar una ventaja es justo lo que Polymarket no conserva: cómo estaba el libro cuando el precio era incorrecto.

Esta es la razón honesta por la que las estrategias Up/Down son difíciles de validar. No es que los mercados sean eficientes: es que la evidencia necesaria para comprobarlo en un sentido u otro no está en la API.

Grabar lo que Polymarket no conserva

La única forma de sortear un libro de órdenes que falta es haberlo grabado mientras el mercado estaba activo. Eso es lo que hace PolyTest: snapshots puntuales continuos de los mercados cripto Up/Down de Polymarket, capturados mientras están activos y conservados después de resolverse: 240M+ snapshots con 8 niveles de profundidad del libro por lado y marcas de tiempo por debajo del segundo.

MonedaIntervalos
BTC5m · 15m · 1h · 4h · 24h
ETH5m · 15m · 1h
SOL5m · 15m · 1h
XRP · DOGE · BNBRecopilando ahora; muy pronto
import os, requests

BASE = "https://api.polytest.io/api/v1"
H = {"X-API-Key": os.environ["POLYTEST_KEY"]}

# Resolved markets are still here — that is the whole point.
markets = requests.get(f"{BASE}/markets",
                       params={"coin": "sol", "market_type": "5m", "limit": 50},
                       headers=H).json()["markets"]

for m in markets:
    snaps = requests.get(f"{BASE}/markets/{m['id']}/snapshots",
                         params={"include_orderbook": "true"},
                         headers=H).json()["snapshots"]

    # The final minute is where 5m markets are actually decided.
    endgame = snaps[-12:]
    for s in endgame:
        print(m["slug"], s["timestamp"], s["midPrice"], s["spread"])

Tres cosas que vale la pena probar

  1. ¿Tu ventaja sobrevive al spread? Vuelve a ejecutar cualquier resultado prometedor con el ask real que habrías tomado en lugar del precio medio. Con un spread de 1¢ en un mercado de $1, esto convierte con frecuencia una estrategia ganadora en perdedora. Hazlo primero: descarta la mayoría de las ideas sin gastar mucho.
  2. ¿Cómo se comporta la profundidad en los últimos 60 segundos? Los mercados Up/Down se vacían de forma drástica cerca del vencimiento. Un tamaño que se ejecuta con 3 minutos por delante puede no ejecutarse a 30 segundos, y eso es invisible en cualquier serie de precio medio.
  3. ¿Algo se traslada entre monedas? Los mercados de 5m de BTC, ETH y SOL comparten diseño, pero no perfil de liquidez. Una estrategia ajustada con el libro de BTC a menudo se viene abajo con el de SOL, más fino, y eso conviene saberlo antes de financiarla, no después.

La guía de backtesting trata la simulación de ejecuciones con más detalle, y hay una prueba gratuita de 3 días si quieres revisar los datos antes de comprometerte con nada.

Preguntas frecuentes

¿Qué significa el formato de slug btc-updown-5m?
Los slugs Up/Down de Polymarket siguen el patrón {coin}-updown-{timeframe}-{unix_start}. En btc-updown-5m-1775181000, btc es la moneda, 5m es la duración de la ventana y 1775181000 es la marca de tiempo Unix del momento en que se abre la ventana de negociación en UTC; en este caso, 2026-04-03 01:50:00 UTC, que aparece en el título del mercado como April 2, 9:50PM-9:55PM ET. El formato es determinista, así que los slugs se pueden construir en lugar de buscarlos.
¿Cómo se resuelven los mercados Up/Down de Polymarket?
El mercado se resuelve Up si el precio de referencia de la moneda al cierre de la ventana es más alto que en la apertura, y Down en caso contrario. Como la condición es estrictamente más alto, un cierre exactamente plano se resuelve Down. Desde el 7 de agosto de 2026, los precios de apertura y cierre salen de una media ponderada por tiempo de Chainlink en lugar de un único precio, y desde el 14 de agosto los mercados de 5 minutos usan una ventana de 60 segundos. La diferencia entre tu propio feed de datos y esa media importa cerca del límite.
¿Por qué está mal el startDate de un mercado Up/Down de Polymarket?
No está mal, pero no significa lo que la gente supone. El campo startDate registra cuándo se creó el objeto del mercado, lo que puede ser un día o más antes de que empiece la negociación. Para btc-updown-5m-1775181000, el startDate es 2026-04-02T01:58:12Z, mientras que la ventana se abre en realidad a las 2026-04-03T01:50:00Z. Usa la marca de tiempo Unix del slug para el inicio de la ventana y endDate para el cierre.
¿Puedo obtener datos históricos de mercados Up/Down de Polymarket ya resueltos?
No desde la API de Polymarket. Solo en parte. Polymarket devuelve 404 para el libro de órdenes de un mercado resuelto. Conserva el registro del mercado (resultado y volumen, con closed=true) y una serie de precios de aproximadamente un punto por minuto, que se obtiene con un inicio y un fin explícitos; interval=max devuelve una lista vacía para los mercados más antiguos. No hay profundidad del libro, así que no puedes simular ejecuciones. Hacer backtesting de la ejecución requiere snapshots grabados mientras el mercado estaba activo.
¿Qué monedas tienen mercados Up/Down en Polymarket?
BTC tiene la cobertura más completa, con ventanas de 5m, 15m, 1h, 4h y 24h. ETH y SOL funcionan en 5m, 15m y 1h. XRP, DOGE y BNB son incorporaciones más recientes con una cobertura más limitada. La liquidez varía mucho entre monedas, así que una estrategia calibrada con el libro de BTC a menudo no se traslada al de SOL, más fino.

Obtén los datos históricos que Polymarket no guarda

PolyTest registra los mercados cripto Up/Down de Polymarket mientras están activos: 240M+ snapshots con 8 niveles de profundidad del libro de órdenes, marcas de tiempo por debajo del segundo y mercados resueltos conservados. Empieza con una prueba gratuita de 3 días.

Sigue leyendo