Skip to content

Latest commit

 

History

4 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

动态估值法(Dynamic Valuation)

基于梁宇峰《估值的力量》第三章「动态估值确定好价格」的自动化估值引擎:输入 A股/港股/美股公司名字或代码,自动计算公司的合理价值,输出带分步推导、三档情景、强制交叉验证、三市场适配、局限性专章的单文件 HTML 估值报告。

面向普通投资者设计——不要求你会建 DCF 模型、不要求读得懂几十页研报,只问一个问题:"这家公司三年后的盈利,放到今天值多少钱?"


🧭 这是什么 / 给谁用

项 说明
主要平台 WorkBuddy(放入 ~/.workbuddy/skills/ 即可被识别调用)
其他 Agent 兼容。SKILL.md 是标准 Agent Skill 格式,Claude Code / Cline 等支持 SKILL.md 约定的 Agent 均可加载使用;数据获取由 AI 引导或接入 a-stock-data skill,计算由 JSON 参数驱动的生成器脚本完成
适用场景 判断一只股票"贵不贵"、计算合理价、辅助买入/卖出决策
支持市场 A股 / 港股 / 美股(三套适配规则:无风险利率、一致预期源、股东回报口径、特殊规则各不相同)
受众定位 普通投资者——通俗导言解释"为什么 PE 会骗人、DCF 普通人难落地、动态估值法为什么适合你"
方法论本质 "模糊正确"而非精确:把复杂预测压缩成「第 3 年盈利 × 一个合理倍数 ÷ 折现 + 三年分红」,把价格框在一个舒服的区间里(±25% 都算合理估值,单一数字没有意义)

核心公式:

公司的合理价值 = [未来第3年有效盈利 × 动态估值倍数 ÷ (1+贴现率)³] + 未来三年分红(或三年净利×30%)

一句话定位:动态估值法 = 用第 3 年盈利给公司"拍个合理总价",再和当前市值比一比,看是贵了还是便宜了。


✨ 功能特性

  • 8 步完整流程:取数 → 四维评级 → 算倍数/贴现率 → 算合理价值 → 每股换算/判定 → 三档情景 → 强制交叉验证 → 输出 HTML 报告
  • 客观锚点优先评级:增长潜力(行业空间 vs 10年增速)、竞争格局(HHI/CR5)、护城河(5年ROE/毛利率)、确定性(技术/周期/政策三维)全部用客观数字判定,锚点缺失才主观判断并降置信度
  • 三档情景分析:悲观/基准/乐观各升降一档参数,输出三档合理股价 + 上行空间,数学保证「悲观 ≤ 基准 ≤ 乐观」不倒挂
  • 强制交叉验证:7 项校验清单(倍数上限/盈利质量/增速自洽/同业/历史/负债/分红回购),空则阻断输出——报告没做交叉验证就不算做完
  • 内置手动测算器:报告首屏折叠卡片,15 个参数实时改写,浏览器里就能重算并刷新报告正文(31 个联动 id)
  • 85 项回归测试:tests/test_cases.py 覆盖计算/情景/封顶/阻断/占位符全流程
  • 深色模式 + 大厂版式:navy/gold 设计系统、深蓝渐变 Hero、金色荧光笔、噪点纹理、阅读进度条、滚动渐入
  • 三市场适配:A股(中债10Y+分红30%)/ 港股(美港10Y+红利税提示+AH折价)/ 美股(UST10Y+回购替代分红+GAAP口径)自动切换

🎯 触发词

动态估值 / 动态估值法 / 估值 / 贵不贵 / 合理价 / 合理价格 / 低估 / 高估 / target price / [公司名]估值 / [公司名]值多少钱

在 WorkBuddy / 其他 Agent 中说:「用动态估值法 给 宁德时代 估个值」即可触发。


🧮 为什么是动态估值法(通俗导言)

