This project explores volatility forecasting techniques applied to a selection of exchange-traded funds (ETFs). We implement and compare various models, including basic forecasting methods and GARCH models, to predict future volatility based on historical price data.
The analysis covers ten major sector ETFs: SPY, XLB, XLE, XLF, XLI, XLK, XLP, XLU, XLV, and XLY. We examine daily returns and develop forecasting models to estimate future variance and volatility.
The data/ directory contains:
- Individual ticker data for each ETF in CSV format
- Basic forecast results for each ETF
- GARCH model variance forecasts
All data is sourced from historical price information and processed for analysis.
The notebooks/ folder includes Jupyter notebooks detailing the analysis:
01_data_prep.ipynb: Data preparation and cleaning02_estimators.ipynb: Implementation of various estimators03_garch.ipynb: GARCH model development and forecastingreport.ipynb: Comprehensive report generation
For a detailed walkthrough of the methodology, results, and conclusions, view the interactive HTML report by visiting this link: https://rahulb0802.github.io/Volatility-Forecasting/
To run the notebooks and reproduce the analysis:
- Python 3.8+
- Jupyter Notebook or JupyterLab
- Required packages: pandas, numpy, matplotlib, statsmodels, arch (for GARCH models)
Install dependencies with: pip install pandas numpy matplotlib statsmodels arch
- Clone or download the repository
- Navigate to the project directory
- Open the notebooks in Jupyter to explore the code
- View
index.htmlfor the complete report