讯投QMT 聚宽策略跟单对接系统 策略同步介绍文档
本文档仅供轻知量化的社群用户阅读使用。保存好此页面分享地址,系统若有更改文档会同步更新。
依赖文件版本信息: qzsqmt.so 版本日期 20250417.01
QMT 策略版本日期:20250417
系统介绍
轻知量化编写的《QMT/聚宽跟单系统》是一种在金融量化交易领域具有一定创新性和实用性的交易辅助工具。
系统旨在使广大投资爱好者能够实现 QMT 平台对聚宽平台上的优质量化策略信号进行跟踪和执行,充分发挥两个平台的优势。
使用该工具可以明显提高操作纪律性、交易效率。
聚宽设置
新建策略
随便选择一个现有策略,建立策略也可以。

然后对策略进行回测 日期选近一个月,确认下最近几天是否有订单信号。

策略注入
上传依赖文件
01 下载 http://files.qingzhishi.com/download/qzsqmt.zip [文件更新日期 v20250302.01] ,轻知社群的 VIP用户找轻知量化要解压密码。
02 解压后上传qzsqmt.so到研究环境根目录
#### 注入代码到聚宽策略
```python
'''
把下面的全部源代码复制到聚宽策略的开头
'''
###---跟单注入代码开始---
from qzsqmt import *
autocode = '47523' # 跟单授权码 , 找轻知量化阿K (xiangyin615)
memberid = 109 # 用户ID , 找轻知量化阿K (xiangyin615)
initialize_trader(url='https://www.qingzhishi.com', port=80, password=autocode , memberid = memberid )
order = qz_order(order)
order_target = qz_order_target(order_target)
order_value = qz_order_value(order_value)
order_target_value = qz_order_target_value(order_target_value)
###---跟单注入代码结束---
```
设置策略授权码
见下图,这里的 qzsetf01 是测试用的, 需要更 改为你们自己的 栏位特征码 。 支持多策略,如果你有 N个模拟栏位需要对接信号,那就需要N个独立的栏位码。
聚宽测试
1.点击测试,
- 等待回测结束
聚宽挂模拟盘
点击模拟交易就可以
QMT 设置
策略挂入 QMT 实盘

以上导入策略的步骤一般已经由我导入完成。
策略设置
切换到实盘 点击运行

运行设置策略,弹出配置框
跟单策略 支持对应多个聚宽模拟栏位 (如上图),当只有一个聚宽模拟栏位时的写法 (如下图)

A)单栏位写法:
"栏位名称":["模拟栏位1"]
"栏位授权码":["qzs"]
"栏位跟单比例":[1.01]
B)多栏位写法:
"栏位名称":["模拟栏位1","模拟栏位2"]
"栏位授权码":["qzs","qzsetf01"]
"栏位跟单比例":[1.01,1.01]
配置文件参数说明
参数说明
账户类型: STOCK 股票 | CREDIT 融资融券
调试模式: 1 | 0 。 # 调试模式:1 实时数据表的所有订单都会下单,包括之前的也会补单。 | 调试模式:0 即为正式状态,只处理当日信号。文末附录01
调试下单数量: 200
下单模式: 默认 | 金额 | 数量 | 如果调试模式开启 公式不生效,统一是以"调试下单数量"的数值委托。
下单模式对应公式:
默认模式 = price * amount * 栏位跟单比例 # amount是聚宽信号那边传过来的下单数量 , price 由QMT获取的实时价
数量模式 = price * 下单权值 * 栏位跟单比例
金额模式 = 下单权值
调试模式 = 调试下单数量 * price
下单触发模式: 1 当前k线为最新k线 则立即下单 | 0 K线走完下单 | 2 不管是不是最新K线 立即下单
quickTrade参数
是否立马触发下单,0 否,1 是,2 不判断bar状态
设置为0时,非历史bar上执行时(ContextInfo.is_last_bar()为True),当前级别的K线走完,等待下一根K线的第一个tick数据来时,触发下单;
设置为1时,非历史bar上执行时(ContextInfo.is_last_bar()为True),只要策略模型中调用到就触发下单。
设置为2时,不判断bar状态,只要策略模型中调用到就触发下单交易。
买入/卖出 下单选价类型 编码对照表
买入/卖出选价编码 , 既prType(下单选价类型):
-1:无效(只对于algo_passorder起作用)
0:卖5价
1:卖4价
2:卖3价
3:卖2价
4:卖1价
5:最新价
6:买1价
7:买2价(组合不支持)
8:买3价(组合不支持)
9:买4价(组合不支持)
10:买5价(组合不支持)
11:(指定价)模型价(只对单股情况支持,对组合交易不支持)
12:涨跌停价
13:挂单价
14:对手价
42:最优五档即时成交剩余撤销申报[上交所][股票]
43:最优五档即时成交剩转限价申报[上交所][股票]
44:对手方最优价格委托[上交所[股票]][深交所[股票][期权]]
45:本方最优价格委托[上交所[股票]][深交所[股票][期权]]
46:即时成交剩余撤销委托[深交所][股票][期权]
47:最优五档即时成交剩余撤销委托[深交所][股票][期权]
48:全额成交或撤销委托[深交所][股票][期权]
策略运行日志

