Liquidity Sweeps Explained — How Smart Money Hunts Stop Losses
By HorizonAI Team
Ever watched price spike through your stop loss, only to immediately reverse in your original direction? That's not bad luck—it's a liquidity sweep.
Understanding how and why institutions hunt stop losses is one of the most valuable skills in trading. This guide explains liquidity sweeps in depth and shows you how to profit from them instead of being the victim.
What is a Liquidity Sweep?
A liquidity sweep (also called a "stop hunt" or "liquidity grab") occurs when price briefly breaks beyond a significant level to trigger clustered stop orders, then reverses sharply.
The mechanics:
- Stop losses cluster at obvious levels (swing highs/lows, round numbers)
- Institutions need liquidity (matching orders) to fill large positions
- They push price through these levels to trigger stops
- The triggered stops become their entry liquidity
- Price reverses once positions are filled
Key insight: The levels where retail traders place stops are exactly where institutions look to fill orders. Your "obvious" stop loss is their entry point.
Why Liquidity Sweeps Happen
Institutional traders can't simply buy or sell millions of dollars at market price—it would move price against them. They need counterparty liquidity.
Example: Institution wants to buy 10,000 contracts
- If they buy at market, price spikes up (bad fill)
- Instead, they push price DOWN to trigger sell stops
- Those sell stops = people selling to them at lower prices
- They absorb the selling, then price reverses up
The irony: Retail traders think they're protecting themselves with stop losses. Institutions see those stops as fuel for their entries.
Types of Liquidity
Understanding where liquidity pools form is key to anticipating sweeps:
Buy-Side Liquidity (BSL)
- Located above swing highs and resistance levels
- Contains: Buy stop orders, stop losses from shorts
- When swept: Price spikes above highs, triggers stops, then drops
Sell-Side Liquidity (SSL)
- Located below swing lows and support levels
- Contains: Sell stop orders, stop losses from longs
- When swept: Price spikes below lows, triggers stops, then rises
//@version=6
indicator("Liquidity Pools", overlay=true)
length = input.int(20, "Lookback Period")
// Identify swing highs and lows (liquidity pools)
swingHigh = ta.pivothigh(high, length, length)
swingLow = ta.pivotlow(low, length, length)
// Plot liquidity levels
plotshape(swingHigh, "BSL (Buy-side)", shape.triangledown, location.abovebar,
color.red, offset=-length, text="BSL")
plotshape(swingLow, "SSL (Sell-side)", shape.triangleup, location.belowbar,
color.green, offset=-length, text="SSL")
Equal Highs and Equal Lows
The most obvious liquidity pools form at equal highs and equal lows—levels price has touched multiple times.
Why Equal Levels Are Targets
When price touches the same level 2-3 times:
- Retail sees "strong support/resistance"
- They place stops just beyond these levels
- Institutions see concentrated liquidity
- These levels become prime sweep targets
Pro tip: The more times a level is tested, the more liquidity sits beyond it. Triple tops/bottoms are prime sweep targets.
Identifying a Liquidity Sweep
A completed liquidity sweep has these characteristics:
Sweep Structure
- Approach: Price moves toward liquidity pool
- Break: Price breaks beyond the level (triggering stops)
- Rejection: Strong reversal candle forms
- Follow-through: Price moves away from the level
Confirming a Valid Sweep
Bullish sweep (SSL taken):
- Price breaks below swing low/support
- Wick extends below, but body closes above
- Volume spike on the sweep candle
- Immediate bullish follow-through
Bearish sweep (BSL taken):
- Price breaks above swing high/resistance
- Wick extends above, but body closes below
- Volume spike on the sweep candle
- Immediate bearish follow-through
//@version=6
indicator("Liquidity Sweep Detection", overlay=true)
length = input.int(20, "Lookback")
// Recent swing levels
swingHigh = ta.highest(high, length)[1]
swingLow = ta.lowest(low, length)[1]
// Bullish sweep: Price goes below swing low but closes above
bullishSweep = low < swingLow and close > swingLow and close > open
// Bearish sweep: Price goes above swing high but closes below
bearishSweep = high > swingHigh and close < swingHigh and close < open
// Plot sweep signals
plotshape(bullishSweep, "Bullish Sweep", shape.labelup, location.belowbar,
color.green, text="SWEEP", textcolor=color.white)
plotshape(bearishSweep, "Bearish Sweep", shape.labeldown, location.abovebar,
color.red, text="SWEEP", textcolor=color.white)
Trading Liquidity Sweeps
Strategy 1: Fade the Sweep
Enter immediately after the sweep completes:
//@version=6
strategy("Fade the Sweep", overlay=true)
length = input.int(20, "Lookback")
atrMult = input.float(1.5, "ATR Stop Multiplier")
rrRatio = input.float(2.5, "Risk:Reward")
atr = ta.atr(14)
swingHigh = ta.highest(high, length)[1]
swingLow = ta.lowest(low, length)[1]
// Bullish sweep setup
bullishSweep = low < swingLow and close > swingLow and close > open
// Bearish sweep setup
bearishSweep = high > swingHigh and close < swingHigh and close < open
if bullishSweep
stopLoss = low - atr * atrMult
takeProfit = close + (close - stopLoss) * rrRatio
strategy.entry("Long", strategy.long)
strategy.exit("Exit Long", "Long", stop=stopLoss, limit=takeProfit)
if bearishSweep
stopLoss = high + atr * atrMult
takeProfit = close - (stopLoss - close) * rrRatio
strategy.entry("Short", strategy.short)
strategy.exit("Exit Short", "Short", stop=stopLoss, limit=takeProfit)
Strategy 2: Sweep + Order Block
Wait for sweep to create an order block, then enter on retest—this provides triple confluence.
Strategy 3: Sweep + FVG Entry
Enter when sweep leaves a Fair Value Gap. The sequence "Liquidity Sweep → Order Block → FVG → Entry on Retracement" is one of the highest probability setups in smart money trading.
Sweep Patterns to Watch
The Classic Stop Hunt
Price approaches a level, spikes through briefly, then reverses sharply in the opposite direction.
Sweep and Go
Price sweeps liquidity and immediately trends in the new direction:
- Downtrend approaches support
- Quick sweep below support
- Sharp V-reversal
- New uptrend begins
Double Sweep (Judas Swing)
Price sweeps one side, reverses, then sweeps the opposite side:
- Sweeps lows (grabs SSL)
- Moves up, traders go long
- Sweeps highs (grabs BSL)
- Real move begins downward
Warning: During high-impact news, both sides often get swept. Wait for the dust to settle before entering.
Time-Based Sweeps
Certain times of day are notorious for liquidity sweeps:
London Open (2-5 AM EST)
- Often sweeps Asian session highs or lows
- Sets up the day's directional move
New York Open (7-10 AM EST)
- May sweep London session extremes
- Highest volume = most significant sweeps
Session Overlaps
- London/NY overlap especially volatile
- Multiple sweeps possible
Stop Loss Placement After Sweeps
Once you identify a sweep, place your stop loss intelligently:
For Long Entries (After SSL Sweep)
- Aggressive: Just below the sweep wick
- Standard: Below the sweep candle body
- Conservative: Below the entire sweep structure + buffer
For Short Entries (After BSL Sweep)
- Aggressive: Just above the sweep wick
- Standard: Above the sweep candle body
- Conservative: Above the entire sweep structure + buffer
Avoiding Being Swept
While you can't avoid all stop hunts, you can reduce their impact:
1. Use ATR-Based Stops
Instead of placing stops at obvious levels, use volatility-based stops:
// Instead of: stop = swingLow
// Use: stop = entryPrice - atr * 2
2. Place Stops Beyond Liquidity
If the obvious stop is below support, place yours below that.
3. Use Time Stops
Exit if price doesn't move in your favor within X bars, rather than waiting for price stop.
4. Scale Out
Don't put your entire position at risk of a single sweep.
Building Sweep Strategies with HorizonAI
HorizonAI can help you detect and trade liquidity sweeps:
Detection prompts:
- "Create an indicator that marks swing highs and lows as liquidity pools"
- "Detect when price sweeps a recent swing low and closes above it"
- "Alert me when equal highs or equal lows form"
Strategy prompts:
- "Build a strategy that enters long after a bullish liquidity sweep"
- "Add confirmation: only trade sweeps that form an order block"
- "Only take sweep trades during London or NY session"
FAQs
How do I know if a sweep is complete?
Look for: 1) Wick beyond the level with body closing back inside, 2) Volume spike, 3) Strong momentum candle in opposite direction within 1-3 bars.
Do sweeps happen on all timeframes?
Yes, but higher timeframe sweeps are more significant. A sweep on the Daily chart carries more weight than a sweep on the 5-minute chart.
What's the difference between a sweep and a breakout?
A sweep quickly returns inside the broken level (failure). A breakout holds beyond the level and continues. Wait for the candle close to determine which it is.
Can I use sweeps for scalping?
Yes, but lower timeframe sweeps are noisier. Combine with higher timeframe direction for best results.
Summary
Liquidity sweeps reveal how institutions actually operate:
- Concept: Price hunts stop losses to fill large orders
- Identification: Break beyond level → rejection → reversal
- Locations: Swing highs/lows, equal highs/lows, session extremes
- Timing: Session opens, news events, overlap periods
- Strategy: Fade the sweep, enter with order block/FVG confluence
- Defense: Use ATR stops, place beyond obvious levels
The key mindset shift: instead of seeing stop hunts as "unfair," see them as opportunities. Stop being the liquidity. Start trading with the smart money.
Have questions about liquidity sweeps? Join our Discord to discuss with other traders!
