Historie der Orderbuchtiefe
Zeitreihe der aggregierten Bid- und Ask-Tiefe innerhalb eines Bands für einen Coin, für alle abgedeckten Börsen oder eine einzelne Börse. Jeder Punkt gibt an, wie viele Kontrakte er enthält.
/api/sd/liquidity/historyAnfrage
Query-Parameter
| Name | Typ | Erforderlich | Standard | Zulässige Werte | Beschreibung |
|---|---|---|---|---|---|
| coin | string | Erforderlich | — | — | Coin-Symbol, Groß-/Kleinschreibung wird nicht beachtet (zum Beispiel `BTC`). Fehlende oder fehlerhafte Werte liefern 400. Beispiel: BTC |
| market | string | Optional | perp | perp, spot | Markttyp. Perpetual- und Spot-Orderbücher werden nie zusammengerechnet. |
| band | string | Optional | 1 | 0.5, 1, 2 | Abstand vom Mittelkurs in Prozent. |
| range | string | Optional | 24h | 24h, 7d, 30d | Rückblickzeitraum: 24h (30-Minuten-Punkte), 7d (2-Stunden-Punkte) oder 30d (6-Stunden-Punkte). |
| exchange | string | Optional | — | — | Eine für diesen Markt abgedeckte Börsenkennung (zum Beispiel `gate`). Standard: alle Börsen. Eine nicht abgedeckte Börse liefert 400. |
Beispielanfrage
curl -s "https://www.coinboss.com/api/sd/liquidity/history?coin=BTC"Antwortfelder
Die Feldtabelle wird aus echten Antworten erzeugt und führt daher genau das auf, was der Endpunkt zurückgibt. In Pfaden steht a[] für Array-Elemente und {*} für Objekte, deren Schlüssel ein dynamischer Name ist, etwa ein Coin oder eine Börse.
| Feld | Typ | Einheit | Beschreibung |
|---|---|---|---|
| success | boolean | — | true, wenn die Anfrage erfolgreich war. Im Fehlerfall lautet der Body `{ success: false, code, error, request_id }`. |
| schema | string | — | Schema-ID dieser Antwort. Sie ändert sich nur, wenn ein bestehendes Feld seine Bedeutung oder seinen Typ ändert. |
| now | number | ms | Serverzeit beim Erstellen der Antwort. |
| coin | string | — | Coin-Symbol (Großbuchstaben). |
| market | string | — | `perp` oder `spot`. |
| band_pct | number | % | Ausgewähltes Band: Abstand vom Mittelkurs. |
| range | string | — | Angewendeter Rückblickzeitraum. |
| exchange | string|null | — | Börsenkennung (Kleinbuchstaben). |
| interval_s | number | s | Abstand zwischen den Punkten. |
| points | array | — | Punkte der Reihe, älteste zuerst. |
| points[] | object | — | Punkte der Reihe, älteste zuerst. |
| points[].t | number | ms | Beginn des Zeit-Buckets. |
| points[].bid_depth_usd | number | USD | Ruhender Bid-Nominalwert zwischen Mittelkurs und unterer Bandgrenze. Eine Untergrenze, wenn `complete` false ist. |
| points[].ask_depth_usd | number | USD | Ruhender Ask-Nominalwert zwischen Mittelkurs und oberer Bandgrenze. Eine Untergrenze, wenn `complete` false ist. |
| points[].n_included | number | — | In die Tiefensumme einbezogene Zeilen: aktuell und für das Band vollständig. Zusammen mit dem Tiefenwert zu lesen. |
| points[].n_rows | number | — | Gefundene Zeilen, einschließlich veralteter. |
| points[].mid | number | USD | (bester Bid + bester Ask) ÷ 2, Preis eines Coins. |
| points[].uses_aggregated_buckets | boolean | — | True, wenn eine einbezogene Zeile preisaggregierte Buckets verwendet hat, wodurch die Summe zu einer Untergrenze wird. |
| points_expected | number | — | Anzahl der Punkte, die der Zeitraum bei Vollständigkeit enthält. |
| first_t | number | ms | Zeitpunkt des ersten zurückgegebenen Punkts. |
| last_t | number | ms | Zeitpunkt des letzten zurückgegebenen Punkts. |
| exchange_points | object | — | Anzahl der Punkte, in denen jede Börse vorkommt (der Schlüssel ist die Börsenkennung). dynamische Schlüssel: deribit,aster,backpack,bitfinex,bitget,bitunix |
| exchange_points.{*} | number | — | Anzahl der Punkte, in denen jede Börse vorkommt (der Schlüssel ist die Börsenkennung). |
| coverage | object | — | Was in den Zahlen enthalten ist und was nicht. Vergleichen Sie dies, bevor Sie Summen mit einer anderen Quelle vergleichen. |
| coverage.included_exchanges | array | — | Quellen, deren aktuelle Daten einbezogen sind. |
| coverage.included_exchanges[] | string | — | Quellen, deren aktuelle Daten einbezogen sind. |
| coverage.unavailable | array | — | Quellen, die nicht einbezogen werden konnten, jeweils mit Begründung. Sie werden nie als 0 gezählt. leer in den Stichproben, aus denen diese Tabelle erzeugt wurde |
| coverage.stale_excluded | array | — | Zeilen, die unberücksichtigt bleiben, weil ihre letzte Aktualisierung außerhalb des Aktualitätsfensters liegt. leer in den Stichproben, aus denen diese Tabelle erzeugt wurde |
| method | object | — | Klartextangabe der für diese Antwort verwendeten Formeln, ein Eintrag je Feld. |
| method.bid_depth_usd | string | — | Formelhinweis zu `bid_depth_usd`, Klartext. |
| method.ask_depth_usd | string | — | Formelhinweis zu `ask_depth_usd`, Klartext. |
| method.complete | string | — | Formelhinweis zu `complete`, Klartext. |
| method.history | string | — | Formelhinweis zu `history`, Klartext. |
| method.exchange_points | string | — | Formelhinweis zu `exchange_points`, Klartext. |
| meta | object | — | Datenherkunft und Aktualität dieser Antwort. |
| meta.schema | string | — | Schema-ID dieser Antwort. Sie ändert sich nur, wenn ein bestehendes Feld seine Bedeutung oder seinen Typ ändert. |
| meta.source | array | — | Öffentliche Upstream-Endpunkte, von denen die Daten erhoben wurden. |
| meta.source[] | object | — | Öffentliche Upstream-Endpunkte, von denen die Daten erhoben wurden. |
| meta.source[].exchange | string | — | Börsenkennung (Kleinbuchstaben). |
| meta.source[].market | string | — | `perp` oder `spot`. |
| meta.source[].endpoint | string | — | Öffentlicher Endpunkt der Quelle, den der Collector liest (zur Datenherkunft angegeben; Clients rufen ihn nie auf). |
| meta.observed_at | null | — | Von der Quelle für die Daten angegebener Zeitstempel. |
| meta.received_at | number | ms | Zeitpunkt, zu dem der CoinBoss-Collector die Daten empfangen hat. |
| meta.fetched_at | number | ms | Zeitpunkt, zu dem diese Antwort zusammengestellt wurde. |
| meta.window | string | — | Zeitfenster, das die Zahlen abdecken. |
| meta.quality | string | — | FRESH, PARTIAL, STALE, BROKEN oder UNAVAILABLE, beurteilt anhand der Datenzeitstempel und der Abdeckung. |
| meta.is_stale | boolean | — | True, wenn die Daten älter als ihr Aktualitätsfenster sind. |
| meta.cache_ttl_s | number | s | Cache-Lebensdauer dieser Antwort. |
| meta.fallback | string | — | Was der Endpunkt zurückgibt, wenn der Collector oder eine Quelle ausfällt. |
| meta.collector_heartbeat_age_s | number | s | Sekunden, seit der Collector zuletzt gemeldet hat, dass er läuft. |
Erzeugt 2026-11-11 23:00 UTC aus 3 echten Antworten.
Beispielantwort
/api/sd/liquidity/history?coin=BTC · Echte Antwort, erfasst 2026-11-13 04:02:45 UTC. Lange Arrays und Maps sind für die Anzeige gekürzt: points hatte 48 Elemente; meta.source hatte 19 Elemente; exchange_points hatte 19 Elemente; coverage.included_exchanges hatte 19 Elemente.
- "success"true
- "schema""coinboss.sd.liquidity/1"
- "now"1794542565889
- "coin""BTC"
- "market""perp"
- "band_pct"1
- "range""24h"
- "exchange"null
- "interval_s"1800
- "points"
- "points_expected"48
- "first_t"1794457800000
- "last_t"1794542400000
- "exchange_points"
- "deribit"96
- "aster"48
- "coverage"
- "included_exchanges"
- "unavailable"
- "stale_excluded"
- "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…"
- "history""sd_book_hist keeps the first snapshot of every 15-minute bucket per contract; each returned point takes, per contract, the first stored snapshot inside the poin…"
- "exchange_points""number of returned points in which each exchange had a row that was complete for the band; a changing venue set moves the aggregate, so compare n_included acros…"
- "meta"
- "schema""coinboss.sd.liquidity/1"
- "source"
- "observed_at"null
- "received_at"1794542400000
- "fetched_at"1794542565889
- "window""24h"
- "quality""FRESH"
- "is_stale"false
- "cache_ttl_s"120
- "fallback""history is append-only (first snapshot of each 15-minute bucket per contract, 30-day retention); buckets the collector missed are simply absent, never interpola…"
- "collector_heartbeat_age_s"3
Geprüfte Stichproben
Neben dem obigen Beispiel ruft die Prüfsonde diesen Endpunkt mit den folgenden Parametern auf und prüft jedes Mal das Schema.
| Parameter | HTTP | Latenz | Ergebnis |
|---|---|---|---|
| band=2&coin=ETH&market=spot | 200 | 6 ms | Bestanden FRESH |
| coin=SOL&exchange=gate | 200 | 2 ms | Bestanden FRESH |
| band=3&coin=BTC | 400 | 1 ms | Bestanden liefert den erwarteten Fehler |
Geprüft 2026-11-13 03:58:06 UTC
Details
- Authentifizierung
- Keine. Öffentlicher Endpunkt.
- Rate-Limit
- 1200 Anfragen pro Minute und IP
- Server-Cache
- 2m
- Edge-Micro-Cache
- 10s
- Aktualisierungsintervall
- Je Kontrakt wird alle 15 Minuten ein Snapshot gespeichert; jeder Punkt verwendet den frühesten Snapshot seines Buckets (ein Stichtagswert, kein Durchschnitt).
- Zeitfenster
- 24h / 7d / 30d.
- Datenquellen
- Öffentliche REST-Orderbuch-Snapshots von 24 Börsen (Perpetual- und Spot-Märkte), von CoinBoss erhoben und gespeichert (sd_book_latest, sd_book_hist). Tiefe und Slippage berechnet CoinBoss aus den rohen Preisniveaus.
- Börsenabdeckung
- 24 Börsen, 38 Kombinationen aus Börse × Markt. Wo ein öffentlicher Snapshot nicht ±0.5 / 1 / 2 % um den Mittelkurs erreicht (Level-Obergrenze der Börse), wird dieses Band mit `complete: false` markiert, sein Wert ist eine Untergrenze und es bleibt im Aggregat unberücksichtigt; `n_included` / `n_fresh` liefern den Nenner, und `excluded_incomplete` führt auf, was ausgelassen wurde.
- Paginierung
- Keine Paginierung; `range` begrenzt die Anzahl der Punkte (48 / 84 / 120).
- Sortierung
- Zeit aufsteigend.
- Einheiten
- 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.
- Zeitstempel
- Unix-Epoche in Millisekunden (UTC), sofern die Feldbeschreibung nichts anderes angibt
- Antwortformat
- json
- Stabilität
- Stabil
- Verfügbar seit
- 2026-11-11
Live-Status
Die Erhebung begann am 2026-11-11, längere Zeiträume werden daher nach und nach gefüllt. Fehlende Buckets fehlen und werden nicht interpoliert; eine Änderung von `n_included` zwischen zwei Punkten bedeutet, dass sich die Menge der beitragenden Kontrakte geändert hat.
Verfügbarkeit, letzte 30 Tage
100 % von 408 Prüfungen bestanden
Fehler
Fehlgeschlagene Aufrufe haben auf jedem Endpunkt denselben Aufbau. Die vollständige Liste steht auf der Fehlerseite. Fehler und Rate-Limits →
| Code | HTTP | Bedeutung | Empfohlene Reaktion |
|---|---|---|---|
| INVALID_PARAM | 400 | Ein erforderlicher Parameter fehlt oder ein Wert wird nicht akzeptiert. `param` nennt den Parameter, sofern er bekannt ist. | Nicht unverändert wiederholen; die Anfrage korrigieren. |
| UNAUTHORIZED | 401 | Der Header `CB-API-KEY` wurde gesendet, der Schlüssel ist jedoch unbekannt oder widerrufen. Öffentliche Daten erfordern keinen Schlüssel – lassen Sie den Header weg oder verwenden Sie einen gültigen Schlüssel. | Nicht unverändert wiederholen. |
| FORBIDDEN | 403 | Die Route gehört nicht zur öffentlichen API (intern oder nur für Konten). | Nicht wiederholen. |
| NOT_FOUND | 404 | Unbekannte Route, oder der angefragte Coin / die Börse / der Fonds existiert nicht. | Nicht wiederholen; Pfad und Kennungen mit dem Katalog abgleichen. |
| RATE_LIMITED | 429 | Mehr Anfragen, als das Limit pro Minute zulässt. `Retry-After` gibt die Wartezeit in Sekunden an. | `Retry-After` abwarten, dann mit Backoff wiederholen. |
| INTERNAL | 500 | Unerwarteter Serverfehler. Die Meldung ist bewusst allgemein gehalten; geben Sie `request_id` an, wenn Sie den Fehler melden. | Einmal nach einigen Sekunden wiederholen; wenn der Fehler bestehen bleibt, mit der Request-ID melden. |
| UPSTREAM_FAILED | 503 | Die Datenquelle hinter diesem Endpunkt hat nicht rechtzeitig geantwortet. Es werden ersatzweise keine veralteten oder stellvertretenden Zahlen zurückgegeben. | Mit Backoff wiederholen; die Statusseite prüfen. |
| UNAVAILABLE | 501 / 503 | Der Datensatz ist vorübergehend nicht bereit (Cache wird aufgewärmt), oder der Endpunkt hat noch keine rechtmäßige öffentliche Quelle. | Später wiederholen; der Katalog kennzeichnet Endpunkte, die konzeptbedingt nicht verfügbar sind. |
| REQUEST_FAILED | 200 | Einige ältere Endpunkte antworten mit HTTP 200 und `success: false`. Prüfen Sie immer `success`, nicht nur den HTTP-Status. | Hängt von der Meldung ab; als fehlgeschlagene Anfrage behandeln. |
Ausprobieren
/api/sd/liquidity/historyTeilweisestring — Coin symbol, case-insensitive (for example `BTC`). Missing or malformed values return 400.
string · Standard perp — Market type. Perpetual and spot books are never added together.
string · Standard 1 — Distance from mid price in percent.
string · Standard 24h — Look-back range: 24h (30-minute points), 7d (2-hour points) or 30d (6-hour points).
string — One exchange id covered for this market (for example `gate`). Default: all exchanges. An exchange that is not covered returns 400.
https://www.coinboss.com/api/sd/liquidity/history?coin=BTCMehr in dieser Kategorie
- Orderbuchtiefe und Slippage /api/sd/liquidity
- Historie der Orderbuchtiefe /api/sd/liquidity/history
- Coin-Ranking nach Orderbuchtiefe /api/sd/liquidity/rank
- Monitor für große ruhende Orders /api/indicators/large-orderbook