Browse the library

Indicators · Momentum oscillators

ROCR (rate of change ratio): growth factors and relative strength

What ROCR measures, why a ratio is the natural form for chaining returns and comparing a stock with the market, a Boeing versus SPY example, and Finabase’s ROCR.

On this page
  1. What ROCR measures
  2. The formula
  3. Relative strength: dividing ratios
  4. ROCR on a real chart: Boeing 2025–2026
  5. Ratios and logarithms
  6. How traders use ROCR
  7. Pitfalls and limitations
  8. Comparison table
  9. How Finabase calculates and scores ROCR
  10. Frequently asked questions
  11. Summary

ROCR, the "rate of change ratio," divides today's close by the close n bars ago. A reading of 1.08 means price is 8% higher than n bars ago; 0.95 means 5% lower; exactly 1 means unchanged. It carries the same information as the Rate of Change (ROC): percentage momentum and how to read it and ROCP (rate of change percentage): returns as fractions, expressed as a growth factor instead of a percentage or a fraction.

Why have a third version? Because ratios behave well under the two operations traders most often need: chaining periods together, which means multiplying, and comparing one instrument with another, which means dividing. This guide shows ROCR on Boeing's 2026 chart, then uses it to measure how Boeing did against the S&P 500 ETF over the same windows, the essence of relative strength.

What ROCR measures

ROCR answers "how many times larger is the price now than n bars ago?"

ROCR Meaning ROC equivalent
1.25 25% higher +25
1.00 Unchanged 0
0.80 20% lower −20
0.50 Half the price −50

The ratio form has one quirk worth noticing: it is bounded below by zero but unbounded above. A stock can at worst lose everything (ROCR 0) but can double, triple or more (2, 3, …). On a log scale, gains and losses of the same proportion become symmetrical: 2.0 and 0.5 are equally far from 1.

TA-Lib also provides ROCR100, the same ratio times 100, so that 108 means 8% higher. Finabase charts the plain ratio.

The formula

A worked example on Boeing

On March 24, 2026, Boeing (BA) closed at $196.42. Twelve sessions earlier, on March 6, it had closed at $231.11.

Step Calculation Result
ROCR (12) 196.42 ÷ 231.11 0.850

Finabase's chart shows 0.85, Boeing's lowest 12-day ratio of the year: the stock was worth 85% of what it had been worth two and a half weeks earlier.

Three weeks later, on April 15, Boeing closed at $223.93 against $190.52 twelve sessions before: a ROCR of 1.175, displayed as 1.18, the highest of the year.

Relative strength: dividing ratios

A falling stock in a falling market and a falling stock in a rising market are different situations. To separate the stock's own move from the market's, divide its ROCR by a benchmark's ROCR over exactly the same dates. Here is Boeing against the SPDR S&P 500 ETF (SPY):

Window ending BA ROCR (12) SPY ROCR (12) BA ÷ SPY Reading
Mar 24, 2026 0.850 0.971 0.875 Boeing fell 12.5% more than SPY
Apr 15, 2026 1.175 1.104 1.065 Boeing beat SPY by 6.5%
Oct 29, 2026 0.926 0.989 0.936 Boeing lagged SPY by 6.4%

In mid-April, Boeing's raw ROCR said "up 17.5%," which looks like a dramatic recovery. Relative to SPY it was up 6.5%: most of the move came from a broad market rally (SPY gained 10.4% over the same 12 sessions). The relative ratio is the cleaner measure of how the stock itself was doing.

Robert Levy's 1967 study in the Journal of Finance ranked stocks by exactly this kind of ratio of price to its past level and found that the strongest tended to keep outperforming for a while, an early piece of evidence for momentum investing.

ROCR on a real chart: Boeing 2025–2026

Boeing (BA) daily with ROCR (12), alone and relative to SPY · 2025-10-30 to 2026-10-29 $200 $250 High $254.35 · Jan 27 Price 0.9 1 1.1 0.85 · Mar 24 1.18 · Apr 15 ROCR (12) BA BA ÷ SPY Nov Dec Jan 2026 Feb Mar Apr May Jun Jul Aug Sep Oct
Boeing (BA), one year of daily bars with ROCR (12) as computed by Finabase, and Boeing’s ROCR divided by SPY’s ROCR over the same 12 sessions.

