skills/windpy-sdk/references/sectorid-catalog.md
wangyitong a65adcc2e5 Initial commit: merged, deduplicated, and vetted skill collection
Sources: extracted from two upstream archives (skill-repo, skills-main),
merged with the following policy:

- 15 broken symlinks (pointing to /Users/jameslee/.cc-switch/skills or
  ../../.agents/skills on a foreign machine) discarded
- 3 real name collisions with identical content (ai-pair, ifind-http-api,
  zhipu-websearch) kept as one copy
- Functional overlaps deduped keeping the strongest variant:
  - docx family: kept docx (official, full toolchain) + docx-cn
    (GB/T 9704 Chinese official-document constants),
    dropped docx_writer (no scripts, name collided with docx)
  - humanizer family: kept humanizer-zh (6 zh reference docs),
    dropped humanizer (en, redundant for CN workflow)
- Skills that only ran in a foreign environment removed:
  ablemind-ops, app-publish, hlb-design-system, openclaw-adj-skill,
  claude-driver
- alphapai excluded from this public repo because its SKILL.md hard-coded
  live credentials

Result: 25 skills, 572 files, ~7.5 MB.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-13 14:47:12 +08:00

15 KiB
Raw Permalink Blame History

WindPy 板块 SectorID 参考

板块数据用于 w.wset()w.wses() 函数。

常用板块 SectorID

板块名称 SectorID 说明
全部A股 a001010100000000 沪深两市全部A股
上证A股 a001010200000000 上海证券交易所A股
深证A股 a001010300000000 深圳证券交易所A股
创业板 1000006528000000 创业板股票
科创板 a001010l00000000 科创板股票
北交所 a001010m00000000 北交所股票

主要指数 SectorID

指数名称 SectorID 成分数 说明
上证50 1000000087000000 50 沪市大蓝筹
上证180 1000000096000000 180 沪市大中盘
沪深300 1000000098000000 300 跨市场大盘
中证500 1000000099000000 500 中盘成长
中证1000 1000000088000000 1000 小盘成长
深证成指 1000000104000000 500 深市大盘
深证100 1000000105000000 100 深市蓝筹
创业板指 1000000465000000 100 创业板核心
科创50 1000000686000000 50 科创板龙头

申万一级行业 SectorID (31个)

行业名称 SectorID
农林牧渔 a39901010g000000
基础化工 a39901020g000000
钢铁 a39901030g000000
有色金属 a39901040g000000
建筑材料 a39901050g000000
建筑装饰 a39901060g000000
机械设备 a39901070g000000
电子 a39901080g000000
计算机 a39901090g000000
家用电器 a39901100g000000
纺织服装 a39901110g000000
轻工制造 a39901120g000000
食品饮料 a39901130g000000
医药生物 a39901150g000000
公用事业 a39901160g000000
交通运输 a39901170g000000
房地产 a39901180g000000
商贸零售 a39901190g000000
社会服务 a39901200g000000
银行 a39901210g000000
非银金融 a39901220g000000
综合 a39901230g000000
建筑材料(2021版) a39901240g000000
建筑装饰(2021版) a39901250g000000
电力设备 a39901260g000000
机械设备(2021版) a39901270g000000
国防军工 a39901280g000000
汽车 a39901290g000000
传媒 a39901300g000000
通信 a39901310g000000
煤炭 a39901320g000000
石油石化 a39901330g000000
环保 a39901340g000000
美容护理 a39901350g000000

格式说明: 申万行业代码格式为 a39901XXXg000000,其中 XXX 为行业编号。

申万行业正确使用方法(两步查询)

申万行业需要通过两步查询获取成分股:

第一步:获取申万行业指数代码

result = w.wset("sectorconstituent", "date=20260209;sectorid=a39901011g000000")
# 返回申万行业的指数代码,如 801010.SI (农林牧渔)

第二步:使用指数代码获取成分股

result = w.wset("sectorconstituent", "date=20260209;windcode=801010.SI")
# 返回该行业的所有成分股

常用申万行业指数代码

