Product Features
Optimize your Trading Rules

The NeuroShell Trader Professional and NeuroShell DayTrader Professional include a genetic algorithm optimizer that can find the best trading rules, the best parameters for indicators used in trading rules, and the best parameters to use for limit orders, stop orders, and stop limit orders. Genetic algorithms offer a more intelligent search for optimal combinations compared to exhaustive searches, with the result being faster and more effective searches when genetic algorithms are used.

Implementation in the NeuroShell Trader Pro and DayTrader

  1. Rule Selection - The genetic algorithm will search through combinations of rules looking for the set of rules that optimizes the objective of the Trading Strategy, e.g., maximize net profit, maximize winners - losers, etc.

  2. Parameter Selection - All of your conditions (rules) are used, but the genetic algorithm evolves optimum parameters for you. These parameters do not produce rules that are individually optimum, but optimal as a complete set.

    Note: One of the options allows the NeuroShell Trader to look for the combination of rules and parameters that work the best.

  3. Limits, Stops and Stop Limit Orders - The genetic algorithm finds the best parameters for indicators used in limit orders, stop orders, and stop limit orders. For example, the genetic algorithm can find the best percent change to use for a trailing stop or the optimal price for a limit or stop order.

  4. Sphere of influence - If you are optimizing a chart with multiple chart pages in it (multiple ticker symbols), then you can chose whether you want to optimize one model that works for all ticker symbols, or individual optimizations for each ticker symbol. You can thus decide if one shoe fits all, or if each symbol needs individualized shoes, so to speak.

The following are the optimization objectives available for optimizing trading strategies in the NeuroShell Trader Professional and DayTrader Professional. These functions are sometimes called objective functions or fitness functions:

  • Maximize Return on Trades
  • Maximize Return on Account
  • Maximize #Winners - #Losers
  • Maximize Net Profit
  • Maximize ReturnOnAccount*EquityCurveCorrelation
  • Maximize (#Winners - #Losers) * Profit
  • Minimize Max Drawdown
  • Maximize #Winners / #Losers
  • Maximize (#Winners / #Losers) * Profit
  • Maximize Average Bar Profit
  • Maximize Ratio Gross Profit / Loss
  • Maximize Sharpe Ratio by Trade
  • Maximize Ratio Net Profit / StndDev Profit
  • Maximize Ratio Net*Avg Profit / StndDev Profit
  • Maximize Ratio Net Profit / Max Drawdown
  • Minimize Max Open Trade Drawdown
  • Maximize Average Trade Profit
  • Maximize Percent Profitable Trades

Why Use Genetic Algorithms?
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.)

How Does a Genetic Algorithm Work?
A genetic algorithm solves optimization problems by creating a population or group of possible solutions to the problem. The individuals in this population will carry chromosomes that are the values of variables of the problem.

The genetic algorithm actually solves your problem by allowing the less fit individuals in the population to die (peacefully) and selectively breeding the most fit individuals (the ones that solve the problem best). This process is called selection, as in selection of the fittest. The genetic algorithm will take two fit individuals and mate them (a process called crossover). The offspring of the mated pair will receive some of the characteristics of the mother, and some of the father.

In nature, offspring often have some slight abnormalities, called mutations. Usually these mutations are disabling and inhibit the ability of the children to survive, but once in a while they improve the fitness of the individual (like toes stuck together in a web-like fashion). The genetic algorithm similarly occasionally causes mutations in its populations by randomly changing the value of a variable.

After the genetic algorithm mates fit individuals and mutates some, the population undergoes a generation change. The population will then consist of offspring plus a few of the older individuals, which the genetic algorithm allows to survive to the next generation because they are the most fit in the population, and we will want to keep them breeding. These most fit individuals are called elite individuals.

After dozens or even hundreds of "generations", a population eventually emerges wherein the individuals will solve the problem very well. In fact, the most fit (elite) individual will be an optimum or close to optimum solution.

The processes of selection, crossover, and mutation are called genetic operators.

Advanced Neural Network Software for Financial Forecasting and Stock Prediction

Ward Systems Group, Inc
Executive Park West
5 Hillcrest Drive
Frederick, MD  21703

Phone : (301) 662-7950
Fax : (301) 663-9920
Email : sales@wardsystems.com

Skype (Sales Only) : wardsystems | wardsystems2


Copyright© 1997- 2010 Ward Systems Group, Inc. All rights reserved
Copyright Information
Privacy Statement