Files
Chan/data_provider/README.md

2.0 KiB
Raw Permalink Blame History

Chan 数据提供商 (Chan Data Provider)

Binance 期货 交易所拉取加密货币 K 线数据,提供 HTTP + WebSocket 数据服务。

功能

  • 多交易对:支持 BTC, ETH, SOL, DOGE 等 9 个交易对
  • 多时间周期:基础周期 1m/1h/1d/1w,可合成 30+ 种衍生周期(如 5m, 15m, 4h 等)
  • 本地缓存CSV 持久化到磁盘,重启快速加载
  • 断线恢复:交易所连接中断时记录断点,自动补拉缺失数据
  • 实时推送WebSocket 订阅最新 K 线更新
  • 内存服务:启动即加载本地数据,不阻塞服务

启动

# Docker
docker compose up -d

# 直接运行
python main.py

# 或指定配置
CONFIG_PATH=./config.json python main.py

服务默认监听 http://0.0.0.0:9009

配置

编辑 config.json

{
  "exchange": "binance",
  "symbols": ["BTC/USDT:USDT", "ETH/USDT:USDT"],
  "start_time": "2024-01-01T00:00:00Z",
  "timeframes": ["1m", "1h", "1d", "1w"],
  "data_dir": "./data"
}
字段 说明
exchange 交易所名称(ccxt 支持即可)
symbols 交易对列表
start_time 历史数据起始时间
timeframes 基础周期(从交易所直接拉取)
data_dir CSV 数据存储目录

可用周期

基础周期(交易所直接拉取)

1m, 1h, 1d, 1w

衍生周期(内存中合成)

基础周期 可合成的衍生周期
1m 2m, 3m, 4m, 5m, 10m, 15m, 20m, 25m, 30m, 45m
1h 2h, 3h, 4h, 5h, 6h, 7h, 8h, 9h, 10h, 11h, 12h, 16h, 20h
1d 2d, 3d, 4d, 5d, 6d
1w 2w, 3w

数据存储

数据以 CSV 格式存储,按时间周期分目录:

./data/
  1m/
    binance_BTC_USDT_USDT_1m.csv
    binance_ETH_USDT_USDT_1m.csv
    ...
  1h/
    ...

每根 K 线包含:timestamp, datetime, open, high, low, close, volume


API 文档请访问 http://<host>:9009/api/docs