Senior MQL5 Developer: Multi-Strategy EA with Asynchronous Execution & Advanced Recovery Logic - Trading bot build

Trabalho concluído

Tempo de execução 2 minutos
Comentário do desenvolvedor
Really fast test and payment. Thank you!
Comentário do cliente
First time ever using the freelancer on the mql5 and I'm very happy with my outcome and have fast and detailed it came. Were already planning our next jobs.. top man

Termos de Referência

READ BEFORE MESSAGING PLEASE

Developer Requirements (Strict):

 
- Expert Level Only: This is a professional-grade, robust trading engine. Please do not apply if you are a beginner or intermediate developer.
- Asynchronous Proficiency: You must have deep experience with  CTrade  and handling asynchronous order execution (Requotes, Busy Servers, and Order Integrity Sync).
- Proven Track Record: I require a developer who can deliver a "clean" build the first time. Experience with complex recovery algorithms (like the "Guardian" logic described below) is mandatory.
- Code Quality: The final EA must be highly optimized, modular, and include the "Heartbeat" and "Global Variable Persistency" features to survive terminal crashes.


- The EA must be built using the MQL5 'Trade Class' (CTrade) and must handle asynchronous order execution with full error handling for Requotes and Busy Servers.


- broker - vantage.com

- will be using a raw account

- the starting balance i will be starting with is £1000

- it needs testing as well to make sure it runs correctly before hand over. also i want the correct setting hard coded into the trader for starting with the £1000 balance so its plug and play ready for a VPS.

- MT5

- must be in English and ( £ pound  GBP)

FINAL TECHNICAL SPECIFICATIONS FOR DEVELOPER (MUST READ):
 
To ensure this build is professional-grade and "Plug and Play" ready for my Vantage Raw (£1,000 GBP) account, the following logic must be strictly implemented:
 
1. Multi-Currency Profit Calculation: The EA must automatically detect the account base currency (GBP). All risk calculations (Max Loss per Trade, Daily Profit/Loss, Stealth Stops) must use the current  TICK_VALUE  and exchange rates to ensure monetary targets are accurate to the penny, regardless of the pair being traded (e.g., EURUSD, Gold, or JPY pairs).

2. Suffix & Symbol Compatibility: The EA must be "Suffix Aware." It should automatically handle symbol names that include a dot or a plus (e.g.,  EURUSD.  or  GBPUSD+ ) as commonly found on Vantage Raw accounts, without requiring manual symbol input.

3. Guardian Recovery Execution (Hedged Basket): When the Guardian Engine triggers, it must NOT immediately close the losing trade. Instead, it must manage the original loser and the new recovery trade as a "Hedged Basket." The EA will track the net profit of these two specific tickets. Once the combined profit reaches the  Guard_Profit_Target , both trades must be closed simultaneously via a high-speed  CloseBy  or bulk-close command.

4. Input Parameter Validation: Upon initialization, the EA must run a "Sanity Check." If any user inputs are mathematically impossible (e.g., a  Max Loss  greater than the  Daily Loss Limit , or a  Lot Size  that exceeds available margin), the EA must print a clear Alert to the screen and refuse to trade until the settings are corrected.

5. Execution & Filling: Since I am using a Raw account, the code must default to  ORDER_FILLING_IOC  or automatically detect the filling mode via  SYMBOL_FILLING_MODE . All trade sends must include a 3-attempt retry logic with a randomized delay (500ms–1500ms) to handle "Busy Server" errors without hanging the terminal.

- XAUUSD+ ,  m15 chart

- I WANT EVERY SETTING AVAILBLE TO ME TO EDIT MYSELF IN THE INPUTS TAB, I WANT FULL CONTROLE 

- everything needs to be in pounds (£) and in english


 *100% TRADING BOT REQUIREMENTS*

- everything on inputs i can change myself

- Manage Manual Trades — Allows the EA to manage trades opened by hand (Magic 0).

