Advanced MT4/MT5 Grid Trading Bot Optimization - Fix Backtesting Issues & Add Professional Features

Job finished

Execution time 12 days

Specification

I currently have a functioning trading bot that needs these improvements and overall optimization to work flawlessly in backtesting, since currently it mainly works well only in live trading.

Separate Grid Spacing Settings for Long and Short Positions:
• Requirement: It should be possible to set different spacing between grid levels for buy (long) and sell (short) positions. For example, long positions can be opened every 0.02% price drop, while short positions every 0.03% price rise.

Dynamic Grid Adjustment and Flexibility:
• The system must be designed to allow dynamic changes to grid spacing in the future using an external indicator (e.g., volatility indicator like ATR). When the spacing value changes, the bot must automatically update (move or replace) existing pending orders (limit orders). All problems that come with this dynamic adjustment need to be cleared and resolved.

Compatibility with All Financial Instruments:
• Requirement: The bot's logic needs to be fixed to work seamlessly on all financial instruments, including indices (e.g., S&P 500), not just currency pairs. This includes standardizing the calculation of pip/point sizes and nominal values.

Unique "Magic Number":
The bot must assign a unique identification number ("Magic Number") to each of its positions and pending orders, which is specific to each chart it runs on. All bot functions must work exclusively on positions with this specific number, preventing different bots on the same account from interfering with each other's operations (e.g., preventing the EUR/USD bot from accidentally closing positions of the GBP/JPY bot).

Stop Loss and Trailing Stop Loss Enhancement:
• Requirement: The stop loss system needs to be completely redesigned. Currently it's limited only by a global stop loss price that is the same for all positions, which needs to be changed.

  1. Individual Stop Loss in pips/points: Each position must have its own Stop Loss set a specific number of pips away from the entry price (replacing the current global stop loss system).

  2. Trailing Stop Loss Enhancement: The Trailing Stop Loss needs to be fixed - currently it doesn't remain constant at the highest position. A condition in pips for activation needs to be added alongside the grids. The trailing stop should:

    • Only activate after the position moves favorably by a specified number of pips
    • Once activated, properly follow the price movement while maintaining the specified distance in pips from the most favorable price reached
    • Remain constant at the highest favorable position achieved

These optimizations are essential for ensuring the bot performs consistently in both live trading and backtesting environments.


Responded