行业名称 SectorID 指数代码 成分数
农林牧渔 a39901010g000000 801010.SI ~100
钢铁 a39901030g000000 801030.SI ~400
有色金属 a39901040g000000 801040.SI ~40
建筑材料 a39901050g000000 801050.SI ~130
电子 a39901080g000000 801080.SI ~470
家用电器 a39901100g000000 801110.SI ~90
食品饮料 a39901130g000000 801120.SI ~120
医药生物 a39901150g000000 801150.SI ~470
公用事业 a39901160g000000 801160.SI ~130
房地产 a39901180g000000 801180.SI ~100
银行 a39901210g000000 801210.SI ~80

说明: 申万一级行业对应的指数代码格式为 801XXX.SI,其中 XXX 为行业编号。使用 windcode=801XXX.SI 可直接获取该行业成分股。

申万二级行业

申万二级行业指数代码格式为 801XXXX.SI5位数字在一级行业代码后增加一位

二级行业示例 指数代码 成分数 所属一级
农产品加工II 801012.SI ~20 农林牧渔
饲料II 801014.SI ~15 农林牧渔
渔业II 801015.SI ~5 农林牧渔
林业II 801011.SI 0 农林牧渔

获取方法:

# 直接查询二级行业成分股
result = w.wset("sectorconstituent", "date=20260209;windcode=801012.SI")

说明: 申万二级行业共有约200+个,可通过申万一级行业下的细分获取完整列表。

申万三级行业

申万三级行业 SectorIDa39901011i000000

三级行业示例 指数代码 成分数 所属分类
种子 850111.SI ~8 农林牧渔 > 种植业
其他种植业 850113.SI ~5 农林牧渔 > 种植业
水产养殖 850122.SI ~10 农林牧渔 > 渔业
食品及饲料添加剂 850135.SI ~15 基础化工
有机硅 850136.SI ~20 基础化工
畜禽饲料 850142.SI ~15 农林牧渔 > 饲料
果蔬加工 850151.SI ~8 农林牧渔 > 农产品加工
粮油加工 850152.SI ~10 农林牧渔 > 农产品加工
生猪养殖 850172.SI ~15 农林牧渔 > 养殖业

获取方法:

# 第一步:获取所有申万三级行业指数代码
result = w.wset("sectorconstituent", "date=20260209;sectorid=a39901011i000000")
# 返回 259 个三级行业指数代码,格式为 85XXXX.SI

# 第二步:获取某个三级行业的成分股
result = w.wset("sectorconstituent", "date=20260209;windcode=850111.SI")
# 返回该三级行业的所有成分股

说明:

  • 申万三级行业共有 259
  • 指数代码格式:85XXXX.SI6位数字
  • 通过 a39901011i000000 可获取完整的三级行业列表

申万行业代码体系总结

层级 SectorID 指数代码格式 数量 用途
一级 a39901011g000000 801XXX.SI 31 宏观行业分类
二级 801XXXX.SI 801XXXX.SI 200+ 细分行业
三级 a39901011i000000 85XXXX.SI 259 精细分类

使用建议:

  • 一级用于宏观分析
  • 二级用于行业比较
  • 三级用于精细化选股

其他行业板块 (已验证)

以下行业板块代码使用 a00101XX00000000 格式,可直接获取成分股(无需额外权限):

行业名称 SectorID 成分数 使用示例
钢铁 a001010300000000 ~2800 w.wset("sectorconstituent", "date=20260108;sectorid=a001010300000000")
有色金属 a001010400000000 ~900 w.wset("sectorconstituent", "date=20260108;sectorid=a001010400000000")

注意: 这些是 Wind 内置的行业分类,与申万行业不同。申万行业需要通过两步查询(先获取指数代码再查询成分股),而这些可以直接查询。


中信一级行业 SectorID (30个)

正确使用方法(两步查询)

中信一级行业需要通过两步查询获取成分股:

第一步:获取中信行业指数代码

