MT5 EA Modification Needed – Replace Current Entry Logic With Breakout Strategy(USDJPY M15) & Add Prop-Firm Risk Controls

Job finished

Execution time 5 days
Feedback from employee
Great client to work with. Clear requirements specification, fast communication, and provided detailed technical feedback during testing. Would gladly work together again.
Feedback from customer
ok

Specification

Hello, 

Please read the full specification before applying.

This project is NOT about building an EA from scratch. I already have a fully working MT5 Expert Advisor.  The EA already includes a dashboard, risk management, and some protection systems, but it needs a few more features. So I  need an experienced MQL5 developer to modify my existing MT5 EA by replacing the current entry logic with a new breakout strategy and implementing strict prop-firm safety protections.


The EA must behave exactly as specified below.

(If the final EA does not match the logic described, I will request revisions until it does.)


The following systems are already built and must remain unchanged:

• Dashboard
• Risk management system
• Spread protection
• Slippage protection
• Drawdown protection
• Trade cooldown logic
• Equity monitoring

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------

 In The Inputs Tab,The Value For All The Parameters Must Be Adjustable !

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------

SYMBOL AND TIMEFRAME

Symbol: USDJPY
Timeframe: M15 only


TRADING SESSION

Trades may only open between:

06:30 – 12:00 London time

No new trades outside this window.

Open trades may remain active until TP or SL is hit.


MAXIMUM SIGNALS

Maximum 2 trade signals per day.

Only one signal can be active at a time.

Each signal opens two positions.


ENTRY LOGIC (BREAK OF STRUCTURE)

The EA must detect breakout of recent price structure.

Parameter:

Lookback candles (default = 5)

BUY SIGNAL

  1. Find the highest high of the previous X candles.

  2. If the last CLOSED candle breaks above that level → BUY signal.

SELL SIGNAL

  1. Find the lowest low of the previous X candles.

  2. If the last CLOSED candle breaks below that level → SELL signal.

Trades are opened using market orders.

Important:

Breakout must be based on CLOSED candles only (no repainting).


BREAKOUT STRENGTH FILTER

To reduce false breakouts, the breakout candle must satisfy this condition:

Candle body size ≥ X % of ATR(14)

Default value:

30%

If the candle body is smaller than this threshold, the signal must be ignored.


STOP LOSS LOGIC

Stop loss must be dynamic.

BUY trade
SL = Low of previous candle

SELL trade
SL = High of previous candle

Minimum stop loss distance = 10 pips.

If the previous candle distance is smaller than 10 pips, SL must default to 10 pips.

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------

TAKE PROFIT STRUCTURE

Position 1

TP = 1 × SL distance

Position 2

TP = 2 × SL distance

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------

POSITION STRUCTURE

Each signal opens TWO positions.

Risk per position configurable.

Default risk: 0.5% equity per position.

Total risk per signal by default = 1%.


---------------------------------------------------------------------------------------------------------------------------------------------------------------------

BREAK EVEN / PROFIT LOCK

When price reaches 1R (distance equal to SL):

Position 1 closes automatically.

Position 2 Stop Loss must move to +1R (locking profit).

Position 2 remains open targeting TP = 2R.


SPREAD FILTER

Trades must only open when spread is below configurable threshold.

Default:

Max spread = 1.5 pips (USDJPY)

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------

SLIPPAGE  FILTER

Trades must only open when slippage is below configurable threshold.

Default:

Max spread = 2 pips (USDJPY)


NEWS FILTER

EA must include a working economic news filter.

Block trading before and after high-impact news.

Default values:

Stop trading 30 minutes before high impact news
Resume trading 30 minutes after

Must use reliable news source such as Forex Factory or built-in economic calendar.


PROP FIRM SAFETY CONTROLS

The EA must include protection settings suitable for prop firm rules.

Parameters:

Max daily drawdown %
Max total drawdown %
Max trades per day
Max signals per day
Equity protection stop

If limits are reached, trading must stop automatically.


TRADE RANDOMIZER

Include optional execution randomization to reduce identical trading patterns.

Parameters:

Entry delay randomization (0–3 seconds)
SL/TP slight randomization (0–2 points)
Trade open timing variance

This feature must be optional and configurable.


RISK MANAGEMENT

Risk per position must be adjustable( 0.5% per position per equity  by default ).

Examples:

0.3%
0.5%
0.7%
1%

Lot size must automatically calculate based on stop loss distance and account equity.


INPUT PARAMETERS REQUIRED(all needs to be fully adjustable )

Lookback candles (default 5)
ATR breakout filter %
ATR period
Minimum stop loss pips
Risk per position