大多数人买股票只看两个东西:股价涨跌、PE 高低。但这俩都容易骗人:

  • ❌ 相对估值(PE/PB)会追涨杀跌:同样的公司,牛市 PE 给 50 倍、熊市给 15 倍。用 PE 判断贵贱,等于"用别人给的价格,反过来证明价格合理"——典型的循环论证。书里用苏宁、诺基亚举例,低 PE 也可能是价值陷阱。
  • ❌ DCF(现金流折现)普通人难落地:要预测几十年自由现金流、还要调一堆假设,参数一变结果天差地别。
  • ✅ 动态估值法只问一个问题——"这家公司三年后的盈利,放到今天值多少钱?" 把复杂预测压缩成「第3年盈利 × 一个合理倍数 ÷ 折现 + 三年分红」。书里说这叫"模糊正确":不求精确数字,只求把价格框在一个舒服的区间里。

⚠️ 适用前提:本方法针对成长期 / 成熟期的"增长型公司"。困境反转、隐蔽资产、纯周期(未平滑)公司不适用。


📋 执行前必须回答的 4 个问题

# 检查项 说明
1 目标公司属于"增长型"? 非困境反转/隐蔽资产/纯周期
2 公司名称或股票代码明确? 必要输入
3 能获取 FY1/FY2/FY3 归母净利润预测? 一致预期或自行预测
4 能获取总股本和当前股价? 必要输入

任一为"否" → 拒答,按拒答规则说明原因(见下)。


🔄 完整估值流程(8 步详解)

Step 1 · 获取数据(T1-T10,A/港/美各有口径)

数据项 说明 口径
T1 当前日期 含月份(用于 FY3 年内插值) 系统
T2 10年期国债收益率 A股中债 / 港股美或港 / 美股 UST 禁止硬编码,实时抓取
T3 公司基本信息 总股本(亿股) / 当前股价(币种) / 当前市值 / 行业 行情接口
T4 过去3-5年实际归母净利润 验证增长趋势,算历史CAGR 财报
T5 一致预期 FY1/FY2/FY3 归母净利润(亿元)⚠️ 默认打9折 券商一致预期
T6 分红/股东回报 A股分红率 / 港股红利税 / 美股回购 年报
T7 5年ROE均值、毛利率均值 护城河客观锚 财报
T8 HHI / CR5 或竞争格局定性 竞争系数锚 行业数据
T9 技术/周期/政策三维风险定性 确定性得分 定性判断
T10 同业PE/PS、自身历史估值带 交叉验证用 行情

⚠️ 券商一致预期打折:默认 9 折(书第3311行:"券商的盈利预测绝大部分是过于乐观的……打个折比较明智")。报告内须备注说明原因;可设 CONSENSUS_DISCOUNT=1.0 关闭。懒于判断时保持 9 折更稳妥。

Step 2 · 四维评级(客观锚点优先,缺失则主观+降置信度)

维度 判定方式 产出
增长潜力 行业空间增长倍数 vs 10年增速,比等级取较小值 → 查基准倍数 基准倍数(7.5~38)
竞争格局 HHI/CR5 客观判定 竞争系数(0.8~1.1)
护城河 5年ROE / 5年毛利率 客观判定 护城河系数(0.6~1.25)
确定性得分 技术颠覆 + 行业周期 + 政策风险(满分4分) 贴现率溢价

Step 3 · 计算动态估值倍数 & 贴现率

动态估值倍数 = 基准倍数 × 竞争格局系数 × 护城河系数(封顶 52.25)
贴现率 = 10年期国债收益率 + (5 - 确定性得分) × 4%

Step 4 · 计算合理价值

FY3现值 = FY3有效盈利 × 动态估值倍数 ÷ (1+贴现率)³
三年分红(或三年净利×30%)= ∑(FY1~3 × 支付率)
合理价值 = FY3现值 + 三年分红

Step 5 · 每股换算 & 判定

合理股价 = 合理价值 ÷ 总股本
X = 当前市值 ÷ 合理价值 − 1  →  查 X 七档

Step 6 · 三档情景分析(v3.2 改为「相对主参数升降一档」)

  • 悲观:增长/竞争/护城河 各降1档、确定性 −1(贴边则维持)
  • 基准:沿用主参数
  • 乐观:增长/竞争/护城河 各升1档、确定性 +1(贴边则维持)
  • 数学保证 悲观 ≤ 基准 ≤ 乐观(旧版写死「高/较好/较深」遇超高成长股会倒挂)
  • 输出三档合理股价 + 上行空间(口径统一 = 合理股价÷当前股价−1,非 X)

