核心功能
xtdata 是 XtQuant 的行情数据模块,专为量化交易场景设计,通过 TCP 与本地 miniQMT 客户端通信,提供完整的市场数据服务。
主要能力:
- 多周期 K 线:支持 tick、1m/5m/15m/30m/1h、日/周/月级别历史数据
- 实时订阅:单票订阅与全市场推送(全推),回调驱动架构
- Level2 深度数据:逐笔委托、逐笔成交、买卖队列(需券商开通权限)
- 财务与基本面:资产负债表、利润表、现金流量表、股本结构、十大股东等
- 指数与板块:指数成分股权重、行业板块列表、交易日历
- 除权除息:完整的复权因子与除权数据处理
显著优点:
- 数据源来自 QMT 官方,覆盖 A 股全市场,数据质量有保障
- 本地缓存机制,首次下载后读取速度极快
- Python 原生接口,与 pandas 兼容良好
- 免费使用(需 miniQMT 客户端授权)
潜在局限:
- 强依赖 miniQMT:必须本地运行 QMT/miniQMT 客户端,无法独立使用
- Windows 平台为主,Linux/Mac 支持有限
- Level2 数据需券商额外开通,且不同券商权限差异大
- 实时订阅
xtdata.run()会阻塞线程,需自行处理异步逻辑
适合人群:
- 已使用 QMT/miniQMT 进行实盘交易的量化开发者
- 需要本地化高频数据存储的 A 股策略研究者
- 对数据延迟敏感、不愿依赖第三方云 API 的用户
常规风险:
- 本地客户端异常或网络中断会导致数据获取失败
- 财务数据下载量大,首次初始化耗时较长
- 策略回测时需注意除权处理与停牌标识
- 多线程使用时注意
run()的阻塞特性,避免与交易逻辑冲突