TradingSolutions V 3.1NeuroDimension Inc.3701 NW 40th Terrace Suite 1Gainsville, FL 32606(800) 634-3327; (352) 377-5144E-mail: email@example.com
Overall rating: 3 out of 4 Discs
Price: The end-of-day edition is $995 and the real-time edition is $1,995. Support costs extra after first 90 days.
System Requirements: Windows XP; 512 Megs of RAM; 2GHZ Pentium 4 Processor (or compatible). A third party data feed for end-of-day historical and/or real-time quotes.
TradingSolutions is a software product that uses neural-networks, a type of artificial intelligence, to attempt to forecast price movements. They’re commonly used to mine data to identify hidden relationships, and can be used to identify new trading patterns by feeding them current price data.
The product was created by a company called NeuroDimension (www.nd.com), which has been in the neuro-network business for about 15 years. The principals of the company have many years of experience researching and developing neural networks. One of the founders of the company was the director of the Computational Neural Engineering Lab at the University of Florida.
In using neural networks for price forecasting, you tell the engine which entry levels in past data. The engine will then try to figure out the (unknown) recurring pattern(s) in the data provided that triggered those trades. Theoretically, it will then be able to recognize those patterns and issue trade signals as new data is fed into the engine in real time.
TradingSolutions is not a product for someone new to trading. The paradigm used by the product is unusual in the realm of technical analysis software; even experienced traders may encounter some obstacles to learning to use the product effectively.
Installation and data: 3 Discs
As with many end-of-day analysis products, TradingSolutions does not ship with its own data or data source. So, depending on where you plan on getting your data, it can require anywhere from 2 to 5 steps to install. First, you need to install the core product. Then you contact the company with the serial number based on your unique hardware to get an unlock code that will allow you to use the full capabilities. Without the unlock code, you will only be able to use the sample data that is shipped with it. Once TradingSolutions is installed, you then need to install your data source. You will link up your data sources to the product when you start to configure symbols.
Overall, despite the multiple steps, it was fairly easy to install. Before the product can really be used, you must import data into it. It is best to create and use “data groups” to import your data, which make it slightly easier to work with a portfolio of symbols with common characteristics.
For example you can create a group called “stocks” and another one called “futures.” I created two groups, one for futures continuous contracts and another for futures individual contracts. I was able to easily import data into these groups from text files which were formatted in a standard fashion.
Once the initial data was imported, I was left with the arduous task of setting the point values and descriptions of every symbol. It would save the users a lot of time if these products were shipped with the symbology database for the data feeds that are supported.
By default, if the symbol name/description is not included in the file, the display name is the name of the data file or a stock description if it can find a match in its stock database. However, for futures symbols, the point value must be specified manually and cannot be imported from the external data source. The product supports the use of real-time data feeds such as eSignal. But, unfortunately, the vendor was unable to provide a data feed with the evaluation software so I was unable to review the product with any real-time capabilities enabled.
Most technical analysis software dynamically calculates indicator values as those indicators are inserted onto charts. TradingSolutions uses a different method that closely resembles that of a classic database. Before an indicator can be used in a chart or as an input into a neural-net model, it must first be defined as a column (or field) on the symbol or symbol group. The software then calculates the indicator value for all rows in that group/symbol and updates that value as future data rows are added to the database. One of the reasons for the intensive use of an underlying database is the processor intensive nature of neural-nets. The more “precalculated” data that can be fed to the neural-net engine, the faster the engine will perform. For example, if one of the inputs to the engine is a moving average, then it’s faster for the engine to use a pre-calculated value instead of calculating it on the fly.
Neural Networks: ACRL. 3 Discs
Creating price forecasts using neural networks is the primary purpose of the TradingSolutions software. For the developer experienced in neural nets, the product includes five of the common types of neural networks: multilayer perceptron, modular network, Jordan/Elman network, time-lag recurrent network and recurrent network. Each network type can be customized using dialog boxes with parameters appropriate to that network type. To reduce curve-fitting to the input data, the product allows you to break the data set into separate training, validation and walk-forward testing sets. You can see a report on the different sets, though the walk-forward test is most important. The product includes the ability to optimize the parameters used as inputs into a neural-net.
You can specify that one of the parameters used as an input into a neural model is a moving average. The software allows you to optimize these using genetic algorithms. The first step in creating a model is to give the software something to shoot for, an objective. The product calls this the “optimal signal.” You create this by giving it the risk parameters for a perfect set of trades. It then looks “n” bars into the future and creates signals across the data set. Obviously, since you are able to look into the future, you can create a perfect set of trades. This is the set of trades the software will set as its objective using only historical inputs.
The second step is creating the actual model. You provide a set of inputs, specify an objective, decide on the neural-network parameters and provide the range of dates on which to operate. For inputs, you can use just about any technical analysis calculation or data stream such as the close of other symbols. You also can provide calculations based on other symbols. For example, you can specify rates of change and moving averages for crude, gold and bonds as inputs into a model that tries to forecast the S&P’s. The output is a set of buy/sell signals that you can use to overlay on top of the optimal signal in a chart. You can apply the model to a range of dates to see how it performs out-of-sample.
Charting: 3 Discs
TradingSolution, while not a charting product, does provide basic charting capabilities. They are in the product simply to make it easier to view the signals generated by the neural network engine. You are able to add the values for many common technical analysis indicators to the underlying database. In turn, you are able to use these values in charts and plot them like you would any indicator. Built-in indicator formulas include the usual suspects like moving averages, CCI, MACD, DMI, stochastics, etc. You can also add your own indicator using the TradingSolutions formula language. You will not find the usual complement of chart tools such as Fibonacci retracement/extension tools, trend lines, Gann tools, etc. The narrow focus on signal generation and price forecasting precludes the need for such tools.
Overall, once you get used to the software, the mechanics of the process are pretty easy. But the output is only as good as the input so it’s up to the user to provide relevant inputs to the model so that usable signals are produced. Managing signals using TradingSolutions for trading on a day to day basis is really all about managing the signals generated by the products’ models. A typical portfolio will have multiple models. Some portfolios will have multiple models per symbol/market.
However, more often than not, for a particular symbol in a particular portfolio, you will most likely be trading only one model’s signals. As such, the product allows you to specify which model will produce something known as a “primary” signal. This is the column (another database field) you will monitor for changes that will indicate that a trade action must be taken. The product does allow you to manage many signals from many models simultaneously. You simply can choose to display all signals from all models or you can add the same symbol to multiple “portfolios” and specify a different model as the “primary” signal for each symbol in the different portfolios. Frankly, I liked the former better for development but the latter better for real-time trading of one or more models.
Nigel Bahadur runs the research and development group for LBRGroup. He can be reached at firstname.lastname@example.org or www.lbrgroup.com.