科研、数据与金融开源项目

A-Share Five-Dimension Analyst

A 股五维研究 Agent

按技术、估值、基本面、资金流与新闻五个维度标准化分析 A 股的 DSH 研究预设。

项目 README

在 GitHub 中查看

dsh-a-stock-five-dimension · A股五维分析研究员

DeepSeek Harness (DSH) 社区 Agent preset:对单只 A 股按技术面、估值面、基本面、资金面、消息面五维进行标准化分析与结构化评分,遵循《A股五维分析流程》标准作业流程(SOP),输出可审计的个股分析卡片与五维雷达评分。

社区项目——不是 DeepSeek 官方 preset,未获官方背书。见 与 DeepSeek 的关系

免责声明:本插件只做信息的标准化采集与结构化呈现,不构成任何投资建议、买卖推荐或收益承诺

1. 简介

  • preset iddsh-a-stock-five-dimension(目录名,须匹配 [a-z0-9][a-z0-9-]*
  • 显示名称:A股五维分析研究员
  • 定位:对单只 A 股进行严谨的五维标准化分析——信息采集 → 结构化评分 → 可审计五维报告
  • 范围:单只 A 股(主板/创业板/科创板/北交所,含 ST 风险提示分析);数据以免费接口为主
  • 边界:只做信息标准化采集与结构化呈现;不提供买入/卖出建议、目标价、收益承诺

2. 为什么需要这个 preset

通用大模型把"分析个股"做成"凭感觉看多空"。本 SOP 让分析变得可审计:

  • 五维互相验证而非孤岛:技术面(价格行为与情绪)、估值面(贵不贵)、基本面(值不值)、资金面(谁在买/卖)、消息面(发生了什么/可能发生什么),任一维度异常都要回其他维度找解释。
  • 硬性风险 gate 先于一切评分:立案调查/证监会处罚、财务造假嫌疑、*ST 或退市整理期、债务违约、非标审计意见、持续重大经营异常、面值/市值退市——命中任一 → 结论直接"回避",不进入线性加权评分。这解决了"10% 权重维度却能否决总分"的线性加权矛盾。
  • 缺失数据重新归一化而非按 0 分:缺项标"数据不足",权重按已得维度重新归一化,报告显式输出数据完整度/置信度。
  • 纪律写进 persona:同一指标唯一口径(PE 默认 TTM、PB 用最新净资产、主力资金统一"超大单+大单"、财务统一"归母+扣非");每条关键数据标注来源与日期;阈值注明"粗启发值、未经样本校验";模型拒绝"直接推荐买入/卖出"类请求。

3. 工作原理

  1. persona(系统提示词)agent.cordis.yml 通过 @deepseek-ai/dsh-persona 注入研究员身份,内嵌 SOP 工作流(数据准备 → 硬性 gate → 五维 → 加权 → 报告)、强制纪律与边界。
  2. skill(按需加载的方法论)skills/a-stock-five-dimension-analysis/@deepseek-ai/dsh-skill-filesystemcustomSkillDirs 注册;模型用 skill 工具加载对应章节(如 ch03 估值、ch05 资金面)。
  3. 数据层(腾讯财经优先)scripts/fetch_*.py 优先调用腾讯财经(行情快照 / 日线 K 线,无需 Token,纯标准库 tencent.py),未指定时间范围时默认取最近 60 个交易日;资金面/基本面/消息面仍以 AkShare 为主(腾讯财经 A 股个股资金流/基本面/新闻无稳定公开 API,2026-08-21 实测,失败显式"未获取")。scripts/score_five_dim.py 计算 gate 结论、各维得分、归一化权重、综合分与完整度/置信度。JSON 进出,含 as_of、数据源与告警字段。scripts/ 层对 Agent 只读,契约见 SCRIPTS.md

工具目录保留 standard 全套能力,仅替换身份与知识部分,请求前缀缓存保持稳定。

4. 安装

git clone https://github.com/Nzssm1/dsh-a-stock-five-dimension.git \
  "$HOME/.dsh/.agent-presets/dsh-a-stock-five-dimension"

或将本仓库目录以相同 id 名复制到 ${DSH_HOME:-$HOME/.dsh}/.agent-presets/。然后开新会话,在 preset 选择器中选择「A股五维分析研究员」。

要求:DeepSeek Harness 0.1.0-rc.6+。preset 本体(persona + skill + tencent.py + 确定性核心)仅需 Python 3.9+,无需任何 pip 包;可选 aksharepip install akshare)仅在需要采集备用链路(资金面/基本面/消息面)时安装。

