Need Help with adding additional functions to this EA

Auftrag beendet

Ausführungszeit 6 Tage
Bewertung des Kunden
GOOD JOB
Bewertung des Entwicklers
I enjoyed working on the Project. The work ahead is explained properly. Very patient to explain gray areas around the project. Highly Recommend. Will love to work with Again 🙌🏾

Spezifikation

I want to add

  • Maximum trades per day
  • trailing stops
  • close partials
  • Break even 

I want to be able to manually set how much trades to be taken on each day Eg:

  • Monday 2 trades     
  • Tuesday 3 trades
  • Wednesday 4 trades
  • Thursday 3 trades
  • Friday 2 trades

I also want to be able to manually set a time when each trade are taken on each day Eg:

  • Monday          2 trades      10:00am
  • Tuesday         3 trades        05:00am
  • Wednesday    4 trades         07:00pm
  • Thursday       3 trades          03:00pm
  • Friday           2 trades          01:00pm


CODE TO BE EDITED

//+------------------------------------------------------------------+

//|                                                      ProjectName |

//|                                      Copyright 2020, CompanyName |

//|                                       http://www.companyname.net |

//+------------------------------------------------------------------+


#property copyright "Copyright 2023, MetaQuotes Ltd."

#property link      "https://www.mql5.com"

#property version   "1.00"

#include <Trade\Trade.mqh>

CTrade trade;



//DYNAMIC LOTSIZING INPUT

double PositionSize(){

double lot;

double lot_min = SymbolInfoDouble(_Symbol,SYMBOL_VOLUME_MIN);

double lot_max = SymbolInfoDouble(_Symbol,SYMBOL_VOLUME_MAX);

double AcctEquity = AccountInfoDouble(ACCOUNT_EQUITY);


lot = 3.00/50*AcctEquity;

if(lot<=lot_min){

lot=lot_min;

}

if(lot>=lot_max){

lot=lot_max;

}

return(lot);

}




//static input long inpMagicnumber =54321;

input int inpBars=20; //bars for high/low

static input double inpLots=1.00;

input int inpStopLoss=400;

input int inpTakeProfit=1500;



///GLOBAL VARIBLES

double high=0;

double low=0;

MqlTick currentTick, previousTick;


//+------------------------------------------------------------------+

//|                                                                  |

//+------------------------------------------------------------------+




datetime Expire_Time = D'2024.01.15 12:59:00';

int OnInit()

  {



 trade.SetExpertMagicNumber(5243);

        if(TimeCurrent() > Expire_Time)

        {

         Alert("The EA has expired...");

         ExpertRemove();

        }

        


  

//set magicnumber

//trade.SetExpertMagicNumber(inpMagicnumber);


   return(INIT_SUCCEEDED);

  }



//+------------------------------------------------------------------+

//|                                                                  |

//+------------------------------------------------------------------+

void OnDeinit(const int reason)

  {


  }

//+------------------------------------------------------------------+

//|                                                                  |

//+------------------------------------------------------------------+11                                                                                                                                                                                                                                    11 11111111111111111111111111111111111111111111111111

void OnTick()

  {

   double Lotsize = NormalizeDouble(PositionSize(),2); 

  //Get tick

  previousTick=currentTick;

  if(!SymbolInfoTick(_Symbol,currentTick)){Print("fail to get currenttick");return;}

  

  ///count open positions

  int cntBuy, cntSell;

  if(!CountOpenPositions(cntBuy,cntSell)){return;}

  

  //check for buy position

  if(cntBuy==0 && high!=0 && previousTick.ask>high && currentTick.ask<=high){

  

  

  

  // calculte stoploss /take profit

  double sl=inpStopLoss==0?0:currentTick.ask+inpStopLoss*_Point;

  double tp=inpTakeProfit==0?0:currentTick.ask-inpTakeProfit*_Point;

  if(!NormalizePrice(sl)){return;}

  if(!NormalizePrice(tp)){return;}

  

  trade.PositionOpen(_Symbol,ORDER_TYPE_SELL,Lotsize,currentTick.ask,sl,tp,"highbreakout");

  

  }

  

  

   //check for sell position

 if(cntSell==0 && low!=0 && previousTick.bid>low && currentTick.bid<=low){

  

  // calculte stoploss /take profit

  double sl=inpStopLoss==0?0:currentTick.ask+inpStopLoss*_Point;

  double tp=inpTakeProfit==0?0:currentTick.ask-inpTakeProfit*_Point;

  if(!NormalizePrice(sl)){return;}

  if(!NormalizePrice(tp)){return;}

  

  trade.PositionOpen(_Symbol,ORDER_TYPE_SELL,Lotsize,currentTick.bid,sl,tp,"highbreakout");

  

  Print("open sell position");

  }

  

  

  

  

//CALCULATE HIGH AND LOW

   high =iHigh(_Symbol,PERIOD_CURRENT,iHighest(_Symbol,PERIOD_CURRENT,MODE_HIGH,inpBars,0));

   low =iLow(_Symbol,PERIOD_CURRENT,iLowest(_Symbol,PERIOD_CURRENT,MODE_LOW,inpBars,0));

  // DrawObjects();

}

