Team 45 · COMP208 · University of Liverpool

Built to learn.
Designed to predict.

This system was developed as part of a second year Group Software Project. It applies machine learning to weekly S&P 500 price prediction, not as a trading tool, but as an exploration of how historical data can be used to model market behaviour.

The team
6 ML Models
100yr of S&P Data
7 Team Members
15wk Build Time
What this project does

Weekly S&P 500 Prediction

The system collects historical S&P 500 index data, trains multiple machine learning models on it, and presents weekly price predictions through this interactive interface. Users can explore forecasts, compare model accuracy, and understand the reasoning behind each prediction.

Predictions cover a 52-week forward horizon, generated from models trained on data spanning back to 1926.

Technology stack

How it's built

The system has three layers that pass data through a shared MySQL database.

Python scikit-learn TensorFlow yfinance WRDS Pandas / NumPy MySQL Node.js React Chart.js
Data sources

Where the data comes from

Historical S&P 500 data from 1926 to 2024 is sourced from Wharton Research Data Services (WRDS). Data from 2025 onwards uses the yfinance package via the Yahoo Finance API. Both sources are publicly accessible and permission has been confirmed for academic use.

Ethics & limitations

This is not financial advice.

All predictions are generated for academic and educational purposes only. Markets are affected by geopolitical events, policy changes, and unforeseen shocks that no historical model can anticipate. Do not use this system to make real investment decisions. Model limitations are documented transparently throughout the interface.