There are many opportunities for optimization in technical analysis. Prior to the NeuroShell Trader Professional, some trading systems had optimizers, but the optimization technique used was simple “exhaustive search”, meaning that every possible combination was tried to see what was the best one. This is a very accurate approach, since you are bound to find the best combination of variables – eventually. However, it is a very inefficient approach, because whenever there are more than a few thousand combinations, it takes too long to try them all. That is why users of exhaustive search optimizers tend to limit the number of variables they use, or tend to limit the number of values these variables can take.
The genetic algorithm, by contrast, does not try every possible combination. It attempts instead to intelligently get closer and closer to the best solution. Therefore, far more variables can be utilized, and you can allow all values of a variable. Optimization can still take a good deal of time if you give a GA a fair number of variables, but it will be doing much more work in that amount of time.
More efficient optimizers than exhaustive search optimizers are in use. If they are not genetic algorithms, however, they are most likely only searching one section of the search space at a time. Genetic algorithms are searching dozens or hundreds of parts of the search space simultaneously. This means they are impervious to becoming stuck in “local minima” as the others quite often do. (Local minima are decent solutions that the optimizer can never get out of in order to find better solutions.)
Topics of Interest:
What are Genetic Algorithms?
How Does a Genetic Algorithm Work?
What Types of Problems Do Genetic Algorithms Solve?
How are Genetic Algorithms Used in the NeuroShell Trader Professional?