MT5 Expert Advisor - Multi-Timeframe Price Action Strategy (CP/BOS/Engulfing)

Job finished

Execution time 14 days

Specification

# Project Specification — MT5 Expert Advisor "Prince Strategy"

## Project Goal

Develop an Expert Advisor (trading robot) for MetaTrader 5 that automates a price-action trading strategy based on candlestick patterns across multiple timeframes. The robot must work on the forex.com broker.

---

## 1. Traded Instruments

The robot must trade the following 4 forex pairs:
- GBPUSD
- EURUSD
- NZDUSD
- AUDUSD

**Important note:** For backtesting, MT5 tests one pair at a time. The robot should therefore be designed to work on the symbol of the chart it is attached to (recommended approach), or reliably handle all 4 pairs if technically feasible.

---

## 2. Strategy Architecture: Multi-Timeframe (Top-Down) Approach

The strategy uses a sequence of two timeframes:

| Step | Timeframe | Role |
|------|-----------|------|
| Bias analysis | H1 (or M30) | Determine market direction |
| Confirmation & entry | M15 (or M5) | Confirm and enter the trade |

Both the bias timeframe and the confirmation timeframe must be configurable as inputs (H1/M30 for bias, M15/M5 for confirmation).

---

## 3. Determining the BIAS (on H1/M30)

The bias (bullish or bearish direction) is determined by ONE of the following 3 patterns:

### 3.1 — Continuation Pattern (CP)

A bullish CP consists of **exactly 3 candles**:
- **B1** (oldest): bullish candle
- **B2** (middle): bearish candle, very small
- **B3** (most recent): bullish candle

**Validity conditions for the bullish CP:**
1. B3 must **fully engulf the body of B2** (B3's body must exceed B2's body, not just equal it)
2. B3 must **not be significantly smaller than B1** (B3 can be equal to or larger than B1 — this is accepted)
3. The **upper wick of B2 must not exceed the high of B3**
   - The upper wick of B2 MAY exceed the high of B1 (accepted)
   - The lower wick of B2 MAY exceed the low of B1 (accepted)
   - The lower wick of B2 MAY exceed the low of B3 (accepted)
   - ONLY the upper wick of B2 exceeding the high of B3 invalidates the CP

**The bearish CP is the exact mirror** (B1 bearish, B2 bullish very small, B3 bearish engulfing B2).

**Special cases:**
- A CP can break a zone (support/resistance) OR form "in open space" (no key level). Both cases are valid.
- On the bias timeframe (H1/M30), B3 can be long without issue.

### 3.2 — Engulfing

