"""ROT02 — Dual-Momentum Rotation (ROT01 + overlay di absolute momentum). Evoluzione di ROT01: alla rotazione cross-sectional (forza relativa) aggiunge un overlay di ABSOLUTE momentum sul mercato: se BTC e' sotto la sua media a `regime_n` giorni (mercato risk-off), va completamente in CASH. Cosi' si evitano i bear di sistema (2022, 2026 YTD) che erano gli unici anni rossi di ROT01. Risultato (netto, fee 0.10% RT, gross 0.45, OOS = ultimo 30%): MIGLIORA TUTTO rispetto a ROT01. ROT01 base : FULL +679% / OOS +44% / DD 53% ROT02 SMA100 : FULL +1095% / OOS +98% / DD 40% <-- PnL su, DD giu' Param-insensitive sulla finestra di regime (SMA100-150). Dettagli in scripts/analysis/honest_improve.py (rot_improved). """ from __future__ import annotations import sys from pathlib import Path PROJECT_ROOT = Path(__file__).resolve().parents[2] sys.path.insert(0, str(PROJECT_ROOT)) from scripts.analysis.honest_improve import rot_improved # noqa: E402 LOOKBACK, TOP_K, REGIME_N = 60, 2, 100 def run(): print("=" * 90) print(f" ROT02 DUAL-MOMENTUM | 1d lb={LOOKBACK} top{TOP_K} + cash se BTC