|
23 | 23 | from .sharpe_ratio import get_sharpe_ratio, get_rolling_sharpe_ratio |
24 | 24 | from .sortino_ratio import get_sortino_ratio |
25 | 25 | from .volatility import get_annual_volatility |
26 | | -from .win_rate import get_win_rate, get_win_loss_ratio |
| 26 | +from .win_rate import get_win_rate, get_win_loss_ratio, get_current_win_rate, \ |
| 27 | + get_current_win_loss_ratio |
27 | 28 | from .trades import get_average_trade_duration, get_average_trade_size, \ |
28 | 29 | get_number_of_trades, get_positive_trades, get_number_of_closed_trades, \ |
29 | 30 | get_negative_trades, get_average_trade_return, get_number_of_open_trades, \ |
@@ -105,7 +106,9 @@ def create_backtest_metrics( |
105 | 106 | "number_of_trades_opened", |
106 | 107 | "number_of_trades_open_at_end", |
107 | 108 | "win_rate", |
| 109 | + "current_win_rate", |
108 | 110 | "win_loss_ratio", |
| 111 | + "current_win_loss_ratio", |
109 | 112 | "percentage_winning_months", |
110 | 113 | "percentage_winning_years", |
111 | 114 | "average_monthly_return", |
@@ -295,7 +298,9 @@ def safe_set(metric_name, func, *args, index=None): |
295 | 298 | safe_set("best_trade", get_best_trade, backtest_run.trades) |
296 | 299 | safe_set("worst_trade", get_worst_trade, backtest_run.trades) |
297 | 300 | safe_set("win_rate", get_win_rate, backtest_run.trades) |
| 301 | + safe_set("current_win_rate", get_current_win_rate, backtest_run.trades, backtest_run) |
298 | 302 | safe_set("win_loss_ratio", get_win_loss_ratio, backtest_run.trades) |
| 303 | + safe_set("current_win_loss_ratio", get_current_win_loss_ratio, backtest_run.trades, backtest_run) |
299 | 304 | safe_set("percentage_winning_months", get_percentage_winning_months, backtest_run.portfolio_snapshots) |
300 | 305 | safe_set("percentage_winning_years", get_percentage_winning_years, backtest_run.portfolio_snapshots) |
301 | 306 | safe_set("average_monthly_return", get_average_monthly_return, backtest_run.portfolio_snapshots) |
|
0 commit comments