Updated 2026-07-17 12:29 UTC · 57 tickers · mode: signals
| # | Ticker | Score | Regime | Confidence | Momentum | Kelly | Sector | |
|---|---|---|---|---|---|---|---|---|
| 1 | VLO | 100.0 | risk on | 53% | +0.81 | 10.0% | traditional_energy | |
| 2 | MPC | 96.0 | risk on | 98% | +0.77 | 10.0% | traditional_energy | |
| 3 | PSX | 95.0 | risk on | 72% | +0.76 | 10.0% | traditional_energy | |
| 4 | SHLS | 94.0 | risk on | 97% | +0.74 | 10.0% | solar_wind_storage | |
| 5 | AES | 91.5 | risk on | 99% | +0.72 | 10.0% | solar_wind_storage | |
| 6 | FCEL | 85.2 | risk on | 69% | +0.64 | 10.0% | nuclear_hydrogen | |
| 7 | SEDG | 79.1 | transitional | 99% | +0.65 | 8.4% | solar_wind_storage | |
| 8 | ENPH | 64.9 | risk on | 75% | +0.41 | 10.0% | solar_wind_storage | |
| 9 | BE | 52.3 | risk on | 52% | +0.63 | 2.1% | nuclear_hydrogen | |
| 10 | PR | 47.8 | transitional | 99% | +0.67 | — | traditional_energy | |
| 11 | XLE | 47.7 | risk on | 95% | +0.67 | — | traditional_energy | |
| 12 | CVX | 47.2 | risk on | 96% | +0.67 | — | traditional_energy | |
| 13 | ET | 46.0 | transitional | 99% | +0.63 | 0.5% | traditional_energy | |
| 14 | NEE | 42.1 | transitional | 71% | +0.61 | — | solar_wind_storage | |
| 15 | WMB | 41.7 | risk on | 56% | +0.60 | — | traditional_energy | |
| 16 | KMI | 41.3 | transitional | 78% | +0.60 | — | traditional_energy | |
| 17 | FLNC | 40.8 | risk off | 68% | +0.52 | 1.6% | solar_wind_storage | |
| 18 | EOG | 40.4 | transitional | 100% | +0.59 | — | traditional_energy | |
| 19 | HAL | 38.5 | risk on | 62% | +0.56 | — | traditional_energy | |
| 20 | XOM | 37.9 | risk on | 100% | +0.56 | — | traditional_energy | |
| 21 | FCX | 37.6 | risk on | 90% | +0.55 | — | critical_minerals | |
| 22 | CPER | 36.3 | transitional | 62% | +0.54 | — | critical_minerals | |
| 23 | FANG | 35.0 | transitional | 100% | +0.52 | — | traditional_energy | |
| 24 | SLB | 33.6 | risk on | 51% | +0.51 | — | traditional_energy | |
| 25 | DVN | 33.4 | risk on | 100% | +0.51 | — | traditional_energy | |
| 26 | COP | 33.3 | risk on | 100% | +0.50 | — | traditional_energy | |
| 27 | COPX | 33.2 | risk on | 55% | +0.50 | — | critical_minerals | |
| 28 | OXY | 32.7 | risk off | 95% | +0.50 | — | traditional_energy | |
| 29 | ALB | 31.0 | risk on | 87% | +0.48 | — | critical_minerals | |
| 30 | SQM | 30.0 | risk off | 90% | +0.47 | — | critical_minerals | |
| 31 | REMX | 29.3 | transitional | 96% | +0.46 | — | critical_minerals | |
| 32 | BEP | 29.1 | transitional | 99% | +0.46 | — | solar_wind_storage | |
| 33 | LIT | 28.8 | transitional | 97% | +0.45 | — | critical_minerals | |
| 34 | AA | 28.4 | risk off | 73% | +0.45 | — | critical_minerals | |
| 35 | VALE | 28.3 | risk off | 49% | +0.45 | — | critical_minerals | |
| 36 | PLUG | 28.0 | transitional | 99% | +0.44 | — | nuclear_hydrogen | |
| 37 | FSLR | 27.8 | transitional | 88% | +0.39 | 1.0% | solar_wind_storage | |
| 38 | CCJ | 22.8 | transitional | 100% | +0.38 | — | nuclear_hydrogen | |
| 39 | UUUU | 21.9 | transitional | 89% | +0.37 | — | nuclear_hydrogen | |
| 40 | DNN | 21.3 | risk off | 96% | +0.37 | — | nuclear_hydrogen | |
| 41 | CWEN | 20.5 | risk on | 55% | +0.36 | — | solar_wind_storage | |
| 42 | NEM | 19.8 | risk off | 94% | +0.35 | — | critical_minerals | |
| 43 | UEC | 19.0 | transitional | 64% | +0.34 | — | nuclear_hydrogen | |
| 44 | MP | 18.3 | risk off | 93% | +0.33 | — | critical_minerals | |
| 45 | NXE | 16.9 | transitional | 97% | +0.31 | — | nuclear_hydrogen | |
| 46 | LAC | 15.0 | risk off | 95% | +0.29 | — | critical_minerals | |
| 47 | NLLSF | 14.2 | transitional | 98% | +0.28 | — | nuclear_hydrogen | |
| 48 | BWXT | 13.4 | risk on | 72% | +0.27 | — | nuclear_hydrogen | |
| 49 | RUN | 11.8 | transitional | 97% | +0.26 | — | solar_wind_storage | |
| 50 | CEG | 7.8 | risk on | 99% | +0.21 | — | nuclear_hydrogen | |
| 51 | VST | 7.1 | risk off | 100% | +0.20 | — | nuclear_hydrogen | |
| 52 | ARRY | 5.2 | risk off | 76% | +0.18 | — | solar_wind_storage | |
| 53 | HYSR | 5.1 | transitional | 79% | +0.18 | — | nuclear_hydrogen | |
| 54 | NMG | 4.1 | risk off | 97% | +0.17 | — | critical_minerals | |
| 55 | OKLO | 2.0 | risk off | 95% | +0.14 | — | nuclear_hydrogen | |
| 56 | STEM | 0.9 | risk off | 99% | +0.13 | — | solar_wind_storage | |
| 57 | SMR | 0.0 | transitional | 92% | +0.12 | — | nuclear_hydrogen |
Each stock receives a Composite Score (0–100) combining two independent analytical engines. Higher score = stronger combined signal. The score is relative — it ranks stocks against each other, not against an absolute threshold.
DCF valuation, relative multiples (EV/EBITDA, P/E, P/FCF), scenario analysis, and margin of safety. Answers: is this stock cheap relative to its intrinsic value? Runs weekly. Currently uses FMP key ratios; full DCF coming soon.
Hidden Markov Model regime detection, cross-sectional momentum, trend alignment, RSI, and Kelly-based position sizing. Answers: is the market currently rewarding buyers of this stock? Runs daily Mon–Fri.
Weighted average of the Damodaran fundamental score and the Lo Adaptive signals score, normalized to 0–100. Currently 50/50 weighted. A score of 75+ indicates strong alignment across both engines. Scores are cross-sectional — a stock ranked #1 at 75 is the best in the universe today, not an absolute buy signal.
The current market state for this stock as detected by a Gaussian Hidden Markov Model (HMM) fitted on 2 years of daily log-returns and volume. The HMM identifies 3 latent states and labels them post-hoc by their return distribution:
Important: Regime is per-stock, not market-wide. A stock can be risk on during a broad market selloff if it is rotating into favor (e.g. defensive energy names during equity drawdowns).
The posterior probability that the HMM assigns to the current regime state — how certain the model is about its regime classification. A regime label with <60% confidence is unreliable; treat it as transitional regardless of the label. High score + high confidence is the strongest combined signal. High score + low confidence (e.g. REMX at 42%) warrants caution even if the label says risk on.
A composite of three signals, weighted 50/30/20:
Yes — but treat it as a relative conviction signal, not a literal portfolio weight.
The Kelly Criterion (J.L. Kelly, 1956) is the mathematically
optimal fraction of capital to bet on a wager with known odds and win probability, maximizing
long-run geometric growth. Formula: f* = p/|loss| − q/gain
Here it is applied to stocks using:
Three practical adjustments are applied:
A Kelly of 0% means the raw Kelly formula returned zero or negative — the stock's return/risk profile doesn't justify a position at current prices even before regime adjustment. This is common for high-volatility names with inconsistent returns (UUUU, UEC, FLNC). High momentum + zero Kelly = interesting name but wait for a better entry.
The ranking is a screen, not a trade signal. Use it to narrow the universe, then apply your own fundamental research to top-ranked names.
| Signal combination | Interpretation |
|---|---|
| Score >65 + Risk On + Kelly >5% | Strongest signal — trend, regime, and sizing all aligned |
| Score >65 + Risk On + Kelly = 0% | High momentum, but volatility too high for Kelly to size — watch for consolidation entry |
| Score >55 + Transitional | Regime shifting — reduce size, wait for risk on confirmation |
| Any score + Risk Off | Avoid new positions; if held, review stop-loss levels |
| Score <35 | Underperforming peers on momentum — consider underweighting vs. sector benchmark |
Damodaran (2012) Investment Valuation · Lo (2004) The Adaptive Markets Hypothesis · Kelly (1956) A New Interpretation of Information Rate · Jegadeesh & Titman (1993) Returns to Buying Winners and Selling Losers