﻿引用函数 | 迅投知识库 
 迅投知识库 
 首页 
 API API 
 投研新手教程 
 QMT新手教程 
 内置Python 
 XtQuant文档 
 VBA 
 数据字典 数据字典 
 快速开始 
 股票数据 
 行业概念数据 
 指数数据 
 期货数据 
 期权数据 
 场内基金数据 
 债券数据 
 常见问题 
 场景化示例 
 迅投因子 
 数据浏览器 
 策略迁移 策略迁移 
 聚宽策略 
 客服QQ: 810315303 
 联系方式: 18309226715 
 视频教程 视频教程 
 投研端教程 
 迅投学堂 
 在新窗口打开 
 投研平台 
 在新窗口打开 
 迅投社区 
 在新窗口打开 
 迅投官网 
 在新窗口打开 
 注册 
 登录 
 智能助手加载中... 
 首页 
 API API 
 投研新手教程 
 QMT新手教程 
 内置Python 
 XtQuant文档 
 VBA 
 数据字典 数据字典 
 快速开始 
 股票数据 
 行业概念数据 
 指数数据 
 期货数据 
 期权数据 
 场内基金数据 
 债券数据 
 常见问题 
 场景化示例 
 迅投因子 
 数据浏览器 
 策略迁移 策略迁移 
 聚宽策略 
 客服QQ: 810315303 
 联系方式: 18309226715 
 视频教程 视频教程 
 投研端教程 
 迅投学堂 
 在新窗口打开 
 投研平台 
 在新窗口打开 
 迅投社区 
 在新窗口打开 
 迅投官网 
 在新窗口打开 
内置Python 
 快速开始 
 使用须知 
 界面操作 
 变量约定 
 数据结构 
 系统函数 
 行情函数 
 交易函数 
 成交回报实时主推函数 
 引用函数 
 ext_data - 获取扩展数据 
 ext_data_rank - 获取引用的扩展数据的数值在所有品种中的排名 
 ext_data_rank_range - 获取引用的扩展数据的数值在指定时间区间内所有品种中的排名 
 ext_data_range - 获取扩展数据在指定时间区间内的值 
 get_factor_value - 获取因子数据 
 get_factor_rank - 获取引用的因子数据的数值在所有品种中排名 
 获取引用的 VBA 模型运行的结果 
 (投研版QMT) 获取引用的 VBA 模型运行的结果 
 绘图函数 
 枚举常量 
 完整示例 
 常见问题 
 # ext_data - 获取扩展数据
获取扩展数据
 调用方法： ext_data(extdataname, stockcode, deviation, ContextInfo) 
 参数： 
 参数名 类型 说明 提示 
 extdataname string 扩展数据名 
 stockcode string 证券代码 形式如 '600000.SH' 
 deviation number K 线偏移 0：不偏移，N：向右偏移N，-N：向左偏移N 
 ContextInfo pythonObj Python 对象 ython 对象，这里必须是 ContextInfo 
 返回：  number
** 示例：**
 #coding:gbk 
 def init ( ContextInfo ): 
 print (ext_data( ' CR ' , ' 600000.SH ' , 0 , ContextInfo)) 
 # ext_data_rank - 获取引用的扩展数据的数值在所有品种中的排名
获取引用的扩展数据的数值在所有品种中的排名
 调用方法： ext_data_rank(extdataname, stockcode, deviation, ContextInfo) 
 参数： 
 参数名 类型 说明 提示 
 extdataname string 扩展数据名 
 stockcode string 证券代码 形式如 '600000.SH' 
 deviation number K 线偏移 0：不偏移，N：向右偏移N，-N：向左偏移N 
 ContextInfo pythonObj Python 对象 ython 对象，这里必须是 ContextInfo 
 返回：  number
** 示例：**
 #coding:gbk 
 def init ( ContextInfo ): 
 print (ext_data_rank( ' mycci ' , ' 600000.SH ' , 0 , ContextInfo)) 
 # ext_data_rank_range - 获取引用的扩展数据的数值在指定时间区间内所有品种中的排名
获取引用的扩展数据的数值在指定时间区间内所有品种中的排名
** 调用方法： ** ext_data_rank_range(extdataname, stockcode, begintime, endtime, ContextInfo) 
 参数： 
 参数名 类型 说明 提示 
 extdataname string 扩展数据名 
 stockcode string 证券代码 形式如 '600000.SH' 
 begintime string 区间的起始时间 格式为 '2016-08-02 12:12:30'（包括该时间点在内） 
 endtime string 区间的结束时间 格式为 '2017-08-02 12:12:30' （包括该时间点在内） 
 ContextInfo pythonObj Python对象 Python 对象，这里必须是 ContextInfo 
 返回：  pythonDict
