本技能是 company-research SOP 第 4 阶段(valuation)的口径说明书,也适用于任何“这家公司贵不贵”的讨论。其原则是:数字出自 calc,判读出自本手册,结论只到“情景 / 裁决点”为止。
一、四条铁律 每一个 PE / CAGR / PEG / 年数都必须是一次 calc/cli.py 调用的输出(带 calculation_id 与输入证据 id);没有对应证据就写“未获取:原因”,不拿记忆或别的口径顶替。不输出价格锚(目标价 / 合理价 / 买入价 / 止损价);消化年数的“锚”是 PE 倍数情景,不是价格,报告里只给“情景 → 年数”表和裁决点。PEG 低不等于安全:PEG 的分母(前瞻 CAGR)是整条计算里唯一的预测,周期一转 E 被下修、PEG 跳升;任何 PEG 判读必须同时给出“前瞻 vs TTM 事实是否对得上”。单位与报告期随证据原样带入 calc,由 calc 归一;不在提示词里换算万元 / 亿元、不自己年化。
二、分子:PE 的三个口径(并列报,主用第一个)
- 扣非×4 年化 PE(主):总市值 ÷(最新单季扣非净利润 × 4),对应 pe_deducted_annualized(total_market_cap, cap_unit, latest_quarter_deducted_profit, profit_unit)。用于抓“当前运行速率”,对快速成长股比 TTM 更不滞后。必用扣非、不用归母(单季×4 会把投资收益 / 补助 / 减值等一次性损益放大 4 倍);季节性方面,淡季单季×4 会高估 PE、旺季单季×4 会低估,淡旺季方向只能从该公司自己的单季序列判断,不得套用行业印象;判读时必须写明最新单季是哪个季度与方向性偏差。
- 前瞻 PE:现价 ÷ 一致预期 EPS(FY T 均值),对应 forward_pe(price, eps_forecast)。分析师已处理季节性;与扣非×4 对照看“市场在为哪一年定价”。依赖一致预期质量(机构数 ≥ 3)。
- TTM PE + 历史分位:总市值 ÷ 近 4 季净利和,对应 pe_ttm_from_parts(...),并与数据源 pe_ttm 交叉;分位用 percentile_rank(history={"history_csv": {"raw_ref": <PE 历史 raw 文件>, "column": "peTTM", "where": {"tradestatus": "1"}, "date_column": "date"}}, current=pe_ttm)。历史位置参考;分位 < 20 个有效样本 → not_meaningful。对快速成长股滞后偏高(把利润低的旧季度算进去);只作参考列,不作主判。 T 的定义:T = 当前财年(Asia/Shanghai 当日所在年)。
三、分母:可持续增速(主用前瞻 CAGR,强制交叉验证) 前瞻 CAGR =(一致预期 FY T+2 EPS ÷ FY T EPS)^(1/2) − 1,对应 forward_cagr(eps_t, eps_t_plus_n, years=2)。最平滑、去基数去季节性;但它是最软的一环:卖方对热门赛道系统性乐观、远年样本薄、分歧大、会被持续修正。必须同时报 min / max 与机构数(consensus_dispersion(low, mean, high),看 max ÷ min 与 (max − min) ÷ mean)。 TTM 同比(事实,去季节性去单季基数)= 近 4 季净利和 ÷ 前 4 季净利和 − 1,对应 ttm_yoy(single_quarters, end_period, unit, money=true);主用归母口径(与一致预期 EPS 同口径),扣非口径并列交叉。 交叉验证判读 → forward_vs_ttm_judgement(forward_cagr_value, ttm_yoy_value, tolerance_pp=10):approx(前瞻 ≈ TTM:增长已兑现,前瞻可信)/ forward_below(前瞻远低于 TTM:市场在赌大幅减速,要问为什么)/ forward_above(前瞻远高于 TTM:分析师在画饼,PEG 失真风险最高)。 两个禁用项:单季同比做分母(去年同期低基数会假性吹大);环比做分母(季节性把增长公司算成负,年化更爆炸)。环比(qoq)只作“拐点 / 动量”温度计,报告里标注为信号而非增速。
四、一致预期的可信度 机构数 ≥ 3、min / max 齐:正常进 forward_cagr,报告列“机构数 · 区间”。机构数 < 3:标“一致预期不可靠”,仍可算但判读降级,裁决点里写“等更多覆盖”。只有逐篇研报预测(东财备源):只能叫“逐篇预测”,不得冒充一致预期、不得进 forward_cagr。分歧 max ÷ min ≥ 2:明示“远年 EPS 分歧 ≥ 2 倍,PEG / 年数区间应按 min–max 各算一遍而不是只看均值”。
五、判读表 PEG(扣非×4 ÷ 前瞻 CAGR):< 1 初判“增长能消化估值”,必须叠加“前瞻 vs TTM = approx 才算便宜;forward_above 时写‘便宜是预测给的’”;≈ 1 合理,同上;> 1.5–2 贵,看是否“卡口越硬越贵”(不可替代性已被定价)。PEG 是成长性周期股的“便宜陷阱”高发区:周期见顶前 PE 最低(E 在顶)。任何 PEG < 1 的结论必须附一条反证。
六、四锚 PE 消化年数与“30 倍锚三铁律” pe_digestion_years(pe, cagr, anchor) = ln(PE ÷ 锚) ÷ ln(1 + CAGR);PE ≤ 锚 → 0 年(details.below_anchor)。pe_digestion_scenarios(pe, cagr) 一次算四个锚:景气延续 30 / 中性减速 25 / 周期重定级上沿 22 / 下沿 18(倍)。四个锚是情景,不是预测:报告必须四个一起给,并写明每个情景对应的裁决数据(例如下游资本开支指引、价格 / 租金温度计、排产月度数据)。30 倍锚三铁律:① 30x 只乘“已锁 / 近锁”的利润(业绩预告、当年在手订单),永不乘远期(T+2)共识来做判断;② 锚跟裁决数据切换:景气延续用 30、减速用 25、重定级用 18–22,切换条件写进裁决点;③ 结论按情景分别表述:“某结论只在 30x 情景成立 / 某结论在 25x 情景也成立”——只描述情景成立条件,不翻译成仓位或买卖建议。历史中枢:本 skill 不给任何公司或行业的 PE 中枢数值;需要“历史位置”一律用 fetch_pe_history 的实测序列经 percentile_rank 得出分位,并写明样本期间。
七、标准产出列(与 SOP §1 valuation 阶段一致) 扣非×4 PE | 前瞻 PE | TTM PE(分位)| ★PEG(扣非×4 ÷ 前瞻 CAGR)| 前瞻 CAGR(机构数 · 区间)| TTM 同比(交叉验证)| 环比(拐点)| 四锚消化年数 | 前瞻 vs TTM 判读。每一格:calculation_id,或“未获取:原因”(走 SOP §2 的结构化缺口),或 not_meaningful(如实写明无意义域:PE ≤ 0 / CAGR ≤ 0 / 样本不足)。
八、周期性成长股校准(周期一转,E 先于 P 变) 高 PE 不一定贵(周期底 E 被压)、低 PE 不一定便宜(周期顶 E 在峰值)——先判断周期位置(行业产能 / 价格 / 下游资本开支),再看 PE。前瞻 CAGR 在周期顶附近系统性偏乐观;用 TTM 同比 + 环比拐点 + 行业月度数据三者一起看“加速还是减速”。报告里的“估值”段必须写清:当前 PE 用的是哪一期单季、季节性方向、前瞻 CAGR 的机构数与区间、判读结论与它成立的前提。
九、常见错误清单(自查) 用归母单季×4 当扣非×4(一次性损益被放大);用单季同比 / 环比做 PEG 分母;只看一致预期均值不看区间和机构数;把逐篇研报预测当一致预期;消化年数只给一个锚,或把远期共识乘 30x;给出价格锚、目标价、“合理市值”;自己换算单位或年化(应交 calc);分位样本 < 20 还报分位。