void DrawObjects(){

 


datetime time =iTime(_Symbol,PERIOD_CURRENT,inpBars);


//RESISTANCE/HIGH LEVELS

ObjectDelete(NULL,"high");

ObjectCreate(NULL,"high",OBJ_TREND,0,time,high,TimeCurrent(),high);

ObjectSetInteger(NULL,"high",OBJPROP_WIDTH,2);

ObjectSetInteger(NULL,"high",OBJPROP_COLOR,clrBlack);


//SUPPORTS/LOW LEVELS

ObjectDelete(NULL,"low");

ObjectCreate(NULL,"low",OBJ_TREND,0,time,low,TimeCurrent(),low);

ObjectSetInteger(NULL,"low",OBJPROP_COLOR,clrRed);


}


 bool CountOpenPositions(int &cntBuy,int &cntSell){

ObjectSetInteger(NULL,"low",OBJPROP_WIDTH,2);

  

  cntBuy=0;

  cntSell=0;

  int total= PositionsTotal();

  for (int i=total-1; i>=0; i--){

  ulong ticket = PositionGetTicket(1);

  if(ticket<=0){Print("failed to get position ticket");return false;}

  if(!PositionSelectByTicket(ticket)){Print("failed to select position");return false;}

  long magic;

  if(!PositionGetInteger(POSITION_MAGIC,magic)){Print("failed to get position magicnumber");return false;}

  if(magic==5243){

  long type;

  if(!PositionGetInteger(POSITION_TYPE,type)){Print("failed to get position type");return false;}

  if(type==POSITION_TYPE_BUY){cntBuy++;}

  if(type==POSITION_TYPE_SELL){cntSell++;}

  }

  }

  return true;

  }

  

//Normalize price

bool NormalizePrice(double &price){

double tickSize=0;

if(!SymbolInfoDouble(_Symbol,SYMBOL_TRADE_TICK_SIZE,tickSize)){

Print("failed to get tick size");

}

return true;



price= NormalizeDouble(MathRound(price/tickSize)*tickSize,_Digits);

return true;


}











Bewerbungen

