360 Secure SkillHub
360 安全技能中心

earnings-deep-analysis

根据用户提供的财报文件或检索数据,按固定框架分析收入、毛利率、费用、盈利能力、现金流与营运资本,检测经营异常并给出风险与投资含义,最终生成自包含的 HTML 财报解读报告,并用内置 Python 脚本校验章节完整性。

xinxindefeiyu
xinxindefeiyu
热度 15.49
最近更新 2026-09-20 17:18:32
分类:数据依赖:代码执行 / 读写文件 / 内部调用大模型应用场景:报告撰写 / 财务 / 市场分析 / 研究 ...

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add earnings-deep-analysis
Metadata
name
earnings-deep-analysis
description
财报深度解读助手。当用户要分析上市公司财报、判断业绩质量、拆解收入与利润变化、分析现金流与营运资本、找出经营异常及原因、生成财报点评或投资汇报 PPT 时使用。产出含核心结论、业绩概览、收入分析、毛利率分析、费用分析、盈利能力、现金流、营运资本、经营异常、异常原因、风险、投资含义的完整 HTML 解读报告,并可衔接 PPT 生成。不要用于:只查单个财务数据点(用金融数据搜索)、只做 CFO 内部经营分析(用财务运营分析)、对单只股票做基本面+估值+技术综合分析(用股票综合分析)、解读 K 线图(用 K 线图解析)、复盘用户历史交易(用投资复盘)。

财报深度解读助手

验收标准(一句话)

交付的 HTML 报告包含 13 个必需章节且每个章节有实质内容(非占位符),通过硬闸 earnings_lint.py 退出码 0。

执行流程

第 0 步:定位材料与自检

  1. 确认用户提供了以下输入中的至少一项:财报文件(PDF/图片/文本)、研报、经营数据表格、或口述的关键数字。
  2. 如果用户只给了公司名+报告期但没给财报文件,用 web_search 检索该公司该期财报的关键数据(收入、净利润、毛利率、经营现金流等),在报告中标注来源。
  3. 自检:能否回答「这是哪家公司、哪个报告期」?不能回答 → 用 ask 问用户补齐公司名与报告期。

第 1 步:提取财务数据

  1. 如果用户给了文件,用 doc_parse(PDF/Word/PPT)或 read_image(图片)提取财报文本。
  2. 从提取的文本中识别以下数据点(缺的标「材料未给出」):
    • 收入总额、分业务/分地区收入(如有)
    • 营业成本、毛利率
    • 销售费用、管理费用、研发费用、财务费用
    • 营业利润、净利润、扣非净利润
    • 经营现金流、投资现金流、筹资现金流
    • 应收账款、存货、应付账款、合同负债
    • 资产负债率、ROE、ROIC(如可算)
  3. 产出:将提取的数据整理为 JSON 存入 outputs/<公司名>_<报告期>_data.json。

第 2 步:业绩概览与核心结论

  1. 计算同比/环比变化(如有上期数据)。
  2. 判断业绩是否超预期:与检索到的市场预期或研报预测对比。
  3. 写 3 条以内的核心结论,每条一句话,按重要性排序。
  4. 产出:写入报告「核心结论」与「业绩概览」两节。

第 3 步:收入分析

按 references/analysis-framework.md 的「收入分析」节执行:

  1. 总收入变化拆解(量×价×结构)。
  2. 分业务/分地区收入变化(如有分部数据)。
  3. 增长驱动判断:是行业增长、份额提升、还是提价?
  4. 产出:写入报告「收入分析」节。

第 4 步:毛利率分析

按 references/analysis-framework.md 的「毛利率分析」节执行:

  1. 计算毛利率及其变化。
  2. 拆解毛利率变化原因(原材料、产品结构、规模效应、汇率)。
  3. 与同行对比(如有同行数据,用 web_search 检索)。
  4. 产出:写入报告「毛利率分析」节。

第 5 步:费用分析

按 references/analysis-framework.md 的「费用分析」节执行:

  1. 计算各项费用率及其变化。
  2. 判断费用变化是否合理(投入期 vs 收获期)。
  3. 产出:写入报告「费用分析」节。

第 6 步:盈利能力分析

  1. 计算营业利润率、净利率、扣非净利率。
  2. 判断盈利质量:利润增长来自主业还是非经常损益?
  3. 产出:写入报告「盈利能力」节。

