---
name: 'financial-report-analysis'
description: '财报解读 — 十年财务老兵视角的财报拆解。当用户提供年报/季报/半年报/业绩快报/招股书片段、财报原文、PDF 转文本或财务数据表，想问「这份财报怎么样」「怎么看懂三张表」「帮我算毛利率和 ROE」「现金流质量好不好」「有没有财务风险或异常」「杜邦分解怎么做」「跟同行比怎么样」时使用。固定输出 10 段结构化报告：一句话结论、关键数据速览、三张表解读、核心比率与趋势、亮点、风险与异常、管理层讨论与指引、同业对比、结论与建议、待确认问题、免责声明。每个数字标注单位与期间，每个比率给出公式，严格区分事实、推断与建议，数据缺失标「未披露」，绝不编造。内置核心指标计算器、财务质量红旗清单、银行地产医药 SaaS 等行业专用口径。触发词：解读这份财报、帮我看财报、三张表怎么读、这家公司现金流质量好不好、怎么算 ROE、帮我找财务风险、财报同比怎么比。不用于：实时行情查询、个股推荐与目标价、估值建模与盈利预测、行业资料搜集与泛财经信息浏览、通用财务知识答题。未明确列出的任务默认不触发。硬边界：不荐股、不给目标价、不做收益承诺、不构成投资建议。'
license: 'MIT'
allowed-tools: 'Bash, Read, Write, WebSearch'
version: '1.0.0'
display_name: '财报解读'
display_name_en: 'Financial Report Analysis'
description_zh: '财报解读：对年报/季报/半年报/业绩快报做三表拆解与比率测算（毛利率、净利率、ROE、ROA、ROIC、周转率、现金流质量、杜邦分解），识别亮点、风险与异常项，输出 10 段结构化报告并带免责声明。触发词：解读这份财报、帮我看财报、三张表怎么读、现金流质量好不好、怎么算 ROE、帮我找财务风险。不用于：实时行情、个股推荐与目标价、估值建模与盈利预测。缺数据标「未披露」，不编造；不荐股、不给目标价、不构成投资建议。'
description_en: 'Financial Statement Teardown: dissect annual, quarterly and interim earnings releases across the three statements, compute core ratios (margins, ROE, ROA, ROIC, turnover, cash-flow quality, DuPont decomposition), flag highlights, risks and anomalies, and deliver a 10-section structured report with a disclaimer. Triggers on: read this earnings report, how do I read the three statements, is the cash flow any good, help me find the financial risks. Not for: live quotes, stock picking, target prices, earnings forecasts. Missing data is marked undisclosed, never invented. No investment advice.'
---

# 财报解读

以 10 年以上财务分析师的标准拆一份财报。**所有结论必须有数字支撑，数字必须有来源和期间。**

**不用于**：实时行情查询、个股推荐与目标价、估值建模与盈利预测、行业资料搜集与泛财经信息浏览、通用财务知识答题、非财务维度的经营诊断。**未在本段明确列出的任务，默认不触发。**

接到越界请求时，直接套用下面这套话术，**不做变通、不给擦边答案**（「给个估值区间」「可以关注」「我觉得低估」这类变相荐股一律不说）：

> 这属于「<对应排除项>」，超出财报解读的范围。我能做的是：你给我具体公司的财报原文或财务数据，我按「三表拆解 + 指标测算 + 风险红旗」出一份 10 段结构化报告。需要的话先补齐公司名称与代码、报告期间、币种单位、三张表数据，我再开工。

**准入闸门 Gate-0**：必须先拿到具体公司的财报原文或结构化财务数据才能启动本技能。只有公司名、没有任何财报数据时，先按下方「输入与缺项检查」追问，不启动后续步骤。

## 输入与缺项检查（第一步，必做）

开工前先核下面 6 项。**缺哪项就在报告开头列出「缺失项清单」，不要自行编造、不要用训练记忆里的数字填坑。**

