🚀 AI 一键生成 joinquant 策略代码

JoinQuant 聚宽获取所有场内 ETF 基金的方法与代码示例

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

问题描述

请教各位宽友,如何获取当前所有场内etf基金?

解决方案

在 JoinQuant 聚宽平台上,您可以使用 get_all_securities 函数来获取当前所有场内 ETF 基金的列表。

核心 API:get_all_securities

该函数用于获取平台支持的所有股票、基金、指数、期货、期权信息。通过指定 types 参数,我们可以过滤出特定类型的标的。

获取 ETF 基金的代码示例

在研究环境或策略代码中,您可以这样编写:

from jqdata import *

# 获取当前所有场内 ETF 基金的信息,返回一个 pandas.DataFrame
etf_df = get_all_securities(types=['etf'])

# 打印 DataFrame 的前 5 行查看详细信息(包含 display_name, name, start_date, end_date, type)
print("ETF 基金详细信息:")
print(etf_df.head())

# 如果您只需要 ETF 基金的代码列表,可以提取 DataFrame 的 index
etf_list = list(etf_df.index)

# 打印前 5 个 ETF 代码
print("\nETF 基金代码列表(前5个):")
print(etf_list[:5])

参数说明

  • types=['etf']:指定过滤类型为场内 ETF 基金。除了 'etf',您还可以使用 'lof'(上市型开放基金)、'fja'(分级A)、'fjb'(分级B)等来获取其他类型的场内基金。
  • date:可选参数。如果不填,在研究模块中默认是今天,在回测模块中默认是回测的当前日期(context.current_dt)。如果您想获取历史上某一天上市的 ETF 列表,可以传入具体的日期字符串,例如 date='2020-01-01'

通过上述方法,您就可以轻松获取到聚宽平台上所有的场内 ETF 基金数据,用于后续的量化分析和策略编写。