Breakout Strength
Quick Reference
| Property | Value |
|---|---|
| Dimension | signal |
| Category | momentum |
| Version | v1.0 |
| Output Column | breakout_strength |
Normalized breakout strength: distance / range_width, measuring conviction
Formula
abs(trade_price - rolling_max(trade_price, window_bars)) / (rolling_max(trade_price, window_bars) - rolling_min(trade_price, window_bars) + 1e-10)
CDM Inputs
| Column | CDM Table | Description |
|---|---|---|
trade_price | cdm_trade_enriched | Trade data enriched with bar context — price, volume, side, trade type |
Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
window_bars | integer [5, 1000] | 50 | Number of bars for range calculation |
Output
Column: breakout_strength
Breakout distance normalized by range width (0-1+)
Market Intuition & Trading Rationale
Breakout strength normalizes the absolute breakout distance by the width of the recent range: abs(price - rolling_max) / (rolling_max - rolling_min + 1e-10). A value of 0 means price is at the range high. A value of 1.0 means the distance from the range high equals the full width of the range — a very strong breakout. Values above 1.0 occur when the move extends beyond one full range width, indicating an extremely powerful breakout.
The critical insight is that the same absolute price move has very different significance depending on the range context. A $0.50 breakout above a $5.00-wide range (strength = 0.10) is barely noteworthy. The same $0.50 breakout above a $0.20-wide range (strength = 2.50) is extraordinary — price has moved two and a half range widths beyond the previous high, indicating extremely aggressive momentum.
This normalization makes breakout strength comparable across instruments and time periods. A breakout strength of 0.8 means the same thing for a volatile small-cap stock as for a stable large-cap stock: the breakout has conviction of approximately 80% of the prior range width. This enables consistent threshold-based strategies (e.g., "enter when breakout_strength > 0.5") that work across the entire universe.
Breakout strength is most effective when combined with volume confirmation. A high breakout strength on low volume suggests the move was achieved on thin liquidity and is vulnerable to reversal. A high breakout strength on above-average volume confirms broad participation and increases the probability of continuation. The feature pairs naturally with volume_shock for this purpose.
Usage Cases
- Breakout conviction filter: Only trade breakouts with breakout_strength > 0.5 (move is at least half the range width). This filters out marginal breakouts that are likely to reverse.
- Multi-instrument ranking: Rank all instruments by breakout_strength. Long the top decile (strongest upside breakouts), short the bottom decile (strongest downside breakouts). This cross-sectional mean-reversion or momentum strategy benefits from the normalization across instruments.
- Trend strength measurement: A sustained series of positive breakout_strength values indicates a strong trending environment. Alternating positive and negative values near zero suggests a ranging market — reduce trend-following exposure.
YAML Definition
name: breakout_strength
description: 'Normalized breakout strength: distance / range_width, measuring conviction'
category: momentum
version: v0.9.0 (Beta)
dimension: signal
required_inputs:
- cdm_trade_enriched.trade_price
output_column: breakout_strength
output_description: Breakout distance normalized by range width (0-1+)
tags:
- breakout
- strength
- signal
- momentum
parameters:
window_bars:
type: integer
description: Number of bars for range calculation
required: false
default: 50
constraints:
min: 5
max: 1000
formula: abs(trade_price - rolling_max(trade_price, window_bars)) / (rolling_max(trade_price,
window_bars) - rolling_min(trade_price, window_bars) + 1e-10)