/api/sd/options/strikes
GET저하STALE

행사가별 옵션

행사가별 미결제약정과 24h 거래량을 콜과 풋으로 나누어 반환합니다. 만기일을 하나만 지정하면 맥스 페인 곡선(행사가별 지급액)도 응답에 포함됩니다.

GET/api/sd/options/strikes
저하. 엔드포인트가 보고한 데이터 품질: STALE

요청

쿼리 파라미터

이름타입필수기본값허용 값설명
coinstring필수——코인 심볼, 대소문자 구분 없음(예: `BTC`). 값이 없거나 형식이 잘못되면 400을 반환합니다. 예시: BTC
expirystring선택all—`all`, 또는 `YYYY-MM-DD` 형식의 UTC 만기일 하나. 맥스 페인 곡선은 단일 만기일에 대해서만 반환됩니다. 알 수 없는 날짜는 404를 반환하며 사용 가능한 날짜를 나열합니다.
exchangestring선택allall, deribit, binance, bybit, okx, gate, coincall거래소 하나, 또는 거래소 간 집계를 위한 `all`.

요청 예시

curl -s "https://www.coinboss.com/api/sd/options/strikes?coin=BTC"

응답 필드

필드 표는 실제 응답에서 생성되므로 엔드포인트가 반환하는 내용을 그대로 보여 줍니다. 경로에서 a[]는 배열 항목을, {*}는 코인이나 거래소처럼 동적 이름을 키로 갖는 객체를 뜻합니다.

