I have been developing, testing and correcting this automated scalping system for a long time: https://www.mql5.com/en/signals/author/test-standart.
Last sets in comments: #1919
Highlights to pay attention to
1. During live operation of the EA, the GMT offset parameter is determined automatically based on local time of the computer (GMT_Offset_AUTO=true).
This parameter provides synchronization of the expert settings with the MetaTrader 4 server time.
To ensure the correctness of settings it is necessary:
- to compare the GMT time in expert information area on the chart of currency pair, to which the expert is attached, with http://time.is/GMT (or other reliable source).
- If the values do not match, then set GMT_Offset_AUTO=false and set a value of GMT_Offset_Manual according to the instructions in https://www.mql5.com/en/blogs/post/682539
2. In order to activate the News filter function, enable "Allow WebRequest" and add https://sslecal2.forexprostools.com/ to the URL list for WebRequest.
To do this, open Tools > Options > Expert Advisors. Check the option "Allow WebRequests for listed URL:". Add https://sslecal2.forexprostools.com/ and click OK.
3. By default, in the expert settings, the trading lot size is set to 0.01 for every 50 units of balance.
After testing on real accounts this parameter can be changed depending on your preferences. I recommend using a fixed lot (Use_Fix_Lots) or a recovery money management (Use_MM_Reg_1 or Use_MM_Reg_2).
4. The expert works on any timeframe equally well, as it automatically takes the necessary data from multiple timeframes.
As the expert uses multiple timeframes for the analysis, it is necessary for the quotes of all timeframes (M1, M15, M30, H1, H4) to be downloaded in the terminal for testing. At the same time, the test itself is produced on the M1 timeframe.
5. For brokers with the rule "First In First Out", enable the parameter FIFO_MODE = true.
6. The EA logs information on spread, slippage and other useful information when performing trades, and also when it is possible to make trades.
To write this information, set the parameter Record_Deals = true;
To view this information:
- go to MQL4/Files in the terminal folder and open the corresponding file (this action can be made in time which is not coinciding with time of opening of transactions by the expert and when there is no open transactions of the expert);
- after viewing, close the file (so that the expert could write down information further).
- ==== GMT and DST ====
- GMT_Offset_Manual - the difference between your broker's server time and GMT.
- GMT_Offset_AUTO - enable/disable the automatic detection of GMT Offset, using the local computer time (does not work in the strategy tester).
- Adjust_DST_Universal - enable/disable Daylight Saving Time correction (for the tester).
- ==== Lot and MM ====
- Use_Fix_Lots - enable/disable fixed trading lot;
- Use_MM - enable/disable the lot value as a percent of deposit based on StopLoss;
- Use_MM_Reg - enable/disable recovery money management (trading lot will not decrease in case of drawdowns);
- ==== Grid and Martingale ====
- Multiplier_of_trade_Lot - multiplier for a trading lot when opening a new position in the positions grid;
- ==== Days without Trade ====
- Use_Holidays_Pass - do not trade during the holidays.
- ==== Record of deals in the file ====
- Record_Deals - enable/disable logging of the EA operation details in a file.
- ==== First In - First Out ====
- FIFO_MODE - enable/disable the First In First Out mode.
- ==== News Filter ====
- Use_NewsFilter - use the news filter;
- ==== Strategies select ====
- use_select_Strategy - select strategy from 1 to 6 using optimization in the Strategy Tester.
- ==== TIMING ====
- GMT_Open_Trade_Hour - hour to start opening trades, GMT;
- GMT_Open_Trade_Minute - minute to start opening trades, GMT;
- Period_Open_in_minute - time duration for opening trades in minutes;
- GMT_Monday_OH - time to start opening trades on Monday;
- GMT_Friday_CH - time to stop opening trades on Friday;
The full list of the EA parameters can be found in the blog: https://www.mql5.com/en/blogs/post/695169
2) Added HighLow filter.
3) The Minimum_Duration_for_deals parameter has also been added, allowing you to choose which positions the Minimum_Duration_of_deal_in_seconds parameter will apply to.
4) Some old parameters are changed or renamed.
"Total_open_for_Buy_and_Sell" - if Total_open_for_Buy_and_Sell=false, then Total_open_transactions is applied separately for Buy transactions and Sell transactions.
If Total_open_transactions=1 and Total_open_for_Buy_and_Sell=false,
it is possible to open one BUY transaction and one SELL transaction at the same time.
If Total_open_transactions=1 and Total_open_for_Buy_and_Sell=true,
it is possible to open only one transaction.
2) The news history for the strategy tester replaced by 2019 ("NewsFilter").
2) The news history for the strategy tester is updated until May 19, 2019 ("NewsFilter").
2) The news history for the strategy tester is updated until January 26, 2019 ("NewsFilter").
2) The news history for the strategy tester is updated until December 31, 2018 ("NewsFilter").
3) New parameter: Minimum_Pips_at_Profit - the minimum number of profit points for closing a positive transaction.
2) The log file with the EA operations ("Record_in_txt") can now be viewed at a time other than the time the EA is allowed to trade and when there are no trades opened by the EA. Without changing the "Record_Deals" parameter to "false", as before.
3) The history of news for the strategy tester is updated to November 14, 2017 ("NewsFilter").
2) The option allowing to note jumps of spread on a chart.
2. The parameter limiting the minimum transaction lifetime: "not_close_transaction_number_second".
3. In the AUTO_PARAMETERS mode, it is possible to change all the parameters in the "Common Parameters" block.
4. Downloaded the news archive (1/1/2015 - 7/10/2017) for testing with the news filter enabled.
2) Skipping holidays.
3) Field for entering currencies in the filter of news.
4) Skipping the beginning and end of month.
2) block of parameters: "Trailing Stop";
3) additional filter on an entrance to the transaction: "add_filter_of_entrance";
4) option of alternative settings at the included mode "AUTO_PARAMETERS": "Alternative_Set_at_AUTO".
2) Ability to close a profitable transaction at any spread.
3) The internal improvements to prevent the EA incorrect operation in emergency.
2) Added the ability to select the trading direction (Buy or Sell).
2) Parameters of the maximum spread can be changed if AUTO_PARAMETERS=true.
2) The recommended currency pairs: EURCHF, USDCHF, GBPCHF, EURCAD, CADCHF, GBPCAD.
2) Added option to record the information of the expert (opening / closing of positions), to a file for future analysis.
3) Ability to set a custom maximum opening spread and closing spread for BUY and SELL positions.
4) When back testing, a custom date can now be assigned for the beginning and end of DST (Daylight Savings Time) for more accurate back testing results.
5) Added the ability to limit open positions in time.
2) Added the ability to set the pause in the time interval for opening orders.
2) The number of strategies is increased (more transactions).
3) Magic numbers and comments to strategies can now be set manually and in the AUTO mode.
2) Parameters are divided into two blocks for simplicity of setup:
◾MANUAL_PARAMETERS - block of parameters to be filled manually;
◾AUTOMATIC_PARAMETERS - block of parameters recommended to be set automatically (AUTO_PARAMETERS = true).
Safety_StopLoss = 2*StopLoss, Safety_TakeProfit = 1.2*TakeProfit.