I Make an EA Martingale and need some tips

MQL4 Indicadores Asesores Expertos

Trabajo finalizado

Plazo de ejecución 4 días
Comentario del Cliente
It was great to work with Aleksei because in some situations I felt like I had a friend near me who gave me advice. Thanks Aleksei !!!

Tarea técnica

1. how to find the martingale level after a closing and reopening

2. How implement break even (template code)


I have this params:

input string  s1                   = "Last update: 2017/10/11";
input bool    UseMoneyManagement   = false;     //UseMoneyManagement use money management for the trade volume calculation
input double  RiskPercent          = 0.5;       //RiskPercent the percent of the risk for the trade volume calculation
input double  Lots                 = 0.01;      //Lots fixed lot size
input int     NBarsCalcStopLoss    = 4;         //NBarsCalcStopLoss The n. bars for calc Higest (for sell) or Lowest (for buy)
input double  GapStopLoss          = 5;         //GapStopLoss To be added to StopLoss
input double  RRTakeProfit         = 1.0;       //RRTakeProfit Rsk Reward for calc Take profit
input int     MagicNumber          = 1122112223;//Magic number for EA's orders
input int     Slippage             = 70;        //Slippage maximum allowed deviation (in pips) of the price by opening
input int     SpreadLimit          = 12;        //SpreadLimit maximum allowed spread in points
// input int     StrategyN            = 3;         //number of case in FcStrategy.MA routine that is the strategy used to determine the buy or sell

input string  s2                   = "-------------------";
input int     FromTimeHourTrade    = 6;         // Hour from start trade
input int     ToTimeHourTrade      = 19;        // Hour to stop trade
input int     MaxBarsStillTradeOpen= 10;        // Max number of bars where position can be open, after this the operation is closed
input int     PercOfGainForBE      = 0;         // PercOfGainForBE (0=Disalbed) The percentage of gain for apply Break even
input int     PercOfLotsToCloseAtBE= 50;        // The percetange of lots to be close when the PercOfGainForBE is reached
    
input string  s3                   = "-------------------";
input double  MultiplierLot        = 2.0;
input double  MaxLots              = 1.28;
input string  ContRev              = "RCCRCRRCCCRRC"; //C=Continue; R=Reverse; Continue is the versus of first (lose) trade, Reverse is the opposite versus of first (lose) trade



this routine menage break even but don't work

