The conviction score is the primary decision signal. It blends earnings quality, thematic positioning, valuation attractiveness, and catalyst credibility into a single number with a buy/hold/sell label.
| Dimension | Default Weight | Focus |
|---|---|---|
| Fundamental | 25% | Earnings quality, estimate direction, financial health |
| Thematic | 25% | AI resilience, theme momentum, peer standing |
| Valuation | 25% | Relative P/E, leverage ratios, PE momentum |
| Catalyst | 25% | Thesis conviction, analyst momentum, consistency |
Measures earnings quality, estimate direction, and overall financial health. Simple average of available components.
| Component | Formula | Scale |
|---|---|---|
| Beat Rate | EPS beats in last 4 quarters / 4 * 100 | 0 = never beat, 100 = always beat |
| Surprise Quality | 50 + avg_surprise * 5 |
+10% avg surprise = 100, 0% = 50, -10% = 0 |
| Sentiment | (avg_sentiment + 1) * 50 |
Score -1..+1 mapped to 0..100 |
| Estimate Trajectory | 50 + revision_pct * 10 |
+5% NTM revision = 100, -5% = 0 |
| Guidance | Most recent guidance direction | Raised = 80, Maintained = 50, Lowered = 20 |
| Financial Strength | Composite signal (see Financial Strength) | 0–100 from snapshot + trends |
Measures structural positioning: AI exposure, theme health, and competitive standing.
| Component | Source | Details |
|---|---|---|
| AI Resilience | AI Resilience composite | 5-dimension LLM-scored, weighted composite (0–100) |
| Theme Health | theme_momentum table | 50 + accel_ratio - decay_ratioMeasures % of themes accelerating vs decaying |
| Peer Standing | peer_rankings table | Percentile composite across earnings quality, AI exposure, valuation, momentum |
Lower valuations = higher scores. Uses TTM (trailing twelve month) aggregates for flow-based metrics and sector-aware leverage thresholds.
| Component | Formula | Thresholds |
|---|---|---|
| PE Percentile | % of peer group with higher forward P/E | Cheapest in group = 100 |
| PEG Ratio | (3 - PEG) / 2 * 100 |
PEG 1 = 100, PEG 3 = 0 |
| Price Strength | price / 52w_high * 100 |
Near highs = high momentum |
| Net Debt / TTM OCF | (cap - ratio) / cap * 100 |
Utilities/Energy/Industrials: cap=15x Others: cap=10x |
| EV / TTM FCF | (cap - ratio) / (cap - 15) * 100 |
Utilities/Energy/Industrials: cap=80x Others: cap=60x |
| PE Momentum | Velocity + acceleration from PE snapshots | Compressing PE = high score, expanding = low. See Signals |
Capital-intensive sectors (Utilities, Energy, Industrials) get wider thresholds for ND/OCF and EV/FCF because structural leverage is normal in those businesses. A utility at 9x ND/OCF isn't distressed—it's a regulated asset base financed at utility-grade rates.
Measures forward-looking conviction quality, analyst sentiment, and thesis coherence.
The raw LLM conviction score (0–10) is stretched and penalty-adjusted:
| Component | Formula | Details |
|---|---|---|
| Rating Momentum | 50 + net_upgrades * 5 |
+10 net upgrades = 100, -10 = 0 |
| Thesis Consistency | 100 minus penalties | Deducts for: estimate vs conviction mismatch, price vs scenarios, peer rank divergence, thesis age. See Signals |
Applies only to software-adjacent companies where either revenue_catalyst or pricing_resilience < 70:
| Tier | Trigger | Effect |
|---|---|---|
| Existential | Both AI dims < 50 | Up to 20pt penalty; hard cap at 55 unless growth evidence is strong |
| Prove It | Either AI dim 50–69 | Up to 12pt penalty scaled by vulnerability and growth proof deficit |
| Label | Score Range |
|---|---|
| Strong Buy | ≥80 |
| Buy | ≥65 |
| Hold | ≥50 |
| Underweight | ≥35 |
| Sell | <35 |