Modification of EA and fix some bugs

MQL5 Indicateurs Experts

Tâche terminée

Temps d'exécution 19 jours
Commentaires du client
Igor is smart, and software is his thing. He spent days and hours in this business. Even at 3, 4, 5 o'clock at night. Patience may be the right word to describe itself. Thanks.
Commentaires de l'employé
Thanks for task, it was interesting! Wish you all the best!

Spécifications

Hello Everyone,

I want to make additional additions to the EA I use in my current hand. If it is possible.
Main plugins i want: An add-on to TrailingStop and take profit in case of multi-robot (EA) usage. And minor fixes.
The explanations may be long, to be more descriptive, but I am definitely not talking about a complicated plugin.

Avaliable features - Exists:
--------------------------------
* When the number of positions increases, the following is also increased: step between positions, lot size, take profit (martingale)

With the increase in the number of positions:
the step between positions is increased;
the distance of take profit is increased.
If a signal emerges and the number of positions is equal to the limit, one more position is opened and at the next bar (if there is a signal to open a position)
the most losing position is closed.
Protection of profit: if protection is allowed and the total profit of all positions is greater than the specified value,
as well as the number of positions is greater than or equal to the protected amount, the most profitable position is closed.
For example, we have a total profit of $52 and four open positions. The protected amount is set to "3". So we can close one position,
thus trying to keep a minimum of three positions always open.

This EA's current Input Parameters; (Exists)
** Lots (if <= "0" -> "Risk" is used) - position volume (if <= "0.0", lot "Risk" parameter will be calculated audibly); >>>>Available and used.
** Stop Loss (in pips) - Stop Loss value; >>>>Available and used.
** Take Profit (in pips) - Take profit value; >>>>Available and used.
** Trailing Stop (in pips) - trailing value; >>>>Available and used.
** Trailing Step (min value == 1) (in pip) - trailing step value; >>>>Available and used.
** Percentage risk for a free margin deal - risk per trade as a percentage of free margin; >>>>Available and used.
** Maximum open quotes - the maximum number of open positions (eg = 5) as well as the maximum one-way open position limitation (eg = 3) (Buy or Sell); >>>>Available and used.
** Interval between positions - the distance between positions; (must be in bars.) >>> >>>>Available and used. (it is not working right now.)
** Coefficient interval between positions - multiplier for the step between positions; >>>>Available and used.
** Coefficient Take profit - multiplier for the Take Profit step; >>>>Available and used.
** Min profit. Close max profit position - minimum profit, at which the most profitable position will be closed; >>>>Available and used.
** Account protection. If "true" -> closes max profit position - maintains profit at which the most profitable position will be closed; >>>>Available and used.
** If "account protection" = "true" then number of items open - number of locations to protect; >>>>Available and used.
** Reverse case - reversal signals;  >>>>Available and used. (You can remove this part. I don't need Reverse Signal.)
** Max volume of position - maximum allowed position volume; >>>>Available and used.
** Lot coefficient - lot multiplier, the more open positions exist, the greater lot multiplier will be. >>>>Available and used.
** BenefitK. I have added it. (Maybe in need of some regulation)   >>>>Available and used.
These are Okay.
----------------------------------------------------------------------------------------------------------------------
The Original EA is here: >>>  https://www.mql5.com/en/code/19598. ( I transformed from this orginal EA )

I changed the ZeroLag indicator and just added the MACD Average Signal Line instead.
The indicator i used here: >>>  https://www.mql5.com/en/code/20242


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

In addition i want;

----------------------------------------------------------------------------------------------------------------------
1-)
The current Classic Trailing Stop and Follow-Up Step is ok. With the additional add-on I want,
after the position is taken to the ground and the classic Trailing Stop is activated,
the following Stop will approach the price as much as the value determined by the input, as well as the value of xx bars (eg = 7 bars).
Let's call this additional plugin BarStep.
Let's call the Bar number to wait after Trailing Stop is activated, Bar
Stop. In this example;
BarStop = 7 Bars
BarStep = 15 points
If I will explain over the sample values ​​here. After Trailing Stop is activated, 7 bars will be expected, nothing will happen.
Meanwhile, only normal Trailing Stop and Trailing Step will be active and will work normally.
After 7 bars, the Trailing Stop level will approach the price by 15 point s at each new bar. (eg BarStep = 15 point s)
The logic here after waiting for a certain period of time (time = bar) and the next stop gets smaller depending on the time (time = bar) and gets smaller with each bar.
Also, keep TralinStep active with the addition of this plugin. Let it run normally.
Both the following step and the Confirmation Step depend on the checkmark. It would be great if that way was possible.
With the Srtategy tester I can optimize and update the values ​​here.
Let's add True - False to this addition. If it doesn't give very good results, let it be disabled. Or if Int BarStep = 0 it means false.
However, in this case, standard Trailing Stop, Trailing step will be active.
Illustrative example:
--------------------
Current price (Example: after 7 bars) = 1.20350 >>> Profit = 350 point s, Guaranteed Profit = 50. (because it is in 50 interval >> 330 - 380 between)
Trailing Stop: 280 pips (1,20050)
Trailing Step: 50
The parameter I want is a new property and name it BarStep = 15 (for example)
Let's assume the price is fixed: 1.20350
8th Bar>> Trailing Stop: 280-15 = 265 points (1,20065) (15 point s slipped up)
9th Bar >> Trailing Stop: 245-15 = 210 pips (1.20080) (15 point s slipped up)
10.Bar>> Trailing Stop: 210-15 = 175 pips (1.20095) (15 point s slipped up)
15. Bar>> Trailing Stop: 175 -15 * 5 = 0 pips (1.20170) (75 point s slipped up)

