Understand What it Takes to Succeed
The first thing you must appreciate is that successful financial models (i.e., those that consistently make money) are not easy; if they were, there would be an awful lot of rich people. If you have been at it less than two months, then you may just be scratching the surface so far. Most of our users who have become successful have taken much more time than that, some as much as a year before they are happy with the returns they can produce. Frankly, some of our users never get there, but we can say with certainty that the unsuccessful ones are usually those who feel one should be able to be very rich with little effort, and they do not persist.
Remember that neural nets are not magic; they are excellent modeling tools. Furthermore, financial markets are driven by a myriad of complex variables that are frequently changing. It is therefore quite unreasonable to expect that any model you build will be 100% right 100% of the time, or anything even approaching that goal. You will be successful if you can build some models that make money most of the time. At various times you will have winning trades on some issues, and losing trades on others, but you should try to find a strategy that plays the odds with several models or at least several issues you are trading. The idea is to build a system that makes more money on average than it loses, that doesn’t take any large losses, and that does better than you can do trading with your own brain’s neural networks. More on this later.
Understand the Background
You should view and review the Tutorial available from the Help menu. If you are like most of us, you just skimmed over it and the videos because you were excited to get started with the program. Now it’s time to study them carefully, because there are some good tips in the dialog. The financial models that we built on the videos are very typical of the types of models you can build for yourself.
Have you carefully gone over our examples? The models that we built were successful when we built them and were very typical of how successful models are built. There are also good suggestions in the text. Perhaps you downloaded additional data and discovered that these models are no longer profitable, and you’ve therefore dismissed them? You shouldn’t have! Very few people have built technical models of any type that continue to be profitable throughout the life of an issue, or in different market conditions. If a model works for you for six months, you are very lucky. Even neural nets need to be retrained, and even new indicators may need to be found as market forces change. Expect that.
In our training videos, examples, and on our technical support web site we have been repeating a common theme: not all stock or other issues are easy to predict. Some are much harder than others. The biggest mistake you can make is “beating an issue to death.” If you are not able to predict your favorite issue after a while, let it go. It’s a big market, and there are a lot of ways to make money. Find something else that’s easier to predict. Often that something else is less glamorous, but do you really care if you make money?
If you are using neural nets, there are thousands of possible indicators and other functions you could use as inputs to your networks, as you no doubt now realize. The winners at this game are those persistent enough to find good input variables. One of the more successful users of our neural nets is able to predict the S&P by using only ratios! No complicated indicators at all! Of course, if you have a good deal of market savvy to begin with, you may not have to rely on persistence as much. Use your own intuition and feeling about what must be driving the issues you are trying to predict.
On the other hand, there are some standard technical indicators that have worked very well for us at Ward Systems Group and many of our customers. We talk about them in our videos, in our examples, and on this tech support web site. Start with these; don’t beat your favorite indicators to death either.
While we’re on the subject of inputs to a neural net, let’s don’t forget over fitting: making a model that works well when it is being built with known answers, but which becomes unprofitable with new “out of sample” data, or in trading. The biggest mistake made by users of both neural nets and other modeling techniques is to use too many inputs. That is the easiest way we know of to promote over fitting, even with our own Turboprop 2. You’ll notice that most of our models only use about 5 inputs. Have you used dozens of inputs to your neural nets?
The genetic algorithm optimizers can help you find a few good inputs. You can also make good use of the Input Contributions screen that you can select after pressing the Prediction Analysis button that appears after training. The neural network is able to estimate how important it found each of the input variables to be during training of the model. Use this as a guide to help you decide among the many possible input variables.
In the figure above, the input analysis shows that only the high and close were used by the neural net to any significant degree. The inputs with contributions of 0% above can definitely be removed, and possibly even the low with a percentage under 5%.
More on Pattern Recognition; The Key to Success
Neural networks are pattern recognition devices. They associate output predictions with patterns that they find in the inputs. In other words, they make predictions about the future based on what happened in the past when similar input patterns occurred. This simple, but fundamental, fact is all you will ever have to know about neural networks to make them work for you. If there is any one key to success, knowing this is the key. Even neural network experts forget this fact quickly when they attempt to predict financial markets. In fact, neural network experts rarely succeed at this game! The real success stories are made by users who know something about the market, because these people can concentrate on what the market has done before instead of dwelling on red herring neural network internals.
So what does pattern recognition mean to you?
The Holy Grail: You must give neural networks input patterns during training that will repeat in the future. Furthermore, when these patterns repeat in the future, the price movement that follows (i.e., the output) should be like the price movements that followed these same patterns when they occurred in the past.
If you can do this, you will make good models. If not, you will not make good models. It is a fundamentally simple concept, but one that is difficult to achieve in practice. But it is literally all you need to do to be a success, because that is the way neural networks and pattern recognition algorithms operate.
Of course, neural nets can still do a good job even it the patterns in the past are similar; they don’t have to be identical. The same is true about following price movements – they need not be identical. That is because neural nets are good fuzzy pattern recognizers.
So what can you do to take advantage of the Holy Grail, now that you have found out what it is? There’s the obvious, of course: find variables that affect the price movements. This is daunting, so fortunately, there are some things you can do to increase your chances of success:
Try picking issues to model that are somewhat volatile or cyclic. If the price movements don’t repeat, there is no chance that your repeating patterns will result in repeating price movements. This can be a little difficult in a sustained bull market.
Don’t pick issues that are driven primarily by fundamental variables if you are using technical variables. As an example, look at IBM stock from the period September 1987 to January 1997. During that period Big Blue stock tumbled from over $170 down to the low $40 range as doubts about its ability to compete were rampant. Later in the same period the price climbed back up as IBM restructured, reorganized, downsized, and started to show the world it was still going to be a major force in computing. The big bull market didn’t hurt the rise, either.
Don’t go back too far in time if doing so is likely to mean the input patterns found during training will be substantially different from those showing up today. Even if you have great inputs that are normalized over time, it is likely that as markets change, so does the effectiveness of your input variables.
IBM stock was probably driven strongly by fundamental factors during the period shown above. Predicting the stock except for very short term may require more than technical factors.
A related issue is expecting your neural net, or other model, to backtest (or walk-forward) profitably a long period of time. We think that is very unrealistic. If it would have worked profitably over the last year, we think that’s probably enough. It may not be perfect, but it’s probably good enough to trade. Don’t insist on the perfect wave before you surf, or you may never get wet! Sure you’ll wipe out sometimes, but at least you’ll be learning to ride the waves.
More on the Odds – Don’t Put all of Your Eggs in One Basket
We mentioned earlier that it is effective to use multiple issues or multiple models. Below are some ways that can be accomplished. Your trading strategy (how you trade with your models) may be as important as the models themselves.
We know that no model will be perfect in the financial arena. For some issues it will work, and for some it will not. It may even be the case that the issues it works well with will not be consistently the same. Fortunately, the NeuroShell Trader has a feature wherein you only need to build your indicators and predictions once to apply them to a whole series of your favorite issues. You just place these issues in different pages of the same chart. Then on a given day, adopt a trading strategy like purchasing the top 10% as predicted by the model, and selling the bottom 10%.
Design a trading strategy that does not depend on one model, even for a given issue. The NeuroShell Trader is the best vehicle ever invented for pursuing strategies with multiple models. The power is there, use it! You use it by building indicators that query multiple predictions built differently, and using those indicators in your trading strategies. These strategies could be as simple as buying only when two out of three predictions indicate a price rise.
In the strategy above, we execute a long order when two of three models (predictions) are predicting a rise.
When using multiple models, as in 2 above, remember that all models need not be neural. If you have some winning buy/sell indicators you have previously constructed by traditional means, include them in your trading strategy as well. Remember also that your indicator that evaluates several models CAN be neural. You can build a neural network that makes an overall decision based on inputs that are the predictions of several other models!
In this prediction, the inputs will be three previous predictions.
Perhaps now you may have seen that your model may not be all that bad, and may be an effective part of a multiple model total solution.
Using the NeuroShell Trader Professional Successfully
The NeuroShell Trader Professional is highly recommended, but it is not a silver bullet! It has be a lot of fantastic features with which you can experiment. However, you shouldn’t just throw “everything but the kitchen sink” at it and expect immediate gratification in the form of fantastic out of sample predictions. Although that works sometimes, it often does not.
As a powerful optimizer, the NeuroShell Trader Professional can, with very little effort, build highly over-fit models much easier than you can do it yourself! They will look great in sample, but fall apart out of sample and during later trading. Also, even genetic algorithms can take a great deal of time optimizing with too many variables. For these reasons, you must be professional enough to recognize that powerful optimizers can do this, and professional enough to experiment and take steps to avoid over-fitting.
Among the suggestions we have relative to the over-fitting problem are:
- Start with pretty good models and use optimization to make modest improvements to them. Search only a little on either side of the indicator parameters that are presently being used.
- Make sure you stick to a very few inputs to neural nets (usually about 5). When finding an optimum set of inputs, tell the optimizer to use at most 5 inputs.
- Make sure that you do out of sample testing when you optimize trading strategies.
- Experiment with stopping optimization not long after it has begun to avoid over optimizing.
- When optimizing neural nets, consider optimizing on out of sample evaluation sets instead of the oldest walk-forward training set. (But don’t go back too far in time when the market was different.)
- Consider and experiment with optimizing neural nets or trading strategies, but not both in the same trading system.
- When optimizing neural nets, use very few hidden neurons. This will not only help prevent over-fitting, but will keep it from taking forever to optimize.
- Use different objective (fitness) functions when optimizing. These can make all the difference in the world. We are providing plenty and considering offering more in the future. Unfortunately, there are no rules on when to use which ones.
The NeuroShell Trader Professional is a power tool, and like most power tools, it can help you but only if used properly and carefully.
You’ll Never be Finished
We’re sorry to tell you this. Once you start making money with neural networks and the NeuroShell Trader, you will want to keep on improving your models and trading strategies, especially since the market is changing all the time. If you are not doing it full time now, you probably will be some day. We know this because we know traders who make $millions with neural nets, and they are just as active as they ever were in trying new theories and models, if not more so. Fortunately, most of us look forward to the day when we can spend full time trading. So let’s get started!
Note to Writers and Would-be Writers
The material above, like all advice and documentation in the NeuroShell Trader, is copyrighted information for the use of NeuroShell Trader owners only. No part of this material may be published or distributed in any form without the written consent of Ward Systems Group, Inc.
Copyright © 1997-2017 Ward Systems Group, Inc. All rights reserved.