A Neural Network finding mispriced stocks using PE and PB -ratios


While making a fundamental analysis of companies, we often support our decision-making with classical valuation methods such as Price-Earnings and Price-to-Book. As these ratios describe mainly whether a company is over- or underpriced compared to their rivalries, we tend to make these calculations pretty often.


Yet the interpretation of these ratios isn't always as simple as in the textbook as for each stock the ratios fluctuate daily.


"We decided to let a Neural Network make the conclusion on what the stock price should be tomorrow"


Mispricing happens where a human brain fails to create a clear, comprehensive image of the current situation. And even if one might be able to draw a complete picture, personal biases could be affecting our investment decisions due to the issues of behavioral finance.


Artificial Neural Network is a method of Machine Learning where it tries reach its goal with the given information. In this scenario, we decided to let a Neural Network to make the conclusion on what the stock price should be tomorrow. The results were astonishing:

Note that the transaction costs are taken into consideration.


In this strategy, we used five different Neural Networks that are predicting next day's price movement. From this information, we allocate the whole wealth of the portfolio to the stock which has highest predicted returns. If the maximum predicted return is below the transaction cost or negative, it changes position to 0. We consider the transaction costs with a fixed cost of 0.2 % (Both ways 0.4 %).


The algorithm invests in five different companies of OMXH25: Elisa, Kone, Neste, Nokia and Telia. It uses a large dataset of 20 input variables, where we have four base variables (Price, PE, PB & Price-to-NWC) and their moving averages of each variable 1, 2, 5, 15, and 30 days.

This interactive chart will let you see the daily returns of the strategy. Click the company name to select or unselect it.


As we have five companies in our analysis, we only take a position in the stock with largest expected returns and thus we only have stocks of one single company each day. In the chart above it is interesting to see which stocks are preferred in which timespan. 


The final results of the trading strategy including transaction costs:

                                       Algo   /  OMXH25:

Annualised return (%):  67.13  /  13.20

Sharpe:                          3.76    /  1.12

Beta:                              0.44    /  1



We know that you were waiting for a post about Neural Networks and we hope that this helps your understanding how these methods can be used in trading and supporting investment decision-making. Stay tuned for more!





Our data was obtained from Google Finance and financial statements of each company. The model was created with Matlab, where it was trained on a timespan from 01/03/2013 - 03/11/2016 (960 obs.) and predicted for 04/11/2016 - 29/12/2017 (301 obs.).

Share on Facebook
Share on Twitter
Please reload

Featured Posts

Building a trading strategy around VIX

June 13, 2018

Please reload

Recent Posts
Please reload

Please reload

© Bald & Grey Hair 2018​