--- --- language: en tags: - time-series - forecasting - lstm - arima - stock-market license: mit datasets: - yahoo-finance metrics: - rmse - mape --- # LSTM Stock Price Forecasting This repository contains an **LSTM model** trained on stock closing prices and compared with a traditional ARIMA baseline. The goal is to forecast future stock values and evaluate which approach generalizes better. --- ## Dataset - **Source:** Yahoo Finance - **Ticker:** Apple Inc. (AAPL) - **Period:** 2015–2023 - **Feature Used:** Daily closing price --- ## Models Implemented - **ARIMA (Auto ARIMA)** — traditional statistical time-series forecasting - **LSTM** — deep learning recurrent neural network for sequential data --- ## Evaluation Results | Model | RMSE | MAPE | |-------|-----------|----------| | ARIMA | 15.7959 | 0.0857 | | LSTM | 5.8747 | 0.0305 | **Conclusion:** LSTM significantly outperforms ARIMA with lower RMSE and MAPE, showing its ability to capture nonlinear patterns in stock prices. Under a single split, LSTM significantly outperforms ARIMA. --- ### Rolling Window Evaluation | Model | RMSE (avg) | MAPE (avg) | |-------|------------|------------| | ARIMA (Rolling Window) | 3.448 | 0.0304 | | LSTM (Rolling Window) | 23.282 | 0.1869 | Under rolling window evaluation, **ARIMA outperforms LSTM**, showing better stability and adaptability across multiple forecasting horizons. --- ## ARIMA vs LSTM Forecasts **ARIMA Forecast:** ![ARIMA](./forecast_arima.png) **LSTM Forecast:** ![LSTM](./forecast.png) ## Deployment - Model hosted on **Hugging Face Hub** - Repository: `Jalal10/DataSynthis_ML_JobTask` - Includes model weights (`lstm_stock_model.h5`) and usage instructions --- ## Usage ```python from huggingface_hub import hf_hub_download import tensorflow as tf # Download model model_path = hf_hub_download(repo_id="Jalal10/DataSynthis_ML_JobTask", filename="lstm_stock_model.h5") # Load model model = tf.keras.models.load_model(model_path)