Disclaimer: This article is for educational and informational purposes only. It does not constitute financial or investment advice. Trading forex and CFDs carries significant risk of loss. Past performance of any strategy — including backtests — does not guarantee future results. Never trade with money you cannot afford to lose.
What Is This Strategy?
The Closing Range Thrust Scalper is a pure price-action, momentum-continuation scalping strategy that uses closing-range location — where a candle's close sits inside its own high-low range — as its primary read of the market. Unlike most automated systems, it relies on no indicators at all: there is no moving average, no RSI, no ATR, and no oscillator. Everything it decides is computed directly from raw candle geometry — the open, high, low, and close of recently closed bars.
The central idea is simple. When a single bar opens near its low and shoves its close hard into the top of its range, that footprint shows buyers winning the auction within that bar. The mirror image — a close jammed into the bottom of the range — shows sellers in control. The strategy is built to trade with that thrust (a "continuation" trade that bets the move keeps going), not against it. It only acts when a freshly closed bar shows genuine expansion and breaks local structure, so it tends to ignore quiet, choppy conditions and engage during bursts of directional momentum.
As a learning tool, this strategy is well suited to traders who want to study price action and candlestick anatomy without the lag and clutter of traditional indicators. Because it is a "scalper," it is designed for lower timeframes and frequent, short-duration trades. This article frames the system as a strategy analysis — a way to understand how thrust bars and closing-range location can be encoded into objective rules — rather than as a profit opportunity.
How It Works
The strategy evaluates the market once per freshly closed bar. It looks at the just-closed bar (the "thrust" candidate) and the bar immediately before it (the "prior" bar, which defines the structure to break). Three pure price-action conditions must line up before any trade is signalled.
- Closing-range location: The thrust bar must close within the top
CloseLocPct%of its own range for a long, or the bottomCloseLocPct%for a short. This proves the close was genuinely pushed toward one extreme rather than printing a neutral doji (a candle that opens and closes near the same level). - Conviction (range expansion): The thrust bar's high-low range must be at least
ThrustMulttimes the recent average range, measured over the lastRangePeriodbars. This filters out small bars and ensures the strategy only reacts when a candle truly expanded versus its recent norm. - Breakout of structure: For a long, the thrust bar's close must clear the prior bar's high; for a short, it must close below the prior bar's low. This confirms the thrust broke local structure rather than staying contained inside it.
Both directions are fully symmetric:
- A bullish thrust bar that closes up, jams its close into the top of its range, and breaks the prior high signals a continuation BUY.
- A bearish thrust bar that closes down, jams its close into the bottom of its range, and breaks the prior low signals a continuation SELL.
The exit logic is entirely rule-based and set at entry:
- Stop-loss: Placed just beyond the thrust bar's opposite extreme. For a long, the stop sits below the thrust bar's low (minus a small buffer); for a short, above the thrust bar's high (plus a buffer). The buffer is a configurable percentage of the thrust bar's range, so the stop is derived from price structure rather than a fixed pip count.
- Take-profit: Set at a configurable reward-to-risk multiple (
RewardRisk) of the measured stop distance. If the risk from entry to stop is a given distance, the target is placed that distance multiplied by the reward:risk setting away from entry. - Trade management: Only one position per magic number is allowed at a time, and the stop-loss/take-profit pair manages the exit — there is no trailing or partial-close logic. A spread filter (
MaxSpreadPoints) skips signals when the spread is too wide, helping keep the scalp realistic.
Because every value is computed from bar geometry, the same logic behaves consistently across symbols and timeframes — only the scale of the numbers changes.

Strategy Parameters
| Parameter | Default | Min | Max | Description |
|---|---|---|---|---|
| RangePeriod | 14 | 5 | 50 | Number of bars used to compute the recent average range that the thrust bar is compared against. |
| ThrustMult | 1.3 | 1.0 | 3.5 | The thrust bar's range must be at least this multiple of the average range to count as genuine expansion. |
| CloseLocPct | 70.0 | 50.0 | 95.0 | Required closing-range location, in percent. A bar must close in the top (long) or bottom (short) this share of its range. |
| RewardRisk | 1.5 | 0.5 | 4.0 | Reward-to-risk multiple used to set the take-profit relative to the stop distance. |
| StopBufferPct | 20.0 | 0.0 | 100.0 | Extra stop-loss padding, expressed as a percentage of the thrust bar's range, placed beyond the bar's extreme. |
| MaxSpreadPoints | 30 | 0 | 200 | Maximum allowable spread (in points) to take a trade; 0 disables the filter. |
| Lots | 0.10 | 0.01 | 1.0 | Fixed lot size used for each position. |

