Quant Buffet API
Metrics API
compute_metrics fields and benchmark-relative stats.
`backtest.metrics.compute_metrics` turns an equity curve into the statistics shown in the lab UI (CAGR, Sharpe, drawdown, etc.).
Usage
metrics = compute_metrics(
result.equity,
benchmark=spy_buy_and_hold, # optional pd.Series, same index as equity
risk_free=0.0,
trades_count=len(result.trades),
)
# keys: start, end, years, cagr, volatility, sharpe, sortino,
# max_drawdown, calmar, daily_win_rate, trades, alpha, beta, ...Core output fields
| Key | Description |
|---|---|
start, end | First and last equity dates (strings). |
years | Calendar years spanned. |
start_equity, end_equity | Dollar values at start/end. |
total_return | End/start − 1 (not annualised). |
cagr | Compound annual growth rate. |
volatility | Annualised standard deviation of daily returns. |
sharpe | Excess return / volatility (annualised, risk_free subtracted). |
sortino | Return / downside deviation. |
max_drawdown | Worst peak-to-trough (negative fraction). |
calmar | CAGR / |max_drawdown|. |
daily_win_rate | Fraction of positive return days. |
trades | Trade count passed through from the engine. |
Benchmark fields (when benchmark provided)
benchmark_total_return,benchmark_cagralpha— annualised Jensen's alpha vs benchmark daily returnsbeta— covariance / variance vs benchmark