** 示例：**
 #coding:gbk 
 def init ( ContextInfo ): 
 print (ext_data_rank_range( ' mycci ' , ' 600000.SH ' , ' 2022-08-02 12:12:30 ' , ' 2023-08-02 12:12:30 ' , ContextInfo)) 
 # ext_data_range - 获取扩展数据在指定时间区间内的值
获取扩展数据在指定时间区间内的值
 调用方法： ext_data_range(extdataname, stockcode, begintime, endtime, ContextInfo) 
 参数： 
 参数名 类型 说明 提示 
 extdataname string 扩展数据名 
 stockcode string 证券代码 形式如 '600000.SH' 
 begintime string 区间的起始时间 格式为 '2016-08-02 12:12:30'（包括该时间点在内） 
 endtime string 区间的结束时间 格式为 '2017-08-02 12:12:30' （包括该时间点在内） 
 ContextInfo pythonObj Python对象 Python 对象，这里必须是 ContextInfo 
 返回：  pythonDict
 示例： 
 #coding:gbk 
 def init ( ContextInfo ): 
 print (ext_data_range( ' mycci ' , ' 600000.SH ' , ' 2022-08-02 12:12:30 ' , ' 2023-08-02 12:12:30 ' , ContextInfo)) 
 # get_factor_value - 获取因子数据
获取因子数据
 调用方法： get_factor_value(factorname, stockcode, deviation, ContextInfo) 
 参数： 
 参数名 类型 说明 提示 
 factorname string 因子名称 
 stockcode string 证券代码 形式如 '600000.SH' 
 deviation number K 线偏移 0 不偏移，N 向右偏移 N，-N 向左偏移 N 
 ContextInfo pythonObj Python对象 Python 对象，这里必须是 ContextInfo 
 返回：  number
 示例： 
 #coding:gbk 
 def init ( ContextInfo ): 
 print (get_factor_value( ' zzz ' , ' 600000.SH ' , 0 , ContextInfo)) 
 # get_factor_rank - 获取引用的因子数据的数值在所有品种中排名
获取引用的因子数据的数值在所有品种中排名
 调用方法： get_factor_rank(factorname, stockcode, deviation, ContextInfo) 
 参数： 
 参数名 类型 说明 提示 
 factorname string 因子名称 
 stockcode string 证券代码 形式如 '600000.SH' 
 deviation number K 线偏移 0 不偏移，N 向右偏移 N，-N 向左偏移 N 
 ContextInfo pythonObj Python对象 Python 对象，这里必须是 ContextInfo 
 示例： 
 #coding:gbk 
 def init ( ContextInfo ): 
 print (get_factor_rank( ' zzz ' , ' 600000.SH ' , 0 , ContextInfo)) 
 # 获取引用的 VBA 模型运行的结果
(不推荐)券商版qmt函数：call_vba
 更推荐函数（投研版qmt）：
获取历史数据 (必须先建vba公式) call_formula 
 在新窗口打开 
订阅实时+历史数据 (必须先建vba公式) subscribe_formula 
 在新窗口打开 更多实时和历史数据调用的示例: Python调用VBA因子公式的案例 
 在新窗口打开 -订阅实时+历史数据(直接在python中写VBA,VBA公式不用先建)[get_vba_func_result]
获取引用的 VBA 模型运行的结果
提示
注意
使用该函数时需补充好本地 K 线或分笔数据
 调用方法：   call_vba(factorname, stockcode,[period, dividend_type, barpos],ContextInfo) 
 参数： 
 参数名 类型 说明 提示 
 factorname string 因子名称 
 stockcode string 证券代码 形式如 '600000.SH' 
 period string K 线偏移 可缺省，默认为当前主图周期线型 
 dividend_type string 复权方式 可缺省，默认当前图复权方式，具体可选值如下 
 barpos number 对应 bar 下标 可缺省，默认当前主图调用到的 bar 的对应下标xtInfo 
 ContextInfo pythonObj Python 对象 Python 对象，这里必须是 ContextInfo 
