个股排雷器
输入一个股票代码(A股 sh600xxx/sz00xxxx,港股 hk0xxxx),输出一份自包含 HTML 排雷报告:红涨绿跌、含结论页、7 步排查表、一票否决清单。
核心方法论(必须严格按此执行,不可省略步骤)
年报排雷 7 步法(顺序固定)
- 经营利润 vs 归母净利的缺口:算「归母净利 − 经营利润(或扣非前经营利润)」。缺口巨大且为正,立刻警觉——盈利不是经营来的。
- 拆公允价值变动损益附注:找利润表/附注里的「公允价值变动收益」「投资收益」中来自优先股/可转债/衍生工具的部分。一次性、非现金、非经营的项目要单列剔除。
- 对照经调整亏损(非 IFRS / 经调整 EBITDA):如果公司披露了「经调整净亏损」,用它与 GAAP 净亏损对照。GAAP 巨亏但经调整小幅亏损 = 一次性科目在作妖;若经调整也大亏,则是真经营恶化。
- 基本 EPS vs 摊薄 EPS 背离:基本 EPS 为正、摊薄 EPS 为负 → 稀释性证券(优先股/期权)在吞噬利润,表面盈利经不起摊薄。
- 经营现金流试金石:经营现金流持续为负、且与净利润长期背离 → 利润没回款,纸面富贵。这是最硬的反向指标。
- 研发/资本化突变:研发费用资本化率突然跳升(费用变资产推迟确认)→ 粉饰费用率;或资本化率远高于同行 → 黄灯。
- 收入确认质量:营收增速与经营现金流/应收增速是否匹配;应收暴涨、合同负债萎缩 → 收入确认激进或渠道压货。
三个一票否决信号(命中任一直接判"高危/回避")
- 信号 A:归母净利靠「公允价值变动 +20 亿级一次性科目」转正,经营利润仍大额亏损(如黑芝麻 2024:经营亏 −17.54 亿,靠优先股转普通股 +20.47 亿一次性变正,归母 +3.13 亿)。
- 信号 B:经营现金流连续 2+ 年为负且缺口大于净利润(纸面富贵,回款崩)。
- 信号 C:基本 EPS 正、摊薄 EPS 负,且稀释性优先股/可转债规模超过净资产 30%(表面盈利被稀释击穿)。
> 注:A股扭亏、港股 18A/18C 上市、科创板未盈利公司,这三条命中率极高,优先查。
数据源(按可用性降级,必须标注来源口径)
本机数据源现状(2026-08 实测):
- 首选 NeoData 金融搜索(
C:\Users\zz\.workbuddy\skills\NeoData金融搜索服务\scripts\query.py):可查个股利润表、综合财务指标、宏观。首次需connect_cloud_service取 tempToken 后python query.py --save-token "<token>"。 - 次选 WeStock Data(
npx -y westock-data-skillhub@1.0.5):A股sh/sz前缀、港股hk0xxxx。可补 K线、财务指标。 - 兜底 WebSearch / WebFetch:抓东方财富、同花顺、港交所年报原文核实关键科目(公允价值变动、经营现金流)。
硬性标注要求:报告顶部必须写明「数据来源:XXX(非 NeoData 标准团队源 / 仅供参考)」,明确这不是交易建议。港股半年度披露,无连续季度数据;亏损股 PE 多为 N/M,只看 PS。
执行流程(AI 被加载后立即按此跑,不要等用户追问)
- 解析用户输入的代码,判断市场(A股/港股)。
- 调数据源拉「利润表 + 经营现金流 + EPS + 优先股/可转债附注(如有)」。港股去港交所年报原文补附注。
- 按 7 步法逐项填空,算缺口、对照经调整亏损、查现金流。
- 命中三个一票否决任一 → 结论标注「高危/回避」并说明哪条。
- 生成自包含 HTML(内联 CSS,红涨绿跌),含:结论卡、7 步排查表、一票否决清单、数据来源与免责。
- 调用
scripts/usage_logger.py的log_event("stock-landmine-detector", "report", success=True/False, ...)在用户本机记录一条运行日志(仅落盘,不上传)。
何时用
- 用户问「XX 股票能不能买 / 是不是坑 / 年报扭亏是不是真的」。
- 用户提到「pre-IPO、18A/18C、科创板未盈利、高 PS 估值」。
- 自选股清单想批量过一遍雷区(可循环调用本 skill)。
依赖
- Python 3(系统自带即可),无需额外 pip 包(usage_logger 仅用标准库)。
- 可选:NeoData 技能、WeStock Data(npm)。缺失时自动降级到 WebSearch。