Step 7 · 强制交叉验证(不可跳过,空则阻断输出)

7 项校验清单:倍数上限 / 盈利质量匹配 / 增速自洽 / 同业 / 历史 / 负债 / 分红回购。任一项红 → 结论降级或标注"不可靠"。

Step 8 · 输出 HTML 报告

含 §1导言 + 分步推导 + 三档情景 + 交叉验证 + 三市场适配 + 局限性专章 + 免责。


📐 系数表(已钉死,来源:老板笔记 + 书内案例校验)

数值经老板笔记《动态估值法的详细步骤》精确给出,并与书内 A公司案例(中等=19、较差竞争=0.9、一定护城河=0.8)、恩华案例(3999–4003行公式校验)100% 吻合。原书表3-1~3-5 为图片,以此为最终准绳。

基准倍数表(增长潜力,看第4~10年增速,比等级取较小值)

增长潜力 基准倍数 第4~10年复合增长率 增长空间倍数
超高 38 保持25%以上 3倍以上
高 30 20%~25% 2~3倍
中高 24 15%~20% 1.5~2倍
中等 19 10%~15% 1~1.5倍
中低 15 5%~10% 0.5~1倍
低 11 0%~5% 50%以下
零增长 9 几乎零增长 —
小幅负增长 7.5 -5%左右 30%负增长

竞争格局系数(HHI / CR5 客观锚点)

竞争格局 系数 客观锚点
非常好 1.1 HHI>2500 或 CR5>80%
较好 1.0 HHI 1500~2500 或 CR5 60%~80%
较差 0.9 HHI 1000~1500 或 CR5 40%~60%
非常差 0.8 HHI≤1000 或 CR5≤40%

护城河系数(5年ROE/毛利率,需≥2条满足)

护城河 系数 客观锚点
极深 1.25 5年ROE>20% 且 毛利率>40% 且 毛利率std<5pp
较深 1.0 5年ROE>15% 且 毛利率>30%
一定 0.8 5年ROE>10% 且 毛利率>20%
没有 0.6 不满足"一定"标准

确定性得分(满分 4 分)→ 贴现率

维度 最高分 评分规则
技术颠覆风险 1分 几乎不存在(1) / 有一定(0.5) / 很大(0)
行业周期波动 1分 波动很小(1) / 中等(0.5) / 很大(0)
政策抑制风险 2分 极小(2) / 有一定(1) / 较大(0)
动态估值倍数最大值 = 38 × 1.1 × 1.25 = 52.25 倍(超过则触发"评级过于乐观"警告)
贴现率 = 10年期国债收益率 + (5 - 确定性得分) × 4%

贴现率范围示例(国债收益率=1.6%):确定性满分 → 5.6%;3分 → 9.6%;0分 → 21.6%。

估值判定(X 七档,书中原文)

X = 当前市值 ÷ 合理价值 − 1
X < −50%            严重低估
−50% ≤ X < −33%     低估
−33%  ≤ X < −20%    偏低估
−20%  ≤ X < 25%     合理估值   ← 书称"合理估值是一个区间,非定点"
25%   ≤ X < 50%     偏高估
50%   ≤ X < 100%    高估
X ≥ 100%            严重高估

⚠️ 书强调:算得 100 亿,则 80–125 亿都算"合理估值"(幅度约 50%)。报告须在结论处显式呈现该区间,而非单一数字。


🌍 三市场适配规则(随 {{MARKET}} 切换)

A股(默认币种 ¥)

  • 无风险利率:中国10年期国债收益率(中债估值)
  • 一致预期:同花顺 / 东方财富一致预期(普通投资者的"锚")
  • 股东回报:分红为主,股利支付率默认 30%(书统计A股20~40%均值30%)
  • 特殊规则:无汇率换算;AH溢价不适用
  • 常见坑:警惕"低PE=便宜"的价值陷阱(苏宁、诺基亚)

