Quant Lab
A structured pipeline for market data acquisition, cleaning, feature engineering, backtesting strategies, and portfolio optimization with an interactive Streamlit dashboard.
Focus: SPY, QQQ, and IWM
- Project Structure
- Quickstart
- Targets and Tickers
- Testing
- Tech Stack
- Project Goals
- Development Roadmap
- Team
- Contributions
- License
- Contact
GatorAI/
├── data/ # Raw and processed datasets, test samples
├── src/ # Core Python modules
│ ├── data/ # Data acquisition and processing
│ ├── backtesting/ # Backtesting engine
│ ├── optimization/ # Portfolio optimization
│ └── dashboard/ # Streamlit application
├── notebooks/ # Jupyter notebooks for exploration
├── tests/ # Unit and integration tests
├── docs/ # Documentation and guides
└── scripts/ # Utility scripts
# Create virtual environment
python -m venv venv
# Activate (Unix/macOS)
source venv/bin/activate
# Activate (Windows)
venv\Scripts\activatepip install -r requirements.txtpython scripts/generate_sample_data.pystreamlit run src/dashboard/app.pyInitial Focus: SPY, QQQ, IWM
Extend ticker universe via:
src/data/utils.py— Configuration utilitiessrc/data/fetch_data.py— Data acquisition functions
Run all tests:
pytest -qLanguages: Python
Libraries: pandas, numpy, matplotlib, yfinance, PyPortfolioOpt, scikit-learn, streamlit, plotly
Tools: Git, Jupyter, Streamlit, pytest
- Build a modular, reproducible research environment for quantitative portfolio optimization
- Implement AI-assisted risk and return modeling
- Develop an interactive dashboard for real-time portfolio analysis and backtesting
- Deliver a polished, production-ready prototype by end of semester
| Phase | Weeks | Focus |
|---|---|---|
| Phase 1 | 1–3 | Data collection, cleaning, and pipeline setup |
| Phase 2 | 4–6 | Backtesting engine and performance metrics |
| Phase 3 | 7–8 | Portfolio optimization and AI modeling |
| Phase 4 | 9–10 | Dashboard integration, testing, and documentation |
University of Florida — Fall 2025
- Krish Shah — Team Lead / Integration & Architecture
- Neerav Gandhi
- Sparsh Mogha
- Son Tran
- Navaj Sivkumar
- Mahdi Haque
- Muhammad Ismael
- Sidhharth Radhakrishnan
- Pratik Patil
We follow a simple Git workflow:
- Create a new branch for your feature
- Commit with clear, descriptive messages
- Open a Pull Request
- Merge after review and testing
This project is licensed under the MIT License. See LICENSE for details.
Team Lead: Krish Shah
Institution: University of Florida
Semester: Fall 2025