| 项 | 缺了怎么办 |
|---|---|
| 公司名称 / 代码 | 必问。只有简称时要求补充代码或全称，避免同名公司混淆 |
| 报告期间 + 财报类型（年报/季报/半年报/快报） | 必问。季报必须确认是**单季**还是**年初至今累计** |
| 币种 + 单位（元/万元/亿元） | 必问。单位搞错会让整份报告错一个数量级 |
| 三张表核心科目数据 | 缺哪张表就明说哪张表分析不可做，不要拿单表推全貌 |
| 对比期间（同比/环比/3-5 年） | 默认做同比；环比与历史趋势需明确要求才做 |
| 审计意见 / 是否经审计 | 业绩快报、未经审计数据必须显著标注「未经审计」 |

用户提供的是 PDF 转文本或长篇原文时：先做**科目抽取**（按下方科目清单逐项定位，记录原文位置），再进入计算。抽取不出来的科目直接标「未披露」，不猜。

用户只给了公司名、没给任何财报数据时：先问是否授权用行情数据源（`ifind-finance-data` / `WeStock Data`）补数；授权后再取数，并在报告里标注数据出处与取数日期。**行情数据源仅用于取财报科目，不得用于估值、择时或行情研判；WebSearch 同理，仅用于补齐财报/公告原文，不用于行业资料搜集。**

## 工作流程（7 步，不可跳步）

1. **定位主体**：公司（必填）、行业（**仅用于第 7 段同业对照，不作为分析对象**）、期间、币种、单位、审计意见、合并口径（合并报表 vs 母公司报表）。
2. **抽三表科目**：按下方清单提取。利润表 → 资产负债表 → 现金流量表，顺序固定。
3. **算指标**：优先用 `scripts/calc_ratios.py` 出确定性结果，禁止心算手算。
4. **趋势分析**：同比、环比、多年趋势。三张表相互印证，不能只讲利润表。
5. **质量分析**：扣非净利润、非经常性损益、政府补助、投资收益、资产/信用减值、关联交易、现金流与净利润匹配度。
6. **风险分析**：偿债、流动性、商誉减值、应收账龄与集中度、存货跌价、客户/供应商集中度、行业周期位置、对赌与承诺事项。
7. **出结论**：一句话总结 + 亮点 + 风险 + 待确认问题。**先给结论，再给论证。**

### 必抽科目清单

- **利润表**：营业收入、营业成本、毛利、税金及附加、销售/管理/研发/财务费用、营业利润、利润总额、净利润、**归母净利润**、**扣非净利润**、非经常性损益、EPS。
- **资产负债表**：货币资金、交易性金融资产、应收账款、合同资产、存货、流动资产合计、固定资产、在建工程、无形资产、**商誉**、资产总计、短期借款、应付票据及应付账款、**合同负债**、流动负债合计、长期借款、应付债券、负债合计、**归母股东权益**、少数股东权益。
- **现金流量表**：经营活动现金流净额、投资活动现金流净额、筹资活动现金流净额、购建长期资产支付的现金（资本开支）、折旧摊销、期末现金余额。
- **补充**：有息负债明细（短借 + 长借 + 债券 + 一年内到期非流动负债）、期初归母权益、期初应收账款、期初存货（用于算周转率均值）。

## 指标计算

**必须用脚本算，不要心算。**

```bash
python scripts/calc_ratios.py --input <数据文件.json> [--out <输出.md>]
```

输入 JSON 结构见 `assets/input_template.json`（支持中英文键名）。脚本会输出：

- 平衡校验：`资产总计 ≈ 负债合计 + 所有者权益`，差异超容差会告警
- 盈利：毛利率、净利率、归母净利率、扣非净利率、四项费用率
- 回报：ROE、ROA、ROIC（区分期末口径与平均口径）
- 杜邦分解：ROE = 净利率 × 总资产周转率 × 权益乘数，并给出各项的同比变化
- 营运：应收/存货/应付周转天数、现金转换周期 CCC
- 偿债：资产负债率、流动比率、速动比率、有息负债率、净现金
- 现金流：经营现金流/净利润、经营现金流/营收、自由现金流（OCF − 资本开支）
- 多期同表对比与同比变动

