Valuation Lens Suite (M-003). Short answer: the hub rates it FIT FOR LIMITED USE.
Data as of .
FIT FOR LIMITED USE as context. The lens arithmetic and routing are sound and the split was run the right way round; what it returned is that 0 of 16 primary hurdles predict, and the 2 edge cells are v1's finding relabelled.
Development summary: Honest but nearly empty of evidence: 8 lenses on 10,619 names, and a pre-registered chronological split that lets exactly 2 of 82 lens cells render heat. Inverting a model into a hurdle created no new predictive content.
| Item | Detail |
|---|---|
| Question it answers | Beyond the DCF, what does today's price imply under each of eight valuation lenses — dividend, book, cycle, peers, earnings power, Graham, advantage period, asset floor — versus what the company has delivered? |
| Method | 8 inverted valuation lenses |
| How it works | Each lens inverts price into an implied number; implied − delivered = a Hurdle. Routes get a primary/secondary lens by measured IC; heat renders only where a chronological split earned it. |
| Inputs | Dividends & 5y DPS growth, Book & tangible book, Mid-cycle (7y median) EPS, Peer-relative multiples, M-002 WACC & ROIC |
| Output | Per-lens Implied · Delivered · Hurdle · H %ile, 5 cross-lens columns, one Read |
| Horizon | no forward horizon is claimed by the face; the split test behind the heat uses a 1-year forward window on fiscal-year panels |
| Coverage | 10,619 listed names / 20 markets; lens K excluded on the 7 financial routes by spec, lens F untestable on this panel |
| Markets | US, India, Japan, Korea, Hong Kong, Taiwan, Canada, Singapore, UK, Germany, France, Switzerland, Netherlands, Italy, Spain, Sweden, Denmark, Norway, Poland, Finland |
| Model type | Model · Structural |
| Stage | Production |
| Version | v2, first recorded 2 Sep 2026 |
Training data: 2018-06→2021-06. Test data: 2022-06→2025-06. Out-of-sample design: holdout.
| Measure | Result | Compared with | Note |
|---|---|---|---|
| Split grid | 106 cells, 75 scored | pre-registered before any IC was computed | 22,282 US company-years, fy2017-24, 3,183 symbols, 18 routes; train fy2017-20 / test fy2021-24 |
| Primary-lens hurdles with test-half edge | 0 of 16 | 16 scored primaries | 5 weak · 11 none · 0 investigate |
| Best primary — insurer P/CFO premium | test IC 0.226, t 3.33, +24.6pp/yr | fails BH at q = 0.10 over 75 tests | |
| The two edge cells (lens C, norm_prem) | banks IC 0.228 t 10.23; utilities IC 0.235 t 16.27 | t ≥ 2 and BH q0.10 | monotone transform of P / median-7y-EPS — v1's finding relabelled, not a new one |
| Train-half survivorship | 4 of 5 best train hurdles died | comms 5.85→0.28, banks 3.82→0.59, utilities 1.86→0.84, energy 1.39→0.42 | on the full sample all four would have shipped as evidence |
| Lens coverage (all markets / US) | P 93.0/90.7 · B 84.5/88.5 · C 83.2/71.7 · G 71.1/56.8 · E 68.0/54.1 · D 59.4/42.8 · F 45.5/35.7 · K 32.2/30.2 % | 10,619 rows |
| Metric | Sample / window | Compared with | Value | Range (CI) |
|---|---|---|---|---|
| Cells surviving | holdout FY2021–24 · BH q0.10 | 75 tested | 2 | n/a |
Is the design sound? Routing by business type rather than GICS sector is also right: 'Financials' is 40% banks, 20% BDCs and SPACs, 16% insurance, 13% asset managers and 9% leasing, and one model for all of them is indefensible. The honest conceptual finding is negative: inverting a multiple into a hurdle is, inside a scoring cell, a monotone transform of the multiple itself, so the inversion adds presentation and not information.
Data quality. Coverage is measured per lens and per route and published on the face. It is thin exactly where it matters: K at 32.2% of rows, F at 45.5%, D at 59.4%. dps_g5 is a real DPS CAGR on 5,797 rows with 510 falling back to EPS under a dps_g_basis marker. The validation panel carries five stated proxies (proxies block in split results v2) that bias lens K down on levered names and lens E up on cash-rich ones.
Backtest. Chronological split, pre-registered: 106 cells frozen before scoring, train fy2017-20 / test fy2021-24, 22,282 US company-years, 3,183 symbols, 25-name cell minimum, heat = test-half t ≥ 2 AND BH q = 0.10 over 75 tests. Result: 0 edge · 5 weak · 11 none among the 16 scored primaries; 2 edge cells in the whole grid, both cross-lens norm_prem. bh_pass_normal is reported per record as a sensitivity — five cells pass under it and not under the gate, and all five stay weak.
Against simple benchmarks. v1's own grid is the benchmark and it agrees: one route (banks) survived there, on the pair P/TBV + 7y-normalised P/E, and consensus across models lost 13 routes to 2 against the best single model. The August full-sample study is retained in the JSON as evidence_aug for reference only, and is exactly what the split was built to discount.
Independent replication. The tier counts in this report were re-derived independently from split results v2 (lens_tier: 2 edge · 18 weak · 36 none · 26 untested across 82 cells) and match the document. The claim that norm_prem is a monotone transform of P / median-7y-EPS was verified in the source run at rank ρ = 1.000.
Sensitivity. Four yearly ICs give the test-half t three degrees of freedom, which makes BH over 75 tests punishing; the normal-reference sensitivity is reported rather than substituted. Peer-relative metrics are provably rank-identical to their raw multiple within a cell. growth_share's negative spread is partly a loss-maker-versus-profitable effect: 29.4% of company-years sit clipped at 100 and 99.9% of those are loss-makers.
Monitoring. Per-lens coverage, auto-lens counts (P 2546 · C 2453 · E 1548 · K 1132 · B 888 · G 775 · D 695 · F 473 · none 109) and vdict counts are recomputed every build and are the drift signal. There is no outcome loop, because there is no claimed outcome.
Source: the Model Hub's public model register, as of 6 Nov 2026. The M-003 page in the live Model Hub carries the full development and validation record, monitoring and open decisions. All 30 models and their verdicts.