🚀 AI 一键生成 joinquant 策略代码
立即体验
👉 AI 生成代码 👈

JoinQuant 聚宽平台 VOL 成交量指标参数 M1 和 M2 代表什么含义?

joinquant | 发布时间: 2026/6/24
以下内容由 EasyQuant 生成。

问题描述

关于数据字典-技术分析指标-VOL 成交量中参数的疑惑

API文档中数据字典-技术分析指标-VOL 成交量

VOL(security_list, check_date, M1=5, M2=10, unit = '1d', include_now = True, fq_ref_date = None)
中的M1和M2分别代表什么含义?有知道的小伙伴能帮忙解答一下吗?

解决方案

在 JoinQuant (聚宽) 平台的技术分析指标库(jqlib.technical_analysis)中,VOL 函数用于获取成交量及其移动平均线数据。这个函数的设计参考了传统炒股软件(如通达信、同花顺)中的 VOL 指标。

M1 和 M2 参数的含义

在函数 VOL(security_list, check_date, M1=5, M2=10, unit = '1d', include_now = True, fq_ref_date = None) 中:

  • M1:代表第一条成交量移动平均线的计算周期。默认值为 5,表示计算 5 个单位周期(如果 unit='1d',则为 5 日)的成交量简单移动平均线(MAVOL1)。
  • M2:代表第二条成交量移动平均线的计算周期。默认值为 10,表示计算 10 个单位周期(如果 unit='1d',则为 10 日)的成交量简单移动平均线(MAVOL2)。

传统软件中的对应关系

在通达信等软件中,VOL 指标的公式通常如下:

VOLUME:VOL,VOLSTICK;
MAVOL1:MA(VOLUME,M1);
MAVOL2:MA(VOLUME,M2);

聚宽的 VOL 函数正是为了复现这一指标,它通常会返回三个值(具体以 API 实际返回的字典或元组为准,通常包含当期成交量、M1周期均量、M2周期均量)。

使用示例

假设你想获取平安银行(000001.XSHE)在某天的成交量,以及它的 5 日均量和 10 日均量:

from jqlib.technical_analysis import VOL

# 获取 2023-10-10 的 VOL 指标数据
# M1=5 表示 5日均量,M2=10 表示 10日均量
vol_data, mavol1_data, mavol2_data = VOL('000001.XSHE', check_date='2023-10-10', M1=5, M2=10, unit='1d')

print("当日成交量:", vol_data['000001.XSHE'])
print("5日平均成交量:", mavol1_data['000001.XSHE'])
print("10日平均成交量:", mavol2_data['000001.XSHE'])

总结M1M2 就是用来让你自定义想要观察的成交量均线周期的,你可以根据自己的策略需求,将它们修改为 5、10、20、60 等任意整数周期。