跟单对接交易

附录
附录01 调试模式下的补单理解
跟单策略 有一个调试模式的开关。
当 调试模式=✓ 实时数据表的所有订单都会下单,包括之前的也会补单。也就是如下图的顺序逻辑,注意图上订单的时间。
例:比如今天是0304日。 但是因为跟单服务器同步存储了昨天的信号。 而你今天是想调试,有对昨日进行补单的需求。那么在运行跟单策略时,整个流程就像下方图示一样。
当调试模式关闭,即为正式状态,只会处理当日信号。
例:比如今天是0304日。QMT跟单策略 会收到服务器存储的最近25条信号,可能包含 前天、昨天、今天的信号。但只筛选处理今日的信号,不会补单。
聚宽模拟的订单详情

QMT跟单策略同步到的信号

QMT策略委托日志

QMT界面上的委托查询

quickTrade参数理解
def init(ContextInfo):
# 设置定时器,历史时间表示会在一次间隔时间后开始调用回调函数 比如本例中 5秒后会后第一次触发myHandlebar调用 之后五秒触发一次
ContextInfo.run_time("myHandlebar","5nSecond","2019-10-14 13:20:00")
# 立即下单 用最新价买入股票xxxxxx 100股,且指定投资备注
passorder(23,1101,account,xxxxxx,5,0,100,'1',2,'tzbz',ContextInfo)
def myHandlebar(ContextInfo):
'''集合竞价'''
global c
now = time.strftime('%H%M%S')
if c ==0 and '092500' >= now >= '091500':
c += 1
passorder(23,1101,account,s,11,14.00,100,2,ContextInfo) # 立即下单
def handlebar(ContextInfo):
if not ContextInfo.is_last_bar():
#历史k线不应该发出实盘信号 跳过
return
if ContextInfo.is_last_bar():
global c
c +=1
if c ==1:
# 用14.00元限价买入股票xxxxxx 100股
passorder(23,1101,account,xxxxxx,11,14.00,100,1,ContextInfo) # 当前k线为最新k线 则立即下单
# 用最新价限价买入股票xxxxxx 100股
passorder(23,1101,account,xxxxxx,5,-1,100,0,ContextInfo) # K线走完下单
# 用最新价限价买入股票xxxxxx 1000元
passorder(23, 1102, account, xxxxxx, 5, 0,1000, 2, ContextInfo) # 不管是不是最新K线,立即下单
流程图(PC端)
已有模拟运行策略的修改入口

聚宽模拟栏位实时问题
新用户有一个VIP栏位 试用1个月 ,实时的信号。
每个账号有3个永久免费栏位 每天凌晨4点执行,因此策略信号会延迟。
所以,1个月后需要买聚宽VIP或者注册新号续杯🍵。
某券商硬件白名单查询办法 【某金,某信忽略】
网卡地址

**cmd 运行:** ipconfig /all

硬盘序列号
**cmd 运行:** WMIC path win32_physicalmedia get serialnumber

免责声明
用户须知:
- 用途声明 本社群提供的所有量化交易策略、交易框架、工具及相关内容(以下简称“内容”)仅限用于仿真交易
- 风险提示 量化交易策略和工具在仿真环境中可能表现良好,但在实盘交易中可能因市场波动、流动性风险、技术故障等因素导致重大损失。用户应充分了解相关风险,并自行承担因违反本声明而产生的全部后果。
- 免责声明 本社群及内容提供者不对用户因使用本社群内容而产生的任何损失承担责任,包括但不限于因用户擅自将内容用于实盘交易而导致的损失。
- 用户责任 用户在使用本社群内容前,应仔细阅读并同意本提示内容。若用户将本社群内容用于实盘交易,视为用户自愿承担全部风险及法律责任。

