/api/sd/options/history
GETTerdegradasiSTALE

Riwayat opsi (per jam)

Deret per jam untuk open interest opsi, volume, rasio put/call, IV ATM, atau max pain untuk satu koin. Riwayat dimulai sejak CoinBoss mulai mengumpulkan data (2026-11-11); jam-jam sebelumnya tidak diisi mundur.

GET/api/sd/options/history
Cakupan sebagian. Pengumpulan deret ini dimulai pada 2026-11-11. Sampai rentang yang diminta terisi, respons mengembalikan titik yang ada, melaporkan `points_count` terhadap `expected_points`, dan menandai `meta.quality = "PARTIAL"`. Jam yang hilang tidak diinterpolasi.
Terdegradasi. Endpoint melaporkan kualitas data STALE

Permintaan

Parameter kueri

NamaTipeWajibDefaultNilai yang diizinkanDeskripsi
coinstringWajib——Simbol koin, tidak peka huruf besar/kecil (misalnya `BTC`). Nilai yang tidak diisi atau salah format mengembalikan 400. Contoh: BTC
metricstringWajib—oi, volume, pcr, atm_iv, max_painDeret yang dikembalikan. Contoh: oi
rangestringOpsional7d24h, 7d, 30d, 90dRentang waktu ke belakang; satu titik per jam, paling banyak 2160 titik.
exchangestringOpsionalallall, deribit, binance, bybit, okx, gate, coincallSatu bursa, atau `all` untuk agregat lintas bursa.

Contoh permintaan

curl -s "https://www.coinboss.com/api/sd/options/history?coin=BTC&metric=oi"

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.

