{
  "created_before_first_returns": true,
  "rules": [
    {
      "name": "baseline40_cash",
      "family": "baseline40",
      "defense": "cash",
      "vol": 0.25
    },
    {
      "name": "baseline40_gold10",
      "family": "baseline40",
      "defense": "gold10",
      "vol": 0.25
    },
    {
      "name": "ensemble20_40_80_cash",
      "family": "ensemble20_40_80",
      "defense": "cash",
      "vol": 0.25
    },
    {
      "name": "ensemble20_40_80_gold10",
      "family": "ensemble20_40_80",
      "defense": "gold10",
      "vol": 0.25
    },
    {
      "name": "weekly_buffer40_cash",
      "family": "weekly_buffer40",
      "defense": "cash",
      "vol": 0.25
    },
    {
      "name": "weekly_buffer40_gold10",
      "family": "weekly_buffer40",
      "defense": "gold10",
      "vol": 0.25
    },
    {
      "name": "daily_exit40_cash",
      "family": "daily_exit40",
      "defense": "cash",
      "vol": 0.25
    },
    {
      "name": "daily_exit40_gold10",
      "family": "daily_exit40",
      "defense": "gold10",
      "vol": 0.25
    },
    {
      "name": "own_trend40_cash",
      "family": "own_trend40",
      "defense": "cash",
      "vol": 0.25
    },
    {
      "name": "own_trend40_gold10",
      "family": "own_trend40",
      "defense": "gold10",
      "vol": 0.25
    },
    {
      "name": "momentum120_skip20_cash",
      "family": "momentum120_skip20",
      "defense": "cash",
      "vol": 0.25
    },
    {
      "name": "momentum120_skip20_gold10",
      "family": "momentum120_skip20",
      "defense": "gold10",
      "vol": 0.25
    },
    {
      "name": "qdii_fallback_cash",
      "family": "qdii_fallback",
      "defense": "cash",
      "vol": 0.25
    },
    {
      "name": "qdii_fallback_gold10",
      "family": "qdii_fallback",
      "defense": "gold10",
      "vol": 0.25
    },
    {
      "name": "qdii30_sleeve_cash",
      "family": "qdii30_sleeve",
      "defense": "cash",
      "vol": 0.25
    },
    {
      "name": "qdii30_sleeve_gold10",
      "family": "qdii30_sleeve",
      "defense": "gold10",
      "vol": 0.25
    },
    {
      "name": "vol30_cash",
      "family": "vol30",
      "defense": "cash",
      "vol": 0.3
    },
    {
      "name": "vol30_gold10",
      "family": "vol30",
      "defense": "gold10",
      "vol": 0.3
    },
    {
      "name": "baseline40_gold",
      "family": "baseline40",
      "defense": "gold",
      "vol": 0.25
    }
  ],
  "families": [
    "baseline40",
    "ensemble20_40_80",
    "weekly_buffer40",
    "daily_exit40",
    "own_trend40",
    "momentum120_skip20",
    "qdii_fallback",
    "qdii30_sleeve",
    "vol30"
  ],
  "stresses": [
    [
      "cost50",
      0.005,
      0,
      0
    ],
    [
      "offset2",
      0.002,
      2,
      0
    ],
    [
      "offset5",
      0.002,
      5,
      0
    ],
    [
      "delay2",
      0.002,
      0,
      2
    ],
    [
      "joint_cost50_offset5",
      0.005,
      5,
      0
    ]
  ],
  "target_cagr": 20,
  "mdd_budget": [
    25,
    30
  ],
  "leverage": false,
  "gold_target_cap": 0.1,
  "all_history_already_seen": true,
  "no_primary_selected_by_new_results": true,
  "period": [
    "20190102",
    "20260811"
  ],
  "cost_each_side": 0.002,
  "cash_interest": 0,
  "selection_rule": "Full CAGR>=20 and MDD>=-30, then same requirements in EVERY fixed stress; this is historical screening, never certification of future returns.",
  "note": "Initial rule list is not edited after initial returns. Risk budget30 is a control, not a MDD permission change."
}