QMT核心运行机制大揭秘:从安装到跑通第一个策略
发布时间:13小时前阅读:7
很多新手拿到QMT后一脸懵:界面这么多按钮,策略在哪写?数据从哪来?怎么让它自动交易?这一篇把QMT的运行机制拆透,帮你快速上手
️ 一、QMT的架构逻辑(先建立认知)
QMT全称"Quantitative Multi-market Trading System",核心架构分四层:
- 行情层:接收交易所实时行情(五档全推/Tick),本地缓存
- 数据层:管理历史数据下载、财务数据获取、全推/订阅数据分发
策略层:内置Python 3.6运行环境,加载用户编写的.py策略文件- 交易层:对接券商交易柜台,发送委托、查询成交、管理持仓
- 关键点:策略运行在本地,需要电脑开机+网络畅通。这也是QMT和PTrade最根本的区别。
二、安装避坑指南
拿到客户经理发的下载链接后:
- ❌ 千万别装C盘!C盘权限严格,后续下载历史数据会提示"无法写入文件"
- ✅ 建议路径:`D:\QMT\迅投极速交易终端`
- 安装时关闭杀毒软件,避免误拦截
- 首次启动建议右键→以管理员身份运行
- 登录后用测试账号先熟悉界面,再切实盘账号
三、策略编写的核心结构
一个标准的QMT策略通常包含三个函数:
def init(ContextInfo):
"""初始化:只运行一次"""
# 设置股票池、下载历史数据、初始化变量
download_history_data("000001.SZ", "1d", "20230101", "")
ContextInfo.set_universe(["000001.SZ"])
def handlebar(ContextInfo):
"""每根K线触发一次(回测/实盘通用)"""
# 计算指标、生成信号、执行交易
close = get_market_data_ex(fields=["close"], ...)
if close > ma:
passorder(...) # 下单
def exit(ContextInfo):
"""退出时清理"""
passinit:策略加载时执行一次,做初始化工作handlebar:核心逻辑,回测时每根K线触发,实盘时按周期触发exit:策略停止时执行,做资源释放
四、两种运行模式:回测 vs 实盘
回测模式:
- 在历史K线上自左向右逐根遍历
- 用模拟资金账号记录买卖信号和持仓盈亏
- 不涉及真实交易,用于验证策略逻辑
- 实盘模式:
- 盘中收取最新动态行情
- 即时发送买卖信号到交易所
- 需要实时重复报撤的模型(如高频做市)
- ⚠️ 切换实盘前,务必在「设置→下单前提示设置」里关闭"函数交易下单前提示",否则每笔委托都会弹窗确认,无法实现自动化。
五、四个最核心的API(记住就能写策略)
download_history_data:下载历史数据到本地get_market_data_ex:获取行情数据(历史或实时,由subscribe参数控制)get_financial_data:获取财务数据(PE/PB/ROE/总股本等)passorder:下单函数,支持市价/限价/两融/期权等多种方式- 掌握这四个API,就能写出80%的常见策略。
六、新手第一天建议做的五件事
- 用测试账号登录,熟悉行情/交易/策略三个模块布局
下载一只股票(如000001.SZ)的日线数据,验证download_history_data是否正常- 打开示例策略,点"回测",看净值曲线和交易记录
- 修改示例策略的参数(如均线周期),观察回测结果变化
- 切换到模拟信号模式跑一天,观察信号触发是否准时
想低佣开户+免费开通QMT跑你的第一个策略? 找我协助办理,权限快速下发,还有入门策略代码模板送你~欢迎联系我
温馨提示:投资有风险,选择需谨慎。
-
REITs打新日历:四川成都 ⌈锦江 REIT⌋ 本周四售!(附认购操作指南)
2026-07-27 16:59
-
2026夜市委托怎么操作?个人经验攻略全分享
2026-07-27 16:59
-
新股发行:【展芯股份】+【国仪公司】+【超纯应材】本周可申购!(附打新神器)
2026-07-27 16:59


问一问

+微信
分享该文章
