{
  "meta": {
    "total_events": 1066,
    "tradeable_events": 1034,
    "is_events": 561,
    "oos_events": 473,
    "date_range": "2023-03-01 to 2026-03-20",
    "best_strategy": "A"
  },
  "strategy_summary": {
    "A": {
      "all": {
        "n": 1034,
        "n_wins": 645,
        "n_losses": 389,
        "n_timeouts": 0,
        "wr_pct": 62.4,
        "avg_win_pts": 4.62,
        "avg_loss_pts": 4.37,
        "profit_factor": 1.75,
        "total_pnl_pts": 1280.5,
        "avg_pnl_pts": 1.24,
        "sharpe_annualized": 4.34,
        "avg_mfe": 11.59,
        "avg_mae": 3.03,
        "pct_mfe_ge_5": 55.7,
        "pct_mfe_ge_10": 4.2,
        "pct_mfe_ge_15": 1.3,
        "pct_mae_ge_5": 31.3
      },
      "IS": {
        "n": 561,
        "n_wins": 340,
        "n_losses": 221,
        "n_timeouts": 0,
        "wr_pct": 60.6,
        "avg_win_pts": 4.45,
        "avg_loss_pts": 4.1,
        "profit_factor": 1.67,
        "total_pnl_pts": 606.25,
        "avg_pnl_pts": 1.08,
        "sharpe_annualized": 3.88,
        "avg_mfe": 4.3,
        "avg_mae": 2.86,
        "pct_mfe_ge_5": 49.9,
        "pct_mfe_ge_10": 0.9,
        "pct_mfe_ge_15": 0.0,
        "pct_mae_ge_5": 29.9
      },
      "OOS": {
        "n": 473,
        "n_wins": 305,
        "n_losses": 168,
        "n_timeouts": 0,
        "wr_pct": 64.5,
        "avg_win_pts": 4.81,
        "avg_loss_pts": 4.72,
        "profit_factor": 1.85,
        "total_pnl_pts": 674.25,
        "avg_pnl_pts": 1.43,
        "sharpe_annualized": 4.87,
        "avg_mfe": 20.23,
        "avg_mae": 3.24,
        "pct_mfe_ge_5": 62.6,
        "pct_mfe_ge_10": 8.0,
        "pct_mfe_ge_15": 2.7,
        "pct_mae_ge_5": 33.0
      }
    },
    "B": {
      "all": {
        "n": 1034,
        "n_wins": 575,
        "n_losses": 459,
        "n_timeouts": 0,
        "wr_pct": 55.6,
        "avg_win_pts": 7.81,
        "avg_loss_pts": 6.77,
        "profit_factor": 1.44,
        "total_pnl_pts": 1381.25,
        "avg_pnl_pts": 1.34,
        "sharpe_annualized": 2.7,
        "avg_mfe": 14.01,
        "avg_mae": 5.07,
        "pct_mfe_ge_5": 65.0,
        "pct_mfe_ge_10": 37.8,
        "pct_mfe_ge_15": 3.3,
        "pct_mae_ge_5": 47.2
      },
      "IS": {
        "n": 561,
        "n_wins": 300,
        "n_losses": 261,
        "n_timeouts": 0,
        "wr_pct": 53.5,
        "avg_win_pts": 7.12,
        "avg_loss_pts": 6.27,
        "profit_factor": 1.31,
        "total_pnl_pts": 501.25,
        "avg_pnl_pts": 0.89,
        "sharpe_annualized": 1.91,
        "avg_mfe": 6.61,
        "avg_mae": 4.88,
        "pct_mfe_ge_5": 60.2,
        "pct_mfe_ge_10": 31.2,
        "pct_mfe_ge_15": 1.2,
        "pct_mae_ge_5": 46.7
      },
      "OOS": {
        "n": 473,
        "n_wins": 275,
        "n_losses": 198,
        "n_timeouts": 0,
        "wr_pct": 58.1,
        "avg_win_pts": 8.56,
        "avg_loss_pts": 7.44,
        "profit_factor": 1.6,
        "total_pnl_pts": 880.0,
        "avg_pnl_pts": 1.86,
        "sharpe_annualized": 3.57,
        "avg_mfe": 22.78,
        "avg_mae": 5.3,
        "pct_mfe_ge_5": 70.6,
        "pct_mfe_ge_10": 45.7,
        "pct_mfe_ge_15": 5.7,
        "pct_mae_ge_5": 47.8
      }
    },
    "C": {
      "all": {
        "n": 1034,
        "n_wins": 491,
        "n_losses": 543,
        "n_timeouts": 0,
        "wr_pct": 47.5,
        "avg_win_pts": 12.5,
        "avg_loss_pts": 8.64,
        "profit_factor": 1.31,
        "total_pnl_pts": 1447.5,
        "avg_pnl_pts": 1.4,
        "sharpe_annualized": 1.86,
        "avg_mfe": 17.62,
        "avg_mae": 7.19,
        "pct_mfe_ge_5": 72.0,
        "pct_mfe_ge_10": 47.7,
        "pct_mfe_ge_15": 32.8,
        "pct_mae_ge_5": 62.0
      },
      "IS": {
        "n": 561,
        "n_wins": 270,
        "n_losses": 291,
        "n_timeouts": 0,
        "wr_pct": 48.1,
        "avg_win_pts": 11.01,
        "avg_loss_pts": 8.11,
        "profit_factor": 1.26,
        "total_pnl_pts": 613.5,
        "avg_pnl_pts": 1.09,
        "sharpe_annualized": 1.57,
        "avg_mfe": 9.9,
        "avg_mae": 6.69,
        "pct_mfe_ge_5": 69.0,
        "pct_mfe_ge_10": 42.6,
        "pct_mfe_ge_15": 27.1,
        "pct_mae_ge_5": 59.9
      },
      "OOS": {
        "n": 473,
        "n_wins": 221,
        "n_losses": 252,
        "n_timeouts": 0,
        "wr_pct": 46.7,
        "avg_win_pts": 14.33,
        "avg_loss_pts": 9.26,
        "profit_factor": 1.36,
        "total_pnl_pts": 834.0,
        "avg_pnl_pts": 1.76,
        "sharpe_annualized": 2.18,
        "avg_mfe": 26.77,
        "avg_mae": 7.79,
        "pct_mfe_ge_5": 75.5,
        "pct_mfe_ge_10": 53.7,
        "pct_mfe_ge_15": 39.5,
        "pct_mae_ge_5": 64.5
      }
    },
    "D": {
      "all": {
        "n": 1034,
        "n_wins": 484,
        "n_losses": 550,
        "n_timeouts": 0,
        "wr_pct": 46.8,
        "avg_win_pts": 17.18,
        "avg_loss_pts": 12.3,
        "profit_factor": 1.23,
        "total_pnl_pts": 1551.5,
        "avg_pnl_pts": 1.5,
        "sharpe_annualized": 1.42,
        "avg_mfe": 21.22,
        "avg_mae": 9.97,
        "pct_mfe_ge_5": 77.9,
        "pct_mfe_ge_10": 57.4,
        "pct_mfe_ge_15": 42.2,
        "pct_mae_ge_5": 69.7
      },
      "IS": {
        "n": 561,
        "n_wins": 273,
        "n_losses": 288,
        "n_timeouts": 0,
        "wr_pct": 48.7,
        "avg_win_pts": 15.02,
        "avg_loss_pts": 11.45,
        "profit_factor": 1.24,
        "total_pnl_pts": 804.25,
        "avg_pnl_pts": 1.43,
        "sharpe_annualized": 1.47,
        "avg_mfe": 13.29,
        "avg_mae": 9.22,
        "pct_mfe_ge_5": 76.1,
        "pct_mfe_ge_10": 53.3,
        "pct_mfe_ge_15": 37.8,
        "pct_mae_ge_5": 67.0
      },
      "OOS": {
        "n": 473,
        "n_wins": 211,
        "n_losses": 262,
        "n_timeouts": 0,
        "wr_pct": 44.6,
        "avg_win_pts": 19.98,
        "avg_loss_pts": 13.24,
        "profit_factor": 1.22,
        "total_pnl_pts": 747.25,
        "avg_pnl_pts": 1.58,
        "sharpe_annualized": 1.37,
        "avg_mfe": 30.62,
        "avg_mae": 10.86,
        "pct_mfe_ge_5": 79.9,
        "pct_mfe_ge_10": 62.2,
        "pct_mfe_ge_15": 47.4,
        "pct_mae_ge_5": 72.9
      }
    },
    "E": {
      "all": {
        "n": 1034,
        "n_wins": 624,
        "n_losses": 410,
        "n_timeouts": 0,
        "wr_pct": 60.3,
        "avg_win_pts": 8.15,
        "avg_loss_pts": 9.41,
        "profit_factor": 1.32,
        "total_pnl_pts": 1224.0,
        "avg_pnl_pts": 1.18,
        "sharpe_annualized": 1.55,
        "avg_mfe": 15.6,
        "avg_mae": 5.99,
        "pct_mfe_ge_5": 57.1,
        "pct_mfe_ge_10": 29.8,
        "pct_mfe_ge_15": 17.3,
        "pct_mae_ge_5": 49.3
      },
      "IS": {
        "n": 561,
        "n_wins": 358,
        "n_losses": 203,
        "n_timeouts": 0,
        "wr_pct": 63.8,
        "avg_win_pts": 6.67,
        "avg_loss_pts": 9.19,
        "profit_factor": 1.28,
        "total_pnl_pts": 523.0,
        "avg_pnl_pts": 0.93,
        "sharpe_annualized": 1.55,
        "avg_mfe": 7.49,
        "avg_mae": 5.32,
        "pct_mfe_ge_5": 52.2,
        "pct_mfe_ge_10": 24.8,
        "pct_mfe_ge_15": 12.7,
        "pct_mae_ge_5": 45.6
      },
      "OOS": {
        "n": 473,
        "n_wins": 266,
        "n_losses": 207,
        "n_timeouts": 0,
        "wr_pct": 56.2,
        "avg_win_pts": 10.13,
        "avg_loss_pts": 9.63,
        "profit_factor": 1.35,
        "total_pnl_pts": 701.0,
        "avg_pnl_pts": 1.48,
        "sharpe_annualized": 1.62,
        "avg_mfe": 25.21,
        "avg_mae": 6.79,
        "pct_mfe_ge_5": 62.8,
        "pct_mfe_ge_10": 35.7,
        "pct_mfe_ge_15": 22.8,
        "pct_mae_ge_5": 53.7
      }
    },
    "F": {
      "all": {
        "n": 1034,
        "n_wins": 682,
        "n_losses": 352,
        "n_timeouts": 0,
        "wr_pct": 66.0,
        "avg_win_pts": 4.08,
        "avg_loss_pts": 6.68,
        "profit_factor": 1.18,
        "total_pnl_pts": 433.5,
        "avg_pnl_pts": 0.42,
        "sharpe_annualized": 0.97,
        "avg_mfe": 13.47,
        "avg_mae": 4.09,
        "pct_mfe_ge_5": 68.8,
        "pct_mfe_ge_10": 18.0,
        "pct_mfe_ge_15": 5.2,
        "pct_mae_ge_5": 36.3
      },
      "IS": {
        "n": 561,
        "n_wins": 361,
        "n_losses": 200,
        "n_timeouts": 0,
        "wr_pct": 64.3,
        "avg_win_pts": 3.86,
        "avg_loss_pts": 6.51,
        "profit_factor": 1.07,
        "total_pnl_pts": 90.0,
        "avg_pnl_pts": 0.16,
        "sharpe_annualized": 0.41,
        "avg_mfe": 6.54,
        "avg_mae": 4.07,
        "pct_mfe_ge_5": 65.8,
        "pct_mfe_ge_10": 16.9,
        "pct_mfe_ge_15": 4.6,
        "pct_mae_ge_5": 37.4
      },
      "OOS": {
        "n": 473,
        "n_wins": 321,
        "n_losses": 152,
        "n_timeouts": 0,
        "wr_pct": 67.9,
        "avg_win_pts": 4.34,
        "avg_loss_pts": 6.9,
        "profit_factor": 1.33,
        "total_pnl_pts": 343.5,
        "avg_pnl_pts": 0.73,
        "sharpe_annualized": 1.55,
        "avg_mfe": 21.69,
        "avg_mae": 4.11,
        "pct_mfe_ge_5": 72.3,
        "pct_mfe_ge_10": 19.2,
        "pct_mfe_ge_15": 5.9,
        "pct_mae_ge_5": 34.9
      }
    }
  },
  "bounce_summary": {
    "thresholds": {
      "3pt": {
        "wr_pct": 93.5,
        "n_reached": 967,
        "avg_mins": 12.1
      },
      "5pt": {
        "wr_pct": 87.9,
        "n_reached": 909,
        "avg_mins": 23.5
      },
      "10pt": {
        "wr_pct": 73.1,
        "n_reached": 756,
        "avg_mins": 48.4
      },
      "15pt": {
        "wr_pct": 60.5,
        "n_reached": 626,
        "avg_mins": 73.8
      },
      "20pt": {
        "wr_pct": 48.2,
        "n_reached": 498,
        "avg_mins": 95.5
      }
    },
    "avg_mfbfp": 14.95,
    "median_mfbfp": 5.75,
    "p90_mfbfp": 17.25,
    "p10_mfbfp": 1.75
  },
  "width_analysis": {
    "narrow_1_2": {
      "n": 678,
      "n_wins": 434,
      "n_losses": 244,
      "n_timeouts": 0,
      "wr_pct": 64.0,
      "avg_win_pts": 4.69,
      "avg_loss_pts": 4.4,
      "profit_factor": 1.9,
      "total_pnl_pts": 962.75,
      "avg_pnl_pts": 1.42,
      "sharpe_annualized": 4.98,
      "avg_mfe": 15.32,
      "avg_mae": 2.96,
      "pct_mfe_ge_5": 58.8,
      "pct_mfe_ge_10": 4.9,
      "pct_mfe_ge_15": 1.6,
      "pct_mae_ge_5": 30.1
    },
    "medium_3_5": {
      "n": 253,
      "n_wins": 149,
      "n_losses": 104,
      "n_timeouts": 0,
      "wr_pct": 58.9,
      "avg_win_pts": 4.47,
      "avg_loss_pts": 4.34,
      "profit_factor": 1.48,
      "total_pnl_pts": 215.25,
      "avg_pnl_pts": 0.85,
      "sharpe_annualized": 2.97,
      "avg_mfe": 4.39,
      "avg_mae": 3.09,
      "pct_mfe_ge_5": 49.0,
      "pct_mfe_ge_10": 2.8,
      "pct_mfe_ge_15": 0.4,
      "pct_mae_ge_5": 34.4
    },
    "wide_6_10": {
      "n": 91,
      "n_wins": 56,
      "n_losses": 35,
      "n_timeouts": 0,
      "wr_pct": 61.5,
      "avg_win_pts": 4.41,
      "avg_loss_pts": 4.12,
      "profit_factor": 1.71,
      "total_pnl_pts": 102.5,
      "avg_pnl_pts": 1.13,
      "sharpe_annualized": 4.06,
      "avg_mfe": 4.6,
      "avg_mae": 3.31,
      "pct_mfe_ge_5": 51.6,
      "pct_mfe_ge_10": 3.3,
      "pct_mfe_ge_15": 1.1,
      "pct_mae_ge_5": 29.7
    }
  },
  "factor_conditioning": {
    "from_above": {
      "factor": "from_above",
      "n": 613,
      "n_wins": 381,
      "n_losses": 232,
      "n_timeouts": 0,
      "wr_pct": 62.2,
      "avg_win_pts": 4.63,
      "avg_loss_pts": 4.36,
      "profit_factor": 1.74,
      "total_pnl_pts": 753.75,
      "avg_pnl_pts": 1.23,
      "sharpe_annualized": 4.31,
      "avg_mfe": 4.88,
      "avg_mae": 2.96,
      "pct_mfe_ge_5": 55.0,
      "pct_mfe_ge_10": 3.9,
      "pct_mfe_ge_15": 0.8,
      "pct_mae_ge_5": 31.6
    },
    "from_below": {
      "factor": "from_below",
      "n": 421,
      "n_wins": 264,
      "n_losses": 157,
      "n_timeouts": 0,
      "wr_pct": 62.7,
      "avg_win_pts": 4.6,
      "avg_loss_pts": 4.38,
      "profit_factor": 1.77,
      "total_pnl_pts": 526.75,
      "avg_pnl_pts": 1.25,
      "sharpe_annualized": 4.39,
      "avg_mfe": 21.35,
      "avg_mae": 3.13,
      "pct_mfe_ge_5": 56.8,
      "pct_mfe_ge_10": 4.5,
      "pct_mfe_ge_15": 1.9,
      "pct_mae_ge_5": 30.9
    },
    "buy_pct_gt52": {
      "factor": "buy_pct>52%",
      "n": 265,
      "n_wins": 164,
      "n_losses": 101,
      "n_timeouts": 0,
      "wr_pct": 61.9,
      "avg_win_pts": 4.58,
      "avg_loss_pts": 4.12,
      "profit_factor": 1.8,
      "total_pnl_pts": 334.5,
      "avg_pnl_pts": 1.26,
      "sharpe_annualized": 4.51,
      "avg_mfe": 30.63,
      "avg_mae": 3.04,
      "pct_mfe_ge_5": 54.3,
      "pct_mfe_ge_10": 4.5,
      "pct_mfe_ge_15": 1.9,
      "pct_mae_ge_5": 29.1
    },
    "buy_pct_lt48": {
      "factor": "buy_pct<48%",
      "n": 256,
      "n_wins": 147,
      "n_losses": 109,
      "n_timeouts": 0,
      "wr_pct": 57.4,
      "avg_win_pts": 4.59,
      "avg_loss_pts": 4.49,
      "profit_factor": 1.38,
      "total_pnl_pts": 185.25,
      "avg_pnl_pts": 0.72,
      "sharpe_annualized": 2.47,
      "avg_mfe": 4.32,
      "avg_mae": 3.19,
      "pct_mfe_ge_5": 50.0,
      "pct_mfe_ge_10": 2.0,
      "pct_mfe_ge_15": 0.0,
      "pct_mae_ge_5": 36.3
    },
    "buy_pct_neutral": {
      "factor": "buy_pct neutral",
      "n": 513,
      "n_wins": 334,
      "n_losses": 179,
      "n_timeouts": 0,
      "wr_pct": 65.1,
      "avg_win_pts": 4.65,
      "avg_loss_pts": 4.43,
      "profit_factor": 1.96,
      "total_pnl_pts": 760.75,
      "avg_pnl_pts": 1.48,
      "sharpe_annualized": 5.24,
      "avg_mfe": 5.37,
      "avg_mae": 2.95,
      "pct_mfe_ge_5": 59.3,
      "pct_mfe_ge_10": 5.1,
      "pct_mfe_ge_15": 1.6,
      "pct_mae_ge_5": 30.0
    },
    "cum_delta_negative": {
      "factor": "cum_delta<-3105",
      "n": 259,
      "n_wins": 156,
      "n_losses": 103,
      "n_timeouts": 0,
      "wr_pct": 60.2,
      "avg_win_pts": 4.76,
      "avg_loss_pts": 4.33,
      "profit_factor": 1.66,
      "total_pnl_pts": 296.0,
      "avg_pnl_pts": 1.14,
      "sharpe_annualized": 3.95,
      "avg_mfe": 4.81,
      "avg_mae": 2.98,
      "pct_mfe_ge_5": 55.6,
      "pct_mfe_ge_10": 3.5,
      "pct_mfe_ge_15": 1.2,
      "pct_mae_ge_5": 32.4
    },
    "cum_delta_positive": {
      "factor": "cum_delta>2080",
      "n": 259,
      "n_wins": 172,
      "n_losses": 87,
      "n_timeouts": 0,
      "wr_pct": 66.4,
      "avg_win_pts": 4.51,
      "avg_loss_pts": 4.26,
      "profit_factor": 2.09,
      "total_pnl_pts": 404.0,
      "avg_pnl_pts": 1.56,
      "sharpe_annualized": 5.68,
      "avg_mfe": 31.57,
      "avg_mae": 2.8,
      "pct_mfe_ge_5": 57.5,
      "pct_mfe_ge_10": 4.6,
      "pct_mfe_ge_15": 1.5,
      "pct_mae_ge_5": 27.0
    },
    "gex_positive": {
      "factor": "GEX>0",
      "n": 671,
      "n_wins": 428,
      "n_losses": 243,
      "n_timeouts": 0,
      "wr_pct": 63.8,
      "avg_win_pts": 4.54,
      "avg_loss_pts": 4.17,
      "profit_factor": 1.92,
      "total_pnl_pts": 929.5,
      "avg_pnl_pts": 1.39,
      "sharpe_annualized": 4.99,
      "avg_mfe": 4.54,
      "avg_mae": 2.63,
      "pct_mfe_ge_5": 54.5,
      "pct_mfe_ge_10": 1.8,
      "pct_mfe_ge_15": 0.0,
      "pct_mae_ge_5": 28.3
    },
    "gex_negative": {
      "factor": "GEX<0",
      "n": 353,
      "n_wins": 211,
      "n_losses": 142,
      "n_timeouts": 0,
      "wr_pct": 59.8,
      "avg_win_pts": 4.83,
      "avg_loss_pts": 4.73,
      "profit_factor": 1.52,
      "total_pnl_pts": 347.75,
      "avg_pnl_pts": 0.99,
      "sharpe_annualized": 3.28,
      "avg_mfe": 5.88,
      "avg_mae": 3.66,
      "pct_mfe_ge_5": 58.4,
      "pct_mfe_ge_10": 8.5,
      "pct_mfe_ge_15": 3.4,
      "pct_mae_ge_5": 37.1
    },
    "rvol_high": {
      "factor": "RVOL>1.05",
      "n": 515,
      "n_wins": 321,
      "n_losses": 194,
      "n_timeouts": 0,
      "wr_pct": 62.3,
      "avg_win_pts": 4.75,
      "avg_loss_pts": 4.77,
      "profit_factor": 1.65,
      "total_pnl_pts": 598.75,
      "avg_pnl_pts": 1.16,
      "sharpe_annualized": 3.92,
      "avg_mfe": 5.45,
      "avg_mae": 3.32,
      "pct_mfe_ge_5": 58.8,
      "pct_mfe_ge_10": 5.8,
      "pct_mfe_ge_15": 2.1,
      "pct_mae_ge_5": 35.1
    },
    "rvol_low": {
      "factor": "RVOL<=1.05",
      "n": 516,
      "n_wins": 323,
      "n_losses": 193,
      "n_timeouts": 0,
      "wr_pct": 62.6,
      "avg_win_pts": 4.49,
      "avg_loss_pts": 3.95,
      "profit_factor": 1.9,
      "total_pnl_pts": 686.75,
      "avg_pnl_pts": 1.33,
      "sharpe_annualized": 4.87,
      "avg_mfe": 17.76,
      "avg_mae": 2.73,
      "pct_mfe_ge_5": 52.7,
      "pct_mfe_ge_10": 2.5,
      "pct_mfe_ge_15": 0.4,
      "pct_mae_ge_5": 27.3
    },
    "morning_930_1100": {
      "factor": "09:30-11:00",
      "n": 699,
      "n_wins": 441,
      "n_losses": 258,
      "n_timeouts": 0,
      "wr_pct": 63.1,
      "avg_win_pts": 4.65,
      "avg_loss_pts": 4.48,
      "profit_factor": 1.77,
      "total_pnl_pts": 894.0,
      "avg_pnl_pts": 1.28,
      "sharpe_annualized": 4.45,
      "avg_mfe": 14.83,
      "avg_mae": 3.06,
      "pct_mfe_ge_5": 57.2,
      "pct_mfe_ge_10": 4.1,
      "pct_mfe_ge_15": 1.4,
      "pct_mae_ge_5": 31.9
    },
    "midday_1100_1400": {
      "factor": "11:00-14:00",
      "n": 232,
      "n_wins": 140,
      "n_losses": 92,
      "n_timeouts": 0,
      "wr_pct": 60.3,
      "avg_win_pts": 4.43,
      "avg_loss_pts": 4.01,
      "profit_factor": 1.68,
      "total_pnl_pts": 251.0,
      "avg_pnl_pts": 1.08,
      "sharpe_annualized": 3.91,
      "avg_mfe": 4.63,
      "avg_mae": 3.0,
      "pct_mfe_ge_5": 49.6,
      "pct_mfe_ge_10": 3.0,
      "pct_mfe_ge_15": 0.9,
      "pct_mae_ge_5": 29.3
    },
    "afternoon_1400_1600": {
      "factor": "14:00-16:00",
      "n": 103,
      "n_wins": 64,
      "n_losses": 39,
      "n_timeouts": 0,
      "wr_pct": 62.1,
      "avg_win_pts": 4.85,
      "avg_loss_pts": 4.49,
      "profit_factor": 1.77,
      "total_pnl_pts": 135.5,
      "avg_pnl_pts": 1.32,
      "sharpe_annualized": 4.5,
      "avg_mfe": 5.21,
      "avg_mae": 2.87,
      "pct_mfe_ge_5": 59.2,
      "pct_mfe_ge_10": 6.8,
      "pct_mfe_ge_15": 1.0,
      "pct_mae_ge_5": 32.0
    },
    "high_zone_vol": {
      "factor": "zone_vol>52714",
      "n": 517,
      "n_wins": 317,
      "n_losses": 200,
      "n_timeouts": 0,
      "wr_pct": 61.3,
      "avg_win_pts": 4.47,
      "avg_loss_pts": 4.26,
      "profit_factor": 1.66,
      "total_pnl_pts": 563.75,
      "avg_pnl_pts": 1.09,
      "sharpe_annualized": 3.87,
      "avg_mfe": 4.59,
      "avg_mae": 2.94,
      "pct_mfe_ge_5": 51.3,
      "pct_mfe_ge_10": 2.5,
      "pct_mfe_ge_15": 0.6,
      "pct_mae_ge_5": 31.3
    },
    "low_zone_vol": {
      "factor": "zone_vol<=52714",
      "n": 517,
      "n_wins": 328,
      "n_losses": 189,
      "n_timeouts": 0,
      "wr_pct": 63.4,
      "avg_win_pts": 4.77,
      "avg_loss_pts": 4.48,
      "profit_factor": 1.85,
      "total_pnl_pts": 716.75,
      "avg_pnl_pts": 1.39,
      "sharpe_annualized": 4.8,
      "avg_mfe": 18.58,
      "avg_mae": 3.12,
      "pct_mfe_ge_5": 60.2,
      "pct_mfe_ge_10": 5.8,
      "pct_mfe_ge_15": 1.9,
      "pct_mae_ge_5": 31.3
    }
  },
  "oos_simulation": {
    "total_pnl_pts": 674.25,
    "max_drawdown_pts": 27.25,
    "positive_months": 13,
    "total_months": 15,
    "monthly_pnl": {
      "2024-10": 14.5,
      "2024-11": 97.75,
      "2024-12": 30.0,
      "2025-01": 55.0,
      "2025-02": 66.75,
      "2025-03": 70.0,
      "2025-04": 65.0,
      "2025-05": 60.25,
      "2025-06": -8.0,
      "2025-07": 61.25,
      "2025-08": 47.75,
      "2025-09": 42.25,
      "2025-10": 46.75,
      "2026-02": 25.0,
      "2026-03": 0.0
    },
    "trade_log": [
      {
        "date": "2025-09-12",
        "day_pnl": 15.0,
        "running_pnl": 605.25
      },
      {
        "date": "2025-09-23",
        "day_pnl": -3.5,
        "running_pnl": 601.75
      },
      {
        "date": "2025-09-24",
        "day_pnl": 0.0,
        "running_pnl": 601.75
      },
      {
        "date": "2025-09-26",
        "day_pnl": 0.0,
        "running_pnl": 601.75
      },
      {
        "date": "2025-09-29",
        "day_pnl": 5.0,
        "running_pnl": 606.75
      },
      {
        "date": "2025-09-30",
        "day_pnl": -4.25,
        "running_pnl": 602.5
      },
      {
        "date": "2025-10-01",
        "day_pnl": -5.0,
        "running_pnl": 597.5
      },
      {
        "date": "2025-10-02",
        "day_pnl": 0.0,
        "running_pnl": 597.5
      },
      {
        "date": "2025-10-03",
        "day_pnl": 5.0,
        "running_pnl": 602.5
      },
      {
        "date": "2025-10-06",
        "day_pnl": 9.0,
        "running_pnl": 611.5
      },
      {
        "date": "2025-10-07",
        "day_pnl": 5.0,
        "running_pnl": 616.5
      },
      {
        "date": "2025-10-08",
        "day_pnl": 5.0,
        "running_pnl": 621.5
      },
      {
        "date": "2025-10-09",
        "day_pnl": 10.0,
        "running_pnl": 631.5
      },
      {
        "date": "2025-10-13",
        "day_pnl": 5.0,
        "running_pnl": 636.5
      },
      {
        "date": "2025-10-14",
        "day_pnl": -5.0,
        "running_pnl": 631.5
      },
      {
        "date": "2025-10-15",
        "day_pnl": 0.0,
        "running_pnl": 631.5
      },
      {
        "date": "2025-10-16",
        "day_pnl": 20.0,
        "running_pnl": 651.5
      },
      {
        "date": "2025-10-17",
        "day_pnl": -15.0,
        "running_pnl": 636.5
      },
      {
        "date": "2025-10-21",
        "day_pnl": 0.0,
        "running_pnl": 636.5
      },
      {
        "date": "2025-10-23",
        "day_pnl": 12.75,
        "running_pnl": 649.25
      },
      {
        "date": "2026-02-17",
        "day_pnl": 0.0,
        "running_pnl": 649.25
      },
      {
        "date": "2026-02-18",
        "day_pnl": -5.0,
        "running_pnl": 644.25
      },
      {
        "date": "2026-02-19",
        "day_pnl": 5.0,
        "running_pnl": 649.25
      },
      {
        "date": "2026-02-20",
        "day_pnl": 15.0,
        "running_pnl": 664.25
      },
      {
        "date": "2026-02-23",
        "day_pnl": 5.0,
        "running_pnl": 669.25
      },
      {
        "date": "2026-02-24",
        "day_pnl": 5.0,
        "running_pnl": 674.25
      },
      {
        "date": "2026-02-26",
        "day_pnl": 0.0,
        "running_pnl": 674.25
      },
      {
        "date": "2026-03-02",
        "day_pnl": -5.0,
        "running_pnl": 669.25
      },
      {
        "date": "2026-03-09",
        "day_pnl": 0.0,
        "running_pnl": 669.25
      },
      {
        "date": "2026-03-20",
        "day_pnl": 5.0,
        "running_pnl": 674.25
      }
    ]
  },
  "comparison": {
    "prior_3pt_threshold": {
      "wr_pct": 95.0,
      "avg_move_pts": "0-6",
      "tradeable": "Questionable",
      "notes": "3pt breakout threshold too small \u2014 could be noise"
    },
    "best_realistic_A": {
      "wr_pct": 64.5,
      "avg_move_pts": 1.43,
      "profit_factor": 1.85,
      "sharpe": 4.87,
      "tradeable": "Yes"
    }
  },
  "sample_events": [
    {
      "date": "2023-03-02",
      "approach_time": "2023-03-02 10:36:00-05:00",
      "approach_bar_idx": 66,
      "approach_dir": "from_above",
      "entry_price": 3950.0,
      "zone_center": 3952.5,
      "zone_low": 3950.0,
      "zone_high": 3955.0,
      "zone_width": 6.0,
      "zone_volume": 422104.0,
      "zone_delta": -2424.0,
      "zone_vpoc": 3954.0,
      "buy_pct_15m": 0.5425484288600917,
      "buy_pct_30m": 0.510318035246075,
      "session_cum_delta": 8874.0,
      "rvol": NaN,
      "gex": -225.61243570471584,
      "is_oos": "IS",
      "tod_hour": 10,
      "trade_dir": "long",
      "strategy_results": {
        "A": {
          "outcome": "loss",
          "pnl": -5.0,
          "mfe": 1.0,
          "mae": 5.25,
          "exit_bar": 2,
          "exit_price": 3945.0
        },
        "B": {
          "outcome": "win",
          "pnl": 2.5,
          "mfe": 4.5,
          "mae": 7.0,
          "exit_bar": 0,
          "exit_price": 3952.5
        },
        "C": {
          "outcome": "loss",
          "pnl": -6.5,
          "mfe": 4.5,
          "mae": 7.0,
          "exit_bar": 0,
          "exit_price": 3943.5
        },
        "D": {
          "outcome": "win",
          "pnl": 0.75,
          "mfe": 4.5,
          "mae": 7.75,
          "exit_bar": 0,
          "exit_price": 3950.75
        },
        "E": {
          "outcome": "win",
          "pnl": 4.0,
          "mfe": 4.5,
          "mae": 7.0,
          "exit_bar": 25,
          "exit_price": 3954.0
        },
        "F": {
          "outcome": "loss",
          "pnl": -6.5,
          "mfe": 4.5,
          "mae": 7.0,
          "exit_bar": 0,
          "exit_price": 3943.5
        }
      },
      "bounce": {
        "reaches_3pt": true,
        "mins_to_3pt": 26,
        "reaches_5pt": true,
        "mins_to_5pt": 179,
        "reaches_10pt": true,
        "mins_to_10pt": 180,
        "reaches_15pt": true,
        "mins_to_15pt": 180,
        "reaches_20pt": true,
        "mins_to_20pt": 204,
        "mfbfp": 1.0
      }
    },
    {
      "date": "2023-03-02",
      "approach_time": "2023-03-02 13:57:00-05:00",
      "approach_bar_idx": 267,
      "approach_dir": "from_below",
      "entry_price": 3968.0,
      "zone_center": 3968.0,
      "zone_low": 3968.0,
      "zone_high": 3968.0,
      "zone_width": 1.0,
      "zone_volume": 99792.0,
      "zone_delta": -290.0,
      "zone_vpoc": 3954.0,
      "buy_pct_15m": 0.5192879589985869,
      "buy_pct_30m": 0.5345569023080273,
      "session_cum_delta": 18735.0,
      "rvol": NaN,
      "gex": -225.61243570471584,
      "is_oos": "IS",
      "tod_hour": 13,
      "trade_dir": "short",
      "strategy_results": {
        "A": {
          "outcome": "loss",
          "pnl": -5.0,
          "mfe": 2.25,
          "mae": 6.75,
          "exit_bar": 2,
          "exit_price": 3973.0
        },
        "B": {
          "outcome": "loss",
          "pnl": -8.0,
          "mfe": 2.25,
          "mae": 9.25,
          "exit_bar": 3,
          "exit_price": 3976.0
        },
        "C": {
          "outcome": "loss",
          "pnl": -10.0,
          "mfe": 2.25,
          "mae": 10.0,
          "exit_bar": 5,
          "exit_price": 3978.0
        },
        "D": {
          "outcome": "loss",
          "pnl": -15.0,
          "mfe": 2.25,
          "mae": 15.0,
          "exit_bar": 78,
          "exit_price": 3983.0
        },
        "E": {
          "outcome": "loss",
          "pnl": -10.0,
          "mfe": 2.25,
          "mae": 10.0,
          "exit_bar": 5,
          "exit_price": 3978.0
        },
        "F": {
          "outcome": "loss",
          "pnl": -8.0,
          "mfe": 2.25,
          "mae": 9.25,
          "exit_bar": 3,
          "exit_price": 3976.0
        }
      },
      "bounce": {
        "reaches_3pt": false,
        "mins_to_3pt": null,
        "reaches_5pt": false,
        "mins_to_5pt": null,
        "reaches_10pt": false,
        "mins_to_10pt": null,
        "reaches_15pt": false,
        "mins_to_15pt": null,
        "reaches_20pt": false,
        "mins_to_20pt": null,
        "mfbfp": 2.25
      }
    },
    {
      "date": "2023-03-07",
      "approach_time": "2023-03-07 09:35:00-05:00",
      "approach_bar_idx": 5,
      "approach_dir": "from_below",
      "entry_price": 4054.0,
      "zone_center": 4054.0,
      "zone_low": 4054.0,
      "zone_high": 4054.0,
      "zone_width": 1.0,
      "zone_volume": 44102.0,
      "zone_delta": 422.0,
      "zone_vpoc": 4076.0,
      "buy_pct_15m": 0.5029048115596604,
      "buy_pct_30m": 0.5029048115596604,
      "session_cum_delta": 234.0,
      "rvol": NaN,
      "gex": -243.65221209859607,
      "is_oos": "IS",
      "tod_hour": 9,
      "trade_dir": "short",
      "strategy_results": {
        "A": {
          "outcome": "win",
          "pnl": 5.0,
          "mfe": 5.0,
          "mae": 0.0,
          "exit_bar": 6,
          "exit_price": 4049.0
        },
        "B": {
          "outcome": "win",
          "pnl": 10.0,
          "mfe": 19.5,
          "mae": 0.0,
          "exit_bar": 24,
          "exit_price": 4044.0
        },
        "C": {
          "outcome": "win",
          "pnl": 20.0,
          "mfe": 26.5,
          "mae": 0.0,
          "exit_bar": 25,
          "exit_price": 4034.0
        },
        "D": {
          "outcome": "win",
          "pnl": 30.0,
          "mfe": 30.0,
          "mae": 0.0,
          "exit_bar": 27,
          "exit_price": 4024.0
        },
        "E": {
          "outcome": "win",
          "pnl": 22.0,
          "mfe": 26.5,
          "mae": 0.0,
          "exit_bar": 25,
          "exit_price": 4032.0
        },
        "F": {
          "outcome": "win",
          "pnl": 1.0,
          "mfe": 6.0,
          "mae": 0.0,
          "exit_bar": 13,
          "exit_price": 4053.0
        }
      },
      "bounce": {
        "reaches_3pt": true,
        "mins_to_3pt": 1,
        "reaches_5pt": true,
        "mins_to_5pt": 7,
        "reaches_10pt": true,
        "mins_to_10pt": 25,
        "reaches_15pt": true,
        "mins_to_15pt": 25,
        "reaches_20pt": true,
        "mins_to_20pt": 26,
        "mfbfp": 6.0
      }
    },
    {
      "date": "2023-03-08",
      "approach_time": "2023-03-08 09:34:00-05:00",
      "approach_bar_idx": 4,
      "approach_dir": "from_above",
      "entry_price": 3988.0,
      "zone_center": 3988.0,
      "zone_low": 3988.0,
      "zone_high": 3988.0,
      "zone_width": 1.0,
      "zone_volume": 39741.0,
      "zone_delta": 437.0,
      "zone_vpoc": 3989.0,
      "buy_pct_15m": 0.48843130742831836,
      "buy_pct_30m": 0.48843130742831836,
      "session_cum_delta": -1045.0,
      "rvol": 1.0389060434230102,
      "gex": -231.8254177149337,
      "is_oos": "IS",
      "tod_hour": 9,
      "trade_dir": "long",
      "strategy_results": {
        "A": {
          "outcome": "win",
          "pnl": 1.25,
          "mfe": 3.75,
          "mae": 2.5,
          "exit_bar": 0,
          "exit_price": 3989.25
        },
        "B": {
          "outcome": "loss",
          "pnl": -8.0,
          "mfe": 7.75,
          "mae": 9.25,
          "exit_bar": 25,
          "exit_price": 3980.0
        },
        "C": {
          "outcome": "loss",
          "pnl": -10.0,
          "mfe": 7.75,
          "mae": 13.75,
          "exit_bar": 26,
          "exit_price": 3978.0
        },
        "D": {
          "outcome": "loss",
          "pnl": -1.25,
          "mfe": 15.25,
          "mae": 13.75,
          "exit_bar": 0,
          "exit_price": 3986.75
        },
        "E": {
          "outcome": "win",
          "pnl": 1.0,
          "mfe": 3.25,
          "mae": 0.0,
          "exit_bar": 0,
          "exit_price": 3989.0
        },
        "F": {
          "outcome": "loss",
          "pnl": -8.0,
          "mfe": 7.75,
          "mae": 9.25,
          "exit_bar": 25,
          "exit_price": 3980.0
        }
      },
      "bounce": {
        "reaches_3pt": true,
        "mins_to_3pt": 1,
        "reaches_5pt": true,
        "mins_to_5pt": 23,
        "reaches_10pt": true,
        "mins_to_10pt": 50,
        "reaches_15pt": true,
        "mins_to_15pt": 62,
        "reaches_20pt": false,
        "mins_to_20pt": null,
        "mfbfp": 7.75
      }
    },
    {
      "date": "2023-03-09",
      "approach_time": "2023-03-09 12:01:00-05:00",
      "approach_bar_idx": 151,
      "approach_dir": "from_above",
      "entry_price": 3992.0,
      "zone_center": 3992.0,
      "zone_low": 3992.0,
      "zone_high": 3992.0,
      "zone_width": 1.0,
      "zone_volume": 48665.0,
      "zone_delta": -751.0,
      "zone_vpoc": 3994.0,
      "buy_pct_15m": 0.44256590797445555,
      "buy_pct_30m": 0.47564980662446255,
      "session_cum_delta": -21156.0,
      "rvol": 1.3831354349783784,
      "gex": -400.89359783570393,
      "is_oos": "IS",
      "tod_hour": 12,
      "trade_dir": "long",
      "strategy_results": {
        "A": {
          "outcome": "loss",
          "pnl": -5.0,
          "mfe": 1.25,
          "mae": 6.0,
          "exit_bar": 0,
          "exit_price": 3987.0
        },
        "B": {
          "outcome": "win",
          "pnl": 5.25,
          "mfe": 5.75,
          "mae": 6.0,
          "exit_bar": 0,
          "exit_price": 3997.25
        },
        "C": {
          "outcome": "loss",
          "pnl": -10.0,
          "mfe": 5.75,
          "mae": 10.5,
          "exit_bar": 47,
          "exit_price": 3982.0
        },
        "D": {
          "outcome": "loss",
          "pnl": -15.0,
          "mfe": 5.75,
          "mae": 15.75,
          "exit_bar": 76,
          "exit_price": 3977.0
        },
        "E": {
          "outcome": "win",
          "pnl": 2.0,
          "mfe": 2.5,
          "mae": 6.0,
          "exit_bar": 20,
          "exit_price": 3994.0
        },
        "F": {
          "outcome": "win",
          "pnl": 0.75,
          "mfe": 5.75,
          "mae": 6.0,
          "exit_bar": 33,
          "exit_price": 3992.75
        }
      },
      "bounce": {
        "reaches_3pt": true,
        "mins_to_3pt": 22,
        "reaches_5pt": true,
        "mins_to_5pt": 26,
        "reaches_10pt": false,
        "mins_to_10pt": null,
        "reaches_15pt": false,
        "mins_to_15pt": null,
        "reaches_20pt": false,
        "mins_to_20pt": null,
        "mfbfp": 1.25
      }
    }
  ]
}