I need a fairly simple MQL4 grid trading EA developed.
There are lots of EAs out there that do some of what I want. but I haven't found one the addresses everything. Specific details and requirements are in the detailed requirements section
// Order Entry
MM = 0.00 ; // 0=use fixed [Lots] else Percent of margin to commit to each trade.
Lots = 0.01;
MagicNumber = 1;
MaxSlippage = 3; //max slippage to allow(so multiple orders don't open after a gap)
EntryLevel = 0; //0=current chart price, else when price reaches [entryLevel] open pendings
GridSpace = 10; //set gridlines every [GridSpace] pips above and below [EntryLevel]
// Order Management
ChartCurrencyOnly = False;
//True=[magicnumber] and only attached chart currency ,
//false=[magicnumber] all currency orders
UseBreakEven =False;
BreakEvenPips = 0; // set breakeven after this many pips
BreakEvenProfit =0; // set breakeven to this many pips profit
StopLoss = 0; if > 0 set stoploss on any order without a stoploss subject to [ChartCurrencyOnly]
TakeProfit = 0; if > 0 set TakeProfit on any order without a takeprofit subject to [ChartCurrencyOnly]
UseBasketTrailingStop= False; //Close all open & pending orders subject to [ChartCurrencyOnly]
BasketTsAtDollarProfit = 0.00; //0=false, else value enterred
BasketTsAtPipsProfit = 0; //0=false, else value enterred
BasketTsAtPercentageProfit = 0.000; //0=false, else value enterred
BasketTrailPercent = 75; // trail at this percentage
// SCREEN DISPLAY
Stats Display = True;
?// I want to see Balance, Equity, and Max Drawdown% displayed on the screen. If basket trailing is selected and has locked profit, I want to see locked pips or dollars displayed (as appropriate)
Description/Strategy:
Bot should immediately open a pending buystop and sellstop order [GridSpace] above and below the current price when [EntryLevel]=0 otherwise open the pending buystop and sellstop orders when price reaches [EntryLevel]
As price touches each gridline continue opening pending buystop and sellstop orders [GridSpace] above and below - A pending order can be placed on a gridline with an open order but never have more than one pending order open on any gridline.
I will be running this grid on multiple currencies in the same account subject to [ChartCurrencyOnly]. Multiple instances of this EA must not conflict.
*Must work on ECN and NonECN brokers
*Pips should calculate correctly for 2,3,4, and 5 digit currencies
*Consider commission+swap when calculating basket profit
*execute on every tick, regardless of chart timeframe-EA will be running on a VPS crossconnected to the trading server on an ECN Raw spread account. This has lightning quick, fraction of a second execution so I want fast optimized code to exploit this. Especially the CloseAll function when BasketTrailingStop is hit.
When bidding, please affirm that you are ready to start on this immediately and the time you will require to complete this project
Please read the project first and write the word "Understood". Also write your steps and suggestions to complete the project with a short description of what you understood.