前言¶
在 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 股或公募基金穿透研究、希望用固定多角色流程与带出处标注的报告模板、且只依赖公开数据的开发者或研究员。
使用前请知悉:
- 插件在当前 dsh 进程权限下运行;安装前应自行查看 GitHub 源码 与 MIT 许可证,确认网络访问与数据处理方式符合你的环境策略。
- 取数依赖东财等公开接口,网络不可达时冒烟会失败,README 明确这多为网络环境而非代码问题。
- 社区目录 skillhub.cn 插件页 与 GitHub 为独立信息源;DSH 生态强调「一切皆插件」,该目录站与 DeepSeek / 幻方无官方从属关系,不要当作官方应用商店。
结尾¶
dsh-invest-research 把 A 股六角色与基金七角色的研究工作流、东财多通道取数、来源标注报告和落盘前 PII 门禁收进一个 DSH 插件包,适合在 Harness 里用对话触发、本地留痕的研究流程。进一步了解可访问社区目录页 lobster-liu/dsh-invest-research 与仓库 github.com/lobster-liu/dsh-invest-research。