🚀 AI 一键生成 joinquant 策略代码

JoinQuant 平台 attribute_history() 函数取的是什么数据?

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

问题描述

attribute_history()取的是什么数据?

解决方案

在 JoinQuant(聚宽)量化平台中,attribute_history() 函数用于查看某一支股票(或标的)的历史行情数据,并且允许你同时查询该标的的多个数据字段(属性)

核心特点

  1. 单标的多字段:与 history() 函数(多标的单字段)不同,attribute_history() 专门用于获取单个标的多个属性(如开盘价、收盘价、成交量等)。
  2. 避免未来函数:当取天数据时,不包括当天的数据(即使是在收盘后调用);当取分钟数据时,不包括当前分钟的数据
  3. 停牌处理:默认跳过停牌日期(skip_paused=True)。如果不跳过,停牌时会使用停牌前的数据填充。
  4. 复权处理:默认返回前复权数据(fq='pre')。

可获取的数据字段 (fields)

你可以通过 fields 参数指定要获取的属性列表,支持以下基本属性:

  • 'open':开盘价
  • 'close':收盘价
  • 'low':最低价
  • 'high':最高价
  • 'volume':成交量(股)
  • 'money':成交额
  • 'factor':复权因子
  • 'high_limit':涨停价
  • 'low_limit':跌停价
  • 'avg':平均价
  • 'pre_close':前收盘价
  • 'paused':是否停牌(1表示停牌)

返回值格式

默认情况下(df=True),它返回一个 pandas.DataFrame 对象:

  • 行索引 (index)datetime.datetime 对象,代表时间。
  • 列索引 (columns):你请求的属性名称(如 'open', 'close')。

代码示例

# 获取平安银行(000001.XSHE)过去5天的开盘价、收盘价、成交量和复权因子
stock = '000001.XSHE'
h = attribute_history(stock, 5, unit='1d', fields=['open', 'close', 'volume', 'factor'])

# 打印获取到的 DataFrame
print(h)

# 获取昨天的收盘价
yesterday_close = h['close'][-1]

# 计算过去5天的平均开盘价
mean_open = h['open'].mean()

总结来说,attribute_history() 是你在编写策略时,用来计算移动平均线(MA)、MACD 等技术指标,或者获取单只股票近期量价特征最常用的 API。