{
  "status": "complete",
  "all_signal_summary": {
    "trades": 40,
    "equity_start": 500.0,
    "equity_end": 948.471662605854,
    "net_pct": 89.6943325211708,
    "max_realized_dd_pct": -10.85220107927066,
    "max_mtm_dd_pct": -6.871029334896893,
    "min_trade_mtm_pct_equity": -6.871029334896893,
    "win_rate_pct": 67.5,
    "pf": 3.4326852390418496,
    "gross_profit": 632.8241860677429,
    "gross_loss": -184.35252346188906,
    "avg_notional": 442.92682926829264,
    "max_notional": 500.00000000000006,
    "avg_dca_fills": 0.425,
    "margin_call_count": 0,
    "covered_trades": 40,
    "source_trades": 40,
    "coverage_pct": 100.0
  },
  "selected_group_configs": [
    {
      "trades": 3,
      "equity_start": 500.0,
      "equity_end": 612.4854385686388,
      "net_pct": 22.497087713727748,
      "max_realized_dd_pct": 0.0,
      "max_mtm_dd_pct": -0.6339171487306875,
      "min_trade_mtm_pct_equity": -0.6339171487306875,
      "win_rate_pct": 100.0,
      "pf": 999999.0,
      "gross_profit": 112.48543856863867,
      "gross_loss": 0.0,
      "avg_notional": 500.0,
      "max_notional": 500.0,
      "avg_dca_fills": 0.0,
      "margin_call_count": 0,
      "group": "BTCUSDT LONG",
      "candidate": "plain_source_t500",
      "target_notional": 500,
      "base_frac": 1.0,
      "steps_pct": "[]",
      "add_weights": "[]",
      "tp_pct": 0.0,
      "exit_policy": "source_close_only"
    },
    {
      "trades": 17,
      "equity_start": 500.0,
      "equity_end": 697.7434293171325,
      "net_pct": 39.5486858634265,
      "max_realized_dd_pct": -7.602012495592725,
      "max_mtm_dd_pct": -6.792233997206909,
      "min_trade_mtm_pct_equity": -6.792233997206909,
      "win_rate_pct": 52.94117647058823,
      "pf": 2.7262584022886482,
      "gross_profit": 312.29373595428916,
      "gross_loss": -114.55030663715655,
      "avg_notional": 500.0,
      "max_notional": 500.0,
      "avg_dca_fills": 0.0,
      "margin_call_count": 0,
      "group": "BTCUSDT SHORT",
      "candidate": "plain_source_t500",
      "target_notional": 500,
      "base_frac": 1.0,
      "steps_pct": "[]",
      "add_weights": "[]",
      "tp_pct": 0.0,
      "exit_policy": "source_close_only"
    },
    {
      "trades": 1,
      "equity_start": 500.0,
      "equity_end": 502.2567910218436,
      "net_pct": 0.45135820436871654,
      "max_realized_dd_pct": 0.0,
      "max_mtm_dd_pct": -0.6783803381960033,
      "min_trade_mtm_pct_equity": -0.6783803381960033,
      "win_rate_pct": 100.0,
      "pf": 999999.0,
      "gross_profit": 2.256791021843572,
      "gross_loss": 0.0,
      "avg_notional": 500.0,
      "max_notional": 500.0,
      "avg_dca_fills": 0.0,
      "margin_call_count": 0,
      "group": "ETHUSDT LONG",
      "candidate": "plain_source_t500",
      "target_notional": 500,
      "base_frac": 1.0,
      "steps_pct": "[]",
      "add_weights": "[]",
      "tp_pct": 0.0,
      "exit_policy": "source_close_only"
    },
    {
      "trades": 6,
      "equity_start": 500.0,
      "equity_end": 602.5868836667668,
      "net_pct": 20.517376733353355,
      "max_realized_dd_pct": -10.126778038113265,
      "max_mtm_dd_pct": -6.871029334896893,
      "min_trade_mtm_pct_equity": -6.871029334896893,
      "win_rate_pct": 33.333333333333336,
      "pf": 2.4758837285399693,
      "gross_profit": 172.09566791784837,
      "gross_loss": -69.50878425108166,
      "avg_notional": 500.0,
      "max_notional": 500.0,
      "avg_dca_fills": 0.0,
      "margin_call_count": 0,
      "group": "ETHUSDT SHORT",
      "candidate": "plain_source_t500",
      "target_notional": 500,
      "base_frac": 1.0,
      "steps_pct": "[]",
      "add_weights": "[]",
      "tp_pct": 0.0,
      "exit_policy": "source_close_only"
    },
    {
      "trades": 4,
      "equity_start": 500.0,
      "equity_end": 507.93405056664204,
      "net_pct": 1.5868101133284085,
      "max_realized_dd_pct": 0.0,
      "max_mtm_dd_pct": -0.8363077345363978,
      "min_trade_mtm_pct_equity": -0.8363077345363978,
      "win_rate_pct": 100.0,
      "pf": 999999.0,
      "gross_profit": 7.934050566642092,
      "gross_loss": 0.0,
      "avg_notional": 240.39634146341464,
      "max_notional": 357.31707317073176,
      "avg_dca_fills": 0.75,
      "margin_call_count": 0,
      "group": "MSTRUSDT SHORT",
      "candidate": "t500_b35_s0p45-0p7-1p0_w1p0-1p3-1p8_tp1p0_v21",
      "target_notional": 500,
      "base_frac": 0.35,
      "steps_pct": "[0.45, 0.7, 1.0]",
      "add_weights": "[1.0, 1.3, 1.8]",
      "tp_pct": 1.0,
      "exit_policy": "v21_tp_then_source_close"
    },
    {
      "trades": 1,
      "equity_start": 500.0,
      "equity_end": 505.1209145785152,
      "net_pct": 1.024182915703045,
      "max_realized_dd_pct": 0.0,
      "max_mtm_dd_pct": -0.5635194458000073,
      "min_trade_mtm_pct_equity": -0.5635194458000073,
      "win_rate_pct": 100.0,
      "pf": 999999.0,
      "gross_profit": 5.120914578515221,
      "gross_loss": 0.0,
      "avg_notional": 500.0,
      "max_notional": 500.0,
      "avg_dca_fills": 0.0,
      "margin_call_count": 0,
      "group": "PAXGUSDT LONG",
      "candidate": "plain_source_t500",
      "target_notional": 500,
      "base_frac": 1.0,
      "steps_pct": "[]",
      "add_weights": "[]",
      "tp_pct": 0.0,
      "exit_policy": "source_close_only"
    },
    {
      "trades": 8,
      "equity_start": 500.0,
      "equity_end": 520.3441548863149,
      "net_pct": 4.068830977262974,
      "max_realized_dd_pct": -0.05810014517001499,
      "max_mtm_dd_pct": -2.271488710878643,
      "min_trade_mtm_pct_equity": -2.271488710878643,
      "win_rate_pct": 87.5,
      "pf": 70.33161725434432,
      "gross_profit": 20.637587459965673,
      "gross_loss": -0.2934325736508058,
      "avg_notional": 344.43597560975616,
      "max_notional": 500.00000000000006,
      "avg_dca_fills": 1.75,
      "margin_call_count": 0,
      "group": "SOLUSDT SHORT",
      "candidate": "t500_b35_s0p35-0p55-0p8_w1p0-1p3-1p8_tp1p0_v21",
      "target_notional": 500,
      "base_frac": 0.35,
      "steps_pct": "[0.35, 0.55, 0.8]",
      "add_weights": "[1.0, 1.3, 1.8]",
      "tp_pct": 1.0,
      "exit_policy": "v21_tp_then_source_close"
    }
  ],
  "responsibility_split": {
    "source_copytrader": [
      "defines entry permission",
      "defines source-close maximum holding boundary",
      "defines symbol and side"
    ],
    "v21_dca": [
      "chooses per-symbol-side DCA sizing ladder",
      "may full-sell early when tuned TP fires if exit_policy is v21_tp_then_source_close",
      "does not open trades without source signal"
    ],
    "runner_broker": [
      "execution only",
      "no strategy invention",
      "no live authority in this research run"
    ]
  }
}