필드타입단위설명
successboolean—요청이 성공하면 true입니다. 실패하면 본문은 `{ success: false, code, error, request_id }`입니다.
schemastring—이 응답의 스키마 ID. 기존 필드의 의미나 타입이 바뀔 때만 변경됩니다.
nownumberms응답이 생성된 서버 시각.
coinstring—코인 심볼(대문자).
exchangestring—거래소 ID(소문자).
expirystring—만기일(UTC), `YYYY-MM-DD` 또는 `all`.
expiry_tsnull—만기 시각.
days_leftnulldays만기일까지 남은 일수.
index_pricenumberUSDUSD 환산에 사용하는 현물 지수 가격(집계에서는 각 거래소 자체 지수 가격의 중앙값).
n_strikesnumber—반환된 행사가 수.
max_painnullUSD만기 시 옵션 보유자에게 지급되는 총액이 가장 작아지는 행사가.
max_pain_usdnullUSD만기가 맥스 페인 행사가에서 정산될 경우 옵션 보유자에게 지급되는 총액.
n_contractsnumber—포함된 옵션 계약 수.
oi_usdnumberUSDUSD 명목가치 기준 미결제약정: 코인 수량 × 현물 지수 가격. 단방향 기준.
call_oi_usdnumberUSD콜 미결제약정, USD 명목가치.
put_oi_usdnumberUSD풋 미결제약정, USD 명목가치.
oi_coinnumbercoin기초 코인 단위의 미결제약정.
call_oi_coinnumbercoin기초 코인 단위의 콜 미결제약정.
put_oi_coinnumbercoin기초 코인 단위의 풋 미결제약정.
vol_usd_24hnumberUSD24h 명목 거래량: 거래된 코인 수량 × 현재 현물 지수 가격. 프리미엄 거래대금이 아닙니다.
call_vol_usd_24hnumberUSD콜의 24h 명목 거래량.
put_vol_usd_24hnumberUSD풋의 24h 명목 거래량.
vol_coin_24hnumbercoin기초 코인 단위의 24h 거래 수량.
call_vol_coin_24hnumbercoin콜의 24h 거래 수량, 코인 기준.
put_vol_coin_24hnumbercoin풋의 24h 거래 수량, 코인 기준.
vol_premium_usd_24hnumberUSD거래소가 공시하는 경우의 24h 프리미엄 거래대금(옵션 가격 × 수량). 그 외에는 `null`입니다. 명목 거래량에 합산하는 일은 없습니다.
pcr_oinumberratio풋 미결제약정 ÷ 콜 미결제약정, 코인 단위 기준. 콜 측이 0이면 `null`입니다.
pcr_volnumberratio풋 24h 거래량 ÷ 콜 24h 거래량, 코인 단위 기준. 콜 측이 0이면 `null`입니다.
expiries_availablearray—현재 계약이 있는 만기일.
expiries_available[]string—현재 계약이 있는 만기일.
strikesarray—행사가당 한 행, 오름차순.
strikes[]object—행사가당 한 행, 오름차순.
strikes[].strikenumberUSD행사가.
strikes[].call_oi_coinnumbercoin기초 코인 단위의 콜 미결제약정.
strikes[].put_oi_coinnumbercoin기초 코인 단위의 풋 미결제약정.
strikes[].call_oi_usdnumberUSD콜 미결제약정, USD 명목가치.
strikes[].put_oi_usdnumberUSD풋 미결제약정, USD 명목가치.
strikes[].call_vol_coin_24hnumbercoin콜의 24h 거래 수량, 코인 기준.
strikes[].put_vol_coin_24hnumbercoin풋의 24h 거래 수량, 코인 기준.
strikes[].call_vol_usd_24hnumberUSD콜의 24h 명목 거래량.
strikes[].put_vol_usd_24hnumberUSD풋의 24h 명목 거래량.
strikes[].pain_usdnullUSD만기가 이 행사가에서 정산될 경우 옵션 보유자에게 지급되는 총액.
strikes[].call_pain_usdnullUSD만기가 이 행사가에서 정산될 경우 콜 보유자에게 지급되는 금액.
strikes[].put_pain_usdnullUSD만기가 이 행사가에서 정산될 경우 풋 보유자에게 지급되는 금액.
coverageobject—수치에 포함된 것과 포함되지 않은 것. 다른 소스와 합계를 비교하기 전에 먼저 이 항목을 비교하십시오.
coverage.included_exchangesarray—최신 데이터가 포함된 소스.
coverage.included_exchanges[]string—최신 데이터가 포함된 소스.
coverage.unavailablearray—포함할 수 없었던 소스와 각각의 사유. 0으로 집계하는 일은 없습니다.
coverage.unavailable[]object—포함할 수 없었던 소스와 각각의 사유. 0으로 집계하는 일은 없습니다.
coverage.unavailable[].exchangestring—거래소 ID(소문자).
coverage.unavailable[].reasonstring—기계 판독용 사유 코드.
coverage.unavailable[].detailstring—사람이 읽을 수 있는 사유 설명.
coverage.stale_excludedarray—마지막 갱신이 신선도 창을 벗어나 제외된 행. 이 표를 생성한 샘플에서는 비어 있음
coverage.field_gapsarray—거래소가 공시하지 않는 열. 해당 거래소에서는 `null`입니다.
coverage.field_gaps[]object—거래소가 공시하지 않는 열. 해당 거래소에서는 `null`입니다.
coverage.field_gaps[].exchangestring—거래소 ID(소문자).
coverage.field_gaps[].fieldsarray—누락된 열의 이름.
coverage.field_gaps[].fields[]string—누락된 열의 이름.
coverage.field_gaps[].kindstring—계약 계열: `inverse`(코인 결제) 또는 `linear`(스테이블코인 결제).
methodobject—이 응답에 사용된 산식을 필드당 한 항목씩 일반 텍스트로 기술한 내용.
method.oi_usdstring—`oi_usd`의 산식 설명, 일반 텍스트.
method.vol_usd_24hstring—`vol_usd_24h`의 산식 설명, 일반 텍스트.
method.pcr_oistring—`pcr_oi`의 산식 설명, 일반 텍스트.
method.max_painstring—`max_pain`의 산식 설명, 일반 텍스트.
method.strikesstring—`strikes`의 산식 설명, 일반 텍스트.
method.pain_usdstring—`pain_usd`의 산식 설명, 일반 텍스트.
metaobject—이 응답의 데이터 경로와 신선도.
meta.schemastring—이 응답의 스키마 ID. 기존 필드의 의미나 타입이 바뀔 때만 변경됩니다.
meta.sourcearray—데이터를 수집한 업스트림 공개 엔드포인트.
meta.source[]object—데이터를 수집한 업스트림 공개 엔드포인트.
meta.source[].exchangestring—거래소 ID(소문자).
meta.source[].endpointstring—수집기가 읽는 소스의 공개 엔드포인트(데이터 경로 표시용이며 클라이언트가 직접 호출하지 않음).
meta.observed_atnumberms소스가 데이터에 부여한 타임스탬프.
meta.received_atnumbermsCoinBoss 수집기가 데이터를 수신한 시각.
meta.fetched_atnumberms이 응답이 조립된 시각.
meta.windowstring—수치가 포괄하는 시간 구간.
meta.qualitystring—FRESH, PARTIAL, STALE, BROKEN 또는 UNAVAILABLE. 데이터 타임스탬프와 커버리지로 판정합니다.
meta.is_staleboolean—데이터가 신선도 창보다 오래되었으면 true.
meta.cache_ttl_snumbers이 응답의 캐시 수명.
meta.fallbackstring—수집기나 소스에 장애가 발생했을 때 엔드포인트가 반환하는 내용.

