DataSynthis_ML_JobTask - Stock Price Forecasting (Deliverables)
This bundle contains a ready-to-run Jupyter notebook, a small synthetic sample dataset, and helper scripts for training ARIMA, LSTM, and Prophet models; evaluating them with rolling-window evaluation; and steps to deploy model artifacts to Hugging Face Hub (you must run that step locally or from an environment with internet access).
Files included
stock_forecasting_notebook.ipynb— The full notebook with preprocessing, ARIMA, LSTM, Prophet, rolling-window evaluation, plots, and saving models.sample_stock.csv— A synthetic daily closing-price CSV (2020-01-01 to 2021-12-31, business days) to run the notebook offline.requirements.txt— Python dependencies.upload_to_hf.py— Example script to upload model files to Hugging Face Hub (requireshuggingface_huband HF token).README.md— This file.
Quick start
- Create and activate a python environment (recommended: conda or venv)
python -m venv venv source venv/bin/activate # Linux/macOS venv\Scripts\activate # Windows pip install -r requirements.txt - Start Jupyter and open the notebook:
jupyter notebook stock_forecasting_notebook.ipynb - The notebook contains cells to download real stock data via
yfinance(if you have internet) or use the includedsample_stock.csvfor an offline demo.
Hugging Face deployment (notes)
- You cannot deploy directly from this notebook in an environment without internet.
- Use
upload_to_hf.pyto push saved model files to the HF repoDataSynthis_ML_JobTaskafter creating it on the Hugging Face website (or the script will create the repo for you if you provide a valid token). - Create a HF token at https://huggingface.co/settings/tokens and set environment variable
HF_TOKENor pass--tokento the script.
About results
- The notebook runs quick examples and shows how to compute RMSE and MAPE, and how to perform rolling-window evaluation.
- For production-quality training and evaluation (e.g., longer LSTM training), run on a machine with a GPU and more data.