def make_trade_stats()

in src/backend/domain/services/steps/calculate_trading.py [0:0]


    def make_trade_stats(current_trades):
        trade_stats = dict()
        trade_stats["# Trades"] = current_trades.shape[0]
        trade_stats["Winning Trades"] = current_trades["win"].sum()
        trade_stats["Losing Trades"] = (~current_trades["win"]).sum()
        trade_stats["Win Ratio"] = current_trades["win"].mean()
        trade_stats["Avg. Trade"] = round(current_trades["net profit acct ccy"].mean(), 2)
        if current_trades["win"].any():
            trade_stats["Avg. Winning Trade"] = round(current_trades["net profit acct ccy"][current_trades["win"]].mean(), 2)
        else:
            trade_stats["Avg. Winning Trade"] = 0.0
        if (~current_trades["win"]).any():
            trade_stats["Avg. Losing Trade"] = round(current_trades["net profit acct ccy"][~current_trades["win"]].mean(), 2)
        else:
            trade_stats["Avg. Losing Trade"] = 0.0

        if abs(trade_stats["Avg. Losing Trade"]) >= 1e-20:
            trade_stats["Payoff Ratio"] = trade_stats["Avg. Winning Trade"] / abs(trade_stats["Avg. Losing Trade"])
        else:
            trade_stats["Payoff Ratio"] = float("nan")
        if current_trades["size"].sum() >= 1e-20:
            trade_stats["Profit Margin (Bps)"] = round(
                current_trades["net profit acct ccy"].sum() / current_trades["size"].sum(), 2
            )
        else:
            trade_stats["Profit Margin (Bps)"] = float("nan")

        sum_entry_price_acct_ccy_mul_size = (current_trades["entry price acct ccy"] * current_trades["size"]).sum()
        if abs(sum_entry_price_acct_ccy_mul_size) >= 1e-20:
            trade_stats["Profit Margin (Bps)"] = round(
                current_trades["net profit acct ccy"].sum() / sum_entry_price_acct_ccy_mul_size * 10000, 2
            )
        else:
            trade_stats["Profit Margin (Bps)"] = float("nan")

        trade_stats["Avg. Holding Days"] = round(current_trades["days in trade"].mean(), 2)
        return trade_stats