Torch-Trade/bnbusdt_perp_1m_10_2021_to_02_2026
收藏Hugging Face2026-03-02 更新2026-03-29 收录
下载链接:
https://hf-mirror.com/datasets/Torch-Trade/bnbusdt_perp_1m_10_2021_to_02_2026
下载链接
链接失效反馈官方服务:
资源简介:
---
license: mit
task_categories:
- time-series-forecasting
- reinforcement-learning
tags:
- finance
- cryptocurrency
- bnb
- trading
- ohlcv
- perpetual-futures
- derivatives
- binance
size_categories:
- 1M<n<10M
---
# BNBUSDT Perpetual Futures 1-Minute OHLCV (1 2021 - Mar 2026)

## Overview
1-minute OHLCV candlestick data for the **BNB/USDT USDT-margined perpetual futures** contract on Binance, covering **October 1, 2021** to **February 28, 2026**.
- **Rows**: 2,321,277
- **Completeness**: ~100% (only 2 single-bar month-boundary gaps from data packaging)
## Why futures OHLCV?
Perpetual futures are the most actively traded crypto instruments, with volume typically **3-10x higher** than spot. This dataset provides several signals not available in spot data:
- **Futures volume**: Higher liquidity and more representative of actual trading interest
- **Taker buy/sell ratio**: `taker_buy_base_volume / volume` shows whether aggressive buyers or sellers dominate each candle (>0.5 = buyer-dominated)
- **Number of trades**: Trade count as a proxy for market activity independent of order size
- **Quote volume**: Notional value traded, useful for comparing activity across price levels
## Columns
| Column | Type | Description |
|--------|------|-------------|
| `timestamp` | `datetime64[ns]` | Candle open time (UTC) |
| `open` | `float64` | Opening price (USDT) |
| `high` | `float64` | Highest price in the candle |
| `low` | `float64` | Lowest price in the candle |
| `close` | `float64` | Closing price (USDT) |
| `volume` | `float64` | Trading volume (base asset) |
| `quote_volume` | `float64` | Trading volume (USDT notional) |
| `num_trades` | `int64` | Number of trades |
| `taker_buy_base_volume` | `float64` | Taker buy volume (base asset) |
| `taker_buy_quote_volume` | `float64` | Taker buy volume (USDT notional) |
## Statistics
| Metric | Value |
|--------|-------|
| Start price | $387.35 |
| End price | $617.14 |
| Min price | $183.83 |
| Max price | $1,372.68 |
| Return | +59.3% |
| Avg daily volume | 1,282,729 BNB |
| Mean taker buy ratio | 0.4954 |
| Mean trades/candle | 672 |
## Data Quality
The only gaps are single missing bars at month boundaries (23:59 -> 00:01, missing the 00:00 candle). This is a Binance data packaging artifact, not actual missing trading data. Completeness is effectively 100%.
## Joining with spot OHLCV
This dataset complements the spot OHLCV dataset [`Torch-Trade/bnbusdt_spot_1m_10_2021_to_03_2026`](https://huggingface.co/datasets/Torch-Trade/bnbusdt_spot_1m_10_2021_to_03_2026). To join at training time:
```python
from datasets import load_dataset
import pandas as pd
# Load both
spot = load_dataset("Torch-Trade/bnbusdt_spot_1m_10_2021_to_03_2026")["train"].to_pandas()
spot["timestamp"] = pd.to_datetime(spot["timestamp"])
futures = load_dataset("Torch-Trade/bnbusdt_perp_1m_10_2021_to_02_2026")["train"].to_pandas()
futures["timestamp"] = pd.to_datetime(futures["timestamp"])
# Merge — rename futures columns to avoid clash
futures = futures.rename(columns={
"open": "fut_open", "high": "fut_high", "low": "fut_low", "close": "fut_close",
"volume": "fut_volume", "quote_volume": "fut_quote_volume",
"num_trades": "fut_num_trades",
"taker_buy_base_volume": "fut_taker_buy_volume",
"taker_buy_quote_volume": "fut_taker_buy_quote_volume",
})
df = spot.merge(futures, on="timestamp", how="left")
# Derive taker buy ratio
df["taker_buy_ratio"] = df["fut_taker_buy_volume"] / df["fut_volume"]
```
## Usage
```python
from datasets import load_dataset
import pandas as pd
ds = load_dataset("Torch-Trade/bnbusdt_perp_1m_10_2021_to_02_2026")
df = ds["train"].to_pandas()
df["timestamp"] = pd.to_datetime(df["timestamp"])
print(df.shape) # (2321277, 10)
print(df.head())
```
## License
MIT -- data sourced from [Binance Data Collection](https://data.binance.vision/).
许可证:MIT
任务类别:
- 时间序列预测
- 强化学习
标签:
- 金融
- 加密货币
- BNB
- 交易
- OHLCV(开盘-最高-最低-收盘-成交量)
- 永续合约(perpetual futures)
- 衍生品
- 币安(Binance)
数据规模:1M<n<10M
# BNBUSDT永续合约1分钟OHLCV(开盘-最高-最低-收盘-成交量)数据(2021年10月 - 2026年2月)

## 概述
本数据集包含币安(Binance)上BNB/USDT USDT保证金永续合约的1分钟OHLCV蜡烛图数据,覆盖时段为2021年10月1日至2026年2月28日。
- **数据行数**:2,321,277
- **数据完整性**:近100%(仅存在2处因数据打包产生的月边界单K线缺口)
## 为何选用永续合约OHLCV数据?
永续合约是当前交易最活跃的加密货币工具,其交易量通常为现货市场的3-10倍。本数据集提供多项现货数据无法获取的交易信号:
- **合约交易量**:流动性更高,更能反映真实的市场交易兴趣
- **主动买卖盘比例**:`taker_buy_base_volume / volume` 可用于判断每根K线内主动买盘还是卖盘占据主导(数值大于0.5则代表买方主导市场)
- **交易笔数**:以成交笔数作为市场活跃度的代理指标,不受订单规模的影响
- **报价交易量**:名义交易金额,便于跨不同价格层级对比市场活跃度
## 字段说明
| 列名 | 数据类型 | 描述 |
|--------|------|-------------|
| `timestamp` | `datetime64[ns]` | K线开盘时间(UTC时区) |
| `open` | `float64` | 开盘价格(单位:USDT) |
| `high` | `float64` | K线内最高价格 |
| `low` | `float64` | K线内最低价格 |
| `close` | `float64` | 收盘价格(单位:USDT) |
| `volume` | `float64` | 交易量(基础资产单位) |
| `quote_volume` | `float64` | 报价交易量(USDT名义金额) |
| `num_trades` | `int64` | 成交笔数 |
| `taker_buy_base_volume` | `float64` | 主动买盘交易量(基础资产单位) |
| `taker_buy_quote_volume` | `float64` | 主动买盘交易量(USDT名义金额) |
## 统计信息
| 统计指标 | 数值 |
|--------|-------|
| 起始价格 | 387.35美元 |
| 结束价格 | 617.14美元 |
| 最低价格 | 183.83美元 |
| 最高价格 | 1,372.68美元 |
| 累计收益率 | +59.3% |
| 日均交易量 | 1,282,729 BNB |
| 平均主动买盘比例 | 0.4954 |
| 单K线平均交易笔数 | 672 |
## 数据质量
本数据集仅有的缺口为月边界处的单根缺失K线(即23:59 -> 00:01时段缺失00:00时刻的K线),该现象为币安数据打包的固有特征,并非真实交易数据缺失,数据完整性实际可达100%。
## 与现货OHLCV数据集合并
本数据集可与现货OHLCV数据集 [`Torch-Trade/bnbusdt_spot_1m_10_2021_to_03_2026`](https://huggingface.co/datasets/Torch-Trade/bnbusdt_spot_1m_10_2021_to_03_2026) 互补使用。若需在训练时合并二者,可参考以下代码:
python
from datasets import load_dataset
import pandas as pd
# 加载两个数据集
spot = load_dataset("Torch-Trade/bnbusdt_spot_1m_10_2021_to_03_2026")["train"].to_pandas()
spot["timestamp"] = pd.to_datetime(spot["timestamp"])
futures = load_dataset("Torch-Trade/bnbusdt_perp_1m_10_2021_to_02_2026")["train"].to_pandas()
futures["timestamp"] = pd.to_datetime(futures["timestamp"])
# 合并前重命名永续合约数据集的列以避免命名冲突
futures = futures.rename(columns={
"open": "fut_open", "high": "fut_high", "low": "fut_low", "close": "fut_close",
"volume": "fut_volume", "quote_volume": "fut_quote_volume",
"num_trades": "fut_num_trades",
"taker_buy_base_volume": "fut_taker_buy_volume",
"taker_buy_quote_volume": "fut_taker_buy_quote_volume",
})
df = spot.merge(futures, on="timestamp", how="left")
# 计算主动买盘比例
df["taker_buy_ratio"] = df["fut_taker_buy_volume"] / df["fut_volume"]
## 使用示例
python
from datasets import load_dataset
import pandas as pd
ds = load_dataset("Torch-Trade/bnbusdt_perp_1m_10_2021_to_02_2026")
df = ds["train"].to_pandas()
df["timestamp"] = pd.to_datetime(df["timestamp"])
print(df.shape) # (2321277, 10)
print(df.head())
## 许可证
MIT协议——数据源自[币安数据集合平台(Binance Data Collection)](https://data.binance.vision/)。
提供机构:
Torch-Trade