2026-11-11 23:00 UTC에 실제 응답 3건으로 생성.

응답 예시

/api/sd/options/strikes?coin=BTC · 2026-11-13 03:58:21 UTC에 수집한 실제 응답. 긴 배열과 맵은 표시를 위해 줄였습니다: strikes: 원래 항목 146개; meta.source: 원래 항목 6개; expiries_available: 원래 항목 12개; coverage.field_gaps: 원래 항목 4개; coverage.unavailable: 원래 항목 12개; coverage.stale_included: 원래 항목 6개.

  • {
    • "success": true,
    • "schema": "coinboss.sd.options/1",
    • "now": 1794542301841,
    • "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": [
      • { … 12 },
      • { … 12 }
      ],
    • "coverage": {
      • "included_exchanges": [ … 6 ],
      • "unavailable": [ … 2 ],
      • "stale_excluded": [],
      • "field_gaps": [ … 2 ],
      • "stale_included": [ … 2 ]
      },
    • "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": [ … 2 ],
      • "observed_at": 1794522472654,
      • "received_at": 1794522473814,
      • "fetched_at": 1794542301841,
      • "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…"
      }
    }

검증된 샘플

프로브는 위 예시 외에도 아래 파라미터로 이 엔드포인트를 호출하고 매번 스키마를 검사합니다.

파라미터HTTP지연 시간결과
coin=ETH20011 ms통과 STALE
coin=BTC&exchange=deribit2005 ms통과 STALE
coin=BTC&expiry=2020-01-014042 ms통과 예상된 오류 반환

2026-11-13 03:58:21 UTC 점검

상세 정보

인증
없음. 공개 엔드포인트.
요청 한도
IP당 분당 1200회
서버 캐시
60s
엣지 마이크로 캐시
10s
갱신 주기
수집기는 10분마다 한 차례 실행되며, 거래소는 마지막으로 성공한 수집 이후 25분 동안 최신으로 간주됩니다.
구간
최신 스냅샷. 거래량 필드는 직전 24시간을 포괄합니다.
데이터 소스
Deribit, Binance, Bybit, OKX, Gate, Coincall의 공개 REST 옵션 엔드포인트를 CoinBoss가 수집해 저장합니다(sd_opt_latest, sd_opt_summary_hourly). 제3자 집계 서비스는 관여하지 않습니다.
거래소 커버리지
옵션 거래소 6곳. 선택한 거래소에 상장된 옵션이 없는 코인은 null 필드, `meta.quality = "UNAVAILABLE"`, 그리고 `coverage.unavailable`의 사유와 함께 HTTP 200을 반환합니다. 공개 옵션 피드가 없는 거래소도 그곳에 나열됩니다.
페이지네이션
페이지네이션 없음. 선택 범위의 모든 행사가를 반환합니다.
정렬
행사가 오름차순.
단위
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.
산출 방식
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.
타임스탬프
필드 설명에 별도 언급이 없는 한 Unix epoch 밀리초(UTC)
응답 형식
json
안정성
안정
제공 시작
2026-11-11

