CCXT
统一多家数字资产交易所的行情与交易接口,是数据和执行系统的常见基础层。
为什么值得学
适合学习适配器模式、异步 I/O、限速与交易所数据格式归一化。
数据与控制流程
- 1统一接口调用
- 2交易所适配器
- 3REST 或 WebSocket
- 4字段归一化
- 5上层策略或存储
此流程为教学归纳,便于建立整体认识;完整条件分支与运行细节请对照下方源码。
架构拆解 · 4 个核心模块
每个入口均已核对,点击可阅读源码通用交易所基类
定义市场、请求、精度与数据解析等公共约定,供具体交易所复用。
- 输入
- 统一 API 参数
- 输出
- 标准字段与通用请求能力
ts/src/base/Exchange.ts交易所实现
Binance 实现把统一方法映射到该交易所端点,并解析特有响应。
- 输入
- 统一的行情或交易请求
- 输出
- 供应商请求与规范化结果
ts/src/binance.tsPython 异步层
异步 Exchange 管理请求会话与并发调用,让应用能同时等待多个响应。
- 输入
- 异步调用与连接配置
- 输出
- 可等待的请求结果
python/ccxt/async_support/base/exchange.py流式行情适配
Pro 的 Binance 实现维护 WebSocket 订阅和消息转换。
- 输入
- 订阅主题与流消息
- 输出
- 订单簿 / 成交等持续更新
ts/src/pro/binance.ts建议阅读顺序
- 从基类查 fetchOHLCV 与精度处理约定
- 对照 Binance 的同名方法看端点映射
- 阅读 Python 异步基类理解会话释放
- 比较 Pro 的订阅与 REST 的一次性响应
动手做一次
只用公开行情接口拉取两家交易所同一交易对的 K 线,建立统一字段表。
完成后,检查这些证据
- 统一时间戳、交易对命名与 OHLCV 列
- 对缺失 K 线和限速做记录
- 解释现货和合约价格为什么不能直接混成一条序列
适用边界与版本说明
CCXT 本身不提供策略回测;不同交易所的产品、参数和订单语义仍需单独核对,统一方法不等于完全一致的行为。
Star 快照:44,480 · 核验日期:2026-10-20 · GitHub 归档标记:未归档
核验默认分支:master · 源码固定提交:7956803130c9 ↗
来源:GitHub 仓库与 Star 页面、README及上述源文件。分层、阅读顺序与练习为本站归纳;未逐一安装运行这些框架,源码提交不等于推荐安装版本。