dsh-invest-research:DSH 上的 A 股与基金多智能体研究工作流

前言

在 DeepSeek Harness(DSH)里做权益或基金研究,常见做法是自己在会话里拼提示词、手工拉公开数据、再整理成报告。数据口径不统一、角色之间容易「串味」、落盘时还可能把个人持仓写进文件。社区插件 lobster-liu/dsh-invest-research 把个股与基金两条流水线做成同一包内的两个 skill,共用脱敏门禁与环境约定,面向只读公开数据的研究参考场景(不构成投资建议,不接入交易通道)。下面介绍它是什么、能做什么,以及如何安装与自检。

这是什么

dsh-invest-research 是面向 DeepSeek Harness 的 skill 插件(工作流类),维护者为 lobster-liu。同一安装包内提供两个 skill:

skill 用途 角色
stock-research 单只 A 股行情/估值/周期/政策分析 6 角色(协调员/数据员/政策员/估值周期员/风控员/审计员),双盲隔离 + 三轮审计
fund-research 基金穿透式研究(主动/指数/ETF/联接/FOF/QDII/债基) 7 角色(协调员 + 基金画像穿透/宏观政策/行业趋势/公司估值/绩效归因/反方审查),五阶段流程

两条链路最终都产出每个数字带【来源|日期|口径|类型】、落盘前过 PII 脱敏的研究报告。包当前版本为 0.3.1(见 package.json);v0.3.0 起包名由 dsh-stock-research 改为 dsh-invest-research,旧 GitHub 地址会重定向,已装旧版需移除后按新名重装。

核心功能

