🚀 AI 一键生成 qmt 策略代码
立即体验

qmt 平台如何使用 passorder 实现期货组合套利交易?(附代码)

qmt | 发布时间: 2026/7/30
以下内容由 EasyQuant 生成。

问题描述

请根据以下 SEO 主题生成完整页面内容:

Title: qmt 期货套利实战:利用合约乘数与动态套利比例下单

Question: qmt 怎么通过 passorder 设置套利比例并进行期货组合下单?

解决方案

QMT 期货套利实战:利用合约乘数与动态套利比例下单

在 QMT(迅投 Print Quant)量化平台上,实现跨品种或跨期套利交易需要精确控制不同合约的套利比例以及计算其合约乘数。平台提供了强大的 passorder 综合交易下单接口,支持组合套利下单功能。


一、 passorder 组合套利参数说明

在使用 passorder 接口进行组合套利交易时,参数配置与普通单股下单有所不同:

1. 核心接口调用格式

passorder(opType, orderType, accountID, orderCode, prType, hedgeRatio, volume, ContextInfo)

2. 参数设置要点

  • accountID:需要传入包含股票账号与期货账号的组合格式,如 'stockAccountID, futureAccountID' 或套利账号组名。
  • orderCode:套利下单代码需指定篮子名与期货合约名,如 'basketName, futureName'
  • orderType:套利专用的 orderType 参数包括:
    • 2331:组合、套利、合约价值自动套利、按组合股票数量方式下单
    • 2332:组合、套利、按合约价值自动套利、按组合股票权重方式下单
    • 2333:组合、套利、按合约价值自动套利、按账号可用方式下单
  • hedgeRatio:套利比例,取值范围在 0 ~ 2 之间(相当于 0%200% 的套利对冲比例)。
  • opType:组合套利可选用 40(期货组合开多)、43(期货组合开空)、46(期货组合平多,优先平今)等。

二、 获取合约乘数

为了精准计算套利组合的头寸配比,需要获取期货合约的乘数。QMT 提供了 ContextInfo.get_contract_multiplier 函数:

# 获取沪深300股指期货合约乘数
multiplier = ContextInfo.get_contract_multiplier('IF2309.IF')
print("合约乘数:", multiplier)

三、 期货组合套利策略代码示例

以下是一个简单的 Python 策略,展示如何在 init 中设定套利账号,并在 handlebar 中动态计算比例并使用 passorder 下单:

#coding:gbk
import time

def init(ContextInfo):
    # 设定交易账号(股票账户, 期货账户)
    ContextInfo.account = '60000001, 110476'
    ContextInfo.set_account(ContextInfo.account)
    # 设定股票池/合约
    ContextInfo.set_universe(['IF2309.IF'])

def handlebar(ContextInfo):
    if not ContextInfo.is_last_bar():
        return
    
    # 1. 获取合约乘数
    contract = 'IF2309.IF'
    multiplier = ContextInfo.get_contract_multiplier(contract)
    
    # 2. 设置套利参数
    hedge_ratio = 1.0  # 套利比例设置为 100%
    order_type = 2331  # 按组合股票数量方式套利下单
    basket_name = 'MyBasket'  # 已在客户端预设的篮子名称
    order_code = f"{basket_name},{contract}"
    
    # 3. 触发套利下单(开多组合,指定套利比例)
    # opType=40 (期货组合开多), prType=5 (最新价), hedgeRatio=1.0, volume=1 (1份)
    passorder(40, order_type, ContextInfo.account, order_code, 5, hedge_ratio, 1, ContextInfo)
    print(f"已发送套利下单任务:代码={order_code}, 套利比例={hedge_ratio}")

四、 注意事项

  1. 选价类型(prType):组合套利时,prType 参数主要对组合篮子生效,期货端默认采用对应的市场/对手价等策略。
  2. 账户订阅:须确保在 init 方法中调用 ContextInfo.set_account() 绑定交易账号,否则无法正常接收回报及下单。
  3. QuickTrade 快捷下单:如需在盘中触发实时信号立即下单,可将 quickTrade 参数设置为 1