Shortcuts

行业分类#

行业以 order_book_id(<分类代码>.<分类体系>,如 480000.SW、10.GICS)命名,规则与证券相同; source 是分类体系(SW、GICS……),level 是层级。三个函数都按 as_of 回答”那一天的事实”, 历史股票池要让行业归属、成分与权重使用同一个 as_of。全部行业代码见 行业分类代码表。

函数 / 类

解决的问题

get_instrument_industry()

查询证券在指定日期属于哪些行业

get_industry_constituents()

反向查询某行业在指定日期包含哪些证券

get_industry_weights()

查询某行业成分的权重(带 methodology)

get_instrument_industry — 查询证券在指定日期属于哪些行业#

libfinance.get_instrument_industry(order_book_ids, source=None, level=None, as_of=None)[源代码]#

查询证券在指定日期所属的行业。

参数
  • order_book_ids – 证券代码列表(单个代码也可以),代码自己确定市场

  • source – 分类体系,如 "SW"(申万)、"GICS";省略则返回全部分类体系

  • level – 分类层级(申万 1、2、3);省略则返回全部层级

  • as_of – 那一天的事实;省略则取数据已确认的最新日期

返回

pandas.DataFrame,包含 order_book_id、related_order_book_id(行业代码,如 480000.SW)、 source、market 和 level。

示例

1. 申万一级行业

print(lf.get_instrument_industry(["000001.XSHE", "600000.XSHG"], source="SW", level=1, as_of="2024-06-28"))
输出#
  order_book_id related_order_book_id source market  level
0   000001.XSHE             480000.SW     SW     CN      1
1   600000.XSHG             480000.SW     SW     CN      1
show(lf::get_instrument_industry({"000001.XSHE", "600000.XSHG"}, "SW", 1, "2024-06-28"), 0);
输出#
order_book_id  related_order_book_id  source  market  level
000001.XSHE    480000.SW              SW      CN      1
600000.XSHG    480000.SW              SW      CN      1
[2 rows x 5 columns]

2. 省略 source 与 level:全部分类体系、全部层级

print(lf.get_instrument_industry("600000.XSHG", as_of="2024-06-28"))
输出#
  order_book_id related_order_book_id source market  level
0   600000.XSHG             480000.SW     SW     CN      1
1   600000.XSHG             480300.SW     SW     CN      2
2   600000.XSHG             480301.SW     SW     CN      3
show(lf::get_instrument_industry("600000.XSHG", std::nullopt, std::nullopt, "2024-06-28"), 0);
输出#
order_book_id  related_order_book_id  source  market  level
600000.XSHG    480000.SW              SW      CN      1
600000.XSHG    480300.SW              SW      CN      2
600000.XSHG    480301.SW              SW      CN      3
[3 rows x 5 columns]

输出由 docs/_shared/update_examples.py 运行示例脚本生成:数据版本 sha256:6feda8ca,2026-10-09。 下载示例脚本: 08_industry.cpp · 08_industry.py

结果解读:related_order_book_id 是行业代码,可以直接传给 get_industry_constituents(); 第二个示例省略 source 与 level,返回全部分类体系、全部层级。

get_industry_constituents — 反向查询某行业包含哪些证券#

libfinance.get_industry_constituents(order_book_id, as_of=None)[源代码]#

获取某个行业在指定日期的成分证券。

参数
  • order_book_id – 行业代码,<分类代码>.<分类体系>,如 "480000.SW"(申万银行)、"10.GICS"

  • as_of – 那一天的事实;省略则取数据已确认的最新日期

返回

list[str],成分证券的 order_book_id;该日没有这个行业时为 None。

示例

1. 申万银行业(480000.SW)的成分

members = lf.get_industry_constituents("480000.SW", as_of="2024-06-28")
print(len(members), members[:5])
输出#
42 ['000001.XSHE', '001227.XSHE', '002142.XSHE', '002807.XSHE', '002839.XSHE']
show_list(lf::get_industry_constituents("480000.SW", "2024-06-28"));
输出#
42 ['000001.XSHE', '001227.XSHE', '002142.XSHE', '002807.XSHE', '002839.XSHE']

输出由 docs/_shared/update_examples.py 运行示例脚本生成:数据版本 sha256:6feda8ca,2026-10-09。 下载示例脚本: 08_industry.cpp · 08_industry.py

结果解读:返回成分证券代码的列表;示例打印个数与前 5 个。成员随时间变化,省略 as_of 取已确认的最新日期。

get_industry_weights — 查询某行业成分的权重#

libfinance.get_industry_weights(order_book_id, as_of=None)[源代码]#

获取某个行业在指定日期的成分权重。

每一行都带 methodology:没有供应商权重和明确方法时不生成权重。

参数
  • order_book_id – 行业代码,如 "480000.SW"

  • as_of – 那一天的事实;省略则取数据已确认的最新日期

返回

pandas.DataFrame,包含 order_book_id(成分证券)、weight、methodology、source、effective_from、effective_to。

示例

1. 行业成分的权重与 methodology

print(lf.get_industry_weights("480000.SW", as_of="2024-06-28").head())
输出#
  order_book_id   weight           methodology source effective_from effective_to
0   000001.XSHE  0.02381  derived_equal_weight     SW     2021-12-10         None
1   001227.XSHE  0.02381  derived_equal_weight     SW     2021-12-10         None
2   002142.XSHE  0.02381  derived_equal_weight     SW     2021-12-10         None
3   002807.XSHE  0.02381  derived_equal_weight     SW     2021-12-10         None
4   002839.XSHE  0.02381  derived_equal_weight     SW     2021-12-10         None
show(lf::get_industry_weights("480000.SW", "2024-06-28"));
输出#
order_book_id  weight   methodology           source  effective_from  effective_to
000001.XSHE    0.02381  derived_equal_weight  SW      2021-12-10      NaN
001227.XSHE    0.02381  derived_equal_weight  SW      2021-12-10      NaN
002142.XSHE    0.02381  derived_equal_weight  SW      2021-12-10      NaN
002807.XSHE    0.02381  derived_equal_weight  SW      2021-12-10      NaN
002839.XSHE    0.02381  derived_equal_weight  SW      2021-12-10      NaN
...
[42 rows x 6 columns]

输出由 docs/_shared/update_examples.py 运行示例脚本生成:数据版本 sha256:6feda8ca,2026-10-09。 下载示例脚本: 08_industry.cpp · 08_industry.py

结果解读:每行一个成分证券;methodology 说明权重的来源,没有供应商权重和明确方法时不生成。