Tushare接口文档:因子列表(factor_list)

简介: `factor_list`是Tushare提供的因子数据目录接口,用于获取Tushare自主研发的全部量化因子列表,包括因子名称、因子分类和算法逻辑等元数据信息。该接口是使用Tushare因子值(`factor_value`)的前置查询工具,帮助用户了解有哪些因子可用以及每个因子的具体含义。
  • 功能描述:提取Tushare自主研发生产的因子列表,包括因子名、因子分类和计算逻辑等信息
  • 返回限量:单次可以提取所有列表
  • 接口权限:独立权限,需单独开通
  • 说明
    1. 虽然一次性可获取所有数据,但该列表数据也会随着时间的推移进行更新;
    2. 目前所有因子均针对股票类型资产;
    3. 本文仅简单介绍如何使用因子列表接口,至于各因子的具体含义、算法等,将在后续文章进行详细介绍;

输入参数:

名称 类型 必选 描述
factor_name str N 因子名称
asset_type str N 资产类别:STK股票,IDX指数,ETF,CB可转债 【当前只提供STK股票】
factor_type str N 因子类别,详见下方明细

输出参数:

名称 类型 默认显示 描述
factor_name str Y 因子名称
asset_type str Y 证券类型:STK股票,IDX指数,ETF,CB可转债 【当前只提供STK股票】
factor_type str Y 因子分类
factor_desc str Y 因子描述及算法逻辑

示例:

示例1:获取所有因子列表

不传递任何参数直接调用接口可获取所有因子列表,一次调用可获取所有数据。

虽然一次性可获取所有数据,但该列表数据也会随着时间的推移进行更新。

import tushare as ts
import matplotlib.pyplot as plt
# 设置中文字体
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False
pro = ts.pro_api()

df = pro.factor_list()
print('当前因子总数:', len(df))

# 获取全部因子列表
df_all = pro.factor_list()

# 按因子类型统计数量
type_counts = df_all['factor_type'].value_counts()
print("各因子类别数量统计:")
print(type_counts)

# 绘制柱状图
plt.figure(figsize=(12, 6))
type_counts.plot(kind='bar')
plt.xlabel('因子类别')
plt.ylabel('因子数量')
plt.title('Tushare 因子库各类别因子数量分布')
plt.xticks(rotation=45)
plt.tight_layout()
plt.show()

输出结果:

当前因子总数: 212
各因子类别数量统计:
factor_type
Quality      59
Alpha101     36
Liquidity    36
Risk         26
Momentum     21
Growth       15
Value        11
Reversal      5
Size          3
Name: count, dtype: int64

image.png

示例2:获取特定类型的因子列表

通过传递factor_type可指定获取因子列表的类型,fields参数可指定返回的字段。

df = pro.factor_list(factor_type='Size', fields='factor_name,factor_type,factor_desc')
df

输出结果:

  factor_name    factor_type    factor_desc
0    float_size    Size    流通市值因子\n\n计算流通市值的负对数,用于衡量公司可交易部分的规模。\n\n数学表达式:...
1    nl_size    Size    市值非线性因子\n\n对市值进行非线性中性化处理,通过截面回归去除线性市值成分。\n\n数学...
2    size    Size    总市值因子\n\n计算总市值的负对数,用于衡量公司规模。\n\n数学表达式:\nSize =...

示例3:获取特定因子的信息

通过传递factor_name参数可获取特定的因子信息。factor_desc介绍了因子描述及因子的计算公式。

df = pro.factor_list(factor_name='alpha101_1')
print(df['factor_desc'][0])

输出结果:

基于负收益时段波动放大的极值位置排名因子。

数学表达式:
Alpha = Rank(Ts_ArgMax(SignedPower(IF(Returns < 0, StdDev(Returns, 20), Close), 2), 5)) - 0.5

说明:

说明1:Tushare因子类型

分类名 中文名称 因子数量 说明
Alpha101 Alpha101 量价因子 36 基于 WorldQuant 公式计算的量价 Alpha 因子
Growth 成长因子 15 衡量企业盈利和资产增长能力
Liquidity 流动性因子 36 衡量股票交易活跃度和流动性特征
Momentum 动量因子 21 衡量价格趋势延续性
Quality 质量因子 59 衡量企业财务质量和经营效率
Reversal 反转因子 5 捕捉短期价格反转信号
Risk 风险因子 26 衡量股票风险特征(波动率、Beta 等)
Size 规模因子 3 衡量市值规模大小
Value 价值因子 11 衡量股票估值水平
合计 212

说明2:本文说明

factor_list是Tushare提供的因子数据目录接口,用于获取Tushare自主研发的全部量化因子列表,包括因子名称、因子分类和算法逻辑等元数据信息。该接口是使用Tushare因子值(factor_value)的前置查询工具,帮助用户了解有哪些因子可用以及每个因子的具体含义。

相关文章
人工智能 缓存 前端开发
12432 70
人工智能 自然语言处理 安全
1316 0
Web App开发 人工智能 API
1537 2
人工智能 JavaScript 开发工具
4907 0
人工智能 Java BI
1631 1
人工智能 JavaScript 测试技术
2572 2
开发工具 Swift git
2000 6
人工智能 JavaScript 测试技术
1239 4