指定
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
-
Find the highest high of the previous X candles.
-
If the last CLOSED candle breaks above that level → BUY signal.
SELL SIGNAL
-
Find the lowest low of the previous X candles.
-
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.
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:
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:
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:
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:
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
-
Full MT5 EA source code (.mq5)
-
Compiled file (.ex5)
-
Clean and readable code
-
Instructions for installation
-
At least one revision round if small adjustments are needed
The EA must execute trades exactly as described.
Only experienced MT5 developers please.