2-) If this newly modified EA is used at the same time, for example 2 different symbols and 4 different time parameters;
Feature of Multicurrency.
For example: EURUSD 1H, EURUSD 30M, USDCAD 2H and USDCAD 15M (I usually work on 5-digit symbols.)
If the profit of the total calculation for all robots (EA) reaches the level of all = 1000 point s (xxx point s),
then the most profitable xx position (i.e. = 3) and the most losing position (e.g. = 2) I want it to be closed.
It should have the option True-False or it can also mean false (if the value = 0). // --- You can add a comment. It does not matter.
I do not know if 1000 point s are correct logic here. I don't know if point s can be collected in different symbols.
Perhaps instead of fulfilling the requirement to reach 1000 point , a condition of reaching a specified percentage of the Eqquity or balance can also be created.
This part depends on the software developer's decision. (Let me repeat that I usually work on 5-digit symbols.) I didn't know which one would be correct.
Of course a robot takes care of its own trades, usually opening its own trades, closing its own trades. An additional feature I mentioned.
In other words, this new EA I want will be able to intervene in the positions of other robots, regardless of MagicNumber and ticketNumber, when a special requirement is met.
In order for this feature to be added, in addition to 1 special magic number for each new position, the second universal can have an identical magic number!
I think it can be solved this way.

3-) I mentioned above. In addition to the open position limitation as well as the maximum one-way open position limitation (eg = 3) (Buy or Sell)
Total position two way can be xx ( eg = 5 ) but one way positions must be xx ( eg = 3 )

4-) If the profit of open positions reaches the limit of > 0 and for example 600 point s (xxx point ),
I want the feature to then the most profitable xx position (i.e. = 2) and the most losing position (e.g. = 1) I want it to be closed.
for this 1 EA's 1 symbol's magicNumber and this EA robot. And must be True-False options or if value equals = o it is false. (// --- You can add a comment.)
There is this part, but it actually means that the existing benefitK is modified with the eyes of the programmer.

5-) There is an active feature currently in use; (it is some similar to item 4)
"If a signal emerges and the number of positions is equal to the limit, one more position is opened and at the next bar (if there is a signal to open a position)
the most losing position is closed."
I want to change this feature like that;
If a signal emerges and the number of positions is equal to the one-way limit, one more position is opened and at the next bar (if there is a signal to open a position)
the most losing position is closed and with this most benefit position is closed if any.
This the most losing position is closed. ok. But most benefit position is closed if any. Let's add true - Fals to this section, please.

6-) Slippage value is true i dont know! How much must it be? i cant know abut it.
And digit problem; Actually it is seem normal. But there are a problem. i fixed it some like just as follows.
// --- tuning for 3 or 5 digits
   int digits_adjust = 1;
   if (m_symbol.Digits () == 3 || m_symbol.Digits () == 5)
      digits_adjust = 1; <<<<<<(( Originally this number is 10. EURUSD doesn't work properly if you don't set it to == 1 ))
                                  
   m_adjusted_point = m_symbol.Point () * digits_adjust;

   ExtStopLoss = InpStopLoss * m_adjusted_point;
   ExtTakeProfit = InpTakeProfit * m_adjusted_point;
   ExtTrailingStop = InpTrailingStop * m_adjusted_point;
   ExtTrailingStep = InpTrailingStep * m_adjusted_point;
   ExtIntervalPositions = InpIntervalPositions * m_adjusted_point * 10; <<< ((EURUSD doesn't work properly if you don't set == 10 here. İf here 10 everything is ok.))

Can you fix this part please. Because it is not working right.

SL TP lots etc. must work truely in 5 digit symbols. At the same time on 3 digits.

7-) And it constantly opens selling positions. I did not understand the reason for this either. I changed the conditions.
Again, the situation has not changed. I wrote the simple conditions again. The same EA: 174 sell, 14 buy !!! (15M, 10M, 5M) in 15 days.
I don't see anything strange when I examine it. I have examined the Buy-Sell conditions again, it seems like there is no mistake!
Moreover, everything is normal in the strategy test.
I would be glad if you can also look at this topic.

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

You Please submit the final and edited version of the EA file with its open codes, after testing and checking.
Of course, I'll have to retest on the demo account later.

Thank you, and good luck with.

Dossiers :

MQ5
Macd_Av03.mq5
130.5 Kb
MQ5
MSRoC.mq5
5.0 Kb
PNG
Sample01.PNG
200.5 Kb
PNG
Sample02.PNG
47.3 Kb