KolomTipeSatuanDeskripsi
successboolean—true jika permintaan berhasil. Jika gagal, body-nya adalah `{ success: false, code, error, request_id }`.
schemastring—ID skema respons ini. ID hanya berubah jika kolom yang sudah ada berubah makna atau tipe.
nownumbermsWaktu server saat respons disusun.
coinstring—Simbol koin (huruf besar).
exchangestring—ID bursa (huruf kecil).
metricstring—Deret yang dipilih oleh parameter `metric`.
rangestring—Rentang waktu ke belakang yang diterapkan.
intervalstring—Jarak antartitik deret.
points_countnumber—Jumlah titik yang dikembalikan.
expected_pointsnumber—Jumlah titik per jam yang akan dimuat rentang yang diminta jika lengkap.
history_started_atnumbermsWaktu jam pertama yang dikumpulkan CoinBoss.
first_tnumbermsWaktu titik pertama yang dikembalikan.
last_tnumbermsWaktu titik terakhir yang dikembalikan.
pointsarray—Titik deret, yang terlama lebih dulu.
points[]object—Titik deret, yang terlama lebih dulu.
points[].tnumbermsAwal bucket waktu.
points[].snapshot_atnumbermsWaktu putaran kolektor yang menjadi sumber penulisan titik tersebut.
points[].n_exchangesnumber—Jumlah bursa dalam titik tersebut.
points[].exchangesarray—Bursa yang termasuk dalam baris ini.
points[].exchanges[]string—Bursa yang termasuk dalam baris ini.
points[].oi_usdnumberUSDOpen interest sebagai nosional USD: kuantitas koin × harga indeks spot. Satu sisi. bisa tidak ada
points[].call_oi_usdnumberUSDOpen interest call, nosional USD. bisa tidak ada
points[].put_oi_usdnumberUSDOpen interest put, nosional USD. bisa tidak ada
points[].oi_coinnumbercoinOpen interest dalam unit koin dasar. bisa tidak ada
points[].index_pricenumberUSDHarga indeks spot yang dipakai untuk konversi ke USD (dalam agregat: median harga indeks milik masing-masing bursa). bisa tidak ada
coverageobject—Apa yang termasuk dan tidak termasuk dalam angka-angka ini. Bandingkan ini terlebih dahulu sebelum membandingkan total dengan sumber lain.
coverage.included_exchangesarray—Sumber yang data segarnya disertakan.
coverage.included_exchanges[]string—Sumber yang data segarnya disertakan.
coverage.unavailablearray—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[].exchangestring—ID bursa (huruf kecil).
coverage.unavailable[].reasonstring—Kode alasan yang dapat dibaca mesin.
coverage.unavailable[].detailstring—Penjelasan alasan yang dapat dibaca manusia.
coverage.stale_excludedarray—Baris yang tidak dimasukkan karena pembaruan terakhirnya berada di luar jendela kesegaran. kosong pada sampel yang dipakai untuk menghasilkan tabel ini
methodobject—Pernyataan teks biasa tentang rumus yang dipakai untuk respons ini, satu entri per kolom.
method.pointsstring—Catatan rumus untuk `points`, teks biasa.
method.exchangesstring—Catatan rumus untuk `exchanges`, teks biasa.
method.history_depthstring—Catatan rumus untuk `history_depth`, teks biasa.
method.oi_usdstring—Catatan rumus untuk `oi_usd`, teks biasa. bisa tidak ada
metaobject—Silsilah data dan kesegaran respons ini.
meta.schemastring—ID skema respons ini. ID hanya berubah jika kolom yang sudah ada berubah makna atau tipe.
meta.sourcearray—Endpoint publik hulu tempat data dikumpulkan.
meta.source[]object—Endpoint publik hulu tempat data dikumpulkan.
meta.source[].exchangestring—ID bursa (huruf kecil).
meta.source[].endpointstring—Endpoint publik sumber yang dibaca kolektor (ditampilkan sebagai silsilah data; klien tidak pernah memanggilnya).
meta.observed_atnull—Stempel waktu yang diberikan sumber untuk data tersebut.
meta.received_atnumbermsWaktu kolektor CoinBoss menerima data.
meta.fetched_atnumbermsWaktu respons ini disusun.
meta.windowstring—Jendela waktu yang dicakup angka-angka ini.
meta.qualitystring—FRESH, PARTIAL, STALE, BROKEN, atau UNAVAILABLE, dinilai dari stempel waktu data dan cakupan.
meta.is_staleboolean—True jika data lebih lama dari jendela kesegarannya.
meta.cache_ttl_snumbersMasa hidup cache respons ini.
meta.fallbackstring—Apa yang dikembalikan endpoint ketika kolektor atau sumber gagal.
points[].pcr_oinumberratioOpen interest put ÷ open interest call, dalam unit koin; `null` jika sisi call bernilai 0. bisa tidak ada
points[].pcr_volnumberratioVolume 24h put ÷ volume 24h call, dalam unit koin; `null` jika sisi call bernilai 0. bisa tidak ada
method.pcr_oistring—Catatan rumus untuk `pcr_oi`, teks biasa. bisa tidak ada
method.pcr_volstring—Catatan rumus untuk `pcr_vol`, teks biasa. bisa tidak ada
points[].atm_iv_30dnumber%IV ATM yang diinterpolasi secara linear ke tenor tetap 30 hari; `null` jika 30 hari tidak diapit oleh dua jatuh tempo. bisa tidak ada
method.atm_ivstring—Catatan rumus untuk `atm_iv`, teks biasa. bisa tidak ada
method.atm_iv_30dstring—Catatan rumus untuk `atm_iv_30d`, teks biasa. bisa tidak ada

Dihasilkan 2026-11-11 23:00 UTC dari 3 respons nyata.

Contoh respons

/api/sd/options/history?coin=BTC&metric=oi · Respons nyata yang direkam 2026-11-13 03:58:20 UTC. Array dan map yang panjang dipersingkat untuk tampilan: points berisi 23 item; meta.source berisi 6 item; coverage.unavailable berisi 12 item.

  • {
    • "success": true,
    • "schema": "coinboss.sd.options/1",
    • "now": 1794542300888,
    • "coin": "BTC",
    • "exchange": "all",
    • "metric": "oi",
    • "range": "7d",
    • "interval": "1h",
    • "points_count": 23,
    • "expected_points": 168,
    • "history_started_at": 1794416400000,
    • "first_t": 1794416400000,
    • "last_t": 1794520800000,
    • "points": [
      • { … 9 },
      • { … 9 }
      ],
    • "coverage": {
      • "included_exchanges": [ … 6 ],
      • "unavailable": [ … 2 ],
      • "stale_excluded": []
      },
    • "method": {
      • "points": "one point per UTC hour bucket (t = bucket start, ms); the value is the LAST collector snapshot inside that hour (snapshot_at); hours in which the collector prod…",
      • "exchanges": "exchanges that were fresh and therefore included in that hour's figure; a change in this list between points explains level shifts in the all-exchange series",
      • "history_depth": "hourly summaries are kept for 90 days; the series starts when the collector was first deployed (history_started_at), so fewer points than the requested range ma…",
      • "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 …"
      },
    • "meta": {
      • "schema": "coinboss.sd.options/1",
      • "source": [ … 2 ],
      • "observed_at": null,
      • "received_at": 1794522484809,
      • "fetched_at": 1794542300888,
      • "window": "7d",
      • "quality": "STALE",
      • "is_stale": true,
      • "cache_ttl_s": 300,
      • "fallback": "hours without a collector snapshot are absent from the series (no interpolation); PARTIAL means fewer hourly points exist than the requested range (history shor…"
      }
    }

