📊 Levered ETF Momentum Dashboard — Matrix Series
Bull/Bear signal per ETF via Matrix Series (Pine Script port, smoother=5)  |  42 tickers · 21 bull + 21 bear inverse pairs
NEUTRAL  |  54.8% aligned
Updated: 7/3/26 14:38 CT
History: 62 days
54.8%
Today's BMomentum Score
12/21
Bull ETFs → Bull Signal
11/21
Bear ETFs → Bear Signal
+19.1%
5-Day Change
25
Bullish Days (≥70%)
% Bullish Over Time Green ≥60% · Grey 40–60% · Red <40%
Bullish ≥60%
Neutral 40–60%
Bearish <40%
SPY price (right axis)
SPY volume
Signal Grid — Bull / Bear per ETF Bull   Bear
%
TQQQ
SPXL
TNA
WEBL
FAS
HIBL
LABU
SOXL
TECL
SPY
QQQ
ERX
GUSH
NUGT
TMF
TYD
UUP
DRN
YINN
EDC
BULZ
SQQQ
SPXS
TZA
WEBS
FAZ
HIBS
LABD
SOXS
TECS
SH
PSQ
ERY
DRIP
DUST
TMV
TYO
UDN
DRV
YANG
EDZ
BERZ
How It Works — Methodology

Overview

This dashboard measures market momentum using a universe of 42 leveraged and inverse ETFs — 21 bull ETFs and their 21 exact inverse counterparts. Each day, the Matrix Series indicator generates a Bull or Bear signal for every ticker. The momentum score reflects what percentage of the 42 ETFs are "correctly aligned" with their expected direction.

The Matrix Series Indicator

The Matrix Series is a Pine Script indicator originally designed for TradingView. It works by computing a triple-smoothed Z-score of price, producing two lines — up and down — where their relative position determines the signal:

ys1 = (High + Low + Close × 2) / 4 ← weighted close
rk3 = EMA(ys1, 5) ← 5-period EMA
rk4 = StdDev(ys1, 5) ← 5-period std deviation
rk5 = (ys1 − rk3) × 200 / rk4 ← Z-score scaled to ±200
rk6 = EMA(rk5, 5) ← smoothed Z-score
up = EMA(rk6, 5) ← signal line
down = EMA(up, 5) ← signal line smoother

Signal: up > down → ● Bull    up < down → ● Bear

This formula is implemented in Python using yFinance daily OHLC data, producing results that match TradingView readings exactly (verified against manual readings for June 2026).

The 42 ETF Universe

The universe pairs each major bull leveraged ETF with its exact inverse. This symmetry is intentional — in a truly bullish market, bull ETFs should read Bull and bear ETFs should read Bear simultaneously.

  • Bull ETFs (21): TQQQ, SPXL, TNA, WEBL, FAS, HIBL, LABU, SOXL, TECL, SPY, QQQ, ERX, GUSH, NUGT, TMF, TYD, UUP, DRN, YINN, EDC, BULZ
  • Bear ETFs (21): SQQQ, SPXS, TZA, WEBS, FAZ, HIBS, LABD, SOXS, TECS, SH, PSQ, ERY, DRIP, DUST, TMV, TYO, UDN, DRV, YANG, EDZ, BERZ

Momentum Score Calculation

Each day's momentum score counts how many of the 42 ETFs are "correctly aligned":

Correct alignment =
  (Bull ETFs with Bull signal) + (Bear ETFs with Bear signal)

% Bullish = Correct alignments ÷ 42 × 100

Example: If 15 bull ETFs show Bull and 15 bear ETFs show Bear → 30/42 = 71.4% Bullish.

Signal Zones

ZoneScoreInterpretation
● Bullish≥ 70%Strong majority of ETF pairs aligned bullishly — risk-on regime
◆ Neutral50–70%Mixed signals — transition or consolidation phase
● Bearish< 50%Majority misaligned — risk-off or bearish regime

Data & Refresh Schedule

  • Data source: Yahoo Finance daily OHLC (free, no API key required)
  • Warmup period: ~25 bars needed per ticker for EMA chain to stabilize
  • History: 60+ trading days stored in Upstash Redis (survives server restarts)
  • Daily refresh: Cron job runs after market close, appending one new day
  • Manual refresh: Visit /refresh to force an update
  • Full reseed: Visit /reseed if history needs to be rebuilt

Important Caveats

  • The Matrix Series uses daily closing prices only — intraday readings will not match until after market close
  • A small number of tickers (e.g. WEBS, BERZ) may have limited history or low liquidity — these show "—" in the heatmap and are excluded from that day's count
  • This indicator is a trend-following momentum tool, not a leading indicator — it confirms regime, it does not predict reversals