Local Data Service (REST + WebSocket)
一键部署、跨平台的本地行情数据服务。默认抓取 Binance 永续合约 BTC/USDT:USDT, ETH/USDT:USDT 的 1m/5m/15m/1h K 线,增量写入本地 Parquet 并通过 WebSocket 推送。
快速开始(方式B:已安装 Docker)
cd user_data/Chan/datasvc
docker compose up -d
- REST: http://localhost:9000/api/candles?symbol=BTC/USDT:USDT&tf=1m
- WS: ws://localhost:9000/ws?symbol=BTC/USDT:USDT&tf=1m&since=1690000000000
- Swagger: http://localhost:9000/docs
环境变量(docker-compose.yml)
- EXCHANGE: 交易所,默认 binance
- SYMBOLS: 逗号分隔交易对
- TIMEFRAMES: 逗号分隔周期
- START_DAYS: 首次启动回补最近 N 天
- POLL_FACTOR: 轮询因子,间隔=周期毫秒*factor
- DATA_DIR: 容器内数据目录(已映射到
./data)
数据位置
- 本地缓存:
user_data/Chan/datasvc/data/{timeframe}/{symbol}.parquet
常用命令
docker compose logs -f
docker compose down
接口说明
- GET /api/candles
- 参数:symbol, tf, start(ms), end(ms)
- 返回:[{timestamp, open, high, low, close, volume}]
- WS /ws
- 参数:symbol, tf, since(ms)
- 消息:
- snapshot: 初始快照数组
- upsert: 单根K线增量(尾部修正)
注意
- 默认未带交易所 API Key,仅公共行情。
- 如需更多交易对/周期,修改
docker-compose.yml后重启。