result = w.wset("sectorconstituent", "date=20260209;sectorid=a39901012e000000")
# 返回中信行业指数代码列表,如 CI005001.WI (石油石化)

第二步:使用指数代码获取成分股

result = w.wset("sectorconstituent", "date=20260209;windcode=CI005001.WI")
# 返回该行业的所有成分股

中信一级行业 SectorID 和指数代码

行业名称 SectorID 指数代码 成分数
石油石化 a39901012e000000 CI005001.WI ~50
煤炭 a39901012e000000 CI005002.WI ~30
有色金属 a39901012e000000 CI005003.WI ~70
电力及公用事业 a39901012e000000 CI005004.WI ~130
钢铁 a39901012e000000 CI005005.WI ~40
基础化工 a39901012e000000 CI005006.WI ~300
建筑 a39901012e000000 CI005007.WI ~80
建材 a39901012e000000 CI005008.WI ~80
轻工制造 a39901012e000000 CI005009.WI ~130
机械 a39901012e000000 CI005010.WI ~280
电力设备 a39901012e000000 CI005011.WI ~200
国防军工 a39901012e000000 CI005012.WI ~90
汽车 a39901012e000000 CI005013.WI ~180
商贸零售 a39901012e000000 CI005014.WI ~160
消费者服务 a39901012e000000 CI005015.WI ~70
家电 a39901012e000000 CI005016.WI ~50
纺织服装 a39901012e000000 CI005017.WI ~90
医药 a39901012e000000 CI005018.WI ~350
食品饮料 a39901012e000000 CI005019.WI ~110
农林牧渔 a39901012e000000 CI005020.WI ~90
银行 a39901012e000000 CI005021.WI ~40
非银行金融 a39901012e000000 CI005022.WI ~60
房地产 a39901012e000000 CI005023.WI ~120
交通运输 a39901012e000000 CI005024.WI ~110
电子 a39901012e000000 CI005025.WI ~350
通信 a39901012e000000 CI005026.WI ~120
计算机 a39901012e000000 CI005027.WI ~280
传媒 a39901012e000000 CI005028.WI ~130
综合 a39901012e000000 CI005029.WI ~20
综合金融 a39901012e000000 CI005030.WI ~10

说明:

  • SectorID: a39901012e000000 返回所有30个中信一级行业指数代码
  • 指数代码格式: CI005XXX.WI,其中 XXX 为 001-030
  • 所有30个行业共用一个 SectorID通过返回的不同指数代码区分

概念板块 SectorID

板块名称 SectorID 成分数 验证状态
新能源车 1000056679000000 ~400 已验证
芯片 1000056680000000 ~300 已验证
5G 1000056681000000 ~200 已验证
人工智能 1000056682000000 ~150 已验证
光伏 1000056684000000 ~150 已验证
锂电池 1000056685000000 ~100 已验证

格式说明: 概念板块代码格式为 10000566XX000000

待探索概念: 半导体、医药、白酒、银行、券商、保险等概念板块代码格式需要进一步验证。


国联民生多策略指数

国联民生多策略指数系列,代码格式为 CI168XXX.WI

指数名称 指数代码 说明
GLMS情绪指标 CI168666.WI 市场情绪指标
GLMS景气 CI168001.WI 景气度指数

使用方法:

# 获取指数点位和名称
result = w.wss("CI168666.WI", "sec_name,close", "")
# 获取实时行情
result = w.wsq("CI168666.WI", "rt_last,rt_pct_chg", usedf=True)

说明: 国联民生多策略指数是通过 w.wssw.wsq 获取的,不需要通过 w.wset 查询成分股。


全球主要股票指数

美股指数

指数名称 指数代码 说明
标普500 SPX.GI 美国大盘指数
纳斯达克 IXIC.GI 美国科技股指数
道琼斯 DJI.GI 美国蓝筹股指数
VIX VIX.GI 波动率指数

亚太指数

指数名称 指数代码 说明
恒生指数 HSI.HI 香港大盘指数
日经225 N225.GI 日本大盘指数
韩国KOSPI KS11.GI 韩国综合指数
澳洲ASX200 AXJO.GI 澳大利亚指数
印度Sensex SENSEX.GI 印度孟买指数

