Relative Volume
Quick Reference
| Property | Value |
|---|---|
| Dimension | signal |
| Category | volume |
| Version | v1.0 |
| Output Column | relative_volume |
Current trade size relative to moving average 鈥?detects volume spikes that confirm breakouts or signal absorption.
Formula
size / (rolling_mean(size, window) + 1e-10)
CDM Inputs
| Column | CDM Table | Description |
|---|---|---|
size | cdm_trade_enriched | Trade data enriched with bar context 鈥?price, volume, side, trade type |
Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
window | integer | 100 | Lookback window in ticks for baseline volume |
Output
Column: relative_volume
Ratio of current trade size to its moving average
Market Intuition & Trading Rationale
Relative Volume is the simplest and most direct measure of anomalous participation. When a trade is 5x larger than the recent average, someone is urgency-driven 鈥?either an institution building a position, a stop cascade triggering, or a large trader absorbing available liquidity. The ratio normalizes trade size against its own history, adapting to each instrument's typical trade size profile.
Values near 1.0 represent normal participation 鈥?the current trade is typical for this instrument at this time. Values above 2-3 represent elevated participation 鈥?something is different about this trade. Sustained elevated relative volume (multiple large trades in sequence) is the classic signature of institutional activity: a large order being worked through a series of child orders or an iceberg being revealed trade by trade.
In breakout contexts, a volume spike confirms the breakout: price moves through a level AND participation surges. Without the volume spike, the breakout lacks conviction 鈥?it may be a head-fake driven by a few small aggressive orders rather than genuine institutional directional intent. Relative volume provides the "confirmation" half of the breakout-conformation pattern.
Usage Cases
- Breakout confirmation: When relative_volume spikes above 2 simultaneously with price breaking a level, institutional participation confirms the breakout. High price_velocity_volume_ratio WITHOUT a relative volume spike suggests a false breakout on thin liquidity.
- Absorption detection: Sustained elevated relative_volume (>3 for multiple ticks) without corresponding price movement indicates absorption 鈥?a large participant is soaking up aggressive flow without letting price move. This often precedes a sharp directional move in the opposite direction when the absorber finishes.
- Event detection: Sudden relative_volume spikes (>5) that revert within 1-2 ticks are typically large single trades 鈥?possibly block trades, stop runs, or errors. These create microstructure dislocations that mean-reversion strategies can exploit.
- feature set integration: In the
microstructure_breakoutpack, relative_volume confirms the breakout move 鈥?elevated volume validates the price_velocity_volume_ratio signal and distinguishes genuine institutional breakouts from noise.
YAML Definition
name: relative_volume
description: Current trade size relative to moving average 鈥?detects volume spikes
that confirm breakouts or signal absorption.
category: volume
dimension: signal
version: v0.9.0 (Beta)
required_inputs:
- size
output_column: relative_volume
output_description: Ratio of current trade size to its moving average
tags:
- volume
- signal
parameters:
window:
type: integer
description: Lookback window in ticks for baseline volume
required: false
default: 100
formula: size / (rolling_mean(size, window) + 1e-10)