Volatility Squeeze Breakout
Low Volatility → Explosive Expansion
📊At a Glance
Best For
Any regime — works when volatility compresses to extremes
Timeframes
15m squeeze detection / 5m trigger
Typical Hold
30 min - 3 hours
Primary Targets
- •Squeeze range width (1R)
- •2R extension
- •1.5-2x ATR move
Common Failure Mode
Fakeout — breakout reverses quickly
When to Avoid
- •Major news about to release
- •Off-hours/low liquidity
- •Opposite side already broke
The Concept
The Volatility Squeeze occurs when Bollinger Bands contract inside Keltner Channels — a sign that volatility is compressing to extreme lows. Like a coiled spring, this low-volatility state eventually explodes into a directional move.
Key Insight: This is one of the most reliable setups because volatility is mean-reverting. Periods of extreme low volatility are almost always followed by expansion. The trick is catching the direction of the breakout.
Multi-Timeframe Approach (15m + 5m)
Enhanced Detection: We detect the squeeze condition on the 15-minute timeframe for reliability, then trigger entries on the 5-minute timeframe for precision timing.
15m: Squeeze Detection
- • BB inside KC condition checked on 15m
- • More significant/reliable squeezes
- • Filters out noise from 5m micro-squeezes
- • +2 score bonus when detected on 15m
5m: Breakout Trigger
- • Entry timing on 5m chart
- • Volume expansion confirmation
- • Precise entry zone calculation
- • Tighter stop placement
Understanding the Squeeze
Bollinger Bands (BB)
BB(20, 2) — 20-period SMA ± 2 standard deviations
Measures price volatility. Bands narrow when volatility decreases.
Keltner Channels (KC)
KC(20, 1.5) — 20-period EMA ± 1.5× ATR
Measures average volatility. More stable than Bollinger Bands.
Squeeze ON: When BB upper < KC upper AND BB lower > KC lower, volatility is extremely compressed. The squeeze "fires" when BB expands back outside KC.
Long Squeeze Breakout
Squeeze Fires Up — Volatility Expansion Long
After 6 candles of tight compression (BB inside KC), volatility explodes upward. Entry on close above BB upper with expansion confirmed.
Short Squeeze Breakout
Squeeze Fires Down — Volatility Expansion Short
After compression, volatility explodes downward. Entry on close below BB lower with expansion confirmed.
Safety Features
Advanced filters to reduce fakeouts and improve signal quality:
Session Filter
Avoids triggering during off-hours and FX rollover (21:00-22:00 UTC) when liquidity is thin and fakeouts are common. Crypto is exempt (24/7 markets).
Spread Percentile Check
Rejects signals when spread is above the P90 threshold. Wide spreads eat into profits and indicate poor execution conditions.
Opposite Break Detection
If the opposite side of the squeeze broke recently (within 6 bars), the signal is rejected. This filters out choppy conditions and "failed breakout reversal" traps.
Duration Requirements
Requires 10+ bars in squeeze (configurable). Longer squeezes produce more powerful breakouts. Short squeezes (3-5 bars) receive lower scores.
Squeeze Detection
BB_upper < KC_upper AND BB_lower > KC_lowerWhen Bollinger Bands contract inside Keltner Channels, volatility is at extreme lows.
Expansion Confirmation
volExpansion = current_range / ATR(14) > 1.2The breakout candle should show expanding volatility (range > 1.2× ATR) to confirm the squeeze is firing.
Setup Detection
- Squeeze ON— BB(20,2) inside KC(20,1.5) on 15m
- BB width— Bottom 15% of recent history
- Build time— 10+ candles ideal (min 3)
- Session— Good session (not off-hours/rollover)
- Spread— Below P90 percentile
Trigger & Targets
- Long trigger— 5m close > squeeze high + buffer
- Short trigger— 5m close < squeeze low - buffer
- Expansion— volExpansion > 1.2x (configurable)
- Target 1— Squeeze range width (1R)
- Target 2— 2R or 1.5-2× ATR extension
Configurable Parameters
Customize the strategy in Settings → Strategies. Hover over the info icon for detailed explanations.
| Parameter | Default | Range | Description |
|---|---|---|---|
| Min Squeeze Bars | 10 | 3-20 | Minimum bars in squeeze before breakout |
| Vol Expansion Threshold | 1.2x | 0.8-2.0x | Required volume expansion ratio |
| Breakout ATR Multiple | 0.5 | 0.3-1.0 | Buffer beyond squeeze boundary |
| Min Setup Score | 40 | 20-70 | Minimum quality score for alerts |
| Max Spread Percentile Pro | 90 | 50-100 | Reject if spread above this percentile |
| Require Good Session | Yes | — | Filter off-hours/rollover periods |
| Check Opposite Break | Yes | — | Cancel if opposite side broke recently |
| Prefer 15m Squeeze Pro | Yes | — | Use 15m for squeeze detection |
When It Works
Any market regime — the squeeze is regime-agnostic. Works especially well when squeeze aligns with higher timeframe trend direction.
Watch Out For
False breakouts that quickly reverse. The expansion confirmation and opposite break check help filter weak moves.
Avoid When
Major news events about to release. Also avoid during low-liquidity sessions (session filter handles this automatically).
Trend Alignment (Score Booster)
While the squeeze works in any regime, aligning with the higher timeframe trend significantly improves the probability:
Long Squeeze Breakout
- • Best: 1h trend = UP (+20 score)
- • Okay: 1h trend = RANGE (+12 score)
- • Risky: 1h trend = DOWN (+6 score)
Short Squeeze Breakout
- • Best: 1h trend = DOWN (+20 score)
- • Okay: 1h trend = RANGE (+12 score)
- • Risky: 1h trend = UP (+6 score)
Squeeze States Explained
🔸 Squeeze ON (Building)
BB inside KC. Volatility compressed. Watch and wait — the longer it builds (10+ bars), the more powerful the breakout.
🔹 Squeeze FIRES (Entry)
BB expands outside KC with a strong directional candle. This is the entry signal. Must have volExpansion > 1.2 confirmation.
⚪ Squeeze OFF (Normal)
BB outside KC. Normal volatility. No setup — wait for next squeeze to form.
See an Example Signal
Here's what a real Volatility Squeeze signal looks like in the app:
Quality score is calculated from regime alignment, structure quality, timing, and technical confluence. Higher scores indicate stronger setups.
Best Practices
Do
- Wait for 10+ bar squeezes for highest conviction
- Check BB width percentile (bottom 10-15% ideal)
- Trade with 1h trend for higher probability
- Use 15m squeeze detection (more reliable)
- Keep session filter ON for FX/Equity
Don't
- Force trades during very short squeezes (3-5 bars)
- Trade against strong 1h trends (lower score for reason)
- Enter when spreads are abnormally wide (P90+)
- Trade just before high-impact news releases
- Enter after opposite side already broke (trap)
Invalidation & Risk
Stop Loss Placement
- Long: Below squeeze range low - buffer
- Short: Above squeeze range high + buffer
The squeeze range (high/low during squeeze ON) is your reference for stops.
Target Calculation
- T1: Entry ± squeeze_range_width (1R)
- T2: Entry ± 2R or 1.5-2× ATR(14)
- Trail: Move stop to break-even after T1