Relative Rotation Graph

Definitions

How to read the charts, and how the numbers are calculated

The chart in one line

Each ETF is placed by two numbers, both centered on 100. Left/right is RS-Ratio: is the ETF ahead of the benchmark on recent trend? Up/down is RS-Momentum: is that lead growing or shrinking right now? Every chart is relative. An ETF can be at a price high and still sit in a weak spot if the benchmark is rising just as fast.

Relative strength (RS)

RS = 100 × ETF price ÷ benchmark price

The raw comparison, from weekly closes. RS rises when the ETF beats the benchmark and falls when it lags. Every ETF on this site is measured against SPY.

RS-Ratio (horizontal axis)

RS-Ratio = 100 + (RS − 12-wk mean of RS) ÷ 12-wk std dev of RS

Then averaged over 3 weeks. It compares the ETF's RS with its own 12-week average:

  • 100: right at its average. The ETF is keeping pace with the benchmark.
  • Above 100: outperforming the benchmark lately.
  • Below 100: underperforming lately.
  • The distance from 100 is in standard deviations. 101 is about one typical swing above average, a strong reading. 100.5 is mild.

It only covers about the last 12 weeks. An ETF that stops beating the benchmark and just keeps pace drifts back toward 100 as the average catches up, even if its price is at a high. An ETF that keeps beating the benchmark at a steady pace stays above 100.

RS-Momentum (vertical axis)

ROC = 100 × RS-Ratio now ÷ RS-Ratio 4 weeks ago

That 4-week rate of change gets the same 12-week z-score (centered on 100) and 3-week average. RS-Momentum is built from RS-Ratio, like speed is built from position:

  • Above 100: RS-Ratio has been rising faster than usual. The lead is growing.
  • Below 100: RS-Ratio is rising slower than usual, or falling. The lead is shrinking.

Momentum turns before RS-Ratio does, the way a ball's speed hits zero at the top of its arc before it starts falling. RS-Momentum is the early warning; RS-Ratio is the confirmation.

The four quadrants

Improving top left

Still behind the benchmark, but catching up.

Leading top right

Ahead of the benchmark, and pulling further ahead.

Lagging bottom left

Behind the benchmark, and falling further behind.

Weakening bottom right

Still ahead of the benchmark, but the lead is shrinking. Strong but fading, not weak.

Because momentum turns first, ETFs usually rotate clockwise: Improving → Leading → Weakening → Lagging → Improving. A dot usually goes up before it goes right, and down before it goes left.

Tails and look-back windows

These are separate settings:

  • 8 dots per tail: how much history the chart shows. The arrowhead is this week; the dots behind it are the 7 weeks before, so you can see the path the ETF took. The arrow points in its direction of travel.
  • 12-week window: how far back each dot looks. Every dot is calculated from its own 12 weeks of history, so the windows overlap.

With the 4-week momentum step and the 3-week averaging on top, an RS-Ratio dot draws on roughly 14 weeks of prices and an RS-Momentum dot on roughly 31. A newly listed ETF appears once it has enough history.

Good to know

  • The latest dot can be a partial week. Before Friday's close, this week's dot uses the most recent price and can still move.
  • Smoothing makes the chart lag a little. One big week barely moves a dot; a trend takes a few weeks to show.
  • Approximation: the original JdK RS-Ratio / RS-Momentum formulas are proprietary. This site uses the widely used rolling z-score approximation, which gives the same quadrants and the same clockwise rotation.
SettingValueUsed for
BarsWeeklyPrice closes the charts are built from
Window12Z-score look-back for both axes
Momentum4Rate-of-change look-back for RS-Momentum
Smoothing3Moving average applied to both axes
Tail8Dots drawn per ETF
Last updated on 10 Oct 2026 01:31 UTC source