Tardis.dev Documentation
  • Welcome
  • Frequently Asked Questions
    • General
    • Data
    • Billing and Subscriptions
  • Downloadable CSV files
  • Historical Data Details
    • BitMEX
    • Deribit
    • Binance USDT Futures
    • Binance COIN Futures
    • Binance Spot
    • FTX
    • OKX Futures
    • OKX Swap
    • OKX Options
    • OKX Spot
    • Huobi Futures
    • Huobi COIN Swaps
    • Huobi USDT Swaps
    • Huobi Global
    • Bitfinex Derivatives
    • Bitfinex
    • Coinbase Pro
    • Kraken Futures
    • Kraken
    • Bitstamp
    • Gemini
    • Bybit Derivatives
    • Bybit Spot
    • dYdX
    • WOO X
    • Kucoin Spot
    • Blockchain.com
    • Upbit
    • Phemex
    • Delta
    • AscendEX (BitMax)
    • FTX US
    • Binance US
    • Gate.io Futures
    • Gate.io
    • Bitnomial
    • Crypto.com
    • OKCoin
    • bitFlyer
    • HitBTC (high caps)
    • CoinFLEX (2.0)
    • Binance Jersey
    • Binance DEX
    • Poloniex
  • API
    • Getting Started
    • Python Client
    • Node.js Client
    • Tardis Machine Server
    • Instruments Metadata API
    • HTTP API Reference
  • Legal
    • Privacy Policy
    • Terms of Service
  • External Links
    • Public Roadmap
    • Open Source
    • Newsletter
    • Contact Us
    • Get API Key
    • Tardis.dev Home
Powered by GitBook
On this page
  • Downloadable CSV files
  • API Access and data format
  • Captured real-time channels
  • Market data collection details
Export as PDF
  1. Historical Data Details

BitMEX

BitMEX historical market data details - available data, coverage and data collection specifics

PreviousHistorical Data DetailsNextDeribit

Last updated 3 years ago

BitMEX historical data for all it's instruments is available since 2019-03-30.

Downloadable CSV files

data type

symbol

date

trades

XBTUSD

2019-07-01

incremental_book_L2

XBTUSD

2019-07-01

book_snapshot_25

XBTUSD

2019-07-01

quotes

XBTUSD

2019-07-01

derivative_ticker

XBTUSD

2019-07-01

trades

FUTURES

2020-03-01

incremental_book_L2

FUTURES

2020-03-01

liquidations

PERPETUALS

2021-09-01

book_ticker

XBTUSD

2022-01-01

How to download all Bitmex datasets for all instruments

# requires Python >=3.6
# pip install tardis-dev

from tardis_dev import datasets, get_exchange_details
import logging

# optionally enable debug logs
# logging.basicConfig(level=logging.DEBUG)

exchange = 'bitmex'
exchange_details = get_exchange_details(exchange)   

# iterate over and download all data for every symbol
for symbol in exchange_details["datasets"]["symbols"]:
    # alternatively specify datatypes explicitly ['trades', 'incremental_book_L2', 'quotes'] etc
    # see available options https://docs.tardis.dev/downloadable-csv-files#data-types
    data_types = symbol["dataTypes"]  
    symbol_id = symbol["id"]
    from_date =  symbol["availableSince"]
    to_date = symbol["availableTo"]

    # skip groupped symbols
    if symbol_id in ['PERPETUALS', 'SPOT', 'FUTURES']:
        continue

    print(f"Downloading {exchange} {data_types} for {symbol_id} from {from_date} to {to_date}")

    # each CSV dataset format is documented at https://docs.tardis.dev/downloadable-csv-files#data-types
    # see https://docs.tardis.dev/downloadable-csv-files#download-via-client-libraries for full options docs
    datasets.download(
        exchange = exchange,
        data_types = data_types,
        from_date =  from_date,
        to_date = to_date,
        symbols = [symbol_id],
        # TODO set your API key here
        api_key = "YOUR_API_KEY",
        # path where CSV data will be downloaded into
        download_dir = "./datasets",
    )
// npm install tardis-dev
// requires node version >=12
const { downloadDatasets, getExchangeDetails } = require('tardis-dev')

