Deribit Options Monitor (BTC & ETH)
Pricing
from $4.00 / 1,000 results
Deribit Options Monitor (BTC & ETH)
Live Deribit options board for BTC and ETH: strikes, expiries, greeks, implied volatility, mark prices, open interest and 24h volume, one row per instrument. Filter by expiry window or a watchlist, or switch to dated futures or the perpetual. Every run is a fresh snapshot.
Pricing
from $4.00 / 1,000 results
Rating
0.0
(0)
Developer
Philip Kirkbride
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
0
Monthly active users
15 hours ago
Last modified
Categories
Features
Share
Deribit Options Monitor
Collect the live BTC and ETH options board from Deribit: strikes, expiries, greeks, implied volatility, mark prices, open interest and 24-hour volume in one unified record per instrument. Dated futures and the perpetual are available through the same input.
Typical uses
- Volatility dashboards: chart the implied-volatility surface and term structure for BTC or ETH, refreshed on a schedule.
- Options flow research: compare open interest, volume and 24-hour mark moves across strikes to find unusual positioning.
- Risk monitoring: watch a strike/expiry watchlist and get a Telegram digest when implied volatility or a 24-hour move crosses your threshold.
- Backtest inputs: snapshot the board at regular intervals and replay the greeks and IV history offline.
How it works
- Pick a currency (
BTCorETH) and an instrument kind (option, datedfutureorperpetual). - The Actor reads the instrument list, keeps the expiry window you asked for and ranks the rest nearest-expiry first, then closest-to-the-money (anchored on the perpetual's index price).
- One ticker per selected instrument is added: mark price, mark/bid/ask IV, greeks, best bid/ask, last price, index price, open interest, 24-hour volume and 24-hour change.
- Rows are saved to the dataset (JSON, CSV or Excel) and summarised in the
OUTPUTrecord, with an optional Telegram digest.
Quick start
{"currency": "BTC", "kind": "option", "expiryWithinDays": 30, "maxInstruments": 20}
An empty run returns a small 5-instrument sample (the options expiring soonest
and closest to the money) and says so in the status message and OUTPUT
(usedExample: true). Raise maxInstruments (up to 500) for the full board, or
list exact instrument names:
{"watchlist": ["BTC-26MAR27-150000-C", "BTC-26MAR27-140000-P"]}
Input
| Name | Type | Default | What it does |
|---|---|---|---|
currency | string | BTC | Underlying to list: BTC or ETH. |
kind | string | option | option, future (dated futures), or perpetual. |
expiryWithinDays | integer | 30 | Keep instruments expiring within this many days; 0 = no window. Ignored with a watchlist. |
maxInstruments | integer | 60 | How many instruments to return, ranked nearest-expiry and closest-to-the-money first (up to 500). One ticker request per instrument. |
watchlist | array | [] | Optional explicit instrument names, e.g. ["BTC-26MAR27-150000-C"]. Overrides the expiry window and ranking. |
alertIvPct | number | 150 | Instruments with implied volatility at or above this percent go into the Telegram digest. |
alertMovePct | number | 25 | Instruments with a 24h price change at or above this percent go into the same digest (symmetric). |
telegramChatId | string | empty | Chat for the digest; requires the TELEGRAM_BOT_TOKEN secret environment variable. |
requestDelaySecs | number | 0.1 | Pause between instruments. |
Output
One dataset record per instrument: recordKey, source, kind, currency,
instrumentName, optionType, strike, settlementPeriod, isActive,
tickSize, minTradeAmount, expirationAt, daysToExpiry, markPrice,
markPriceUsdImplied, markIv/bidIv/askIv,
delta/gamma/vega/theta/rho,
bestBidPrice/bestAskPrice/lastPrice, indexPrice, openInterest,
volume24h/volume24hUsd, priceChange24hPct, funding8h (perpetuals),
sourceUrl, collectedAt.
{"recordKey":"deribit:BTC-26MAR27-150000-C","source":"deribit","kind":"option","currency":"BTC","instrumentName":"BTC-26MAR27-150000-C","optionType":"call","strike":150000,"daysToExpiry":198,"markPrice":0.0021,"markPriceUsdImplied":2091.6,"markIv":64.2,"bidIv":63.4,"askIv":65.1,"delta":0.42,"gamma":0.000004,"vega":118.4,"theta":-11.2,"openInterest":1240.5,"volume24h":18.7,"collectedAt":"2026-09-06T09:41:55Z"}
The run summary (KeyValue store OUTPUT) reports coverage counters, whether the
run was the empty-input sample, the alert digest, and warnings (unmatched
watchlist entries, a missing index anchor).
Pricing
Pay per result:
- $0.005 actor start (one start event per GB of memory; the default 512 MB run is one start event).
- $0.004 per delivered instrument record.
Worked costs: the empty-input 5-instrument sample is about $0.025; a 20-instrument board about $0.085; the full 60-instrument default board about $0.245. Only delivered rows are charged.
FAQ
How fresh is the data? Each run reads live tickers for the selected board at run time; nothing is cached between runs.
How is the board selected? By default, the instruments expiring soonest and
closest to the money (anchored on the perpetual's index price), or give an
explicit watchlist.
Why are some USD marks derived? Options are inverse contracts quoted in BTC/ETH, so each row's USD mark is implied from its own index leg and labeled as such. Deep out-of-the-money options can legitimately mark at the minimum tick (a real value, not missing data).
What happens with an unknown instrument name? It is reported in the run warnings; matched entries continue normally. A watchlist that matches nothing ends as a labelled empty run.
What about the Telegram alert? It is optional and own-use only: set
telegramChatId and add TELEGRAM_BOT_TOKEN as a secret environment variable.
A failed or skipped send is a warning, never a failed run.
Can I run it on a schedule? Yes — that is the main use case. Use a small
watchlist or expiryWithinDays window for frequent snapshots.
Support
For support, contact Apify support and include the Actor run ID.