Quantitative Strategy Backtester
A bar-by-bar backtesting engine over 100+ tickers that reports Sharpe, max drawdown, and the rest — without the CSV-and-for-loop tax.
The problem
Backtests are easy to write and easy to get quietly wrong — usually by leaking future information or by being too slow to test more than one idea a day.
How it works
The engine walks price history bar by bar so a strategy only ever sees data it would actually have had, then computes the performance metrics that matter end-to-end: Sharpe ratio, max drawdown, returns.
The data layer is where the speed comes from. Historical data is stored as Parquet and processed with vectorised Pandas/NumPy operations instead of Python loops over CSVs, which is the difference between iterating on a strategy and waiting on one.
A Streamlit front-end makes the results explorable rather than a wall of console output.
Outcomes
- Handles historical data for 100+ tickers in a single run.
- Substantially lower I/O overhead than a naive CSV/loop pipeline on large datasets.
- Point-in-time correct by construction — no lookahead leakage.