5. 使用

  • 分析 600519 → 完整五维报告(五维得分、综合评分、雷达图、gate 结果、多空逻辑、风险提示,关键数值附数据源与日期)。
  • *ST 或存在立案/退市风险的个股 → 结论直接"回避"并列出命中的 gate 项,而非照常加权。
  • 加载章节:skill a-stock-five-dimension-analysis ch03(估值面)等。
  • 模型拒绝"直接推荐买入/卖出"→ 只输出标准化分析 + 风险提示 + 免责声明。

6. 脚本

确定性核心(score_five_dim.py)与采集器(tencent.py + fetch_daily.pyfetch_valuation.pyfetch_fundamentals.pyfetch_capital_flow.pyfetch_news.py)——JSON 进出、腾讯财经优先默认最近 60 个交易日、打印 ak.__version__、检查接口存在性、按交易日缓存、异常告警不静默清洗、失败显式返回"未获取"。完整契约见 SCRIPTS.md

# 证据 JSON → gate 结论 + 各维得分 + 综合分 + 完整度
echo '{"symbol":"600519","name":"贵州茅台","as_of":"2026-08-20","gate":{...},"dimensions":{...}}' \
  | python3 scripts/score_five_dim.py
python3 scripts/fetch_daily.py --code 600519             # 最近 60 个交易日,腾讯财经优先
python3 scripts/fetch_valuation.py --code 600519 --out ./cache/600519-valuation.json

7. 测试

python3 -m pytest tests -m "not network"   # 确定性核心 + 契约测试(离线,无需 akshare)
python3 -m pytest tests -m network         # 可选真实采集冒烟(需网络 + akshare)

8. 目录结构

dsh-a-stock-five-dimension/
├── preset.yml                    # 显示元数据(名称 + 描述)
├── agent.cordis.yml              # Cordis 组合:persona + standard 全套工具 + skill
├── skills/a-stock-five-dimension-analysis/
│   ├── SKILL.md                  # 核心框架 + 章节/主题索引
│   ├── chapters/ch00…ch09.md     # 总览、数据源、技术面、估值面、基本面、
│   │                             # 资金面、消息面、综合评分、数据质量、免责声明
│   ├── glossary.md / patterns.md / cheatsheet.md / report-template.md
├── scripts/                      # 确定性评分核心 + AkShare 优先采集器
├── tests/                        # 离线单元测试(默认)+ 联网冒烟(标记)
├── SCRIPTS.md / README.md / README.zh-CN.md / LICENSE / NOTICE / package.json
└── .github/workflows/test.yml    # CI:离线测试套件

9. 遵循的准则

  • 指标口径:PE 默认 PE-TTMstock_zh_a_spot_em 的"市盈率"是动态 PE,不得当 TTM 用);PB 用最新净资产;主力资金 = 超大单+大单(东财口径);财务 = 归母 + 扣非;技术面前复权,估值用最新收盘价(不复权)+ 最新股本。
  • 北向资金:2024-05-13 起停止披露实时净买入/成交额,2024-08-19 起进一步弱化——只能做趋势与结构参考,不得编造"每日净买入"类精细结论。
  • 所有阈值(评分表分值、涨跌停幅度、结论分级 7.5/6/4.5、完整度分档 85%/60%)均为粗启发值,未经样本校验,引用须注明口径。

10. 与 DeepSeek 的关系

本项目为 Nzssm1 的社区项目:非 DeepSeek 官方 preset,未经 DeepSeek 背书、审核或赞助。组合文件改编自 DeepSeek Harness 随附的 standard preset(MIT)。详见 NOTICE

11. 许可

MIT —— 见 LICENSE。GitHub topic:dsh-plugin(用于社区插件发现)。