1
Entwickler 1
Bewertung
(131)
Projekte
152
22%
Schlichtung
5
0% / 60%
Frist nicht eingehalten
4
3%
Beschäftigt
2
Entwickler 2
Bewertung
(196)
Projekte
318
35%
Schlichtung
64
13% / 56%
Frist nicht eingehalten
82
26%
Frei
3
Entwickler 3
Bewertung
(21)
Projekte
24
38%
Schlichtung
1
100% / 0%
Frist nicht eingehalten
2
8%
Arbeitet
4
Entwickler 4
Bewertung
(1)
Projekte
5
0%
Schlichtung
1
100% / 0%
Frist nicht eingehalten
2
40%
Frei
5
Entwickler 5
Bewertung
(9)
Projekte
12
0%
Schlichtung
0
Frist nicht eingehalten
1
8%
Frei
6
Entwickler 6
Bewertung
(9)
Projekte
8
38%
Schlichtung
2
0% / 0%
Frist nicht eingehalten
2
25%
Beschäftigt
7
Entwickler 7
Bewertung
(130)
Projekte
184
32%
Schlichtung
16
31% / 63%
Frist nicht eingehalten
27
15%
Arbeitet
8
Entwickler 8
Bewertung
Projekte
0
0%
Schlichtung
0
Frist nicht eingehalten
0
Frei
9
Entwickler 9
Bewertung
(61)
Projekte
93
27%
Schlichtung
1
100% / 0%
Frist nicht eingehalten
2
2%
Beschäftigt
10
Entwickler 10
Bewertung
(194)
Projekte
198
27%
Schlichtung
0
Frist nicht eingehalten
3
2%
Frei
11
Entwickler 11
Bewertung
(54)
Projekte
61
31%
Schlichtung
2
0% / 0%
Frist nicht eingehalten
0
Arbeitet
12
Entwickler 12
Bewertung
Projekte
0
0%
Schlichtung
0
Frist nicht eingehalten
0
Frei
13
Entwickler 13
Bewertung
(96)
Projekte
143
76%
Schlichtung
0
Frist nicht eingehalten
2
1%
Frei
14
Entwickler 14
Bewertung
(66)
Projekte
143
34%
Schlichtung
10
10% / 60%
Frist nicht eingehalten
26
18%
Frei
Ähnliche Aufträge
HELLO DEAR DEV'S. I'VE AN EA BUT IT STOP WORKING WHEN MT4 HAS BEEN UPDATED TO THE LATEST VERSION (1420). SO I NEED A GOOD DEVELOPPER THAT COULD UPDATE THIS EA TO THE LATEST VERSION OF MT4 SO I CAN USE IT. NB: IT'S A SINGLE FILE (.EX4) AND THE PRICE CAN BE NEGOCIATED TO BE SUITABLE FOR BOTH PARTIES. THANK YOU
hey friends, I am looking to build a smart trading robot, for the capital market. He knew how to trade in all the different types of trade. Example - in shares, currencies, index, indices, ETFs, funds, commodities, options, futures and so on. Suitable for trading on all stock exchanges in the world. It will be possible to install the trading robot in the MetaTrader 5 trading software. But it will also be possible to
STI EA 30 USD
I need to convert this MT4 indicator into MT5 EA/indicator. The problem is I only have the .ex4 file bt not .mq4 file and it is also a repainting indicator. I need preliminary assessment if the conversion can be done based on .ex4 file first before exploring the EA details further. Attached is the indicator Budget below is just indicative for the assessment. We can discuss further once the conversion can be done and
This mql4 got entry blue line and exit red line and pips inside also calculated it uses haiken Ashi and murray Math settings if you this you up for this job let's discuss it we will talk more when you are chosen thanks in advance
i Want to convert this Trading View Code to Mt4 Indicator indicator("NEOM Smart Money Concepts ", "NEOM Smart Money Concepts " , overlay = true , max_labels_count = 500 , max_lines_count = 500 , max_boxes_count = 500 , max_bars_back = 500) //-----------------------------------------------------------------------------{ //Constants //-----------------------------------------------------------------------------{ color
Hello Amazing developer am looking for profitable EA for mt4 and made for some past year and i will be looking forward for your bid if you have mt4 EA let Negotiate in the contact box best regards
Hello Amazing developer am looking for profitable EA for mt4 and made for some past year and i will be looking forward for your bid if you have mt4 EA let negotitate in the contact box best regartds
1. **Timeframe and Liquidity:** Focus on the 5-minute timeframe for liquidity analysis.(timeframe for liquidity should be editble) 2. **Candlestick MSS:** Monitor 1-minute candlestick patterns for entry signals.(should be editble) 3. **Swing Points:** Identify swing points using the high and low of the last three candles.(ict swimg high and low) 4. **Sell Setup:** - Wait for a 5-minute candle to take out the swing
Hello great developer Can you build this indicator for Quantower. If positive, then how much will it cost to make automated strategy from the indicator? i will be looking for great developer to build for this project best regards
Hello Greetings. I have a custom tradingview strategy I would like to convert to Metatrader 5 ( mt5 ) . I have the source code a and with me. Kindly bid if it is what you can do for me and let discuss about the project. Thanks

Projektdetails

Budget
30+ USD
Für die Entwickler
27 USD
Ausführungsfristen
von 1 bis 10 Tag(e)