Nowadays investing in the stock market seems to be all about competing over pennies at sub-millisecond speed, requiring huge upfront investments in low-latency technology, in what is known as High-Frequency Trading. At the other end of the extreme, ordinary people are using mobile investing apps to simply automatically invest small amounts in passive index funds. Little attention however is going to approaches that actually aim to predict market movements by taking advantage of fundamental market inefficiencies. This is surprising, given today’s advances in artificial intelligence, big data and available computing power.
One such attempt though is made by Altreva, a company that specializes in financial time series forecasting and market modeling. Their Adaptive Modeler software uses evolutionary computing and simulation technology to create evolving market models that predict market movements.
Altreva makes use of a field of science called Agent-based Computational Economics. This basically comes down to creating a bottom-up simulation of a market or economy, starting at the level of individual market participants. Each of the agents in these models represents a trader, investor or other market participant and behaves according to a set of rules to react to market developments. This as opposed to the traditional analytical models that only look at aggregate behavior by modeling whole groups of people as one. The agent-based approach has in recent years proved to be better at explaining the behavior of financial markets than the traditional models. Also, the traditional models have come under intense scrutiny after they dramatically failed to predict the recent financial crisis. Instead, researchers and policy-makers are now increasingly turning to agent-based models.
Altreva’s approach also finds support in Professor Andrew Lo’s Adaptive Market Hypothesis, essentially an updated version of the Efficient Market Hypothesis. While the EMH states that the market as a whole behaves rationally and asset prices always reflect all past available information, the AMH brings in behavioral economics and evolutionary principles to take into account human traits such as fear and greed. It states that market participants are not fully rational but make mistakes and learn from these mistakes and adapt. Competition, adaptation and natural selection shape the market ecology. This causes market efficiency to vary with the number and nature of different types of market participants. In other words, markets are not always fully efficient and can therefore -at least at times- be somewhat predictable.
The software creates a model for the stock the user wants to forecast. This model contains a virtual market and thousands of agents representing traders and investors, each with a starting capital and their own trading rule. The model then evolves stepwise as follows: At each step the system imports the next real market price. Each agent can then place an order on the virtual market, based on its trading rule. The virtual market calculates the clearing price and orders are executed. This is repeated for each new imported real market price, going through historical data first and then onward through new data. The clearing prices formed on the virtual market are considered one-step-ahead forecasts for the stock in question.
The model will change and develop over time as agents react to the market and to each other’s decisions. Weak performing agents are removed and replaced by others with new trading rules. These new trading rules are created using genetic programming, a form of evolutionary computing. Rules from successful agents are recombined to create the trading rules for new agents. Thus over time successful rules are improved upon over and over.
It’s worth noting that in order to avoid overfitting to historical data, Adaptive Modeler does not try to repeatedly optimize trading rules on the same historical data. Instead, its models evolve incrementally over the price series so that agents experience every price change only once, as in the real world. There is in fact no difference between the processing of historical and new price data. This also makes the back-tested historical results more indicative of potential future results.
To get started the user selects a particular stock or other security to forecast. The software sets up the model almost entirely automatically with little work from the user, but some options are available. Here the user can adjust particular settings such as trading preferences, transaction costs and what market data to be used. Also the number of agents can be set and what assets they start with.
Once the model has been set up it will evolve automatically through the historical data, but the user can start or stop it at will. A variety of different charts are available to help the user visualize and analyze the way in which the model is evolving, as well as its forecasting performance. One useful chart is the Forecast Directional Accuracy, which shows the percentage of price changes for which the direction was forecasted correctly.
Further insights are provided by the trading simulator which shows what returns the user would have made had they actually executed the suggested trades. An extensive performance overview shows a range of return and risk indicators including Alpha, Beta, Sharpe ratio and Sortino ratio. Typical trading statistics such as winning trades% and profit factor are also provided.
Example models from Altreva show significant excess returns after transaction costs. On back-tested data of the S&P 500 index covering 1950 to 2008, the Adaptive Modeler achieved a compound average annual return of 20.6%. On the subsequent 6 year out-of-sample period (2008-2014) a compound average annual return of 21.6% was achieved.
Summarizing, the distinctive features of the Adaptive Modeler are:
• Many trading rules, not just one - By using an agent-based approach, many different trading rules are competing and evolving, just as in the real world. Collectively they generate forecasts through the virtual market pricing.
• Constantly evolving models - The model keeps evolving and adapting to market changes as new market information becomes available.
• No overfitting to historical data - All market prices are used just once, no repeated optimization of trading rules on the same historical data.