> ### 内置报告视觉层(可选;优先级低于本 skill 的实质输出要求)
>
> 本 skill 自带一套报告视觉层,不依赖任何外部技能——单独安装本 skill 即可完整复现该风格。
> 规范:references/report-style.md;可直接套用的单文件模板:templates/report-style-template.html;hero 图内嵌脚本:scripts/embed_hero.py。
> 风格:哑光质感(低反光 / 低饱和 / 明度立骨)· 正文无衬线 16px · 高对比(正文 17:1)· 面向老年读者优化;亮面仅作局部点缀(单页 ≤2 处、总面积 ≤2%)。
>
> - 适用范围:仅作用于呈现层——单文件 HTML 交付物的版式与配色。Markdown 文本、xlsx/docx/pptx 等交付形态,以及本 skill 规定的内容结构、取数纪律、核验要求、来源分级、口径标注,均不受其约束。
> - 生效方式:默认不自动叠加;由用户显式要求(如「用那套纸感风格」「参考上次那个模板」),或交付形态确为单文件 HTML 且用户未另行指定风格时套用。允许局部套用(例如只要配色)。
> - 优先级:低于本 skill 的全部实质输出要求。 二者冲突时一律以内容为准、改样式;不得为凑版式而删减、压缩、改写或改变本 skill 规定内容之性质(例:把结论改成引语、把洞察降级成金句、省略口径与来源标注)。
> - 原则:实质大于形式。 视觉层缺失或降级,不得成为内容缩水的理由。
财报排雷 — 量化评分版(含深度穿透层)
> 本技能融合经典价值投资财报分析框架与舞弊识别方法论(三纵两横一张网 + 舞弊方程式 + 七看八问 + 66条信号规则),引入分级阈值与加权评分体系,并针对 A股/港股/美股三大市场差异嵌入适配规则,附带深度穿透层:核心利润获现率、经营性资金优势、利润结构四分法、现金流量肖像、母子报表交叉验证。V1.1.0:全部量化指标计算脚本化(同一输入同一输出),规则库新增 R065/R066,R011 升级年化两级阈值。
一、功能概述
对公司财报进行系统性风险排查,识别风险点、异常信号与潜在雷区,输出结构化 [PASS/WARN/FAIL] 判定 + 加权评分 + 风险等级 + 三大前提符合度的完整排雷报告。
二、输入说明
| 输入项 | 必填 | 说明 |
|---|---|---|
| 公司名 + 股票代码 | 是 | 如 某公司 600xxx.SH / 00700.HK / US ticker |
| 财报数据来源 | 三选一 | ① 用户上传的财报文件(PDF/文本);② 用户粘贴的财务数据;③ 已配置数据接口自动拉取(见第五节) |
| 市场类型 | 建议 | A股/港股/美股/中概股;未注明时从代码自动判断 |
| 分析深度 | 否 | 默认完整六步流程;可指定只做某一步(如"只查存贷双高") |
零配置可用:未配置数据接口时,基于用户提供的财报文件/粘贴数据即可完成全流程排雷。
三、输出说明
按固定格式输出排雷报告(完整格式见第四节第 6 步),核心要素:
- 基础财务速览(核心指标 + 同比变化)
- 硬伤红灯 Layer 0 判定(一票否决项)
- 规则逐条判定(64条规则,PASS/WARN/FAIL + 实际数值)
- 组合信号触发情况(7组危险组合)
- 评分汇总与风险等级(🟢低/🟡中/🟠高/🔴极高/⛔直接排除)
- 三大前提符合度判定(利润为真?可持续?无需大量再投入?)
- 深度穿透层(核心利润获现率 / 经营性资金优势 / 利润结构四分法 / 母子报表)
- 排雷结论 + 免责声明
四、方法论与工作流程
核心信条
- 财报是用来排除企业的,不是用来挑选优秀企业的。
- 财报只能用来证伪,不能用来证实。
- 只看"利润为真、可持续、维持利润无需大量资本投入"的企业。
舞弊识别逻辑框架
两大舞弊方程式:
- 虚增利润 = 虚增资产——虚增利润必然在资产负债表留下痕迹(应收、存货、商誉、在建工程、货币资金虚增),顺着资产端膨胀方向追踪即可锁定造假痕迹
- 虚构交易 = 体外资金循环——现代造假构建真实资金闭环:虚构销售 → 虚构采购 → 资金回流
三纵两横一张网:
两横(两个层次):
层次一:业务-财务双循环验证(投入→产出→回报)
层次二:关注舞弊危险信号
三纵(三个维度):
业务视角 → 财务视角 → 治理视角
↓ ↓ ↓
交叉验证形成综合判断
非财务信号权重:舞弊公司的非财务异常特征出现次数是财务异常特征的 3.7 倍——业务异常和治理异常往往在财务数据出问题之前就已亮灯。
市场差异适配
| 维度 | A股 | 港股 | 美股 |
|---|---|---|---|
| 会计准则 | CAS | HKFRS/IFRS/CAS/US GAAP 均可 | US GAAP 为主,部分 IFRS |
| 季报披露 | 强制 | 无强制要求 | 强制(10-Q)/年报(10-K) |
| 增值税 | 有(13%) | 无 | 无(销售税由消费者承担) |
| 存货计价 | 允许 LIFO | 禁止 LIFO | 允许 LIFO |
| 研发支出 | 满足条件可资本化 | 开发阶段可资本化 | 全部费用化 |
| 资产减值 | 特定条件下可转回 | 可转回(商誉除外) | 不可转回 |
| 利息收支归类 | 通常归筹资活动 | 允许企业选择 | 归入经营活动 |
| 收入确认 | 时间点/时间间隔法 | HKFRS 15 强调履约义务识别 | ASC 606(与 IFRS 15 趋同) |
| 审计意见 | 中文报告 | Unqualified/Qualified/Adverse/Disclaimer | PCAOB 标准,英文术语同上 |
| 财报周期 | 自然年 | 自然年 | 可自选月份 |
港股注意:无增值税,销售收现比参考基准下调至约 1.0(A股为 1.13);披露颗粒度较粗,A股常见科目缺失时不得标记为疑点,应注明"因港股披露粒度差异无法深入分析";若仅获取港股半年报/年报,需注明数据局限性;A+H 两地上市注意准则差异导致的数值差异。
美股注意:财年截止月份可自选(分析前必查财报期起止日期);研发全部费用化致科技/医药公司研发费用率系统性偏高(勿误报);LIFO 公司存货账面值与毛利率不可与 A/H 股同行直比;商誉减值不可转回;经营现金流口径(利息归类)与 A/H 不同,跨境对比须还原或注明;审计意见识别使用 PCAOB 英文术语(Unqualified/Qualified/Adverse/Disclaimer),关键审计事项(Key Audit Matters)是排雷高价值线索;中概股额外关注 VIE 结构、审计底稿检查争议、SEC 问询函、Form 4 内部人减持。
操作反例黑名单(不要做的事)
红线禁止:
- 禁止推荐股票或给出买卖建议
- 禁止在没有方法论依据的情况下自行编造分析标准
- 禁止跳过任何分析步骤
- 禁止在未获得计算结果的情况下仅凭文本描述下结论
- 禁止将港股/美股因披露粒度或准则不同导致的数据缺失标记为"财务疑点"
常见误判场景(必须排除后再判定):
| # | 反模式 | 为什么是误判 | 正确做法 |
|---|---|---|---|
| 1 | 白酒/名酒存货激增=积压风险 | 基酒陈酿是主动价值创造,非滞销 | 区分"生产型存货增加"与"滞销型存货积压",查产销量匹配度 |
| 2 | 美股巨头存贷双高=造假信号 | 跨国公司税务筹划型存贷(海外现金+境内发债回购)是合法资本策略 | 查利息收支匹配度,非仅看余额(R010排除场景) |
| 3 | 品牌溢价=毛利率异常 | 品牌壁垒型公司毛利率天然高于代工型同行 | 同行对比时排除商业模式不同的公司(R015排除场景) |
| 4 | 仅看财务指标不看非财务信号 | 非财务异常是财务异常的3.7倍 | 七看八问前置扫描不可跳过 |
| 5 | 经营现金流为负即判利润有水分 | 高速成长期/重资产投入期负现金流可能合理 | 结合生命周期阶段,区分"成长型负现金流"与"衰退型负现金流" |
| 6 | 一刀切套用64条规则 | 周期股、成长股、金融股财务特征完全不同 | 先判定企业类型,选择性激活相关规则 |
强制六步流程
前置:七看八问快速诊断(2分钟定性扫描)
七看财报:①看收入(增速合理性、行业对比)②看利润(扣非/净利差距、非经常性占比)③看现金流(经营CF持续为正?FCF自洽?)④看资产(应收+存货+商誉+在建工程占比,虚增空间)⑤看负债(有息负债与货币资金匹配、存贷双高)⑥看回报(ROE构成:净利率×周转率×杠杆)⑦看收益率(人均营收/利润、资本支出/折旧匹配)。
八问非财务信息:①商业模式 ②行业位置 ③竞争壁垒 ④客户结构 ⑤供应商依赖 ⑥管理层 ⑦治理结构 ⑧外部信号(监管问询/做空报告/媒体质疑/大股东减持)。
步骤一:基础数据提取与速览
- 识别市场与准则;中概股额外标注 VIE 结构风险
- 提取核心数据并计算同比变化率:营收、营业成本、净利润、扣非净利润、四费(销售/管理/研发/财务或利息费用/利息收入)、税金及附加、其他收益、投资收益、公允价值变动、资产/信用减值、三表现金流、应收/预付/合同资产、存货、商誉、货币资金、短长借款、应付/预收/合同负债("两头吃"科目全集)
- A股集团企业:提取母公司单体报表关键科目用于母子报表交叉验证
- 计算关键比率:毛利率、净利率、经营现金流净额/净利润;以表格呈现
CP1 数据完整性自检(自动执行):营收/净利/扣非、三类现金流、三大比率是否齐全;美股 LIFO/研发费用化口径是否注明。不合格项静默重试一次,仍失败则标注缺失并继续。
步骤二:硬伤红灯检查(Layer 0 一票否决)
审计意见(非标即否决)、会计师事务所频繁变更、大股东质押>50%、美股特有信号(SEC问询/推迟交报告/内部人大额减持/做空报告/集体诉讼)、海外业务畸高等。完整清单见 references/rules-library.md「硬伤直接排除规则」。
CP2 红灯汇总确认:触发任一红灯时以表格汇总(红灯项 | 触发详情 | 严重度)并醒目标示;等待用户确认后继续(若用户未回复,默认确认并继续,报告标注;若全部 PASS 则直接进入步骤三)。
步骤三:利润表深度扫描
收入(大客户/关联交易/突击签单)、毛利率(同行对比+异常波动)、费用率(与营收变动匹配度)、利润质量(非经常性占比、扣非差距趋势)、利润结构四分法(核心利润占比≥80%="干出来的";其他收益>20%且核心<60%="补出来的";投资+公允价值>40%="投出来的";减值侵蚀>20%="洗出来的")。每处疑点附完整证据链:事实数据 → 分析原则 → 风险推断。
步骤四:资产负债表排雷
应收账款(增速vs营收增速、账龄结构)、存货(激增/周转天数/跌价计提充分性)、商誉(占净资产比、该减值未减值)、货币资金与债务(存贷双高、利息收支与存债规模匹配度)。
步骤五:现金流量表交叉验证
经营CF净额 vs 净利润(连续多年<1 = 利润有水分;美股注意利息归类口径)、销售收现比(A股基准1.13、港美股基准1.0)、投资与筹资现金流结构——按 CFO/CFI/CFF 符号组合判定现金流量肖像(八型:妖精/老母鸡/蛮牛/奶牛/大出血/赌徒/混吃等死/骗吃骗喝,定义见规则库 4.6),并跟踪跨期肖像漂移(商业模式质变的早期信号)。
CP3 疑点清单汇总(自动执行):汇总步骤三至五所有疑点输出问题清单(编号|科目|疑点简述|严重度),按四大类索引检查遗漏。
步骤六:综合定性并生成最终报告
汇总疑点清单 → 对照三大前提判定(利润为真?可持续?无需大量再投入?任一不满足=不符合选股标准)→ 判定是否具备评估基础(只说明条件,不给估值)。
CP4 最终报告输出前自检(自动执行):
- [ ] 六步骤全部完成(缺步骤不可输出)
- [ ] 每条疑点附完整证据链
- [ ] 三大前提逐条判定完成
- [ ] 引用格式使用【分析原则】/【典型案例】/【数据计算】之一
- [ ] 美股现金流口径差异已注明;港股缺失已标"披露粒度差异"而非疑点
- [ ] 深度穿透三指标(核心利润获现率/经营性资金优势)已计算定性;母子报表模块已触发或标注 SKIP
- [ ] 利润结构四分法已定性
- [ ] 交付前数据纯净性五闸(内嵌自检,本技能独立执行):
1. 降级源≠降级标准:换用备用数据源时,核验标准不得同步放松
2. 勾稽:核心数字须通过表间勾稽(分部加总=总计、净利÷EPS≈股数等)
3. 数值巧合归属:数字恰好等于阈值时,须回源确认而非直接判 PASS
4. 披露层级:区分"未披露"与"不存在",回原文确认
5. 双源:关键数字(营收/净利/现金流)至少两个独立来源交叉验证;仅单源时显式标注"⚠️ 单源数据,未经双源核对"
> 规则库(R001–R064 全表、分级阈值、组合加分、评分体系、深度穿透三指标公式与母子报表模块)见 references/rules-library.md,为本技能组成部分,执行时必须加载。
引用格式规范
报告中任何一条分析必须使用:【分析原则】+方法论核心逻辑 / 【典型案例】+类似案例(如康得新、万福生科、蓝田等公开案例)/ 【数据计算】+计算过程与结果。不得自行编造分析标准;检索不到方法论依据时须说明"现有分析框架中暂未找到针对此情况的具体论述,无法给出判断"。
Resume:长任务状态恢复
长任务(多标的 / 章节多 / 步骤长)在运行时可能因中断或上下文压缩出现"忘了这步、漏了那项"。本技能采用状态外置机制:不依赖上下文记住进度,每个 boundary 把执行状态从外部文件重新灌回。
启用门槛(先判长短,短任务不启用)
满足任一才启用:① 标的数 ≥3;② 产物章节 ≥12 节;③ 预计工具调用 >20 次。
不满足则不创建状态文件,按常规流程一次性跑完——避免给短任务平白加上文件读写成本。
boundary 定义
- 每完成六步流程中的一步
- 每完成一家公司
- 交付前
每个 boundary 结束时写一次状态文件,下一个 boundary 开始时先读再继续(不在每一步都写,防止"写状态"本身吃掉上下文预算)。
状态文件
路径:.workbuddy/progress/{task}.md(目录不存在则创建)。模板:
# {task_id}
updated_at: {ISO 8601,带时区,如 2026-09-09T14:40+08:00}
session_id: {本次会话标识}
已完成:
- [x] {条目} → 产物:{路径或证据锚点}
剩余:
- [ ] {条目}
下一步:{动作},需先取 {数据}
口径快照:单位={};币种={};期间={};来源={}
读写纪律
- "已完成"必须附产物路径或证据锚点——无凭据不写"已完成"(文件由本技能自己写入,若边界处误记,Resume 会把错误状态灌回并赋予权威)。
- 时间戳检查:读取时先比对
updated_at与session_id;文件不属于本次会话且早于本次开始时间 → 视为可能陈旧,确认后才采用,禁止用旧快照覆盖新进展。 - 以文件为准:聊天中只引用状态文件条目,不另写一套(防双写不一致)。
- 中断收口:任何原因中断时,最后一次写入必须含"已完成 / 剩余 / 下一步"三段,接手方无需回溯聊天即可续跑。
降级
状态文件不可写或目录不可创建时,退化为既有收尾纪律(中断必列已完成/剩余/下一步),不因本机制失败而中断任务。
规则输出的判读纪律(2026-09-15 实证)
脚本 / 规则库输出的定性结论是信号不是判决——必须在正文显式写出判读过程,不能沉默处理,也不能照搬结论。
实证:道通科技 R065 母合偏离度四期 >100%(脚本判 FAIL),成因是少数股东权益为 −1.92 亿(子公司亏损由少数股东分担),与「体外藏亏」特征(少数股东权益为正而利润分流)方向相反 → 处置范式:降级为关注项而非定罪项,同时把「境外子公司减亏进度」列为下期必查。
判读三步:①脚本给的是哪个维度的偏离;②该偏离的成因有几种(至少列正反两种);③成因方向是否与定罪特征一致——不一致即降级,并写明降级理由与后续必查项。
五、数据源与配置
5.1 数据获取优先级
1. 用户上传的财报文件 / 粘贴的财务数据 ← 零配置,默认可用
2. 公开官方渠道:公司年报/季报原文、交易所披露平台、SEC 文件
3. 已配置的 HTTP 数据接口(config.json) ← 行情、估值、多期财务数据补位
禁止:社交媒体/论坛 UGC 结论作数据源(仅可作观点线索,须回正规源核实)
通用查询纪律(确保跨公司数据一致性,无论使用何种数据源):
- 每批查询最多 5 个指标维度,用空格分隔关键词,指定年份确保数据确定性
- 查询词贴近报表科目实际表述("营业总收入/归母净利润/经营活动现金流量净额"),禁用模糊抽象词
- 同一公司多期数据用同一查询口径拉取,保证序列可比
首次使用数据源建议(先检查、再提示):
运行时先检查 config/config.json 是否已配置数据源——已配置:直接使用,不再重复提示;未配置且用户首次使用:先输出以下建议,再进入手工数据模式:
| 推荐度 | 数据源 | 说明 |
|---|---|---|
| 首推 | Wind API(AIFin Market) | 有免费额度;自行下载注册后将接口配置到 config.json |
| 其次 | WorkBuddy 内置 通达信 MCP | WorkBuddy 环境自带,无需额外注册 |
| 备选 | 东方财富 妙想(MX)/ 同花顺 skill 等 | 按需绑定 |
建议配置两个以上数据源做交叉验证(关键数字双源核对)。本 skill 为通用版本,不强制绑定任何数据源——请用户在 config.json 中绑定适合自己的数据源组合;skill 只约定取数纪律(禁 UGC/双源/缺口显式标注),不约定具体来源。
5.2 计算纪律(脚本强制,V1.1.0)
所有量化指标计算必须通过 scripts/calc_risk_metrics.py 执行,禁止 LLM 心算——脚本保证同一输入同一输出,消除计算幻觉。纪律:
- 取数完成后,将各期数据整理为 JSON(完整字段表见脚本 docstring:科目/口径/累计vs单季说明;单位统一亿元;缺数据字段省略或置 null,禁止填 0;periods 可附 note 备注(透传到输出))
- 执行
python scripts/calc_risk_metrics.py <财报数据.json>,获得量化计算层输出(毛利率/核心利润/获现率/四分法占比/收现比/FCF/R011 年化收益率/R065 偏离度/R066 透支分红/R063 资金优势/现金流量肖像八型/跨期连续判定) - LLM 职责边界:取数、定性规则(R039–R050 业务/治理信号)、评分汇总、风险定性——一切算术以脚本输出为准,报告中引用的计算数字必须与脚本输出一致
- 脚本输出的
data_gaps缺口清单须原样呈现于报告"数据缺失说明",不得静默丢弃 - 脚本纯标准库实现(无第三方依赖),Python 3.8+ 可运行
5.3 配置文件
将 config/config.example.json 复制为 config/config.json 按需填写:
{
"data_source": {
"mode": "manual",
"api": {
"base_url": "https://your-data-api.example.com/v1",
"api_key_env": "FR_RISKSCAN_API_KEY",
"auth_style": "bearer",
"timeout_seconds": 30,
"retry": 2,
"endpoints": {
"quote": "/quote?code={code}",
"financials": "/financials?code={code}&years={years}",
"holders": "/holders?code={code}",
"audit": "/audit?code={code}",
"news": "/news?code={code}&days={days}"
}
}
},
"report": {
"format": "html",
"directory": "./output"
}
}
mode:manual(默认)/api/auto(先接口后手工)api_key_env:密钥只能通过环境变量注入,禁止明文写入任何文件- 排雷需要多年期数据(部分规则需连续2–3年序列、R061需10年),接口需支持按年份拉取
5.4 接口未授权或不可访问时的行为(明确提示,禁止静默失败)
| 场景 | 处理 |
|---|---|
| 未配置接口 / base_url 为空 | 提示:「未配置数据接口,本次以手工数据模式运行。请提供财报文件或多期财务数据,或配置 config.json。」 |
| 401 / 403 | 提示:「数据接口认证失败(HTTP {code}),请检查环境变量 {api_key_env}。」 |
| 超时 / 5xx | 提示:「数据接口不可访问({错误}),已重试 {n} 次,降级为手工数据模式。」 |
| 接口返回空 | 标注「接口未返回该字段」,对应规则标 [SKIP] 并注明数据缺口,不得填 0 或估算值冒充 |
六、使用示例
用户:帮我排雷 XX公司 600xxx.SH,最近3年年报数据如下:{粘贴数据}
技能动作:
1. 市场判定:A股/CAS;七看八问定性扫描
2. 六步流程:数据速览 → 硬伤红灯 → 利润表扫描 → 资产负债表 → 现金流交叉验证 → 综合定性
3. 64条规则逐条判定(触发项附实际数值),组合信号检查,评分汇总
4. 深度穿透:核心利润获现率(近3年序列)、经营性资金优势、利润结构四分法、母子报表(A股集团企业)
5. 输出结构化排雷报告(HTML),风险等级 + 三大前提判定 + 免责声明
更多场景(港股粒度差异处理、美股 GAAP/Non-GAAP 等效判断、复盘已曝光造假公司)见 examples/example-usage.md。
七、目录结构
financial-report-risk-scan/
├── SKILL.md # 本文件(方法论 + 六步流程 + 配置)
├── references/
│ └── rules-library.md # 66条规则库 + 分级阈值 + 组合加分 + 评分体系 + 深度穿透层 + 现金流量肖像八型
├── scripts/
│ └── calc_risk_metrics.py # 量化指标计算脚本(同一输入同一输出,纯标准库)
├── config/
│ └── config.example.json # 配置模板
└── examples/
└── example-usage.md # 使用示例
八、注意事项
- 本技能仅用于财报风险排查参考,不构成投资建议,禁止输出买卖建议
- "无法排除嫌疑 ≠ 确认造假":数据不足以排除风险时标记"⚠️ 无法排除嫌疑"而非直接 PASS,避免虚假安全感
- 周期股/成长股/金融股财务特征不同,先判定企业类型再选择性激活规则(金融企业适用 NPL/资本充足率/存贷比/关联交易/审计质量等专用锚点)
- 本技能独立运行,不依赖任何其他技能
九、版本记录
- v1.3.1(2026-09-22):同步自本地正源:
calc_risk_metrics.py修复;frontmatter description 多行化并补触发词;版本号单一来源清理;示例配置同步。 - v1.2.9(2026-09-18):版本记录精简——本节 17 条压至 3 条(保留本次 + 一个功能里程碑 + 一个结构里程碑),更早 14 条移出留档。同轮:版本号收口为单一来源(清除 README/标题/正文/配置/示例/规则库/模板/脚本 各处声明型副本),脚本 version 改运行时读 SKILL.md。未改动规则与功能。
- v1.2.7(2026-09-15):新增「规则输出的判读纪律」——脚本定性结论是信号非判决,须写判读三步并给出降级/定罪判据(R065 少数股东权益为负实证);随包同步视觉规范硬约束 16(宽表在所有视口设 min-width)。
- v1.2.2(2026-09-13):视觉层改为内置——随包分发
references/report-style.md(规范)、templates/report-style-template.html(单文件模板)、scripts/embed_hero.py(hero 图 base64 内嵌),去除对外部技能的依赖,单独安装本 skill 即可复现该风格;保留适用范围 / 生效方式 / 优先级(实质大于形式)声明。