Opsi per strike
Open interest dan volume 24h per strike, call dan put secara terpisah. Jika hanya satu jatuh tempo, respons juga memuat kurva max pain (payout di setiap strike).
/api/sd/options/strikesPermintaan
Parameter kueri
| Nama | Tipe | Wajib | Default | Nilai yang diizinkan | Deskripsi |
|---|---|---|---|---|---|
| coin | string | Wajib | — | — | Simbol koin, tidak peka huruf besar/kecil (misalnya `BTC`). Nilai yang tidak diisi atau salah format mengembalikan 400. Contoh: BTC |
| expiry | string | Opsional | all | — | `all`, atau satu tanggal jatuh tempo UTC dalam format `YYYY-MM-DD`. Kurva max pain hanya dikembalikan untuk satu jatuh tempo. Tanggal yang tidak dikenal mengembalikan 404 dan mencantumkan tanggal yang tersedia. |
| exchange | string | Opsional | all | all, deribit, binance, bybit, okx, gate, coincall | Satu bursa, atau `all` untuk agregat lintas bursa. |
Contoh permintaan
curl -s "https://www.coinboss.com/api/sd/options/strikes?coin=BTC"Kolom respons
Tabel kolom dihasilkan dari respons nyata, sehingga memuat persis apa yang dikembalikan endpoint. Path memakai a[] untuk item array dan {*} untuk objek yang kuncinya berupa nama dinamis seperti koin atau bursa.
| Kolom | Tipe | Satuan | Deskripsi |
|---|---|---|---|
| success | boolean | — | true jika permintaan berhasil. Jika gagal, body-nya adalah `{ success: false, code, error, request_id }`. |
| schema | string | — | ID skema respons ini. ID hanya berubah jika kolom yang sudah ada berubah makna atau tipe. |
| now | number | ms | Waktu server saat respons disusun. |
| coin | string | — | Simbol koin (huruf besar). |
| exchange | string | — | ID bursa (huruf kecil). |
| expiry | string | — | Tanggal jatuh tempo (UTC), `YYYY-MM-DD`, atau `all`. |
| expiry_ts | null | — | Waktu jatuh tempo. |
| days_left | null | days | Jumlah hari hingga jatuh tempo. |
| index_price | number | USD | Harga indeks spot yang dipakai untuk konversi ke USD (dalam agregat: median harga indeks milik masing-masing bursa). |
| n_strikes | number | — | Jumlah strike yang dikembalikan. |
| max_pain | null | USD | Strike dengan total pembayaran kepada pemegang opsi saat jatuh tempo yang paling kecil. |
| max_pain_usd | null | USD | Total pembayaran kepada pemegang opsi jika jatuh tempo diselesaikan pada strike max pain. |
| n_contracts | number | — | Jumlah kontrak opsi yang disertakan. |
| oi_usd | number | USD | Open interest sebagai nosional USD: kuantitas koin × harga indeks spot. Satu sisi. |
| call_oi_usd | number | USD | Open interest call, nosional USD. |
| put_oi_usd | number | USD | Open interest put, nosional USD. |
| oi_coin | number | coin | Open interest dalam unit koin dasar. |
| call_oi_coin | number | coin | Open interest call dalam unit koin dasar. |
| put_oi_coin | number | coin | Open interest put dalam unit koin dasar. |
| vol_usd_24h | number | USD | Volume nosional 24h: kuantitas koin yang diperdagangkan × harga indeks spot saat ini. Bukan nilai transaksi premi. |
| call_vol_usd_24h | number | USD | Volume nosional 24h call. |
| put_vol_usd_24h | number | USD | Volume nosional 24h put. |
| vol_coin_24h | number | coin | Kuantitas yang diperdagangkan dalam 24h, dalam unit koin dasar. |
| call_vol_coin_24h | number | coin | Kuantitas call yang diperdagangkan dalam 24h, dalam koin. |
| put_vol_coin_24h | number | coin | Kuantitas put yang diperdagangkan dalam 24h, dalam koin. |
| vol_premium_usd_24h | number | USD | Nilai transaksi premi 24h (harga opsi × kuantitas) jika bursa memublikasikannya; `null` jika tidak. Tidak pernah dijumlahkan ke volume nosional. |
| pcr_oi | number | ratio | Open interest put ÷ open interest call, dalam unit koin; `null` jika sisi call bernilai 0. |
| pcr_vol | number | ratio | Volume 24h put ÷ volume 24h call, dalam unit koin; `null` jika sisi call bernilai 0. |
| expiries_available | array | — | Tanggal jatuh tempo yang saat ini memiliki kontrak. |
| expiries_available[] | string | — | Tanggal jatuh tempo yang saat ini memiliki kontrak. |
| strikes | array | — | Satu baris per strike, menaik. |
| strikes[] | object | — | Satu baris per strike, menaik. |
| strikes[].strike | number | USD | Harga strike. |
| strikes[].call_oi_coin | number | coin | Open interest call dalam unit koin dasar. |
| strikes[].put_oi_coin | number | coin | Open interest put dalam unit koin dasar. |
| strikes[].call_oi_usd | number | USD | Open interest call, nosional USD. |
| strikes[].put_oi_usd | number | USD | Open interest put, nosional USD. |
| strikes[].call_vol_coin_24h | number | coin | Kuantitas call yang diperdagangkan dalam 24h, dalam koin. |
| strikes[].put_vol_coin_24h | number | coin | Kuantitas put yang diperdagangkan dalam 24h, dalam koin. |
| strikes[].call_vol_usd_24h | number | USD | Volume nosional 24h call. |
| strikes[].put_vol_usd_24h | number | USD | Volume nosional 24h put. |
| strikes[].pain_usd | null | USD | Total pembayaran kepada pemegang opsi jika jatuh tempo diselesaikan pada strike ini. |
| strikes[].call_pain_usd | null | USD | Pembayaran kepada pemegang call jika jatuh tempo diselesaikan pada strike ini. |
| strikes[].put_pain_usd | null | USD | Pembayaran kepada pemegang put jika jatuh tempo diselesaikan pada strike ini. |
| coverage | object | — | Apa yang termasuk dan tidak termasuk dalam angka-angka ini. Bandingkan ini terlebih dahulu sebelum membandingkan total dengan sumber lain. |
| coverage.included_exchanges | array | — | Sumber yang data segarnya disertakan. |
| coverage.included_exchanges[] | string | — | Sumber yang data segarnya disertakan. |
| coverage.unavailable | array | — | Sumber yang tidak dapat disertakan, masing-masing dengan alasannya. Sumber tersebut tidak pernah dihitung sebagai 0. |
| coverage.unavailable[] | object | — | Sumber yang tidak dapat disertakan, masing-masing dengan alasannya. Sumber tersebut tidak pernah dihitung sebagai 0. |
| coverage.unavailable[].exchange | string | — | ID bursa (huruf kecil). |
| coverage.unavailable[].reason | string | — | Kode alasan yang dapat dibaca mesin. |
| coverage.unavailable[].detail | string | — | Penjelasan alasan yang dapat dibaca manusia. |
| coverage.stale_excluded | array | — | Baris yang tidak dimasukkan karena pembaruan terakhirnya berada di luar jendela kesegaran. kosong pada sampel yang dipakai untuk menghasilkan tabel ini |
| coverage.field_gaps | array | — | Kolom yang tidak dipublikasikan suatu bursa; nilainya `null` untuk bursa tersebut. |
| coverage.field_gaps[] | object | — | Kolom yang tidak dipublikasikan suatu bursa; nilainya `null` untuk bursa tersebut. |
| coverage.field_gaps[].exchange | string | — | ID bursa (huruf kecil). |
| coverage.field_gaps[].fields | array | — | Nama kolom yang tidak ada. |
| coverage.field_gaps[].fields[] | string | — | Nama kolom yang tidak ada. |
| coverage.field_gaps[].kind | string | — | Keluarga kontrak: `inverse` (penyelesaian dalam koin) atau `linear` (penyelesaian dalam stablecoin). |
| method | object | — | Pernyataan teks biasa tentang rumus yang dipakai untuk respons ini, satu entri per kolom. |
| method.oi_usd | string | — | Catatan rumus untuk `oi_usd`, teks biasa. |
| method.vol_usd_24h | string | — | Catatan rumus untuk `vol_usd_24h`, teks biasa. |
| method.pcr_oi | string | — | Catatan rumus untuk `pcr_oi`, teks biasa. |
| method.max_pain | string | — | Catatan rumus untuk `max_pain`, teks biasa. |
| method.strikes | string | — | Catatan rumus untuk `strikes`, teks biasa. |
| method.pain_usd | string | — | Catatan rumus untuk `pain_usd`, teks biasa. |
| meta | object | — | Silsilah data dan kesegaran respons ini. |
| meta.schema | string | — | ID skema respons ini. ID hanya berubah jika kolom yang sudah ada berubah makna atau tipe. |
| meta.source | array | — | Endpoint publik hulu tempat data dikumpulkan. |
| meta.source[] | object | — | Endpoint publik hulu tempat data dikumpulkan. |
| meta.source[].exchange | string | — | ID bursa (huruf kecil). |
| meta.source[].endpoint | string | — | Endpoint publik sumber yang dibaca kolektor (ditampilkan sebagai silsilah data; klien tidak pernah memanggilnya). |
| meta.observed_at | number | ms | Stempel waktu yang diberikan sumber untuk data tersebut. |
| meta.received_at | number | ms | Waktu kolektor CoinBoss menerima data. |
| meta.fetched_at | number | ms | Waktu respons ini disusun. |
| meta.window | string | — | Jendela waktu yang dicakup angka-angka ini. |
| meta.quality | string | — | FRESH, PARTIAL, STALE, BROKEN, atau UNAVAILABLE, dinilai dari stempel waktu data dan cakupan. |
| meta.is_stale | boolean | — | True jika data lebih lama dari jendela kesegarannya. |
| meta.cache_ttl_s | number | s | Masa hidup cache respons ini. |
| meta.fallback | string | — | Apa yang dikembalikan endpoint ketika kolektor atau sumber gagal. |
Dihasilkan 2026-11-11 23:00 UTC dari 3 respons nyata.
Contoh respons
/api/sd/options/strikes?coin=BTC · Respons nyata yang direkam 2026-11-13 03:52:55 UTC. Array dan map yang panjang dipersingkat untuk tampilan: strikes berisi 146 item; meta.source berisi 6 item; expiries_available berisi 12 item; coverage.field_gaps berisi 4 item; coverage.unavailable berisi 12 item; coverage.stale_included berisi 6 item.
- "success"true
- "schema""coinboss.sd.options/1"
- "now"1794541975432
- "coin""BTC"
- "exchange""all"
- "expiry""all"
- "expiry_ts"null
- "days_left"null
- "index_price"71498.15576087
- "n_strikes"146
- "max_pain"null
- "max_pain_usd"null
- "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
- "expiries_available"
- "2026-11-13"
- "2026-11-14"
- "2026-11-15"
- "2026-11-16"
- "2026-11-20"
- "2026-11-27"
- "2026-12-04"
- "2026-12-25"
- "strikes"
- "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…"
- "pcr_oi""put open interest / call open interest, 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…"
- "strikes""per strike: call and put open interest / 24h volume summed over the selected exchanges and expiry (expiry=all sums every listed expiry)"
- "pain_usd""total USD payout to option holders if the expiry settled at this strike (see max_pain); only returned for a single expiry - null when expiry=all because max pai…"
- "meta"
- "schema""coinboss.sd.options/1"
- "source"
- "observed_at"1794522472654
- "received_at"1794522473814
- "fetched_at"1794541975432
- "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…"
Sampel terverifikasi
Selain contoh di atas, probe memanggil endpoint ini dengan parameter berikut dan memeriksa skemanya setiap kali.
| Parameter | HTTP | Latensi | Hasil |
|---|---|---|---|
| coin=ETH | 200 | 7 ms | Lolos STALE |
| coin=BTC&exchange=deribit | 200 | 6 ms | Lolos STALE |
| coin=BTC&expiry=2020-01-01 | 404 | 3 ms | Lolos mengembalikan error yang diharapkan |
Diperiksa 2026-11-13 03:28:18 UTC
Detail
- Autentikasi
- Tidak ada. Endpoint publik.
- Batas permintaan
- 1200 permintaan per menit per IP
- Cache server
- 60s
- Mikro-cache edge
- 10s
- Frekuensi pembaruan
- Putaran kolektor setiap 10 menit; sebuah bursa dianggap segar selama 25 menit setelah putaran terakhirnya yang berhasil.
- Jendela
- Snapshot terbaru; kolom volume mencakup 24 jam terakhir.
- Sumber data
- Endpoint opsi REST publik milik Deribit, Binance, Bybit, OKX, Gate, dan Coincall, dikumpulkan dan disimpan oleh CoinBoss (sd_opt_latest, sd_opt_summary_hourly). Tidak ada agregator pihak ketiga yang terlibat.
- Cakupan bursa
- Enam bursa opsi. Koin yang tidak memiliki opsi tercatat di bursa yang dipilih mengembalikan HTTP 200 dengan kolom null, `meta.quality = "UNAVAILABLE"`, dan alasannya di `coverage.unavailable`. Bursa tanpa feed opsi publik juga tercantum di sana.
- Paginasi
- Tanpa paginasi; semua strike pada pilihan tersebut dikembalikan.
- Pengurutan
- Strike, menaik.
- Satuan
- 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.
- Metode
- pain_usd at strike K = Σ call OI × max(K − strike, 0) + Σ put OI × max(strike − K, 0), in USD. `max_pain` is the K with the smallest pain_usd.
- Stempel waktu
- Milidetik epoch Unix (UTC) kecuali deskripsi kolom menyatakan lain
- Format respons
- json
- Stabilitas
- Stabil
- Tersedia sejak
- 2026-11-11
Status langsung
Endpoint melaporkan kualitas data STALE
Ketersediaan, 30 hari terakhir
100% dari 406 pemeriksaan lolos
- Dikembalikan tetapi tidak didokumentasikan: coverage.stale_included, coverage.stale_included[], coverage.stale_included[].exchange, coverage.stale_included[].age_s
Error
Panggilan yang gagal memiliki satu bentuk yang sama di semua endpoint. Daftar lengkapnya ada di halaman error. Error dan batas permintaan →
| Kode | HTTP | Arti | Tindakan |
|---|---|---|---|
| INVALID_PARAM | 400 | Parameter wajib tidak ada atau suatu nilai tidak diterima. `param` menyebutkan nama parameternya jika diketahui. | Jangan mengulang tanpa perubahan; perbaiki permintaannya. |
| UNAUTHORIZED | 401 | Header `CB-API-KEY` dikirim tetapi kuncinya tidak dikenal atau sudah dicabut. Data publik tidak memerlukan kunci — hapus header tersebut atau gunakan kunci yang valid. | Jangan mengulang tanpa perubahan. |
| FORBIDDEN | 403 | Rute ini bukan bagian dari API publik (internal atau khusus akun). | Jangan mengulang. |
| NOT_FOUND | 404 | Rute tidak dikenal, atau koin / bursa / dana yang diminta tidak ada. | Jangan mengulang; periksa path dan pengenal terhadap katalog. |
| RATE_LIMITED | 429 | Jumlah permintaan melebihi batas per menit. `Retry-After` memberikan jumlah detik untuk menunggu. | Tunggu selama `Retry-After`, lalu ulangi dengan backoff. |
| INTERNAL | 500 | Error server yang tidak terduga. Pesannya sengaja dibuat generik; sertakan `request_id` saat melaporkannya. | Ulangi sekali setelah beberapa detik; laporkan beserta ID permintaan jika masih terjadi. |
| UPSTREAM_FAILED | 503 | Sumber data di balik endpoint ini tidak menjawab tepat waktu. Tidak ada angka usang atau angka pengganti yang dikembalikan sebagai gantinya. | Ulangi dengan backoff; periksa halaman status. |
| UNAVAILABLE | 501 / 503 | Dataset untuk sementara belum siap (cache sedang diisi) atau endpoint belum memiliki sumber publik yang sah. | Ulangi nanti; katalog menandai endpoint yang memang tidak tersedia secara desain. |
| REQUEST_FAILED | 200 | Beberapa endpoint lama menjawab HTTP 200 dengan `success: false`. Selalu periksa `success`, bukan hanya status HTTP. | Bergantung pada pesannya; perlakukan sebagai permintaan yang gagal. |
Coba
/api/sd/options/strikesTerdegradasistring — Coin symbol, case-insensitive (for example `BTC`). Missing or malformed values return 400.
string · default all — `all`, or one UTC expiry date as `YYYY-MM-DD`. The max-pain curve is returned only for a single expiry. An unknown date returns 404 and lists the available dates.
string · default all — One venue, or `all` for the cross-venue aggregate.
https://www.coinboss.com/api/sd/options/strikes?coin=BTCLainnya di kategori ini
- Rantai opsi (satu bursa) /api/sd/options/chain
- Opsi per jatuh tempo /api/sd/options/expiries
- Riwayat opsi (per jam) /api/sd/options/history
- Ikhtisar opsi (semua bursa) /api/sd/options/overview
- Opsi per strike /api/sd/options/strikes
- Ringkasan opsi di halaman koin /api/currency/options-summary
- Kurva senyum / struktur tenor volatilitas tersirat opsi /api/options/iv
- Riwayat volatilitas tersirat opsi /api/options/iv-history
- Max pain opsi /api/options/max-pain
- OI opsi per jatuh tempo /api/options/oi-by-expiry
- OI opsi per strike /api/options/oi-by-strike
- Ikhtisar opsi /api/options/overview
- Distribusi volume opsi /api/options/volume-dist