Undervalued small cap stocks that pass both Graham and machine learning

Find stocks trading 30% below Benjamin Graham's intrinsic value, filtered by market cap ($250M–$10B), analyst coverage, and a 93-feature ML ensemble. Snapshots stored append-only.

Benjamin Graham meets machine learning

StoQuant combines the Benjamin Graham intrinsic-value formula (V = EPS × (8.5 + 2g)) with a 93-feature machine-learning ensemble to identify small-cap stocks trading at least 30% below their fair value. We filter for tight financial metrics (P/E < 15, P/B < 1.5, PEG < 1.0, D/E < 0.5) and analyst coverage gaps (< 8 covering analysts). The result is a curated list of "hidden gems" — names that Wall Street has missed. Every stock in the gem screener is tracked daily and its forward returns are published on the Proof page.

How it works

  1. Calculate Benjamin Graham intrinsic value — For each stock, compute V = EPS × (8.5 + 2g), where g is the long-term growth rate (capped at 15%, calibrated to current AAA bond yields). Only stocks trading at least 30% below V are eligible.
  2. Apply financial health filters — P/E < 15, P/B < 1.5, PEG < 1.0, Debt-to-Equity < 0.5, Current Ratio > 1.5, and market cap $250M–$10B. Fewer than 8 analysts covering.
  3. Rank by ML and fundamentals — Blend a 93-feature ML ensemble (LightGBM + CatBoost + XGBoost) with fundamental scores to produce a 0–100 Q-Score. Daily snapshots are stored append-only for out-of-sample tracking.

Related on StoQuant

Learn the formulas: Benjamin Graham Formula (stoquant.com/learn/benjamin-graham-formula) and Margin of Safety (stoquant.com/learn/margin-of-safety). See today's picks at Today's Hidden Gems (stoquant.com/today/hidden-gems). Compare approach: StoQuant vs Simply Wall St (stoquant.com/compare/simply-wall-st).

FAQ

What is the Benjamin Graham formula?

An intrinsic-value formula from Graham (1962): V = EPS × (8.5 + 2g). The 8.5 is the baseline P/E for a no-growth stock; 2g adds value for growth. StoQuant caps g at 15% and adjusts for current bond yields.

Why 30% margin of safety?

Graham recommended buying stocks at least 30% below intrinsic value to protect against valuation errors and market downturns. StoQuant enforces this threshold on all hidden-gem picks.

How does ML improve on Graham's filters alone?

Graham's formula captures static valuation; ML layers in momentum, sentiment, technicals, earnings quality, and regime signals. The ensemble reduces false positives and captures mean reversion faster than valuation alone.

How many stocks are in the hidden-gems list?

Currently 30–100 stocks at any given time, depending on market conditions and valuation dispersion. All are tracked daily; the Proof page shows realized forward returns by quintile.