calculate_advanced_metrics#
API documentation for tradeexecutor.analysis.advanced_metrics.calculate_advanced_metrics Python function.
- calculate_advanced_metrics(returns, mode=AdvancedMetricsMode.basic, periods_per_year=365, convert_to_daily=False, benchmark=None, display=False)[source]#
- Calculate advanced strategy performance statistics using Quantstats. - Calculates multiple metrics used to benchmark strategies for risk-adjusted returns in one go. - See Quantstats for more information. - Example: - from tradeexecutor.visual.equity_curve import calculate_equity_curve, calculate_returns from tradeexecutor.analysis.advanced_metrics import calculate_advanced_metrics equity = calculate_equity_curve(state) returns = calculate_returns(equity) metrics = calculate_advanced_metrics(returns) # Each metric as a series. Index 0 is our performance, # index 1 is the benchmark. sharpe = metrics.loc["Sharpe"][0] assert sharpe == pytest.approx(-1.73) - See also - visualise_advanced_metrics().- Parameters:
- returns (Series) – - Returns series of the strategy. - See :py:`tradeeexecutor.visual.equity_curve.calculate_returns`. 
- mode (AdvancedMetricsMode) – Full or basic stats 
- periods_per_year – - How often the trade decision cycle was run. - This affects “trading periods per year” needed, to calculate metrics like Sharpe. - The defaults to the daily trading cycle, trading 24/7. 
- convert_to_daily – QuantStats metrics can only work on daily data, so force convert from 1h or 8h or so if needed. 
- benchmark (pandas.core.series.Series | None) – 
 
- Returns:
- DataFrame of metrics generated by quantstats. - You can directly display this in your notebook, or extract individual metrics. 
- Return type:
- DataFrame