market:options:trades

Subscribes/Unsubscribes to market options Trades data.


🆕

Important Update: WebSocket Endpoint Migration

We are excited to announce an upgrade to our WebSocket service! To ensure that our users enjoy enhanced reliability and performance, we have migrated our WebSocket endpoint. Please update your applications to connect to the new endpoint as described here:

  • Old Endpoint: wss://ws.web3api.io/
  • New Endpoint: wss://ws.amberdata.com/options

Action Required

Users are required to update the endpoint URL in their applications. The good news is that the response JSON schemas remain unchanged, so you can expect a seamless transition with minimal adjustments needed on your end.

Support

We understand that changes like these can raise questions. Our support team is here to assist with any issues or concerns you may have during this migration process. Please don’t hesitate to contact us for support at: [email protected].

We appreciate your prompt action to migrate to the new WebSocket endpoint.

Once you're connected to this subscription: wss://ws.amberdata.com/options, you must provide either the instrument or exchange - one needs to be specified, both cannot be empty.

Request

{
	"jsonrpc": "2.0",
	"id": 1,
	"method": "subscribe",
	"params": [
		"market:options:trades",
		{
			"instrument": "BTC-16JUN23-26000-P",
			"exchange": "deribit"
		}
	]
}
ParamTypeDescription
instrumentstringThe asset instrument.
exchangestringThe exchange for which to retrieve asset instruments.

Response

{
    "jsonrpc": "2.0",
    "method": "subscription",
    "params": {
        "subscription": "c148c36c-ba18-4364-abd6-528b61b4e068",
        "result": {
            "instrument": "ETH-29MAR24-3650-C",
            "exchange": "deribit",
            "exchangeTimestamp": 1711571475505,
            "exchangeTimestampNanoseconds": 0,
            "isBuySide": true,
            "price": 0.005,
            "size": 1,
            "tradeId": "ETH-201932780",
            "tradeSequence": "1535",
            "tickDirection": 1,
            "markPrice": 0.00497,
            "iv": 71.45,
            "indexPrice": 3503.08
        }
    }
}
FieldTypeDescription
exchangestringThe exchange.
instrumentstring
exchangeTimestampnumberTimestamp that the exchange returned.
exchangeTimestampNanosecondsnumberNanoseconds part of exchangeTimestamp.
isBuySideboolean | nulltrue if the trade is a buy, false otherwise.
quoteSizenumber | null
pricenumber | nullThe price at which the instrument was traded.
sizenumber | nullThe total amount of the instrument that was traded.
tradeIdstring | nullThe exchange provided id of the trade.
tradeSequencenumber
tickDirectionnumber
markPricenumber
ivnumberThe implied volatility of the instrument.
indexPricenumberThe price of the underlying asset.

Example

const WebSocket = require('ws');
const ws = new WebSocket('wss://ws.amberdata.com/options', {headers: {x-api-key:'<api_key>'}});

ws.on('open', () => {
  ws.send(JSON.stringify({
      jsonrpc: '2.0',
      method: 'subscribe',
      params: ['market:options:trades', {'instrument': 'BTC-16JUN23-26000-P', 'exchange': 'deribit'}],
      id: 1,
    }));
});

ws.on('message', data => {
  console.log(JSON.stringify(JSON.parse(data), null, 2));
});