原 xtquant 策略少改
保留接近 `xtdata`、`XtQuantTrader`、`StockAccount` 的调用习惯,先把迁移成本降下来。
CFQuant 保留 xtquant 调用习惯,把大 QMT 的行情、交易、回调和多账号路由接到外部 Python。
加载 CFQUANT_CTYPE_ALL_LOWLAT.py
处理 Web 路由、PipeHub、账号绑定和回调广播。
读取行情、查询持仓、提交交易请求。
Web / Python -> PipeHub -> ctypes 单文件桥 -> QMT
适合快速部署、单账号验证和多数常规使用。
保留常用 xtquant 调用方式,把外部 Python 策略接到大 QMT 的行情、交易、查询和回调能力。
保留接近 `xtdata`、`XtQuantTrader`、`StockAccount` 的调用习惯,先把迁移成本降下来。
策略可以留在熟悉的 Python 项目中,由 CFQuant 转接到大 QMT。
按账号、账户类型和 QMT 入口路由请求,减少多账号部署时的误发。
极致模式用自包含脚本,适配部分不能正常导入 Python 包的 QMT 环境。
文档、论坛和反馈记录会保留处理过程,方便复用排障结果。
通用模式适合常规部署,极致模式适合受限 QMT 环境,高级模式适合低延迟交易链路。
| 模式 | QMT 入口 | 链路 | 适用场景 |
|---|---|---|---|
| 通用模式 | CFQUANT_CTYPE_ALL_LOWLAT.py | Web / 外部 Python -> PipeHub -> ctypes 单文件桥 -> QMT | 快速部署、单账号验证和多数常规使用。 |
| 极致模式 | CFQUANT_LITE.py | QMT 侧入口自包含,不导入 cfquant 核心包。 | 白名单限制严格的 QMT 环境。 |
| 高级模式 | CFQUANT.py + CFQUANT_TRADE_LOWLAT.py | 普通 QMT 与极速交易端 QMT 分工。 | 追求更低下单、撤单延迟的场景。 |
查看 CFQuant 已覆盖的接口、运行依赖和性能边界,实盘前请先在自己的 QMT 环境中验证。
| 功能 | 状态 | 说明 |
|---|---|---|
| MiniQMT / xtquant 迁移 | 支持 | 以常用 `xtdata`、`XtQuantTrader`、`StockAccount` 调用习惯为主线,降低旧策略迁移成本。 |
| 行情、查询、下单与撤单 | 支持 | 通用模式和高级模式都可以按账号路由到对应 QMT 端执行,实盘前需要用户自行验证。 |
| 委托、成交、持仓、资金 | 支持 | 可按账号读取交易状态,并给外部程序返回结构化结果。 |
| 账号级回调广播 | 支持 | 同一账号下订阅了交易端的调用者都能收到委托、成交、资金和持仓回调。 |
| 多账号路由 | 支持 | 按 bridge_id、account_type、account_id 进行路由。 |
| Web 控制台 | 支持 | 账号绑定、脚本指引、在线检测、接口调试、下载、更新和反馈都在浏览器里完成。 |
| 多账号和多 QMT | 支持 | 支持普通账户、信用账户和多 QMT 入口,按 `bridge_id`、`account_type`、`account_id` 路由。 |
| AI 辅助部署和排障 | 支持 | 提供 AI Skill 文档入口,方便 Codex、Cursor 等工具读取部署、接口和排障上下文。 |
| 脱离 QMT 独立运行 | 不支持 | cfquant 仍依赖本地 QMT 终端和桥接脚本,不能单独替代 QMT 运行。 |
| 替代完整 QMT 桌面端 | 不支持 | CFQuant 负责外部 Python 接入大 QMT,不提供完整桌面交易终端。 |
| 回测引擎 / 本地数据库替代 | 支持,较慢 | 可以走桥接链路读取和适配,但批量历史数据、回测读取和本地库替代会受跨进程与 QMT 调用开销影响,速度明显慢于专用本地数据方案。 |
按下载、启动、绑定、加载脚本和外部调用完成首次接入。
使用官网镜像包或 GitHub 源码包完成安装。
检查 QMT 路径、账号和桥接进程状态。
确认本地终端、交易账号和运行权限。
按通用、极致或高级模式选择脚本。
策略程序读取行情、提交请求并处理回调。
覆盖 auto 路由、ctypes、lttx、回调广播、接入模式和运行时数据,便于定位请求经过的模块。
不同链路会经过不同模块,用于定位调用和回调路径。
展示请求、行情、交易回调、下载进度和运行心跳在各模块之间的流转路径。
外部 Python 发起请求后,经 API、客户端选择和 Web 路由进入 QMT 桥,再把响应原路返回。
可按路径、模块名、职责关键词和层级筛选 API、协议、本地服务或 QMT 入口。
| 模块 | 路径 | 主要职责 | 常见定位点 |
|---|---|---|---|
| 外部 API 总入口 | cfquant/__init__.py | 暴露 xtdata、xttrader、xttype、configure 等兼容入口。 | 迁移 miniQMT 调用习惯时先看这里。 |
| 交易兼容层 | cfquant/xttrader.py | 负责 XtQuantTrader、账号订阅、下单、撤单、交易查询和交易回调派发。 | 交易接口或回调签名不一致时定位。 |
| 行情兼容层 | cfquant/xtdata.py | 负责行情查询、行情订阅、数据下载和条件兼容接口。 | on_tick、数据下载进度和行情缺口。 |
| 配置、频道与协议 | config.py / channels.py / protocol.py | 维护 transport、pipe name、bridge_id,并统一封装 request、response 和 event。 | 频道名、序列化和 bridge 对不上。 |
| RPC 客户端选择 | cfquant/client.py | 根据 transport=auto、ctypes、lttx、web_lttx 创建对应客户端。 | 判断请求为什么走 Web、PipeHub 或 LTtx。 |
| Web 服务 | cfquant_web_server.py | 维护 Web 控制台、账号配置、统一路由、运行时注册、callback 监听和 WebSocket 推送。 | 多账号、fallback、控制台状态异常。 |
| PipeHub 核心 | cfquant/pipe_hub.py | 作为外部 Python、Web 和 QMT Pipe 桥之间的 named pipe 消息代理。 | ctypes、lite 和通用模式的连接问题。 |
| LTtx 服务 | LTtx/tx/LTtx_server.py | 提供本机 socket 发布订阅,用于 Web route、运行时发现和高级模式直连。 | auto 发现、Web route 和高级模式请求。 |
| 通用模式入口 | qmt_scripts/CFQUANT_CTYPE_ALL_LOWLAT.py | 单个 QMT 策略内启动 normal 和 trade 两个 Pipe 通道。 | 快速部署和多数常规使用。 |
| 极致模式入口 | qmt_scripts/CFQUANT_LITE.py | 自包含入口,适配无法正常导入 cfquant 包的 QMT 环境。 | 白名单限制严格的本地终端。 |
| 普通桥 | cfquant/normal_bridge.py | 处理普通请求队列、行情订阅转发、callback event 通道和 QMT 原始交易回调发布。 | 账号级广播回调的源头。 |
| 交易桥 | cfquant/tx_trade_bridge.py | 分发 passorder、cancel、交易查询、账号订阅和请求级事件。 | 同步响应只回到发起 client_id。 |
请换一个路径、模块名或职责关键词,比如 Web、PipeHub、回调、行情或交易。
导入、创建对象、首次连接、链路选择、持续运行和关闭对应不同状态,运行时数据会列出常用配置和频道。
仅导入包不会连接 LTtx,也不会创建 PipeHub 连接。真正连接发生在 start、connect、subscribe 或首次请求。
runtime/config/cfquant_web_config.json保存账号、账号类型、bridge、运行模式、市场路由和 Web 端口。
\\.\pipe\cfquant_pipe_hub外部 Pipe 客户端、Web 和 QMT Pipe 桥共同连接的 named pipe。
127.0.0.1:2049Web route、高级模式和运行时发现使用。
cfquant.web.request外部 auto 命中 Web 路由后的统一入口。
cfquant.callback.eventQMT 原始交易回调发布给 Web 监听器。
cfquant.runtimeWeb 写入 LTtx,外部 auto 读取后决定是否走 Web route。
确认核心版本、Web 版本、文件大小、更新时间、SHA256 和备用下载入口。
查看历史版本、更新说明、文件大小、下载次数和 SHA256。
覆盖 MiniQMT 迁移、大 QMT 外部 Python 接入、接口兼容、AI 辅助排障和运维发布。
按分类、关键词和处理状态查找已有问题,也可以发布新的部署、行情、交易或更新问题。
集中跟踪 QMT 部署、行情订阅、交易请求、Socket 桥接和更新安装问题。
接口、行情、交易、控制台和文档建议都会进入公开需求池,并按状态持续更新。
公开需求池展示所有建议,提交后会进入待评估状态。
补充问题描述、截图和联系邮箱,处理进度会在公开反馈或我的反馈中更新。
查看公开处理进度,或提交新的问题反馈。
查看账号信息、互动通知和站内通知,支持标记已读、头像和邮件偏好设置。