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 Expanding Thrust Runner is a pure price-action momentum-continuation strategy for MetaTrader 5 that trades breakouts of accelerating candle runs without using a single technical indicator. Instead of relying on moving averages, oscillators, or other calculated overlays, it reads raw OHLC (Open, High, Low, Close) candle data directly and looks for a short burst of same-direction candles that are gaining strength as they go. In plain terms, it tries to join a move while it is still expanding, rather than waiting for a pullback or a lagging indicator to confirm.
The core idea is that genuine momentum reveals itself as acceleration, not just direction. A market that is merely drifting higher looks very different from one where each candle closes near its extreme, each high tops the previous high, and the candles themselves are getting bigger. The Expanding Thrust Runner waits for all three of those "pressure signatures" to line up on the most recently closed candle before it acts. This makes it a trend-continuation, or "thrust-following," approach rather than a reversal or mean-reversion system.
As a learning tool, this strategy is well suited to traders who want to understand price action and market structure without the clutter of indicators. Because every condition is derived from candle geometry — close location within the range, sequential highs and lows, and range expansion — it is a clean example of how raw price behavior can be turned into rule-based logic. It is best treated as a study of momentum mechanics, not as a shortcut to results.
How It Works
The Expanding Thrust Runner evaluates the market once per newly closed candle. It never acts on the still-forming bar, and it holds only one position at a time per magic number, letting the stop-loss and take-profit manage the exit. When a candle closes, the strategy inspects the run of the most recent ThrustBars candles (3 by default) and checks whether three conditions stack up together.
Entry conditions (all must align on the just-closed run):
- Closing pressure — Every candle in the run must close in the extreme portion of its own range. For longs, each candle must be bullish and close at least
ClosePosMinof the way toward its high; for shorts, each must be bearish and close at least that far toward its low. This signals that buyers (or sellers) stayed in control into every close. - Sequential structure — The run must show strictly stair-stepping structure: each candle's high above the previous high for longs (higher-highs), or each low below the previous low for shorts (lower-lows). This confirms an orderly, directional advance rather than choppy overlap.
- Expansion (acceleration) — The freshest candle's range must be at least as large as the run's first candle, so the move is speeding up, not fading. In addition, the run's net travel (newest close minus oldest open) must be at least
MinThrustMulttimes the recent average candle range, measured over a window ofRangeWindowbars behind the run. This filters out small, insignificant thrusts.
The strategy signals a long when all bullish conditions align, and a short when all bearish conditions align. A market order is then sent at the current Ask (for buys) or Bid (for sells).
Stop-loss logic:
- For longs, the stop is placed below the run's lowest low, minus a buffer equal to
StopBufferFracof the last candle's range. - For shorts, the stop is placed above the run's highest high, plus the same buffer.
- This anchors the stop to the actual swing extreme of the thrust, so the trade is invalidated if price reverses through the structure that triggered it.
Take-profit logic:
- The risk (distance from entry to stop) is measured, then the take-profit is set at
RewardRisktimes that risk in the direction of the trade. With the default of 1.6, the target distance is 1.6 times the stop distance, giving a fixed reward-to-risk ratio on every trade.
Once a position is open, no further entries are taken until it closes via its stop or target.

Strategy Parameters
| Parameter | Default | Min | Max | Description |
|---|---|---|---|---|
| ThrustBars | 3 | 2 | 6 | Number of consecutive same-direction candles that must form the thrust run. |
| ClosePosMin | 0.65 | 0.50 | 0.90 | How far into its range each run candle must close (1.0 = exactly at the extreme high or low). |
| MinThrustMult | 2.0 | 1.0 | 5.0 | The run's net travel must be at least this multiple of the recent average candle range. |
| RangeWindow | 14 | 8 | 30 | Window of bars (behind the run) used to compute the average candle-range yardstick. |
| StopBufferFrac | 0.3 | 0.05 | 0.8 | Extra stop buffer beyond the run's swing extreme, as a fraction of the last candle's range. |
| RewardRisk | 1.6 | 1.0 | 3.5 | Take-profit distance expressed as a multiple of the stop-loss risk. |
| Lots | 0.10 | 0.01 | 1.0 | Fixed position size in lots. |

Recommended Chart Settings
The Expanding Thrust Runner is a candle-pattern strategy, so it works on any symbol where clean directional thrusts appear. It was designed with liquid markets and intraday-to-swing timeframes in mind — for example, major forex pairs or index CFDs on the H1 (1-hour) or H4 (4-hour) charts, where range expansion is meaningful and noise is reduced compared with very low timeframes. Higher timeframes tend to produce fewer but cleaner thrust signals.
Because the strategy measures thrusts relative to the recent average range, it naturally adapts to each instrument's volatility. That said, results will vary considerably across different symbols, sessions, and market conditions. Always test the parameters on the specific instrument and timeframe you intend to study before drawing any conclusions.
How to Install on MetaTrader 5
- Download the
ExpandingThrustRunner.ex5file 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
The main strength of this approach is its transparency. With no indicators, there is no lag from smoothing or repainting — every decision is traceable to specific candle highs, lows, and closes. The triple-condition filter (pressure, structure, expansion) is deliberately strict, so it tends to ignore weak, indecisive moves and only engages when momentum is clearly building. The swing-anchored stop and fixed reward-to-risk target also give the strategy a clean, mechanical risk profile that is easy to study.
The limitations are equally important to understand. Momentum-continuation systems are vulnerable to exhaustion: a strong run can be the end of a move rather than the middle, meaning the EA may sometimes enter just as buyers or sellers run out of energy. In ranging or choppy markets, thrusts frequently fail and reverse, which can lead to a string of stopped-out trades. The strict structure requirement also means the strategy will sit idle for long stretches when the market is not trending, which may not suit those expecting frequent signals.
Like all rule-based systems, performance is sensitive to parameter choices and to the spread and execution quality of your broker, since entries are taken at market immediately after a candle closes. This EA may underperform during low-volatility sessions, around major news releases, and on instruments prone to sudden gaps. It should be viewed as an educational framework for studying momentum, not a finished, set-and-forget solution.
Risk Management Tips
Sound risk management matters far more than any single entry rule. As a general educational guideline, consider the following principles:
- Risk a small, fixed percentage per trade — many educators suggest never risking more than 1–2% of account equity on any single position. Adjust the
Lotsparameter so the distance to your stop reflects that percentage. - Test on a demo account first — run the strategy in simulation or on a demo for an extended period before considering any live use, so you understand its behavior across different conditions.
- Understand drawdown — even a well-designed momentum system will experience losing streaks. Know how large a peak-to-trough equity decline you are willing to tolerate before you begin.
- Use the strategy tester — backtest and forward-test on the exact symbol and timeframe you intend to study, and review how parameter changes affect the number and quality of signals.
- Avoid over-leverage — leverage magnifies both gains and losses; keep position sizes conservative relative to your account.
Treat every result as data for learning, and never deploy capital you cannot afford to lose.
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: ExpandingThrustRunner.ex5 (2 downloads)
- Source Code: ExpandingThrustRunner.mq5 (2 downloads)
- Documentation: ExpandingThrustRunner.pdf (3 downloads)