Recommended Chart Settings
The Closing Range Thrust Scalper is built as a scalping system, which historically suits lower intraday timeframes such as the M1, M5, or M15 charts, where thrust bars and short continuation moves occur frequently. It can be applied to liquid forex pairs (for example, major pairs with tight spreads), indices, or other instruments where the spread filter can realistically be satisfied.
Because the logic is symbol-agnostic and derives all of its thresholds from each instrument's own recent range, there is no single "correct" market. That said, results will vary considerably across different symbols, sessions, and market conditions. You are encouraged to test the strategy on a demo account across several instruments and timeframes to understand how the parameters respond to each one before drawing any conclusions.
How to Install on MetaTrader 5
- Download the .ex5 file from the link below
- Copy it to your MT5
MQL5\Expertsfolder - Restart MetaTrader 5 or refresh the Navigator panel
- Drag the EA onto a chart matching the recommended symbol and timeframe
- Configure the input parameters and enable Algo Trading
What to Consider Before Using This EA
Like any approach, the Closing Range Thrust Scalper has clear strengths and equally clear limitations, and understanding both is part of using it responsibly.
Strengths. Because it uses no indicators, the strategy reacts directly to price with no smoothing lag — a thrust bar is recognized the moment it closes. Its rules are objective and symmetric, treating longs and shorts identically, which removes directional bias. The structural stop-loss adapts to each bar's size, so risk is defined by the market rather than a fixed guess, and the spread filter helps avoid taking scalps in poor execution conditions.
Limitations. Momentum-continuation systems are vulnerable to false breakouts, where a bar thrusts and breaks structure only to reverse on the following bars — a common pattern in ranging or mean-reverting markets. As a scalper, the strategy also trades relatively often, which means transaction costs (spread and commission) accumulate and can weigh heavily on net outcomes. The fixed reward:risk target means trades exit mechanically and may close before a larger move develops, or give back open profit when a target is not reached. There is no news filter, so high-impact economic releases can trigger or invalidate signals unpredictably.
Where it may underperform. Quiet, low-volatility sessions tend to produce few qualifying bars, while violently whipsawing conditions can produce thrusts in both directions that repeatedly hit stops. The strategy historically performs best when momentum is persistent rather than erratic — but no parameter set guarantees that environment will appear.
Risk Management Tips
Sound risk management matters far more than any single entry rule. The following are general educational principles, not advice tailored to your situation.
- Risk a small, fixed fraction per trade. Many educators suggest risking no more than 1–2% of account equity on any single position. The fixed
Lotssetting in this EA does not scale to your balance, so size it deliberately for the account and instrument you are testing. - Use a demo account first. Run the strategy on a demo or simulated account for an extended period across varied conditions before considering anything else. This lets you observe behavior without financial exposure.
- Understand drawdown. Every strategy experiences losing streaks. Study the maximum peak-to-trough decline in equity you could tolerate, and recognize that historical drawdown can be exceeded in live conditions.
- Account for costs. Because scalping trades frequently, spread and commission can materially affect results. Use the
MaxSpreadPointsfilter and choose instruments with competitive spreads. - Avoid over-optimization. Tuning parameters until they fit one historical period (curve-fitting) often produces results that do not hold up out of sample. Favor settings that are robust across multiple periods and symbols.
Risk Warning
Trading foreign exchange, CFDs, and other leveraged financial instruments involves substantial risk of loss and is not suitable for all investors. The strategies and tools discussed on this page are provided for educational purposes only and do not constitute financial advice, investment recommendations, or solicitation to trade. Always consult a qualified financial adviser before making trading decisions. Past backtest performance is not indicative of future results.
Downloads
- Expert Advisor: ClosingRangeThrustScalper.ex5 (1 downloads)
- Source Code: ClosingRangeThrustScalper.mq5 (3 downloads)
- Documentation: ClosingRangeThrustScalper.pdf (2 downloads)