ROBOT REQUIREMENTS
I have a functioning MT4 robot (with source code) that needs some slight modifications. Basically, I want to improve the entry requirements for the initial buy and sell. I will also want to add some additional features and modify the robot to trade on all time charts and with all currency pairs. I would also like robot to be back tested so that the back test results would be almost the same as the live results
Buy Algorithm
Ø Criteria to enter 1st buy trade:
Candle Charts above moving average.
o If the current weekly candle is above the weekly moving average (default parameters: MA period=10, shift = 0, method=Simple, Applied price=close). Note: These parameters should be shown on the robot as input parameters.
o If the current daily candle is above the daily moving average (default parameters: MA period=10, shift = 0, method=Simple, Applied price=close). Note: These parameters should be shown on the robot as input parameters.
o If the current hourly candle is above the hourly moving average (default parameters: MA period=10, shift = 0, method=Simple, Applied price=close). Note: These parameters should be shown on the robot as input parameters.
It should also be noted that these 4 input parameters should be the same for weekly, daily and hourly moving averages. I do not need 12 parameters for this.
Stochastic Oscillator
o If the daily stochastic main line is above the signal line (default parameters: K period=7, D period=3, Slow=6, MA method=Simple, Price field=Low/High). Let this input parameter be selectable for the various timeframes (M1, M5,….MN)
o Note: Additionally create another input parameter (Stochastic % Difference Buy) which represents the difference between the stochastic main value and the stochastic signal value.
Stochastic % Difference Buy = stochastic main value - stochastic signal value
This value should be greater than the default value of 1 before the 1st buy trade can be placed.
o If the daily stochastic main value is less than a default value of 85. Let this input parameter be selectable for the various timeframes (M1, M5,….MN)
o If the current daily bull candlestick body size is greater than the default value of 5 pips (default parameters: body size=5 pips, Signal type=Continuous)
o Then the existing robot can place the 1st BUY TRADE.
Ø Existing robot - Buy:
o After the 1st buy trade has been placed, the buy entry criteria should not affect the subsequent buys. The criteria for the existing robots to make subsequent robots should not be altered until all trades are closed.
Sell Algorithm
Ø Criteria to enter 1st sell trade:
Candle Charts below moving average.
o If the current weekly candle is below the weekly moving average (default parameters: MA period=10, shift = 0, method=Simple, Applied price=close). Note: These parameters should be shown on the robot as input parameters.
o If the current daily candle is below the daily moving average (default parameters: MA period=10, shift = 0, method=Simple, Applied price=close). Note: These parameters should be shown on the robot as input parameters.
o If the current hourly candle is below the hourly moving average (default parameters: MA period=10, shift = 0, method=Simple, Applied price=close). Note: These parameters should be shown on the robot as input parameters.
It should also be noted that these 4 input parameters should be the same for weekly, daily and hourly moving averages. I do not need 12 parameters for this.
Stochastic Oscillator
o If the daily stochastic main line is below the signal line (default parameters: K period=7, D period=3, Slow=6, MA method=Simple, Price field=Low/High). Let this input parameter be selectable for the various timeframes (M1, M5,….MN)
o Note: Additionally create another input parameter (Stochastic % Difference Sell) which represents the difference between the stochastic main value and the stochastic signal value.
Stochastic % Difference Sell = stochastic main value - stochastic signal value
This value should be greater than the default value of 1 before the 1st sell trade can be placed.
o If the daily stochastic main value is less than a default value of 85. Let this input parameter be selectable for the various timeframes (M1, M5,….MN)
o If the current daily bull candlestick body size is greater than the default value of 5 pips (default parameters: body size=5 pips, Signal type=Continuous)
o Then the existing robot can place the 1st SELL TRADE.
Ø Existing robot - Sell:
o After the 1st sell trade has been placed, the sell entry criteria should not affect the subsequent sells. The criteria for the existing robots to make subsequent robots should not be altered until all trades are closed.
Ø Comment/Stats box
o Place a an adjustable Comment/Stats box showing the following:
§ Number of sell trades placed by the robot.
§ Number of buy trades placed by the robot.
§ Amount of profit/loss made form sell trades.
§ Amount of profit/loss made form buy trades.
§ Profit made from beginning of the month to date
§ Current % drawdown
§ Maximum % drawdown
§ Anything you deem beneficial
Ø General features
o Modify the robot to have a functionality to either only buy or sell.
o Function to include time to trade for example 01:00-05:00; 16:00-21:00. During inactive times, new trades are not placed but can close trades.
o News filter function. Ability to select so minutes not to trade before and after a specific news category (low, medium, high). During inactive times, new trades are not placed but can close trades. You should be able to select which news category (low, medium, high).
o Add any additional functionalities to the robot that you think it will make it better.
o I want the MQL4 code file, the exec file and a short description of each input parameter so that I will know their functions.
o I want to be able to back test the robot and let the robot trade on all time charts and currency pairs