Boeing fell from $200.08 to $172.65 over the year, about 14%, after a high of $254.35 on January 27, 2026 and a low of $165.01 on October 28. Its ROCR (12) was below 1 on 145 sessions and above 1 on 97 (the remaining 9 rounded to exactly 1.00 on the chart's display).

The dashed relative line in the figure usually sits below the plain ROCR when the market is rising and above it when the market is falling. The gap between them is the market's own 12-day move.

Ratios and logarithms

Ratios have one more convenient property: their logarithms add. The natural log of a ROCR, ln(ROCR), is the log return over the window, and log returns over consecutive windows sum to the log return of the whole period. Boeing's two windows below illustrate it: ln(0.850) + ln(1.140) = −0.163 + 0.131 = −0.032, and ln(0.969) = −0.032.

Log returns are also symmetrical in a way that ratios are not. A rise to 1.25 and a fall to 0.80 cancel exactly (1.25 × 0.80 = 1), and their logs are +0.223 and −0.223. On a log-scaled ROCR chart, an equal distance above and below 1 represents an equal proportional move, which is why long-term relative-strength charts are usually drawn on a log scale.

How traders use ROCR

Relative strength. Divide ROCRs, as above, to rank stocks against an index, a sector against the market, or two stocks against each other. Values above 1 mean outperformance over the window.

Chaining returns. Multiply consecutive ratios for the total. Boeing fell from $231.11 on March 6 to $196.42 on March 24 (a ratio of 0.850), then rose to $223.93 on April 15 (223.93 ÷ 196.42 = 1.140). The product, 0.850 × 1.140 = 0.969, is exactly 223.93 ÷ 231.11: nearly six weeks of drama for a net change of about −3%.

Threshold rules. Some systems express breakouts as ratios: "price at least 1.10 times its level 20 bars ago."

As a momentum line. On a chart, ROCR behaves like ROC with its zero line moved to 1.

Pitfalls and limitations

Same limits as ROC. Two closes decide each value; big days echo when they leave the window.

Neutral is 1. Thresholds and crossings must use 1, not 0. A rule written for ROC will not work on ROCR unchanged.

Display precision. Finabase shows values of 1 and above with two decimals (and values below 1 with three), so readings from about 0.9995 up to 1.005 can appear as exactly 1.

Comparison table

Study Neutral value Chains by Compares by Example (8% gain)
ROC 0 Not directly Subtraction (approximate) 8.0
ROCP 0 (1 + r) products Subtraction (approximate) 0.08
ROCR 1 Multiplication Division (exact) 1.08
MOM 0 Addition (dollars) Not comparable $ change

How Finabase calculates and scores ROCR

Finabase computes ROCR with TA-Lib's ROCR function on closing prices. A new ROCR study defaults to 12 periods and is drawn in its own panel.

ROCR (12) appears in the technical gauge on the symbol page with its latest value and carries no Buy or Sell rule, so it always counts as neutral. Finabase does not compute the relative ratio for you on the chart; divide the two ROCR values yourself, or use the comparison tab.

Frequently asked questions

What is the difference between ROCR and ROC?

ROCR is a ratio centred on 1 (1.08 = up 8%); ROC is a percentage centred on 0 (8.0 = up 8%). They contain the same information.

What is ROCR100?

The ratio multiplied by 100, centred on 100. A ROCR100 of 92 means 8% lower than n bars ago. Finabase charts the plain ratio.

How do I measure relative strength with ROCR?

Divide the stock's ROCR by the benchmark's ROCR for the same window. Above 1, the stock outperformed; below 1, it underperformed.

Summary

ROCR expresses the rate of change as a growth factor centred on 1. That makes chaining periods a matter of multiplying and comparing instruments a matter of dividing. Boeing's 2026 chart shows why the second matters: a dramatic-looking 1.18 in April was mostly the market rising, and relative to SPY the stock gained 6.5%. Use ROCR when you need to combine or compare returns, and remember that its neutral line is 1.

Sources and further reading

  1. Robert A. Levy, “Relative Strength as a Criterion for Investment Selection,” Journal of Finance, vol. 22, no. 4 (1967)
  2. TA-Lib — ROCR and ROCR100 function reference
  3. Finabase chart data — BA and SPY daily bars, 2025-10-30 to 2026-10-29, ROCR computed by Finabase