1
Developer 1
Rating
(3)
Projects
6
17%
Arbitration
0
Overdue
1
17%
Free
Published: 3 codes
2
Developer 2
Rating
(111)
Projects
183
25%
Arbitration
24
17% / 75%
Overdue
16
9%
Free
3
Developer 3
Rating
(12)
Projects
24
50%
Arbitration
1
100% / 0%
Overdue
6
25%
Free
4
Developer 4
Rating
Projects
0
0%
Arbitration
1
0% / 0%
Overdue
0
Working
5
Developer 5
Rating
(20)
Projects
29
3%
Arbitration
4
0% / 100%
Overdue
5
17%
Free
6
Developer 6
Rating
(252)
Projects
462
26%
Arbitration
139
20% / 60%
Overdue
100
22%
Free
7
Developer 7
Rating
(1)
Projects
3
0%
Arbitration
0
Overdue
0
Free
8
Developer 8
Rating
(2)
Projects
0
0%
Arbitration
5
0% / 60%
Overdue
0
Free
9
Developer 9
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
10
Developer 10
Rating
(13)
Projects
22
41%
Arbitration
8
0% / 50%
Overdue
3
14%
Free
11
Developer 11
Rating
(510)
Projects
977
74%
Arbitration
27
19% / 67%
Overdue
100
10%
Working
Published: 1 article, 6 codes
12
Developer 12
Rating
(7)
Projects
6
33%
Arbitration
7
0% / 71%
Overdue
0
Free
13
Developer 13
Rating
(18)
Projects
22
18%
Arbitration
8
38% / 38%
Overdue
3
14%
Loaded
Published: 1 code
14
Developer 14
Rating
(75)
Projects
80
6%
Arbitration
46
11% / 54%
Overdue
7
9%
Working
15
Developer 15
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
16
Developer 16
Rating
(1)
Projects
1
0%
Arbitration
0
Overdue
0
Free
17
Developer 17
Rating
(298)
Projects
478
40%
Arbitration
105
40% / 24%
Overdue
82
17%
Loaded
Published: 2 codes
Similar orders
Project Description I am looking for an experienced MQL5/MT5 Expert Advisor developer to develop an automated trading EA for XAUUSD on the M3 timeframe , running on an Exness account . The EA will automate a manual strategy based on SNR/GAP zones , using two setup types: Price Rejection Price Correction The EA should identify valid BUY/SELL setups around predefined SNR/GAP areas, apply configurable RSI, SMA, EMA and
I need an MT5 Expert Advisor for XAUUSD (Gold) running on an Exness account. STRATEGY LOGIC The exact entry and exit rules will be provided in writing before development starts. Please quote for a single rule-based strategy with clearly separated logic, so the rules can be adjusted later without rewriting the whole EA. RISK MANAGEMENT (this is the priority of the project) - Risk per trade as a percentage of account
Indicador Maximas e Minimas + Super Trend O Indicador MAX/MIN é um indicador de análise técnica para o MetaTrader 5 , desenvolvido para ajudar você a identificar regiões importantes de preço e possíveis oportunidades de compra e venda. O que ele faz MAX/MIN: identifica máximas e mínimas relevantes do mercado e mostra os preços no gráfico. HH / HL / LH / LL: ajuda a visualizar a estrutura do mercado, mostrando quando
Subject: Custom MT5 Multi-Currency EA Request - Multi-Timeframe Strategy with Trailing Stop Hi, I am looking for a developer to create a custom Expert Advisor (EA) for MetaTrader 5 (MT5) . The EA must be optimized for multi-currency testing and trading , allowing me to run it across multiple currency pairs simultaneously. The trading logic should be based on a multi-timeframe approach using the following indicators
Hello Traders, Have a trading strategy or idea you want to automate? I specialize exclusively in MQL5 development, helping traders turn their concepts into professional trading solutions. Custom Expert Advisors — automate your strategy and reduce manual execution Custom Indicators — transform your market ideas into powerful trading tools Fix & Debug — identify errors and get your existing code working properly
please share: Strategy description — entry/exit rules, indicators used, timeframe(s), and instrument(s) (a written explanation, screenshots, or an existing indicator/EA to reference all work) Risk management rules — position sizing method (fixed lot / % risk), stop loss / take profit logic, max drawdown or daily loss limits, and whether martingale/grid/hedging is involved Broker & account details — broker name
I need a unique grid trading system for XAUUSD that combines entry, controlled two-sided grid expansion, DCA (Dollar Cost Averaging) basket profit control, hedging. Unlike traditional grid EAs that only trade against price, this unique grid system should dynamically build positions in both directions based on market movement, allowing flexible adaptation to changing conditions ie the grid needs to dynamically move
I need an experienced MQL5 developer to create a fully automated MT5 Expert Advisor called Ayoub Gold EA , focused exclusively on XAUUSD (Gold) . Main requirements: Platform: MT5 / MQL5. Fully automated BUY and SELL trading on XAUUSD. Must support broker suffixes such as XAUUSD, XAUUSD.f and XAUUSDm. Trading strategy based mainly on Range Breakout with trend confirmation. EMA, ADX and ATR filters. London/New York
Looking for an experienced Sierra Chart ACSIL/C++ developer to customize an existing footprint chart. I need 3 things: 7-Day ATR – calculate and display a configurable 7-day ATR. Custom Footprint – modify my existing footprint chart to match my preferred layout/data display. Automatic LVN – detect and plot Low Volume Nodes automatically based on volume distribution. I already have a working footprint chart, so no
//———————————————————————————————————————————————————————————————————— struct S_MCAV { double matureSum; double totalSum; double value; void Init () { matureSum = 0.0; totalSum = 0.0; value = 0.5; } void AddContext (int ctx) { totalSum += 1.0; if (ctx == 1) matureSum += 1.0; } void ApplyDecay (double rate) { matureSum *= rate; totalSum *= rate; } void Update () {

Project information

Budget
60+ USD