一、环境全貌
MiniQMT 的量化环境由三个部分组成,缺一不可:
- Python 解释器:写策略、跑代码
- MiniQMT 客户端:券商发的那个交易终端
- XtQuant 库:连接 Python 和 MiniQMT 的桥梁
顺序上,先装 Python,再装 MiniQMT,最后装 XtQuant。
三件东西装完,才算真正有了一个能用的量化开发环境。
二、Python 环境准备
支持的版本
XtQuant 对 Python 版本有明确要求:
| 版本 |
支持情况 |
| 3.6 |
最低支持 |
| 3.7 |
推荐 |
| 3.8 |
推荐 |
| 3.9 |
支持 |
| 3.10 |
支持 |
日常开发用 3.7 或 3.8 最稳,兼容性问题最少,这也是目前 XtQuant 用户群中最常见的版本。
两种安装方式
方式一:官网下载
适合纯新手。到 python.org 下载对应版本(建议 64 位),安装时一定要勾选 Add Python to PATH,这一步没勾,后面所有命令都会找不到 python。
装完之后打开命令行验证:
python --version
pip --version
方式二:Anaconda
如果你已经在做数据分析,或者以后还要在多个 Python 版本之间切换,建议直接用 Anaconda 管理环境。
conda create -n quant python=3.8
conda activate quant
单独开一个 <span leaf="">quant</span> 环境,不会和其他项目的依赖互相污染。
常用依赖
pip install pandas numpy # 必装
pip install matplotlib seaborn # 画图(可选)
pip install scikit-learn # 机器学习(可选)
pip install numba # 性能加速(可选)
前两个一般都会用到,后面两个按需。
三、安装 MiniQMT 客户端
MiniQMT 不是去某个官网公开下载的软件,必须通过你开户的券商拿到安装包。
找券商的客户经理要一下,通常会给你一个内部链接或者压缩包。拿到之后注意确认版本,建议在 2.95 以上,太老的版本 XtQuant 可能不兼容。
安装要点:
- 以管理员身份运行安装包
- 路径尽量不要带中文和空格,能省掉后面很多乱码问题
- 装完之后先用客户端登录一次,把账户初始化完
装完之后会生成两个关键路径:
安装目录:D:\迅投极速交易终端 睿智融科版\
数据目录:D:\迅投极速交易终端 睿智融科版\userdata_mini\
数据目录(<span leaf="">userdata_mini</span>)要记下来,后面 Python 脚本连接时必须用到它。
四、安装 XtQuant
在线安装最简单:
pip install xtquant # 最新版
pip install xtquant==1.1.1 # 指定版本
pip install --upgrade xtquant # 升级
如果电脑不能上外网,用离线 wheel 包装:
pip install xtquant-1.1.1-py3-none-any.whl
装完验证一下:
importxtquant
print(f"XtQuant 版本:{xtquant.__version__}")
能打印出版本号,就算装成功了。
版本兼容对照
| XtQuant 版本 |
Python 版本 |
MiniQMT 版本 |
说明 |
| 1.1.1 |
3.6 - 3.10 |
2.95+ |
当前稳定版 |
| 1.1.0 |
3.6 - 3.9 |
2.90+ |
新增异步接口 |
| 1.0.x |
3.6 - 3.8 |
2.85+ |
基础版本 |
遇到连不上的问题,第一步就是核对这三者的版本是否匹配。
五、首次连接测试
装完三件套之后,要用一段代码确认"从 Python 能连上 MiniQMT"。
两个关键参数
1. userdata_mini 路径
打开 MiniQMT → 菜单栏 → 帮助 → 关于,可以看到完整路径。
也可以让 Python 自己去找:
importglob
paths = glob.glob(r"D:\迅投极速交易终端*\userdata_mini")
print(paths)
2. session_id
session_id 是每个连接的身份标识。同一个账户、不同策略,一定要用不同的 id,否则会互相踢下线。
session_id = {
"测试": 123456,
"策略A": 100001,
"策略B": 100002,
"实盘": 300001,
}
运行连接脚本
完整的 <span leaf="">first_connection.py</span> 会在课程配套代码里提供,运行前只需要改三处:
path = r'D:\迅投极速交易终端 睿智融科版\userdata_mini' # 改成你自己的路径
account_id = '1000000365' # 改成你的资金账号
session_id = 123456 # 任意整数,不要和别的冲突
然后在命令行里跑:
python first_connection.py
如果能把账户资金、持仓信息打印出来,说明环境彻底跑通了。
六、踩坑排查
新手常见的四类问题,列一张表:
| 现象 |
常见原因 |
处理方式 |
| 连接失败(返回 -1) |
MiniQMT 未登录 / 路径写错 / 端口被占 |
先登客户端,再核对路径 |
<span leaf="">ModuleNotFoundError</span> |
xtquant 没装好 |
重新 <span leaf="">pip install xtquant</span> |
| 查不到账户 |
account_id 写错 / 账户未登录 |
对着 MiniQMT 界面核对一次 |
| 路径中文乱码 |
路径含中文或空格 |
用 <span leaf="">r''</span>原始字符串,或换英文路径 |
连接失败是最常见的。九成情况下是两个原因:MiniQMT 客户端没登录,或者 <span leaf="">path</span> 写到了安装目录而不是 <span leaf="">userdata_mini</span> 目录。
七、最后的检查清单
进下一节之前,请先确认下面几件事:
- Python 3.7 / 3.8 安装完成,
<span leaf="">python --version</span> 能输出版本号
- pandas、numpy 等基础库已装
- MiniQMT 安装完成,能正常登录账户
- XtQuant 安装完成,
<span leaf="">import xtquant</span> 不报错
- 第一个脚本能成功拉取账户信息
- 记录好自己的
<span leaf="">path</span> 和 <span leaf="">session_id</span>
打钩打完再往下走,能省掉大量后面调代码的时间。
这一节其实没有多复杂,就是把环境搭好、把第一条连接跑通。
但这是后面所有内容的地基。地基不稳,后面每一个模块都可能莫名其妙报错,到时候你很难判断是代码问题还是环境问题。
大家可以加我好友,一起交流一下。VX
Ai_xugan
风险提示
本文聚焦环境搭建,不涉及任何具体策略或交易建议。
程序化交易的环境本身也有风险:配置错误、版本不兼容、第三方库漏洞、操作系统差异,任何一个环节都可能让脚本行为和预期不一致。
正式用实盘账户跑任何代码之前,强烈建议先在模拟盘里跑一遍,确认连接稳定、逻辑正确,再切到实盘。
投资有风险,入市需谨慎。