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

如何在 joinquant 中通过 get_all_factors 获取并筛选所有质量类因子?

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

问题描述

请根据以下 SEO 主题生成完整页面内容:

Title: joinquant 因子库指南:get_all_factors 基础与质量类因子筛选

Question: 如何通过 get_all_factors 获取聚宽因子库中所有的质量类因子代码?

解决方案

joinquant 因子库指南:get_all_factors 基础与质量类因子筛选

在聚宽(JoinQuant)量化交易平台中,jqfactor 模块提供了丰富的单因子与多因子分析工具。利用 get_all_factors() 函数,投资者可以快速查询平台支持的所有因子信息,包括因子代码(factor)、因子说明(factor_intro)以及因子分类(category)。


一、使用 get_all_factors 获取并筛选质量类因子

要筛选出所有的“质量类”因子,可以在获取全量因子数据后,使用 Pandas 对返回的 DataFrame 按照分类列 categorycategory_intro 进行过滤。

示例代码:

from jqfactor import get_all_factors

# 1. 获取聚宽因子库中所有因子的信息
all_factors = get_all_factors()

# 2. 筛选质量类因子 (category 为 'quality')
quality_factors = all_factors[all_factors['category'] == 'quality']

# 3. 打印质量类因子列表
print("质量类因子总数:", len(quality_factors))
print(quality_factors[['factor', 'factor_intro', 'category']])

二、常见质量类因子示例

在聚宽因子库中,质量类(Quality)因子通常用于衡量企业的盈利能力、运营效率、资产质量及财务杠杆。以下为部分典型质量类因子:

因子代码 (Factor Code) 因子名称 计算/含义说明
roe_ttm 权益回报率 TTM 净利润(TTM)/ 期末股东权益
roa_ttm 资产回报率 TTM 净利润(TTM)/ 期末总资产
gross_income_ratio 销售毛利率 (营业收入 TTM - 营业成本 TTM) / 营业收入 TTM
net_profit_ratio 销售净利率 净利润 TTM / 营业收入 TTM
debt_to_asset_ratio 资产负债率 负债合计 / 总资产
roic_ttm 投入资本回报率 TTM 归母净利润 TTM / 前四个季度投资资本均值

三、结合 get_factor_values 获取因子历史数据

筛选出目标质量类因子代码后,可以使用 get_factor_values 提取指定股票池的历史因子矩阵:

from jqfactor import get_factor_values

# 提取平安银行(000001.XSHE)的 ROE 与 ROA 因子数据
factor_data = get_factor_values(
    securities=['000001.XSHE'],
    factors=['roe_ttm', 'roa_ttm'],
    start_date='2023-01-01',
    end_date='2023-12-31'
)

# 查看 roe_ttm 因子 DataFrame
print(factor_data['roe_ttm'].head())

四、注意事项

  1. 数据更新时间:因子数据每日 05:00 更新前一交易日数据。
  2. 缺失值处理:对于未披露对应财务指标或上市时间较短的股票,因子值可能返回 NaN,在策略构建时需进行去极值与缺失值填充处理。