用途:通过 TCP 直连通达信(TDX)原生二进制协议获取 A 股公开行情,绕过容易在负载下失败的 HTTP 抓取方式;无需 token、无按 IP 限流、无验证码。
主要能力:get_k_data(code, start_date, end_date) 返回日线 OHLCV(open/close/high/low/vol/amount/date/code);bars(symbol, frequency, offset=800) 支持分钟、周、月线,仅按距最新偏移取数,无原生日期范围;minute(symbol) 取当日 1 分钟线;quotes(symbol) 取实时 L1 快照;stocks(market) 列出交易所全部代码;F10(symbol)/finance(symbol) 取基本面快照。频率代码来自 mootdx.consts:8=1m、0=5m、1=15m、2=30m、3=1H、4=1D、5=1W、6=1M。
用法:安装 pip install mootdx && pip install 'httpx>=0.28.1'(mootdx 在 setup.py 中锁定 httpx<0.26,第二次安装恢复新版 httpx 供 MCP/fastmcp 使用);初始化 from mootdx.quotes import Quotes; client = Quotes.factory(market="std"),std 为沪/深/京,ext 为期货/期权(上游已损坏)。代码用纯 6 位数字,按前缀自动识别交易所:60x/68x→SH,00x/30x/002/003→SZ,4x/8x→BJ;内置 loader 也接受 "000001.SZ" 等带后缀格式并会自动去除。内置 loader 位于 backtest/loaders/mootdx_loader.py,a_share 回退链为 [tushare, mootdx, akshare],可用 run(strategy=..., source="mootdx") 显式指定。
限制:2026-10-08 起 TDX 服务器不再响应该客户端协议,已从默认回退链移除并排除在 loader 健康检查之外。北交所 get_k_data 抛 KeyError、bars() 返回空;扩展市场(期货/期权)自 v0.11.7 起返回空;每页 bars() 800 行,loader 最多回溯 25 页;首次调用需选服务器,可能慢约 2 秒;默认返回前复权,无不复权参数。
参考:https://github.com/mootdx/mootdx 、https://www.mootdx.com/ 、https://github.com/rainx/pytdx 。