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

OKX Spot

OKX Spot historical market data details - currency pairs, data coverage and data collection specifics

PreviousOKX OptionsNextHuobi Futures

Last updated 8 months ago

OKEx historical data for spot high caps currency pairs is available since 2019-03-30, data for all spot currency pairs is available since 2021-03-11.

Downloadable CSV files

data type

symbol

date

trades

BTC-USDT

2020-01-01

incremental_book_L2

BTC-USDT

2020-01-01

book_snapshot_25

BTC-USDT

2020-01-01

quotes

BTC-USDT

2020-01-01

trades

ETH-USDT

2020-03-01

incremental_book_L2

ETH-USDT

2020-03-01

How to download all OKEx 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 = 'okex'
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 = 'okex'
  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 okex_trades_2019-11-01_BTC-USD.csv.gz https://datasets.tardis.dev/v1/okex/trades/2019/11/01/BTC-USD.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="okex",
    from_date="2020-01-01",
    to_date="2020-01-02",
    filters=[Channel(name="spot/trade", symbols=[])]
  )

  # messages as provided by OKEx 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: 'okex',
      from: '2020-01-01',
      to: '2020-01-02',
      filters: [{ channel: 'spot/trade', symbols: [] }],
      apiKey: 'YOUR_API_KEY'
    });

    // messages as provided by OKEx 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/okex?from=2020-01-01&filters=[{"channel":"spot/trade","symbols":[]}]&offset=0'
curl -g 'localhost:8000/replay?options={"exchange":"okex","filters":[{"channel":"spot/trade","symbols":[]}],"from":"2020-01-01","to":"2020-01-02"}'

Captured real-time channels

Market data collection details

OKEx servers are located in Alibaba Cloud cn-hongkong region (Hong Kong, China).

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 OKX WebSocket v3 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.

- available until 2020-04-10

- available since 2020-04-10

- available since 2020-07-05

for OKX Spot since 2022-05-04T16:45 is located in AWS HK region (Hong Kong, China, VPC colo setup), before that, starting since 2020-05-15 it was located in GCP asia-northeast1 (Tokyo, Japan) and initially it was located in GCP europe-west2 region (London, UK). Real-time market data is captured via multiple WebSocket connections.

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
spot/trade
spot/ticker
spot/depth
spot/depth_l2_tbt
system/status
Download sample
Download sample
Download sample
Download sample
Download sample
Download sample
HTTP API
Market data collection infrastructure
https://api.tardis.dev/v1/data-feeds/okex?from=2020-01-01&filters=[{%22channel%22:%22spot/trade%22,%22symbols%22:[]}]&offset=0api.tardis.dev
Example API response for OKEx Spot historical market data request
OKEx API guide | OKEx technical support | OKEx
See OKEx Spot WebSocket API docs providing documentation for each captured channel's format
https://api.tardis.dev/v1/exchanges/okexapi.tardis.dev
See OKX Spot historical data coverage: available symbols, channels, date ranges and incidents
See docs
See docs
datasets API reference
Logo