This multicurrency Expert Advisor uses 11 pairs of cryptocurrencies for trading. For predictions, the advisor uses models trained by the machine learning algorithm in the Python language environment.
Signal: https://www.mql5.com/en/signals/1511577
In the strategy tester, testing can be carried out starting from 2020.01.01, since this year there is a history for all cryptocurrencies.
Settings for PhythonMLCrypto
You can also separately set a lot for each cryptocurrency (you must set the UseSameLotSizeForAllPairs = false parameter), by default the lot for all cryptocurrencies is 0.01
A big plus of this advisor is that it can use several packages of models trained according to different criteria for each pair separately, now it is possible to select 3 different packages of models together or separately, in the future these models will be improved and added with the next update of the advisor.
Parameter Models for Bollinger Bands indicator :
Models1 - a package of models trained for a period of time from 2007 to 2021
Models2 - a package of models trained over a period of time from 2020 to 2022
Models3 - a package of models trained over a period of time from 2018 to 2020
I use Roboforex broker. If you do not have any cryptocurrencies for your broker, the adviser will automatically skip them.
If the advisor proves itself, I will add new cryptocurrencies when upgrading in the future.
- Before testing in the strategy tester or installing the EA on a chart, if you want to speed up the testing process, set the ShowTradePanel advisor setting to false
- In the strategy tester, set the "Open prices only" trading mode
- Also, for quick testing, you can turn off the visualization of the strategy tester.
- At the end of testing, in the log tab, you can view information on the profitability and maximum drawdown of each pair separately
Description of some of the EA settings
- UseSameLotSizeForAllPairs - the ability to select the lot size for each pair separately, true by default, one lot size for all specified by the parameter above
- UseMaxAllTakeProfitProcent - enables the global take profit as a percentage of the current profit specified in the MaxAllTakeProfitProcent parameter, after its execution all current orders are closed. Test only on all ticks or 1 minute OHLC
- UseMaxStopLossProcent - turns on the global stop loss as a percentage of the current profit specified in the MaxAllStopLossProcent parameter, after its execution, all current orders are closed. Test only on all ticks or 1 minute OHLC
- MaxProcentDropDown - automatic sequential closing of positions if the drawdown exceeds the percentage specified in this parameter, if 0 is specified this function is disabled by default (for example, MaxProcentDropDown = 30 means if the drawdown exceeds 30%, positions will be gradually closed until the drawdown is less than 30%)
- IsDynamicLot - enable automatic formation of the lot size depending on the balance or free margin
- is_koef_for_each - if true, then the lot size is formed from the balance for each currency pair separately, if false, then from the total balance or free margin
- koef - coefficient for forming the lot size, the larger, the greater the risks
- from - formation of the lot size depending on the balance or free margin
- CountOfGrid - the number of pending orders in the grid
- GridDistanseBegin - the beginning of the first pending order in the grid from the current price
- GridDistanseEnd - end of the last pending order in the grid from the current price