- Max Loss per Trade (£) — Hard monetary cap on how much a single trade can lose.

- Daily Profit Target — Automatically closes all trades and locks the system once hit.

- Daily Loss Limit — Safety cut-off to prevent further trading if a daily loss is reached.

- Trailing Drawdown — Moves the "floor" up as equity grows to protect daily profits.

- Max Total Trades — Hard limit on the number of simultaneous open positions.

- Spread Limit (Pips) — Prevents the bot from entering trades during high volatility or low liquidity.

- Start Hour and End Hour — Defines the specific daily window when the bot is allowed to trade.

- Friday Protection — Automatically closes all positions and stops trading at 8 PM on Fridays.

- Dynamic Lot Sizing — Automatically calculates position sizes based on account balance and risk %.

- Risk % per Trade — The percentage of the account used to calculate the dynamic lot.

- Safety Cap (Max Lot) — A hard ceiling to ensure dynamic lots never exceed a certain size.

- Sniper Engine (Trend) — Uses Momentum indicator for trend-following entries.

- Reaper Engine (Volatility) — Uses Bollinger Bands to trade mean reversion/volatility.

- Lion Engine (The Assassin) — Uses Stochastic oscillator to find overbought/oversold turns.

- Ghost Engine (Price Action) — Uses previous candle High/Low breaks for entries.

- Guardian Engine (Recovery) — A specialized logic that calculates exact recovery lots to trade out of losing positions.

- Stealth Stops — Closes trades based on a monetary target (£) hidden from the broker.

- Hard SL Fallback — Physical Stop Loss sent to the broker as a backup safety net.


- Max Trade Duration — Automatically closes any trade that has been open longer than the set minutes.

- Profit Addict Mode — High-efficiency logic that manages the "basket" of trades for maximum recovery.

- Engine Sensitivity — Individual adjustment settings for how aggressive each of the 5 engines triggers.

- Max Equity Risk Pct — Limits the total account equity that can be put at risk for a specific symbol.

- Magic Numbers (Snip_Magic, Reap_Magic, etc.) — Unique identifiers for each of the 5 trading engines so they don't interfere with each other.

- Snip_Max_Trades / Reap_Max_Trades (etc.) — Individual trade caps for each specific engine to prevent over-leveraging a single strategy.

- Snip_Lot / Reap_Lot (etc.) — Manual lot size overrides for each engine if Dynamic Lot Sizing is turned off.

- Guard_ATR_Mult — Multiplier used by the Guardian engine to set a recovery target based on market volatility (Average True Range).

- Guard_Profit_Target — The specific monetary amount (£) the Guardian engine aims to gain to clear a losing position.

- Guard_Sensitivity — The threshold (as a decimal of Max Loss) that triggers the Guardian recovery mode.

- BE_Trigger_Pips — The specific number of pips in profit required before the trade is moved to a Break-Even (risk-free) state.

- Trail_Dist_Pips — The exact distance in pips the stop loss maintains behind the current price once trailing begins.

- Slippage (30 points) — Internal hardcoded limit to prevent orders from filling at bad prices during high volatility.

- Filling Mode (IOC/FOK) — Automatically detects your broker's execution type (Instant vs Market) to ensure orders aren't rejected.

- Pip Adjust / Point Normalization — Internal logic that automatically scales pips for 4-digit vs 5-digit brokers and JPY pairs.

- Daily Reset Logic — Internal clock that resets the "Daily Profit/Loss" counters at midnight to start a fresh trading day.

- Guardian "Loser Pinning" — Safety logic that forces a Stop Loss onto a manual or engine trade if the Guardian is currently trying to recover it.

- Trade Comment Tagging — Automatically labels every trade in your terminal with the specific engine name (e.g., "SNIPER" or "GR_") for easy tracking.

- Broker Stop Level Check — Validates that the Stop Loss is not placed too close to the current price, preventing broker "invalid stops" errors.

