Optionen nach Verfall
Eine Zeile je Verfallsdatum: Open Interest, Volumen, Put/Call-Verhältnis, Max Pain, ATM IV und Skew, für alle Börsen oder eine einzelne Börse.
/api/sd/options/expiriesAnfrage
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 |
| exchange | string | Optional | all | all, deribit, binance, bybit, okx, gate, coincall | Eine Börse oder `all` für das börsenübergreifende Aggregat. |
Beispielanfrage
curl -s "https://www.coinboss.com/api/sd/options/expiries?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). |
| exchange | string | — | Börsenkennung (Kleinbuchstaben). |
| n_expiries | number | — | Anzahl der einbezogenen Verfallsdaten. |
| n_contracts | number | — | Anzahl der einbezogenen Optionskontrakte. |
| oi_usd | number | USD | Open Interest als USD-Nominalwert: Coin-Menge × Spot-Indexpreis. Einseitig gezählt. |
| call_oi_usd | number | USD | Open Interest der Calls, USD-Nominalwert. |
| put_oi_usd | number | USD | Open Interest der Puts, USD-Nominalwert. |
| oi_coin | number | coin | Open Interest in Einheiten des zugrunde liegenden Coins. |
| call_oi_coin | number | coin | Open Interest der Calls in Einheiten des zugrunde liegenden Coins. |
| put_oi_coin | number | coin | Open Interest der Puts in Einheiten des zugrunde liegenden Coins. |
| vol_usd_24h | number | USD | 24h-Nominalvolumen: gehandelte Coin-Menge × aktueller Spot-Indexpreis. Kein Prämienumsatz. |
| call_vol_usd_24h | number | USD | 24h-Nominalvolumen der Calls. |
| put_vol_usd_24h | number | USD | 24h-Nominalvolumen der Puts. |
| vol_coin_24h | number | coin | In 24h gehandelte Menge in Einheiten des zugrunde liegenden Coins. |
| call_vol_coin_24h | number | coin | In 24h gehandelte Menge der Calls, in Coins. |
| put_vol_coin_24h | number | coin | In 24h gehandelte Menge der Puts, in Coins. |
| vol_premium_usd_24h | number | USD | 24h-Prämienumsatz (Optionspreis × Menge), sofern die Börse ihn veröffentlicht; andernfalls `null`. Wird nie zum Nominalvolumen addiert. |
| pcr_oi | number | ratio | Open Interest der Puts ÷ Open Interest der Calls, in Coin-Einheiten; `null`, wenn die Call-Seite 0 ist. |
| pcr_vol | number | ratio | 24h-Volumen der Puts ÷ 24h-Volumen der Calls, in Coin-Einheiten; `null`, wenn die Call-Seite 0 ist. |
| atm_iv_30d | number | % | ATM IV, linear auf eine konstante Laufzeit von 30 Tagen interpoliert; `null`, wenn 30 Tage nicht von zwei Verfallsterminen eingeschlossen werden. |
| expiries | array | — | Eine Zeile je Verfallsdatum. |
| expiries[] | object | — | Eine Zeile je Verfallsdatum. |
| expiries[].expiry | string | — | Verfallsdatum (UTC), `YYYY-MM-DD`, oder `all`. |
| expiries[].expiry_ts | number | ms | Verfallszeitpunkt. |
| expiries[].days_left | number | days | Tage bis zum Verfall. |
| expiries[].exchanges | array | — | In diese Zeile einbezogene Börsen. |
| expiries[].exchanges[] | string | — | In diese Zeile einbezogene Börsen. |
| expiries[].n_contracts | number | — | Anzahl der einbezogenen Optionskontrakte. |
| expiries[].oi_usd | number | USD | Open Interest als USD-Nominalwert: Coin-Menge × Spot-Indexpreis. Einseitig gezählt. |
| expiries[].call_oi_usd | number | USD | Open Interest der Calls, USD-Nominalwert. |
| expiries[].put_oi_usd | number | USD | Open Interest der Puts, USD-Nominalwert. |
| expiries[].oi_coin | number | coin | Open Interest in Einheiten des zugrunde liegenden Coins. |
| expiries[].call_oi_coin | number | coin | Open Interest der Calls in Einheiten des zugrunde liegenden Coins. |
| expiries[].put_oi_coin | number | coin | Open Interest der Puts in Einheiten des zugrunde liegenden Coins. |
| expiries[].vol_usd_24h | number | USD | 24h-Nominalvolumen: gehandelte Coin-Menge × aktueller Spot-Indexpreis. Kein Prämienumsatz. |
| expiries[].call_vol_usd_24h | number | USD | 24h-Nominalvolumen der Calls. |
| expiries[].put_vol_usd_24h | number | USD | 24h-Nominalvolumen der Puts. |
| expiries[].vol_coin_24h | number | coin | In 24h gehandelte Menge in Einheiten des zugrunde liegenden Coins. |
| expiries[].call_vol_coin_24h | number | coin | In 24h gehandelte Menge der Calls, in Coins. |
| expiries[].put_vol_coin_24h | number | coin | In 24h gehandelte Menge der Puts, in Coins. |
| expiries[].vol_premium_usd_24h | number|null | USD | 24h-Prämienumsatz (Optionspreis × Menge), sofern die Börse ihn veröffentlicht; andernfalls `null`. Wird nie zum Nominalvolumen addiert. |
| expiries[].pcr_oi | number | ratio | Open Interest der Puts ÷ Open Interest der Calls, in Coin-Einheiten; `null`, wenn die Call-Seite 0 ist. |
| expiries[].pcr_vol | number | ratio | 24h-Volumen der Puts ÷ 24h-Volumen der Calls, in Coin-Einheiten; `null`, wenn die Call-Seite 0 ist. |
| expiries[].oi_share_pct | number | % | Anteil am gesamten Open Interest (USD-Nominalwert) der Auswahl. |
| expiries[].max_pain | number | USD | Ausübungspreis, bei dem die Gesamtauszahlung an die Optionsinhaber zum Verfall am kleinsten ist. |
| expiries[].max_pain_usd | number | USD | Gesamtauszahlung an die Optionsinhaber, wenn der Verfall zum Max-Pain-Ausübungspreis abgerechnet würde. |
| expiries[].atm_iv | number | % | Implizite Volatilität am Geld: mittlere Mark-IV am Ausübungspreis, der dem Forward-Preis am nächsten liegt. |
| expiries[].atm_strike | number | USD | Ausübungspreis, der dem Forward-Preis am nächsten liegt, für die ATM IV verwendet. |
| expiries[].skew_25d | number|null | percentage points | IV des Puts mit dem Delta, das −0.25 am nächsten liegt, minus IV des Calls mit dem Delta, das +0.25 am nächsten liegt. Nur von den Börsen veröffentlichte Deltas. |
| expiries[].skew_exchanges | array | — | Börsen, deren Deltas für den Skew verfügbar waren. |
| expiries[].skew_exchanges[] | string | — | Börsen, deren Deltas für den Skew verfügbar waren. |
| expiries[].index_price | number | USD | Für die USD-Umrechnung verwendeter Spot-Indexpreis (in Aggregaten der Median der börseneigenen Indexpreise). |
| expiries[].underlying_price | number|null | USD | Von der Börse für diesen Verfall veröffentlichter Forward- / Basiswertpreis. |
| expiries[].by_exchange_iv | array | — | ATM IV dieses Verfalls je Börse. |
| expiries[].by_exchange_iv[] | object | — | ATM IV dieses Verfalls je Börse. |
| expiries[].by_exchange_iv[].exchange | string | — | Börsenkennung (Kleinbuchstaben). |
| expiries[].by_exchange_iv[].atm_iv | number | % | Implizite Volatilität am Geld: mittlere Mark-IV am Ausübungspreis, der dem Forward-Preis am nächsten liegt. |
| expiries[].by_exchange_iv[].atm_strike | number | USD | Ausübungspreis, der dem Forward-Preis am nächsten liegt, für die ATM IV verwendet. |
| expiries[].by_exchange_iv[].ref_price | number | USD | Forward-Preis, anhand dessen der ATM-Ausübungspreis der Börse gewählt wurde. |
| expiries[].by_exchange_iv[].skew_25d | number|null | percentage points | IV des Puts mit dem Delta, das −0.25 am nächsten liegt, minus IV des Calls mit dem Delta, das +0.25 am nächsten liegt. Nur von den Börsen veröffentlichte Deltas. |
| expiries[].by_exchange_iv[].oi_usd | number | USD | Open Interest als USD-Nominalwert: Coin-Menge × Spot-Indexpreis. Einseitig gezählt. |
| 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. |
| coverage.unavailable[] | object | — | Quellen, die nicht einbezogen werden konnten, jeweils mit Begründung. Sie werden nie als 0 gezählt. |
| coverage.unavailable[].exchange | string | — | Börsenkennung (Kleinbuchstaben). |
| coverage.unavailable[].reason | string | — | Maschinenlesbarer Begründungscode. |
| coverage.unavailable[].detail | string | — | Für Menschen lesbare Erläuterung der Begründung. |
| 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 |
| coverage.field_gaps | array | — | Spalten, die eine Börse nicht veröffentlicht; sie sind für diese Börse `null`. |
| coverage.field_gaps[] | object | — | Spalten, die eine Börse nicht veröffentlicht; sie sind für diese Börse `null`. |
| coverage.field_gaps[].exchange | string | — | Börsenkennung (Kleinbuchstaben). |
| coverage.field_gaps[].fields | array | — | Namen der fehlenden Spalten. |
| coverage.field_gaps[].fields[] | string | — | Namen der fehlenden Spalten. |
| coverage.field_gaps[].kind | string | — | Kontraktfamilie: `inverse` (in Coins abgerechnet) oder `linear` (in Stablecoins abgerechnet). |
| method | object | — | Klartextangabe der für diese Antwort verwendeten Formeln, ein Eintrag je Feld. |
| method.oi_usd | string | — | Formelhinweis zu `oi_usd`, Klartext. |
| method.vol_usd_24h | string | — | Formelhinweis zu `vol_usd_24h`, Klartext. |
| method.vol_premium_usd_24h | string | — | Formelhinweis zu `vol_premium_usd_24h`, Klartext. |
| method.pcr_oi | string | — | Formelhinweis zu `pcr_oi`, Klartext. |
| method.pcr_vol | string | — | Formelhinweis zu `pcr_vol`, Klartext. |
| method.max_pain | string | — | Formelhinweis zu `max_pain`, Klartext. |
| method.atm_iv | string | — | Formelhinweis zu `atm_iv`, Klartext. |
| method.atm_iv_30d | string | — | Formelhinweis zu `atm_iv_30d`, Klartext. |
| method.skew_25d | string | — | Formelhinweis zu `skew_25d`, Klartext. |
| method.expiry | string | — | Formelhinweis zu `expiry`, Klartext. |
| method.oi_share_pct | string | — | Formelhinweis zu `oi_share_pct`, 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[].endpoint | string | — | Öffentlicher Endpunkt der Quelle, den der Collector liest (zur Datenherkunft angegeben; Clients rufen ihn nie auf). |
| meta.observed_at | number | ms | 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. |
Erzeugt 2026-11-11 23:00 UTC aus 3 echten Antworten.
Beispielantwort
/api/sd/options/expiries?coin=BTC · Echte Antwort, erfasst 2026-11-13 03:58:20 UTC. Lange Arrays und Maps sind für die Anzeige gekürzt: expiries hatte 12 Elemente; meta.source hatte 6 Elemente; coverage.field_gaps hatte 4 Elemente; coverage.unavailable hatte 12 Elemente; coverage.stale_included hatte 6 Elemente; expiries[].by_exchange_iv hatte 6 Elemente.
- "success"true
- "schema""coinboss.sd.options/1"
- "now"1794542300391
- "coin""BTC"
- "exchange""all"
- "n_expiries"12
- "n_contracts"5792
- "oi_usd"32670143083.84
- "call_oi_usd"18276964561.96
- "put_oi_usd"14393178521.88
- "oi_coin"457419.65
- "call_oi_coin"255899.54
- "put_oi_coin"201520.11
- "vol_usd_24h"4295495191.7
- "call_vol_usd_24h"2031780368.24
- "put_vol_usd_24h"2263714823.46
- "vol_coin_24h"60122.56
- "call_vol_coin_24h"28436.77
- "put_vol_coin_24h"31685.79
- "vol_premium_usd_24h"34033631.12
- "pcr_oi"0.7875
- "pcr_vol"1.1143
- "atm_iv_30d"37.2
- "expiries"
- "coverage"
- "included_exchanges"
- "unavailable"
- "stale_excluded"
- "field_gaps"
- "stale_included"
- "method"
- "oi_usd""sum over contracts of oi_coin x that exchange's spot index price (USDT/USDC treated 1:1 as USD); oi_coin is open interest in units of the underlying coin after …"
- "vol_usd_24h""NOTIONAL 24h volume = sum of vol_coin (24h traded quantity in underlying coin) x the exchange's CURRENT spot index price; not premium turnover. Binance statisti…"
- "vol_premium_usd_24h""PREMIUM turnover (option price x quantity) as reported by the exchange: Deribit volume_usd, Binance amount, Gate sum(|size| x multiplier x price) from the 24h t…"
- "pcr_oi""put open interest / call open interest, both in underlying-coin units; null when call side is 0 or missing"
- "pcr_vol""put 24h volume / call 24h volume, both in underlying-coin units; null when call side is 0 or missing"
- "max_pain""per expiry: settlement price S among strikes with OI>0 minimizing pain_usd(S) = sum_calls oi_coin x max(S-K,0) + sum_puts oi_coin x max(K-S,0); ties take the lo…"
- "atm_iv""per exchange and expiry: reference price F = median of the exchange-published forward/underlying price of that expiry (the exchange index price where no forward…"
- "atm_iv_30d""30-day constant-maturity ATM IV: linear interpolation in days between the two expiries bracketing 30 days; null when 30 days is not bracketed"
- "skew_25d""IV(put with delta closest to -0.25, within +-0.10) - IV(call with delta closest to +0.25, within +-0.10), in percentage points, using exchange-published deltas …"
- "expiry""UTC date of the expiry timestamp (all integrated exchanges expire at 08:00 UTC); contracts from different exchanges with the same UTC expiry date are merged"
- "oi_share_pct""expiry oi_usd / total oi_usd of this response x 100"
- "meta"
- "schema""coinboss.sd.options/1"
- "source"
- "observed_at"1794522472654
- "received_at"1794522473814
- "fetched_at"1794542300391
- "window""latest"
- "quality""STALE"
- "is_stale"true
- "cache_ttl_s"60
- "fallback""on collector failure the last stored rows are served: an exchange whose newest batch is older than 25 min (collector cycle is 10 min) is excluded from totals (l…"
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 |
|---|---|---|---|
| coin=ETH&exchange=deribit | 200 | 46 ms | Bestanden STALE |
| coin=SOL | 200 | 22 ms | Bestanden STALE |
| coin=BTC&exchange=nope | 400 | 1 ms | Bestanden liefert den erwarteten Fehler |
Geprüft 2026-11-13 03:58:20 UTC
Details
- Authentifizierung
- Keine. Öffentlicher Endpunkt.
- Rate-Limit
- 1200 Anfragen pro Minute und IP
- Server-Cache
- 60s
- Edge-Micro-Cache
- 10s
- Aktualisierungsintervall
- Collector-Durchlauf alle 10 Minuten; eine Börse gilt nach ihrem letzten erfolgreichen Durchlauf 25 Minuten lang als aktuell.
- Zeitfenster
- Letzter Snapshot je Verfall; die Volumenfelder umfassen die zurückliegenden 24 Stunden.
- Datenquellen
- Öffentliche REST-Optionsendpunkte von Deribit, Binance, Bybit, OKX, Gate und Coincall, von CoinBoss erhoben und gespeichert (sd_opt_latest, sd_opt_summary_hourly). Es ist kein Drittanbieter-Aggregator beteiligt.
- Börsenabdeckung
- Sechs Optionsbörsen. Ein Coin, für den an den ausgewählten Börsen keine Optionen gelistet sind, liefert HTTP 200 mit null-Feldern, `meta.quality = "UNAVAILABLE"` und der Begründung unter `coverage.unavailable`. Börsen ohne öffentlichen Options-Feed sind dort ebenfalls aufgeführt.
- Sortierung
- Verfallsdatum aufsteigend.
- Einheiten
- USD notional = contracts × contract size × spot index price of the venue. `*_coin` fields are in units of the underlying coin. Implied volatility is in percent (55 = 55 %). `vol_premium_usd_24h` is premium turnover, reported separately and never added to notional volume.
- Methode
- Contracts of different venues are grouped by UTC expiry date. Max pain and ATM IV are computed per expiry; `oi_share_pct` is the share of that expiry in the total open interest of the selection.
- 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
Der Endpunkt meldet die Datenqualität STALE
Verfügbarkeit, letzte 30 Tage
100 % von 407 Prüfungen bestanden
- Zurückgegeben, aber nicht dokumentiert: coverage.stale_included, coverage.stale_included[], coverage.stale_included[].exchange, coverage.stale_included[].age_s
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/options/expiriesBeeinträchtigtstring — Coin symbol, case-insensitive (for example `BTC`). Missing or malformed values return 400.
string · Standard all — One venue, or `all` for the cross-venue aggregate.
https://www.coinboss.com/api/sd/options/expiries?coin=BTCMehr in dieser Kategorie
- Optionskette (einzelne Börse) /api/sd/options/chain
- Optionen nach Verfall /api/sd/options/expiries
- Optionshistorie (stündlich) /api/sd/options/history
- Optionsübersicht (alle Börsen) /api/sd/options/overview
- Optionen nach Ausübungspreis (Strike) /api/sd/options/strikes
- Optionszusammenfassung der Coin-Seite /api/currency/options-summary
- Smile / Terminstruktur der impliziten Volatilität von Optionen /api/options/iv
- Historie der impliziten Volatilität von Optionen /api/options/iv-history
- Max Pain der Optionen /api/options/max-pain
- Options-OI nach Verfall /api/options/oi-by-expiry
- Options-OI nach Strike /api/options/oi-by-strike
- Optionsübersicht /api/options/overview
- Verteilung des Optionsvolumens /api/options/volume-dist