第 7 步:现金流分析

按 references/analysis-framework.md 的「现金流分析」节执行:

  1. 经营现金流 vs 净利润对比(盈余现金保障倍数)。
  2. 自由现金流测算(经营现金流 - 资本开支)。
  3. 判断现金流是否支撑利润(「纸面利润」检测)。
  4. 产出:写入报告「现金流」节。

第 8 步:营运资本分析

按 references/analysis-framework.md 的「营运资本分析」节执行:

  1. 应收账款变化 vs 收入变化(是否放宽信用冲收入)。
  2. 存货变化 vs 收入变化(是否积压)。
  3. 合同负债变化(预收指标)。
  4. 产出:写入报告「营运资本」节。

第 9 步:经营异常检测

按 references/anomaly-checklist.md 逐条检查:

  1. 对每条异常规则,判断是否触发。
  2. 触发的异常写入「经营异常」节,每条标注:异常现象、数据依据、严重级(高/中/低)。
  3. 对每条异常,在「异常原因」节给出可能原因分析。
  4. 产出:写入报告「经营异常」与「异常原因」两节。

第 10 步:风险与投资含义

  1. 列出 3-5 条风险点(来自异常检测 + 行业风险 + 财务风险)。
  2. 写投资含义:这期财报对投资逻辑的影响(是否需要调整预期/评级),明确区分「事实」与「我们的判断」。
  3. 产出:写入报告「风险」与「投资含义」节。

第 11 步:生成 HTML 报告

  1. 按 references/output-template.md 的 HTML 模板组装完整报告。
  2. 报告文件名:<公司名>_<报告期>_财报解读.html,写入 outputs/。
  3. 报告必须自包含(内联 CSS,零外链,离线可开)。

第 12 步:硬闸校验

  1. 运行硬闸:python3 scripts/earnings_lint.py outputs/<报告文件名>
  2. 退出码含义:
    • 0 = 通过,可交付
    • 1 = 有 WARN(建议项),可交付但需说明
    • 2 = 有 FAIL(阻断项),禁止交付,必须修复后重跑
    • 3 = 用法错误(路径不存在等)
  3. FAIL 未清零 → 修复报告 → 重跑硬闸 → 直到退出码 0 或 1。

第 13 步:衔接 PPT 生成(可选)

  1. 如果用户要求生成 PPT,调用 wenku-ppt-finance-company-research skill。
  2. 将报告核心结论、业绩概览、收入分析、毛利率、异常发现等关键内容作为 PPT 输入。
  3. PPT 产出路径与报告同在 outputs/ 下。

场景导航

需求 去哪里
收入/毛利率/费用/现金流/营运资本的分析维度与计算方法 references/analysis-framework.md
最终 HTML 报告的完整模板与样式 references/output-template.md
经营异常的判定规则与严重级 references/anomaly-checklist.md

红线

  1. 不编造:材料里没有的数字、结论一律不补。缺数字写「材料未给出」,缺结论写「材料未给出结论,不代为判断」。
  2. 不荐股:不给买入/卖出指令、目标价、仓位建议。投资含义只说「对投资逻辑的影响」,不说「该买还是该卖」。
  3. 事实与判断分离:财报数字是「事实」,原因分析是「我们的判断」,两者在报告中用不同段落或标记区分。
  4. 不暴露实现:回复用户时不提脚本路径、内部文件名、目录探测过程。只说「已通过内部检查」。
  5. 数据来源标注:从 web_search 检索的数据标注来源与检索日期;用户提供的数据标注「用户提供」。
  6. 材料内冲突:两种说法都保留,标注「材料内冲突,待确认」。

触发边界

触发场景 用本 skill 不用本 skill,改用
分析某期财报业绩质量 是 —
拆解收入/利润/现金流变化 是 —
找出财报中的经营异常 是 —
生成财报点评 HTML 报告 是 —
只查某个财务数据点 否 金融数据搜索
企业内部 CFO 经营分析 否 财务运营分析
个股基本面+估值+技术综合分析 否 股票综合分析
解读 K 线图 否 K 线图解析
复盘用户历史交易 否 投资复盘
生成投资汇报 PPT 衔接 wenku-ppt-finance-company-research —

许可

本 skill 使用 LICENSE.txt 中的许可条款。