실시간 상태

저하2026-11-13 03:58:21 UTC 점검HTTP 20019 ms스키마 일치최신 데이터 포인트: 5.5h 경과

엔드포인트가 보고한 데이터 품질: STALE

최근 30일 가용성

점검 407회 중 100% 통과

마지막 프로브에서 감지된 스키마 드리프트
  • 반환되지만 문서에 없음: coverage.stale_included, coverage.stale_included[], coverage.stale_included[].exchange, coverage.stale_included[].age_s

오류

실패한 호출은 모든 엔드포인트에서 동일한 구조로 반환됩니다. 전체 목록은 오류 페이지에 있습니다. 오류 및 요청 한도 →

코드HTTP의미대응 방법
INVALID_PARAM400필수 파라미터가 누락되었거나 허용되지 않는 값입니다. 문제가 된 파라미터를 알 수 있으면 `param`에 그 이름이 들어갑니다.그대로 재시도하지 말고 요청을 수정하십시오.
UNAUTHORIZED401`CB-API-KEY` 헤더를 보냈지만 알 수 없거나 폐기된 키입니다. 공개 데이터에는 키가 필요 없으므로 헤더를 빼거나 유효한 키를 사용하십시오.그대로 재시도하지 마십시오.
FORBIDDEN403해당 경로는 공개 API에 포함되지 않습니다(내부용 또는 계정 전용).재시도하지 마십시오.
NOT_FOUND404알 수 없는 경로이거나, 요청한 코인 / 거래소 / 펀드가 존재하지 않습니다.재시도하지 말고 경로와 식별자를 카탈로그와 대조해 확인하십시오.
RATE_LIMITED429요청 수가 분당 한도를 초과했습니다. `Retry-After`가 대기해야 할 초를 알려 줍니다.`Retry-After`만큼 기다린 뒤 백오프를 적용해 재시도하십시오.
INTERNAL500예기치 않은 서버 오류입니다. 메시지는 의도적으로 일반적인 내용만 담습니다. 신고할 때 `request_id`를 인용하십시오.몇 초 뒤 한 번 재시도하고, 계속되면 요청 ID와 함께 신고하십시오.
UPSTREAM_FAILED503이 엔드포인트의 데이터 소스가 제시간에 응답하지 않았습니다. 그 대신 만료된 수치나 대체 수치를 반환하는 일은 없습니다.백오프를 적용해 재시도하고 상태 페이지를 확인하십시오.
UNAVAILABLE501 / 503데이터셋이 일시적으로 준비되지 않았거나(캐시 워밍 중) 엔드포인트에 아직 합법적인 공개 소스가 없습니다.나중에 재시도하십시오. 설계상 사용 불가인 엔드포인트는 카탈로그에 표시되어 있습니다.
REQUEST_FAILED200일부 이전 엔드포인트는 HTTP 200에 `success: false`로 응답합니다. HTTP 상태만 보지 말고 항상 `success`를 확인하십시오.메시지에 따라 다릅니다. 실패한 요청으로 처리하십시오.

직접 실행

GET/api/sd/options/strikes저하
파라미터

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

string · 기본값 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 · 기본값 all — One venue, or `all` for the cross-venue aggregate.

요청 URLhttps://www.coinboss.com/api/sd/options/strikes?coin=BTC
엔드포인트를 선택하고 “요청 보내기”를 누르십시오. 응답, 헤더, 소요 시간이 여기에 표시됩니다.