- 100% Efficiency Profit Chase (ProfitAddictMode) — A specific toggle that, when enabled, allows the bot to actively manage and swap "losing" trades for "winning" recovery trades to clear the basket faster.

- Guardian Unique ID (GR_TicketID) — An internal tagging system that creates a unique link between a losing trade and its specific recovery trade so the bot never loses track of which trade it is "guarding."

- Stealth Target (£) (StealthTargetGBP) — The specific monetary value used by the Stealth Stop logic to close a trade once a set amount of cash profit is reached, without the broker seeing a TP on the charts.

- ATR Period (14) & Timeframe (M15) — The bot is hardcoded to use a 14-period Average True Range on the 15-minute chart to calculate volatility for the Guardian engine.

- Momentum Period (10) — The Sniper engine specifically uses a 10-period Momentum calculation on the M15 timeframe to determine trend strength.

- Stochastic Settings (5, 3, 3) — The Lion engine is hardcoded with these specific K, D, and Slowing periods for its overbought/oversold logic.

- Emergency SL Buffer (2 Pips) — When the Break-Even logic triggers, the bot doesn't just move to the entry price; it adds a hardcoded 2-point buffer to cover minor costs and ensure a "risk-free plus a tiny bit" exit.

- Bollinger Band Period (20) — The Reaper engine is hardcoded to use a 20-period Bollinger Band on the M15 timeframe to identify price extremes.

- Guardian Shield (2x ATR) — An internal safety feature where the Guardian engine automatically places a "Hard Stop Loss" at twice the current ATR distance to protect the recovery trade from spikes.

- Target Reached Lock — A "System Safe" logic that completely stops all trading activity once the Daily Profit or Daily Loss limit is hit, requiring a new day to start before it  unlock.

- Trade Execution Delay

- News Filter: A hardcoded or URL-fed news filter to prevent the Sniper or Reaper engines from opening trades 30 minutes before/after High Impact (Red Folder) news.

- Max Open Lots (Global): A safety limit on the total volume across all engines (e.g., "Never exceed 2.0 total lots open at once") to prevent margin calls if multiple engines trigger simultaneously.

- Virtual/Hidden Take Profit: Similar to your Stealth Stops, having a hidden pip-based TP that isn't sent to the broker protects against "stop hunting."

- Max Open Lots (Global): A safety limit on the total volume across all engines (e.g., "Never exceed 2.0 total lots open at once") to prevent margin calls if multiple engines trigger simultaneously.

- Virtual/Hidden Take Profit: Similar to your Stealth Stops, having a hidden pip-based TP that isn't sent to the broker protects against "stop hunting."

- Retry Logic on Close

- Trade Frequency Limiter (Cool-down): A setting to prevent an engine from opening a new trade immediately after one closes (e.g., "Wait 5 minutes before the next Sniper entry").

- The "Guardian" Recovery Cap: A limit on how many recovery trades the Guardian can attempt. If it fails 3 times, it should accept the loss and stop to prevent blowing the account.

- Sunday Opening Protection: Prevents the bot from trading in the first 2–3 hours of the market opening on Sunday when spreads are massive and gaps occur.

- Global Equity Kill-Switch (%) — A "Nuclear Option" that closes every single trade on the account and disables the EA if the total account equity drops by a specific percentage (e.g., 20%), acting as a final shield against a black swan event.

- On-Chart Status Dashboard — Real-time visual feedback on the chart showing current Daily Profit/Loss, which Engines are currently "Searching," and the status of the Guardian (e.g., "GUARDIAN: ACTIVE - RECOVERING TICKET #12345").

- Magic Number Conflict Check — Internal logic on startup that scans the account for any other running EAs to ensure your 5 Engine Magic Numbers aren't being used by another bot, preventing "cross-talk" or accidental trade closures.

- Margin Level Safety Buffer — Prevents any new trades from opening if the "Margin Level %" falls below a certain threshold (e.g., 300%), ensuring the Guardian always has enough "buying power" to fire a recovery trade without getting a "Margin Call" error.

