A Practical Machine Learning Approach for Dynamic Stock Recommendation
Abstract
Stock recommendation is vital to investment companies and investors. However, no single stock selection strategy will always win while analysts may not have enough time to check all S&P 500 stocks (the Standard & Poor's 500). In this paper, we propose a practical scheme that recommends stocks from S&P 500 using machine learning. Our basic idea is to buy and hold the top 20% stocks dynamically. First, we select representative stock indicators with good explanatory power. Secondly, we take five frequently used machine learning methods, including linear regression, ridge regression, stepwise regression, random forest and generalized boosted regression, to model stock indicators and quarterly log-return in a rolling window. Thirdly, we choose the model with the lowest Mean Square Error in each period to rank stocks. Finally, we test the selected stocks by conducting portfolio allocation methods such as equally weighted, mean-variance, and minimum-variance. Our empirical results show that the proposed scheme outperforms the long-only strategy on the S&P 500 index in terms of Sharpe ratio and cumulative returns. This work is fully open-sourced at \href{https://github.com/AI4Finance-Foundation/Dynamic-Stock-Recommendation-Machine_Learning-Published-Paper-IEEE}{GitHub}.
Links & Resources
Authors
Cite This Paper
Yang, H., Liu, X., Wu, Q. (2025). A Practical Machine Learning Approach for Dynamic Stock Recommendation. arXiv preprint arXiv:2511.12129.
Hongyang Yang, Xiao-Yang Liu, and Qingwei Wu. "A Practical Machine Learning Approach for Dynamic Stock Recommendation." arXiv preprint arXiv:2511.12129 (2025).