The stock market is one of the ways a person can earn passive income, and there have been many attempts to look for the holy grail, the trading strategy that can consistently yield profits for the investor. In this paper, we address the core problem of most stock investors—classifying which stocks to buy on any given day.

Features used were mostly based on either price, trading volume, or volatility, across multiple timeframes. The algorithm and model used was a Random Forest Classifier, which is trained from 2008 to 2015 Philippine Stock Exchange (PSE) stocks. For model evaluation, a portfolio is simulated from 2016 to 2020 with an analysis of its expected returns based on stocks picked by the model. The results show that our model portfolio was able to achieve +240.70% in total return, which translates to a Php 1 Million initial capital growing to Php 3.4 Million in less than 5 years; compared to PSEi which incurred a 12.29% loss resulting to an ending value of Php 874,113.93 with the same investment amount.

On an annualized basis, the model portfolio achieved a 31% compound annual growth rate (CAGR), outperforming existing equity funds which range from -2.6% down to -4.0%. These results show that through machine learning, we were able to develop a systematic approach to portfolio management.