Monete classificate per profondità del book degli ordini
Monete classificate per profondità aggregata del book degli ordini (bid + ask) entro una fascia, con il numero di contratti inclusi e lo spread più stretto.
/api/sd/liquidity/rankRichiesta
Parametri di query
| Nome | Tipo | Obbligatorio | Predefinito | Valori ammessi | Descrizione |
|---|---|---|---|---|---|
| market | string | Facoltativo | perp | perp, spot | Tipo di mercato. I book dei perpetui e quelli spot non vengono mai sommati. |
| band | string | Facoltativo | 1 | 0.5, 1, 2 | Distanza dal prezzo mid in percentuale. |
| limit | integer | Facoltativo | 50 | ≥ 1 · ≤ 200 | Numero di righe. |
Richiesta di esempio
curl -s "https://www.coinboss.com/api/sd/liquidity/rank"Campi della risposta
La tabella dei campi è generata da risposte reali, quindi elenca esattamente ciò che l'endpoint restituisce. I percorsi usano a[] per gli elementi di un array e {*} per gli oggetti indicizzati da un nome dinamico, come una moneta o un exchange.
| Campo | Tipo | Unità | Descrizione |
|---|---|---|---|
| success | boolean | — | true quando la richiesta è riuscita. In caso di errore il corpo è `{ success: false, code, error, request_id }`. |
| schema | string | — | ID dello schema di questa risposta. Cambia solo quando un campo esistente cambia significato o tipo. |
| now | number | ms | Ora del server al momento della composizione della risposta. |
| market | string | — | `perp` o `spot`. |
| band_pct | number | % | Fascia selezionata: distanza dal prezzo mid. |
| limit | number | — | Limite di righe applicato. |
| total_coins | number | — | Monete che hanno almeno una riga del book degli ordini. |
| rows | array | — | Una riga per moneta. |
| rows[] | object | — | Una riga per moneta. |
| rows[].coin | string | — | Simbolo della moneta (in maiuscolo). |
| rows[].bid_depth_usd | number | USD | Nozionale degli ordini bid in attesa tra il prezzo mid e il bordo inferiore della fascia. Un limite inferiore quando `complete` è false. |
| rows[].ask_depth_usd | number | USD | Nozionale degli ordini ask in attesa tra il prezzo mid e il bordo superiore della fascia. Un limite inferiore quando `complete` è false. |
| rows[].total_depth_usd | number | USD | Profondità bid + profondità ask della fascia, usata solo come chiave di classifica. |
| rows[].n_included | number | — | Righe incluse nella somma della profondità: aggiornate e complete per la fascia. Va letto insieme al valore di profondità. |
| rows[].n_fresh | number | — | Righe aggiornate. |
| rows[].n_rows | number | — | Righe trovate, comprese quelle obsolete. |
| rows[].mid_median | number | USD | Mediana del prezzo mid delle righe aggiornate. |
| rows[].spread_bps_min | number | bp | Spread più stretto tra le righe aggiornate. |
| rows[].included_exchanges | array | — | Fonti i cui dati aggiornati sono inclusi. |
| rows[].included_exchanges[] | string | — | Fonti i cui dati aggiornati sono inclusi. |
| rows[].uses_aggregated_buckets | boolean | — | True quando una riga inclusa ha usato bucket aggregati per prezzo, il che rende la somma un limite inferiore. |
| rows[].rank | number | — | Posizione in classifica; `null` quando la riga non ha un valore da classificare. |
| coverage | object | — | Che cosa è incluso e che cosa non è incluso nei numeri. Confrontare questo dato prima di confrontare i totali con un'altra fonte. |
| coverage.included_exchanges | array | — | Fonti i cui dati aggiornati sono inclusi. |
| coverage.included_exchanges[] | string | — | Fonti i cui dati aggiornati sono inclusi. |
| coverage.unavailable | array | — | Fonti che non è stato possibile includere, ciascuna con il motivo. Non vengono mai conteggiate come 0. vuoto nei campioni usati per generare questa tabella |
| coverage.stale_excluded | array | — | Righe escluse perché il loro ultimo aggiornamento è fuori dalla finestra di freschezza. |
| coverage.stale_excluded[] | object | — | Righe escluse perché il loro ultimo aggiornamento è fuori dalla finestra di freschezza. |
| coverage.stale_excluded[].exchange | string | — | ID dell'exchange (in minuscolo). |
| coverage.stale_excluded[].age_s | number | s | Secondi trascorsi dalla ricezione della riga. |
| coverage.n_fresh_rows | number | — | Righe aggiornate su tutte le monete. |
| coverage.n_stale_rows | number | — | Righe obsolete su tutte le monete. |
| coverage.n_incomplete_rows | number | — | Righe aggiornate la cui istantanea non raggiunge il bordo della fascia. |
| method | object | — | Enunciato in testo semplice delle formule usate per questa risposta, una voce per campo. |
| method.bid_depth_usd | string | — | Nota sulla formula di `bid_depth_usd`, in testo semplice. |
| method.ask_depth_usd | string | — | Nota sulla formula di `ask_depth_usd`, in testo semplice. |
| method.complete | string | — | Nota sulla formula di `complete`, in testo semplice. |
| method.aggregate | string | — | Nota sulla formula di `aggregate`, in testo semplice. |
| method.fresh | string | — | Nota sulla formula di `fresh`, in testo semplice. |
| method.rank | string | — | Nota sulla formula di `rank`, in testo semplice. |
| meta | object | — | Provenienza e freschezza di questa risposta. |
| meta.schema | string | — | ID dello schema di questa risposta. Cambia solo quando un campo esistente cambia significato o tipo. |
| meta.source | array | — | Endpoint pubblici a monte da cui sono stati raccolti i dati. |
| meta.source[] | object | — | Endpoint pubblici a monte da cui sono stati raccolti i dati. |
| meta.source[].exchange | string | — | ID dell'exchange (in minuscolo). |
| meta.source[].market | string | — | `perp` o `spot`. |
| meta.source[].endpoint | string | — | Endpoint pubblico della fonte letto dal collector (mostrato a scopo di provenienza; i client non lo chiamano mai). |
| meta.observed_at | number | ms | Timestamp indicato dalla fonte per i dati. |
| meta.received_at | number | ms | Ora in cui il collector di CoinBoss ha ricevuto i dati. |
| meta.fetched_at | number | ms | Ora in cui questa risposta è stata composta. |
| meta.window | string | — | Finestra temporale coperta dai numeri. |
| meta.quality | string | — | FRESH, PARTIAL, STALE, BROKEN o UNAVAILABLE, valutato dai timestamp dei dati e dalla copertura. |
| meta.is_stale | boolean | — | True quando i dati sono più vecchi della loro finestra di freschezza. |
| meta.cache_ttl_s | number | s | Durata in cache di questa risposta. |
| meta.fallback | string | — | Che cosa restituisce l'endpoint quando il collector o una fonte non funziona. |
| meta.collector_heartbeat_age_s | number | s | Secondi trascorsi dall'ultima volta in cui il collector ha segnalato di essere in esecuzione. |
Generata 2026-11-11 23:00 UTC da 3 risposte reali.
Risposta di esempio
/api/sd/liquidity/rank · Risposta reale acquisita 2026-11-13 04:02:46 UTC. Array e mappe lunghi sono abbreviati per la visualizzazione: rows conteneva 50 elementi; meta.source conteneva 23 elementi; coverage.stale_excluded conteneva 23 elementi; rows[].included_exchanges conteneva 19 elementi; coverage.included_exchanges conteneva 23 elementi.
- "success"true
- "schema""coinboss.sd.liquidity/1"
- "now"1794542566023
- "market""perp"
- "band_pct"1
- "limit"50
- "total_coins"89
- "rows"
- "coverage"
- "included_exchanges"
- "unavailable"
- "stale_excluded"
- "n_fresh_rows"1481
- "n_stale_rows"82
- "n_incomplete_rows"8
- "method"
- "bid_depth_usd""sum of resting bid notional with price >= mid * (1 - band%), in USD; notional = price * size * contract_value (inverse contracts: size * contract_value); USDT /…"
- "ask_depth_usd""sum of resting ask notional with price <= mid * (1 + band%), in USD; same notional rule as bid_depth_usd"
- "complete""true when BOTH sides of the snapshot reach the band edge (reach_pct >= band) or the whole side of the book was returned; when false the depth values are lower b…"
- "aggregate""per market and band: sum over rows that are fresh AND complete for that band; n_included / n_fresh is the denominator; lower_bound_* additionally adds the incom…"
- "fresh""a row is fresh when now - received_at <= max(3 * period_s, 300s); stale rows are listed in coverage.stale_excluded; rows older than 24h are dropped"
- "rank""coins ordered by bid_depth_usd + ask_depth_usd of the chosen market and band, aggregated as in aggregate; coins with no fresh complete row carry nulls and sort …"
- "meta"
- "schema""coinboss.sd.liquidity/1"
- "source"
- "observed_at"1794542565862
- "received_at"1794542565977
- "fetched_at"1794542566023
- "window""latest"
- "quality""PARTIAL"
- "is_stale"false
- "cache_ttl_s"30
- "fallback""stale rows (older than max(3 * period_s, 300s)) are left out; coins whose rows are all stale or incomplete keep their place in the list with null depth"
- "collector_heartbeat_age_s"4
Campioni verificati
Oltre all'esempio qui sopra, la sonda chiama questo endpoint con i parametri seguenti e ogni volta ne verifica lo schema.
| Parametri | HTTP | Latenza | Risultato |
|---|---|---|---|
| market=spot | 200 | 5 ms | Superato PARTIAL |
| band=0.5&limit=10 | 200 | 7 ms | Superato PARTIAL |
| limit=0 | 400 | 2 ms | Superato restituisce l'errore previsto |
Verificato 2026-11-13 03:58:06 UTC
Dettagli
- Autenticazione
- Nessuna. Endpoint pubblico.
- Limite di richieste
- 1200 richieste al minuto per IP
- Cache del server
- 30s
- Micro-cache edge
- 10s
- Frequenza di aggiornamento
- Stesso ciclo di raccolta di `/api/sd/liquidity`.
- Finestra
- Ultima istantanea per contratto.
- Fonti dei dati
- Istantanee REST pubbliche del book degli ordini di 24 exchange (mercati perpetui e spot), raccolte e archiviate da CoinBoss (sd_book_latest, sd_book_hist). Profondità e slippage sono calcolati da CoinBoss a partire dai livelli di prezzo grezzi.
- Copertura degli exchange
- 24 exchange, 38 combinazioni exchange × mercato. Quando un'istantanea pubblica non raggiunge ±0.5 / 1 / 2 % dal prezzo mid (limite di livelli dell'exchange), quella fascia è contrassegnata con `complete: false`, il suo valore è un limite inferiore ed è esclusa dall'aggregato; `n_included` / `n_fresh` indicano il denominatore e `excluded_incomplete` elenca ciò che è stato escluso.
- Paginazione
- Nessuna paginazione; `limit` fissa il numero massimo di righe (max 200).
- Ordinamento
- `total_depth_usd` decrescente; le monete prive di righe complete e aggiornate vengono per ultime con `rank: null`.
- Unità
- Depth in USD notional, bid and ask side reported separately and never added. Spread and slippage in basis points (1 bp = 0.01 %). USDT / USDC / USD quotes are counted 1:1 as USD.
- Timestamp
- Millisecondi dall'epoca Unix (UTC), salvo diversa indicazione nella descrizione del campo
- Formato della risposta
- json
- Stabilità
- Stabile
- Disponibile dal
- 2026-11-11
Stato in tempo reale
L'endpoint segnala una qualità dei dati PARTIAL
Disponibilità, ultimi 30 giorni
100% di 408 verifiche superate
Errori
Le chiamate non riuscite hanno la stessa struttura su tutti gli endpoint. L'elenco completo è nella pagina degli errori. Errori e limiti di richieste →
| Codice | HTTP | Significato | Che cosa fare |
|---|---|---|---|
| INVALID_PARAM | 400 | Manca un parametro obbligatorio oppure un valore non è accettato. `param` indica il nome del parametro quando è noto. | Non riprovare senza modifiche; correggere la richiesta. |
| UNAUTHORIZED | 401 | L'header `CB-API-KEY` è stato inviato ma la chiave è sconosciuta o revocata. I dati pubblici non richiedono alcuna chiave: rimuovere l'header o usare una chiave valida. | Non riprovare senza modifiche. |
| FORBIDDEN | 403 | La route non fa parte dell'API pubblica (interna o riservata agli account). | Non riprovare. |
| NOT_FOUND | 404 | Route sconosciuta, oppure la moneta / l'exchange / il fondo richiesto non esiste. | Non riprovare; verificare il percorso e gli identificatori nel catalogo. |
| RATE_LIMITED | 429 | Più richieste del limite al minuto. `Retry-After` indica i secondi da attendere. | Attendere `Retry-After`, poi riprovare con backoff. |
| INTERNAL | 500 | Errore imprevisto del server. Il messaggio è volutamente generico; citare `request_id` quando lo si segnala. | Riprovare una volta dopo qualche secondo; se persiste, segnalarlo con l'ID della richiesta. |
| UPSTREAM_FAILED | 503 | La fonte di dati alla base di questo endpoint non ha risposto in tempo. Al suo posto non vengono restituiti numeri obsoleti o sostitutivi. | Riprovare con backoff; controllare la pagina di stato. |
| UNAVAILABLE | 501 / 503 | Il dataset è temporaneamente non pronto (riscaldamento della cache) oppure l'endpoint non ha ancora una fonte pubblica lecita. | Riprovare più tardi; il catalogo contrassegna gli endpoint non disponibili per scelta progettuale. |
| REQUEST_FAILED | 200 | Alcuni endpoint meno recenti rispondono HTTP 200 con `success: false`. Controllare sempre `success`, non solo lo stato HTTP. | Dipende dal messaggio; trattare come una richiesta non riuscita. |
Prova
/api/sd/liquidity/rankParzialestring · predefinito perp — Market type. Perpetual and spot books are never added together.
string · predefinito 1 — Distance from mid price in percent.
integer · predefinito 50 · min 1 · max 200 — Number of rows.
https://www.coinboss.com/api/sd/liquidity/rankAltro in questa categoria
- Profondità del book degli ordini e slippage /api/sd/liquidity
- Storico della profondità del book degli ordini /api/sd/liquidity/history
- Monete classificate per profondità del book degli ordini /api/sd/liquidity/rank
- Monitor dei grandi ordini in attesa /api/indicators/large-orderbook