backtrader.reports.performance module¶
Performance metrics calculator.
Extracts and calculates all performance metrics from strategies and analyzers.
- class backtrader.reports.performance.PerformanceCalculator[source]¶
Bases:
objectUnified performance metrics calculator.
Extracts and calculates all performance metrics from strategies and analyzers, including: - PnL metrics: total return, annual return, cumulative return - Risk metrics: max drawdown, Sharpe ratio, SQN, Calmar ratio - Trade statistics: win rate, profit/loss ratio, average profit/loss
- strategy¶
Strategy instance
- Usage example:
calc = PerformanceCalculator(strategy) metrics = calc.get_all_metrics() print(f”Sharpe ratio: {metrics[‘sharpe_ratio’]}”) print(f”SQN rating: {metrics[‘sqn_human’]}”)
- __init__(strategy)[source]¶
Initialize the performance calculator.
- Parameters:
strategy – backtrader strategy instance (result from run())
- get_all_metrics()[source]¶
Return dictionary of all performance metrics.
- Returns:
Dictionary containing all performance metrics
- Return type:
- get_pnl_metrics()[source]¶
Get profit and loss related metrics.
- Returns:
PnL metrics dictionary
- Return type:
- get_trade_metrics()[source]¶
Get trade statistics metrics.
- Returns:
Trade statistics dictionary
- Return type:
- get_kpi_metrics()[source]¶
Get key performance indicators.
- Returns:
KPI metrics dictionary
- Return type:
- get_equity_curve()[source]¶
Get equity curve data.
- Returns:
(dates, values) Lists of dates and equity values
- Return type:
- get_buynhold_curve()[source]¶
Get buy-and-hold comparison curve.
- Returns:
(dates, values) Lists of dates and buy-and-hold values
- Return type:
- static sqn_to_rating(sqn_score)[source]¶
Convert SQN score to human-readable rating.
Reference: http://www.vantharp.com/tharp-concepts/sqn.asp
- Parameters:
sqn_score – SQN score
- Returns:
Human-readable rating
- Return type: