BEST Artificial Intelligence Software
NeuroShell Trader Professional
2003, 2004, 2005, 2006, 2007, 2008
2009, 2010, 2011, 2012, 2013, 2014
We have been rated #1 TWELVE years in a row!

NeuroShell Trader Professional Features


The Professional Trader has features to optimize the inputs to nets. There have been others who have used Genetic Algorithms (GAs) to find inputs to feed a net before, but we are also finding optimum parameters for the indicators you are using, as well as the buy/sell thresholds when training by profit. There are several objective functions for optimization, not just simple profit.

The most exciting thing about the Professional Trader may not have anything to do with neural nets. The most exciting thing may be the trading strategy optimizer, which optimizes systems by GA even if they don't have neural nets! For example, you can enter a traditional trading strategy (using crossovers and breakouts, say) and then find optimal parameters for those crossovers and breakouts. Not only that, but you can tell the optimizer to get rid of useless rules if you have provided several. We have actually built some pretty good trading systems that didn't use nets at all.


The NeuroShell Trader Professional includes a trading strategy optimizer, which optimizes systems by genetic algorithm even if they don't have neural nets! For example, you can enter a traditional trading strategy (using crossovers and breakouts, say) and then find optimal parameters for those crossovers and breakouts. Not only that, but you can tell the optimizer to get rid of useless rules if you have provided several. We have actually built some pretty good trading systems that didn't use nets at all. To learn more about trading strategies, visit the Trading Strategy Wizard.

The Trader Professional also has features to optimize the inputs to nets. There have been others who have used genetic algorithms to find inputs to feed a net before, but the NeuroShell Trader Professional can also find optimum parameters for the indicators as well as the buy/sell thresholds when training by profit.  To learn more about predictions, visit the Prediction Wizard.

How Are Genetic Algorithms Different than Other Optimizers? 
Most optimization techniques used today are simple "exhaustive search" methods, meaning that every possible combination is 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 far less susceptible 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.) 

Custom Indicators

Indicators you build can now be saved and used later in different charts. Saved indicators can also be loaded into the regular Trader, meaning that you can now sell or distribute indicators to all NeuroShell Trader users. You can save them in existing indicator categories, or invent your own.

To create a custom indicator, first build it in the Indicator Wizard as usual. In order to save your indicator, you use the Save Indicator button in the Indicator Wizard. To activate this button, click on any level of the indicator as shown in the picture below:

Then the following dialog box appears:

Furthermore, if you distribute one of these custom indicators, you can specify the help topic and help file that will be displayed if the end user presses “Indicator Help”. Of course, you are responsible for writing this help file yourself.

The Advanced button brings up the following:

The parameters of those indicators can be hidden from end users, meaning that your proprietary secrets will be safe. Also, parameters the user sees can be mapped to multiple parameters in the indicators. For example, if your custom indicator uses close a lot, the user only had to define it once.


The Professional Trader can allow creation of sound and/or popup custom text alerts when an event occurs. Unlike some packages which have a limited number of alerts available, the NeuroShell Trader alerts are unlimited in scope and can be based upon any combination of indicators, predictions, and/or trading strategies.

Alerts are inserted from the Insert menu, just like indicators:

You can give your alerts special names and even notes to yourself:

Then, when you later view the Alert window, you are notified of all alerts (like all such layouts in the Trader, clicking on a column sorts the display by that column):

Alerts can be modified in the same manner in which you modify indicators, predictions, and trading strategies.

Calls to user created DLL functions/subroutines

The NeuroShell Trader Professional now has indictors that can call external DLLs created (usually) in C or C++ ('DLL calls' category in the Indicator Wizard). This is a very powerful feature, because it means that now you can build custom indicators and other functions and use them in the NeuroShell Trader. You can even build a business selling these to NeuroShell Trader users. However, you will need to have a programmer available to help you set up the calls to the DLLs, and the programmer will have to know something about the DLL he/she is trying to call.

There are two types of DLL calls:

1. Calling DLL by value. In this mode, the DLL is called once for each bar. The inputs to the DLL will usually be some current or lagged values, and the output will be associated with that bar on the chart. This mode would be perfect for building a custom indicator in C++.

2. Calling DLL by array. In this mode, the DLL is called only once for the entire chart. Each parameter is an array that is as large as the number of bars loaded in the chart. The output is an array of the same size. This mode is for building some sort of process that needs all the data at once. One example might be your own custom model, like a neural network. Note, however, that training a neural network could take some time, during which the user is staring at a frozen chart. Also, the indicator is called each time the chart is refreshed, so you will want to have a mechanism that is aware that it shouldn’t retrain each time the DLL is called.

Calls to NeuroShell 2 and Predictor/Classifier Nets

You can now call neural networks you created with NeuroShell 2, NeuroShell Predictor, or NeuroShell Classifier within the Trader. These net calls are special indicators in the 'DLL calls' category in the Indicator Wizard. You still have to train these nets within the respective programs, but they can be fired in the Trader, looking like an indicator. This indicator can then be used in a trading strategy, another indicator, or even another net. It is easy to train nets in these programs using Trader data if you use the Trader’s file export facility.

In order to call Predictor/Classifier networks, you must own the NeuroShell Run-Time Server.

When you call the indicator to fire NeuroShell 2 nets you must not only pass it the inputs to the net in the proper order, but the path to the .DEF file as well. For Predictor and Classifier nets, you will need the path to the saved network file as well as the inputs.

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 :

Skype (Sales Only) : wardsystems

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

IMPORTANT INFORMATION AND DISCLAIMERS Investments and trading involve risks, including possible loss of principal and other losses. The Software is designed chiefly to provide tools with which you can learn to build your own systems applying artificial intelligence to the financial markets. The Software and the examples therein are not intended to be working trading systems. The Software is licensed to you with the understanding that Ward Systems Group is not engaged in rendering any investment or other professional advice. If investment or other professional advice is required, the services of a competent, licensed professional should be sought. No Ward Systems Group employee, agent or representative is authorized to provide any such advice of any nature whatever, and any such advice, if given, is in violation of Ward Systems Group policy, is unauthorized and may not be relied upon. The use of any trading system or strategy, including any system or strategy included as a sample in, or that is or was developed using, the Software, does not and cannot guarantee that you will make profits, increase profits or minimize losses. Any popular or other strategies or systems included in the Software are intended merely as examples of technical ideas that can be incorporated into a personally designed trading system. None is recommended. You must use your own judgment or consult a professional for advice on such matters. Additionally, trading results based upon hypothetical or historically-tested trading systems do not necessarily compare to results of actual trading. No hypothetical or historical trading record can completely account for the level of risk present in actual trading. Numerous factors relating to market conditions, human error, human/emotional reaction to losses during actual trading, and inherent limitations of certain hypothetical or historically-tested models can account for these differences. There is no guarantee that your hypothetical trading results, even if tested against historical data, will produce comparable actual trading results. In fact, there are frequently sharp differences between hypothetical or historically-tested performance results and the actual results subsequently achieved by any particular trading system or strategy. Also, you should be aware that certain commonly-used trading "jargon," including trading terms used in the Software, such as, for example, a "limited risk" position, should not be taken literally. For example, so-called "limited risk" positions in certain options trades are not in fact limited as may be expected. Again, with respect to matters such as these, a licensed professional should be consulted.

Click here to read the entire license agreement