Methodology
Theo Capital is designed to make valuation drivers and market expectations explicit. It does not predict prices. It clarifies what must be true for a price to be justified.
All wizards currently support US equities only. Data sourced from Financial Modeling Prep (FMP) and the Federal Reserve Economic Data API (FRED).
DCF Wizard
The DCF Wizard answers three related questions:
- Scenario valuation (DCF): Given your inputs, what enterprise value and equity value are implied today?
- Market expectations (Reverse DCF): What constant FCF growth rate is implied by today's price, under the same discount rate and terminal multiple?
- Expectation regime: Are the market's implied assumptions relatively euphoric, balanced, or pessimistic versus benchmarks?
The model operates on enterprise value and free cash flow.
- fcf0 — baseline free cash flow
- years — explicit forecast horizon
- fcfGrowth — constant annual growth rate
- discountRate — required return
- terminalMultiple — terminal value multiple
- netDebt — net debt
- sharesDiluted — diluted share count
- pricePerShare — current market price
Cash flow projection
Free cash flow is projected using a constant growth rate:
Discounting
Each year's cash flow is discounted at the required return:
Terminal value
At the end of year N, terminal value is computed using a multiple:
Enterprise value
Equity value and value per share
Instead of forecasting value, the Reverse DCF asks:
What growth rate must be true for the current price to be justified?
Market-implied enterprise value
Reverse solution
Holding discountRate, years, and terminalMultiple constant, the model solves for an implied growth rate g* such that:
Solved numerically using a bounded binary search. The result is market-implied FCF growth — not a forecast, but the assumption embedded in the price.
The Expectation Index summarizes how extreme the implied assumptions are relative to benchmarks.
Axes
- Growth: implied FCF growth vs benchmark band
- Duration: explicit horizon vs typical moat length
- Fragility: EV sensitivity to a modest growth miss
Regime classification
- Euphoric — assumptions are demanding
- Balanced — assumptions are broadly typical
- Pessimistic — assumptions are restrained
CROCI Wizard
CROCI (Cash Return on Capital Invested) measures whether a business generates cash returns above or below its cost of capital. Unlike accounting-based ROE or ROIC, CROCI uses operating cash flow and replaces book values with economic estimates of invested capital.
Economic Cash Flow strips out growth CapEx to focus on sustainable cash generation:
If maintenance CapEx is unknown, total CapEx is used as a conservative proxy.
Base invested capital measures the real capital required to run the business:
Optional adjustments
- Goodwill: Include if acquisitions represent real capital employed
- Operating leases: Capitalizes lease liabilities as debt-equivalent capital
- Capitalized R&D: Treats cumulative R&D as an intangible asset
The CROCI result is compared against the weighted average cost of capital:
Verdict classification (±2% band)
- Value creating: Spread > +2% — cash returns comfortably exceed the cost of capital
- Neutral: Spread between −2% and +2% — returns are roughly in line with capital costs
- Value destroying: Spread < −2% — the business does not earn its required return
- Inconclusive: Invested capital is zero, negative, or incomplete
CROCI is a quality filter, not a valuation tool. Use it to:
- Screen for businesses that genuinely create economic value
- Compare capital efficiency across companies or sectors
- Identify value traps (cheap but value-destroying)
After filtering for quality with CROCI, use the DCF Wizard for valuation.
HEDGE Wizard
The HEDGE Wizard generates options-based hedging strategies for an existing stock position. It prices options using the Black-Scholes model and visualizes the hedged payoff at expiry.
- Estimate option premiums from implied volatility
- Compare four hedging strategies side by side
- Visualize the payoff profile of each strategy
- Assess hedge cost relative to position value
Option premiums are estimated using the Black-Scholes model:
Where S = spot price, K = strike, T = time to expiry (years), r = risk-free rate, σ = implied volatility, and N(·) = standard normal CDF.
Four strategies are generated based on your inputs:
Buy an OTM put to cap downside. Full upside preserved. Costs a premium (debit).
Buy a put and sell a call. Low or zero cost but caps upside at the call strike.
Buy a put and sell a lower put. Cheaper than outright put but capped downside protection.
Sell a call against your shares. Generates income but does not protect downside. Caps upside.
The payoff diagram shows profit and loss at expiry across a range of stock prices. Three lines are plotted:
- Stock only: unhedged P&L from the stock position
- Options: P&L from the option legs alone
- Hedged total: combined stock + options P&L
The vertical dashed line marks the current stock price. The horizontal dashed line marks breakeven (zero P&L).
Each strategy receives a verdict based on the hedge cost relative to position value:
- Well hedged: Cost ≤ 1.5% of position value and includes downside protection
- Partially hedged: Cost 1.5–3% or limited protection (e.g. covered call)
- Expensive hedge: Cost > 3% of position value
- No hedge: No meaningful downside protection
Important caveats for the HEDGE Wizard:
- Premiums are theoretical (Black-Scholes). Actual market prices may differ due to supply/demand, skew, and term structure
- Implied volatility is estimated from beta, not from live options chains
- Strategies assume European-style exercise at expiry
- Transaction costs, bid-ask spreads, and assignment risk are not modeled
GROWTH Wizard
The GROWTH Wizard scores a company's financial momentum across revenue, earnings, and margins over three annual periods. It produces a composite momentum score and a verdict classifying the growth trajectory.
- Revenue and EPS compound annual growth rates (2-year CAGR)
- Year-over-year growth acceleration or deceleration
- Gross and operating margin trends
- Free cash flow growth and yield
Revenue CAGR
Year-over-year growth
EPS CAGR
Margin analysis
Free cash flow
The momentum score is a composite of six sub-scores (max 8 points):
- Revenue CAGR: +2 if >15%, +1 if >5%, −1 if <−5%
- Revenue acceleration: +1 if YoY accelerating >3pp, −1 if decelerating >5pp
- EPS CAGR: +2 if >15%, +1 if >5%, −1 if <−5%
- Gross margin delta: +1 if expanding >2pp, −1 if contracting >2pp
- Operating margin delta: +1 if expanding >2pp, −1 if contracting >2pp
- FCF CAGR: +1 if >10%, −1 if <−10%
The momentum score maps to five verdict categories:
- Strong momentum (6+): Revenue, earnings, and margins are all accelerating
- Moderate momentum (3–5): Growth is positive but mixed across metrics
- Flat (0–2): Growth is roughly flat or mixed signals cancel out
- Decelerating (−3 to −1): Growth is slowing or margins are contracting
- Negative momentum (below −3): Revenue, earnings, and margins are broadly declining
Growth momentum is backward-looking. Use it to:
- Quickly assess whether fundamentals are accelerating or decelerating
- Combine with DCF (forward-looking) and CROCI (quality) for a more complete picture
- Identify inflection points in a company's growth trajectory
The score does not predict future performance. A high momentum score today does not guarantee continued growth.
ALPHA Lens
The ALPHA Lens synthesises outputs from the DCF Wizard, GROWTH Wizard, and CROCI Wizard into a single weighted alpha score ranging from -1 to +1, with a positive, neutral, or negative verdict.
- E (expectation): how much growth the market already prices in (from Reverse DCF)
- G (growth): how strong the company's momentum is (from GROWTH Wizard)
- C (capital): whether the company earns above its cost of capital (from CROCI Wizard)
- Implied FCF growth (%): the constant FCF growth rate that justifies today's market price, from the Reverse DCF in the DCF Wizard. Benchmark: 10% is the neutral point.
- Momentum score (-1 to +1): the normalised growth momentum score from the GROWTH Wizard.
- CROCI spread (pp): CROCI minus WACC from the CROCI Wizard — positive means value creation. Benchmark: 10pp yields the max score.
Each input is normalised to a -1 to +1 range:
- E = (impliedGrowth - 10%) / 10% clamped to [-1, +1]
- G = momentumScore clamped to [-1, +1]
- C = crociSpread / 10% clamped to [-1, +1]
Higher growth and capital scores push alpha up, while higher market expectations (E) push it down.
The alpha score maps to three verdicts:
- Positive (≥ +0.25): fundamentals are stronger than what the market price implies
- Neutral (-0.25 to +0.25): market expectations are broadly aligned with fundamentals
- Negative (≤ -0.25): the market price assumes more than fundamentals currently justify
Important caveats:
- The Lens depends entirely on the quality of inputs from the other wizards — garbage in, garbage out
- It does not account for catalysts, management quality, or macro context
- A positive verdict does not guarantee outperformance
- Use alongside the HEDGE Wizard and your own fundamental research
QUANT Score
The QUANT Score is a multi-factor quantitative scoring system that rates a stock from 0 to 100 across five pillars: Value, Quality, Growth, Momentum, and Risk/Stability.
It uses absolute threshold scoring — each metric is scored independently against fixed benchmarks rather than relative to a peer universe. This makes the score deterministic, reproducible, and free from selection bias.
Each pillar aggregates a set of metrics into a 0–100 sub-score using weighted averages:
P/E ratio (35%), EV/EBITDA (35%), FCF Yield (30%). Lower valuations score higher.
ROIC (30%), Operating Margin (20%), Gross Margin (10%), FCF Margin (20%), Debt/EBITDA (20%). Higher profitability and lower leverage score better.
Revenue CAGR (35%), EPS CAGR (45%), FCF CAGR (20%). Based on 3-year average growth rates.
12-month return ex. last month (50%), 6-month return (30%), 1-month return (20%). Measures price trend strength.
Annualised volatility (40%), Max drawdown (40%), Beta (20%). Lower risk scores higher.
Each metric is scored using linear interpolation between a low and high threshold:
For metrics where lower is better (e.g. P/E, volatility), the formula is inverted:
Key thresholds
| Metric | Low | High | Direction |
|---|---|---|---|
| P/E | 10 | 40 | Lower is better |
| EV/EBITDA | 8 | 30 | Lower is better |
| FCF Yield | 0% | 10% | Higher is better |
| ROIC | 0% | 25% | Higher is better |
| Op. Margin | 0% | 30% | Higher is better |
| Gross Margin | 15% | 60% | Higher is better |
| FCF Margin | 0% | 25% | Higher is better |
| Debt/EBITDA | 0.5 | 5.0 | Lower is better |
| Rev. CAGR | -5% | 20% | Higher is better |
| EPS CAGR | -10% | 25% | Higher is better |
| FCF CAGR | -10% | 20% | Higher is better |
| 12m Return (ex-1m) | -20% | 40% | Higher is better |
| 6m Return | -15% | 25% | Higher is better |
| 1m Return | -10% | 10% | Higher is better |
| Volatility (1y) | 15% | 50% | Lower is better |
| Max Drawdown (1y) | 10% | 40% | Lower is better |
| Beta | 0.7 | 2.0 | Lower is better |
The final QUANT Score is a weighted average of the five factor sub-scores:
Quality receives the highest weight because sustainable cash generation is the foundation of long-term value.
Two guardrails are applied to the Growth factor to prevent misleading scores:
- Revenue decline cap: If 3-year revenue CAGR is negative, the Growth factor is capped at 60
- Low-quality growth discount: If EPS CAGR exceeds 25% but Quality is below 45, the Growth factor is reduced by 15%
The composite score maps to five verdict bands:
- Strong Quant Setup (80+): All factors are strong — the stock scores well across valuation, quality, growth, momentum, and risk
- Positive Setup (65–79): Most factors are favourable, with few notable weaknesses
- Neutral (45–64): Mixed signals — strengths in some areas offset by weaknesses in others
- Weak (30–44): Multiple factors are unfavourable
- High Risk / Unattractive (below 30): Broadly weak across all pillars
The score depends on data availability from FMP. A coverage indicator reports how many of the 17 expected metrics were available:
- High (≥ 80% coverage): 14+ metrics available — score is reliable
- Medium (60–79%): 10–13 metrics — score is directionally useful but incomplete
- Low (< 60%): Fewer than 10 metrics — interpret with caution
Missing metrics are excluded from the weighted average rather than imputed, so the factor weights shift dynamically based on what data is available.
Important caveats for the QUANT Score:
- Absolute thresholds are static and do not adapt to sector, size, or market regime
- Growth metrics use 3-year averages, which may lag rapid changes in fundamentals
- Momentum is purely price-based and does not incorporate volume or breadth
- The score is backward-looking and does not predict future performance
- Use alongside the DCF Wizard (forward-looking) and CROCI (capital quality) for a complete picture
MARKET Assessment
The MARKET Assessment is a questionnaire that produces a temperature score from 0 (Ice Cold) to 100 (Hot). It gauges whether the broader market environment feels risk-on or risk-off based on your read of current conditions across 23 questions spanning five groups: Economy, Credit, Behavior, Structure, and Pricing.
An optional assisted mode fetches live US market data from FMP and FRED to generate data-driven suggestions for seven of the 23 questions, each with a confidence level and reasoning. You retain full control — suggestions can be applied or ignored.
Overall economic vitality and forward outlook.
Lender appetite, capital market conditions, capital availability, terms, interest rates, and spreads.
Investor psychology, mood, and willingness to deploy capital.
Asset ownership, seller activity, market participation, fund access, fund formation, and bargaining dynamics.
Recent performance, asset prices, prospective returns, risk levels, popular qualities, and investment style.
Each question accepts one of two answers:
- HOT (+1): Risk-on signal — conditions are heating up
- COLD (-1): Risk-off signal — conditions are cooling down
The raw sum is normalized to a 0–100 scale:
Where sum is the net tally (+1 per HOT, -1 per COLD) and answered is the number of questions completed. Unanswered questions are excluded.
The score maps to five temperature labels and market phases:
- Hot (81–100) / Euphoria: Risk is underpriced, discipline matters most
- Warm (61–80) / Expansion: Optimism rising, forward returns may compress
- Neutral (41–60) / Neutral: Neither greed nor fear dominates
- Cold (21–40) / Contraction: Capital is cautious, selective opportunities emerge
- Ice Cold (0–20) / Distress: Fear dominates, prospective returns typically higher
When enabled, assisted mode fetches a live US market snapshot from FMP and FRED (cached for six hours) containing:
- SPY total returns (3-month, 6-month, 12-month)
- SPY distance to 200-day moving average
- VIX (implied volatility) and 30-day realized volatility
- US 10-year and 2-year Treasury yields (FRED)
- High-yield and investment-grade OAS credit spreads (FRED)
Data-driven hints
Seven of the 23 questions receive a suggested answer with a confidence level (high, medium, or low) and a one-line rationale derived from the snapshot data:
| Question | Signal used |
|---|---|
| Interest rates | US 10Y yield level |
| Credit spreads | HY OAS level |
| Capital markets | SPY 6M return + VIX |
| Recent performance | SPY 12M return |
| Asset prices | SPY vs 200D MA |
| Risk levels | VIX + realized vol |
| Investor sentiment | VIX + SPY distance to 200D MA |
You can apply all suggestions at once (filling only unanswered items) or override any suggestion manually. The remaining 16 questions always require your own judgment.
After submitting, the result screen displays a US Signals panel showing the eight live metrics used by the assisted mode. This panel appears regardless of whether assisted mode was enabled, as long as data is available.
Signals are grouped into four pairs: rates (10Y, 2Y), credit spreads (HY OAS, IG OAS), volatility (VIX, realized vol), and equity momentum (SPY 6M return, SPY vs 200D MA). Each card shows the metric label, current value, and a descriptor (e.g. "Rate", "Implied vol", "Breadth proxy").
Data is cached server-side for six hours to minimize API calls. If either FMP or FRED is unavailable, partial data is still shown with a dash for missing values.
Use the temperature score as a regime overlay:
- Before running stock-level analysis, to set context for how aggressive or conservative your assumptions should be
- To calibrate discount rates and terminal multiples in the DCF Wizard
- To complement the QUANT Score — a high quant score in a hot market may deserve more caution than in a cold one
The assessment is inherently subjective. Two investors can answer differently and both be right — the value is in making your assumptions explicit.
Market Psychology Score
The Market Psychology Score is an automated, data-driven complement to the MARKET Assessment questionnaire. It measures the current level of market fear or complacency using two real-time FRED data streams — volatility and credit stress — and condenses them into a single 0 to 100 score.
Unlike the questionnaire (which is subjective), the Market Psychology Score is fully automated and updates whenever fresh FRED data is available. It appears on the MARKET Assessment result screen alongside the US Signals panel.
Three FRED series are fetched for the current reading and a 10-year lookback window:
- VIXCLS — CBOE Volatility Index (VIX daily close)
- BAMLH0A0HYM2 — ICE BofA US High Yield Option-Adjusted Spread
- BAMLC0A0CM — ICE BofA US Corporate Investment Grade OAS (optional fallback)
If Investment Grade OAS is unavailable, the credit sub-score uses High Yield OAS alone.
Each input is converted to a percentile rank against its own 10-year history:
Volatility sub-score
The VIX percentile is inverted so that low VIX (complacency) scores high and high VIX (fear) scores low:
Credit sub-score
When IG OAS is available, credit stress is measured as the HY-IG spread differential. Otherwise raw HY OAS is used. The percentile is also inverted:
Where CreditRaw = HY OAS − IG OAS (or HY OAS alone if IG is unavailable).
The final Market Psychology Score is an equal-weighted average of the two sub-scores:
Interpretation
- 80–100 (Calm / Complacent): Volatility and credit spreads are historically low — risk may be underpriced
- 60–79 (Relaxed): Conditions are benign but not extreme
- 40–59 (Neutral): Neither fear nor greed dominates
- 20–39 (Anxious): Elevated stress — caution warranted but opportunities may be emerging
- 0–19 (Fear / Panic): VIX and credit spreads are historically high — prospective returns are typically better from these levels
The result panel includes a 12-month sparkline chart showing the daily score over the past year, with separate vol and credit sub-score traces. This helps identify whether current conditions represent a trend or a sudden shift.
The Market Psychology Score endpoint caches results for one hour. All FRED data is fetched in a single batch call covering the full 10-year lookback window.
STOCK Picker
The STOCK Picker screens and scores stocks from a chosen US index universe (S&P 500, NASDAQ 100, or Dow 30) or a custom list of tickers. It combines a proprietary four-pillar Theo scoring model with the QUANT Score engine, applies optional market and cycle overlays, and produces a ranked shortlist with a Theo Fit Score (0-100) for each stock that passes your filters.
It does not recommend buying any stock. It filters and ranks candidates based on quantitative criteria you define.
The STOCK Picker uses a guided 7-step wizard:
- Step 1 — Start: Overview and launch
- Step 2 — Universe: Choose your stock universe (S&P 500, NASDAQ 100, Dow 30, or custom tickers)
- Step 3 — Strategy Profile: Select an investment profile and risk tolerance that controls factor weighting
- Step 4 — Theo Criteria: Set quality filters (min Quant Score, min ROIC, max leverage, FCF requirement, sector exclusions)
- Step 5 — Market Overlay: Optionally enable the MARKET Assessment overlay for regime-aware scoring
- Step 6 — Cycle Overlay: Optionally enable the GICS Cycle Clock overlay with a tilt preference
- Step 7 — Results: Ranked card-based results with drivers, flags, and action links to other wizards
Your chosen profile determines how the four Theo pillars are weighted:
Quality 40%, Strength 25%, Valuation 20%, Momentum 15%. Emphasizes sustainable cash generation and capital efficiency.
Quality 25%, Strength 25%, Valuation 40%, Momentum 10%. Targets undervalued stocks with reasonable fundamentals.
Quality 20%, Strength 20%, Valuation 15%, Momentum 45%. Seeks high-growth companies with strong price trends.
Quality 20%, Strength 30%, Valuation 25%, Momentum 25%. Best paired with the GICS Cycle Clock overlay.
Risk tolerance
An additional risk adjustment scales the base score:
- Conservative: Score multiplied by 0.95 (slight penalty for caution)
- Balanced: No adjustment
- Aggressive: Score multiplied by 1.03 (slight boost)
Each candidate is scored across four proprietary pillars, each producing a 0-1 sub-score:
60% ROIC (scored against 6-18% range) + 40% 3-year FCF consistency (positive = 1, negative = 0). Measures capital efficiency and cash generation reliability.
70% Net Debt/EBITDA (inverted, scored against 1-4x range) + 30% baseline. Measures balance sheet resilience and financial leverage.
Equal-weighted average of three multiples (all inverted — lower is better): Forward P/E (12-35x), EV/EBIT (8-25x), Price/FCF (12-35x).
55% 6-month momentum (-10% to +25% range) + 45% 12-month momentum (-20% to +40% range). Measures price trend strength.
The final Theo Fit Score blends the proprietary Theo base score with the QUANT Score (see QUANT Score methodology above):
The 70/30 weighting ensures the Theo model (which uses profile-specific weights) drives the ranking, while the QUANT Score (which covers 17 metrics across 5 factors) provides a broad quality backstop.
After blending, risk tolerance adjustment, market overlay, and cycle overlay impacts are added:
Stocks must pass all enabled filters to appear in results:
- Minimum Quant Score: Default 70 — only high-scoring stocks pass
- Minimum ROIC: Default 10% — filters for capital-efficient businesses
- Max Net Debt/EBITDA: Default 3x — screens out highly leveraged companies
- Positive FCF consistency: Requires free cash flow to have been positive over the trailing 3-year period
- Sector exclusions: Optionally exclude financials or filter to specific GICS sectors
- Minimum market cap: Optional floor to exclude micro-caps
MARKET Assessment overlay
Derives a market temperature from SPY 6-month returns and VIX level, producing a regime of HOT, NEUTRAL, or COLD. The overlay adjusts each candidate's score individually based on their valuation and leverage characteristics:
- HOT regime: Expensive or levered stocks penalized up to -13 points; cheap and unleveraged stocks get a small +4 boost
- COLD regime: Cheap stocks boosted up to +9 points; leverage still penalized
- NEUTRAL: No adjustment
GICS Cycle Clock overlay
Cross-references each stock's GICS sector against the current cycle phase (EARLY, MID, LATE, or RECESSION). Sectors are classified as ALIGNED, NEUTRAL, or MISALIGNED using the cycle clock model:
- Aligned: +6 base points
- Misaligned: -6 base points
A cycle tilt setting amplifies the overlay:
- Prefer Early: 1.3x multiplier when phase is EARLY
- Prefer Late/Defensive: 1.3x multiplier when phase is LATE or RECESSION
- Avoid Late Cyclicals: 1.5x penalty multiplier for misaligned stocks in LATE/RECESSION
- Neutral: No amplification
Results are presented as ranked cards, each showing:
- Theo Fit Score: Final composite score (0-100) after all adjustments
- Quant Score: The underlying QUANT Score for reference
- Drivers: Up to three key reasons the stock scored well (e.g. "High ROIC", "Strong momentum", "Valuation support")
- Flags: Risk warnings (e.g. leverage concerns, cycle misalignment, expensive multiples in a hot market)
- Actions: Direct links to run ALPHA Lens, DCF, or CROCI analysis on the candidate
The STOCK Picker uses a multi-step data pipeline:
- Universe resolution: All three indices (S&P 500, NASDAQ 100, Dow 30) use curated static constituent lists to minimize API usage
- Candidate enrichment: Tickers are batched in groups of 50 and enriched with profile, ratios, key metrics, and quote data from FMP (stable API) in parallel
- Quant scoring: Each candidate receives a QUANT Score via the batch scoring engine
- Market snapshot: SPY returns and VIX are fetched for regime classification
- Cycle detection: SPY 6-month and 12-month momentum determine the current cycle phase
All FMP calls use centralized retry logic (3 attempts with exponential backoff) and TTL-based memory caching to handle rate limits gracefully.
Important caveats:
- The screener returns up to 30 ranked results per run
- Scoring is backward-looking — both the Theo pillars and QUANT Score use historical data
- Market and cycle overlays are approximate — they derive regime from SPY/VIX, not the full MARKET Assessment questionnaire
- FMP rate limits may cause partial data; the system degrades gracefully with available metrics
- Results are not investment recommendations — always run DCF, CROCI, and ALPHA analysis on individual candidates
TRADING Wizard
The TRADING Wizard is a 5-step execution planning tool that helps you define how you will enter, manage, and exit a position before you trade. It produces a written execution plan and a discipline score.
It does not recommend trades. It structures the rules you will follow once a trade is on.
Inspired by The Art of Execution by Lee Freeman-Shor, which identifies the behavioral patterns that separate winning from losing investors — and shows that how you manage a position matters more than which stock you pick.
The three modes are adapted from the archetypes in The Art of Execution:
Short-duration, high-conviction trades with a hard stop-loss. If it doesn't work quickly, you exit.
You add to losers at predefined thresholds. A patient approach that requires conviction and capital reserves.
Long-term compounding with periodic reviews. Exits are thesis-driven rather than price-driven.
- Execution profile: Choose your mode (Assassin, Hunter, or Connoisseur)
- Position architecture: Define portfolio value, max allocation, initial entry size, and dry-powder reserve
- Losing protocol: Set stop-loss levels, time stops, adding thresholds, and thesis invalidation rules
- Winning protocol: Choose hold-only or a trim ladder with levels and percentages, plus a full exit rule
- Execution plan: Review the generated plan, discipline score, and warnings
The discipline score (0-100) evaluates four areas of the plan:
- Sizing optionality (0-20): Higher when initial entry is well below max position (preserving reserves)
- Loss discipline (0-30): Higher when a clear losing trigger is defined (stop-loss, adding rules, or time stop)
- Thesis clarity (0-15): Higher when the thesis invalidation rule is specific and substantive
- Winner protocol (0-25): Higher with a structured trim ladder vs. hold-only
Verdict classification
- Elite Executor (75+): Plan is well-structured and disciplined
- Disciplined (45-74): Reasonable structure with some gaps
- At Risk (below 45): Plan lacks critical execution guardrails
Use this tool after completing your analysis (DCF, CROCI, GROWTH, ALPHA) and before entering any trade. It forces you to:
- Pre-commit to position sizing and risk limits
- Define what you will do when losing (the hardest decision in trading)
- Avoid the "Rabbit" trap — doing nothing when a position moves against you
GICS Cycle Clock
The GICS Cycle Clock scores all 11 US GICS sectors from 0 to 100 and classifies each into a cycle phase. It combines fundamental and market data to identify which sectors are accelerating or decelerating.
Each sector is mapped to its corresponding SPDR ETF (XLK, XLF, XLE, etc.) for market data.
Each sector is scored across five groups using z-score-like normalization:
Revenue year-over-year growth. Scaled against a -20% to +25% range.
Change in gross margin (60% weight) and EBITDA margin (40% weight). Measures profitability direction.
Inventory year-over-year growth (inverted — rising inventories signal caution). Weight varies by sector relevance.
Capital expenditure growth, adjusted for capex intensity change. Rising capex with rising intensity is penalized.
6-month momentum (55%), 12-month momentum (25%), and drawdown from 52-week high (45% penalty). ETF-based.
Group scores are combined using weighted averages into a single cycle score (0-100). The score maps to four phases:
- Late (71-100): Strong fundamentals and momentum — cycle is mature
- Mid (46-70): Growth is ongoing but not at peak acceleration
- Early (26-45): Early signs of recovery or stabilization
- Downturn (0-25): Fundamentals and market are both weak
Trend classification
- Improving: 6-month momentum is positive and above the 12-month trend
- Flat: Mixed signals — neither clearly improving nor deteriorating
- Deteriorating: 6-month momentum is negative
Use the cycle clock as a top-down overlay:
- Before stock-level analysis, to identify which sectors have fundamental tailwinds
- To time sector rotation or tilt portfolio exposure toward accelerating sectors
- To pair with the MARKET Assessment for a full macro-to-sector view
ALPHA Journey
The ALPHA Journey is a guided multi-step workflow that orchestrates the individual wizards into a coherent analysis sequence for a single stock. It walks you through expectations, momentum, capital quality, and arrives at a final Alpha Lens verdict.
- Step 1 — Expectations: Run the DCF Wizard to assess what growth the market prices in (Reverse DCF) and how demanding those assumptions are (Expectation Index)
- Step 2 — Momentum: Run the GROWTH Wizard to score revenue, earnings, and margin trajectory
- Step 3 — Capital: Run the CROCI Wizard to evaluate whether the business earns above its cost of capital
- Step 4 — Alpha Verdict: Synthesize all three outputs in the ALPHA Lens for a weighted score and final verdict
Use the ALPHA Journey when you want a structured end-to-end analysis for a stock rather than running wizards individually. It ensures you cover all angles — expectations, momentum, and capital quality — before forming a view.
The journey does not add new calculations. It sequences the existing wizards in the recommended order and passes outputs forward automatically.
Theo Score
The Theo Score is the unified verdict engine that integrates outputs from the DCF Wizard, QUANT Score, and MARKET Assessment into a single 0 to 100 score with an actionable verdict: Attractive, Interesting, Neutral, or Avoid.
It answers one question: given your valuation, the company's quantitative profile, and the current market regime, should you look more closely or move on?
The score is built from five additive blocks (max 100 points before risk penalty):
How much the stock trades below your DCF fair value, scaled against a cycle-adjusted margin-of-safety bar. The required margin of safety rises with market temperature.
The Quality factor sub-score from the QUANT Score engine (ROIC, margins, FCF margin, leverage). Scaled by QUANT data coverage confidence.
The overall QUANT composite score, providing a broad multi-factor quality and momentum baseline. Scaled by data coverage confidence.
How well the stock's valuation discount and quality fit the current market stance (defensive, neutral, or aggressive). Scaled by temperature confidence and cycle confidence.
Deducted for leverage, weak interest coverage, high volatility, large drawdowns, high beta, or dilution risk.
The required margin of safety scales linearly with market temperature:
In a cold market (temp 0), you need only a 15% discount from fair value to score full marks on the value block. In a hot market (temp 100), you need a 60% discount.
MOS score
This ratio determines how much of the 35-point value block you earn.
The market temperature determines the scoring stance:
- Defensive (temp ≥ 70): Demands bigger discounts and stronger businesses. Cycle fit = 60% valuation + 40% quality.
- Neutral (temp 31–69): Balances discount and quality. Cycle fit = 65% valuation + 35% quality.
- Aggressive (temp ≤ 30): Prioritizes mispricing when others are fearful. Cycle fit = 70% valuation + 30% quality.
Penalties are cumulative (max 10 combined):
| Risk factor | Threshold | Penalty |
|---|---|---|
| Net Debt / EBITDA | > 5x | −6 |
| Net Debt / EBITDA | > 3x | −3 |
| Net Debt / EBITDA | > 2x | −1 |
| Interest Coverage | < 1.5x | −3 |
| Interest Coverage | < 3x | −2 |
| Interest Coverage | < 5x | −1 |
| Max Drawdown (1Y) | > 35% | −2 |
| Max Drawdown (1Y) | > 25% | −1 |
| Volatility (1Y) | > 50% | −2 |
| Volatility (1Y) | > 40% | −1 |
| Beta | > 1.6 | −2 |
| Beta | > 1.3 | −1 |
| Dilution risk flag | Set | −2 |
The verdict considers both the composite score and how fully the margin-of-safety bar is cleared:
- Attractive: TheoScore ≥ 75 and MOS score ≥ 1.0 (full bar cleared)
- Interesting: TheoScore ≥ 60 and MOS score ≥ 0.8
- Neutral: TheoScore ≥ 45 and MOS score ≥ 0.5
- Avoid: Below the Neutral thresholds
The verdict requires both a strong composite score and sufficient valuation discount. A high-quality stock at an expensive price will not score "Attractive" because the MOS bar will not be met.
Each block is scaled by the confidence of its input data:
- Valuation confidence: Scales the value block (default 0.8 if not explicit)
- QUANT coverage: Scales quality and strength blocks — High = 0.9, Medium = 0.75, Low = 0.6
- Temperature confidence: Scales the cycle fit block (default 0.7)
- Cycle confidence: Further scales the cycle fit block (default 0.6)
This means a stock with incomplete data earns fewer points per block, making the system naturally conservative when inputs are uncertain.
The Theo Score is the final step after running the individual wizards. Use it to:
- Consolidate your DCF valuation, QUANT profile, and market regime into one number
- Compare opportunities on a like-for-like basis after running full analysis
- Decide whether to proceed to the TRADING Wizard for execution planning
The score is only as good as its inputs. A DCF with optimistic assumptions will produce a misleading Theo Score. Always sanity-check your valuation before relying on the unified verdict.
General
Financial Modeling Prep (FMP)
Primary data provider for company fundamentals, income statements, balance sheets, cash flow statements, real-time quotes, historical price series, and key ratios. All stock-level wizards (DCF, CROCI, GROWTH, HEDGE, QUANT, GICS Cycle) use FMP for auto-filling inputs.
Market data including SPY and VIX historical prices, 200-day moving averages, and sector ETF price histories are also sourced from FMP.
Federal Reserve Economic Data (FRED)
The FRED API (Federal Reserve Bank of St. Louis) provides macroeconomic and fixed-income data used in the MARKET Assessment assisted mode and the Market Psychology Score:
- DGS10 — US 10-Year Treasury Constant Maturity Rate
- DGS2 — US 2-Year Treasury Constant Maturity Rate
- VIXCLS — CBOE Volatility Index (used by Market Psychology Score)
- BAMLH0A0HYM2 — ICE BofA US High Yield Option-Adjusted Spread
- BAMLC0A0CM — ICE BofA US Corporate Investment Grade OAS
FRED data is cached server-side for six hours. If the FRED API is unavailable, partial data is shown with dashes for missing values.
Coverage
All wizards currently support US equities only. Data reflects the latest available annual filing, trailing-twelve-month figures, or real-time quote depending on the endpoint.
To minimize external API calls and improve responsiveness:
- FMP individual ticker data is cached for 12 hours
- FMP sector-level data (GICS Cycle) is cached for 6 hours
- FRED macro data is cached for 6 hours
- Market Psychology Score is cached for 1 hour
- Market snapshot data (SPY, VIX, yields, spreads) is cached for 6 hours
- STOCK Picker candidate profiles and ratios are cached for 6 hours; quotes are cached for 2 minutes
- Universe ticker lists (S&P 500, NASDAQ 100, Dow 30) are static and require no API calls
These tools are for informational and educational purposes only and do not constitute investment advice. Model outputs are sensitive to assumptions. Always validate inputs and consider multiple scenarios.