This version is much improved and has important innovations.
First, information about the changes introduced.
Added option CorrectVTP - allows you to fix the found closing problem when the closing parameter is zero. There was a conflict of output at zero or less than zero bounds by the run control method and the run protection method.
Added the ability to close the series additionally at zero after a certain duration of the series has been passed, the CriticalSeriesDurationHour field. For example, CriticalSeriesDurationHour = 3*24 means that all series longer than 3 days (weekends are also counted) will close faster. Note. If the run control algorithm has determined that the output can be less than zero, then it will be either zero or less than zero, but not greater than zero.
Reminder. Through the MinVirtualProfit field, you can set the minimum loss for these functions to work.
ActiveProtectionMinProfit8hourPr - set as a percentage of the deposit, it can be with a negative sign.
MinVirtualProfitPr - will now be in percentage of the deposit and not in the deposit currency, maybe with a negative sign.
For ActiveProtectionMinProfit8hour and MinVirtualProfitPr, the percentage is also adjusted depending on ManyManagement, that is, if with ManyManagement = 1000, for example, MinVirtualProfit = 2% w 2%, then with ManyManagement = 10000 and MinVirtualProfit = 2%, it will actually be 0.2.
The next important note in this version. To make things easier for new users and more secure, the default settings have been changed. But you can always return to those that were in previous versions, here everything that needs to be changed in the settings will be displayed in order to return to the previous settings.
Here's what you need to change to restore the previous settings:
StopLoss = 100000,
TakeProfit = 100000,
TrailingStart = 100000,
TrailingStop = 100000,
MarginControllOn = false,
AutoCloseOrder = 0,
ActiveProtectionOrders = 0,
ActiveProtectionMinProfit8hourPr = 0,
CriticalSeriesDurationHour = 0,
AllowStopOnProvidedEquity = 0,
LimitOrders = 100,
EnableDS = false,
SpecialGridStepOn = false,
CorrectVTP = false,
ApplyFilter_v1_93 = false,
FilterSpreadOn = false.
Added features for users who want to change the behavioral strategy at the time of closing a series on a signal for series with losses.
AllowStopOnProvidedEquity — allow any signal to close the series after reaching the drawdown resolution (AllowStopOn — must be disabled in this case)
DelayClosingSignal - Skip the specified number of signals for closing (AllowStopOn - this must be disabled)
ClosingSignalToStopLoss - Replace the close signal with a stop loss (stop loss will be set in pips below the close price of the close signal)
ClosingSignalToForesight - Replace the signal with a stop loss (experimental)
It is not recommended to prevent Chame from closing with losses, because this can lead to the loss of the deposit.
A correct strategy is a successful money management, namely:
ManyManagement = 10000
trading with a deposit of 10000 and with a limited number of currencies 3-5 can be a little more.
Additional filter for refill orders
EnableDS - enables the function
DSTF - timeframe
LevelDS - distance in points
Fixed the problem that occurred when loading external neural networks and the Net WorkOneDirection On field
Fixed a reported issue with the order protection feature enabled by the ActiveProtectionOrders field.
There was a problem with the fact that the activation sometimes worked and then went astray, in this version this problem is fixed and the protection will always work.
The EquityLimit field has also been added - with the help of which, if funds draw down below the specified value as a percentage of the deposit, new orders will not be opened.
Added Margin Control
If you set this option and specify MarginLimit, then when using the bot on many charts, it will not allow you to open new orders if the margin on the account exceeds the specified value.
Updated filters for currency pairs (not neural networks, they are the same). Namely - indicator filters.
In order not to violate the general scheme of the bot, these filters must be additionally activated, for this, set ApplyFilter_v1_93 = true.
An additional ReCalcDirectioOn field has also been created, which allows additionally forcibly resetting the signal value on each bar. This is an additional option at the request of users.
This version adds a number of trained neural networks for cryptocurrency pairs. In order not to violate the general logic of the work of training neural networks, they were held until November 2022, like all previous neural networks in the bot.
In all other respects, this version duplicates the previous one. There are a number of additions from users that are currently being tested and may be implemented in the next version.
Recommendation for those who work with embedded neural networks - activate ApplyFilter_v1_93 = true
Also for those who form their own neural networks, you can also use this filter. When using your own neural network, it works as a default filter if the corresponding field is enabled.
Also, do not forget for each currency pair you need to separately select stop losses, take profits, trailing start, trailing stop and, if desired, the breakeven level. Let me also remind you of the recommendation to use the ActiveProtectionOrders field at the level of 6-10, 8 orders are recommended. This field activates automatic correction of the trailing start and trailing stop when the specified number of orders is reached.
Added the ability to test a pure neural network without filters.
Fixed some input parameters.
Fixed initialization of parameters after changing them directly while working on graphics.
ActiveProtectionOrdersMinProfit8hour - Allows you to set the minimum profit in percentage at the emergency close at the initiative of the ActiveProtectionOrders function
SeriaPauseMin - Allows you to set the pause between series.
TesterReversDirection - Allows reverse testing, but this only works for the tester. Regular work of the Bai Sel series and so on.
SpecialGridStepOn, Envelopes Length, Envelopes Metod, Envelopes Deviation - Allows you to additionally set the basis for calculating the steps of the series starting from the Envelopes corridor
Version 1.88 changes
Fixed the name of the log file, because if you enable two terminals then there was a problem with the same file names, now the name is protected from duplication.
Protection of global variables from non-classical names of currency pairs. Chinese characters in the name of the currency pair as a prefix were a problem.
Parameters GN START, GN FINAL they should not be touched unnecessarily, they mean to use only part of the symbol name (from position GN START to position GN FINAL),
thus eliminating the prefix, the metatrader function "StringFind" fails.
Additional closing section in case of a critical drawdown Equity Add Controll and a number of special settings
IgnoreSymbolMagic, SpecialEquityBase, SpecialEquityProfit, SpecialTotalEquityLoss, SpecialStopWorkingLoss, SpecialTotalEquityProfit, SpecialStopWorkingProfit.
They will allow you to work with the entire portfolio of currencies, that is, close everything in a drawdown or in profit. The settings are flexible and can be configured in different ways, with the ability to
respond both to the entire deposit, and only to one instrument.
Added the ability for neural networks to set up an indicator filter and not use the default one.
NetFilterSelfOn Parameters NetFilter_TdLength NetFilter_TdMetod NetFilter_TdDeviation NetFilter_MaLength NetFilter_MaMetod
ApplyFilter_v1_4 - For version 1.4 there was a different default filter, so the ability to switch to it has been added to this version.
MinVirtualProfit - Added the ability to move the minimum level of zero to profit (valid only for the virtual take profit that you see on the chart) and prohibit closing in the red for these cases.
SignalReversMinProfit - added the ability to transfer the minimum level of zero to profit in case of a reverse signal and prohibit closing in the red for these cases.
AllowStopOn - Enables or disables the signal for closing orders
AllowSell - Allows or disables the work on the cell
AllowBuy - Allows or disables work on the buy.
InversionOn - inverts all signals.
ConstantlySell - Forced work constantly on sell
ConstantlyBuy - forced work constantly on buy
LevelBreakeven – Added the ability to move a series to breakeven.
WithdrawTester - a function for the tester, a virtual withdrawal of money when it reaches the specified percentage of the initial deposit, for example 1000, can be set.
NetWorkOneDirectionOn - Prohibits the reverse signal until the end of the current series, valid for a loaded neural network.
For a loaded neural network, it is possible to enable your own filter, replacing the default one with it.
Indeed, there were cases when one user had a series of sell and the other had a series of buy. Here, a combination of an error in the update and the moment of the initial launch manifested itself. This problem is fixed in version 1.87
Also, regarding another issue, it is difficult to choose trailing stop and trailing start levels for each individual user. A system of automated corrections has been created. That is, at the moment when there is a need for this, the system itself will adjust the levels of the trailing stop and trailing start or simply close at zero. This is for the correct closing of the series without user settings, everything will happen automatically, after which the settings will return to those set by the user.
Fixed division by zero error if SYMBOL_TRADE_TICK_SIZE is zero.
Some users had problems opening positions.
After downloading this version, this problem should disappear.
A possible problem may be related to the fact that every 15 minutes the bot performs the following action and if the action in real time for any reason the action was not performed (communication, delay from the server) then
it may be missed until the next 15 minutes, that is, some of the iterations may have been lost. In this version, the bot will check the relevance of the action on each tick.
Fixed critical bugs of the previous version (rollback to version 1.82).
Improved operation of the Teaching T-INN utility.
With the help of which you can automate the calculation of DivisionSubClusters without performing complex manipulations to select the parameter for different histories of different currency pairs.
Deleted parameters in Unibot
Now they are automatically configured when you load a neural network file, which also makes things easier.
Added TickTrailingOn option. Allows trailing stop and trailing start to work on ticks (by default it only works on the opening prices of the ActiveTF timeframe).
The display in the neural network report of training time has been corrected, it was not displayed correctly in the logs.
Added functionality for working with PROP.
CalcEquityDD24On - allows you to record Balance and Equity every hour in the last 24 hours.
In this way, calculate the maximum drawdown during 24 hours. After reaching the drawdown specified by the LimitEquityDD24 parameter, the bot will stop performing operations. At the same time, the drawdown is taken into account for the entire account and all open orders on all symbols. After 24 hours have passed, the bot will continue working.
The TickTrailingOn tick trailing function has been added.
Until now, the trailing stop worked at the opening prices of the m15 timeframe
Please note that when the trailing stop is activated on ticks, the results of testing on all ticks will differ from the results of testing on opening prices.
The neural network inputs have also been corrected and now information is entered not in absolute values but in deltas.
Do not duplicate messages and log files.
Fixed signal blocking by filters FilterSpreadOn and FilterTimeAndEventsOn in logs
In general, the logging system has been improved.
Added the ability to visually control the level of zero losses and the level of trailing start (VisualZerro=true), now you can see these levels visually on the chart.
The update is about working with the crypto market. The minimum amount for Money Management calculation has been changed.
Fixed work with stop-loss and take-profit (for part of series orders) for some brokers.
The changes apply only to external neural networks that will be loaded using a file.
Namely, the NetFilterOn field has been added - if it is activated, then the neural network will work without filters for purely clean signals of a non-network file.
Corrected incorrect operation of the NetLevelSignal field, set it within 0.0001 - 0.001
Fixed the problem of fixation on the specified timeframe regardless of the timeframe on the graph or during testing (applies to loaded neural networks).
The ability to filter by time and stop trading during news time has been added. Options in the "Filter Time And Events" block
With its help, you can simultaneously change the parameters "StopLoss", "TakeProfit", "TrailingStart", "TrailingStop", as well as parameters of virtual stop-loss, virtual take-profit and distance between adjacent orders.
For the operation of the crypto-market, this parameter must be set to "Scale"=10
One more small correction...
An additional stop-loss and take-profit controller has been added. Stop-loss and take-profit were not issued for some brokers. The additional controller will check at each tick whether the server has accepted stop-loss and take-profit. And if they are missing, it will try to set again to the expected result.
Chart comment updates now on every tick.
The field that specifies comments for orders has been restored.
The algorithm for calculating risk when working with a currency other than the dollar has also been changed, taking into account the exchange rate of this currency against the dollar!
Therefore, if your deposit is not in dollars and you want to trade, for example, with $1,000, then you need to transfer the deposit in your currency at the exchange rate to the dollar.
Also, in this version, neural networks that were not ready in the previous version have been refined. If someone is interested in working on some tools that are not represented by the bot, contact us, we will make an appropriate update taking into account the desired tool.
Fixed incorrect indexing of neuromerges in the previous version.
Some minor points have been worked out.
Short fix to work with base currency other than dollar for risk calculation.
A number of key errors have been fixed in this version.
the first, on some brokers, a new position was immediately opened after the last position, this problem has been fixed (AutoCloseStop = true).
Risks have been recalculated for base currencies other than the dollar.
The default settings have been changed, the number of orders is limited at once, so check your previous settings.
Do not forget to set stop-loss and take-profit separately for each pair.
Most of the neural networks have been updated, the rest will be updated in the new version.
Also key is the added ability to download your own trained neural network, but note that when you download a neural network, you are dealing with a specific neural network for a specific currency pair. Neural networks can be trained using a free utility.
The following additional parameters have been added:
And a whole section for working with neural networks manually:
Net Expert (setting up a neural network)
In this version, the money management calculations for the base deposit, which is different from the USD, have been updated. Such as JPY.
Fixing the problem with stoplosses
Fixing some bugs
This EA is a next-generation EA that uses neural networks. Andriy allways answered my questions with sincerity. He is working hard to improve this EA. I pray for his success. However, this EA is difficult to set up compared to ordinary EAs, so it is necessary to use it after carefully checking the setting method.