;(async () => {
  const exchange = 'bitmex'
  const exchangeDetails = await getExchangeDetails(exchange)

  // iterate over and download all data for every symbol
  for (const symbol of exchangeDetails.datasets.symbols) {
    // alternatively specify dataTypes explicitly ['trades', 'incremental_book_L2', 'quotes'] etc
    // see available options https://docs.tardis.dev/downloadable-csv-files#data-types
    const dataTypes = symbol.dataTypes
    const symbolId = symbol.id

    const from = symbol.availableSince
    const to = symbol.availableTo

    // skip groupped symbols
    if (['PERPETUALS', 'SPOT', 'FUTURES'].includes(symbolId)) {
      continue
    }

    console.log(`Downloading ${exchange} ${dataTypes} for ${symbolId} from ${from} to ${to}`)

    // each CSV dataset format is documented at https://docs.tardis.dev/downloadable-csv-files#data-types
    // see https://docs.tardis.dev/downloadable-csv-files#download-via-client-libraries for full options docs
    await downloadDatasets({
      exchange,
      dataTypes,
      from,
      to,
      symbols: [symbolId],
      // TODO: set your API key here
      apiKey: 'YOUR_API_KEY',
      //  path where CSV data will be downloaded into
      downloadDir: './datasets'
    })
  }
})()
curl -o bitmex_trades_2019-11-01_XBTUSD.csv.gz https://datasets.tardis.dev/v1/bitmex/trades/2019/11/01/XBTUSD.csv.gz

API Access and data format

# pip install tardis-client
import asyncio
from tardis_client import TardisClient, Channel
tardis_client = TardisClient(api_key="YOUR_API_KEY")

async def replay():
  # replay method returns Async Generator
  messages = tardis_client.replay(
    exchange="bitmex",
    from_date="2019-07-01",
    to_date="2019-07-02",
    filters=[Channel(name="orderBookL2", symbols=["XBTUSD"])]
  )

  # messages as provided by BitMEX real-time stream
  async for local_timestamp, message in messages:
    print(message)


asyncio.run(replay())

// npm install tardis-dev
const { replay } = require('tardis-dev');

async function run() {
  try {
    const messages = replay({
      exchange: 'bitmex',
      from: '2019-07-01',
      to: '2019-07-02',
      filters: [{ channel: 'orderBookL2', symbols: ['XBTUSD'] }],
      apiKey: 'YOUR_API_KEY'
    });

    // messages as provided by BitMEX real-time stream
    for await (const { localTimestamp, message } of messages) {
      console.log(localTimestamp, message);
    }
  } catch (e) {
    console.error(e);
  }
}

run();

curl -g 'https://api.tardis.dev/v1/data-feeds/bitmex?from=2019-07-01&filters=[{"channel":"orderBookL2","symbols":["ETHUSD"]}]&offset=2'

curl -g 'localhost:8000/replay?options={"exchange":"bitmex","filters":[{"channel":"orderBookL2","symbols":["XBTUSD"]}],"from":"2019-07-01","to":"2019-07-02"}'

Captured real-time channels

Market data collection details

BitMEX servers are located in AWS eu-west-1 region (Dublin, Ireland).

Historical CSV datasets for the first day of each month are available to download without API key. See .

See full with datasets format spec, data samples and more.

that shows all available download options (download path customization, filenames conventions and more).

that shows all available download options (download path customization, filenames conventions and more).

See which allows downloading single file at once.

Historical data format is the same as provided by real-time BitMEX WebSocket API with addition of local timestamps. If you'd like to work with normalized data format instead (same format for each exchange) see or official that can perform data normalization client-side.

See .

See .

See .

is a locally runnable server that exposes API allowing efficiently requesting historical market data for whole time periods in contrast to that provides data only in minute by minute slices.

See docs.

Click any channel below to see response with historical data recorded for it.

partial messages returned via HTTP API may contain data for all BitMEX instruments and require filtering client-side if only selected symbols were requested

- available since 2021-02-21

for BitMEX is located in GCP europe-west2 region (London, UK). Real-time market data is captured via single WebSocket connection.

downloadable CSV files documentation
downloadable CSV files documentation
downloadable CSV files
client libs
Python client docs
Node.js client docs
HTTP API docs
Tardis-machine
HTTP API
tardis-machine
trade
orderBookL2
liquidation
connected
announcement
chat
publicNotifications
instrument
settlement
funding
insurance
orderBookL2_25
quote
quoteBin1m
quoteBin5m
quoteBin1h
quoteBin1d
tradeBin1m
tradeBin5m
tradeBin1h
tradeBin1d
orderBook10
Download sample
Download sample
Download sample
Download sample
Download sample
Download sample
Download sample
Download sample
Download sample
https://api.tardis.dev/v1/exchanges/bitmexapi.tardis.dev
See BitMEX historical data coverage: available symbols, channels, date ranges and incidents
https://api.tardis.dev/v1/data-feeds/bitmex?from=2019-07-01&filters=[{%22channel%22:%22orderBookL2%22,%22symbols%22:[%22ETHUSD%22]}]&offset=2api.tardis.dev
Example API response for BitMEX historical market data request
WebSocket API - BitMEXBitMEX
See BitMEX WebSocket API docs providing documentation for each captured channel's format
Market data collection infrastructure
Logo
HTTP API
See docs
See docs
datasets API reference