# 财报精读:一手资料深度解读 对 $ARGUMENTS 进行财报精读分析。 **支持输入格式**:`公司名 季度`,例如:`腾讯 2025Q4`、`PDD 2025年报`、`美团 最新`(默认读取最近一期) > "我从不看卖方研报,只读原始财报。" —— 李录 > > "我每天读500页。知识就是这样积累的,像复利一样。" —— 巴菲特 ## 设计理念 大多数AI投研工具依赖二手信息(新闻、研报摘要、数据网站)。但巴菲特和李录的核心能力是**读一手资料**——年报、季报、电话会纪要。 二手信息的问题: - 被筛选过——分析师选择性呈现对其观点有利的数据 - 有时滞——等别人消化完,alpha已经没了 - 缺乏语境——"收入增长15%"脱离了管理层对增长质量的讨论 本Skill直接解读一手资料,关注巴菲特和李录真正会看的内容。 ## 执行流程 ### 前置步骤:资料可得性评级 | 等级 | 特征 | 影响 | |------|------|------| | A级 | 获取到完整原文(10-K/年报/电话会纪要) | 正常执行全部步骤 | | B级 | 仅获取到部分原文或第三方汇总 | 标注"非原始来源",降低附注分析权重 | | C级 | 仅有新闻报道和数据网站摘要 | 聚焦核心财务数据变化,跳过附注挖掘,标注"一手资料不足" | ### 第一步:获取一手资料 使用 Task 工具启动多个后台 Agent **并行**获取以下原始材料: 1. **财报原文**:从公司IR页面、SEC EDGAR(美股10-K/10-Q)、港交所披露易(港股)、巨潮资讯网(A股)获取 2. **业绩电话会纪要/录音**:从 Seeking Alpha、公司IR页面、雪球等获取 3. **管理层致股东信**(如有年报):完整阅读 4. **投资者日/分析师日材料**(如近期有) 如果无法获取完整原文,按 `skills/financial-data.md` 规范使用标准数据源拼凑(美股:macrotrends+stockanalysis;港股:aastocks+macrotrends;A股:东方财富+巨潮资讯),但必须标注"非原始财报,来自第三方汇总",且关键数据两源误差>1%须标记。 ### 第二步:核心财务数据提取与验证 #### 2.1 收入与利润表 | 指标 | 本期 | 上期 | YoY变化 | 管理层指引 | 是否达标 | |------|------|------|---------|-----------|---------| 必须覆盖: - 总收入及分业务/分地区收入拆解 - 毛利润、毛利率变化 - 经营利润、经营利润率变化(区分GAAP和Non-GAAP) - 净利润(注意非经常性损益的影响) - EPS(基本 vs 稀释) #### 2.2 现金流表(巴菲特最看重) | 指标 | 本期 | 上期 | 变化 | 关注点 | |------|------|------|------|--------| 必须覆盖: - 经营性现金流 vs 净利润的比率(>100%为佳,<80%需警惕) - 资本开支及其构成(维护性 vs 扩张性) - 自由现金流 = 经营现金流 - 资本开支 - 回购金额、分红金额 - 现金及等价物期末余额 #### 2.3 资产负债表健康度 必须覆盖: - 现金+短期投资 vs 有息负债 - 净现金/净负债变化趋势 - 应收账款周转天数变化(是否在放松信用条件冲收入?) - 存货周转天数变化(是否在积压?) - 商誉及无形资产占比(是否有减值风险?) **数据验证**:使用 `tools/financial_rigor.py` 对关键数据进行校验: ```bash # 收入和净利润交叉验证(至少2个来源) python3 tools/financial_rigor.py cross-validate \ --metric "revenue" --values 108.3e9 107.9e9 --sources "公司财报" "Yahoo Finance" # 市值校验 python3 tools/financial_rigor.py verify-market-cap \ --price 101 --shares 1.488e9 --reported 1.44e11 --currency USD # 估值指标验算 python3 tools/financial_rigor.py verify-valuation \ --price 101 --eps 9.6 --bvps 26.5 --fcf-per-share 10.2 ``` ### 第三步:管理层讨论精读(MD&A) 这是巴菲特和李录花最多时间的部分。不是看数字,是**听管理层怎么说**。 #### 3.1 管理层语气分析 逐段阅读管理层讨论/电话会发言,标注以下信号: | 信号类型 | 具体表现 | 示例 | |---------|---------|------| | 🟢 **坦诚信号** | 主动承认问题、给出具体原因 | "本季度利润率下降主要因为我们在X领域的投入超出预期" | | 🟢 **清晰信号** | 战略表述具体、有量化目标 | "我们计划在未来12个月将X业务的市场份额从15%提升到20%" | | 🔴 **模糊信号** | 大量使用"我们相信"、"长期来看"等没有实质内容的话 | "我们对未来充满信心" | | 🔴 **转移信号** | 回避直接问题、用其他话题带过 | 被问利润率时转谈收入增速 | | 🔴 **归因外部化** | 把问题全归咎于宏观/行业/竞争对手 | "由于宏观环境影响..." | #### 3.2 承诺追踪 从上一期财报/电话会中提取管理层的具体承诺,与本期实际情况对比: | 上期承诺 | 本期兑现情况 | 评价 | |---------|------------|------| | "下半年利润率将恢复到X%" | 实际Y% | ✅达标 / ❌未达标 / ⚠️部分达标 | **段永平**:"看一个管理层靠不靠谱,最简单的方法就是看他以前说的话做到了没有。" #### 3.3 关键问题识别 从电话会Q&A环节提取分析师最尖锐的问题,以及管理层的回答质量: | 分析师问题 | 管理层回答 | 回答质量(1-5) | 是否回避 | |-----------|-----------|:------------:|:-------:| ### 第四步:附注与隐藏信息挖掘 财报附注里藏着管理层不想让你轻易看到的信息: #### 4.1 必查附注项 - [ ] **关联交易**:与大股东/关联方的交易条款是否公允? - [ ] **股权激励**:期权/RSU的稀释效应有多大?行权价是多少? - [ ] **或有负债**:诉讼、担保、承诺等表外风险 - [ ] **会计政策变更**:是否改变了收入确认方式、折旧年限等? - [ ] **分部信息**:不同业务的利润率差异,是否有"好业务补贴坏业务" - [ ] **客户/供应商集中度**:前五大客户/供应商占比 #### 4.2 异常信号检测 - [ ] 应收账款增速 > 收入增速(可能在塞渠道) - [ ] 存货增速 > 收入增速(可能在积压) - [ ] 经营现金流 < 净利润且差距扩大(利润质量存疑) - [ ] 资本化开支突然增加(可能在美化利润) - [ ] 非经常性收益占比突然上升 ### 第五步:与历史数据对比 #### 5.1 趋势分析 将本期关键指标放入至少4个季度(或3年年报)的时间序列中: | 指标 | Q-4 | Q-3 | Q-2 | Q-1 | 本期 | 趋势判断 | |------|-----|-----|-----|-----|------|---------| 重点关注: - 利润率是在改善还是恶化? - 收入增速是在加速还是减速? - 现金流质量是在提升还是下降? - 资本开支强度是在增加还是减少? #### 5.2 与管理层指引对比 | 指标 | 管理层此前指引 | 实际结果 | 偏差 | 解读 | |------|--------------|---------|------|------| ### 第六步:输出精读报告 #### 报告结构 ``` 一、核心数据速览(一页表格) 二、本期最重要的3个变化(不超过500字) 三、管理层语气与承诺追踪 四、附注中的隐藏信息 五、关键问题(电话会Q&A精选) 六、与投资论文的关系(如有持仓) 七、结论:这份财报改变了什么? ``` #### 结论必须明确回答 1. **这份财报是超预期、符合预期、还是低于预期?**(不能说"基本符合"然后列一堆两面话) 2. **对投资论文的影响**:强化 / 无影响 / 削弱 / 破裂 3. **需要关注的下一个催化剂是什么?** 4. **如果你已持有,该加仓/持有/减仓?** ### 第七步:保存报告 将报告写入 `reports/{公司名}-earnings-{期间}.md`,例如 `reports/腾讯-earnings-2025Q4.md` ### 第八步:数据抽检(准出流程) 报告写入后,执行数据抽检,通过方可发布: ```bash # Step 1 — 提取抽检清单 python3 ~/ai-berkshire/tools/report_audit.py extract \ --report reports/{公司名}-earnings-{期间}.md # Step 2 — 对清单每项从可靠信源取数(参见 skills/financial-data.md) # Step 3 — 输出准出/打回判决 python3 ~/ai-berkshire/tools/report_audit.py verdict \ --results '<填好的JSON>' \ --report {报告文件名} ``` **【准出】** 全部通过 → 发布;**【打回】** 有不通过 → 修正后重审。 ## 关键原则 - **读原文,不读摘要**:尽一切可能获取一手资料 - **看变化,不看绝对值**:趋势比数字本身重要 - **听语气,不只听内容**:管理层怎么说和说了什么一样重要 - **查附注,不只看正文**:魔鬼藏在细节里 - **给结论,不做汇总**:精读的目的是形成判断,不是复述财报