Every name below passed four explicit gates for its lens — each gate is shown with the actual number vs the threshold. The screen finds candidates; it does not make the case. For any single name, run the full analysis before you form a view.
High-quality companies in a real drawdown that has stopped getting worse. Ranked by recovery score (quality + stabilization, not depth of fall).
Drawdown = fall from the 52-week high (how cheap) · Off low = bounce off the 52-week low (has it stopped falling) · Quality = 0-1 composite of six fundamentals checks (ROE, margins, cash flow…)
| # | Ticker | Score | Quality | Off low | Drawdown |
|---|---|---|---|---|---|
| 02 | NOW | 90 | 1.0 | +69% | -26% ▸ |
|
Dip that stopped digging: real +26% drawdown with quality 1.0, +69% off the 52-week low, holding the 50DMA. ✓
Real drawdown-26% vs -20% required ✓
Off the low+69% off 52w low (min +8%) ✓
Stabilizingabove 50DMA ✓
Quality bar1.00 vs 0.50 required | |||||
| 03 | ACN | 90 | 1.0 | +73% | -26% ▸ |
|
Dip that stopped digging: real +26% drawdown with quality 1.0, +73% off the 52-week low, holding the 50DMA. ✓
Real drawdown-26% vs -20% required ✓
Off the low+73% off 52w low (min +8%) ✓
Stabilizingabove 50DMA ✓
Quality bar1.00 vs 0.50 required | |||||
| 04 | QCOM | 87 | 1.0 | +41% | -31% ▸ |
|
Dip that stopped digging: real +31% drawdown with quality 1.0, +41% off the 52-week low, holding the 50DMA. ✓
Real drawdown-31% vs -20% required ✓
Off the low+41% off 52w low (min +8%) ✓
Stabilizingabove 50DMA ✓
Quality bar1.00 vs 0.50 required | |||||
| 05 | KLAC | 81 | 0.6667 | +93% | -37% ▸ |
|
Dip that stopped digging: real +37% drawdown with quality 0.6667, +93% off the 52-week low, holding the 50DMA. ✓
Real drawdown-37% vs -20% required ✓
Off the low+93% off 52w low (min +8%) ✓
Stabilizingabove 50DMA ✓
Quality bar0.67 vs 0.50 required | |||||
| 06 | ISRG | 78 | 1.0 | +29% | -28% ▸ |
|
Dip that stopped digging: real +28% drawdown with quality 1.0, +29% off the 52-week low, holding the 50DMA. ✓
Real drawdown-28% vs -20% required ✓
Off the low+29% off 52w low (min +8%) ✓
Stabilizingabove 50DMA ✓
Quality bar1.00 vs 0.50 required | |||||
| 07 | PYPL | 75 | 1.0 | +43% | -23% ▸ |
|
Dip that stopped digging: real +23% drawdown with quality 1.0, +43% off the 52-week low, last month stabilizing. ✓
Real drawdown-23% vs -20% required ✓
Off the low+43% off 52w low (min +8%) ✓
Stabilizing1M +4% (needs > -2%) ✓
Quality bar1.00 vs 0.50 required | |||||
| 08 | ZTS | 75 | 1.0 | +9% | -49% ▸ |
|
Dip that stopped digging: real +49% drawdown with quality 1.0, +9% off the 52-week low, holding the 50DMA. ✓
Real drawdown-49% vs -20% required ✓
Off the low+9% off 52w low (min +8%) ✓
Stabilizingabove 50DMA ✓
Quality bar1.00 vs 0.50 required | |||||
| 09 | LRCX | 75 | 0.8333 | +136% | -29% ▸ |
|
Dip that stopped digging: real +29% drawdown with quality 0.8333, +136% off the 52-week low, last month stabilizing. ✓
Real drawdown-29% vs -20% required ✓
Off the low+136% off 52w low (min +8%) ✓
Stabilizing1M +4% (needs > -2%) ✓
Quality bar0.83 vs 0.50 required | |||||
| 10 | TSLA | 62 | 0.6667 | +27% | -23% ▸ |
|
Dip that stopped digging: real +23% drawdown with quality 0.6667, +27% off the 52-week low, holding the 50DMA. ✓
Real drawdown-23% vs -20% required ✓
Off the low+27% off 52w low (min +8%) ✓
Stabilizingabove 50DMA ✓
Quality bar0.67 vs 0.50 required | |||||
| 11 | ABT | 57 | 0.8333 | +23% | -24% ▸ |
|
Dip that stopped digging: real +24% drawdown with quality 0.8333, +23% off the 52-week low, last month stabilizing. ✓
Real drawdown-24% vs -20% required ✓
Off the low+23% off 52w low (min +8%) ✓
Stabilizing1M -0% (needs > -2%) ✓
Quality bar0.83 vs 0.50 required | |||||
| 12 | UBER | 56 | 1.0 | +8% | -28% ▸ |
|
Dip that stopped digging: real +28% drawdown with quality 1.0, +8% off the 52-week low, last month stabilizing. ✓
Real drawdown-28% vs -20% required ✓
Off the low+8% off 52w low (min +8%) ✓
Stabilizing1M -0% (needs > -2%) ✓
Quality bar1.00 vs 0.50 required | |||||
| 13 | SPGI | 55 | 1.0 | +12% | -20% ▸ |
|
Dip that stopped digging: real +20% drawdown with quality 1.0, +12% off the 52-week low, last month stabilizing. ✓
Real drawdown-20% vs -20% required ✓
Off the low+11% off 52w low (min +8%) ✓
Stabilizing1M +0% (needs > -2%) ✓
Quality bar1.00 vs 0.50 required | |||||
Companies in a persistent uptrend — above the 200-day average, near the 52-week high. Ranked by volatility-adjusted 12-1 momentum.
12-1 Mom = return over the last 12 months, skipping the most recent month (short-term noise) · vs High = distance below the 52-week high · Quality = 0-1 composite of six fundamentals checks
| # | Ticker | Score | Quality | 12-1 Mom | vs High |
|---|---|---|---|---|---|
| 02 | JNJ | 195 | 0.8333 | +40% | -5% ▸ |
|
Persistent strength: +40% 12-1 momentum, above its 200DMA, only +5% from the 52-week high. ✓
Uptrend intactabove 200DMA ✓
Near the high-5% vs high (max -10%) ✓
12-1 momentum+40% skipping the last month ✓
Not breaking down1M -1% (needs > -3%) | |||||
| 03 | COP | 181 | 1.0 | +56% | -3% ▸ |
|
Persistent strength: +56% 12-1 momentum, above its 200DMA, only +3% from the 52-week high. ✓
Uptrend intactabove 200DMA ✓
Near the high-3% vs high (max -10%) ✓
12-1 momentum+56% skipping the last month ✓
Not breaking down1M +0% (needs > -3%) | |||||
| 04 | AMD | 180 | 0.8333 | +130% | -8% ▸ |
|
Persistent strength: +130% 12-1 momentum, above its 200DMA, only +8% from the 52-week high. ✓
Uptrend intactabove 200DMA ✓
Near the high-8% vs high (max -10%) ✓
12-1 momentum+130% skipping the last month ✓
Not breaking down1M +15% (needs > -3%) | |||||
| 05 | XOM | 170 | 0.6667 | +49% | +0% ▸ |
|
Persistent strength: +49% 12-1 momentum, above its 200DMA, only +0% from the 52-week high. ✓
Uptrend intactabove 200DMA ✓
Near the high-0% vs high (max -10%) ✓
12-1 momentum+49% skipping the last month ✓
Not breaking down1M +4% (needs > -3%) | |||||
| 06 | CVX | 169 | 0.8333 | +42% | -1% ▸ |
|
Persistent strength: +42% 12-1 momentum, above its 200DMA, only +1% from the 52-week high. ✓
Uptrend intactabove 200DMA ✓
Near the high-1% vs high (max -10%) ✓
12-1 momentum+42% skipping the last month ✓
Not breaking down1M +0% (needs > -3%) | |||||
| 07 | KO | 166 | 0.8333 | +33% | -2% ▸ |
|
Persistent strength: +33% 12-1 momentum, above its 200DMA, only +2% from the 52-week high. ✓
Uptrend intactabove 200DMA ✓
Near the high-2% vs high (max -10%) ✓
12-1 momentum+33% skipping the last month ✓
Not breaking down1M +2% (needs > -3%) | |||||
| 08 | ADI | 158 | 0.8333 | +60% | -9% ▸ |
|
Persistent strength: +60% 12-1 momentum, above its 200DMA, only +9% from the 52-week high. ✓
Uptrend intactabove 200DMA ✓
Near the high-9% vs high (max -10%) ✓
12-1 momentum+60% skipping the last month ✓
Not breaking down1M +7% (needs > -3%) | |||||
| 09 | PANW | 156 | 0.8333 | +79% | -4% ▸ |
|
Persistent strength: +79% 12-1 momentum, above its 200DMA, only +4% from the 52-week high. ✓
Uptrend intactabove 200DMA ✓
Near the high-4% vs high (max -10%) ✓
12-1 momentum+79% skipping the last month ✓
Not breaking down1M +22% (needs > -3%) | |||||
| 10 | CRWD | 140 | 0.5 | +91% | -6% ▸ |
|
Persistent strength: +91% 12-1 momentum, above its 200DMA, only +6% from the 52-week high. ✓
Uptrend intactabove 200DMA ✓
Near the high-6% vs high (max -10%) ✓
12-1 momentum+91% skipping the last month ✓
Not breaking down1M +27% (needs > -3%) | |||||
| 11 | AAPL | 138 | 0.8333 | +36% | -0% ▸ |
|
Persistent strength: +36% 12-1 momentum, above its 200DMA, only +0% from the 52-week high. ✓
Uptrend intactabove 200DMA ✓
Near the high-0% vs high (max -10%) ✓
12-1 momentum+36% skipping the last month ✓
Not breaking down1M +3% (needs > -3%) | |||||
| 12 | EOG | 129 | 1.0 | +37% | -2% ▸ |
|
Persistent strength: +37% 12-1 momentum, above its 200DMA, only +2% from the 52-week high. ✓
Uptrend intactabove 200DMA ✓
Near the high-2% vs high (max -10%) ✓
12-1 momentum+37% skipping the last month ✓
Not breaking down1M +2% (needs > -3%) | |||||
| 13 | TSM | 122 | 1.0 | +49% | -9% ▸ |
|
Persistent strength: +49% 12-1 momentum, above its 200DMA, only +9% from the 52-week high. ✓
Uptrend intactabove 200DMA ✓
Near the high-9% vs high (max -10%) ✓
12-1 momentum+49% skipping the last month ✓
Not breaking down1M +3% (needs > -3%) | |||||
| 14 | UNP | 117 | 1.0 | +26% | -9% ▸ |
|
Persistent strength: +26% 12-1 momentum, above its 200DMA, only +9% from the 52-week high. ✓
Uptrend intactabove 200DMA ✓
Near the high-9% vs high (max -10%) ✓
12-1 momentum+26% skipping the last month ✓
Not breaking down1M -1% (needs > -3%) | |||||
| 15 | CB | 105 | 1.0 | +21% | -5% ▸ |
|
Persistent strength: +21% 12-1 momentum, above its 200DMA, only +5% from the 52-week high. ✓
Uptrend intactabove 200DMA ✓
Near the high-5% vs high (max -10%) ✓
12-1 momentum+21% skipping the last month ✓
Not breaking down1M +2% (needs > -3%) | |||||
| 16 | AMGN | 102 | 0.8333 | +31% | -6% ▸ |
|
Persistent strength: +31% 12-1 momentum, above its 200DMA, only +6% from the 52-week high. ✓
Uptrend intactabove 200DMA ✓
Near the high-6% vs high (max -10%) ✓
12-1 momentum+31% skipping the last month ✓
Not breaking down1M +11% (needs > -3%) | |||||
| 17 | LLY | 101 | 0.8333 | +37% | -8% ▸ |
|
Persistent strength: +37% 12-1 momentum, above its 200DMA, only +8% from the 52-week high. ✓
Uptrend intactabove 200DMA ✓
Near the high-8% vs high (max -10%) ✓
12-1 momentum+37% skipping the last month ✓
Not breaking down1M +6% (needs > -3%) | |||||
| 18 | VRTX | 92 | 0.8333 | +27% | -9% ▸ |
|
Persistent strength: +27% 12-1 momentum, above its 200DMA, only +9% from the 52-week high. ✓
Uptrend intactabove 200DMA ✓
Near the high-9% vs high (max -10%) ✓
12-1 momentum+27% skipping the last month ✓
Not breaking down1M -2% (needs > -3%) | |||||
| 19 | GILD | 90 | 0.8333 | +25% | -3% ▸ |
|
Persistent strength: +25% 12-1 momentum, above its 200DMA, only +3% from the 52-week high. ✓
Uptrend intactabove 200DMA ✓
Near the high-3% vs high (max -10%) ✓
12-1 momentum+25% skipping the last month ✓
Not breaking down1M +5% (needs > -3%) | |||||
| 20 | PM | 72 | 0.8333 | +21% | +0% ▸ |
|
Persistent strength: +21% 12-1 momentum, above its 200DMA, only +0% from the 52-week high. ✓
Uptrend intactabove 200DMA ✓
Near the high-0% vs high (max -10%) ✓
12-1 momentum+21% skipping the last month ✓
Not breaking down1M +6% (needs > -3%) | |||||
| 21 | EW | 62 | 1.0 | +16% | -9% ▸ |
|
Persistent strength: +16% 12-1 momentum, above its 200DMA, only +9% from the 52-week high. ✓
Uptrend intactabove 200DMA ✓
Near the high-9% vs high (max -10%) ✓
12-1 momentum+16% skipping the last month ✓
Not breaking down1M +2% (needs > -3%) | |||||
| 22 | CL | 57 | 1.0 | +13% | -9% ▸ |
|
Persistent strength: +13% 12-1 momentum, above its 200DMA, only +9% from the 52-week high. ✓
Uptrend intactabove 200DMA ✓
Near the high-9% vs high (max -10%) ✓
12-1 momentum+13% skipping the last month ✓
Not breaking down1M +4% (needs > -3%) | |||||
| 23 | TMO | 55 | 0.8333 | +17% | -3% ▸ |
|
Persistent strength: +17% 12-1 momentum, above its 200DMA, only +3% from the 52-week high. ✓
Uptrend intactabove 200DMA ✓
Near the high-3% vs high (max -10%) ✓
12-1 momentum+17% skipping the last month ✓
Not breaking down1M +9% (needs > -3%) | |||||
| 24 | EMR | 55 | 1.0 | +18% | -1% ▸ |
|
Persistent strength: +18% 12-1 momentum, above its 200DMA, only +1% from the 52-week high. ✓
Uptrend intactabove 200DMA ✓
Near the high-1% vs high (max -10%) ✓
12-1 momentum+18% skipping the last month ✓
Not breaking down1M +7% (needs > -3%) | |||||
| 25 | PFE | 53 | 0.8333 | +12% | -2% ▸ |
|
Persistent strength: +12% 12-1 momentum, above its 200DMA, only +2% from the 52-week high. ✓
Uptrend intactabove 200DMA ✓
Near the high-2% vs high (max -10%) ✓
12-1 momentum+12% skipping the last month ✓
Not breaking down1M +2% (needs > -3%) | |||||
| 26 | ELV | 52 | 0.6667 | +20% | -1% ▸ |
|
Persistent strength: +20% 12-1 momentum, above its 200DMA, only +1% from the 52-week high. ✓
Uptrend intactabove 200DMA ✓
Near the high-1% vs high (max -10%) ✓
12-1 momentum+20% skipping the last month ✓
Not breaking down1M +1% (needs > -3%) | |||||
| 27 | ABBV | 48 | 0.6667 | +14% | +0% ▸ |
|
Persistent strength: +14% 12-1 momentum, above its 200DMA, only +0% from the 52-week high. ✓
Uptrend intactabove 200DMA ✓
Near the high-0% vs high (max -10%) ✓
12-1 momentum+14% skipping the last month ✓
Not breaking down1M +9% (needs > -3%) | |||||
| 28 | AMZN | 47 | 0.8333 | +17% | -9% ▸ |
|
Persistent strength: +17% 12-1 momentum, above its 200DMA, only +9% from the 52-week high. ✓
Uptrend intactabove 200DMA ✓
Near the high-9% vs high (max -10%) ✓
12-1 momentum+17% skipping the last month ✓
Not breaking down1M +1% (needs > -3%) | |||||
| 29 | V | 41 | 1.0 | +9% | +0% ▸ |
|
Persistent strength: +9% 12-1 momentum, above its 200DMA, only +0% from the 52-week high. ✓
Uptrend intactabove 200DMA ✓
Near the high-0% vs high (max -10%) ✓
12-1 momentum+9% skipping the last month ✓
Not breaking down1M +5% (needs > -3%) | |||||
| 30 | ANET | 41 | 1.0 | +22% | -3% ▸ |
|
Persistent strength: +22% 12-1 momentum, above its 200DMA, only +3% from the 52-week high. ✓
Uptrend intactabove 200DMA ✓
Near the high-3% vs high (max -10%) ✓
12-1 momentum+22% skipping the last month ✓
Not breaking down1M +6% (needs > -3%) | |||||
| 31 | NVDA | 38 | 0.8333 | +15% | -5% ▸ |
|
Persistent strength: +15% 12-1 momentum, above its 200DMA, only +5% from the 52-week high. ✓
Uptrend intactabove 200DMA ✓
Near the high-5% vs high (max -10%) ✓
12-1 momentum+15% skipping the last month ✓
Not breaking down1M +4% (needs > -3%) | |||||
| 32 | BRK-B | 32 | 0.6667 | +5% | -2% ▸ |
|
Persistent strength: +5% 12-1 momentum, above its 200DMA, only +2% from the 52-week high. ✓
Uptrend intactabove 200DMA ✓
Near the high-2% vs high (max -10%) ✓
12-1 momentum+5% skipping the last month ✓
Not breaking down1M +1% (needs > -3%) | |||||
| 33 | MO | 22 | 0.8333 | +6% | -4% ▸ |
|
Persistent strength: +6% 12-1 momentum, above its 200DMA, only +4% from the 52-week high. ✓
Uptrend intactabove 200DMA ✓
Near the high-4% vs high (max -10%) ✓
12-1 momentum+6% skipping the last month ✓
Not breaking down1M +4% (needs > -3%) | |||||
| 34 | ETN | 17 | 1.0 | +7% | -7% ▸ |
|
Persistent strength: +7% 12-1 momentum, above its 200DMA, only +7% from the 52-week high. ✓
Uptrend intactabove 200DMA ✓
Near the high-7% vs high (max -10%) ✓
12-1 momentum+7% skipping the last month ✓
Not breaking down1M +0% (needs > -3%) | |||||
| 35 | MA | 13 | 1.0 | +3% | -1% ▸ |
|
Persistent strength: +3% 12-1 momentum, above its 200DMA, only +1% from the 52-week high. ✓
Uptrend intactabove 200DMA ✓
Near the high-1% vs high (max -10%) ✓
12-1 momentum+3% skipping the last month ✓
Not breaking down1M +5% (needs > -3%) | |||||
| 36 | MDLZ | 6 | 0.6667 | +2% | -5% ▸ |
|
Persistent strength: +2% 12-1 momentum, above its 200DMA, only +5% from the 52-week high. ✓
Uptrend intactabove 200DMA ✓
Near the high-5% vs high (max -10%) ✓
12-1 momentum+2% skipping the last month ✓
Not breaking down1M -1% (needs > -3%) | |||||
| 37 | DHR | 1 | 0.8333 | +0% | -9% ▸ |
|
Persistent strength: +0% 12-1 momentum, above its 200DMA, only +9% from the 52-week high. ✓
Uptrend intactabove 200DMA ✓
Near the high-9% vs high (max -10%) ✓
12-1 momentum+0% skipping the last month ✓
Not breaking down1M +11% (needs > -3%) | |||||