A purely price-action-based mean-reversion strategy for reliable intra-day trades.
Mean Reversion - Opening Fade
This last article on Mean Reversion is about one of my favourite Mean Reversion systems. It’s super simple and purely based on price action. It does not take a whole lot of trades, but the strike rate is pretty good. This strategy is different from the others in this season in that it looks to catch intra-day overextended moves. These moves are pretty rare but have a very good chance of reverting back to the mean, in this case the opening price for the session.
Disclaimer: Templates are for educational purposes only!
This strategy is designed to trade quick mean-reversion moves around a session open. As the name suggests, the idea is to fade a big move that occurs around the open. At the start of the trading session, at 06:00 in this case, we plot 2 levels, above and below the opening price from 06:00. These levels are our reversal levels. As an added layer of protection, we want to see a candle close through the level to say it’s truly overextended and not to get caught in flash crashes.
As a result, it will take a relatively small number of trades, but with good accuracy. The take profit for each trade is placed at the open price we save at 06:00.
Example of a Fade the Open Buy Trade
Let’s go through the exact strategy rules step-by-step:
At 6:00, save the close of the last 15-minute candle as the session open.
Calculate the lower band as the session open × 0.995.
Calculate the upper band as the session open × 1.005.
From 6:00 onward, check every 15-minute candle close.
Buy if the candle closes below the lower band.
Sell if the candle closes above the upper band.
Only trade if there are no open trades or active orders.
Only trade if there is no high-impact news nearby.
Use 1% risk per trade (default, up to your own preference)
Use a 0.5 percentage-of-price stop loss.
Use the session open level (from step 1) as take profit.
Add an expiration for open trades just before market close (22:45)
Reset all stored levels at the end of the day (22:45)
It looks like a lot, but it’s actually a very simple strategy to build.
Building the Opening Fade Strategy in Profectus
Building the Opening Fade Strategy in Profectus AI
Initiate the Variables. There are only 3 variables needed for this system. Create the following variables, with default values of 0:
Session_Open Upper_Band Lower_Band
Calculate the session open price. Start with a Run at Time block and set the start time to 06:00. Connect a Modify Variable block and set:
Session_Open = Candle, closing price Candle ID 1
Next, connect a Formula block to calculate the overextended levels. These are the formulas:
Build the buy-side trade logic. Start with a Run per candle block and attach a Run in Session block (06:00 - 22:00). Next, connect a Trade rule block and put:
Candle close Candle ID 1 < Lower_Band
Connect a Count trades block to specify no open trades at all, for buys and sells (Trade count = 0 , Order count = 0)
Then, connect the News Filter block so that the EA won’t open new trades just before a High-impact news event.
Finally, connect the Buy now block with the following settings:
Risk = 1% of balance (adjust to your own preference) Stop-Loss = 0.5 percentage of price Take-Profit = Custom price level: Session_Open Auto-Close Trade = Fixed time (22:45)
Build the sell-side trade logic. Start with a Run per candle block and attach a Run in Session block (06:00 - 22:00). Next, connect a Trade rule block and put:
Candle close Candle ID 1 > Upper_Band
Connect a Count trades block to specify no open trades at all, for buys and sells (Trade count = 0 , Order count = 0)
Then, connect the News Filter block so that the EA won’t open new trades just before a High-impact news event.
Finally, connect the Sell now block with the following settings:
Risk = 1% of balance (adjust to your own preference) Stop-Loss = 0.5 percentage of price Take-Profit = Custom price level Session_Open Auto-Close Trade = Fixed time (22:45)
Reset the variables end of day. The last step is to reset all the variables back to default value 0 at the end of the day (22:30). Take run at time block (22:30) and connect a Modify variable block. Put the following:
Session_Open = 0 Upper_Band = 0 Lower_Band = 0
Get Access to the Opening Fade Strategy
Want to see how the Opening Fade Strategy works when fully automated?
Access the automation template used to turn this trading concept into a deployable MQ5 trading bot inside Profectus AI. The template includes the entry logic and the trade-close module. It’s ready for testing!
You can test it on different symbols, adjust the timeframe, change the session window, and change the floating parameters for entering and exiting the trade.
Disclaimer: Templates are for educational purposes only!