港股(币种 HK$)

  • 无风险利率:取美/港10年期国债(HK 利率跟随美国),贴现率与该币种匹配
  • 一致预期:券商 / 彭博 / 港股通覆盖标的;盈利常披露人民币,须统一货币后再算倍数与贴现
  • 股东回报:分红为主,但内地投资者经港股通持股红利税20%,实际到手低于账面;交叉验证须提示
  • 特殊规则:① AH溢价/折价:H股通常较A股折价,不可直接套A股倍数;② 流动性/老千股:小市值港股流动性差,估值应更保守;③ 政策风险:中美博弈、外汇管制抬升风险溢价 → 政策得分通常更低 → 贴现率更高

美股(币种 US$)

  • 无风险利率:美国10年期国债(UST)
  • 一致预期:FactSet / S&P Capital IQ / 华尔街券商 EPS consensus
  • 会计口径:明确 GAAP vs Non-GAAP。美股常用 Non-GAAP 剔除股票薪酬(SBC)等,动态估值用"有效盈利"应统一口径(建议 GAAP 归母净利或"正常化盈利"),避免被 SBC 美化
  • 股东回报:美股重回购而非分红,"未来3年分红×30%"假设不适用;宜将支付率替换为股东回报率(分红+回购)/净利润,否则低估股东回报
  • 特殊规则:ADR/普通股、股票拆分、10-K/10-Q 节奏、股息协定税率;成长股估值溢价普遍高于 A/港

📉 局限性专章(模板固定文案,必须呈现)

报告中须原样或转述呈现以下书中明确指出的动态估值未能覆盖 / 主观性强的部分,并明确"仅供参考、不可完全信赖":

  • 主观偏见:盈利/倍数选择易过度乐观或悲观;券商预期本身偏乐观,须打折或自建预测
  • 点估计单可能性:只考虑一种未来情景,未给概率分布
  • 跳跃性:从第3年倍数 abrupt 估值,忽略中间路径细节
  • 适用期限制:方法天然适配成长期/成熟期公司;初创期(无历史、易陷概念炒作)、衰退期(价值陷阱)不适用
  • 生命周期/技术颠覆:技术或商业模式被颠覆(数码相机→手机、线下零售→电商)会击穿护城河假设
  • 政策突变:集采、反垄断等政策可瞬间改写商业模式与毛利率,须提高贴现率并给结果打折
  • 叙事依赖:估值前先"讲故事",故事讲错则数字全错(达摩达兰《故事与估值》警示)
  • 模糊正确非定点:合理估值本就是区间,单一数字无意义

🔍 强制交叉验证清单(模板内置,不可跳过)

依据书第3771–3779、3827–3831行:因盈利/倍数含主观判断,必须交叉验证。模板该章节未填写或 {{CROSS_VERDICT}} 为空 → 生成器阻断输出。

  1. 倍数上限:动态估值倍数 ≤ 52.25
  2. 盈利质量匹配:毛利率/净利率/ROE 与所选护城河等级自洽
  3. 增速自洽:FY3 有效盈利隐含增速,与增长潜力档位对应的增长空间一致
  4. 同业比较:同业 PE/PS 区间内,防相对估值陷阱但作交叉参考
  5. 历史估值带:自身近5年 PE 区间,识别是否极端偏离
  6. 负债率:资产负债率过高 → 应提高贴现率或下调倍数
  7. 分红/回购校验:实际支付率 vs 假设支付率,偏差大则调整(尤其美股回购)

判定输出:全绿 → "交叉验证通过,结论可信";任一黄 → "部分预警:,结论仅供参考,安全边际需增厚";任一红 → "校验不通过:,当前估值结论不可靠,建议重做盈利/倍数假设"。


📊 降级机制(数据不齐也能出报告)

档位 触发条件 处理
L1 全部数据齐全(T1-T10) 完整版 HTML + 交叉验证 + 局限性专章
L2 缺失评级数据(T7/T8/T9) AI 主观评级 + 标注"主观判断" + 置信度降一档
L3 缺失 FY1/FY2/FY3 预测 用历史增速外推 + 标注 + 结论不推荐单独使用