- Trade Retry Delay (ms) — If an order is rejected due to "Busy Server," the bot waits a randomized 500ms–1500ms before retrying, which helps bypass broker anti-spam filters that can get a bot banned for hammering the server too fast.

- Heartbeat Logging — A small internal file or log entry every 60 minutes that confirms the EA is still "alive" and connected to the server, so you can verify it didn't crash silently while you were away.

- Global Variable Persistency (Crash Recovery) 

- Order Integrity Sync (Async Check) — A high-speed internal check that verifies if an order sent to the broker was actually filled before the bot tries to send another. This prevents "Double-Firing" (opening two trades instead of one) during periods of high network latency or when the broker's server is slow to respond.


I WANT EVERYTHING ABOVE ADDED TO THIS TRADING BOT PLEASE AND SO IT ALL RUNS CORRECTLY - 


FINAL TECHNICAL SPECIFICATIONS FOR DEVELOPER (MUST READ):
 
To ensure this build is professional-grade and "Plug and Play" ready for my Vantage Raw (£1,000 GBP) account, the following logic must be strictly implemented:
 
1. Multi-Currency Profit Calculation: The EA must automatically detect the account base currency (GBP). All risk calculations (Max Loss per Trade, Daily Profit/Loss, Stealth Stops) must use the current  TICK_VALUE  and exchange rates to ensure monetary targets are accurate to the penny, regardless of the pair being traded (e.g., EURUSD, Gold, or JPY pairs).

2. Suffix & Symbol Compatibility: The EA must be "Suffix Aware." It should automatically handle symbol names that include a dot or a plus (e.g.,  EURUSD.  or  GBPUSD+ ) as commonly found on Vantage Raw accounts, without requiring manual symbol input.

3. Guardian Recovery Execution (Hedged Basket): When the Guardian Engine triggers, it must NOT immediately close the losing trade. Instead, it must manage the original loser and the new recovery trade as a "Hedged Basket." The EA will track the net profit of these two specific tickets. Once the combined profit reaches the  Guard_Profit_Target , both trades must be closed simultaneously via a high-speed  CloseBy  or bulk-close command.

4. Input Parameter Validation: Upon initialization, the EA must run a "Sanity Check." If any user inputs are mathematically impossible (e.g., a  Max Loss  greater than the  Daily Loss Limit , or a  Lot Size  that exceeds available margin), the EA must print a clear Alert to the screen and refuse to trade until the settings are corrected.

5. Execution & Filling: Since I am using a Raw account, the code must default to  ORDER_FILLING_IOC  or automatically detect the filling mode via  SYMBOL_FILLING_MODE . All trade sends must include a 3-attempt retry logic with a randomized delay (500ms–1500ms) to handle "Busy Server" errors without hanging the terminal.


i will be testing the finished product to see if it does have all the  *100% TRADING BOT REQUIREMENTS* functions within 100% 

Respondido

