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

## Overview
1-minute premium index (futures-spot basis) data for the **ETH/USDT perpetual futures** contract on Binance, covering **May 1, 2021** to **February 28, 2026**.
- **Rows**: 2,531,446
- **Completeness**: 99.60%
## What is the premium index (basis)?
The premium index measures the instantaneous percentage difference between the perpetual futures price and the spot price:
```
basis = (futures_price - spot_price) / spot_price
```
- **Positive basis (contango)**: Futures trading at a premium to spot -- bullish sentiment, longs willing to pay more
- **Negative basis (backwardation)**: Futures at a discount -- bearish sentiment, panic selling, or liquidation cascades
- **Large spikes**: Indicate sudden shifts in derivatives positioning, often preceding spot price moves
Values are typically small decimals (e.g., 0.001 = 0.1% premium). The basis drives the funding rate: sustained positive basis leads to positive funding, and vice versa.
## Columns
| Column | Type | Description |
|--------|------|-------------|
| `timestamp` | `datetime64[ns]` | Candle open time (UTC) |
| `basis_open` | `float64` | Opening basis as decimal fraction |
| `basis_high` | `float64` | Highest basis in the candle |
| `basis_low` | `float64` | Lowest basis in the candle |
| `basis_close` | `float64` | Closing basis as decimal fraction |
## Statistics
| Metric | Value |
|--------|-------|
| Mean basis | -0.000220 (-0.0220%) |
| Median basis | -0.000368 (-0.0368%) |
| Min basis | -0.231391 (-23.1391%) |
| Max basis | 0.081707 (8.1707%) |
| Std | 0.000610 |
## Data Quality
The premium index is computed by Binance internally and has small gaps that cannot be backfilled from external sources. These are exchange-wide infrastructure events shared across all perpetual pairs.
| Period | Duration | Type |
|--------|----------|------|
| 2021-07-01 (full day) | 24h (1,441 bars) | Premium index data gap |
| 2021-07-24 — 2021-07-27 | 96h (5,760 bars) | Premium index data gap |
| 2022-07-12 12:56-14:32 | ~1.5h (47 bars) | Scattered missing bars |
| 2022-10-02 (full day) | 24h (1,440 bars) | Premium index data gap |
| 2023-04-09 (full day) | 24h (1,440 bars) | Premium index data gap |
| 2023-11-10 03:37-04:09 | ~30min (14 bars) | Scattered missing bars |
| 2024-08-12 10:01-10:04 | 3min (2 bars) | Minor gap |
| Month boundaries | 1 bar each (x9) | Data packaging artifact |
**Total missing bars**: 10,153 out of ~2,541,599
**Recommended handling**: Forward-fill missing bars at training time. The basis changes slowly relative to 1-minute resolution, so forward-filling introduces negligible error.
## Joining with spot OHLCV
This dataset complements the spot OHLCV dataset [`Torch-Trade/ethusdt_spot_1m_05_2021_to_03_2026`](https://huggingface.co/datasets/Torch-Trade/ethusdt_spot_1m_05_2021_to_03_2026). To join at training time:
```python
from datasets import load_dataset
import pandas as pd
# Load both datasets
spot = load_dataset("Torch-Trade/ethusdt_spot_1m_05_2021_to_03_2026")["train"].to_pandas()
spot["timestamp"] = pd.to_datetime(spot["timestamp"])
basis = load_dataset("Torch-Trade/ethusdt_perp_basis_1m_05_2021_to_02_2026")["train"].to_pandas()
basis["timestamp"] = pd.to_datetime(basis["timestamp"])
# Merge on timestamp, forward-fill gaps
df = spot.merge(basis, on="timestamp", how="left")
df[["basis_open", "basis_high", "basis_low", "basis_close"]] = df[["basis_open", "basis_high", "basis_low", "basis_close"]].ffill()
```
## Usage
```python
from datasets import load_dataset
import pandas as pd
ds = load_dataset("Torch-Trade/ethusdt_perp_basis_1m_05_2021_to_02_2026")
df = ds["train"].to_pandas()
df["timestamp"] = pd.to_datetime(df["timestamp"])
print(df.shape) # (2531446, 5)
print(df.head())
```
## License
MIT -- data sourced from [Binance Data Collection](https://data.binance.vision/).
提供机构:
Torch-Trade