硬性自检清单(生成器输出前必过 10 项):FY3有效盈利>0 / 倍数≤52.25 / 贴现率区间 / 市值≈股价×股本 / FY3来源标注(9折或原始)/ 总股本来源 / 分红来源 / 市场块渲染 / 交叉验证非空 / X 值判定一致。


🧮 内置手动测算器(报告首屏)

每份 HTML 报告首屏内置「🧮 手动测算器」折叠卡片,无需重跑生成器即可在浏览器里实时改写参数、刷新报告正文:

  • 位置:报告头之后、导言之前;默认折叠(点标题展开/收起,箭头旋转动画)
  • 输入:15 个参数(FY1-3 净利 / 一致预期折扣 / 分红支付率 / 总股本 / 当前股价 / 10Y国债 / 确定性三项 / 增长·格局·护城河下拉),默认值由本报告真实参数填充
  • 重算引擎:内嵌 JS 复刻 generate_report.py 的 calc + scenario + 评级逻辑,逐位一致(含三档情景 cert 整体±1、标尺 clamp、倍数封顶 52.25)
  • 交互:输入即实时预览合理价值/合理股价/X/评级/三档价;点「↺ 应用并刷新报告正文」→ 写回分步计算/估值结论关键数值 + 标尺指针 + 三档情景柱图;联动 31 个 id(正文 21 个 v-* + Hero KPI 5 个 h-* + 执行摘要 5 个 e-*)
  • 已知边界:交叉验证章节为静态文本,不随测算器联动(改参数后需人工复核)

🛠️ 数据获取指引

以下为接口签名示意(伪代码),并非本 skill 内置实现。实际数据由 AI 引导用户提供,或接入 a-stock-data skill 实时获取;禁止硬编码兜底值。本 skill 的计算/生成器通过 JSON 参数驱动,取数与计算彻底解耦——先把数取到,再喂给生成器。

盈利预测取数 SOP(面向普通人,笔记§1.2):

  1. 问 AI(DeepSeek 等)三年一致预期+出处:「公司未来三年归母净利润预测数据,一致预期是多少,请给出结果并给出具体出处」。点开出处分辨是券商研究员还是网友,选你认可的。
  2. 问 AI 十年净利润+增速:「查询某公司10年内归母净利润,列出同比增长;计算同比增长率的中位数与复合增长率,取两者较小值结合行业特性,预测后面10年归母净利润,输出 Markdown 表格」。AI 会幻觉,需自己用招股书/年报核对关键年,再让 AI 修正。
  3. 落到模板:把 FY1/FY2/FY3 填入,并默认打9折,报告内备注说明。

各数据项取数优先级(详见 SKILL.md 第十节):

  • FY1-3 一致预期:优先券商研报一致预期(东财/同花顺)→ 备用 AI 预测 → 用户提供
  • 分红:优先历史分红率 → 港股提示红利税 → 美股用股东回报率 → 兜底 (FY1+FY2+FY3)×30%
  • 总股本:优先东财个股接口 → 备用市值÷股价反推 → 港股 secid=116 接口 / 美股注意 ADR 换算
  • 国债收益率:A股中债 / 港股美港 / 美股 UST,实时抓取,禁硬编码

📁 目录结构

dynamic-valuation/
├── SKILL.md                        # 主流程与规范(8步流程/系数表/市场适配/门禁)
├── README.md                       # 本文件(使用说明)
├── LICENSE                         # MIT 许可
├── .gitignore
├── references/
│   ├── valuation-formula.md        # ★ 公式与系数(系数已钉死,书内案例校验)
│   ├── rating-anchors.md           # ★ 客观锚点评级标准(四维判定+示例)
│   ├── output-template.md          # 输出模板规范(章节顺序/字段字典)
│   └── template-maintenance.md     # 模板升级自检流程 + 实战踩坑教训
├── scripts/
│   └── generate_report.py          # JSON 参数驱动的报告生成器
│                                    #(交叉验证阻断+市场块切换+测算器参数填充+数据可信度档位)
├── templates/
│   ├── dynamic_valuation_report_template.html    # 报告模板(navy/gold 设计系统)
│   ├── dynamic_valuation_report_template.html.bak    # 模板备份
│   └── dynamic_valuation_report_template.html.bak2   # 模板备份
└── tests/
    └── test_cases.py               # 回归测试 85 项全绿