1
Desenvolvedor 1
Classificação
(12)
Projetos
18
17%
Arbitragem
3
33% / 67%
Expirado
3
17%
Livre
2
Desenvolvedor 2
Classificação
(12)
Projetos
15
33%
Arbitragem
5
40% / 20%
Expirado
1
7%
Trabalhando
Publicou: 6 artigos, 34 códigos
3
Desenvolvedor 3
Classificação
(21)
Projetos
28
32%
Arbitragem
4
50% / 25%
Expirado
4
14%
Trabalhando
4
Desenvolvedor 4
Classificação
Projetos
0
0%
Arbitragem
0
Expirado
0
Livre
5
Desenvolvedor 5
Classificação
Projetos
0
0%
Arbitragem
0
Expirado
0
Livre
6
Desenvolvedor 6
Classificação
(10)
Projetos
12
0%
Arbitragem
3
33% / 33%
Expirado
1
8%
Livre
7
Desenvolvedor 7
Classificação
(1)
Projetos
1
0%
Arbitragem
1
0% / 100%
Expirado
0
Livre
8
Desenvolvedor 8
Classificação
Projetos
0
0%
Arbitragem
0
Expirado
0
Livre
9
Desenvolvedor 9
Classificação
(610)
Projetos
709
33%
Arbitragem
45
47% / 42%
Expirado
14
2%
Trabalhando
10
Desenvolvedor 10
Classificação
(31)
Projetos
33
42%
Arbitragem
0
Expirado
3
9%
Livre
11
Desenvolvedor 11
Classificação
(44)
Projetos
51
59%
Arbitragem
2
100% / 0%
Expirado
1
2%
Livre
Publicou: 5 códigos
12
Desenvolvedor 12
Classificação
Projetos
0
0%
Arbitragem
0
Expirado
0
Livre
13
Desenvolvedor 13
Classificação
(268)
Projetos
602
34%
Arbitragem
64
20% / 58%
Expirado
147
24%
Trabalhando
Publicou: 1 artigo, 22 códigos
14
Desenvolvedor 14
Classificação
(2)
Projetos
7
0%
Arbitragem
3
0% / 33%
Expirado
1
14%
Trabalhando
15
Desenvolvedor 15
Classificação
(16)
Projetos
35
23%
Arbitragem
4
0% / 50%
Expirado
2
6%
Trabalhando
16
Desenvolvedor 16
Classificação
Projetos
0
0%
Arbitragem
0
Expirado
0
Livre
17
Desenvolvedor 17
Classificação
(7)
Projetos
6
0%
Arbitragem
4
25% / 75%
Expirado
2
33%
Livre
18
Desenvolvedor 18
Classificação
(258)
Projetos
266
29%
Arbitragem
0
Expirado
3
1%
Trabalhando
Publicou: 2 códigos
19
Desenvolvedor 19
Classificação
(7)
Projetos
13
15%
Arbitragem
13
23% / 46%
Expirado
3
23%
Livre
Publicou: 34 artigos
20
Desenvolvedor 20
Classificação
(169)
Projetos
202
48%
Arbitragem
5
20% / 60%
Expirado
2
1%
Livre
21
Desenvolvedor 21
Classificação
(3)
Projetos
5
60%
Arbitragem
1
0% / 0%
Expirado
0
Trabalhando
22
Desenvolvedor 22
Classificação
(3)
Projetos
3
100%
Arbitragem
0
Expirado
0
Trabalhando
23
Desenvolvedor 23
Classificação
(4)
Projetos
3
33%
Arbitragem
2
0% / 100%
Expirado
0
Livre
24
Desenvolvedor 24
Classificação
Projetos
1
0%
Arbitragem
2
0% / 100%
Expirado
0
Livre
25
Desenvolvedor 25
Classificação
(1)
Projetos
1
100%
Arbitragem
0
Expirado
0
Livre
26
Desenvolvedor 26
Classificação
(13)
Projetos
20
40%
Arbitragem
3
0% / 67%
Expirado
3
15%
Livre
27
Desenvolvedor 27
Classificação
(53)
Projetos
91
52%
Arbitragem
2
0% / 50%
Expirado
1
1%
Livre
28
Desenvolvedor 28
Classificação
(10)
Projetos
14
43%
Arbitragem
0
Expirado
3
21%
Livre
29
Desenvolvedor 29
Classificação
(3)
Projetos
3
0%
Arbitragem
1
0% / 100%
Expirado
0
Livre
30
Desenvolvedor 30
Classificação
Projetos
0
0%
Arbitragem
1
0% / 100%
Expirado
0
Livre
Pedidos semelhantes
Ниже представлено готовое, технически выверенное Техническое задание (ТЗ) . Вы можете полностью скопировать этот текст и разместить его на бирже фриланса (например, MQL5.com в разделе «Фриланс» или на Smart-Lab). Данное ТЗ написано на профессиональном языке, понятном разработчикам торговых систем для терминала QUIK (на языке Lua) . ТЕХНИЧЕСКОЕ ЗАДАНИЕ (ТЗ) Разработка мультивалютного торгового робота для терминала
Bot 30 - 80 USD
I am looking for an experienced MQL5 developer to create a fully automated Expert Advisor (EA) for MetaTrader 5 based on a Price Action strategy. The bot needs to automatically identify specific candlestick formations and market structure levels, execute trades, and manage risk using a dynamic trailing stop.The EA should monitor the chart for the following price action setup:Market Structure / Trend Filter:The bot
Master mind 30+ USD
Start ↓ Detect Trend (H4) ↓ Confirm Structure (H1) ↓ Wait for Pullback ↓ Check Indicators ↓ Calculate Confidence Score ↓ Score ≥ 80? ├── No → Wait └── Yes ↓ Calculate Lot Size ↓ Place Order ↓ Set Stop Loss ↓ Set Take Profit ↓ Manage Trade ↓ Move to Break-even ↓ Trail Stop ↓ Close Trade. IF Price > EMA200 (H4) AND EMA50 > EMA200 (H4) AND ADX > 25 AND RSI between 55 and 70 AND MACD Main > Signal AND Bullish engulfing
Standby Description . Prop Firm Environment . ( Monitor Execution and Handling Environment Changes as Required ) . Technical Issues . Delete extra lines of code (Clean Code , Folder) . Asset related translation , no need for Logic Alteration
Only Technical Issues . Familiarization to Different Symbols . [Again Technical Assistance Only] . Deleting extra lines of code , Not Required Folders (Clean Code) . No Need for Logic Alteration (Strictly)
Akram boushaba 30 - 500 USD
مرحبا كيف حالكم انا اكرم مهتم بالتداول احاول ان اصمم برنامج روبوت قادر على التداول من تلقاء نفسه من يمكنه ان يساعدني او يعلمني كيف استطيع فهل ذلك وسأكون ممتناً له وشكرا لكم
EA Crafter 500+ USD
Act as a professional Quantitative Developer and Risk Manager. I want to build a systematic trading strategy rulebook that prioritizes capital preservation and statistical edge over raw performance. Please generate a structured trading strategy using the following framework: 1. ASSET CLASS & TIMEFRAME: - Asset: [e.g., Apple (AAPL), Bitcoin (BTC), or EUR/USD] - Timeframe: [e.g., 5-minute, 1-hour, Daily] 2. CORE
I am looking for an experienced MQL5 developer to build a professional MetaTrader 5 (MT5) Expert Advisor (EA) for swing trading. Trading Pairs EUR/USD USD/JPY Timeframes Daily (D1) for trend identification. H4 for trade entries. Strategy The EA should: Detect Daily market structure (HH, HL, LH, LL) using confirmed swing highs and lows (not relying solely on ZigZag). Use DMI/ADX for trend confirmation. Open trades
English Description (For Developers): I need a custom Expert Advisor (EA) for MT5 to trade ONLY ETHUSD based on trend-following and counter-trendline breakout-retest with an M1 execution filter and strict risk management. Trading Logic: 1. Trend Filter: Price must be below 200 EMA on both H1 and M15 timeframes for Short (Sell) trades. (Opposite for Long/Buy trades). 2. Setup: On the M15 chart, after a strong move in
Part 1: Project setup Input settings (risk, stop loss, take profit, EMA periods) Indicator initialization Trade management framework Part 2: Trading logic EMA crossover detection Buy/Sell entry rules One-trade-per-symbol check Part 3: Risk management Automatic lot size calculation Stop-loss and take-profit placement Trade execution and error handling Part 4: Final touches On-screen information Optimization

Informações sobre o projeto

Orçamento
200 - 500 USD
Prazo
de 1 para 10 dias