the Chartered Market Technician (CMT) exam. Software Technical analysis software automates the charting, analysis and reporting functions that support technical analysts in their review and prediction of financial markets (e.g. the stock market). In addition to installable desktop-based software packages in the traditional sense, the industry has seen an emergence of cloud-based applications and application programming interfaces (APIs) that deliver technical indicators (e.g., MACD, Bollinger Bands) via RESTful HTTP or intranet protocols. Modern technical analysis software is often available as a web or a smartphone application, without the need to download and install a software package. Some of them even offer an integrated programming language and automatic backtesting tools. Systematic trading Neural networks Since the early 1990s when the first practically usable types emerged, artificial neural networks (ANNs) have rapidly grown in popularity. They are artificial intelligence adaptive software systems that have been inspired by how biological neural networks work. They are used because they can learn to detect complex patterns in data. In mathematical terms, they are universal function approximators, meaning that given the right data and configured correctly, they can capture and model any input-output relationships. This not only removes the need for human interpretation of charts or the series of rules for generating entry/exit signals, but also provides a bridge to fundamental analysis, as the variables used in fundamental analysis can be used as input. As ANNs are essentially non-linear statistical models, their accuracy and prediction capabilities can be both mathematically and empirically tested. In various studies, authors have claimed that neural networks used for generating trading signals given various technical and fundamental inputs have significantly outperformed buy-hold strategies as well as traditional linear technical analysis methods when combined with rule-based expert systems. While the advanced mathematical nature of such adaptive systems has kept neural networks for financial analysis mostly within academic research circles, in recent years more user friendly neural network software has made the technology more accessible to traders. Backtesting/Hindcasting Systematic trading is most often employed after testing an investment strategy on historic data. This is known as backtesting (or hindcasting). Backtesting is most often performed for technical indicators combined with volatility but can be applied to most investment strategies (e.g. fundamental analysis). While traditional backtesting was done by hand, this was usually only performed on human-selected stocks, and was thus prone to prior knowledge in stock selection. With the advent of computers, backtesting can