No description
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
CHACHAIAN c992649e62 feat: complete Oops Gap Reversal Expert Advisor
- detect qualifying gap-up and gap-down setups
- track one active setup across later bars
- expire unconfirmed setups after the validity window
- confirm bullish and bearish reversals on completed bars
- recover structural stop levels from the original gap bar
- calculate risk-reward targets and broker-compatible volume
- support manual and percentage-based position sizing
- block overlapping EA-managed positions
- submit market orders and validate trade-server retcodes
- add visual and historical testing support
2026-07-31 13:14:04 +03:00
lwOopsPatternExpert.mq5 feat: complete Oops Gap Reversal Expert Advisor 2026-07-31 13:14:04 +03:00
lwOopsPatternExpert.mqproj Generated by MQL5 Wizard 2026-07-19 06:06:20 -07:00
README.md feat: add Larry Williams Oops gap reversal EA 2026-07-27 13:45:35 +03:00

Larry Williams Oops Gap Reversal Expert Advisor

An MQL5 Expert Advisor that detects and trades Larry Williams' Oops gap reversal pattern in MetaTrader 5.

The EA identifies qualifying gap-up and gap-down setups, tracks one active setup for a limited number of bars, confirms the reversal using a completed candle, calculates the stop loss, take profit, and position size, and validates the trade-server response before reporting success.

This repository supports the MQL5 article:

Larry Williams Market Secrets (Part 16): Detecting and Trading the Oops Gap Reversal Pattern


Purpose

The Oops pattern is simple to describe, but applying it consistently requires several decisions:

  • Whether the opening gap is large enough
  • How long the setup should remain active
  • Whether price has returned into the previous range
  • Where the stop loss should be placed
  • How the take profit should be calculated
  • What trade volume should be used
  • Whether another EA-managed position is already open
  • Whether the trade server accepted the order request

This Expert Advisor converts those decisions into explicit MQL5 rules that can be compiled, inspected, and tested in the MetaTrader 5 Strategy Tester.


Strategy Rules

Bullish setup

A bullish Oops setup requires:

  1. The current bar opens below the previous bar's low.
  2. The gap is at least minimumGapSizePoints.
  3. The setup remains within maxGapValidityBars.
  4. A later completed candle closes at or above the stored previous low.

The EA then prepares a buy trade.

  • Entry reference: current Ask price
  • Stop loss: low of the original gap bar
  • Take profit: entry price plus the risk distance multiplied by riskRewardRatio

Bearish setup

A bearish Oops setup requires:

  1. The current bar opens above the previous bar's high.
  2. The gap is at least minimumGapSizePoints.
  3. The setup remains within maxGapValidityBars.
  4. A later completed candle closes at or below the stored previous high.

The EA then prepares a sell trade.

  • Entry reference: current Bid price
  • Stop loss: high of the original gap bar
  • Take profit: entry price minus the risk distance multiplied by riskRewardRatio

Confirmation method

This implementation uses closed-bar confirmation.

The gap bar cannot confirm itself. A later completed candle must close through the stored previous-range boundary before the EA generates a signal.


Main Features

  • Gap-up and gap-down detection
  • Configurable minimum gap size
  • Configurable setup validity window
  • Closed-bar reversal confirmation
  • Persistent setup state across ticks and bars
  • Stop loss based on the original gap bar
  • Risk-reward-based take-profit calculation
  • Manual position sizing
  • Percentage-risk-based position sizing
  • Broker volume-limit handling
  • Long-only, short-only, or both-direction modes
  • One EA-managed position at a time
  • Checked symbol-property access
  • Checked candle-data access
  • Checked position-property access
  • Checked OrderCalcProfit() result
  • Trade-server return-code validation
  • Runtime diagnostics in the Experts log
  • Visual and historical Strategy Tester support

Requirements

  • MetaTrader 5
  • MetaEditor
  • Historical data for the selected symbol and timeframe
  • A demo account or Strategy Tester environment for testing

No external libraries are required.

The EA uses the standard MQL5 trading library:

#include <Trade\Trade.mqh>