个股:stock-research

  • 多角色流水线:6 份角色提示词(assets/skills/stock-research/roles/*.md),流程总纲在 assets/skills/stock-research/SKILL.md,含环境解析(EQUITY_PY / EQUITY_SECRET_SCANNER / $RUN / $ARCHIVE)。
  • 取数:fetch_data.py 走东财双通道行情/历史,并做分位、最大回撤等衍生;空数据时退出码为 1。
  • 可选基本面:fetch_fundamentals.py(v0.2.0)在安装 akshare 时可拉 ROE、每股净资产、负债率、现金流及 PE·PB 近一年分位;未装 akshare 时退出码 1,不阻断主流程。
  • 政策核对:README 建议搭配 dsh-web-search-pro(免费 anonymous 源),本插件以 read.fetch 为主设计。

基金:fund-research

  • 五阶段流程,报告结构为 10 章、5 个结论标签、三种情景、跟踪清单与条件式行动(见 assets/skills/fund-research/SKILL.md,v0.3.0)。
  • 7 个角色完整提示词(assets/skills/fund-research/roles/*.md),统一 7 项提交格式。
  • fetch_fund.py(v0.3.0)覆盖基金身份/净值/多期持仓/行业与债券配置/规模份额/持有人/资产配置/经理/基准对比/重仓股快照等,多通道降级;空数据退出码 1。
  • test_fund_tools.py 提供 30 条离线断言(内联 fixture + 网络桩,零网络)。

共用:脱敏与合规表述

  • tools/sanitize_check.py:落盘前 PII 门禁,5 类泄漏规则 + 5 层公开信息白名单(含财报科目、政策条款、金融术语、基金公开披露、否定声明);混合陷阱必拦。退出码非 0 时禁止写入,无绕过开关。
  • tools/test_gate.py:27 场景行为自检(真泄漏必拦、公开条款必放、基金披露必放、陷阱必拦)。
  • 报告禁止出现个人持仓/成本/资金量;政策原文中的公开条款数字白名单放行且不改写。产物默认留在用户工作区,是否归档进 Vault/Obsidian 由用户显式配置 $ARCHIVE。

README 声明:仅供研究参考,不构成投资建议;全程只读公开数据。

安装与启用

插件以 DSH 的 profile 维度安装。官方 README 给出的命令如下(占位符需换成你的 profile 名或本地路径):

# 从 GitHub(发布后)
dsh plugin --profile <profile-name> add github:<your-user>/dsh-invest-research

# 或从本地目录 / zip 解包后
dsh plugin --profile <profile-name> add path/to/dsh-invest-research

环境要求(摘自 README):

  • DSH ≥ 0.2.0-rc(skill 注册走 Host skills 服务;无该服务时插件加载为 no-op,不会报错)。
  • Python 3.10+(DSH 自带 runtime 可直接用;取数脚本零第三方依赖,akshare 可选)。
  • Node:^22.19 || ≥24(见 package.json 的 engines)。
  • 网络需可达 push2.eastmoney.com / push2his.eastmoney.com(行情);基金取数需可达 fund.eastmoney.com。

可选环境变量:

变量 作用
EQUITY_PY 指定 Python 解释器(默认自动解析 DSH 自带 runtime)
EQUITY_SECRET_SCANNER 外接凭据扫描器路径;未设则明示 skipped,内置 PII 规则仍生效
EQUITY_WORK run 产物根目录(默认 ./equity-runs/)

安装后重启 DSH,在新会话中用自然语言触发即可(见下一节)。

典型用法

重启 DSH 后,在新会话中说:

  • 个股:分析 600048 → 触发 stock-research。
  • 基金:分析基金 025490、穿透这只基金的持仓 → 触发 fund-research。

安装后可在插件目录内做冒烟与离线自检(需已进入插件解包/克隆后的根目录,且 Python 环境可用):

# 1) 个股取数冒烟(需可访问 push2.eastmoney.com;失败多为网络环境而非代码问题)
python assets/skills/stock-research/tools/fetch_data.py --code 600000 --out /tmp/sr/data.json
# 2) 基金取数冒烟(需可访问 fund.eastmoney.com)
python assets/skills/fund-research/tools/fetch_fund.py --code 025490 --out /tmp/fr/fund.json --peer-stocks 10
# 3) 基金取数器离线自测(30 条断言,不依赖网络,期望 exit 0)
python assets/skills/fund-research/tools/test_fund_tools.py
# 4) 脱敏门禁行为自检(27 场景,期望 exit 0)
python assets/skills/stock-research/tools/test_gate.py

说明:第 4 条路径在 README 的 Quick check 中写的是 assets/skills/stock-research/tools/test_gate.py;仓库表 What's inside 中门禁测试文件为 tools/test_gate.py,若自检失败可先核对插件包内实际路径。

Windows 用户还可使用 tools/run_pipeline.ps1(ASCII-only,PowerShell 5.1 兼容)作引导。可选 akshare 可通过 install_akshare.ps1 / requirements.txt 在沙箱内离线安装(README 说明用于绕开 pip 在部分 Windows 环境下的权限与 schannel 问题)。

适用场景与注意

适合谁: 已在 DSH 中做 A 股或公募基金穿透研究、希望用固定多角色流程与带出处标注的报告模板、且只依赖公开数据的开发者或研究员。

使用前请知悉:

  1. 插件在当前 dsh 进程权限下运行;安装前应自行查看 GitHub 源码 与 MIT 许可证,确认网络访问与数据处理方式符合你的环境策略。
  2. 取数依赖东财等公开接口,网络不可达时冒烟会失败,README 明确这多为网络环境而非代码问题。
  3. 社区目录 skillhub.cn 插件页 与 GitHub 为独立信息源;DSH 生态强调「一切皆插件」,该目录站与 DeepSeek / 幻方无官方从属关系,不要当作官方应用商店。

结尾

dsh-invest-research 把 A 股六角色与基金七角色的研究工作流、东财多通道取数、来源标注报告和落盘前 PII 门禁收进一个 DSH 插件包,适合在 Harness 里用对话触发、本地留痕的研究流程。进一步了解可访问社区目录页 lobster-liu/dsh-invest-research 与仓库 github.com/lobster-liu/dsh-invest-research。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