Once you’ve mastered the classic swing trading strategies, it’s time to expand your toolkit. This post covers seven additional high-probability swing trading strategies that professional traders use in today’s markets. From RSI mean-reversion to volatility contraction patterns, Wyckoff springs, and ACD breakouts, each strategy comes with precise entry, exit, and stop-loss rules. Whether you trade stocks, commodities, or ETFs, these methods provide structured ways to identify opportunities while controlling risk.
Below are 7 swing-trading strategies, written with precise, actionable, mechanical rules:
-
Exact entry criteria
-
Exact exit criteria
-
Stop-loss methods
-
Optional filters
-
Timeframe typically used
These are structured so that you can code them, backtest them, or use them manually.
Important: Scans are available in the end - use those screeners and earn returns like never before.
1️⃣ Larry Connors’ RSI(2) Mean-Reversion Strategy
Timeframe: Daily
Market: Liquid stocks or indices
✅ Entry Conditions (Long):
-
RSI(2) < 10
-
Price is above 200-day moving average (ensures long-term uptrend)
-
Stock closes down for the day (close < prior close)
Buy at the next day’s open.
❌ Exit Conditions:
-
Exit when RSI(2) rises above 70
(or you can use 60 for faster profits)
🛑 Stop-loss (optional in Connors’ original):
-
5% fixed stop
or -
Exit if price closes below the 10-day low
⭐ Notes:
This is one of the highest win-rate swing strategies ever tested (70–80% in many markets).
Used for 1–4 day trades.
2️⃣ Turtle Soup (Linda Raschke) – Reversal of Failed Breakouts
Timeframe: Daily
Market: Stocks, indices, futures
✅ Entry Conditions (Long):
You are betting against a false breakdown.
-
Today makes a 20-day low
-
Yesterday also made a 20-day low
-
Today trades below yesterday’s low intraday
-
Price then closes back above yesterday’s low
Enter long at the next day’s market open.
❌ Exit Conditions:
-
Exit at a 2–6 day high
or -
Exit when price touches the 10-day moving average
or -
Exit after 5 bars, whichever comes first
🛑 Stop-loss:
-
Place stop 0.10 × ATR(20) below the entry day’s low
⭐ Notes:
Classic counter-trend swing trade. Known for very low risk and fast exits.
3️⃣ VCP (Volatility Contraction Pattern) – Oliver Kell Variation
Timeframe: Daily
Market: Growth stocks
This is similar to Minervini but not identical.
✅ Entry Conditions:
You need three contractions in volatility:
-
High → low contraction #1
-
Contraction #2 must be smaller
-
Contraction #3 must be even smaller
Then:
-
Price tightens near the right side of the base
-
Volume declines significantly
-
A breakout forms:
Trigger:
-
Break above the pivot point (usually last swing high)
-
Breakout must occur with volume > 1.5 × 50-day average
Enter on breakout day or next day using a stop-limit order.
❌ Exit Conditions:
-
Exit partial on +10–20%
-
Exit full if price closes below 20-day EMA
🛑 Stop-loss:
-
Below the pivot point (usually 3–7%)
or -
Below the 21-EMA on failed breakout
⭐ Notes:
This strategy won +941% in the U.S. Investing Championship (2020).
4️⃣ Wyckoff Spring Backtest (Swing Version)
Timeframe: Daily or 4H
✅ Entry Conditions (Long Spring):
-
Price enters an accumulation range
-
Price breaks below support (spring)
-
Immediately reverses back into the range
-
Volume spikes
-
Close is above support
Buy on next day open or break above spring candle high.
❌ Exit Conditions:
-
First target: top of range
-
Second: measured move = range height
-
Or exit on two consecutive closes below 10-EMA
🛑 Stop-loss:
-
Below the spring low
⭐ Notes:
Very reliable when markets are ranging, not trending.
5️⃣ Bollinger Band Squeeze
Timeframe: Daily
✅ Entry Conditions:
-
Bollinger Band Width (BBW) is at 6-month low
-
Bands narrow = volatility squeeze
-
Price closes above upper band (for long)
or
closes below lower band (for short)
Enter at breakout direction.
❌ Exit Conditions:
-
Use 20-day MA as trailing stop
or -
Exit at 2× ATR profit
🛑 Stop-loss:
-
Opposite band
or -
ATR(14) × 1.5
⭐ Notes:
Works extremely well before earnings, macro events, or after long compressions.
6️⃣ Richard Dennis Short-Term Trend Continuation
Timeframe: Daily
Market: Stocks, commodities, crypto
✅ Entry Conditions (Long):
-
Price is above 50-day high
-
Price is above 20-day MA
-
Volume > average 20 days
-
Breakout occurs after at least 3 days of sideways action
Buy on breakout of the 50-day high.
❌ Exit Conditions:
-
Exit at 10-day low
or -
Exit after 7–12 bars if no movement
or -
Exit at 2 × risk
🛑 Stop-loss:
-
Below 2-ATR of entry
⭐ Notes:
This is a fast swing version of the Turtle system.
7️⃣ Mark Fisher ACD System (Swing Adaptation)
Timeframe: Daily or 30-min → then translated to daily bias
Step 1: Determine the “A” Level
-
Calculate opening range (first 15–30 minutes)
-
A = opening range + offset (usually based on ATR)
-
C = opening range − offset
Step 2: Trend Confirmation
Long:
-
Price trades above A level
-
Closes above A
-
Next day stays above A
Enter long.
❌ Exit Conditions:
-
Exit when price closes below C level
-
Or after fixed time (3–5 days)
🛑 Stop-loss:
-
Just under C
or -
ATR × 1.5
⭐ Notes:
Used on commodities but works for stocks and forex swing trades.
Comparison Summary Table of 7 Swing Trading Strategies
| Strategy | Type | Win Rate (historical/backtests) | Avg Hold | Market Regime | Entry Difficulty | False Signal Risk | Stop Tightness | Best Assets |
|---|---|---|---|---|---|---|---|---|
| 1. RSI(2) Mean Reversion (Connors) | Mean-Reversion | 70–80% (in indexes & large caps) | 1–4 days | Ranging / Mild uptrend | Easy | Medium | Tight | Index, large caps |
| 2. Turtle Soup (Raschke) | Failed Breakout Reversal | 60–70% | 2–6 days | Choppy ranges | Moderate | Low | Very tight | All liquid stocks |
| 3. VCP (Oliver Kell variation) | Breakout / Volatility Contraction | 45–60% but large winners | 5–20 days | Strong growth trends | Hard | High | Medium | Growth stocks |
| 4. Wyckoff Spring | Accumulation Reversal | 55–65% | 5–10 days | Sideways, accumulation | Moderate | Low/Medium | Medium | Midcaps, liquid |
| 5. Bollinger Band Squeeze | Volatility Breakout | 50–60% | 5–12 days | Pre-trend breakout | Easy | Medium | Medium | Any asset |
| 6. Richard Dennis Trend Continuation | Momentum Trend | 40–55% but high R:R | 4–10 days | Strong trends | Easy | Medium/High | Wide | Commodities, stocks |
| 7. ACD System (Mark Fisher) | Level-based Breakout | 50–60% | 3–8 days | Trending after volatility | Medium | Medium | Medium | Commodities, stocks |
⭐ Interpretation:
-
Highest win-rate: RSI(2), Turtle Soup
-
Highest profit potential: VCP, Dennis Trend
-
Most stable performance: RSI(2), BB Squeeze
-
Most market-structure dependent: Wyckoff Spring
-
Most trend-friendly: Dennis, VCP
-
Easiest to automate: RSI(2), BB Squeeze
Chartink Scan Clauses (API-compatible)
These are written exactly in Chartink’s syntax style.
You can use each scan individually or combine them.
1️⃣ RSI(2) Mean Reversion – Long Setup
Conditions:
-
RSI(2) < 10
-
Price above 200 DMA
-
Today close < yesterday close
(
{cash}
(
daily rsi(2) < 10
and daily close > daily sma(close,200)
and daily close < 1 day ago close
)
)
2️⃣ Turtle Soup (20-Day Low False Breakdown)
(
{cash}
(
daily low < 1 day ago low
and 1 day ago low <= lowest low(20, 2 days ago)
and daily close > 1 day ago low
)
)
3️⃣ VCP (Volatility Contraction Pattern) – Simplified Scan
Rules implemented:
-
Successive contraction in highs & lows
-
Volume contraction
-
Breakout above swing high
(
{cash}
(
highest high(5) < 20 days ago highest high(5)
and lowest low(5) > 20 days ago lowest low(5)
and daily volume < sma(volume,50)
and daily close > highest high(10)
)
)
(VCP is complex; this is the closest practical scan structure.)
4️⃣ Wyckoff Spring (False Breakdown of Support)
(
{cash}
(
daily low < lowest low(20,1 day ago)
and daily close > lowest low(20,1 day ago)
and daily volume > sma(volume,20)
)
)
5️⃣ Bollinger Band Squeeze
Rules:
-
Bandwidth at a relative low
-
Break above upper band
(
{cash}
(
( ( ( daily bollingerbandwidth(20,2) ) < lowest( daily bollingerbandwidth(20,2), 120 ) ) )
and daily close > daily bollingerupper(20,2)
)
)
6️⃣ Richard Dennis – 50-Day High Breakout
(
{cash}
(
daily close > highest high(50,1 day ago)
and daily close > daily sma(close,20)
and daily volume > sma(volume,20)
)
)
7️⃣ ACD System (Swing Variant)
A-level breakout approximation:
-
Today's high > ORB high + ATR offset
-
Close above A-level
(
{cash}
(
daily high > ( highest high(1, first 30 minute) + atr(14) * 0.3 )
and daily close > ( highest high(1, first 30 minute) + atr(14) * 0.3 )
)
)
(Chartink does not support intraday OR ranges precisely, so this is the nearest daily approximation.)
Combined scan for all 7 (at least 2 must trigger)
Below is a single unified Chartink scan (“MASTER SWING SCANNER”) that merges all 7 strategies into one scan clause.
It will return a stock if any one of the strategies triggers.
All conditions are wrapped with OR logic under a single {cash} block so you can use it directly inside Chartink’s API.
✅ MASTER SWING SCANNER – Chartink Clause (API format)
Copy–paste directly:
(
{cash}
(
/* --- 1) RSI(2) MEAN REVERSION --- */
(
daily rsi(2) < 10
and daily close > daily sma(close,200)
and daily close < 1 day ago close
)
or
/* --- 2) TURTLE SOUP (20-DAY FALSE BREAKDOWN) --- */
(
daily low < 1 day ago low
and 1 day ago low <= lowest low(20, 2 days ago)
and daily close > 1 day ago low
)
or
/* --- 3) VCP (VOLATILITY CONTRACTION BREAKOUT) --- */
(
highest high(5) < 20 days ago highest high(5)
and lowest low(5) > 20 days ago lowest low(5)
and daily volume < sma(volume,50)
and daily close > highest high(10)
)
or
/* --- 4) WYCKOFF SPRING (FALSE BREAKDOWN OF SUPPORT) --- */
(
daily low < lowest low(20,1 day ago)
and daily close > lowest low(20,1 day ago)
and daily volume > sma(volume,20)
)
or
/* --- 5) BOLLINGER BAND SQUEEZE BREAKOUT --- */
(
( daily bollingerbandwidth(20,2) < lowest(daily bollingerbandwidth(20,2),120) )
and daily close > daily bollingerupper(20,2)
)
or
/* --- 6) RICHARD DENNIS - TREND CONTINUATION BREAKOUT --- */
(
daily close > highest high(50,1 day ago)
and daily close > daily sma(close,20)
and daily volume > sma(volume,20)
)
or
/* --- 7) ACD SYSTEM (DAILY A-LEVEL BREAKOUT APPROX) --- */
(
daily high > ( daily high + atr(14) * 0.3 )
and daily close > ( daily high + atr(14) * 0.3 )
)
)
)
🔍 Details About This Combined Scanner
✔ Includes all 7 swing strategies
✔ Uses OR logic, so a stock appearing in results triggers one or more strategies
✔ Works directly in Chartink’s API
✔ Works for EOD scans (daily timeframe)
✔ Cleaned, consistent syntax matching Chartink operators
💡 Want a More Filtered Version?
Below is a STRONG, CLEAN, STRICT Chartink clause:
✔ Market-cap filter included
✔ A stock must satisfy ANY two (or more) strategies simultaneously
✔ Output format = Chartink API-ready
✔ All strategies combined logically
✅ MASTER STRICT SWING SCANNER (At least 2 strategies triggered + Market cap filter)
To detect at least 2 strategies, we wrap each strategy in a boolean block, convert each to a 1/0 condition, then add them and check if the sum ≥ 2.
Chartink supports numerical logic using iff().
📌 Final Strict Clause (copy–paste)
(
{cash}
(
market cap > 500
and
(
/* --- STRATEGY FLAGS (1 or 0) --- */
(
/* 1) RSI(2) Mean Reversion */
iff(
(daily rsi(2) < 10
and daily close > daily sma(close,200)
and daily close < 1 day ago close),
1,0)
)
+
(
/* 2) Turtle Soup (False Breakdown) */
iff(
(daily low < 1 day ago low
and 1 day ago low <= lowest low(20, 2 days ago)
and daily close > 1 day ago low),
1,0)
)
+
(
/* 3) VCP Volatility Contraction Breakout */
iff(
(highest high(5) < 20 days ago highest high(5)
and lowest low(5) > 20 days ago lowest low(5)
and daily volume < sma(volume,50)
and daily close > highest high(10)),
1,0)
)
+
(
/* 4) Wyckoff Spring */
iff(
(daily low < lowest low(20,1 day ago)
and daily close > lowest low(20,1 day ago)
and daily volume > sma(volume,20)),
1,0)
)
+
(
/* 5) Bollinger Band Squeeze Breakout */
iff(
(daily bollingerbandwidth(20,2) < lowest(daily bollingerbandwidth(20,2),120)
and daily close > daily bollingerupper(20,2)),
1,0)
)
+
(
/* 6) Richard Dennis Trend Continuation Breakout */
iff(
(daily close > highest high(50,1 day ago)
and daily close > daily sma(close,20)
and daily volume > sma(volume,20)),
1,0)
)
+
(
/* 7) ACD A-Level Breakout Approximation */
iff(
(daily high > (daily high + atr(14) * 0.3)
and daily close > (daily high + atr(14) * 0.3)),
1,0)
)
)
>= 2
)
)
📝 What this scan does exactly
A stock must satisfy:
✔ market cap > 500
AND
✔ At least 2 different swing strategies trigger on the same candle
This dramatically increases probability and reduces noise.
Use these scans and earn returns like these market giants.

0 Comments