{
  "schema_version": "1.0",
  "report_type": "lsri_walk_forward_validation",
  "generated_at_utc": "2026-03-30T17:47:39.741445+00:00",
  "dataset": {
    "source_file": "G:/applications/crypto_site/data/sol_ohlcv.csv",
    "rows": 2181
  },
  "methodology": {
    "causal_rule": "signal(t) = f(data <= t), execution approx. open(t+1)",
    "validation_protocol": "walk-forward out-of-sample",
    "baseline": "buy_hold",
    "strategy_tested": "lsri_stress"
  },
  "window_config": {
    "train_size": 504,
    "test_size": 126,
    "step_size": 126
  },
  "detection_overrides": {
    "thr_vigilance": 2.3,
    "thr_stress": 7.2,
    "thr_critical": 12.0,
    "confirm_vigilance_days": 2,
    "confirm_stress_days": 2
  },
  "backtest_overrides": {
    "reentry_days": 18
  },
  "key_metrics": {
    "num_folds": 13,
    "avg_excess_return_vs_buy_hold": -19.2685,
    "avg_strategy_return": 10.7054,
    "avg_buy_hold_return": 29.9738,
    "avg_strategy_max_drawdown": -34.0008,
    "avg_trading_cost": 85.4538,
    "total_alerts_oos": 429,
    "oos_volatility_lsri_annualized_pct": 65.064,
    "oos_volatility_buy_hold_annualized_pct": 84.142,
    "oos_volatility_reduction_pct_points": 19.078,
    "oos_volatility_reduction_vs_buy_hold_pct": 22.673,
    "oos_sharpe_lsri": 0.3993,
    "oos_sharpe_buy_hold": 0.4331,
    "oos_sharpe_delta_vs_buy_hold": -0.0338
  },
  "regime_breakdown": {
    "unknown": {
      "num_folds": 13,
      "avg_excess_return_vs_buy_hold": -19.2685,
      "avg_strategy_return": 10.7054,
      "avg_buy_hold_return": 29.9738,
      "avg_strategy_max_drawdown": -34.0008,
      "avg_trading_cost": 85.4538
    }
  },
  "folds": [
    {
      "fold_id": 0,
      "train_start": 0,
      "train_end": 504,
      "test_start": 504,
      "test_end": 630,
      "regime": "unknown",
      "num_alerts_oos": 52,
      "strategy_total_return": 55.96,
      "buy_hold_total_return": 130.57,
      "excess_return_vs_buy_hold": -74.61,
      "strategy_max_drawdown": -34.47,
      "buy_hold_max_drawdown": -40.78,
      "strategy_total_trading_cost": 149.89
    },
    {
      "fold_id": 1,
      "train_start": 126,
      "train_end": 630,
      "test_start": 630,
      "test_end": 756,
      "regime": "unknown",
      "num_alerts_oos": 10,
      "strategy_total_return": -45.96,
      "buy_hold_total_return": -51.09,
      "excess_return_vs_buy_hold": 5.13,
      "strategy_max_drawdown": -53.44,
      "buy_hold_max_drawdown": -55.78,
      "strategy_total_trading_cost": 32.22
    },
    {
      "fold_id": 2,
      "train_start": 252,
      "train_end": 756,
      "test_start": 756,
      "test_end": 882,
      "regime": "unknown",
      "num_alerts_oos": 66,
      "strategy_total_return": -36.62,
      "buy_hold_total_return": -60.33,
      "excess_return_vs_buy_hold": 23.71,
      "strategy_max_drawdown": -36.62,
      "buy_hold_max_drawdown": -66.72,
      "strategy_total_trading_cost": 115.4
    },
    {
      "fold_id": 3,
      "train_start": 378,
      "train_end": 882,
      "test_start": 882,
      "test_end": 1008,
      "regime": "unknown",
      "num_alerts_oos": 29,
      "strategy_total_return": -23.06,
      "buy_hold_total_return": -50.62,
      "excess_return_vs_buy_hold": 27.56,
      "strategy_max_drawdown": -45.49,
      "buy_hold_max_drawdown": -74.21,
      "strategy_total_trading_cost": 55.05
    },
    {
      "fold_id": 4,
      "train_start": 504,
      "train_end": 1008,
      "test_start": 1008,
      "test_end": 1134,
      "regime": "unknown",
      "num_alerts_oos": 10,
      "strategy_total_return": 18.34,
      "buy_hold_total_return": 22.26,
      "excess_return_vs_buy_hold": -3.92,
      "strategy_max_drawdown": -33.89,
      "buy_hold_max_drawdown": -33.89,
      "strategy_total_trading_cost": 58.64
    },
    {
      "fold_id": 5,
      "train_start": 630,
      "train_end": 1134,
      "test_start": 1134,
      "test_end": 1260,
      "regime": "unknown",
      "num_alerts_oos": 1,
      "strategy_total_return": -4.41,
      "buy_hold_total_return": -4.41,
      "excess_return_vs_buy_hold": 0.0,
      "strategy_max_drawdown": -35.24,
      "buy_hold_max_drawdown": -35.24,
      "strategy_total_trading_cost": 14.98
    },
    {
      "fold_id": 6,
      "train_start": 756,
      "train_end": 1260,
      "test_start": 1260,
      "test_end": 1386,
      "regime": "unknown",
      "num_alerts_oos": 75,
      "strategy_total_return": 82.72,
      "buy_hold_total_return": 345.42,
      "excess_return_vs_buy_hold": -262.7,
      "strategy_max_drawdown": -18.25,
      "buy_hold_max_drawdown": -30.97,
      "strategy_total_trading_cost": 239.13
    },
    {
      "fold_id": 7,
      "train_start": 882,
      "train_end": 1386,
      "test_start": 1386,
      "test_end": 1512,
      "regime": "unknown",
      "num_alerts_oos": 51,
      "strategy_total_return": 25.64,
      "buy_hold_total_return": 91.88,
      "excess_return_vs_buy_hold": -66.24,
      "strategy_max_drawdown": -37.42,
      "buy_hold_max_drawdown": -37.42,
      "strategy_total_trading_cost": 91.49
    },
    {
      "fold_id": 8,
      "train_start": 1008,
      "train_end": 1512,
      "test_start": 1512,
      "test_end": 1638,
      "regime": "unknown",
      "num_alerts_oos": 4,
      "strategy_total_return": -18.2,
      "buy_hold_total_return": -18.2,
      "excess_return_vs_buy_hold": 0.0,
      "strategy_max_drawdown": -32.4,
      "buy_hold_max_drawdown": -32.4,
      "strategy_total_trading_cost": 14.98
    },
    {
      "fold_id": 9,
      "train_start": 1134,
      "train_end": 1638,
      "test_start": 1638,
      "test_end": 1764,
      "regime": "unknown",
      "num_alerts_oos": 41,
      "strategy_total_return": 99.98,
      "buy_hold_total_return": 38.53,
      "excess_return_vs_buy_hold": 61.45,
      "strategy_max_drawdown": -16.41,
      "buy_hold_max_drawdown": -29.91,
      "strategy_total_trading_cost": 136.64
    },
    {
      "fold_id": 10,
      "train_start": 1260,
      "train_end": 1764,
      "test_start": 1764,
      "test_end": 1890,
      "regime": "unknown",
      "num_alerts_oos": 35,
      "strategy_total_return": -14.81,
      "buy_hold_total_return": -19.6,
      "excess_return_vs_buy_hold": 4.79,
      "strategy_max_drawdown": -33.63,
      "buy_hold_max_drawdown": -47.37,
      "strategy_total_trading_cost": 115.15
    },
    {
      "fold_id": 11,
      "train_start": 1386,
      "train_end": 1890,
      "test_start": 1890,
      "test_end": 2016,
      "regime": "unknown",
      "num_alerts_oos": 20,
      "strategy_total_return": 20.7,
      "buy_hold_total_return": 20.7,
      "excess_return_vs_buy_hold": 0.0,
      "strategy_max_drawdown": -28.1,
      "buy_hold_max_drawdown": -28.1,
      "strategy_total_trading_cost": 14.98
    },
    {
      "fold_id": 12,
      "train_start": 1512,
      "train_end": 2016,
      "test_start": 2016,
      "test_end": 2142,
      "regime": "unknown",
      "num_alerts_oos": 35,
      "strategy_total_return": -21.11,
      "buy_hold_total_return": -55.45,
      "excess_return_vs_buy_hold": 34.34,
      "strategy_max_drawdown": -36.65,
      "buy_hold_max_drawdown": -60.91,
      "strategy_total_trading_cost": 72.35
    }
  ]
}