BackDB API 文档
量化回测数据服务 — 1秒级Bar数据查询接口
认证
所有
/v1/ 接口支持 API Key 认证。将 Key 放在请求头或URL参数中:Header: X-API-Key: bdb_your_key_here URL: /v1/bars?symbol=ETH-USDT-SWAP&start=2025-01-01&api_key=bdb_your_key_here
获取 API Key:
POST /v1/auth/register,传入邮箱即可。核心接口
GET /v1/bars — 查询K线数据 (JSON)
GET/v1/bars
需认证
查询指定币种、时间范围、时间粒度的Bar数据,返回JSON格式。支持多级缓存。
| 参数 | 类型 | 说明 |
|---|---|---|
| symbol | string 必填 | 币种,如 ETH-USDT-SWAP |
| start | string 必填 | 开始日期,格式 2025-01-01 |
| end | string | 结束日期,默认今天 |
| interval | int | 聚合周期(秒),默认1。常用: 1/60/300/3600 |
// 响应示例
{
"error": false,
"message": "ok",
"count": 1440,
"data": [
{"t":1704067200000,"o":2281.5,"h":2282.0,"l":2280.1,"c":2281.8,"v":123.45},
...
]
}
GET /v1/bars/stream — 查询K线数据 (二进制流)
GET/v1/bars/stream
与
/v1/bars 参数相同,返回二进制流。适合大数据量传输,内存占用极低。协议: 16字节Header + N×48字节Bar (LittleEndian)
Header: [4]byte Magic "BDB1" | uint32 Count | uint32 Interval | uint32 Flags Bar: int64 Timestamp | float64 O | float64 H | float64 L | float64 C | float64 V
GET /v1/bars/export — 导出CSV
GET/v1/bars/export
与
/v1/bars 参数相同,返回CSV文件下载。最多导出90天。GET /v1/symbols — 获取可用币种列表
GET/v1/symbols
公开
返回所有可查询的币种及其数据范围、数据量。
{
"data": [
{"symbol":"ETH-USDT-SWAP","exchange":"binance","first_date":"2020-08-01","last_date":"2026-03-29","total_days":2067,"size_mb":142.5}
]
}
GET /v1/coverage — 数据覆盖查询
GET/v1/coverage?symbol=ETH-USDT-SWAP&start=2025-01-01&end=2025-12-31
查询指定币种的日期覆盖情况,返回每天是否有数据及数据来源。
用户注册
POST /v1/auth/register — 注册获取API Key
POST/v1/auth/register
公开
// 请求
{"email": "user@example.com"}
// 响应
{"api_key": "bdb_a1b2c3...", "email": "user@example.com", "plan": "developer"}
运维接口
GET /status — 系统状态
GET/status
公开
返回服务运行状态、补录进度、实时采集状态、用户统计、缓存统计等。
GET /health — 健康检查
GET/health
返回
{"status":"ok"},用于负载均衡器健康检查。请求限制
不同用户计划有不同的每日请求上限:
| 计划 | 每日请求上限 |
|---|---|
| Starter | 100 |
| Developer | 1,000 |
| Pro | 10,000 |
超过上限返回 HTTP 429。单次查询最多返回 2,000,000 条Bar。日期范围不超过366天。