欧洲指数

指数名称 指数代码 说明
英国富时100 FTSE.GI 英国大盘指数
德国DAX GDAXI.GI 德国蓝筹股指数
法国CAC40 FCHI.GI 法国大盘指数
欧洲Stoxx50 SX5E.GI 欧元区蓝筹指数

使用方法:

# 获取全球指数实时行情
result = w.wsq("SPX.GI,IXIC.GI,HSI.HI,N225.GI", "rt_last,rt_pct_chg", usedf=True)

# 获取历史数据
result = w.wsd("SPX.GI", "close", "-30D", "", "", usedf=True)

说明: 全球指数代码后缀说明:

  • .GI - Global Index全球指数
  • .HI - Hong Kong Index香港指数

使用示例

from WindPy import w
w.start()

# 获取全部A股成分股列表
data = w.wset("sectorconstituent", "date=20260108;sectorid=a001010100000000")
# 返回: date, wind_code, sec_name
stocks = data.Data[1]  # wind_code 列表

# 获取沪深300成分股
err, df = w.wset("sectorconstituent", 
    "date=20260108;sectorid=100000009800000000", usedf=True)

# 获取板块历史序列数据
err, df = w.wses("1000000098000000", "sec_close_avg",
    "2024-01-01", "2024-06-30", "", usedf=True)

# 多板块截面数据对比
err, df = w.wsee("a001010200000000,a001010300000000",
    "sec_close_avg,sec_pct_chg_avg,sec_pe_ttm_median",
    "tradeDate=20260108", usedf=True)

# 获取申万行业成分股
err, df = w.wset("sectorconstituent",
    "date=20260108;sectorid=a39901130g000000", usedf=True)  # 食品饮料

w.stop()

获取板块成分股的函数

def get_sector_constituents(sectorid, date=None):
    """
    获取板块成分股列表
    
    Parameters:
    -----------
    sectorid : str
        板块代码,如 '1000000098000000' (沪深300)
    date : str, optional
        日期,格式 '20260108',默认当前日期
    
    Returns:
    --------
    list : wind_code 列表
    """
    if date is None:
        from datetime import datetime
        date = datetime.now().strftime('%Y%m%d')
    
    data = w.wset("sectorconstituent", f"date={date};sectorid={sectorid}")
    if data.ErrorCode == 0 and len(data.Data) > 1:
        return data.Data[1]  # wind_code 列表
    return []

# 使用示例
hs300 = get_sector_constituents('1000000098000000')
food_beverage = get_sector_constituents('a39901130g000000')  # 食品饮料

注意事项

  1. 日期格式: wset 使用 date=YYYYMMDDwss 使用 tradeDate=YYYYMMDD
  2. 成分股变化: 指数成分股定期调整,历史数据需指定日期
  3. 申万行业: 每年会有行业分类调整2021年后使用申万2021版分类
  4. 数据权限: 部分板块(如科创板、北交所)需要相应权限

已验证的核心板块汇总

类别 数量 代表代码
市场板块 6 全部A股、上证、深证、创业板、科创板、北交所
主要指数 9 沪深300、中证500、上证50、中证1000等
申万行业 31 食品饮料、医药、银行、电子等
概念板块 6 新能源车、芯片、5G、人工智能、光伏、锂电池
其他行业 2 有色金属、钢铁

待补充

以下 SectorID 需要进一步探索验证:

类别 待探索内容 预计代码格式
申万二级/三级行业 完整行业分类体系 a39901XXXX000000
中信行业 30个一级行业完整权限配置 c00101XX00000000
概念板块 半导体、医药、白酒、券商、储能等 10000566XX000000
地域板块 北京、上海、广东、浙江、江苏等 a0010101XX000000

注意: 部分板块代码需要特定数据权限才能获取成分股数据。建议在使用前先用 w.wset("sectorconstituent", "date=YYYYMMDD;sectorid=xxx") 测试验证。