period 可选值：
'tick'：分笔线 '1d'：日线 '1m'：1分钟线 '3m'：3分钟线 '5m'：5分钟线 '15m'：15分钟线 '30m'：30分钟线 '1h'：小时线 '1w'：周线 '1mon'：月线 '1q'：季线 '1hy'：半年线 '1y'：年线
dividend_type 可选值：
'none'：不复权 'front'：向前复权 'back'：向后复权 'front_ratio'：等比向前复权 'back_ratio'：等比向后复权
 返回：  number
 示例： 
 python 
 #coding:gbk 
 def init ( ContextInfo ): 
 print (call_vba( ' MA.ma1 ' , ' 600036.SH ' , ContextInfo)) 
@ tab 返回值
 -1.0 
 # (投研版QMT) 获取引用的 VBA 模型运行的结果
更推荐函数(投研版QMT):
订阅实时+历史数据(直接在python中写VBA,VBA公式不用先建)[get_vba_func_result]
获取引用的 VBA 模型运行的结果
提示
注意
使用该函数时需补充好本地 K 线或分笔数据
 调用方法：   get_vba_func_result(func,stock_code,period='1d',start_time='',end_time='',count=-1,dividend_type=None,extend_param={},subscribe=True) 
 参数： 
 参数名 类型 说明 提示 
 func str或者list[str] vba函数 
 stockcode string 合约品种 形式如 '600000.SH' 
 period string 周期 可缺省，默认为当前主图周期线型 
 start_time string 开始时间 形式如 %Y%m%d 或 %Y%m%d%H%M%S 
 end_time string 结束时间 形式如 %Y%m%d 或 %Y%m%d%H%M%S 
 count int 条数 模型运行范围为向前 count 根 bar，默认为 -1 运行所有 bar 
 dividend_type string 除权类型 复权方式，默认为主图除权方式，可选范围：'none':不复权，'front':向前复权，'back':向后复权，'front_ratio':等比向前复权，'back_ratio':等比向后复权 
 extend_param dict 扩展参数 模型的入参,{"模型名:参数名":参数值},例如在跑模型MA时，{'MA:n1':1};入参可以添加__basket:dict,组合模型的股票池权重,形如{'__basket':{'600000.SH':0.06,'000001.SZ':0.01}}，如果在跑一个模型1的时候，模型1调用了模型2，如果只想修改模型2的参数可以传{'模型2:参数':参数值} 
 subscribe bool 是否订阅数据 True:历史加实时, False: 历史 
period 可选值：
'tick'：分笔线 '1d'：日线 '1m'：1分钟线 '3m'：3分钟线 '5m'：5分钟线 '15m'：15分钟线 '30m'：30分钟线 '1h'：小时线 '1w'：周线 '1mon'：月线 '1q'：季线 '1hy'：半年线 '1y'：年线
dividend_type 可选值：
'none'：不复权 'front'：向前复权 'back'：向后复权 'front_ratio'：等比向前复权 'back_ratio'：等比向后复权
 示例： 
 python 返回值 
 # coding:GBK 
 def init ( C ): 
 fml = """ 
 基准：=-1；//-1 
 档位：=1； 
 bb:getoptcodebyno('','C',1,档位，基准,1，0,6); 
 if bb = '' then exit; 
 //qh1:convindex('',1);//返回IFIC00 
 ss:getoptcodebyno('','P',1,-1*档位，基准,1,0,6); 
 xx:getexerciseinterval('SH510050',1),nodraw; 
 x:deliveryinterval(),LINETHICK0;//,noaxis;// 
 bb1:STKNAME(bb); 
 ss1:STKNAME(ss); 
 认沽今收：callstock(ss,vtclose,-1,0)，noaxis(); 
 认购今收：callstock(bb,vtclose,-1,0),noaxis(); 
 """ 
 d = get_vba_func_result(fml, ' 510050.SH ' , ' 1d ' , count = 10 ) 
 print (d) 
 start simulation mode 
 bb bb1 ss ss1 time \ 
 20260702 SHO10011685 50ETF购7月3000 SHO10011694 50ETF沽7月3000 1782921600000 
 x xx 认沽今收 认购今收 
 20260702 11.0 14.0 0.0598 0.0613 
 上次更新: 
邀请注册送VIP优惠券
分享下方的内容给好友、QQ群、微信群,好友注册您即可获得VIP优惠券
玩转qmt,上迅投qmt知识库
 登录后获取 
 成交回报实时主推函数 绘图函数