Répondu

1
Développeur 1
Évaluation
(34)
Projets
48
21%
Arbitrage
6
83% / 17%
En retard
8
17%
Gratuit
2
Développeur 2
Évaluation
(174)
Projets
200
12%
Arbitrage
39
38% / 33%
En retard
5
3%
Gratuit
Publié : 2 codes
3
Développeur 3
Évaluation
(258)
Projets
269
29%
Arbitrage
2
50% / 0%
En retard
3
1%
Travail
Publié : 2 codes
4
Développeur 4
Évaluation
(14)
Projets
19
11%
Arbitrage
1
0% / 100%
En retard
5
26%
Gratuit
5
Développeur 5
Évaluation
(7)
Projets
15
33%
Arbitrage
4
0% / 25%
En retard
3
20%
Gratuit
6
Développeur 6
Évaluation
(45)
Projets
91
13%
Arbitrage
34
26% / 59%
En retard
37
41%
Gratuit
7
Développeur 7
Évaluation
(211)
Projets
274
21%
Arbitrage
25
52% / 16%
En retard
0
Chargé
Commandes similaires
I need a professional XAUUSD signal indicator for MetaTrader 5, written entirely in MQL5 (.mq5). IMPORTANT: This is NOT an auto-trading EA. It must never open, close or modify trades. It only analyzes XAUUSD and generates signals + MT5 push notifications. 1. Multi-timeframe analysis: H4 → H1 → M30 → M15 → M10 → M5 → M1. 2. Detect market structure: - Swing High / Swing Low - BOS - MSS - CHOCH - Bullish/Bearish HTF
Yes. The final “world-class” RegimeShift concept we converged on is an adaptive hybrid EA , not a single trend EA and not a pure recovery EA. The key idea is: Classify the market first → select the correct engine → size dynamically → stop using that engine when its market thesis is invalid. That is the part I would preserve as the final architecture. RegimeShift — Final Strategy Architecture Layer Final role H1 Macro
NextGen 30 - 50 USD
Hello, Before I select a developer, please confirm that you can implement the complete MT5 EA exactly according to my specification. The most important requirements are: 1. Strict NO-REPAINT / NO-HINDSIGHT logic. 2. Sweep, MSS/BOS, Displacement, FVG, Order Block and POI must be defined algorithmically before coding. 3. M1 and M5 confirmation logic. 4. Zero-Float Entry logic. 5. MT5 terminal alerts and immediate MT5
I need a professional XAUUSD signal indicator for MetaTrader 5, written entirely in MQL5 (.mq5). IMPORTANT: This is NOT an auto-trading EA. It must never open, close or modify trades. It only analyzes XAUUSD and generates signals + MT5 push notifications. 1. Multi-timeframe analysis: H4 → H1 → M30 → M15 → M10 → M5 → M1. 2. Detect market structure: - Swing High / Swing Low - BOS - MSS - CHOCH - Bullish/Bearish HTF
I would like to create a tradingview robot that will sync with tradovate. My strategy is as follows: Chart Setup - MES on left and MNQ on right. The MES chart has quarter levels on it. The MNQ has the volume indicator. Trading Session is from 9:30AM EST - 11:00AM EST If most recent price action has crossed *up* a quarter level on MES, I look for *sells* on MNQ. My trigger for a sell is a bearish engulfing candlestick
Hi, I would like to commission an Expert Advisor (EA) for MetaTrader 5 (MT5) based on the Smart Money Concepts (LuxAlgo) indicator, which is available in the MQL5 Market. Below are the detailed specifications for the EA: 1. General Parameters & Symbol Trading Asset: Gold (XAUUSD) Timeframe: 5-Minute (M5) Indicator Integration: Integration with "Smart Money Concepts (LuxAlgo - Smart Money Concepts)" via
We are looking for an experienced MQL5 developer who also has real trading experience to build our existing trading strategy into a fully automated MT5 Expert Advisor (EA). We already have our entry and exit trading rules documented . We are not looking for someone to invent a strategy for us. We need someone who understands trading well enough to understand our rules, discuss them with us in normal trading terms
Hello, I need an MQL5 Expert Advisor for MT5 on XAUUSD (H1) using a 1.0 lot size where every $1 movement matters. The logic must work as follows: When any active trade reaches $20.0 in profit, close that specific trade immediately and open a new opposite trade automatically. When an active trade reaches a loss of $4.0, DO NOT close the existing trade; instead, keep it open and immediately open a new opposite trade
I'm looking to purchase a profitable trading robot (EA) for MetaTrader. Requirements: Backtest Requirements: Verified backtest results covering exactly 2 years of historical data (no more, no less) Data must be from a reputable source with tick-level accuracy (99% modeling quality preferred) Please include key metrics: total net profit, profit factor, maximum drawdown, win rate, and Sharpe ratio Strategy Explanation
Surebot 100+ USD
I want a sure bot that will be able to plat a good and nice trade thst i will benefit from and that i all use to make it in life

Informations sur le projet

Budget
100 - 200 USD
Délais
à 7 jour(s)