Indicators 7 min read

RVOL Explained: The Only Volume Metric That Matters

Relative volume is the one number that separates real momentum from chop. Here's how it's computed and why the simple version is wrong.

RVOL Explained: The Only Volume Metric That Matters
Indicators · Educational illustration · Not a real chart

What RVOL actually measures

Relative volume — RVOL — is the ratio of today's traded volume to an average day's volume over a recent window. Expressed as a multiplier: 1× is a normal day, 5× is heavy, 20× is extreme.

It's the most important number on a small-cap scanner, and almost everyone computes it wrong. This guide walks through the definition, the common mistake, and the version BullAlert's scanner actually uses. Nothing here is financial advice — always do your own DD before making any investment decision.

The naive formula (and why it's broken)

The version you'll find in most free scanners:

RVOL = today_volume / avg_daily_volume_20d

This is fine if you check it at 4:00 PM, after the session closes. It's useless at 9:45 AM, because you're dividing a partial day by a full day. A stock trading at 1.2× by 9:45 could be either "having a quiet morning" or "absolutely exploding" — the ratio can't tell you.

The fix: time-adjusted RVOL

The correct formula normalizes today's volume by the fraction of the average day that has already happened:

RVOL = today_volume / (avg_daily_volume_20d × expected_fraction_so_far)

The "expected fraction" has to account for the intraday volume curve — the well-known U-shape where volume spikes at the open and close and sags mid-session. At 9:45 AM, ~15% of the day's volume has usually printed. At noon, ~45%. At 3:55 PM, ~95%. BullAlert's scanner uses a 5-minute-resolution curve to compute this with precision.

With this fix, a stock trading at 2× at 9:45 AM means "already traded twice what it normally does by this point" — which is meaningful. Same stock at 2× at 3:00 PM means something completely different.

Why it matters for small caps

On large caps, RVOL is a nice-to-have. On small caps, it's the single most informative number you can look at. Here's why.

Small caps have tiny floats and thin average volume — often under 1M shares a day. When something catalytic happens (news, short squeeze, reverse split, whatever), volume expands 10–50× in hours. That volume expansion is the signal. Without it, price moves on small caps are just noise from a few retail orders.

Put another way: a small cap can go up 30% on 50k shares of volume and it means nothing. The same stock up 5% on 10 million shares means institutions are building a position. Which of those would you rather study?

RVOL buckets, not multipliers

BullAlert never displays the raw RVOL number to users. Instead we bucket it into four labels:

  • NORMAL — RVOL < 2×. Boring tape. Ignore.
  • ELEVATED — 2× to 5×. Something is happening. Watchlist material.
  • HIGH — 5× to 10×. Structural move. Study the chart.
  • EXTREME — 10×+. Rare and usually news-driven. The tape is yelling.

The bucketing is intentional. Raw multipliers create false precision — a "7.3× RVOL" stock isn't meaningfully different from a "6.8×" one. What matters is the regime: is volume structurally high, or isn't it? The buckets enforce that thinking.

Three RVOL traps to avoid

1. RVOL without price action

Volume without direction is just churn. A stock trading 10× normal volume but stuck in a flat range is distribution or indecision — usually both. Always pair RVOL with a clean price structure: uptrend, VWAP reclaim, opening range break, or bull flag.

2. RVOL on illiquid names

Very small floats (under 5M shares) can show 20× RVOL on an absolute volume that's still too thin to trade safely. Your order becomes the order flow. Always check absolute volume alongside RVOL — we want at least 100k shares traded in regular hours (50k in extended).

3. Extended-hours RVOL

Pre-market and after-hours RVOL can't use the same denominator as regular hours, because those sessions are naturally low-volume. BullAlert uses a separate expected-volume curve for extended hours: pre-market ≈ 10% of daily average, after-hours ≈ 5%. A "2× pre-market RVOL" stock isn't 2× of its full day — it's 2× of what pre-market usually delivers.

How Edgar uses RVOL

Edgar's paper-trading bots use RVOL buckets as a hard gate: no HIGH bucket, no trade. The regular-hours bot also requires ELEVATED (2×+) minimum; the after-hours bot is stricter and requires HIGH (5×+) because AH needs more conviction to sustain. Every Edgar diary entry shows the RVOL bucket at catch, so you can study how RVOL regime interacts with pattern outcomes.

Related reading