Sampel terverifikasi

Selain contoh di atas, probe memanggil endpoint ini dengan parameter berikut dan memeriksa skemanya setiap kali.

ParameterHTTPLatensiHasil
coin=ETH&range=24h&metric=pcr2002 msLolos STALE
coin=BTC&metric=atm_iv2003 msLolos STALE
coin=BTC4001 msLolos mengembalikan error yang diharapkan

Diperiksa 2026-11-13 03:58:20 UTC

Detail

Autentikasi
Tidak ada. Endpoint publik.
Batas permintaan
1200 permintaan per menit per IP
Cache server
5m
Mikro-cache edge
10s
Frekuensi pembaruan
Satu titik per jam, ditulis dari putaran kolektor terakhir pada jam tersebut.
Jendela
24h / 7d / 30d / 90d, titik per jam.
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; `range` membatasi jumlah titik.
Pengurutan
Waktu, 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.
Stempel waktu
Milidetik epoch Unix (UTC) kecuali deskripsi kolom menyatakan lain
Format respons
json
Stabilitas
Stabil
Tersedia sejak
2026-11-11

Status langsung

TerdegradasiDiperiksa 2026-11-13 03:58:20 UTCHTTP 2002 msSkema sesuaiTitik data terbaru berusia 6h

Endpoint melaporkan kualitas data STALE

Ketersediaan, 30 hari terakhir

99.75% dari 407 pemeriksaan lolos

Error

Panggilan yang gagal memiliki satu bentuk yang sama di semua endpoint. Daftar lengkapnya ada di halaman error. Error dan batas permintaan →

KodeHTTPArtiTindakan
INVALID_PARAM400Parameter wajib tidak ada atau suatu nilai tidak diterima. `param` menyebutkan nama parameternya jika diketahui.Jangan mengulang tanpa perubahan; perbaiki permintaannya.
UNAUTHORIZED401Header `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.
FORBIDDEN403Rute ini bukan bagian dari API publik (internal atau khusus akun).Jangan mengulang.
NOT_FOUND404Rute tidak dikenal, atau koin / bursa / dana yang diminta tidak ada.Jangan mengulang; periksa path dan pengenal terhadap katalog.
RATE_LIMITED429Jumlah permintaan melebihi batas per menit. `Retry-After` memberikan jumlah detik untuk menunggu.Tunggu selama `Retry-After`, lalu ulangi dengan backoff.
INTERNAL500Error 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_FAILED503Sumber 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.
UNAVAILABLE501 / 503Dataset 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_FAILED200Beberapa endpoint lama menjawab HTTP 200 dengan `success: false`. Selalu periksa `success`, bukan hanya status HTTP.Bergantung pada pesannya; perlakukan sebagai permintaan yang gagal.

Coba

GET/api/sd/options/historyTerdegradasi
Parameter

string — Coin symbol, case-insensitive (for example `BTC`). Missing or malformed values return 400.

string — Series to return.

string · default 7d — Look-back range; one point per hour, 2160 points at most.

string · default all — One venue, or `all` for the cross-venue aggregate.

URL permintaanhttps://www.coinboss.com/api/sd/options/history?coin=BTC&metric=oi
Pilih endpoint lalu tekan “Kirim permintaan”. Respons, header, dan waktu tempuhnya akan muncul di sini.