🚀 安装与使用

WorkBuddy(主要平台)

# 1. 放入 WorkBuddy skills 目录
cp -r dynamic-valuation ~/.workbuddy/skills/

# 2. 对话中触发
# "用动态估值法 给 宁德时代 估个值"
# "贵州茅台 现在贵不贵?"

其他 Agent(Claude Code / Cline 等)

标准 SKILL.md 格式,任何支持该约定的 Agent 均可直接加载:

  • 放入你的 Agent 的 skills 目录(如 .claude/skills/)
  • 数据获取:AI 引导用户提供或接入你的数据源(A股可参考 a-stock-data 一类数据 skill)
  • 计算与出报告:把取到的数据写成 JSON 参数,调用 scripts/generate_report.py 生成 HTML(python3 scripts/generate_report.py <参数.json>)
  • 模板与生成器随仓库自带,跨机器可移植

调用示例

# 生成报告(JSON 参数驱动,参数含标的/行情/评级/交叉验证结论)
python3 scripts/generate_report.py 宁德时代_params.json
# 输出单文件 HTML 到 output 字段指定路径

🎯 适用与限制

适用:成长期/成熟期的"增长型公司"(A股/港股/美股)。 拒答(按拒答规则):

情况 原因
困境反转/隐蔽资产/纯周期公司 本方法适用增长型公司
无法获取 FY1-3 预测 无法计算 FY3
无法获取总股本 无法计算每股价格
用户未提供公司名称或代码 无法定位

📝 版本历史

版本 日期 核心变化
v3.2.1 - 报告首屏内置手动测算器(15 参数 + 内嵌 JS 重算引擎 + 21 个联动 id);修复标尺 polygon 属性顺序;删除冗余旧模板
v3.2 - 三档情景口径统一为上行空间(原基准行误用 X);占位符正则修复;标尺 clamp;评级徽章按 X 动态配色;交叉验证项自动上色
v3.3 - 视觉升级:navy/gold 设计系统(深蓝渐变 Hero + 金边 + KPI 数据行)、TOC 顶部卡片、执行摘要 KPI 网格;测算器联动 21→31 个 id;打印强制深色 Hero
v3.4 - 深色模式全套 + 金色荧光笔 + 噪点纹理 + 数据底座卡 + 可信度档位徽章(L1/L2/L3↔RICH/MEDIUM/LEAN)+ 风险卡片网格 + 阅读进度条 + 滚动渐入;KPI 涨跌色对齐中国惯例(涨红跌绿);75 项回归
v3.4.1 2026-08-18 测试补全 + 经验沉淀:新增 T15(DATA_TIER 档位映射 + RATING_CLASS_MAP + 无效档位回退),75→85 项;新增 references/template-maintenance.md 模板升级自检 7 步流程 + 实战踩坑教训

👤 作者与许可

作者:松幽(SongYouAI)

  • 📱 公众号:松幽舒苑
  • 🎬 视频号:松幽Ai提效

方法论来源:梁宇峰《估值的力量》第三章「动态估值确定好价格」。 系数基准:老板笔记《动态估值法的详细步骤》精确值 + 书内 A公司/恩华案例校验。

License:MIT — 可自由使用、修改、分发,保留出处即可。

MIT License

Copyright (c) 2026 松系智能体

免责声明:本报告由 AI 基于公开认知与客观锚点生成,对一致预期准确性、评级假设、市场适配高度敏感;动态估值追求"模糊正确"而非精确,结果仅供参考,不构成任何投资建议,不可据此单独决策。投资有风险,决策需谨慎。

About

动态估值法自动化估值引擎(基于梁宇峰《估值的力量》第三章)。输入 A股/港股/美股公司名称或代码,按书中方法测算合理价值=[FY3有效盈利×动态倍数÷(1+贴现率)³]+三年分红,输出单文件 HTML 报告:分步推导、四维客观锚点评级、三档情景(悲观/基准/乐观)、7项强制交叉验证、三市场适配规则与局限性专章。面向普通投资者,追求“模糊正确”。MIT 许可。

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages