The first wave of neural network trading applications formed during the 1990s, and then crested and crashed as the Internet stock bubble burst. Neural network applications in trading research really dropped during the first half of the 2000s. Few good research papers were published during this period. Even today, the tools remain relatively out of favor, with the exception being support vector machine algorithms vs. the back-propagation and radial-net that were popular during the first wave.
The early approach was to train models over static sets of data and out-of-sample periods. In addition, many of the early neural network models were adapted from time series forecasting methods or classic signal processing, and did not draw on deep domain knowledge of financial markets. Because so many models were developed, some of the models had to seem like they worked just due to chance.
Problems & enablers
Developers of market models face two related problems:
- Many data series are not stationary, lacking a constant mean. A requirement for stationarity needs to be addressed with preprocessing.
- Regime change. A set of model inputs works for one regime but not another, so a system or set of inputs might work for six months to a year or more and then fail.
Statistical procedures such as the Augmented Dickey Fuller and Phillips Perron tests can detect if a time series is stationary. If we know a time series is not stationary, we can try to make it so through preprocessing. Methods include taking first and second differences of the time series. In addition, current development can use walk-forward technology to see if model stability is retained on different data sets and represents stable relationships.
Today, sponsors of predictive model development recognize how important domain expertise is and how neural nets are better utilized as only part of the solution.
Here, we will demonstrate this approach by first providing an overview of a classic time series forecasting method, Box-Jenkins, for historical perspective. We will then reuse some of the concepts when we implement our final neural network models. Along the way, we will find that identical terms are used differently in trading and forecasting. To minimize confusion, these terms will be identified.