# S&P 500 Stock Price Prediction Using Technical, Fundamental and Text Data

arXiv: https://arxiv.org/abs/2108.10826 · HTML: https://mlsanity.com/paper/2108.10826/

## Key facts

- Cited by 2 papers in the map (data through 14 Oct 2026).
- Builds on 4 of its 45 references that are in the map.
- First posted on arXiv 24 Aug 2021.

## Builds on (most cited first, 4 of 4)

- [BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding](https://mlsanity.com/paper/1810.04805/) (2018)
- [Distributed Representations of Words and Phrases and their Compositionality](https://mlsanity.com/paper/1310.4546/) (2013)
- [FinBERT: Financial Sentiment Analysis with Pre-trained Language Models](https://mlsanity.com/paper/1908.10063/) (2019)
- [Good Debt or Bad Debt: Detecting Semantic Orientations in Economic Texts](https://mlsanity.com/paper/1307.5336/) (2013)

## Built on by (most cited first, 2 of 2)

- [Real-Time Online Stock Forecasting Utilizing Integrated Quantitative and Qualitative Analysis](https://mlsanity.com/paper/2311.15218/) (2023)
- [From Rattle to Roar: Optimizer Showdown for MambaStock on S&P 500](https://mlsanity.com/paper/2508.04707/) (2025)

## Abstract (arXiv)

We summarized both common and novel predictive models used for stock price prediction and combined them with technical indices, fundamental characteristics and text-based sentiment data to predict S&P stock prices. A 66.18% accuracy in S&P 500 index directional prediction and 62.09% accuracy in individual stock directional prediction was achieved by combining different machine learning models such as Random Forest and LSTM together into state-of-the-art ensemble models. The data we use contains weekly historical prices, finance reports, and text information from news items associated with 518 different common stocks issued by current and former S&P 500 large-cap companies, from January 1, 2000 to December 31, 2019. Our study's innovation includes utilizing deep language models to categorize and infer financial news item sentiment; fusing different models containing different combinations of variables and stocks to jointly make predictions; and overcoming the insufficient data problem for machine learning models in time series by using data across different stocks.
