skills/windpy-sdk/references/wset-tables.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

3.7 KiB
Raw Blame History

w.wset() 报表名与参数参考

状态:占位文档,待补充

补充方法Wind 终端 → 代码生成器 → WSET → 左侧列出所有可用报表名 每个报表选中后,右侧显示可用 options 参数和返回列


已确认可用的报表

sectorconstituent — 板块成分股

err, df = w.wset("sectorconstituent",
    "date=2024-06-28;sectorid=a001010100000000", usedf=True)
参数 必选 说明
date 日期 YYYY-MM-DD
sectorid 板块ID见 sector-ids.md

返回列:date, wind_code, sec_name


indexconstituent — 指数成分股

err, df = w.wset("indexconstituent",
    "date=2024-06-28;windcode=000300.SH", usedf=True)
参数 必选 说明
date 日期
windcode 指数代码(如 000300.SH

返回列:date, wind_code, sec_name, i_weight(待确认权重列名)


abnormalactivitiesranking — 龙虎榜

err, df = w.wset("abnormalactivitiesranking",
    "startdate=2024-06-28;enddate=2024-06-28;"
    "field=trade_dt,wind_code,sec_name,close,pct_chg,netbuyamt",
    usedf=True)
参数 必选 说明
startdate 起始日期
enddate 截止日期
field 需要的字段(逗号分隔)

返回列:trade_dt, wind_code, sec_name, close, pct_chg, netbuyamt, ...(待确认完整列表)


待补充的报表(从代码生成器获取)

以下报表名来自 WindPy.md 文档提及,需逐个在终端验证参数和返回列

dividendproposal — 分红送转方案

# TODO: 在终端验证
err, df = w.wset("dividendproposal", "year=2024", usedf=True)

待记录options 参数、返回列


tradingsuspend — 停牌股票

# TODO: 在终端验证
err, df = w.wset("tradingsuspend",
    "startdate=2024-06-28;enddate=2024-06-28", usedf=True)

待记录options 参数、返回列


marginassetsandliabilities — 融资融券标的

# TODO: 在终端验证
err, df = w.wset("marginassetsandliabilities",
    "date=2024-06-28;...", usedf=True)

待记录options 参数、返回列


etfconstituent — ETF 申赎清单

# TODO: 在终端验证
err, df = w.wset("etfconstituent",
    "date=2024-06-28;windcode=510300.SH", usedf=True)

待记录options 参数、返回列


sharefloat — 限售解禁

# TODO: 在终端验证
err, df = w.wset("sharefloat", "startdate=2024-06-28;enddate=2024-07-28", usedf=True)

待记录options 参数、返回列


corpaction — 公司行为事件

# TODO: 在终端验证

待记录:全部内容


验证脚本

在 Wind 终端运行以下脚本,逐个验证并记录返回结果:

from WindPy import w
w.start()

tables_to_test = [
    ("sectorconstituent", "date=2024-06-28;sectorid=a001010100000000"),
    ("indexconstituent", "date=2024-06-28;windcode=000300.SH"),
    ("abnormalactivitiesranking", "startdate=2024-06-28;enddate=2024-06-28"),
    ("dividendproposal", "year=2024"),
    ("tradingsuspend", "startdate=2024-06-28;enddate=2024-06-28"),
    ("etfconstituent", "date=2024-06-28;windcode=510300.SH"),
    # 添加更多...
]

for table, opts in tables_to_test:
    print(f"\n{'='*60}")
    print(f"报表: {table}")
    print(f"参数: {opts}")
    try:
        err, df = w.wset(table, opts, usedf=True)
        if err == 0:
            print(f"返回列: {df.columns.tolist()}")
            print(f"行数: {len(df)}")
            print(df.head(3))
        else:
            print(f"错误: {err}")
    except Exception as e:
        print(f"异常: {e}")