Combining trend, volatility z-scores, drawdown mechanics and shock detection into one live market signal. All computation runs in your browser β no data is stored or tracked.
MarketScouter runs a quantitative equity regime analysis entirely in your browser. Every time you load the page, it fetches several years of weekly price data for the chosen stock universe directly from Yahoo Finance, then runs a multi-factor risk model to assess whether current market conditions favour being fully invested, partially defensive, or in full capital-preservation mode. There is no server that stores results β the computation happens fresh on your device each visit.
The baseline index (QQQ or SPY, your choice) is compared against its 30-week Simple Moving Average. When price is above the SMA, the regime is "Bull" β the market's longer-term momentum is upward. When it falls below, the regime flips to "Bear", and the model immediately shifts its allocation toward bonds (TLT) or cash (BIL) rather than equities. This single signal has historically been one of the most robust trend filters.
The VIX (CBOE Volatility Index, ticker ^VIX) measures the implied 30-day volatility priced into S&P 500 options β often called the "fear gauge." MarketScouter uses VIX two ways: (1) a raw level ladder that adjusts target leverage (below 13 = Hyper, 13β18 = Turbo, 18β24 = Standard, 24β30 = Defensive, 30+ = Bunker), and (2) a z-score that measures how elevated VIX is relative to its own 2-year rolling mean. Elevated z-scores suggest unusual fear, which increases the risk composite even when the absolute VIX level looks moderate.
The risk composite blends three normalised (0β1) severity signals with weighted averaging: β’ Drawdown Severity (weight 1.0): how far the baseline has dropped from its 26-week peak, scaled between 6% (onset) and 14% (full severity). β’ VIX Elevation Severity (weight 1.0): how many standard deviations above its 2-year mean the VIX is, scaled between z=1.0 (onset) and z=2.0 (full). β’ Shock Severity (weight 0.75): detects a single week's return exceeding 2.5Γ the trailing 52-week volatility baseline β a crash indicator. The blend is then smoothed with an exponential moving average (Ξ±=0.3) to prevent whipsaw. The final 0β1 score drives both the defensive allocation percentage (up to 60%) and caps the allowable leverage.
When the risk composite is non-zero, a portion of the portfolio is diverted from equity targets into a defensive mix: 60% TLT (long-duration Treasuries) and 40% BIL (short-term T-bills / cash). At maximum risk (composite = 1.0), the defensive blend is 60% β meaning equity positions are scaled to 40% of the portfolio and the remaining 60% goes into TLT/BIL. At zero risk, the blend is 0% and the portfolio is fully deployed in equity targets.
The model ranks universe stocks by their N-week price momentum (default: 39 weeks, roughly 9 months). Candidates must also be trading above their own 40-week SMA β this eliminates stocks in long-term downtrends even if their recent bounce looks strong. The top 4 stocks by this filtered momentum score become the targets, weighted proportionally to their momentum score, capped at 35% each, and then renormalised. The universe is currently MegaCap 40 by default; you can expand to Nasdaq-100, S&P 500, or Combined.
β’ MegaCap 40: 40 well-known large-caps, hardcoded β loads in ~5β10 seconds. β’ Nasdaq-100: ~103 current index constituents, fetched live from Wikipedia β loads in ~15β25 seconds. β’ S&P 500: ~503 constituents β loads in ~30β60 seconds. Slower but broader representation. β’ Combined: Nasdaq-100 + S&P 500 unique tickers (~550) β the most comprehensive scan, similar load time to S&P 500. Ticker lists for Nasdaq-100+ are cached for 24 hours on the CDN; price histories are cached 30 minutes per symbol.
Price data comes from Yahoo Finance's public weekly chart API (interval=1wk). The most recent weekly bar reflects either the last completed Friday close or the in-progress current week's close if markets are open. Each symbol's history is cached in your browser for 30 minutes β a refresh button triggers a new fetch. The signal is therefore a weekly signal; checking it once per week (e.g., Friday after close) is sufficient for most purposes.
No. All price fetching and signal computation runs locally in your browser (client-side JavaScript). The only server calls are to a thin proxy route that forwards your Yahoo Finance requests (to avoid browser CORS restrictions) and a news API that fetches headlines. No user data, IP addresses, or browsing patterns are stored. There is no database, no analytics, and no cookies beyond what the browser itself manages.
No. MarketScouter is an educational tool that displays the output of a mechanical, rules-based quantitative model. Past performance of any strategy does not guarantee future results. The model makes no forecast about future prices. Nothing on this site constitutes investment, tax, or legal advice. Always conduct your own research and consult a qualified financial professional before making investment decisions.
Methodology reference: The core model is a pure TypeScript port of the Sniper Command Center v6.8+ Python/Streamlit algorithm. Key parameters: baseline SMA 30w, momentum window 39w, drawdown window 26w (onset 6%, full 14%), VIX z-score window 104w (trigger +1Ο, full +2Ο), shock threshold 2.5Γ 52w Ο, EMA risk smoothing Ξ±=0.30, max defensive blend 60%, leverage range 0.5Γβ1.5Γ.