8ab676f18c
一、tools/terminal_value.py 新增 audit 子命令
把三条纪律从"文档里的提醒"变成程序判定的【准出】/【打回】(退出码 0/1):
C1 币种一致性 — r 落在别的币种区间、或基准档 g 超过本币上限即打回。
内置护栏:CNY r∈[6%,9%] g≤2% Rf=1.70%;USD/HKD r∈[9%,11.5%] g≤4% Rf=4.70%。
两个币种 r 区间差的3个百分点全部是国债利差,不含风险判断差异。
乐观档按设计是基准+1pct,故额外放宽1pct。
C2 分母宽度 — 任一档 r-g < 5pct 即打回,≤0 判模型失效。
确需做上行/下行情景可加 --upside-only 显式声明,但报告须写明"是情景不是估值"。
C3 离散风险归属 — 风险归属写成 折现率/r/beta 一律打回;未建模仅警告但须进"限制"章节。
β 偏离 1.0 必须给 --beta-justification。
二、skills/investment-research.md 第七步新增"长期折现估值(十年尺度)"
四步流程:定输入(r/ROIC/g 三张判断表 + 常见错误)→ audit 准出 → 出数 → 报告必写四件事。
明确终值倍数只有永续增长模型一个合法来源,不许用同业类比(循环论证)。
明确 g 不随 r 变:g 是对终值年后经济的判断,r 是要求回报,做敏感性时只动 r。
三、准出流程新增 Step 4 估值口径复检
第七步的 audit 在算数之前,而写报告时常回头调 g 或 r——准出前最后一次 audit
才是对报告负责的那一次。退出码 1 即打回。