a-share-dcf

SkillAI & models

A-share DCF valuation model / discounted cash flow. Triggers when the user says "DCF", "discounted cash flow", "DCF valuation", "intrinsic value", "intrinsic value", "help me calculate"

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use the a-share-dcf skill

What this skill tells your AI

The instructions your AI receives, as published by aifinlab/finclaw in skills/a-share-dcf/SKILL.md and read by ahel’s review.

数据源

SCRIPTS="$SKILLS_ROOT/cn-stock-data/scripts"

# 历史财务指标(收入/利润/折旧/资本开支/营运资金等)
python "$SCRIPTS/cn_stock_data.py" finance --code [CODE]

# 最新行情(市值、股价,用于 WACC 和对比)
python "$SCRIPTS/cn_stock_data.py" quote --code [CODE]

# 行业可比公司行情(用于 Beta/WACC 参考)
python "$SCRIPTS/cn_stock_data.py" quote --code [COMP1],[COMP2],[COMP3]

补充:通过 web 搜索获取:

  • 无风险利率(10 年期国债收益率)
  • 行业 Beta 参考值
  • 公司债务成本(如有公开债券)
  • 分析师收入/利润预测(用于交叉验证)

Workflow

Step 1: 数据收集

  1. 通过 cn-stock-data finance 获取过去 3-5 年财务数据
  2. 通过 cn-stock-data quote 获取当前市值
  3. Web 搜索:10 年期国债收益率、公司有息负债利率

Step 2: 历史分析

分析过去 3-5 年的关键财务趋势:

  • 收入增速趋势
  • EBIT/EBITDA 利润率趋势
  • 资本开支/收入 比率
  • 营运资金/收入 比率
  • 折旧摊销/收入 比率
  • 有效税率

Step 3: 收入预测

  • 基于历史趋势 + 行业增速 + web 搜索的分析师预期
  • 预测期:通常 5 年(高增长公司可延长到 7-10 年)
  • 构建 Base 情景,可选 Bull/Bear

Step 4: 利润率与费用建模

  • 毛利率预测(基于历史趋势 + 竞争格局判断)
  • 运营费用率预测
  • EBIT/EBITDA 推导
  • 折旧摊销预测(基于历史比率或资本开支的固定比例)
  • 资本开支预测
  • 营运资金变动预测

Step 5: 自由现金流(FCFF)计算

FCFF = EBIT × (1 - 税率) + 折旧摊销 - 资本开支 - 营运资金增加

Step 6: WACC 计算

A 股 WACC 参数:
- 无风险利率 Rf: 10 年期国债收益率(web 搜索获取,通常 2.5%-3.5%)
- 市场风险溢价 ERP: A 股通常取 5%-7%(高于美股的 4%-6%,反映新兴市场溢价)
- Beta: 优先用 web 搜索获取;若不可用,取行业平均或根据公司特征估计
- 股权成本 Ke = Rf + Beta × ERP
- 债务成本 Kd: 公司实际借款利率或同类公司债利率
- 税率: A 股一般企业 25%,高新技术企业 15%
- WACC = Ke × (E/(E+D)) + Kd × (1-T) × (D/(E+D))

Step 7: 终值(Terminal Value)计算

两种方法取平均或选其一:

  • 永续增长法: TV = FCFF_最后年 × (1+g) / (WACC - g)
    • A 股永续增长率 g 通常取 2%-3%(GDP 长期增速预期)
  • 退出倍数法: TV = EBITDA_最后年 × Exit Multiple
    • Exit Multiple 参考行业可比公司 EV/EBITDA 中位数

Step 8: 估值汇总与敏感性分析

估值桥:

FCFF 现值之和
+ 终值现值
= 企业价值(EV)
- 净债务(有息负债 - 现金)
- 少数股东权益
= 股权价值
/ 总股本
= 每股价值
vs 当前股价 → 上行/下行空间(%)

敏感性分析表(必须):

  1. WACC vs 永续增长率 → 每股价值
  2. 收入增速 vs EBIT 利润率 → 每股价值
  3. 可选:Beta vs 无风险利率 → WACC

输出

Excel 输出(formal 模式)

  • Sheet 1 "DCF": 历史数据 → 预测数据 → FCFF → 折现 → 估值汇总 → 敏感性分析表
  • Sheet 2 "WACC": 资本成本计算详细过程
  • 格式规则:
    • 蓝色字体 = 输入假设
    • 黑色字体 = 公式计算
    • 所有派生值必须是 Excel 公式
    • 敏感性分析表每个单元格是完整公式(非线性插值)
    • 基准情景(中心格)用蓝色底色 + 粗体标注

Markdown 输出(brief 模式)

  • 直接输出 Markdown 表格
  • 包含:关键假设 → FCFF 预测表 → 估值结果 → 简化敏感性分析
  • 在结果下方给出个人判断

风格说明

维度formal(机构 DCF)brief(个人估值笔记)
输出格式Excel (.xlsx)Markdown
预测年数5-7 年3-5 年
WACC完整推导过程直接给出假设值
敏感性3 张 5×5 表1 张简化 3×3 表
情景Base + 可选 Bull/Bear仅 Base
数据源标注每个输入附来源关键假设说明即可
免责声明需要不需要

关键规则

  1. 公式优先于硬编码:Excel 中所有计算值必须是公式,不硬编码数字
  2. 假设透明:每个关键假设(增长率、利润率、WACC 参数)都必须明确标注
  3. 合理性检验
    • 每股价值 vs 当前股价差异 > 50% 时必须解释原因
    • 永续增长率不应超过长期 GDP 增速
    • 终值占比不应超过总价值的 75%(否则预测期不够长)
  4. A 股特殊考量
    • ERP 取 5%-7%(新兴市场溢价)
    • 注意限售股对总股本的影响
    • 部分行业有政府补贴,需判断是否持续
    • 关联交易可能扭曲利润,需调整
  5. 不做精确预测:DCF 的价值在于理解价值驱动因素和估值区间,而非得出一个"精确"的目标价
  6. 与其他 skill 联动:建议用 a-share-comps 的估值中位数交叉验证 DCF 结果

使用示例

示例 1: 基本使用

# 调用 skill
result = run_skill({
    "param1": "value1",
    "param2": "value2"
})

示例 2: 命令行使用

python scripts/run_skill.py --input data.json

Signals

GitHub stars
241
Forks
38
Last commit
May 2026
Advanced
Catalog kind
skill
Gateway key
a-share-dcf
Source
github.com/aifinlab/finclaw