A bullish engulfing consists of **2 candles**:
- **B1**: bearish candle (size does not matter)
- **B2**: bullish candle that engulfs **B1's body AND B1's UPPER wick**
  - The high of B2 must exceed the high of B1 (body + upper wick)
  - The **lower wick does NOT matter** (B1's lower wick may extend below B2 — this is accepted)

**The bearish engulfing is the exact mirror:**
- **B1**: bullish candle (size does not matter)
- **B2**: bearish candle that engulfs **B1's body AND B1's LOWER wick**
  - The low of B2 must go below the low of B1 (body + lower wick)
  - The **upper wick does NOT matter** (B1's upper wick may extend above B2 — this is accepted)

**Clarification (important):** Engulfing does NOT require engulfing both wicks. Only the wick in the direction of the bias must be engulfed (lower wick for a bearish engulfing, upper wick for a bullish engulfing). The opposite wick is irrelevant.

### 3.3 — Break of Structure (BOS)

The BOS is the break of a nearby support/resistance level (not a distant one).

**Bearish BOS:**
- Identify the **close of the last bearish candle** that formed the support
- The market may consolidate near this level (several candles)
- A candle that **closes below this close** = confirmed BOS

**Invalidation condition:**
- If the breakout candle has a **wick that is too large** in the opposite direction, the BOS is invalid
- Precise rule: if the wick (lower wick for a bearish BOS, upper wick for a bullish BOS) is **larger than the body** of the breakout candle, the BOS is rejected
- A wick slightly larger than the body is tolerated, but an exaggerated wick invalidates it

**Bullish BOS = exact mirror.**

**Difference between CP and BOS:**
- CP = exactly 3 candles
- BOS = several candles (consolidation) then a breakout

**"Nearby" level:** The BOS is drawn on the most recent structure closest to the current price, not on a distant level.

---

## 4. CLEAN TRAFFIC (mandatory filter)

Clean traffic is the free space between the setup and the target. If the traffic is not clean, the setup is NOT taken, even if the bias is valid.

### 4.1 — Candle obstacles (base rule)

**Definition (bearish case):**
- In the space between the setup and the target, there must be NO **closes of bearish candles** that would form a support (obstacle)
- In other words: **no bearish candle in the traffic** (a bearish candle indicates a correction = creation of an obstacle)

**Bullish case = exact mirror**: no bullish candle (close forming resistance) in the traffic.

**Observation timeframe:** clean traffic is observed on the bias timeframe (H1/M30).

**Note:** The trader does not use pip-based measurement for distance — it is visual. The developer should propose a logic (for example: number of clean candles before the first obstacle).

### 4.2 — Old support/resistance levels as obstacles (additional rule)

Beyond candle obstacles, **old support/resistance levels** in the path are ALSO obstacles, **including FLIPPED levels** (a former support that becomes resistance, or a former resistance that becomes support). These levels can push price back and make the trade fail, even when the candle path itself is clean.

**Important — how an obstacle behaves:**
- An obstacle **BLOCKS** the trade as long as it is **NOT broken**.
- Once price **breaks** through an obstacle, that obstacle **no longer counts**.
- If another obstacle remains further ahead in the path, we must **WAIT** until price breaks it too before taking the trade.
- **This rule only applies WHEN there are obstacles in the path.** Very often there is NO obstacle at all (clean path, or levels far away) — in that case the trade is taken directly, nothing to wait for.

**Difficulty (to be solved with the developer):** The trader identifies these support/resistance levels **VISUALLY**, from experience. He cannot give an exact mathematical rule for them. The developer should **propose an automated method to approximate these levels** (for example: recent zones where price reacted or reversed multiple times). This will be tested on the DEMO version and refined together, stage by stage.

---

## 5. CONFIRMATION and ENTRY (on M15/M5)

Once the bias is validated on H1/M30 with clean traffic:

### 5.1 — Draw the reference line (confirmation line)

The confirmation line is drawn on the **wick of the LAST candle of the bias pattern**. The exact candle depends on which pattern produced the bias:
- if bias = **CP** → line on **B3's wick** (high of B3's wick for a bullish bias, low of B3's wick for a bearish bias)
- if bias = **Engulfing** → line on **B2's wick** (the engulfing candle)
- if bias = **BOS** → line on the **breakout candle's wick**

The confirmation process below works **the SAME WAY** regardless of which bias pattern was used — only the candle used to draw the line changes.

### 5.2 — Wait for the break of the intermediate resistance/support
- If price reaches the close of a candle (resistance in the bullish case), wait for it to break before taking the setup

### 5.3 — Drop to M15 (or M5) and look for confirmation

Confirmation is done **only via CP or BOS** (NOT via engulfing), according to 2 scenarios:

**Scenario 1:** Price breaks the reference line directly with a CP or BOS on M15.

**Scenario 2:** Price breaks the line WITHOUT showing a CP, then forms a CP or BOS **within a maximum of 2 candles after the break**.

**Important confirmation conditions:**
- The confirmation must NOT touch the obstacle. If the obstacle is touched, there is no more space → skip the trade. (Unless the M15 confirmation breaks that obstacle, then it is valid.)
- The **B3 of the confirmation CP must NOT be too long** on M15/M5 (unlike on H1/M30), because the Stop Loss would be too large.
- For BOS confirmation: the correction before the BOS must not be exaggerated, and price must not consolidate too long before breaking.

---

## 6. TRADE MANAGEMENT

| Parameter | Value |
|-----------|-------|
| **Entry** | At the close of B3 (of the confirmation) |
| **Stop Loss** | Slightly below the low of B3 (bullish case) / above the high of B3 (bearish case). Buffer configurable in pips (e.g. 3-5 pips) |
| **Take Profit** | Risk/Reward of 1:1 (TP at the same distance as SL) |

---

## 7. RISK MANAGEMENT

| Parameter | Value |
|-----------|-------|
| Risk per trade | 1% of capital |
| Simultaneous trades | Maximum 1 trade per pair (so max 4 simultaneous trades across the 4 pairs) |
| No 2 trades on the same pair at the same time | Yes |

---

## 8. PROGRESSIVE MONEY MANAGEMENT

The lot size must evolve progressively based on results ("symmetric progressive" method):
- Base lot calculated on 1% of capital
- After each **winning trade**: the lot increases by one step (e.g. +0.01)
- After each **losing trade**: the lot decreases by one step (e.g. -0.01)
- The lot never goes below the minimum base lot
- Safety: the lot must never exceed a configurable maximum risk (e.g. 5% of capital)

---

## 9. DESIRED CONFIGURABLE PARAMETERS

The developer should expose at least the following inputs:
- Bias timeframe (H1/M30) and confirmation timeframe (M15/M5)
- Risk per trade (%)
- Risk/Reward ratio
- Stop Loss buffer (pips)
- Lot increment/decrement (money management)
- Maximum risk (%)
- Pattern detection thresholds (candle size ratios for the CP, lookback bars for the BOS, etc.) to allow fine-tuning after backtesting

---

## 10. EXPECTED DELIVERABLES

1. The commented `.mq5` source file
2. The compiled `.ex5` file
3. A functional backtest on the 4 pairs showing a coherent number of trades (the trader estimates around 2-3 setups per day per pair on average)
4. Installation and usage documentation

---

## 11. NOTES FOR THE DEVELOPER

- The strategy relies on visual judgment (wick size, "clean traffic"). Some rules will need to be translated into adjustable numeric thresholds, to be fine-tuned together after the first backtests.
- The trader can provide annotated screenshots of each pattern to visually clarify each rule. Available annotated screenshots: valid bearish CP, invalid bearish CP, valid bearish BOS, bearish engulfing, clean traffic (open path), old support/resistance levels as obstacles (support became resistance), obstacles that must be broken before entry, and two full confirmation examples (H1 bias → M15 entry, both bullish and bearish).
- Priority: the robot should take trades faithful to the described logic, with selectivity to be refined afterwards.

---

*Specification document prepared for the development of an MT5 EA based on a multi-timeframe price-action strategy.*

Responded

1
Developer 1
Rating
(111)
Projects
183
25%
Arbitration
24
17% / 75%
Overdue
16
9%
Free
2
Developer 2
Rating
(17)
Projects
21
19%
Arbitration
5
40% / 40%
Overdue
0
Free
3
Developer 3
Rating
(614)
Projects
718
33%
Arbitration
46
48% / 41%
Overdue
15
2%
Loaded
4
Developer 4
Rating
(62)
Projects
90
29%
Arbitration
24
13% / 58%
Overdue
7
8%
Working
5
Developer 5
Rating
(319)
Projects
566
35%
Arbitration
82
30% / 45%
Overdue
204
36%
Working
6
Developer 6
Rating
(33)
Projects
36
33%
Arbitration
5
0% / 80%
Overdue
0
Working
Published: 2 codes
7
Developer 7
Rating
(3)
Projects
4
0%
Arbitration
0
Overdue
0
Free
8
Developer 8
Rating
(9)
Projects
16
19%
Arbitration
2
0% / 50%
Overdue
3
19%
Working
9
Developer 9
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
10
Developer 10
Rating
(551)
Projects
839
61%
Arbitration
33
27% / 45%
Overdue
24
3%
Free
Published: 1 code
11
Developer 11
Rating
(3)
Projects
3
33%
Arbitration
0
Overdue
0
Loaded
12
Developer 12
Rating
(3)
Projects
1
0%
Arbitration
5
0% / 100%
Overdue
0
Free
13
Developer 13
Rating
(18)
Projects
24
33%
Arbitration
3
33% / 67%
Overdue
3
13%
Free
14
Developer 14
Rating
(1)
Projects
1
0%
Arbitration
1
0% / 100%
Overdue
0
Free
15
Developer 15
Rating
(15)
Projects
20
25%
Arbitration
2
50% / 0%
Overdue
4
20%
Working
16
Developer 16
Rating
(83)
Projects
95
32%
Arbitration
9
22% / 56%
Overdue
5
5%
Working
17
Developer 17
Rating
(25)
Projects
32
19%
Arbitration
6
33% / 33%
Overdue
4
13%
Working
18
Developer 18
Rating
(1)
Projects
1
0%
Arbitration
0
Overdue
0
Free
19
Developer 19
Rating
(55)
Projects
92
24%
Arbitration
8
75% / 13%
Overdue
44
48%
Free
20
Developer 20
Rating
(25)
Projects
31
13%
Arbitration
13
0% / 77%
Overdue
9
29%
Working
21
Developer 21
Rating
(2674)
Projects
3413
68%
Arbitration
77
48% / 14%
Overdue
342
10%
Free
Published: 1 code
22
Developer 22
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
23
Developer 23
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
24
Developer 24
Rating
(65)
Projects
81
57%
Arbitration
6
67% / 17%
Overdue
1
1%
Busy
25
Developer 25
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
26
Developer 26
Rating
(1)
Projects
8
88%
Arbitration
0
Overdue
0
Free
27
Developer 27
Rating
(184)
Projects
317
24%
Arbitration
23
35% / 13%
Overdue
23
7%
Free
Published: 3 codes
28
Developer 28
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
29
Developer 29
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
30
Developer 30
Rating
(21)
Projects
27
7%
Arbitration
9
33% / 33%
Overdue
1
4%
Working
31
Developer 31
Rating
(13)
Projects
22
41%
Arbitration
8
0% / 50%
Overdue
3
14%
Free
32
Developer 32
Rating
(2343)
Projects
2948
63%
Arbitration
124
44% / 26%
Overdue
429
15%
Working
33
Developer 33
Rating
(78)
Projects
246
74%
Arbitration
7
100% / 0%
Overdue
1
0%
Free
Published: 1 article
34
Developer 34
Rating
(10)
Projects
12
58%
Arbitration
0
Overdue
0
Free
35
Developer 35
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
36
Developer 36
Rating
(45)
Projects
53
57%
Arbitration
2
100% / 0%
Overdue
1
2%
Free
Published: 5 codes
37
Developer 37
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
38
Developer 38
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
39
Developer 39
Rating
(4)
Projects
4
25%
Arbitration
0
Overdue
0
Free
40
Developer 40
Rating
(50)
Projects
51
8%
Arbitration
0
Overdue
0
Free
41
Developer 41
Rating
(50)
Projects
64
20%
Arbitration
11
27% / 55%
Overdue
5
8%
Free
42
Developer 42
Rating
(16)
Projects
35
23%
Arbitration
4
0% / 50%
Overdue
2
6%
Working
43
Developer 43
Rating
(366)
Projects
449
55%
Arbitration
23
57% / 17%
Overdue
30
7%
Working
44
Developer 44
Rating
(59)
Projects
92
42%
Arbitration
4
0% / 100%
Overdue
3
3%
Working
45
Developer 45
Rating
(258)
Projects
269
29%
Arbitration
1
100% / 0%
Overdue
3
1%
Working
Published: 2 codes
46
Developer 46
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
47
Developer 47
Rating
(119)
Projects
169
38%
Arbitration
9
78% / 22%
Overdue
15
9%
Free
48
Developer 48
Rating
(10)
Projects
14
43%
Arbitration
0
Overdue
3
21%
Free
49
Developer 49
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
50
Developer 50
Rating
(259)
Projects
304
76%
Arbitration
13
77% / 0%
Overdue
5
2%
Loaded
51
Developer 51
Rating
(52)
Projects
63
40%
Arbitration
15
27% / 60%
Overdue
1
2%
Free
52
Developer 52
Rating
(1)
Projects
0
0%
Arbitration
1
0% / 100%
Overdue
0
Free
53
Developer 53
Rating
(271)
Projects
553
50%
Arbitration
57
40% / 37%
Overdue
227
41%
Working
54
Developer 54
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
55
Developer 55
Rating
Projects
0
0%
Arbitration
1
0% / 100%
Overdue
0
Free
56
Developer 56
Rating
(13)
Projects
20
45%
Arbitration
6
33% / 17%
Overdue
2
10%
Working
Published: 7 articles, 35 codes
57
Developer 57
Rating
Projects
1
0%
Arbitration
0
Overdue
0
Free
58
Developer 58
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
59
Developer 59
Rating
(298)
Projects
478
40%
Arbitration
105
40% / 24%
Overdue
82
17%
Loaded
Published: 2 codes
60
Developer 60
Rating
(8)
Projects
8
0%
Arbitration
2
50% / 0%
Overdue
1
13%
Working
61
Developer 61
Rating
(19)
Projects
27
11%
Arbitration
11
9% / 55%
Overdue
12
44%
Free
62
Developer 62
Rating
(13)
Projects
20
40%
Arbitration
1
0% / 100%
Overdue
1
5%
Free
63
Developer 63
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
Similar orders
Anyone with experience in trading bots? I'm using TraderBlox ( https://traderblox.com/ ) and the AI assistant generated a bot with RSI that's showing a 68% win rate in backtesting. However, the generated code has some parts " Important: I will only reply to those who send me a photo of their project and have read this; this way I rule out bots. "I don't fully understand (especially order management and dynamic
Ich möchte einen professionellen Expert Advisor (EA) für MetaTrader 5 entwickeln lassen, der sich funktional am ThunderGold Scalper orientiert. Instrument: XAUUSD / GOLD Zeitrahmen: M15 Plattform: MetaTrader 5 / MQL5 Der EA soll eine eigene, nachprogrammierte Strategie verwenden und keine geschützten Quellcodes oder proprietären Dateien des Originalprodukts kopieren. Gewünschte Funktionen: automatischer Handel auf
I need a fully automated Expert Advisor (EA) written in MQL5 for MetaTrader 5. The EA must work directly inside MT5 and must NOT require TradingView, PineConnector, webhooks, or another external connector to place trades. Trading Instrument Primary symbol: XAGUSD (Silver) My broker may display the symbol as XAGUSD-ECN, so the EA should work with the broker’s available XAGUSD symbol. Main entry timeframe: 5-minute
Hi, I am looking for a profitable manual strategy for trading in forex, no bot no EA , only EA. I want to make good profit.If any one has please let me know, i will test it and if satisfied only i will make the payment. Regards
SmartMove_EA 30+ USD
I need a EA programer to program my EA for MLQ5 to sell at the last candle before impulses to the downside(-) and buy on the last candle before the upside(+) movement. For the take profit we target the nearest high for buy and target nearest low for sell.Stop loss on the last weak of the order block
GoldTrade EA 89+ USD
//+------------------------------------------------------------------+ //| XAUUSD Wolfe + SMC Quick Profit EA | //| MT5 / MQL5 | //+------------------------------------------------------------------+ #property strict #include <Trade/Trade.mqh> CTrade trade; //================================================================== // INPUTS //================================================================== //--- General
can you help me with I have an indicator that I built and I work with PickMyTrade. The entries come through the alerts I get from Trading View . Trading View needs to send an alert and PickMyTrade executes a trade at that exact same second. Now, I have a problem in Trading View with the synchronization between the alert and the signal. I have a box that I built for a trade. It needs to output the box and get an
Looking for a developer in NinjaTrader For coding Inst - ES,NQ Chart type - Tick, range, volume & time Brief- Fib levels mapped on chart which act as entries, tgts and stops all based on candle close. (Maybe) use MACD for filtering direction. Daily manual input of the TWO fib Anchor levels is part of the strategy. I need a well experienced developer to bid and before biding check the attached file well. the PDF and
Потрібен робот, який відкриває відкладені ордери в напрямку, протилежному поточній ринковій ціні (ордер Sell Stop, якщо ринкова ціна вище, і ордер Buy Stop, якщо ринкова ціна нижче). Модельований сценарій – хибний прорив
1- The EA must h ave a unique strategy specialized on make trades with very very low RRR, so basicaly risking 1475$ to make 100$, with an ammount adjustable of trades per day. (This is very important that i wish in 100 trades, it makes a maximum of 10 trades of mistake, maybe less...) 2- The EA must have the strategy specialized on INDEX CFD. 3- The EA must make each trade with more than 3 minutes, and less than 12h

Project information

Budget
30 - 200 USD
Deadline
to 10 day(s)