量化QMT策略编辑流程步骤详细解答!
发布时间:4小时前阅读:29
QMT(迅投量化)策略编辑的完整、 step-by-step 详细流程,从准备环境→新建策略→写代码→调试→回测→实盘,全部讲清楚,用的是目前券商通用的 Python 策略流程(最主流)。
一、准备工作(首次用 QMT 必做)
1. 登录 QMT 客户端
- 打开券商版 QMT(如国金、华泰、中信等)
- 用资金账号登录(必须开通量化权限)
2. 安装 / 下载 Python 环境(只做一次)
- 进入顶部 我的 → 下载 Python 库
- 选择 Python3.6 因子版 + xtquant 包
- 安装后自动重启 QMT
3. 下载历史数据(策略运行的基础)
- 首页左上角 操作 → 数据管理 → 补充数据
- 选择:市场(沪 / 深)、品种(股票 / 指数)、周期(日线 / 1 分钟)、起止时间
- 建议至少下载 最近 3 年日线 + 最近 6 个月 1 分钟数据
二、新建策略(进入编辑器)
方式 1:从零新建(最常用)
- 左侧进入 模型研究 / 策略交易
- 右键 → 新建策略 → Python 策略
- 弹出策略编辑器,自动生成基础框架代码
方式 2:基于示例策略修改(新手推荐)
- 模型研究 → 示例策略(双均线、网格、MACD 等)
- 选中一个 → 编辑
- 在原有代码上改参数、改逻辑,快速上手
三、QMT Python 策略代码结构(必须掌握)
每个策略必须包含两个核心函数:
1. 初始化函数:init(ContextInfo)
- 只执行一次(策略启动时)
- 用途:设置标的、周期、参数、全局变量、佣金费率等
- python
- 运行
def init(ContextInfo):
# 设置交易标的
ContextInfo.tradecode = "000001.SZ"
# 均线参数
ContextInfo.short = 5
ContextInfo.long = 20
# 初始资金、佣金
ContextInfo.capital = 100000
ContextInfo.commission = 0.0003
2. 行情处理函数:handlebar(ContextInfo)
- 每根 K 线执行一次(日线 / 分钟线)
- 用途:取数据、算指标、写买卖逻辑、下单
- python
- 运行
def handlebar(ContextInfo):
# 获取最近20根收盘价
close = ContextInfo.get_bar_data('close', ContextInfo.long)
# 计算均线
ma5 = close[-ContextInfo.short:].mean()
ma20 = close.mean()
# 金叉买入:ma5上穿ma20 且 空仓
if ma5 > ma20 and not ContextInfo.hold():
ContextInfo.order_buy(ContextInfo.tradecode, 100)
# 死叉卖出:ma5下穿ma20 且 持仓
elif ma5 < ma20 and ContextInfo.hold():
ContextInfo.order_sell(ContextInfo.tradecode, 100)
3. 可选:全局变量、工具函数
- 用
ContextInfo.xxx存全局变量 - 可自定义函数(如计算 MACD、RSI)
四、策略编写详细步骤(以双均线为例)
Step 1:头部编码声明(必须)
python
运行
#coding:gbk
防止中文乱码
Step 2:写 init 初始化
- 设置 股票代码、周期、参数、资金、费率
Step 3:写 handlebar 主逻辑
- 获取 K 线数据(开盘、收盘、最高、最低、成交量)
- 计算指标(均线、MACD、量能等)
- 判断买卖条件(金叉 / 死叉、突破、背离等)
- 执行下单(
order_buy/order_sell/order_volume)
Step 4:添加风控(强烈建议)
- 仓位控制:不超过 80%
- 止损:亏损 5% 强制平仓
- 单日最大亏损:不超过总资金 2%
- python
- 运行
# 止损示例
if ContextInfo.position_pnl() / ContextInfo.market_value() < -0.05:
ContextInfo.order_sell_all()
五、编译与调试(排错关键)
1. 编译(保存 + 语法检查)
- 编辑器点 编译(或 Ctrl+S)
- Python 策略只保存,不强制语法校验,报错在运行时显示
2. 运行测试(看日志)
- 点 运行 → 选主图标的、周期
- 底部 日志面板 输出结果 / 报错
- 常见错误:
3. 调试技巧
- 多用
print()打印中间变量 - 逐步注释代码,定位出错段落
六、策略回测(验证历史效果)
1. 进入回测界面
- 编辑器点 回测
- 设置:
2. 运行回测
- 点 开始回测
- 输出回测报告:
3. 回测优化
- 调整参数(如均线周期)
- 优化买卖逻辑
- 加入风控,降低回撤
七、模拟交易(实盘前必测)
- 模型交易 → 选策略 → 模拟模式
- 运行 1–2 周,观察:
八、实盘运行(谨慎!)
- 模拟稳定后,切换为 实盘模式
- 确认:
- 点击 开始,策略自动盯盘、下单
九、常见坑 & 避坑要点
- 数据缺失:回测 / 运行前必须 补充对应周期数据
- 中文乱码:头部必须加
#coding:gbk - 缩进错误:Python 用 4 空格缩进,不要用 Tab
- 实盘滑点:回测无滑点,实盘建议加 0.1% 滑点
- 频繁交易:小周期策略注意 佣金成本
十、完整流程总结(一句话)
准备数据 → 新建 Python 策略 → 写 init 初始化 → 写 handlebar 逻辑 → 编译调试 → 回测验证 → 模拟测试 → 实盘运行
股票开户找我!无门槛国债逆回购一折 (百万分之一)!ETF佣金万0.5!融资利率5%以下!优惠多多!免费量化!ptrade&QMT!
温馨提示:投资有风险,选择需谨慎。
期货量化投资策略是自己编辑吗?
-
养虾理财用的金融Skill是什么?国泰海通灵犀Skills实测,新手也能装
2026-05-09 13:41
-
豆包开启付费!AI行业迎来拐点,普通投资者该怎么布局?
2026-05-09 13:41
-
2026国金证券新人开户能够享受哪些福利?(含6888元品质礼包)
2026-05-09 13:41


问一问

+微信
分享该文章
