An artificial fund manager, beating the market over a period of more than a decade. It should be noted that the results below were achieved with the help of my supervisors, they both deserve credits for the work below, thanks Pasi Jylanki and Marcel van Gerven!
The main goal was to find out whether a linear model could be used to make investments that could outperform the market average, which is simply the average of all the possible investments it could have picked.
The linear model can use many different machine learning techniques to come up with the weights for the stock-picking. Among the options are linear regression, Bayesian regression, classifiers and neural networks. Any approach which can come up with a set of weights based on the financial data should work.
The entire process consists of several steps, first the appropriate training data is extracted. Then the data is pre-processed, the pre-processing includes standardization, outlier-handling and several other techniques. After which the coefficients are determined, based on the pre-processed data. The coefficients are used to make the predictions, which are then turned into an ordering which is used to pick the stocks. After all steps are done, the linear model has created a portfolio of its own, on its own.
The final design allows for multiple models to work together. Models can focus on finding stocks that outperform on a period of 2, 3, 4 or any other amount of years. But what we really want is a model which finds stock which outperform on all th0se periods. To do that, we simply run multiple models, for different periods and let them work together.
This also means you can let linear regression models, Bayesian regression models, classifiers and neural networks work together with ease. This allows you to use different techniques all with the same model
It works by letting each model vote for the stocks they like. Whichever stocks are liked the most by all of the individual models are the stocks that make it into the final portfolio.
The individual models could form stock portfolios which outperformed the market, which means they could find stocks which would do above average. They could do so for several periods, including 1, 2 and 3 years.
Multiple models could not only create a portfolio which outperformed the market, they could also manage a portfolio over more than a decade and still outperform the market average.
The performance of the individual models and the multi-models are plotted below:
The full thesis with the details about the approach and the results can be found below: