Tutti gli articoli
Dati di mercatoMercati Up/DownBTCETH

Mercati Up/Down di Polymarket: slug, risoluzione e il precipizio dell’order book

I mercati crypto Up/Down di Polymarket sono gli strumenti a più alta frequenza della piattaforma, e tra i più fraintesi. Ecco come decodificare uno slug, cosa determina la risoluzione e cosa conserva esattamente Polymarket quando un mercato chiude.

10 min di letturaAggiornato il 24 settembre 2026

I mercati crypto Up/Down di Polymarket si regolano ogni cinque minuti, sono attivi giorno e notte e muovono volumi importanti: il singolo mercato BTC a cinque minuti usato come esempio qui sotto ha scambiato $638,615. Sono la cosa più vicina a uno strumento ad alta frequenza che abbiano i mercati di previsione.

Sono anche i mercati più difficili da studiare sulla piattaforma, per un motivo che non ha nulla a che fare con il loro design e tutto a che fare con ciò che succede loro dopo la chiusura. Questo articolo copre tutte e tre le parti: leggere gli slug, capire la risoluzione e cosa sopravvive dopo.

Decodificare lo slug

Ogni mercato Up/Down ha uno slug con un formato fisso e del tutto prevedibile:

{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

La parte utile è l’intero finale. È il timestamp Unix del momento in cui la finestra di trading si apre, in UTC. Decodificalo e sai esattamente quali cinque minuti copre il mercato:

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"

Poiché il formato è deterministico, puoi costruire gli slug invece di cercarli. Ogni mercato BTC 5m inizia su un confine di cinque minuti, quindi lo slug di qualsiasi finestra è btc-updown-5m- più il timestamp Unix di quel confine. Se hai uno slug e vuoi conoscerne l’esito, incollalo nella ricerca mercati.

Non fidarti del campo startDate

Questo inganna quasi tutti quelli che analizzano questi mercati. Lo startDate dell’API su btc-updown-5m-1775181000 è 2026-04-02T01:58:12Z, ben 24 ore prima della finestra di trading. Quel campo registra quando l’oggetto del mercato è stato creato, non quando si apre la finestra. Il timestamp dello slug è il vero inizio; endDate (2026-04-03T01:55:00Z) è la vera chiusura. Nota che endDate è esattamente il timestamp dello slug più 300 secondi.

Come funziona la risoluzione

I meccanismi sono volutamente semplici. Il mercato chiede se il prezzo della moneta alla chiusura della finestra è più alto che all’apertura. Due esiti, Up e Down, e uno dei due si regola a $1.

CampoValore per btc-updown-5m-1775181000
questionBitcoin Up or Down - April 2, 9:50PM-9:55PM ET
outcomes["Up", "Down"]
outcomePrices["0", "1"]: ha vinto Down
endDate2026-04-03T01:55:00Z
volumeNum638,615
spread0.01
umaResolutionStatusresolved
Valori live ottenuti dall’API Gamma. outcomePrices è il modo in cui leggi il vincitore dopo il regolamento.

Alcune conseguenze di questo design che contano per chiunque modelli questi mercati:

  • I pareggi si risolvono Down. La domanda è se la chiusura è più alta dell’apertura. Non più alta, compreso esattamente uguale, significa Down. Su una finestra di 5 minuti è raro ma non trascurabile, e introduce una piccola asimmetria strutturale che un modello ingenuo a testa o croce non coglie.
  • La risoluzione si basa su un TWAP di Chainlink, non su uno snapshot. Dal 7 agosto 2026 i mercati crypto Up/Down si regolano su una media ponderata nel tempo invece che su un singolo prezzo alla campanella, e dal 14 agosto tutti i mercati a 5 minuti usano una finestra di 60 secondi (nella settimana intermedia era di 30 secondi). Sia il price to beat sia il prezzo di regolamento vengono da quel TWAP. Questo cambia sostanzialmente il finale: un picco negli ultimi dieci secondi muove a malapena una media su 60 secondi, quindi le inversioni tardive sono molto più deboli di quanto sembrino su un grafico spot.
  • La probabilità si comprime molto all’avvicinarsi della scadenza. Con sessanta secondi rimasti e la moneta ferma, entrambi i lati convergono verso 50¢ e decide lo spread. Con dieci secondi rimasti dopo un movimento netto, un lato è bloccato a 97–99¢ e non resta quasi nulla da scambiare.
  • Lo spread è tutto. Uno spread quotato di 0.01 su un mercato che paga $1 è un costo di andata e ritorno dell’1% su un esito binario. La maggior parte delle strategie che sembrano redditizie sul prezzo medio non lo sono più dopo averlo attraversato: vedi sotto.

Se hai costruito qualcosa prima di agosto, ricontrollalo

In cinque settimane sono arrivate tre modifiche al regolamento: la risoluzione su TWAP il 7 agosto (finestra di 30s per i mercati 5m), il passaggio a una finestra di 60 secondi il 14 agosto e il ritardo per i taker sui mercati crypto passato da 250ms a 50ms il 17 agosto e poi da 50ms a 150ms il 4 settembre. Qualsiasi modello calibrato sul comportamento precedente ad agosto è calibrato su uno strumento diverso.

Perché i mercati 5m sono strutturalmente diversi

Su un mercato BTC a 24 ore contano i fondamentali e i flussi. Su un mercato a 5 minuti stai facendo trading sulla microstruttura: flusso degli ordini, il tick del feed di riferimento e la forma del book negli ultimi secondi. Le strategie non si trasferiscono tra timeframe, e testare su dati a 24h non ti dice nulla sul comportamento a 5m. Trattali come strumenti diversi che condividono per caso una convenzione di nomi.

Cosa conserva Polymarket dopo che un mercato si risolve

Questo decide se puoi fare ricerca su questi mercati. Dopo la risoluzione Polymarket conserva il record del mercato e una serie di prezzi ridotta. Non conserva l’order book. Il 29 settembre 2026 abbiamo controllato sei mercati BTC a 5 minuti risolti, con un’età da 4 giorni a circa sei mesi.

Correzione, 29 settembre 2026

Una versione precedente di questo articolo diceva che prices-history restituisce un array vuoto dopo la risoluzione. Era vero per l’unica richiesta che avevamo fatto (interval=max su un mercato di sei mesi) e sbagliato come affermazione generale. Con un inizio e una fine espliciti restituisce i punti che Polymarket conserva. L’affermazione sull’order book resta invariata e si è confermata per ogni mercato che abbiamo provato.

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

Quindi la serie dei prezzi non è sparita, ma è ridotta. Per btc-updown-5m-1790466900 Polymarket ha restituito sei punti, da 11 a 316 secondi dopo l’apertura della finestra, e all’ultimo minuto ne è toccato uno. PolyTest conserva 2,552 snapshot dello stesso mercato, circa uno ogni 0.12 secondi, ciascuno con il book su entrambi i lati. Un prezzo al minuto basta per vedere chi ha vinto e, a grandi linee, quando si è mosso il prezzo. Non può dirti a che prezzo sarebbe stato eseguito un ordine da 500 quote, e copre a malapena l’ultimo minuto, quello in cui questi mercati si decidono.

La Data API più recente di Polymarket ha una seconda strada, GET /v2/prices-history, che restituisce intervalli da 60 secondi. Nel nostro test aveva dati per mercati fino a 8 giorni di età e nulla per mercati di 15 giorni o più, quindi non sostituisce un archivio.

Cosa vuoiDisponibile dopo la risoluzione?
Metadati del mercato (domanda, esito, volume)Sì, tramite ?closed=true
Quale lato ha vintoSì, outcomePrices
Serie dei prezzi nella finestraSì, circa un punto al minuto, con un inizio e una fine espliciti
Profondità dell’order book in qualsiasi momentoNo, 404 a ogni età che abbiamo provato
A che prezzo sarebbe stato eseguito il tuo ordineNo

Un prezzo al minuto non è un book

Puoi sapere che ha vinto Down, e a grandi linee come si è mosso il prezzo minuto per minuto. Non puoi sapere cosa c’era in attesa su ciascun lato del book in nessun momento, e ogni questione di esecuzione dipende da questo. Una serie di prezzi basta per i tassi di base e un grafico approssimativo. Non basta per fare backtest di una strategia che paga uno spread.

Perché i tassi di base non bastano

Un istinto comune a questo punto: se gli esiti si possono recuperare, perché non studiare semplicemente le frequenze di risoluzione? Conta quante volte il BTC 5m si è risolto Up negli ultimi mille mercati, trova uno sbilanciamento, fai trading su quello.

Il problema è che qualsiasi sbilanciamento del genere è già nel prezzo molto prima che tu lo veda. Se il mese scorso i mercati SOL 5m si sono risolti Up il 52% delle volte, i market maker lo sanno, e Up apre a 52¢. Il tasso di base non è un vantaggio; è già nel prezzo. Per trovare un vantaggio ti servirebbe proprio la cosa che Polymarket non conserva: com’era il book quando il prezzo era sbagliato.

Questo è il motivo onesto per cui le strategie Up/Down sono difficili da validare. Non è che i mercati siano efficienti: è che le prove necessarie per verificarlo, in un senso o nell’altro, non sono nell’API.

Registrare ciò che Polymarket non conserva

L’unico modo per aggirare un order book mancante è averlo registrato mentre il mercato era attivo. È quello che fa PolyTest: snapshot point-in-time continui dei mercati crypto Up/Down di Polymarket, acquisiti mentre sono attivi e conservati dopo la risoluzione: 240M+ snapshot con 8 livelli di profondità del book per lato e timestamp sotto il secondo.

MonetaTimeframe
BTC5m · 15m · 1h · 4h · 24h
ETH5m · 15m · 1h
SOL5m · 15m · 1h
XRP · DOGE · BNBRaccolta in corso, in arrivo
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"])

Tre cose che vale la pena testare

  1. Il tuo vantaggio sopravvive allo spread? Riesegui ogni risultato promettente usando l’ask reale che avresti preso invece del prezzo medio. Con uno spread di 1¢ su un mercato da $1, questo trasforma spesso una strategia vincente in una perdente. Fallo per primo: elimina la maggior parte delle idee a basso costo.
  2. Come si comporta la profondità negli ultimi 60 secondi? I mercati Up/Down si svuotano drasticamente vicino alla scadenza. Una size che viene eseguita a 3 minuti dalla fine potrebbe non esserlo a 30 secondi, e questo è invisibile in qualsiasi serie di prezzi medi.
  3. Qualcosa si trasferisce tra le monete? I mercati 5m su BTC, ETH e SOL condividono il design ma non il profilo di liquidità. Una strategia tarata sul book di BTC spesso va in pezzi su quello più sottile di SOL, ed è meglio saperlo prima di finanziarla, non dopo.

La guida al backtesting approfondisce la simulazione delle esecuzioni, e c’è una prova gratuita di 3 giorni se vuoi controllare i dati prima di impegnarti.

Domande frequenti

Cosa significa il formato dello slug btc-updown-5m?
Gli slug Up/Down di Polymarket seguono lo schema {coin}-updown-{timeframe}-{unix_start}. In btc-updown-5m-1775181000, btc è la moneta, 5m è la durata della finestra e 1775181000 è il timestamp Unix del momento in cui si apre la finestra di trading in UTC, in questo caso 2026-04-03 01:50:00 UTC, che nel titolo del mercato appare come April 2, 9:50PM-9:55PM ET. Il formato è deterministico, quindi gli slug si possono costruire invece di cercarli.
Come si risolvono i mercati Up/Down di Polymarket?
Il mercato si risolve Up se il prezzo di riferimento della moneta alla chiusura della finestra è più alto che all’apertura, e Down in caso contrario. Poiché il test è strettamente più alto, una chiusura esattamente invariata si risolve Down. Dal 7 agosto 2026 i prezzi di apertura e chiusura vengono da una media ponderata nel tempo di Chainlink invece che da un singolo prezzo, e dal 14 agosto i mercati a 5 minuti usano una finestra di 60 secondi. Vicino alla soglia conta la differenza tra il tuo feed di dati e quella media.
Perché lo startDate di un mercato Up/Down di Polymarket è sbagliato?
Non è sbagliato, ma non significa ciò che si pensa. Il campo startDate registra quando è stato creato l’oggetto del mercato, che può essere un giorno o più prima dell’apertura del trading. Per btc-updown-5m-1775181000 lo startDate è 2026-04-02T01:58:12Z, mentre la finestra si apre in realtà alle 2026-04-03T01:50:00Z. Usa il timestamp Unix dello slug per l’inizio della finestra ed endDate per la chiusura.
Posso ottenere dati storici dei mercati Up/Down di Polymarket già risolti?
Non dall’API di Polymarket. Solo in parte. Polymarket restituisce 404 per l’order book di un mercato risolto. Conserva il record del mercato (esito e volume, con closed=true) e una serie di prezzi di circa un punto al minuto, che ottieni con un inizio e una fine espliciti; interval=max restituisce una lista vuota per i mercati più vecchi. Non c’è profondità del book, quindi non puoi simulare le esecuzioni. Il backtesting dell’esecuzione richiede snapshot registrati mentre il mercato era attivo.
Quali monete hanno mercati Up/Down su Polymarket?
BTC ha la copertura più completa, con finestre da 5m, 15m, 1h, 4h e 24h. ETH e SOL sono disponibili su 5m, 15m e 1h. XRP, DOGE e BNB sono aggiunte più recenti con una copertura più ristretta. La liquidità varia molto tra le monete, quindi una strategia calibrata sul book di BTC spesso non si trasferisce a quello più sottile di SOL.

Ottieni i dati storici che Polymarket non conserva

PolyTest registra i mercati crypto Up/Down di Polymarket mentre sono attivi: 240M+ snapshot con 8 livelli di profondità dell’order book, timestamp sotto il secondo e mercati risolti conservati. Inizia con una prova gratuita di 3 giorni.

Continua a leggere