Multi-Timeframe Sector & Thematic Heat Map for TradingView
Rank 39 sector, industry and thematic ETFs at a glance — from 1-day moves out to three-year returns — alongside a 200-EMA trend regime and live relative strength versus SPY. One sortable heat-map table tells you which corners of the market are leading, which are lagging, and which are quietly rolling over.
Sector/Industry Performance Tracker is an invite-only TradingView indicator built around one question: where is the money actually going? It pulls live daily prices from 39 sector, industry and thematic ETFs, computes their returns across eight horizons from 1 day to 3 years, and renders the result as a compact heat-map table. Each cell is shaded by magnitude, the table is sortable on any timeframe, and two extra columns add a 200-EMA trend regime and live relative strength versus SPY so leadership shifts are visible at a glance.
Sector rotation is everything in equity markets — but it is invisible if you only watch one chart. Capital cycles between cyclicals and defensives, between growth and value, between commodities and rates-sensitive names, on cadences ranging from days to years. Spotting those shifts early is the difference between buying breakouts that work and chasing names whose group has already topped.
This tracker compresses that full landscape into a single grid. On every bar, it pulls eight rate-of-change windows for each of the 39 ETFs in the universe and compares them to SPY:
Sector return = (price_now / price_N_bars_ago) − 1, expressed as a percent.
Windows used: 1, 5, 21, 63, 126, YTD, 252 and 756 bars — roughly 1 day, 1 week, 1 month, 1 quarter, 6 months, year-to-date, 1 year and 3 years on a daily chart.
Each percent figure is rendered into a cell whose background fades from neutral through faint green to a bright bull green for gains — or symmetrically through faint red into a deep bear red for losses. Thresholds are tuned per horizon so a 5% one-day move is shaded as strongly as a 25% YTD move. Two extra columns sit on the right of the table: a Trend tag (BULL or BEAR) derived from whether price is above or below its 200-period EMA, and a Relative Strength column showing YTD return minus SPY's YTD return, badged with up to three filled or open dots for instant ranking. Sort the whole grid by any horizon you like — YTD by default — and the strongest leaders rise to the top.
Covers the eleven GICS-style sector ETFs plus 28 industry and thematic ETFs — semiconductors, biotech, homebuilders, uranium, lithium, gold, silver, copper, cloud, AI, quantum, space, China internet and more — chosen for liquidity and clean style purity.
1 Day, 1 Week, 1 Month, 3 Month, 6 Month, YTD, 1 Year and 3 Years — each as its own column with per-horizon heat thresholds. See momentum and regime separately in the same row.
A 5% move in a day is huge; a 5% move in a year is nothing. Each column uses its own green/red thresholds so cell colour reflects significance, not raw magnitude, and shorter timeframes are not drowned out by long ones.
Pick the timeframe that matches your style — 1 Day for tactical traders, 3 Month or YTD for swing, 1 Year or 3 Years for allocators. The table re-sorts top-to-bottom so the strongest names sit at the head and the weakest at the foot.
A dedicated Trend column shows ▲ BULL if the ETF is trading above its 200-period EMA and ▼ BEAR if below — a clean regime filter that pairs naturally with the performance numbers to separate dip-buys from falling knives.
The final column shows YTD return minus SPY's YTD — with up to three filled dots for strong outperformance (••• >10%) or open dots for strong underperformance (°°° <−10%) plus the numerical spread.
Anchor the table to any of nine positions on the chart (Top/Middle/Bottom × Left/Center/Right) and choose Small, Medium or Large text. Park it out of the way of price, or front-and-centre as the chart's main view.
Tooltack green colour palette tuned for dark-mode TradingView, with subtle alternating row backgrounds, a bordered header, and brand attribution at the foot. Reads cleanly at every zoom level.
Although declared as overlay = true so it can sit over price, the indicator draws only a table — not lines or shapes — so your candles, drawings and other studies stay untouched.
The colour scale runs symmetrically from a bright bull green for the strongest gains down through faint green near zero, then mirror-image red shades into deep bear red for the worst losses. Thresholds adapt to each horizon so the visual weight stays comparable across columns.
The tracker enforces daily bars — the rate-of-change calculations are calibrated for them, and using a higher timeframe will trigger a runtime error. Set your chart to D first, then add the indicator. Any liquid symbol works as the host chart; SPY is a natural pick.
Open the Indicators menu → Invite-Only Scripts → select Sector/Industry Performance Tracker. The table populates on the last bar with all 39 themes ranked by YTD return.
Open settings and combine the vertical (Top / Middle / Bottom) and horizontal (Left / Center / Right) anchors. Middle Right is the default and keeps the table beside price; Bottom Right works well if you trade off the top of the chart; Top Left pulls focus to rotation first, price second.
Small packs all 39 rows into a compact block for full-chart workflows. Medium (default) reads cleanly on most monitors. Large turns the indicator into a presentation-grade dashboard — ideal when the heat map is the chart.
The Sort By input controls which column ranks the table. Pick 1 Day or 1 Week for tactical reads, 1 Month / 3 Months for swing rotation, YTD for the current narrative, 1 Year or 3 Years for cycle and allocation work. The strongest names always sit at the top of the sorted column.
A single big-green YTD cell is not a buy — a row that is green across 3M, 6M, YTD and 1Y, with a BULL tag and three filled RS dots, is. Conversely, a row that is still green YTD but red across 1W and 1M is a deceleration warning, not strength.
Pick a name from the top (or bottom) of the table and pull up its own daily chart. Use the heat map to filter which names deserve attention; use price structure and setups to time when to act. The two together are far stronger than either alone.
Educational examples only — always test before using real capital.
Sort by YTD or 3 Month. Only look at the top three sector ETFs for new long ideas, then dig into their constituents on TradingView. Time spent on Software, Casinos or Homebuilders while they sit at the bottom of the table is time poorly spent.
Require any name you trade to sit in a sector with a ▲ BULL tag and a ••• RS reading. This pairs absolute trend with relative strength and keeps you out of names whose group is structurally broken.
A row whose recent columns are flipping green while older columns are still red flags fresh rotation into a previously beaten-down theme — often the highest-reward setups before the broader market notices.
The mirror image — long-term winners with recent weakness. Use it to tighten stops or trim positions in your strongest holdings before momentum traders start chasing the next narrative.
Long the top-ranked sector ETF and short the bottom-ranked one on the same horizon. The spread isolates relative strength while reducing exposure to broad-market direction — a classic dispersion play.
Sort by 3 Months on the first day of each new quarter. Compare the rotation against your portfolio weights. Overweights in red zones and underweights in green zones flag rebalancing opportunities backed by data, not gut feel.
Reminder: Performance ranking is decision-support, not a trade trigger. A red row with a BULL tag in a strong overall market may still be a great mean-reversion idea; a green row with three filled dots may already be extended. Always combine the heat-map read with price structure, levels and a defined risk plan.
The tracker tells you where capital is flowing; complementary tools tell you which name within a leading group and when to act. Pair it with these for a full top-down workflow.
Once the tracker surfaces a leading group, RS Radar shows which individual stocks within that group are themselves outperforming their sector ETF. The strongest name in the strongest group is a powerful filter.
Confirm absolute trend on the constituent before sizing — the cleanest longs are stocks with a green heat-map row, a BULL tag, and a clean uptrend on their own daily chart.
Time entries on the top-ranked names to BOS / CHoCH and Fibonacci retracements, instead of chasing extension at the top of the heat map.
Buy leading-sector names at major support; short bottom-row names at resistance — sector context plus level gives both the "who" and the "where."
Confirm rotation flips with above-average volume on the sector ETF itself — flips on heavy volume stick; flips on thin volume often fade.
Use BULL / BEAR transitions as one component of a defined exit framework — a sector regime change is often early warning of position-level weakness.
Get all 28+ tools activated in 4 simple steps.
After purchasing your plan, log in to your ToolTack account and navigate to your personal dashboard. This is your command centre for managing your subscription and tools.
Enter your exact TradingView username in the designated field. Make sure it matches your TradingView profile exactly — this is how access is granted.
The ToolTack team will activate the tools on your TradingView account within 24 hours. You will receive a confirmation email once activation is complete.
Open TradingView → Indicators → Invite-Only Scripts. Your ToolTack indicators, screeners, dashboards and strategies will be ready to add to your charts.
One subscription unlocks the full ToolTack library — indicators, screeners, dashboards and strategies built specifically for TradingView workflows. Activate with your TradingView username and access everything from a single dashboard.
Why does the indicator force a Daily timeframe?
The lookback windows (1, 5, 21, 63, 126, 252, 756 bars) are tuned to daily bars so they correspond to 1 day, 1 week, 1 month, 1 quarter, 6 months, 1 year and 3 years respectively. On intraday or weekly charts those numbers would represent different timespans and produce misleading comparisons, so the tool throws a runtime error and asks you to switch to D.
Which ETFs are in the universe?
Thirty-nine in total: the sector benchmarks (XLE, XLF, XLI, XLB, XLY, XLP, XLU, XLV, XLRE), the major industries (KRE, ITA, JETS, IHI, IYZ, IYT, XBI, XHB, XRT, SMH, IGV, SLX), commodity miners (GDX, SIL, COPX, URA, LIT, WGMI), broad styles (VUG, EEM, TLT) and the new-economy themes (BOTZ, ROBO, ARKG, ARKX, HACK, SOCL, SKYY, QTUM, KWEB, BJK). All map to liquid US-listed ETFs.
Can I add or remove tickers from the table?
The universe is fixed in the current version so the heat-map thresholds, sort order and RS computation stay calibrated. If you need a custom universe, run the indicator on a chart of an ETF that is not already in the list and use the table as a comparison reference, or contact ToolTack support to request additions.
What does the YTD column actually measure?
It is the rate of change from the first trading bar of the current calendar year to the most recent bar. The underlying code counts bars since the most recent yearly timeframe change — so on 5 January it will read a very short window, and on 31 December it will read a near-full-year window. That is the correct YTD behaviour.
Why are the heat thresholds different per column?
Because a 5% move in a day is exceptional, a 5% YTD move is mediocre, and a 5% 3-year move is essentially flat. Per-horizon thresholds keep colour intensity aligned with significance, so the eye is drawn to genuinely strong (or weak) reads rather than mechanically to the largest absolute numbers.
What benchmark does the Relative Strength column use?
SPY, the SPDR S&P 500 ETF. The column shows each theme's YTD return minus SPY's YTD return; positive values mean the theme has outperformed the US large-cap index this year, negative values mean it has lagged. Three filled dots flag >10% outperformance; three open dots flag <−10% underperformance.
Does the table repaint?
The historical bars use confirmed closes for every theme and the SPY benchmark, so prior values are stable. The current bar updates intra-day as price moves — like any indicator — but the daily-timeframe constraint means there is only one bar per day to update, and the print finalises at the daily close.
Can I sort by something other than YTD?
Yes. The Sort By input in the indicator settings accepts 1 Day, 1 Week, 1 Month, 3 Months, 6 Months, YTD, 1 Year or 3 Years. The whole table re-ranks so the strongest themes for that horizon sit at the top — useful for matching your sort to your trading style.