QMT 与 PTrade 第三方数据接入实操指南!
发布时间:6小时前阅读:45
QMT 与 PTrade 在第三方数据接入上的底层逻辑截然不同:QMT 是本地运行,自由度极高;PTrade 是云端托管,环境相对封闭。新手最容易犯的错就是拿 QMT 的思路去硬写 PTrade 的外网请求,结果直接被防火墙拦截。下面按两者特性拆解实操路径。
一、QMT :本地自由接入的三种姿势
因为策略跑在你自己的电脑上,QMT 几乎不限制数据来源,核心在于本地环境配置与文件读写权限。
• 在线 API 实时拉取(适合盘前/低频)
完整版 QMT 内置 Python 环境支持 requests、tushare、akshare 等库。你可以在 initialize() 初始化阶段调用 Tushare Pro 等接口,获取财务因子、宏观数据或舆情,存入 context 全局变量供盘中策略使用。切记别在 handle_data() 高频循环里狂发 HTTP 请求,极易拖慢实盘触发速度甚至超时。
- 读取本地离线文件(最稳,实盘推荐)
这是最防坑的方案。单独写个脚本盘后把第三方数据(CSV、Excel、Parquet、HDF5)抓下来存到 QMT 安装目录或纯英文路径下,策略里用 pandas.read_csv() 加载。注意股票代码格式要对齐 QMT 标准(如 600000.SH),并在 init 里做好索引,避免盘中反复 IO 读写。
- 对接本地数据库
进阶玩家可在本地搭 MySQL、SQLite、Redis,策略通过 SQL 或连接池查询数据。适合多因子库庞大、需要跨策略共享数据的场景,但个人散户一般用文件级就够了。
二、PTrade:云端封闭环境下的迂回战术
PTrade 跑在券商机房,绝大多数实盘/回测环境禁止访问外网,import tushare 发 HTTP 请求会被直接掐断。想用第三方数据,得换个路子:
- 盘后文件上传法(通用且安全)
在本地用 Python 脚本从 Tushare、AkShare 或 Wind 导出需要的因子数据(CSV/JSON),通过 PTrade 客户端的“研究目录”或文件上传功能传到服务端指定路径。策略里用 get_research_path() 获取路径后用 Pandas 读取。这是官方最推荐、最不易报错的实操方式。
- 内置库与极少数特例
部分券商的 PTrade 内置了 tushare 旧版库且放行了特定白名单域名,可尝试 import tushare 并设置 Token 调用,但极度依赖券商配置,换一家券商可能直接挂掉,实盘慎用。
- HTTP 触发解耦(极客方案)
用一台永远在线的云服务器跑信号端,通过 HTTP 接口或写入共享数据库,PTrade 策略里定时去“查单”拿数据。但这违背了 PTrade 全自动托管初衷,且云端延时和鉴权很麻烦,散户很少这么干。
- SQLite 本地持久化
PTrade 内置 sqlite3,可以把预处理好的第三方因子存成服务端 SQLite 文件,策略启动时连库查,避免每次重构数据帧,收盘后服务端重启内存清空也不怕。
三、实操避坑红线(新手必看)
• 未来函数陷阱:第三方数据(尤其财务、快报、舆情)有发布滞后性。用 Tushare 抓财报时,必须严格按ann_date过滤,确保策略在回测当天真的能看到这条数据,否则回测虚高,实盘腰斩。
- 时间对齐:外部数据日期格式(如 20260101)要和 PTrade/QMT 的内部时间戳(timetag)互相转换,别因格式对不上导致 KeyError 取不到值。
• PTrade 回测分离:在研究环境(能连外网)调通数据接口后,转到回测/实盘前必须把代码改成读本地上传文件,否则日志里满屏都是 Connection Timeout。
- 路径纯英文:QMT 和 PTrade 对中文路径支持都很差,数据文件务必放在 D:/quant_data/ 这种目录,防止编码报错找不到文件。
如需咨询量化开通和低佣优惠,欢迎点击头像与我联系!
新开账户可免费使用QMT、PTrade等量化系统,支持快速交易通道。
各品种交易佣金可调低至成本附近,还有更多福利活动等你来拿。
温馨提示:投资有风险,选择需谨慎。
-
GDP半年报出炉!如何解读?下半年怎么看?
2026-07-20 11:43
-
你还在交万5的佣金?一年可能多花6000块(附省钱攻略)
2026-07-20 11:43
-
客户经理执业编号怎么查?中证协官网3步验证教程(2026最新版)
2026-07-20 11:43


问一问

+微信
分享该文章