Risk per position calculation( equity  by default )
Max daily signals
Trading session start/end
Spread limit

Slippage limit

News filter on/off
News block time
Trade randomizer on/off
Daily drawdown limit
Total drawdown limit


BACKTEST REQUIREMENTS

EA must run correctly in MT5 Strategy Tester.

We only run backtest on (Every tick based on the real ticks)

Developer must verify:

Real tick backtesting compatibility
Correct lot sizing
Correct break-even behavior
No trade duplication
No repainting logic

Visual backtest mode must show trades clearly on chart.


Important , 3 Critical Coding Mistakes in Breakout EAs (You Must Avoid)

1. Using the Current Candle Instead of the Closed Candle

This is the #1 mistake in breakout EAs.

Many developers check the current forming candle (bar 0).

Example of WRONG logic:

if(Close[0] > highestHigh) OpenBuy();

Problem:

The candle has not closed yet.

Price may:

  • temporarily break the level

  • then fall back below before the candle closes

This creates fake breakout entries.

Backtests may still look good because tester behavior differs slightly from live execution.

Correct logic

Breakout must be confirmed with the last closed candle.

Correct code:

if(Close[1] > highestHigh) OpenBuy();

Where:

Close[1] = last closed candle Close[0] = currently forming candle

Your EA must never trigger entries using candle 0.


2. Including the Breakout Candle in the Lookback Range

Another common coding mistake is calculating the highest high or lowest low including the breakout candle itself.

Example of WRONG logic:

highestHigh = iHigh(_Symbol, PERIOD_M15, iHighest(_Symbol, PERIOD_M15, MODE_HIGH, 5, 0));

The problem:

The lookback starts at candle 0, which is the breakout candle.

So the EA compares the candle to its own high, which breaks the logic.

This causes:

  • missed signals

  • inconsistent breakout detection

  • backtests that behave differently from live trading


Correct implementation

The lookback must exclude the current candle.

Correct code:

highestHigh = iHigh(_Symbol, PERIOD_M15, iHighest(_Symbol, PERIOD_M15, MODE_HIGH, 5, 1));

Important detail:

Start index = 1

This ensures the EA looks only at previous completed candles.


3. Multiple Entries Triggered From One Breakout

Many poorly coded EAs trigger multiple trades from the same breakout candle.

Example problem:

If the EA checks signals every tick, it might execute multiple entries while the candle remains above the breakout level.

Example:

Price breaks level → EA buys
Next tick → still above level → EA buys again
Next tick → buys again

Result:

You get many trades from a single breakout.

This destroys risk control.


Correct solution

The EA must ensure only one signal per breakout candle.

Typical solution:

Store the time of the last signal.

Example logic:

static datetime lastSignalTime; if(Time[1] != lastSignalTime) { if(Close[1] > highestHigh) { OpenBuy(); lastSignalTime = Time[1]; } }

This guarantees:

  • one signal per candle

  • no duplicate entries

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------

My Fixed Budget Is $60 For This Job So If You Come Up With Any Higher Number(Budget) Of Your Wish Then I Just Reject You Simple!

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------

DELIVERABLES

  1. Full MT5 EA source code (.mq5)

  2. Compiled file (.ex5)

  3. Clean and readable code

  4. Instructions for installation

  5. At least one revision round if small adjustments are needed

The EA must execute trades exactly as described.

Only experienced MT5 developers please.


Responded