//+--------------------------------------------------------------------------------+
//| the function for managing of EA's Break even and max bars trade                |
//+--------------------------------------------------------------------------------+
void do_manageBE( int magicBuySell)
{
   int typ;double lot=0;double profit;
   double tmpLots=0;
   int BuyOrSell=0;
  
   double point = XGetPoint(Symbol());                            // get point value
   int total_ordersB = orders_count(MagicNumber);                 // count of opening orders
   int total_ordersS = orders_count(MagicNumber);                 // count of opening orders
   string symbol = Symbol();
  
   //
   //--- Check the action to do based on the last trade result
   //
   if(((total_ordersB+total_ordersS) > 0) ){                      // Check One order active
      if(nBSOT.LastStartHour!=Time[0]){                           // Check for increment n. of bar trade is active
         // Moved to History() routine --- nBSOT.nBarsStillOpenTrade=iBarShift(NULL,0,OrderOpenTime(),true);//++;
         nBSOT.LastStartHour=Time[0];
      }
      //
      // Manage n. max of bar where the trade must be opened
      //
      if((nBSOT.nBarsStillOpenTrade>MaxBarsStillTradeOpen) && (MaxBarsStillTradeOpen>0)){        // Check the numer of hour active trade exceed the threeshold
         int orders_total = OrdersTotal();                        // Num. tot. orders
         for( int count = 0; count < orders_total; count++ ){     // Cicle for orders
            if( OrderSelect(count,SELECT_BY_POS,MODE_TRADES) && OrderMagicNumber() == MagicNumber ){ // if selected order is active trade and magic ok
               // Print("Close..."+OrderTicket()+":-:"+OrderLots()+":-:"+Bid+":-:"+nBSOT.nBarsStillOpenTrade);
               int ord_type = OrderType();
               double PriceForClose=0.0;
                if( ord_type == OP_BUY  )
                  PriceForClose=Bid;
                if( ord_type == OP_SELL  )
                  PriceForClose=Ask;
               
               XOrderClose(OrderTicket(), OrderLots(), PriceForClose, Slippage);                               // Close order                                   
            }
         }
      }
      //
      // Manage Break Even
      //
      if((PercOfGainForBE>0)){        // Check the break even required by user input
         int orders_total = OrdersTotal();                        // Num. tot. orders
         for( int count2 = 0; count2 < orders_total; count2++ ){     // Cicle for orders
            if( OrderSelect(count2,SELECT_BY_POS,MODE_TRADES) && OrderMagicNumber() == MagicNumber ){ // if selected order is active trade and magic ok
               // Print("Close..."+OrderTicket()+":-:"+OrderLots()+":-:"+Bid+":-:"+nBSOT.nBarsStillOpenTrade);
               int ord_type = OrderType();
               double PriceForClose=0.0;
                if( ord_type == OP_BUY  ){
                  PriceForClose=0.0;
                  if(Bid>=LastTradeBE){    // Check if the LastTradeBE (setted at the order open) is more than Bid price
                     PriceForClose=Bid;    // is time to close order
                  }
                }
                if( ord_type == OP_SELL  ){
                  PriceForClose=0.0;
                  if(Ask<=LastTradeBE){    // Check if the LastTradeBE (setted at the order open) is less than Ask price
                     PriceForClose=Ask;    // is time to close order
                  }
                }
                if(PriceForClose>0.0){
                  XOrderModify(OrderTicket(),PriceForClose,OrderOpenPrice(),OrderTakeProfit(),0,0);         // Modify SL to entry price (Break Even)
                  //if(PercOfLotsToCloseAtBE>0){
                  //   XOrderClose(OrderTicket(), ActualTradePercOfLotsToCloseAtBE, PriceForClose, Slippage);
                  //   return;
                  //}
                  // XOrderClose(OrderTicket(), OrderLots(), PriceForClose, Slippage);                               // Close order                                   
                }
            }
         }
      }
           
     
   }



Han respondido

1
Desarrollador 1
Evaluación
(885)
Proyectos
1410
67%
Arbitraje
123
32% / 41%
Caducado
218
15%
Libre
Ha publicado: 1 ejemplo
2
Desarrollador 2
Evaluación
(623)
Proyectos
980
47%
Arbitraje
32
38% / 34%
Caducado
96
10%
Trabaja
Ha publicado: 6 ejemplos
3
Desarrollador 3
Evaluación
(845)
Proyectos
1446
72%
Arbitraje
119
29% / 47%
Caducado
355
25%
Trabaja
Ha publicado: 3 artículos
4
Desarrollador 4
Evaluación
Proyectos
0
0%
Arbitraje
0
Caducado
0
Libre
5
Desarrollador 5
Evaluación
(2628)
Proyectos
3340
67%
Arbitraje
77
48% / 14%
Caducado
342
10%
Trabaja
Ha publicado: 1 ejemplo
6
Desarrollador 6
Evaluación
(14)
Proyectos
22
59%
Arbitraje
2
0% / 50%
Caducado
2
9%
Libre
Ha publicado: 1 ejemplo
Solicitudes similares
Please specify your requirements here one by one. Try to describe your requirements briefly and clearly so that your potential developer can accurately assess the complexity and cost, as well as the implementation time required. A poor or too general description will cause your order to be ignored, or you will spend a lot of time negotiating details with each applicant. Remember: it is better to spend thirty minutes
I am looking for an experienced MQL4 developer to build a custom MT4 indicator (EX4 only). I currently have two existing EX4 indicators for the binary forex market. Both indicators generate 1-minute signals, predicting the next candle direction (UP or DOWN). When both indicators generate the same signal on the same candle, the accuracy is around 95%. I want a new custom indicator with the following requirements: 1)
i need bot for deletes my limits from specific position like if gold price comes to 4950 and then move to 4953.50 so from 4949 to 4946 all limits should deletes so please if any one can let me know thanks
BitsoFx 40 - 10000 USD
//+------------------------------------------------------------------+ //| Simple Robo Trader MT5 | //| Works on any pair & timeframe | //+------------------------------------------------------------------+ #property strict // Input settings input double LotSize = 0.01; input int FastMA = 10; input int SlowMA = 30; input int RSIPeriod = 14; input int StopLoss = 200; // in points input int TakeProfit = 400;// in
I am interested in purchasing a highly profitable Expert Advisor (EA in MQL4 / MQL5) with a focus on achieving a high Profit Factor and Recovery Factor while maintaining a low Drawdown. I require an EA that not only performs well in backtesting but also has a verifiable track record of success in live trading. Key Criteria: Profitability Metrics: The EA should demonstrate a high Profit Factor and Recovery Factor
hi i am looking a EA which will have following 1. daily drawdown limit and profit target, after hit stop trading. 2. Max overall drawdown limit 3. Major News filter 4. Risk per trade % 5. No Martingale, grid, reverse hedging strategy trend following, session breakout, liquidity sweep, risk base fixed. thanks
-I am looking for an experienced MQL5 developer to build a custom MT5 Expert Advisor based on a clear, rule-based trading logic. This project is focused on structure, discipline, and long-term robustness rather than aggressive or experimental approaches. The EA will be based on a single coherent logic and must follow strict execution rules, with clean and professional MQL5 code suitable for controlled testing and
hello great developer Looking for an experienced C#/.NET developer to build a single-file Windows .exe that reads trading signals via Telegram Bot API and semi-automates trade execution on UnderVantage’s custom MT5 platform (UI automation, broker-specific). Requirements (non-negotiable): • C#/.NET only (no Python) • Single standalone .exe • Real Telegram Bot API (no clipboard) • Must work with UnderVantage MT5
Hello, I am a serious buyer looking to acquire an existing, stable, and profitable Expert Advisor (EA) designed specifically for: 👉 Gold (XAUUSD) This is a full buyout request, including complete source code and full ownership. ⚠️ I am NOT looking to build a new EA from scratch. Only ready-made, proven systems with real performance history. ✅ EA Requirements (Strict) 📌 Symbol & Strategy ✔ Trades Gold only (XAUUSD)
Create an automated trading robot that can execute trades on my behalf without requiring manual intervention.The robot should be able to monitor market conditions, execute trades, manage risk, optimize performance

Información sobre el proyecto

Presupuesto
30 - 100 USD