Predicting Stable Portfolios Using Machine Learning

Nandita Dwivedi
SFU Professional Computer Science
17 min readApr 14, 2019

Muhammad Rafay Aleem, Nandita Dwivedi, Kiran

1. Motivation and Background

Portfolio Management is the process of maximizing the return on a portfolio. Portfolio managers make trading decisions on behalf of their clients depending on their appetite for risk. They analyze different assets, their strengths and weaknesses before making a decision about which equities they should hold in a portfolio for balancing the risk and drawing maximum returns. This makes portfolio management a difficult process. We aim to make this process better and simpler by using predictive modeling and deep learning techniques. We generate stable portfolios on predicted stock prices for next quarter.

Related Work

In past a lot of attempts have been made to predict the stock prices for firms, and also to understand how text of news articles, twitter posts, and other platforms influence stock prices. These attempts have involved analysing the impact of sentiments of the mentioned resources and predicting value stock prices. What still remains unexplored is the effect of sentiments of financial reports on these stock markets. Harvard Business School published a working paper, ‘Lazy Prices’ claiming that these financial reports have influence in a firm’s stock price. They stated that a drastic change in similarity (Jaccard and Cosine scores) of these filings can increase or decrease a firm’s market value [1].

2. Problem Statement

The project required us to first explore finance domain and gather relevant information about stock price movement, trading methods and portfolio management techniques. We understood how impactful data science has been in finance so far and came up with three main problems we wanted to focus -

  1. To what extent are the quarterly and annual financial reports filed by firms influencing their stock prices?
  2. How does including the sentiments of historical financial reports change prediction of stock prices?
  3. How can we built a stable portfolio using the predicted values for a quarter?

These problems are challenging because we had to do a lot of background research on domain. Using right features and doing proper feature engineering to come up with best predictions had a significant learning curve. In addition to that, the data source and format for these…