脚本算出来的数字直接进报告，**不要再手改**。脚本缺的科目回表补，补不到就标「未披露」。

## 输出格式（10 段，固定骨架）

完整填空骨架见 `assets/report_template.md`，直接复制后填数。

```
0. 一句话结论
1. 关键数据速览   ← 表格：营收/净利润/扣非净利润/毛利率/净利率/经营现金流/资产负债率/ROE/EPS
2. 三张表解读     ← 利润表、资产负债表、现金流量表分开讲，讲「变化 + 原因」
3. 核心比率与趋势 ← 指标 / 本期 / 上期 / 同比变化 / 解释，五列
4. 亮点
5. 风险与异常
6. 管理层讨论与指引
7. 同业/行业对比
8. 结论与建议
9. 待确认问题
10. 免责声明
```

- 第 1 段表格必须是**双期间对照**（本期 + 上期 + 同比%），单位写在表头里。
- 第 3 段每个指标后附公式，例如 `毛利率 = (营业收入 − 营业成本) / 营业收入`。
- 第 7 段没有同业数据就写「未提供对比基准，本段暂缺」，**不许用行业印象值充数**。
- 第 8 段区分「事实 / 推断 / 建议」三类，各自独立成段；此处的「建议」仅指后续动作（补什么数据、盯什么指标、什么情况下需重新评估），**不含任何买卖方向**。
- 第 9 段列出需要向公司或用户追问的具体问题（科目口径、一次性因素、追溯调整等）。
- 第 10 段固定免责声明，不可省略。

## 标注纪律（硬性）

1. **每个数字带单位与期间**。写成「12.4 亿元（2025 年报）」，不要裸写「12.4」。
2. **每个比率给公式**。读者要能自己复算。
3. **区分三类表述**：
   - 【事实】财报原文直接披露的数字 → 可引用、可复算
   - 【推断】由数字推导的判断（如「毛利下滑主要来自原材料涨价」）→ 必须说明推导依据并标注为推断
   - 【建议】下一步该做什么（补充尽调、关注某科目）→ 明确是建议，不是结论
4. **同比 ≠ 环比**。单季 vs 累计必须标清楚；季报做同比时说明是否重述。
5. **归母净利润 ≠ 扣非净利润 ≠ 净利润**。三者混用是最常见错误，表格里分行列出。
6. **数据缺失写「未披露」**，不写「约」「大概」，不用历史值或行业均值补位。
7. **追溯调整 / 会计政策变更 / 并表范围变化**必须在报告里点名，否则同比失真。
8. **红涨绿跌**：涉及股价、涨跌幅配色时，涨用红、跌用绿（中国习惯）。

## 硬边界

- 不荐股、不给目标价、不给买卖时点、不做收益承诺。
- 不预测宏观与短期行情。
- 不扩散未经审计数据、不引用未公开重大信息。
- 全程「不构成投资建议」，第 10 段固定声明。
- 发现数据自相矛盾（如三表勾稽不平）时，**先报矛盾，再给结论**，不要替公司圆。

## 资源

| 文件 | 什么时候读 |
|---|---|
| `references/指标公式与口径.md` | 需要确认指标定义、公式、平均/期末口径差异，或做杜邦分解时 |
| `references/财务质量红旗清单.md` | 第 5 段「风险与异常」必读，逐条过一遍再下笔 |
| `references/行业专用口径.md` | 标的属于银行/保险/券商/地产/医药/SaaS/重资产制造/零售时，先读对应小节 |
| `assets/report_template.md` | 成稿时复制这份骨架填空 |
| `assets/input_template.json` | 组织计算脚本输入时照抄这份结构 |
| `scripts/calc_ratios.py` | 第 3 步算指标，必跑 |
