An institutional-grade quantitative trading system combining classical finance methods (Black-Scholes, Greeks, statistical arbitrage) with modern machine learning approaches for intraday trading on equities, derivatives, and futures.
This system is designed for research and learning, helping you understand:
- Quantitative finance concepts (Black-Scholes, Greeks, portfolio theory)
- Statistical arbitrage strategies (pairs trading, mean reversion)
- Machine learning for alpha generation
- Risk management and portfolio optimization
- Backtesting methodologies
Finance/
├── config/ # Configuration and logging
├── data/ # Data fetching and storage
├── strategies/ # Trading strategies (classical & ML)
├── derivatives/ # Options pricing and Greeks
├── execution/ # Order management and risk
├── backtesting/ # Backtesting frameworks
├── portfolio/ # Portfolio optimization
├── utils/ # Utilities and indicators
└── notebooks/ # Educational Jupyter notebooks
# Create virtual environment
python -m venv venv
# Activate (Windows)
venv\Scripts\activate
# Install dependencies
pip install -r requirements.txtfrom data.fetcher import YahooDataFetcher
from strategies.classical.pairs_trading import PairsTradingStrategy
from backtesting.vectorized import VectorizedBacktester
# Fetch data
fetcher = YahooDataFetcher()
data = fetcher.get_daily_data(['PEP', 'KO'], start='2020-01-01', end='2024-01-01')
# Initialize strategy
strategy = PairsTradingStrategy(stock_a='PEP', stock_b='KO')
# Backtest
backtester = VectorizedBacktester(strategy, data)
results = backtester.run()
# Analyze
print(f"Total Return: {results.total_return:.2%}")
print(f"Sharpe Ratio: {results.sharpe_ratio:.2f}")
print(f"Max Drawdown: {results.max_drawdown:.2%}")- Black-Scholes Explained - Options pricing from first principles
- Greeks Visualization - Interactive Greeks surface plots
- Pairs Trading Tutorial - Statistical arbitrage step-by-step
- ML Alpha Generation - Building machine learning signals
- Backtesting Examples - Strategy development workflow
- Black-Scholes-Merton Model: European options pricing
- Greeks Calculator: Delta, Gamma, Vega, Theta, Rho
- Pairs Trading: Cointegration-based arbitrage
- Mean Reversion: Bollinger Bands, RSI strategies
- Momentum: Moving average crossovers, breakouts
- Volatility Models: GARCH, realized volatility
- LSTM Prediction: Deep learning for price forecasting
- Ensemble Models: Random Forest, XGBoost, Linear models
- Regime Detection: HMM for market state identification
- Feature Engineering: Technical indicators, microstructure features
- Position Sizing: Kelly criterion, volatility scaling, risk parity
- Risk Metrics: VaR, CVaR, maximum drawdown
- Portfolio Optimization: Markowitz, Black-Litterman, risk parity
- Stop Loss Management: Dynamic stops based on volatility
- Vectorized Backtester: Fast strategy development
- Event-Driven Backtester: Realistic HF simulation
- Performance Metrics: Sharpe, Sortino, Calmar, Information ratios
- Walk-Forward Analysis: Out-of-sample validation
- Yahoo Finance: Free intraday (1-min, 7 days) and daily historical data
- Options Data: Limited options chains and implied volatility
- Futures: Major index futures (ES, NQ, etc.)
- Yahoo Finance has rate limits and occasional reliability issues
- 1-minute intraday data limited to last 7 days
- No true tick-level data for high-frequency strategies
- No Level 2 order book data
# Run all tests
pytest tests/ -v
# Test specific module
pytest tests/test_black_scholes.py -v
# With coverage
pytest tests/ --cov=. --cov-report=htmlEach module includes extensive documentation with:
- Mathematical formulas and derivations
- Assumptions and limitations
- Practical examples
- References to academic papers
This system is for educational and research purposes only. It is not intended for live trading without significant additional development, testing, and risk management. Trading involves substantial risk of loss.
MIT License - feel free to use and modify for your own learning!