What problem does it solve?
Portfolio managers and traders often lack a consistent, reproducible way to measure performance quality, compare strategies, and understand risk through time (returns, drawdowns, and risk-adjusted ratios).
Core Features & Use Cases
- Portfolio-level performance measurement: Computes total return, CAGR, volatility, VaR/CVaR, maximum drawdown, and time underwater from an equity curve.
- Risk-adjusted performance ratios: Calculates Sharpe, Sortino, Calmar, Omega, and Information ratio (with optional benchmark comparison).
- Rolling and distributional analysis: Produces rolling Sharpe and monthly/yearly return tables to spot regimes and consistency.
- Trade-level statistics: Summarizes win rate, average win/loss, profit factor, and expectancy from trade PnL series.
- Investor-ready reporting: Supports automated HTML report generation via quantstats and provides end-to-end script workflows (single portfolio analysis and multi-strategy comparison).
Quick Start
Use the attached equity CSV to generate a full set of portfolio analytics by running the analyze script in demo mode: python scripts/analyze_portfolio.py --demo