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 Session Open Drive Breakout is a pure price-action, opening-range breakout strategy for MetaTrader 5 that uses no technical indicators at all — no moving averages, no RSI, no ATR. Its entire logic is built on one classic intraday observation: when a major trading session opens (for example, the London open around 07:00 UTC), the first few bars tend to carve out a tight "opening range," and the first decisive move out of that range often sets the directional drive for the rest of the session. An opening range is simply the high-to-low band that price builds during a defined window right after the session begins.
This approach is designed for the volatility burst that accompanies a session open. Forex majors and stock indices frequently experience a surge of order flow when liquidity arrives at the start of London or New York, and that surge can produce clean, one-directional moves. The strategy is built to wait for that expansion rather than predict it — it anchors itself to a specific UTC hour, measures the opening range, and then trades the first confirmed breakout in whichever direction the market commits to.
As a learning tool, the Session Open Drive Breakout is well suited to traders who want to study time-anchored breakout mechanics and disciplined, once-per-day execution without the noise of layered indicators. Because it is point-size and timeframe agnostic — its buffers and stops are expressed as fractions of the measured range — it adapts to whatever symbol and timeframe you backtest. Treat it as a framework for understanding session structure, not as a profit opportunity.
How It Works
The strategy resets its state at the start of every new UTC calendar day and then moves through three distinct phases. Here is how a trading day unfolds:
- Bars before the session are ignored. Any bar that closes before
SessionStartHouris skipped entirely. No range is measured and no trade is considered. - Phase 1 — building the opening range. Starting at the first bar at or after
SessionStartHour, the strategy records a running high and low across the firstRangeBarsbars. While the range is still forming, the strategy never trades — it is only measuring. - Phase 2 — locking the range. Once
RangeBarsbars have been collected, the opening range is locked. ItsrangeHighandrangeLowdefine the band that price must escape to generate a signal. - The breakout signal — long. The strategy signals a long entry when a bar closes above the locked range high plus a buffer (
close > rangeHigh + buffer). The buffer is a fraction of the range size, so it scales automatically with how wide or narrow the opening range turned out to be. - The breakout signal — short. Conversely, the strategy signals a short entry when a bar closes below the locked range low minus the buffer (
close < rangeLow - buffer). - One trade per day, inside a window. Only the first qualifying breakout is taken, and only while the current hour is inside the
[SessionStartHour, SessionEndHour)window. After a trade is placed, no further entries are attempted that day.
The exit logic is structural and fully defined at entry:
- Stop-loss. For a long, the stop sits just past the opposite side of the opening range (
rangeLow - buffer). The reasoning is that a breakout which snaps all the way back through the far side of the range has failed — that reversal is the invalidation. For a short, the stop sits atrangeHigh + buffer. - Take-profit. The target is placed at a fixed multiple of the structural stop distance, set by
RewardRatio. With the default reward ratio of 2.0, the take-profit is twice the distance from entry to stop, giving a 1:2 risk-to-reward structure. - After the window closes. Once the clock passes
SessionEndHour, no new trades open, but any position already running continues to ride on its own stop-loss and take-profit.
Because both the entry buffer and the stop are expressed as fractions of the measured range rather than as fixed points, the strategy behaves consistently whether you run it on a tight, low-volatility day or a wide, fast-moving one.

Strategy Parameters
| Parameter | Default | Min | Max | Description |
|---|---|---|---|---|
| SessionStartHour | 7 | 0 | 23 | UTC hour at which the session and opening-range measurement begin (7 ≈ London open). |
| RangeBars | 4 | 1 | 12 | Number of bars from the session start used to build the opening range. |
| SessionEndHour | 16 | 1 | 24 | UTC hour after which no new trades are opened; open positions keep running on SL/TP. |
| BreakBufferFrac | 0.05 | 0.00 | 0.50 | Breakout and stop buffer, expressed as a fraction of the opening-range size. |
| RewardRatio | 2.00 | 1.00 | 6.00 | Take-profit distance as a multiple of the structural stop distance. |
| Lots | 0.10 | 0.01 | 1.00 | Order volume (position size) in lots. |
| Magic | 8801 | 0 | 9,999,999 | Unique magic number used to identify and manage this EA's trades. |

Recommended Chart Settings
The Session Open Drive Breakout was designed for intraday instruments that produce clean directional drives at session opens — typically a forex major such as EURUSD or GBPUSD, or a stock index such as US30 — on M15 to H1 timeframes. These charts give the opening range enough bars to form a meaningful band while still leaving room for the session's expansion to develop.
One important note on time: the MQL5 version keys its session hours off bar time, which MetaTrader 5 reports in the broker's server time, not UTC. If your broker's server clock is not set to UTC, you will need to shift SessionStartHour and SessionEndHour by your broker's UTC offset to reproduce the intended behavior. Results will vary across symbols, brokers, and market conditions, so confirm the session alignment on your own platform 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
The main strength of this approach is its simplicity and transparency. With no indicators to lag or repaint, every decision is traceable to a clear rule: the opening range, the buffered breakout close, and a structurally placed stop. The fraction-based buffers make it adaptable across symbols and timeframes, and the "one trade per day" constraint enforces discipline that discretionary breakout traders often struggle to maintain.
That same simplicity is also its limitation. Opening-range breakout systems historically perform best in trending or news-driven sessions and tend to struggle in quiet, range-bound conditions, where price may break the buffer only to reverse — producing what traders call a "false breakout" or "fakeout." Because the stop sits on the opposite side of the range, a choppy day can stop the trade out near the worst point of a whipsaw. The strategy also commits to the first breakout of the day, so it cannot re-enter if that initial move fails and the real drive comes later.
Other factors to weigh: the fixed RewardRatio target does not adapt to support or resistance levels that may sit between entry and the take-profit, and the server-time-versus-UTC distinction means a misaligned clock can anchor the range to the wrong session entirely. Spread and slippage around volatile session opens can also affect fills. None of this makes the strategy good or bad — it simply means the logic should be studied and tested honestly on your own data.
Risk Management Tips
Sound risk management matters far more than any single entry rule. Consider these general principles as you study this strategy:
- Size positions deliberately. Rather than leaving
Lotsat a default, calculate a position size so that the distance to your stop represents a small, fixed share of your account. - Risk only 1–2% per trade. A widely taught guideline is to risk no more than 1–2% of account equity on any single position, so that a string of losses does not threaten your capital.
- Test on a demo account first. Run the strategy on a demo account and across different market regimes before considering anything else. This lets you observe its behavior without financial exposure.
- Understand drawdown. Every strategy experiences losing streaks. Study the depth and duration of historical drawdowns so you know what a normal rough patch looks like and can plan accordingly.
- Verify your session alignment. Because the edge is time-anchored, confirm that your broker's server time maps correctly to the session you intend to trade.
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: SessionOpenDriveBreakout.ex5 (0 downloads)
- Source Code: SessionOpenDriveBreakout.mq5 (0 downloads)
- Documentation: SessionOpenDriveBreakout.pdf (0 downloads)