{
  "version": "diversified-defensive-overlay-v1",
  "status": "exploratory_research_not_live_policy",
  "start": "2007-05-30",
  "cutoff": "2026-11-03",
  "assets": [
    "SPY",
    "TLT",
    "GLD",
    "BIL"
  ],
  "base_weights": [
    0.25,
    0.25,
    0.25,
    0.25
  ],
  "principle": "Keep diversified asset sleeves. No redistribution of sold sleeves into remaining risk assets; move proceeds to BIL. No shorting or 70% equity target.",
  "main_cases": [
    {
      "id": "Trend10",
      "kind": "monthly_ma",
      "months": 10,
      "floor": 0
    },
    {
      "id": "Trend10-half",
      "kind": "monthly_ma",
      "months": 10,
      "floor": 0.5
    },
    {
      "id": "Daily200-buffer",
      "kind": "daily_ma",
      "days": 200,
      "buffer": 0.02,
      "floor": 0
    },
    {
      "id": "Momentum12",
      "kind": "momentum",
      "months": 12,
      "floor": 0
    },
    {
      "id": "Drawdown8-half",
      "kind": "drawdown",
      "exit": 0.08,
      "reenter": 0.04,
      "floor": 0.5
    },
    {
      "id": "Volatility6",
      "kind": "volatility",
      "days": 60,
      "target": 0.06,
      "deadband": 0.1
    },
    {
      "id": "Trend10-leverage1.5",
      "kind": "monthly_ma",
      "months": 10,
      "floor": 0,
      "leverage": 1.5
    },
    {
      "id": "Trend10-conditional1.5",
      "kind": "monthly_ma",
      "months": 10,
      "floor": 0,
      "conditional_leverage": 1.5
    }
  ],
  "sensitivity_cases": [
    {
      "id": "Trend8",
      "kind": "monthly_ma",
      "months": 8,
      "floor": 0
    },
    {
      "id": "Trend12",
      "kind": "monthly_ma",
      "months": 12,
      "floor": 0
    },
    {
      "id": "Daily150-buffer",
      "kind": "daily_ma",
      "days": 150,
      "buffer": 0.02,
      "floor": 0
    },
    {
      "id": "Daily250-buffer",
      "kind": "daily_ma",
      "days": 250,
      "buffer": 0.02,
      "floor": 0
    },
    {
      "id": "Drawdown10-half",
      "kind": "drawdown",
      "exit": 0.1,
      "reenter": 0.05,
      "floor": 0.5
    },
    {
      "id": "Volatility8",
      "kind": "volatility",
      "days": 60,
      "target": 0.08,
      "deadband": 0.1
    }
  ],
  "monthly_ma": "At first session of month, each risk sleeve held if last completed month-end adjusted price >= mean of latest N completed month-end prices; otherwise zero or half of its 25% allocation. Initial entry uses last completed month even if midmonth.",
  "daily_ma": "Each close compare total-return price to N-session average: below 98% exits, above 102% reenters; retain state in buffer. Initial historical state uses price >= average at first valid warmup date. Trade at next session close if state changed; also monthly rebalance. Full portfolio resets on signal changes, so turnover includes trades in unaffected sleeves.",
  "momentum": "Last completed month-end total-return price vs 12 months earlier; >= means held, otherwise BIL. Monthly only.",
  "drawdown": "Use unfiltered costless monthly 25/25/25/25 reference NAV, not defensive strategy NAV. At >=8% reference drawdown halve all three risk sleeves; reenter only after reference drawdown <=4%. Signal at close, execute next close; monthly rebalance. This avoids a permanently defensive strategy waiting for its own NAV to recover.",
  "volatility": "60-session sample standard deviation of daily 0.25*(SPY return + TLT return + GLD return), annualized sqrt252. BIL treated as zero-risk in estimator only; actual BIL returns included in realized NAV. Scale risk sleeves by min(1,target/estimated volatility). Update at next close when scale differs by >=0.10 or monthly; excess to BIL. No leverage.",
  "leverage": "Isolated experiments: always 1.5x, or 1.5x only if all three risk sleeves pass monthly trend; otherwise 1x. Compare monthly permanent portfolio 1.5x. Share of gross target risky sleeve <=25%; leveraged NAV exposure can exceed 25% and drifts.",
  "cost_bps": 5,
  "cost_sensitivity_bps": [
    0,
    20
  ],
  "funding_spread": 0.015,
  "funding": "Historical DFF proxy plus spread, ACT/360 actual days, rate strictly before previous equity session. Not broker quotation. Existing ETF expenses not deducted twice.",
  "leverage_guard": "Gross exposure/NAV >2.5 at close triggers next-close reduction to at most 1x, restoring normal leverage only at a scheduled/signal rebalance. Not a broker liquidation model.",
  "execution": "Signals contain no same-day execution close. Close to next-close latency includes overnight gaps; ideal fractional total-return units. Entry and all later buy/sell notional charged; no final liquidation fee.",
  "robustness": "Full interval plus retrospective halves, alternative starts, crisis windows, rolling 10 years, parameter/cost sensitivity; fixed roster before first computation, no optimizer or winner promoted to live policy.",
  "limitations": [
    "Single-vendor revised prices; no complete second-source daily certification",
    "No investor taxes, FX, whole shares or actual margin rules",
    "No real forward out-of-sample and <20y common ETF history",
    "Signal exits are reactive, cannot predict the first fall; false signals and missed rebounds possible",
    "Literature results on broad long/short futures do not transfer to these long/cash ETF tests",
    "Finite experiments are multiple comparisons, including failed variants; no live trading authorized"
  ],
  "sources": [
    "https://mebfaber.com/2017/12/13/episode-86-quantitative-approach-tactical-asset-allocation/",
    "https://www.aqr.com/insights/research/journal-article/a-century-of-evidence-on-trend-following-investing"
  ]
}