1
Developer 1
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
2
Developer 2
Rating
(2)
Projects
2
50%
Arbitration
1
0% / 100%
Overdue
0
Free
3
Developer 3
Rating
(34)
Projects
35
40%
Arbitration
0
Overdue
3
9%
Free
4
Developer 4
Rating
(1)
Projects
1
0%
Arbitration
0
Overdue
0
Free
5
Developer 5
Rating
(73)
Projects
257
53%
Arbitration
16
50% / 38%
Overdue
83
32%
Free
6
Developer 6
Rating
(2)
Projects
7
0%
Arbitration
3
0% / 33%
Overdue
1
14%
Working
7
Developer 7
Rating
(7)
Projects
6
0%
Arbitration
4
25% / 75%
Overdue
2
33%
Free
8
Developer 8
Rating
(1)
Projects
1
0%
Arbitration
1
0% / 0%
Overdue
0
Working
9
Developer 9
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
10
Developer 10
Rating
(3)
Projects
1
0%
Arbitration
5
0% / 100%
Overdue
0
Free
11
Developer 11
Rating
(1)
Projects
1
0%
Arbitration
1
0% / 100%
Overdue
0
Free
12
Developer 12
Rating
(3)
Projects
3
0%
Arbitration
0
Overdue
0
Free
13
Developer 13
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
14
Developer 14
Rating
(1)
Projects
1
0%
Arbitration
3
0% / 100%
Overdue
1
100%
Free
15
Developer 15
Rating
(45)
Projects
53
57%
Arbitration
2
100% / 0%
Overdue
1
2%
Free
Published: 5 codes
16
Developer 16
Rating
(3)
Projects
1
100%
Arbitration
3
0% / 100%
Overdue
0
Free
17
Developer 17
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
18
Developer 18
Rating
(1)
Projects
1
0%
Arbitration
0
Overdue
0
Free
19
Developer 19
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
20
Developer 20
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
Similar orders
USD54 Applications The bot should open trades when the price breaks out of the band by a specified percentage, for example, 0.10%. If the price breaks above the band, the bot should open a long position. If the price breaks below the band, it should open a short position. The bot should also open trades when the price touches a band: Bullish band cross: When a bullish cross occurs between the bands, the bot should
#property strict #property version "1.00" #property description "EMA Trend + Pullback + Engulfing EA" // Include the standard MT5 trade library. #include <Trade/Trade.mqh> CTrade trade; //============================================================== // INPUT SETTINGS //============================================================== // Trend indicators input int FastEMA = 20; input int SlowEMA = 50; // Pullback
Titolo: Cerco sviluppatore per EA su XAUUSD M1 per conto reale Cerco uno sviluppatore MQL5 per creare un Expert Advisor per MetaTrader 5 su XAUUSD M1, da utilizzare su conto reale con deposito iniziale di 100–200 €. La strategia prevede un Buy Stop a 1,00 sopra l’Ask e un Sell Stop a 1,00 sotto il Bid, entrambi con stop loss iniziale di 1,00 e senza take profit fisso. I pendenti devono restare fermi: quando uno viene
// Meta Scalper EA - RSI + Breakout + Lot Management #property strict #include <Trade\Trade.mqh> CTrade trade; input int RSI_Period=14; input double RSI_Overbought=70; input double RSI_Oversold=30; input int Breakout_Period=20; input int ATR_Period=14; input double ATR_Multiplier_SL=1.5; input double ATR_Multiplier_TP=3.0; input bool UseRiskPercent=true; input double RiskPercent=2.0; input double FixedLot=0.1; input
BUDGET: 100-120 USD - FIXED - includes source code .mq5 + .ex5 I will test demo first on 100$ demo account. If good, I pay. WHAT I WANT: 1. SIGNAL STRENGTH LOGIC: - WEAK SIGNAL = 1 position only. - STRONG SIGNAL = 2,3,4,5 positions (more positions because signal is strong). - Signal strength calculated by indicators. 2. ADAPTIVE TO CAPITAL: - Lot auto = Balance / 100 * 0.01. Example 100$ = 0.01 lot, 300$ = 0.03 lot
Project: MT5 Expert Advisor — Dual-Sided Hedging Grid with Fibonacci Lot Progression I need a custom Expert Advisor (EA) developed in MQL5 for MetaTrader 5. 1. Trading Strategy The EA must open both Buy and Sell market positions when a new trading cycle starts, provided the broker account supports hedging. The EA must manage the Buy and Sell directions independently. When the market moves downward against the Buy
Hello lovies, I’m reaching out because I’m working on a specialized macroeconomic intelligence service focused on major economic releases and their potential impact on gold (XAUUSD), the US dollar, and the wider financial markets. My approach goes beyond simply following the economic calendar. I focus on understanding the information behind upcoming events, market expectations, and the potential implications for
Platform: MT5 only (no MT4 needed). Deliverable: an MT5 Expert Advisor with full source code (.mq5) that replicates the attached TradingView strategy (Pine Script v6, based on LuxAlgo's "ICT Killzones Toolkit" order blocks) as exactly as possible. Pasting the code into TradingView shows how it operates. I normally trade GBPUSD on the 5-minute chart Expected behavior: - Order block detection must match the Pine code
Requirements Specification: Debug & Error Fixing: Review the entire source code of the MQL expert advisor. Identify and fix all logical errors, bugs, and performance issues that cause trades to close prematurely or yield extremely low profits. Strategy Restructuring & Optimization: Fully analyze and optimize the current entry and exit strategy for USDJPY and GBPUSD. Modify, upgrade, or completely rewrite the entry
I am looking for an MQL5 developer to independently review an existing EA’s execution and position management logic. The review should focus on duplicate orders, trade isolation by symbol and magic number, broker price and volume constraints, error handling, and recovery after a terminal restart. This order is for an audit report. Please do not modify the source or change the trading strategy. For each finding

Project information

Budget
60+ USD