CoolFace
Datasetpublic

KEDevO/crypto-market-datasets

Crypto Market Data Lake Created and maintained by Eimantas Kulbe ⭐ If you use this dataset in research, a product, or any publication, please cite the author (see Citation below). It took significant infrastructure and months of collection effort — a citation is the simplest way to give credit. A continuously growing data lake of crypto market microstructure data sourced from Binance and alternative data providers. Full coverage across all 10 symbols — complete tick-level… See the full description on the dataset page: https://huggingface.co/datasets/KEDevO/crypto-market-datasets.

sourceHugging Facecc-by-4.0updated 3mo agoView on Hugging Face
7likes1.8kdownloads
Dataset Card

Crypto Market Data Lake

Created and maintained by [Eimantas Kulbe](https://huggingface.co/KEDevO)

⭐ If you use this dataset in research, a product, or any publication, please cite the author (see Citation below). It took significant infrastructure and months of collection effort — a citation is the simplest way to give credit.

A continuously growing data lake of crypto market microstructure data sourced from Binance and alternative data providers. Full coverage across all 10 symbols — complete tick-level history from genesis to present, updated monthly.

Version `v202626` — BTC/ETH/SOL/BNB/XRP/DOGE full history, May 2026 snapshot.

All files are compressed Parquet (Snappy), sized 50–300 MB each for efficient streaming and DuckDB / pandas compatibility. All timestamps are int64 milliseconds UTC.


Symbols & Coverage

SymbolAssetSpot agg_trades fromFutures agg_trades from
BTCUSDTBitcoinAug 2017Jan 2020
ETHUSDTEthereumJan 2018Oct 2019
SOLUSDTSolanaMar 2021Mar 2021
BNBUSDTBNBJul 2017Oct 2019
XRPUSDTXRP / RippleOct 2017Oct 2019
DOGEUSDTDogecoinJul 2019May 2021
ADAUSDTCardanoApr 2018Aug 2020
AVAXUSDTAvalancheSep 2020Dec 2020
LINKUSDTChainlinkJan 2019Aug 2020
DOTUSDTPolkadotAug 2020Jan 2021

Datasets included

DatasetSymbolsMarketGranularity
Aggregate tradesBTC ETH SOL BNB XRP DOGE ADA AVAX LINK DOTSpot + Futures UMEvery trade
Klines (OHLCV 1m)BTC ETH SOL BNB XRP DOGE ADA AVAX LINK DOTSpot + Futures UM1-minute bars
Funding ratesBTCFutures UMEvery 8 h
Open interestBTCFutures UMHourly
Premium indexBTCFutures UM1-minute
Fear & Greed indexDaily
Deribit BTC DVOL + options15-minute
Macro (DXY, SPX, Gold, US10Y)Daily
Note: BTC futures agg_trades Sep–Dec 2019 unavailable (Binance vault 404).

File layout

raw/
  agg_trades/
    market={spot,futures}/symbol={BTCUSDT,ETHUSDT,SOLUSDT}/year=YYYY/month=MM/
      {start_ms}_{end_ms}.parquet          ← 50–300 MB each
  klines/
    market={spot,futures}/symbol={BTCUSDT,ETHUSDT,SOLUSDT}/interval=1m/year=YYYY/month=MM/
      {start_ms}_{end_ms}.parquet
  funding_rates/symbol=BTCUSDT/year=YYYY/month=MM/
  open_interest/symbol=BTCUSDT/year=YYYY/month=MM/
  premium_index/symbol=BTCUSDT/year=YYYY/month=MM/
  alternative_me/fear_greed/year=YYYY/
  deribit/year=YYYY/month=MM/
  macro/{dxy,spx,gold,us10y}/year=YYYY/

Schemas

agg_trades

ColumnTypeDescription
agg_idint64Binance aggregate trade ID
pricefloat64Trade price (USDT)
quantityfloat64Trade quantity (BTC)
firsttradeidint64First raw trade in the aggregate
lasttradeidint64Last raw trade in the aggregate
timestampint64Execution time (ms UTC)
isbuyermakerboolTrue = seller is aggressor
symbolstringBTCUSDT
marketstringspotfutures

klines

ColumnTypeDescription
open_timeint64Bar open (ms UTC)
open / high / low / closefloat64OHLC prices (USDT)
volumefloat64Base volume (BTC)
close_timeint64Bar close (ms UTC)
quote_volumefloat64Quote volume (USDT)
tradesint32Trade count in bar
takerbuybasefloat64Taker buy base volume
takerbuyquotefloat64Taker buy quote volume
symbolstringBTCUSDT
intervalstring1m
marketstringspotfutures

funding_rates

ColumnTypeDescription
timestampint64Funding time (ms UTC)
funding_ratefloat64Rate applied
funding_timeint64Funding settlement time (ms UTC)
symbolstringBTCUSDT

Quick-start (DuckDB)

python
import duckdb

# Spot aggregate trades for 2021 — full year, fast scan
df = duckdb.sql("""
    SELECT date_trunc('hour', to_timestamp(timestamp/1000)) AS hour,
           sum(quantity * price) AS usd_volume,
           count(*)              AS trade_count
    FROM read_parquet(
        'raw/agg_trades/market=spot/symbol=BTCUSDT/year=2021/**/*.parquet',
        hive_partitioning=true
    )
    GROUP BY 1 ORDER BY 1
""").df()

# All-history 1-minute klines (spot)
klines = duckdb.read_parquet(
    'raw/klines/market=spot/symbol=BTCUSDT/interval=1m/**/*.parquet',
    hive_partitioning=True
)

Data sources

SourceUsed forURL
Binance REST API (/api/v3/aggTrades, /fapi/v1/aggTrades)Aggregate trades 2022–2026docs.binance.com
Binance Data Vault (monthly ZIP archives)Aggregate trades 2017–2021data.binance.vision
Binance REST API (/api/v3/klines, /fapi/v1/klines)OHLCV klines all historydocs.binance.com
Binance REST API (/fapi/v1/fundingRate)Funding ratesdocs.binance.com
Binance REST API (/futures/data/openInterestHist)Open interest (30-day window)docs.binance.com
Binance WebSocket (spot + futures public streams)Live klines + tradesdocs.binance.com
Deribit REST API (public)BTC DVOL + options marketdocs.deribit.com
alternative.me Fear & Greed APIFear & Greed indexalternative.me/crypto/fear-and-greed-index
Yahoo Finance (yfinance)DXY, SPX, Gold, US10Y macrofinance.yahoo.com

Collection methodology

Built and maintained by Eimantas Kulbe using a custom Python pipeline running on four VPS nodes with rotating HTTP proxy pools to handle Binance rate limits without API keys.

  • Pre-2022 aggregate trades: downloaded from the Binance Data Vault monthly ZIP archives; parsed with DuckDB for out-of-core efficiency
  • 2022–2026 aggregate trades: collected via Binance REST API using 1-hour time-range windows, distributed across workers with modulo assignment
  • Klines / Funding rates / OI: Binance REST API, full history
  • Real-time data: Binance WebSocket public streams (no API key required)
  • Alt data: Deribit REST, alternative.me, Yahoo Finance — polled every 15 minutes to 1 hour

Infrastructure: all writes are idempotent with a PostgreSQL chunk-log tracking every hourly window (done | skipped | failed). Schema version 1 is embedded in every Parquet file's metadata for forward-compatibility.

Known gaps

GapReason
Futures agg_trades Sep–Dec 2019Binance Data Vault returns 404; no public source exists
Isolated zero-trade hours (early 2017)Genuine gaps in exchange history

License

This dataset is released under the [Creative Commons Attribution 4.0 International (CC BY 4.0)](https://creativecommons.org/licenses/by/4.0/) license.

You are free to share, adapt, and use this data for any purpose including commercial, as long as you give appropriate credit to the author.

⚠️ Attribution is required. If you use this dataset, you must cite Eimantas Kulbe as the author. See the Citation section below.

Citation

If you use this dataset in academic work, a commercial product, a blog post, or any other publication, please cite it. This is a large-scale data collection effort and proper attribution helps sustain open data projects.

BibTeX:

bibtex
@dataset{kulbe_btcusdt_2026,
  author    = {Kulbe, Eimantas},
  title     = {Crypto Market Data Lake (Binance + Alt Data)},
  year      = {2026},
  publisher = {HuggingFace Datasets},
  url       = {https://huggingface.co/datasets/KEDevO/crypto-market-datasets},
  license   = {CC BY 4.0},
  note      = {Contains aggregate trades, OHLCV klines, funding rates,
               open interest, and alternative data for BTCUSDT, ETHUSDT,
               and SOLUSDT on Binance, through May 2026.}
}

APA:

Kulbe, E. (2026). Crypto Market Data Lake (Binance + Alt Data) [Data set]. HuggingFace Datasets. https://huggingface.co/datasets/KEDevO/crypto-market-datasets

Acknowledgement (for papers):

The cryptocurrency market data used in this work was sourced from the Crypto Market Data Lake compiled by Eimantas Kulbe (2026), available at https://huggingface.co/datasets/KEDevO/crypto-market-datasets under CC BY 4.0.

Dataset compiled and maintained by [Eimantas Kulbe](https://huggingface.co/KEDevO). For issues or questions, open a discussion on the dataset page.