İş tamamlandı
İş Gereklilikleri
Hi,
I need a good and reliable coder who is able to deliver the following EA which majority of the functions can be found in the "Multi Pair Swing Trader EA" attached with certain modification as listed below. The layout should be as per MS Words file "New EA On Screen Display Layout.jpg".
Kindly study thoroughly my requirements below and post questions to avoid misinterpretation or unnecessary arguments in future.
Interested party, kindly quote and inform FIRM delivery date in return.
New Multi Pair EA
Functions needed for my new Multi Pair EA strategy (Item 1 to 16 can be found in Multi Pair Swing Trader EA):-
1). TradeTimeFrame,
2). FixedLotSize,
3). MaxPairs,
4). TradeAUDPairs, TradeCADPairs, TradeCHFPairs, TradeEURPairs, TradeGBPPairs, TradeJPYPairs, TradeNZDPairs, TradeUSDPairs,
5). IgnorePair,
6). TradingHours,
7). RiskLevel,
8). AmountToProtect,
9). UseAdaptive,
10). UseBasket,
11). UseProfitLock, LockTriggerPips, PipsToLock,
12). OnlyTradeNewBar,
13). Slippage,
14). CriminalIsECN,
15). UseHardTakeProfit(TakeProfit), UseHardStopLoss(Stoploss),
16). MagicNo,
//------------------------------- Added Functions -----------------------------------------------------------------------------------------------//
17). On Screen Display for ( as per attached “New EA On Screen Display Layout.jpg”:-
cLine = cLine + "\n\n" + "Broker: " + AccountCompany();
cLine = cLine + " | Type: " + BrokerType(Symbol()) + " Digit";
cLine = cLine + " | Contract Size: " + DoubleToStr(MarketInfo(Symbol(), MODE_LOTSIZE), 0) + " units";
cLine = cLine + " | Min Lots: " + DoubleToStr(MarketInfo(Symbol(), MODE_MINLOT), 2);
cLine = cLine + " | Leverage: " + AccountLeverage();
cLine = cLine + " | Available Pairs: " + DoubleToStr(ArraySize(Pairs), 0);
cLine = cLine + " | Base Currency: " + AccountCurrency();
cLine = cLine + " | Magic No: " + MagicNo;
cLine = cLine + " | Lot Size: " + DoubleToStr(GetLots(""), 2);
cLine = cLine + " | Max Pairs: " + MaxPairs;
cLine = cLine + " | Time Frame: [ " + TradeTimeFrame + " ]";
cLine = cLine + " | Hard TP: " + FixedTP;
cLine = cLine + " |TP/SL Mode: [ " + TP_SLMode + " ]";
cLine = cLine + " |Daily Profit: [ " ????????????? " ]";
cLine = cLine + " |Daily Loss: [ " ????????????? " ]";
cLine = cLine + " |Net Daily P/L: [ " ????????????" ]";
cLine = cLine + " |RealTime BasketLoss: [ " ?????????????? " ]";
cLine = cLine + " |BreakEvenOnLossPair: [ " ?????????????? " ]";
cLine = cLine + " |BreakEvenLevelStart: [ " ?????????????? " ]";
18). BreakEvenOnLossPair, BreakEvenLevelStart,
19). MartingaleOnLoss, MartingaleMultiplier, MartingaleStart, MartingaleMax
20). Entry & Exit Rules :-
BUY Rules
1). Instead of detect swing cross and back function as trade entry (as per Multi Pair Swing Trader EA), I would like to change them to the following conditions :-
a). Compare last 2 candle by calculating the UpperWick/Body/LowerWick/Volume based on the formula below in blue (will be emailed separately upon selected). If Totalup > TotalDown then BUY and vice-versa.
2). if subsequent bar is still upbar then do nothing until downbar appear,
3). When downbar appear, then compare the LAST UPBAR & DOWNBAR after barclose based on the below formula in blue:-
4). If (LastUpBar(TotalUp) + Downbar(TotalUp)) > (LastUpBar(TotalDown) + Downbar(TotalDown)) then do nothing. Thereafter, compare this Downbar with the next bar by the TotalUp & TotalDown formula (doesn’t matter whether it’s a UpBar or Downbar). If the result is still TotalUp > TotalDown, then wait for next bar to repeat the comparing process. Always compare the last 2 bar TotalUp & TotalDown. If finally TotalDown > TotalUp, then go to no. 5.
5). If (LastUpBar(TotalUp) + Downbar(TotalUp)) < (LastUpBar(TotalDown) + Downbar(TotalDown)) then close order.
a). open another trade as Sell and follow the SELL Rules policy(opposite of BUY Rules Policy).
b). if in loss, store this pair lost $$$ amount. If lost again in this trade then open another opposite trade & accumulate this pair lost $$$ amount until win a trade to offset the stored lost $$$ amount.
6). a). BREAKEVENONLOSSPAIR = Y/N, to offset the accumulation of all losses + commission per single currency pair,
b). BREAKEVENLEVELSTART = number of loss per the single currency pair before this function initiate,
c). MARTINGALEONLOSS = Y/N, to activate martingale function on losses
d). MARTINGALEMULTIPLIER = multiplication of the last loss lot size eg. x1.5
e). MARTINGALESTART = number of losses before martingale function starts. eg. If 5 = activate after 5 losses for that specific currency pair,
f). MARTINGALEMAX = number of allowed multiplication. Eg. If 3 = initial size 1lot, x1.5 = 1.5lot(1st), x1.5 = 2.25lot (2nd), x1.5 = 3.375lot(3rd max).
7). As this is a multi pair EA, it’ll not be able to backtest by MT4 Strategy Tester. Are you able to make an option to switch to single currency temporarily for backtest? I’ve noticed that MT5 Strategy Tester is able to backtest multi pair concurrently, is that right? Or kindly advise on other alternative.