Downloadable CSV files
Last updated
Last updated
CSV datasets are available via that allows downloading tick level , ,, , , and data. For ongoing data, CSV datasets for a given day are available on the next day around 06:00 UTC.
Historical datasets for the first day of each month are available to download without API key. Our Node.js and Python clients have built-in functions to efficiently download whole date range of data.
See that shows all available download options (download path customization, filenames conventions and more).
columns delimiter: , (comma)
new line marker: \n (LF)
decimal mark: . (dot)
date time timezone: UTC
As exchanges real-time feeds usually publish multiple order book levels updates via single message you can recognize that by grouping rows by local_timestamp
field if needed.
column name
description
exchange
symbol
instrument symbol as provided by exchange (always uppercase)
timestamp
timestamp provided by exchange in microseconds since epoch - if exchange does not provide one local_timestamp
value is used as a fallback
local_timestamp
message arrival timestamp in microseconds since epoch
is_snapshot
possible values:
true
- if update was a part of initial order book snapshot
false
- if update was not a part of initial order book snapshot
If last update was not a snapshot and current one is, then existing order book state must be discarded (all existing levels removed)
side
determines to which side of the order book update belongs to:
bid
- bid side of the book, buy orders
ask
- ask side of the book, sell orders
price
price identifying book level being updated
amount
updated price level amount as provided by exchange, not a delta - an amount of 0
indicates that the price level can be removed
column name
description
exchange
symbol
instrument symbol as provided by exchange (always uppercase)
timestamp
timestamp provided by exchange in microseconds since epoch - if exchange does not provide one local_timestamp
value is used as a fallback
local_timestamp
message arrival timestamp in microseconds since epoch
asks[0..24].price
top 25 asks prices in ascending order, empty if there aren't enough price levels available in the order book or provided by the exchange
asks[0..24].amount
top 25 asks amounts in ascending order, empty if there aren't enough price levels available in the order book or provided by the exchange
bids[0..24].price
top 25 bids prices in descending order, empty if there aren't enough price levels available in the order book or provided by the exchange
bids[0..24].amount
top 25 bids amounts in descending order, empty if there aren't enough price levels available in the order book or provided by the exchange
column name
description
exchange
symbol
instrument symbol as provided by exchange (always uppercase)
timestamp
timestamp provided by exchange in microseconds since epoch - if exchange does not provide one local_timestamp
value is used as a fallback
local_timestamp
message arrival timestamp in microseconds since epoch
asks[0..4].price
top 5 asks prices in ascending order, empty if there aren't enough price levels available in the order book or provided by the exchange
asks[0..4].amount
top 5 asks amounts in ascending order, empty if there aren't enough price levels available in the order book or provided by the exchange
bids[0..4].price
top 5 bids prices in descending order, empty if there aren't enough price levels available in the order book or provided by the exchange
bids[0..4].amount
top 5 bids amounts in descending order, empty if there aren't enough price levels available in the order book or provided by the exchange
column name
description
exchange
symbol
instrument symbol as provided by exchange (always uppercase)
timestamp
timestamp provided by exchange in microseconds since epoch - if exchange does not provide one local_timestamp
value is used as a fallback
local_timestamp
message arrival timestamp in microseconds since epoch
id
trade id as provided by exchange, empty if exchange does not provide one - different exchanges provide id's as numeric values, GUID's or other strings, and some do not provide that information at all
side
liquidity taker side (aggressor), possible values:
buy
- liquidity taker was buying
sell
- liquidity taker was selling
unknown
- exchange did not provide that information
price
trade price as provided by exchange
amount
trade amount as provided by exchange
column name
description
exchange
symbol
instrument symbol as provided by exchange (always uppercase)
timestamp
ticker timestamp provided by exchange in microseconds since epoch
local_timestamp
ticker message arrival timestamp in microseconds since epoch
type
option type, possible values:
put
call
strike_price
option strike price
expiration
option expiration date in microseconds since epoch
open_interest
current open interest, empty is exchange does not provide one
last_price
price of the last trade, empty if there weren't any trades yet
bid_price
current best bid price, empty if there aren't any bids
bid_amount
current best bid amount, empty if there aren't any bids
bid_iv
implied volatility for best bid, empty if there aren't any bids
ask_price
current best ask price, empty if there aren't any asks
ask_amount
current best ask amount, empty if there aren't any asks
ask_iv
implied volatility for best ask, empty if there aren't any asks
mark_price
mark price, empty is exchange does not provide one
mark_iv
implied volatility for mark price, empty is exchange does not provide one
underlying_index
underlying index name that option contract is based upon
underlying_price
underlying price, empty is exchange does not provide one
delta
delta value for the option, empty is exchange does not provide one
gamma
gamma value for the option, empty is exchange does not provide one
vega
vega value for the option, empty is exchange does not provide one
theta
theta value for the option, empty is exchange does not provide one
rho
rho value for the option, empty is exchange does not provide one
column name
description
exchange
symbol
instrument symbol as provided by exchange (always uppercase)
timestamp
timestamp provided by exchange in microseconds since epoch - if exchange does not provide one local_timestamp
value is used as a fallback
local_timestamp
message arrival timestamp in microseconds since epoch
ask_amount
best ask amount as provided by exchange, empty if there aren't any asks
ask_price
best ask price as provided by exchange, empty if there aren't any asks
bid_price
best bid price as provided by exchange, empty if there aren't any bids
bid_amount
best bid amount as provided by exchange, empty if there aren't any bids