FiFi’s TQEFind your stack
PaidBreadth

Thematic ETF Heat Map

Twenty-four themes ranked and colour-graded, so you know what's working before you pick a name.

Timeframes
Any
Markets
Equities
Category
Breadth

Overview

Sector maps tell you money moved into Technology. That isn’t actionable — Technology contains quantum computing and it contains enterprise software, and on any given week one can be up 6% while the other is flat.

This map is built at the level people actually trade. Twenty-four themes — nuclear, space, rare earths, data centres, cybersecurity, biotech — ranked strongest to weakest, colour-graded, on whatever chart you already have open.

The workflow it supports is straightforward: find the theme, then find the name. A breakout in a stock inside the strongest theme on the board is a different proposition from the same breakout inside the weakest one.

The Thematic ETF Heat Map — 24 themes ranked from Rare Earths +6.69% to Bitcoin Miners −2.54% One day’s rotation. Metals and materials leading, utilities and miners at the bottom, and most of the board grey because most of the board isn’t doing anything.

It ignores your chart symbol. The values come from the ETFs themselves, so the map reads identically on every chart and every timeframe. Load it once on a layout and leave it.

The heat map sitting in the corner of an NVDA daily chart In place on a chart. It occupies a corner and updates itself.


The twenty-four themes

Decarb / Net Zero Space Economy Genomics Nuclear Energy
Energy Data Centers Quantum Tech Solar
Software Robotics & AI Mining & Metals Aerospace & Defense
Semiconductors Cybersecurity Lithium & EV Rare Earths
Copper Biotech Clean Energy Utilities
Small Caps Nasdaq 100 China Large Cap Bitcoin Miners

Every slot is editable — symbol and name. The list above is a starting point, not a constraint. Swap in the themes you actually rotate between, name them whatever you call them in your own head, and the tile displays your name rather than a ticker.

The inclusion of Small Caps and Nasdaq 100 is deliberate: they’re the reference points. A theme up 2% on a day QQQ is up 2.5% isn’t leading anything.


Reading the map

Tiles are sorted strongest to weakest, left to right and top to bottom. The ranking is positional, so you can read the state of the market without reading a single number.

Each tile carries the theme name, its ticker, and the value. Colour comes from five buckets set by two thresholds:

Bucket Range Reads as
Deep green at or above Threshold 2 Strong move up
Light green between Threshold 1 and 2 Up, meaningfully
Neutral grey inside ±Threshold 1 Noise — nothing happening
Light red between −Threshold 1 and −2 Down, meaningfully
Deep red at or below −Threshold 2 Strong move down

The grey band is the point. Without it, a theme up 0.3% paints green and reads as strength when it is really just drift. Grey means nothing is happening here — and on most days, most of the board should be grey. When it isn’t, something real is going on.

Turn on Show rank # if you want the position printed explicitly rather than inferred from layout.

Worked example. In the map above, Rare Earths lead at +6.69% with Copper, Mining & Metals and Genomics behind — a clean materials-and-metals day. Nuclear Energy at +1.11% just clears the neutral band and colours green; Decarb at +0.94% sits just inside it and stays grey. Two themes seventeen basis points apart, on opposite sides of the line, because the line is where “moving” starts.

At the bottom, Utilities at −2.28% and Bitcoin Miners at −2.54% land in different buckets for the same reason.

Two ways to measure

% Change — straight performance. What moved.

RS vs SPY — the theme’s performance minus the benchmark’s. What outperformed.

These answer different questions, and RS is the more useful of the two more often than people expect. On a day the whole market is down 2%, % Change paints the board red and tells you almost nothing. RS tells you which themes held up — and what holds up on a red day tends to lead on the next green one.

Adjust your thresholds when you switch metrics. In RS mode the values are gaps against SPY, not raw moves, so beating the benchmark by 2.5% is a much higher bar than simply rising 2.5%. Tighter thresholds usually read better in RS mode.

Lookback is 1 Day or 5 Day. One day is today’s rotation; five days is the week’s trend and considerably less noisy. The header always states which you’re looking at.


Alerts

Three modes, off by default. All of them use TradingView’s dynamic alerts.

Mode Fires when
Red→Green A theme flips from a red bucket to a green bucket
Enters Top 3 The top three themes change
Both Either of the above

Red→Green is the one to run. A theme crossing from genuinely negative to genuinely positive is rotation happening in real time, and it’s the moment you’d want to start looking at names inside it. It only fires on a full crossing — a theme drifting from −0.4% to +0.4% stays inside the neutral band and stays quiet.

Alerts evaluate on confirmed bars only, so nothing fires on an intrabar wobble that reverses.

Setting one up

  1. Right-click the chart → Add alert
  2. Set Condition to FiFi’s Thematic ETF Heat Map
  3. Choose “Any alert() function call”
  4. Pick your notification method, then Create

Choose “Any alert() function call.” There’s no named condition in the second dropdown — the message is built by the indicator and names the theme that moved. Set the mode you want in the indicator’s settings first; the alert simply carries whatever it produces.


Layout and appearance

The grid is sized by Tile Columns — four across by default, giving six rows of four. Three columns makes a tall narrow block; six makes a wide strip. Twenty-four tiles divide evenly by 2, 3, 4, 6 and 8, so most column counts fill the grid exactly.

Setting Default What it does
Metric % Change Straight performance, or performance against SPY
Lookback 1 Day 1 or 5 days
Benchmark SPY What RS mode measures against
Tile Columns 4 Grid width — 2 to 8
Text Size Small Tiny through Large
Tile Padding 1 Horizontal space inside each tile
Tile Height 0 Extra blank lines to make tiles taller
Show rank # Off Print position on each tile
Heatmap Position Top Right Any of nine chart positions

Thresholds, all five bucket backgrounds and their text colours, the border, header and empty-cell backgrounds are all configurable.

Twenty-four tiles is a large object. Top Right is the default because price usually occupies the left of the chart, but on a busy layout consider Tile Columns 6 with Text Size Tiny — a wide, shallow strip stays out of the way better than a tall block.


FAQ

Does my chart symbol affect it?

No. The map reads the ETFs directly, so it shows the same thing on every chart and every timeframe.

Why is a theme grey when it's up?

It’s inside the neutral band — the move is too small to count as one. Small moves aren’t leadership, and colouring them green would make every ordinary day look like rotation.

Can I track different themes?

Yes — all twenty-four slots take any symbol, and each has its own editable name. The tile shows your name, not the ticker’s.

How is this different from the Sector Heat Map?

Sector Heat Map Tiles covers the eleven SPDR sectors — the broad map. This one is built at theme level, where the moves are larger and the names are more tradable. Most people run both: sectors for the backdrop, themes for the hunt.

Should I use % Change or RS vs SPY?

% Change to see what moved. RS to see what led. On a broadly red day, RS is far more informative.

Does it repaint?

No. Values are calculated from daily data with no lookahead.