Subscribes/Unsubscribes to market futures Trades data.
Once you're connected to this subscription: wss://ws.amberdata.com/futures, 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:futures:funding_rates", { "instrument": "ICXUSDT", "exchange": "binance" } ]
}
Param | Type | Description |
---|---|---|
instrument | string | The asset instrument. |
exchange | string | The exchange for which to retrieve asset instruments. |
Response
{
"jsonrpc": "2.0",
"method": "subscription",
"params": {
"subscription": "8d5b4e5a-435d-40d4-9701-b3d8c2d15148",
"result": {
"exchange": "binance",
"instrument": "GASUSDT",
"timestamp": 1711571101000,
"insertionTimestamp": 1711571101000,
"fundingInterval": null,
"fundingRate": 0.00019676,
"nextFundingRate": null,
"nextFundingTime": 1711584000000,
"isActualFundingRate": false
}
}
}
Field | Type | Description |
---|---|---|
exchange | string | The exchange. |
instrument | string | The asset pair |
timestamp | number | The time at which the funding rate took place. |
insertionTimestamp | number | The time at which the funding rate insert to database |
fundingInterval | number|null | The interval funding |
fundingRate | number | The funding rate value |
nextFundingRate | number | The next funding rate for which data is available. |
nextFundingTime | number|null | The next funding time for which data is available. |
isActualFundingRate | boolean | If true , then it's the actual funding rate that has been realized and applied. If false , then it's a projected/estimated funding rate for an upcoming funding interval. |
Example
const WebSocket = require('ws');
const ws = new WebSocket('wss://ws.amberdata.com/futures', {headers: {x-api-key:'<api_key>'}});
ws.on('open', () => {
ws.send(JSON.stringify({
jsonrpc: '2.0',
method: 'subscribe',
params: ['market:futures:funding_rates', {'instrument': 'BTCUSD_PERP', 'exchange': 'binance'}],
id: 1,
}));
});
ws.on('message', data => {
console.log(JSON.stringify(JSON.parse(data), null, 2));
});