Specification
EA specification for MT5 developer (coder‑ready spec)
You can copy‑paste this directly into an MQL5 Freelance job.
---
1. General
* Platform: MetaTrader 5 (MT5)
* Type: Expert Advisor (EA)
* Markets: Major FX pairs (configurable list via inputs)
* Execution: Market orders only
* Timeframes: EA must work on any timeframe, but I will mainly use it on M15–H1
---
2. Indicators & definitions
* EMA 20: Exponential Moving Average, period 20, applied to Close
* EMA 50: Exponential Moving Average, period 50, applied to Close
Trend definition:
* Uptrend:• Close price above both EMA 20 and EMA 50
* EMA 20 > EMA 50
* Downtrend:• Close price below both EMA 20 and EMA 50
* EMA 20 < EMA 50
EMA zone:
* Area between EMA 20 and EMA 50.
* Flexible boundary: Candle body can be inside or touching the zone; slight overlap is allowed, but close must not be clearly outside the zone.
---
3. Candle structure calculations
For each candle considered for entry:
* Body size: abs(Close - Open)
* Upper wick: High - max(Open, Close)
* Lower wick: min(Open, Close) - Low
2:1 wick‑to‑body rule:
* Directional wick size must be ≥ 2 × body size.
* If body size = 0 (perfect doji), treat body size as a very small epsilon to avoid division by zero but still allow valid doji.
---
4. Entry logic
4.1 Common filters (both long and short)
A candle is a candidate entry candle only if:
1. No gap candle:• Current candle Open is not significantly gapped from previous Close (define gap as input in points; if gap > threshold → skip candle).
2. Candle close location:• Close must be inside or touching the EMA 20–50 zone (flexible boundary as described).
3. 2:1 directional wick ratio:• Directional wick ≥ 2 × body size.
4. Trend‑colored close:• In uptrend → bullish candle (Close > Open).
* In downtrend → bearish candle (Close < Open).
5. Any body size allowed:• Small, medium, large, including doji, as long as 2:1 wick rule and trend‑colored close are satisfied.
4.2 Long entry (buy)
Conditions on the signal candle:
1. Market in uptrend (as defined above).
2. Candle pulls back into EMA zone:• At least part of the candle (wick or body) touches or is inside the EMA 20–50 zone.
3. Directional wick filter:• Use lower wick only.
* Lower wick ≥ 2 × body size.
4. Candle closes bullish (Close > Open).
5. Candle closes inside or touching EMA zone (flexible boundary).
6. Optional engulfing enhancement (see section 5).
If all conditions are met and no open trade on that symbol (configurable: allow 1 trade per symbol), EA opens a market Buy.
4.3 Short entry (sell)
Conditions on the signal candle:
1. Market in downtrend.
2. Candle pulls back into EMA zone.
3. Directional wick filter:• Use upper wick only.
* Upper wick ≥ 2 × body size.
4. Candle closes bearish (Close < Open).
5. Candle closes inside or touching EMA zone.
6. Optional engulfing enhancement (see section 5).
If all conditions are met and no open trade on that symbol (configurable), EA opens a market Sell.
---
5. Engulfing logic (enhanced entries)
Engulfing is allowed and acts as an additional confirmation, but not mandatory for every trade (make this an input: UseEngulfingFilter = true/false).
When UseEngulfingFilter = true:
* Full‑candle engulfing only:• Current candle’s High ≥ previous candle’s High AND
* Current candle’s Low ≤ previous candle’s Low.
* Trend‑direction engulfing only:• In uptrend: bullish engulfing (current candle bullish and full‑engulfing upward).
* In downtrend: bearish engulfing (current candle bearish and full‑engulfing downward).
If enabled, engulfing condition must be satisfied in addition to all other entry rules.
---
6. Risk management & position sizing
* Risk per trade: input as percentage of account balance (default 0.25%).
* Stop loss placement:• For Buy: SL a few points below the low of the signal candle (input: SLBufferPoints).
* For Sell: SL a few points above the high of the signal candle.
* Lot size is calculated so that the distance from entry to SL equals the specified risk % of balance.
---
7. Trade management
* Take profit:• Option 1: No fixed TP, use trailing stop only (default).
* Option 2: Optional RR‑based TP (input: UseFixedRR, RR_Target).
* Dynamic trailing stop:• Input: choose mode (e.g., ATR‑based or swing‑based).
* For simplicity, please implement:• ATR‑based trailing:• Input: ATRPeriod, ATRMultiplier.
* For Buy: trail SL to Bid - ATR * Multiplier when this is higher than current SL.
* For Sell: trail SL to Ask + ATR * Multiplier when this is lower than current SL.
* Trailing should only move in the direction of profit (never widen SL).
* Full‑position hold:• No partial closes.
* Trade exits only by SL, trailing stop, or optional TP.
---
8. Session filter
* Inputs:• UseSessionFilter = true/false
* Session1Start, Session1End (e.g., London)
* Session2Start, Session2End (e.g., New York)
* EA opens new trades only during allowed sessions.
* Existing trades can be managed (trailing, SL hit, TP hit) outside sessions.
---
9. News filter (basic)
If possible:
* Input: UseNewsFilter = true/false.
* If you can integrate MT5 news or a simple external file/indicator:• Do not open new trades within X minutes before high‑impact news (input: MinutesBeforeNews).
* Optionally: close trades Y minutes before news (input: CloseBeforeNews = true/false, MinutesCloseBeforeNews).
If full news integration is complex, please propose a simple, robust solution or leave hooks for a news indicator.
---
10. Other controls
* Max trades per symbol: input (default 1).
* Max total open trades: input.
* Magic number: input.
* Slippage: input.
* Spread filter: input max spread in points; if current spread > max, skip new entries.
* Daily loss limit (optional):• Input: UseDailyLossLimit = true/false, MaxDailyLossPercent.
* If today’s closed P/L + floating P/L ≤ −MaxDailyLossPercent of balance, EA stops opening new trades for the day.
---
11. Coding quality
* Clean, well‑commented MQL5 code.
* All key parameters as extern/inputs.
* EA must handle errors (requotes, trade context busy, etc.).
* Must work on any broker (4/5 digits, different symbols suffixes).
---
If anything is unclear, the coder can ask for clarification, but this is the full logic I want implemented.
Responded
1
Rating
Projects
3408
68%
Arbitration
77
48%
/
14%
Overdue
342
10%
Free
Published: 1 code
2
Rating
Projects
33
42%
Arbitration
0
Overdue
3
9%
Free
3
Rating
Projects
36
33%
Arbitration
5
0%
/
80%
Overdue
0
Working
Published: 2 codes
4
Rating
Projects
1
0%
Arbitration
0
Overdue
1
100%
Free
5
Rating
Projects
0
0%
Arbitration
2
0%
/
100%
Overdue
0
Free
6
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
7
Rating
Projects
12
0%
Arbitration
3
33%
/
33%
Overdue
1
8%
Free
8
Rating
Projects
1461
72%
Arbitration
122
29%
/
48%
Overdue
356
24%
Working
Published: 3 articles
9
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
10
Rating
Projects
720
34%
Arbitration
35
71%
/
9%
Overdue
22
3%
Free
11
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
12
Rating
Projects
836
61%
Arbitration
33
27%
/
45%
Overdue
24
3%
Working
Published: 1 code
13
Rating
Projects
33
42%
Arbitration
4
50%
/
50%
Overdue
3
9%
Working
14
Rating
Projects
91
13%
Arbitration
34
26%
/
59%
Overdue
37
41%
Free
15
Rating
Projects
129
25%
Arbitration
23
30%
/
52%
Overdue
8
6%
Free
16
Rating
Projects
267
30%
Arbitration
0
Overdue
3
1%
Working
Published: 2 codes
17
Rating
Projects
3
33%
Arbitration
2
0%
/
100%
Overdue
0
Free
18
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
19
Rating
Projects
8
0%
Arbitration
2
50%
/
0%
Overdue
1
13%
Working
20
Rating
Projects
602
34%
Arbitration
65
20%
/
57%
Overdue
147
24%
Working
Published: 1 article, 22 codes
21
Rating
Projects
5
0%
Arbitration
0
Overdue
0
Free
22
Rating
Projects
27
7%
Arbitration
9
33%
/
33%
Overdue
1
4%
Working
23
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
24
Rating
Projects
7
29%
Arbitration
1
100%
/
0%
Overdue
2
29%
Working
25
Rating
Projects
6
0%
Arbitration
4
25%
/
75%
Overdue
2
33%
Free
26
Rating
Projects
90
29%
Arbitration
24
13%
/
58%
Overdue
7
8%
Working
27
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
28
Rating
Projects
442
55%
Arbitration
22
50%
/
14%
Overdue
30
7%
Loaded
29
Rating
Projects
711
33%
Arbitration
45
49%
/
42%
Overdue
14
2%
Working
30
Rating
Projects
58
34%
Arbitration
15
27%
/
60%
Overdue
1
2%
Working
31
Rating
Projects
180
46%
Arbitration
3
33%
/
33%
Overdue
1
1%
Working
32
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
33
Rating
Projects
93
31%
Arbitration
9
22%
/
56%
Overdue
5
5%
Working
34
Rating
Projects
202
48%
Arbitration
5
20%
/
60%
Overdue
2
1%
Free
35
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
36
Rating
Projects
14
21%
Arbitration
2
0%
/
50%
Overdue
3
21%
Working
37
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
38
Rating
Projects
2939
63%
Arbitration
124
44%
/
26%
Overdue
429
15%
Working
39
Rating
Projects
31
13%
Arbitration
13
0%
/
77%
Overdue
9
29%
Free
40
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
41
Rating
Projects
169
38%
Arbitration
9
78%
/
22%
Overdue
15
9%
Free
42
Rating
Projects
29
34%
Arbitration
4
50%
/
25%
Overdue
5
17%
Working
43
Rating
Projects
2
0%
Arbitration
0
Overdue
0
Free
44
Rating
Projects
263
22%
Arbitration
23
52%
/
17%
Overdue
0
Loaded
45
Rating
Projects
15
20%
Arbitration
1
100%
/
0%
Overdue
0
Free
46
Rating
Projects
51
59%
Arbitration
2
100%
/
0%
Overdue
1
2%
Free
Published: 5 codes
47
Rating
Projects
72
60%
Arbitration
4
75%
/
25%
Overdue
1
1%
Loaded
48
Rating
Projects
34
35%
Arbitration
0
Overdue
2
6%
Free
49
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
Published: 2 codes
50
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
51
Rating
Projects
300
76%
Arbitration
13
77%
/
0%
Overdue
4
1%
Working
52
Rating
Projects
553
50%
Arbitration
57
40%
/
37%
Overdue
227
41%
Working
53
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
54
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
55
Rating
Projects
478
40%
Arbitration
105
40%
/
24%
Overdue
82
17%
Loaded
Published: 2 codes
56
Rating
Projects
1
100%
Arbitration
0
Overdue
0
Free
57
Rating
Projects
285
41%
Arbitration
15
13%
/
47%
Overdue
67
24%
Free
58
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
59
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
60
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
61
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
62
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
Similar orders
Mac200
50+ USD
I need a Trend following Bot. Here we took entries by looking at two indicator which are 200 period ema and 12 26 9 MacD. Rules for entry exit are: Buy trade: When market is above 200 ema and MacD Line cross over the signal line and this cross over happened below the zero line of MacD indicator. We simply put Buy trade. Sell trade: When market is below 200 ema and MacD line crosses below the signal line and this
Mujeeb
30+ USD
I this I my private file I want to learn trade to earn money for it and also loss money at it so I want a easy trade from you guys 👦 help me
Multiple times EMA Crossing robot with smart entry
50 - 100 USD
I I would like to create a trading robot based on 2 ema crossing. The robot is pretty simple, it should open buy position when fast ema cross slow ema and vise versa. Also it should use martingale after the loss position. It should has expiration period inside the code and alerts l
1. The general process is: Automated online forex marketing to find potential clients -> Answering potential clients' questions -> Converting them into actual clients -> Opening accounts, depositing funds, and copying trades. 2. Developers could implement an AI Digital Twin/Shadow Agent to answer customer questions, eliminating the need for me to answer customer inquiries. 3. I have a CTA website and I'm manually
Iconic Boy
300 - 400 USD
Am looking for a bot to trade .so that I can be able to trade and become very successful and make some profit so that I cannot sleep on a empty stomach
I am looking for an experienced MQL5 developer who can help me convert my manual trading strategy into a fully automated Expert Advisor (EA) for MetaTrader 5. The project should begin with a detailed discussion of my manual trading strategy. Before starting the actual EA development, the developer must understand and analyze the complete trading logic and determine how the strategy can be converted into clear
Hello Traders and Investors, I am a professional algorithmic trading developer specialized in building high-quality Expert Advisors (EAs), Indicators, Scripts, and Trade Management Tools for MetaTrader 4 and MetaTrader 5. With extensive experience in financial markets and trading automation, I can transform your trading ideas into reliable and efficient solutions with clean, optimized, and well-structured code. My
Hello, I’m a profitable MT4/MT5 trader specializing in Prop Firm accounts. What makes me different: I actually trade with 3% Daily DD / 5% Overall DD rules, so I know what blows accounts and what passes. Services I offer: 1. EA Backtesting + Detailed Reports - Winrate, Profit Factor, Max DD, Best Pairs/Timeframes 2. Strategy Documentation - I’ll write clear rules for your EA so any coder can build it 3. Prop Firm
Hello, I’m a profitable MT4/MT5 trader specializing in Prop Firm accounts. What makes me different: I actually trade with 3% Daily DD / 5% Overall DD rules, so I know what blows accounts and what passes. Services I offer: 1. EA Backtesting + Detailed Reports - Winrate, Profit Factor, Max DD, Best Pairs/Timeframes 2. Strategy Documentation - I’ll write clear rules for your EA so any coder can build it 3. Prop Firm
Supply and Demand EA
50 - 250 USD
I need a SnD EA. Prefer coder who has previous experience coding SnD EA. PO are based on (CHoCH or BoS) and 3EMA, order block (from my TradingView indicator), area based on Fibonacci. SL options are based on fix pips or zone size; CL is based on candle closing. TP1 and TP2 options are based on fix pips or fix ratio. Canceling PO is based on market structure or Fibonacci. Money management are based on fix volume or
Project information
Budget
50 - 200 USD
Deadline
from 1 to 10 day(s)