Genbox is the Artificial Intelligence engine incorporated in Alphadvisor that allows you to create on-demand systems for any asset.

The Artificial Intelligence Models generated by Genbox has been designed for the Forex market. Although they also work on other assets (Equity indices, commodities, stocks), but it is recommended to use Genbox for Forex pairs while you are learning.

The Artificial Intelligence engine follows a series of steps until the systems are obtained, each of the steps is rigorously validated to obtain the maximum probability that the system has a real edge and has not fallen into over-fitting.

Any Trading System inherently incurs an undetermined risk of over-fitting and therefore the best way to trade with Genbox robots is through a diversified portfolio. In this way, we assume that a small percentage of generated robots are over-fitted but the rest of the robots will be covering their losses, hoping that the overall result of the systems portfolio will be positive in the long term.

The systems generation process consists of 4 main steps:

Configuration of time series and base indicators.
Generation of branches (Entries).
Assembling branches (Entries).
Neural network optimization (Exits and Risk Management).


The first thing will be to determine the time series on which we want to generate a system. A time series is made up of: asset, timeframe, and period.

For example: EURUSD, in a timeframe of “4H” and a period from 01/01/2010 to 01/01/21.

We must also determine if the system is for Buy or Short Sell and the split validation percentage to use.

Validation is a key element of system design and serves to avoid over-fitting. The validation percentage will reserve the data at the end of the time series to check the results of the algorithms instead of using it to train the data. Usually a percentage between 20% and 40% maximum is used.


Through data mining we will look for optimal entry points to the market. Genbox will use a Decision Tree algorithm to generate the rules that determine when to enter the market.

It is divided into IS and OS (in-sample and out-sample) that is, the training period and the validation period.

The parameters are as follows:

Minimum number of operations.

Minimum % of Winning Trades.

Minimum K-ratio.

Correctly setting these parameters is a critical process for the algorithm to work.

In this phase we will look for between 51% and 60% of winning trades. If we put 50% or less, the algorithm will not make sense and if we exceed 60% it may be impossible to find branches, in the next assembly step this percentage will be increased.

The K-ratio is a fundamental metric that measures the robustness of a system, an excellent system will have a K-ratio above 0.20 but in this phase it is practically impossible to find such robust branches, so it is recommended to look for a K- ratio of 0.10 and raise it in the following phases.

The Maximum noise level criterion determines, as its name suggests, the maximum noise level that we allow to the branches. In this step we look for a maximum 70% although we can look for a somewhat lower percentage.

Finally, the phase stopping criterion indicates when we will have enough branches to move on to the next assembly phase. It is usually used between 10 and 20 branches.


The assembly is a process by which we merge all the inputs of the system (branches) that act as signals to position ourselves.

The purpose of this merger is to increase the percentage of Winning Trades.

The criteria are basically the same as in the branch phase, but this time we must increase them slightly to guide the assembly to improve the system.

For example, if we have searched branches with 55% winners, we will now raise the assembly to 60%. If we have asked for a 0.10 K-ratio in the branch phase we will now raise the assembly to 0.12. Also with a lower percent of noise.

The stop criteria represent the total operations of the robot, in training (IS) and validation (OS).

It must be taken into account that in the next phase of neural networks, Artificial Intelligence will train the algorithm, practically decimating the number of operations, so if we ask here for a total of 2000 (IS) + 500 (OS) = 2500 operations, our robot may final finish with just 250 or 300 operations.


Neural Network Optimization

The neural network is trained to determine the fractal dimension of the Market and therefore its memory and / or the Market regime.

The parameters are basically the same as in the previous phases. The only thing we have to take into account is to demand a little more in the K-Ratio, a little less noise and finally the mathematical expectation of the trades.

The Expectancy will depend a lot on the time series used, you can ask for values ​​between 10 and 30 pips, although the algorithm possibly generates systems with higher values.

The Montecarlo Drawdown parameter will make a probabilistic analysis of the risk of the system and will only deliver systems that do not exceed the number (in pips) that is indicated. For example, if we select 2000, all generated systems will have less than 2000 pìps of Monte Carlo drawdown in their backtest. It is not recommended to use systems higher than 2000 pips.

The last parameter Training cycle refers to the evolutions that the neural network will go through while it is being trained. Evolution tends to stagnate so every certain number of trainings has to be restarted to start again, it is advisable to use between 3000 and 5000 cycles.