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

QMT平台如何获取期权合约详细信息?(行权价、到期日、保证金率)

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

问题描述

qmt 期权交易:使用 get_option_detail_data 获取行权价与到期日
QMT中怎么获取期权合约的行权价、到期日和保证金率等详细信息?

解决方案

在QMT(迅投极速量化交易系统)中,获取期权合约的详细信息(如行权价、到期日、保证金率、合约单位等)主要通过 ContextInfo.get_option_detail_data(optioncode) 接口来实现。

一、接口介绍

ContextInfo.get_option_detail_data(optioncode)

  • 释义:获取指定期权品种的详细信息。
  • 参数
    • optioncode (string):期权代码,例如 '10001506.SHO'。当填写空字符串 '' 时,默认获取当前主图的期权品种信息。
  • 返回值:返回一个字典(dict),包含该期权合约的各项详细参数。

二、返回字典常用字段说明

通过该接口获取的字典中,包含以下核心键值对:

键名 (Key) 含义 示例/说明
OptExercisePrice 期权行权价 例如:3.5
ExpireDate 到期日 格式通常为:20210127
LongMarginRatio 多头保证金率 比例值
ShortMarginRatio 空头保证金率 比例值
OptUnit 期权合约单位 例如:10000
optType 期权类型 CALL (认购) 或 PUT (认沽)
OptUndlCode 期权标的证券代码 例如:510300
OptUndlMarket 期权标的证券市场 例如:SH
OpenDate 发行日期 格式:YYYYMMDD
EndDelivDate 期权行权终止日 格式:YYYYMMDD

三、Python 代码示例

以下是一个在QMT策略中获取并打印期权合约详细信息的完整示例:

#coding:gbk

def init(ContextInfo):
    # 设定需要查询的期权合约代码(以上交所50ETF期权为例)
    ContextInfo.option_code = '10001506.SHO'
    print("初始化完成,准备在handlebar中获取期权详情...")

def handlebar(ContextInfo):
    # 仅在最后一根Bar运行一次,避免重复打印
    if not ContextInfo.is_last_bar():
        return
        
    # 获取期权详细信息
    option_detail = ContextInfo.get_option_detail_data(ContextInfo.option_code)
    
    if option_detail:
        print("=== 期权合约 [%s] 详细信息 ===" % ContextInfo.option_code)
        print("期权类型: %s" % option_detail.get('optType'))
        print("行权价格: %s 元" % option_detail.get('OptExercisePrice'))
        print("到期日期: %s" % option_detail.get('ExpireDate'))
        print("合约单位: %s" % option_detail.get('OptUnit'))
        print("空头保证金率: %s" % option_detail.get('ShortMarginRatio'))
        print("多头保证金率: %s" % option_detail.get('LongMarginRatio'))
        print("标的证券代码: %s.%s" % (option_detail.get('OptUndlCode'), option_detail.get('OptUndlMarket')))
        print("====================================")
    else:
        print("未获取到期权合约 %s 的详细数据,请检查合约代码是否正确或本地数据是否补充完整。" % ContextInfo.option_code)

四、注意事项

  1. 数据补充:在使用此接口前,请确保已通过QMT客户端的“数据管理”功能补充了对应期权市场(如 SHO 上交所期权、SZO 深交所期权)的过期合约列表历史行情数据,否则可能无法获取到历史期权合约的详细信息。
  2. 标的资产无风险利率与波动率:返回的字典中还包含 OptUndlRiskFreeRate(无风险利率)和 OptUndlHistoryRate(历史波动率),可用于期权定价模型(如BS模型)的计算。