{
  "timestamp": "2026-03-13T12:09:57.240275",
  "signals": [
    {
      "name": "DeltaDiv",
      "weight": 0.3,
      "n_obs": 288,
      "date_range": "2025-01-02 to 2026-02-19",
      "full_ic": 0.1297,
      "full_p": 0.0277,
      "is_ic": 0.113,
      "oos_ic": 0.1481,
      "is_oos_consistent": "True",
      "hit_rate": 0.5347,
      "quintiles": {
        "0": {
          "mean_bps": -9.84,
          "win_rate": 0.5,
          "count": 58
        },
        "1": {
          "mean_bps": -18.12,
          "win_rate": 0.49,
          "count": 57
        },
        "2": {
          "mean_bps": 26.22,
          "win_rate": 0.66,
          "count": 58
        },
        "3": {
          "mean_bps": -0.17,
          "win_rate": 0.51,
          "count": 57
        },
        "4": {
          "mean_bps": 27.14,
          "win_rate": 0.6,
          "count": 58
        }
      },
      "ls_spread_bps": 36.97,
      "walk_forward": {
        "fold_ics": [
          0.1724,
          0.1609,
          0.2978,
          0.1817,
          -0.2479,
          0.1379,
          0.2901,
          -0.0624,
          0.4685,
          -0.045
        ],
        "pct_positive": 0.7,
        "mean_ic": 0.1354
      },
      "rolling_60d": {
        "mean_ic": 0.1448,
        "pct_positive": 0.8816
      },
      "recent": {
        "30d": {
          "ic": -0.0176,
          "p": 0.9266
        },
        "60d": {
          "ic": 0.1214,
          "p": 0.3556
        },
        "90d": {
          "ic": 0.0991,
          "p": 0.3525
        }
      },
      "flags": []
    },
    {
      "name": "DOW",
      "weight": 0.25,
      "n_obs": 293,
      "date_range": "2025-01-02 to 2026-02-19",
      "full_ic": 0.1641,
      "full_p": 0.0051,
      "is_ic": 0.0973,
      "oos_ic": 0.2744,
      "is_oos_consistent": "True",
      "hit_rate": 0.6949,
      "quintiles": {
        "0": {
          "mean_bps": -2.79,
          "win_rate": 0.51,
          "count": 231
        },
        "1": {
          "mean_bps": 32.58,
          "win_rate": 0.69,
          "count": 59
        }
      },
      "ls_spread_bps": 35.37,
      "walk_forward": {
        "fold_ics": [
          0.0647,
          0.0407,
          -0.0229,
          0.4364,
          0.1831,
          0.0,
          0.407,
          0.407,
          0.0,
          0.2948
        ],
        "pct_positive": 0.7,
        "mean_ic": 0.1811
      },
      "rolling_60d": {
        "mean_ic": 0.1747,
        "pct_positive": 0.9957
      },
      "recent": {
        "30d": {
          "ic": 0.2888,
          "p": 0.1216
        },
        "60d": {
          "ic": 0.1516,
          "p": 0.2476
        },
        "90d": {
          "ic": 0.2192,
          "p": 0.0379
        }
      },
      "flags": []
    },
    {
      "name": "VIXDecomp",
      "weight": 0.25,
      "n_obs": 264,
      "date_range": "2025-02-12 to 2026-02-19",
      "full_ic": 0.1048,
      "full_p": 0.0893,
      "is_ic": 0.125,
      "oos_ic": 0.0666,
      "is_oos_consistent": "True",
      "hit_rate": 0.5189,
      "quintiles": {
        "0": {
          "mean_bps": -16.14,
          "win_rate": 0.47,
          "count": 53
        },
        "1": {
          "mean_bps": -3.36,
          "win_rate": 0.57,
          "count": 53
        },
        "2": {
          "mean_bps": 8.45,
          "win_rate": 0.56,
          "count": 52
        },
        "3": {
          "mean_bps": 21.83,
          "win_rate": 0.58,
          "count": 53
        },
        "4": {
          "mean_bps": 16.11,
          "win_rate": 0.6,
          "count": 53
        }
      },
      "ls_spread_bps": 32.25,
      "walk_forward": {
        "fold_ics": [
          0.3108,
          0.133,
          -0.0256,
          0.3949,
          0.2574,
          -0.0482,
          0.0947,
          0.0858,
          0.0831,
          0.2316
        ],
        "pct_positive": 0.8,
        "mean_ic": 0.1517
      },
      "rolling_60d": {
        "mean_ic": 0.0905,
        "pct_positive": 0.8775
      },
      "recent": {
        "30d": {
          "ic": 0.2316,
          "p": 0.2182
        },
        "60d": {
          "ic": 0.1793,
          "p": 0.1705
        },
        "90d": {
          "ic": 0.1437,
          "p": 0.1765
        }
      },
      "flags": []
    },
    {
      "name": "VIX_TS",
      "weight": 0.15,
      "n_obs": 283,
      "date_range": "2025-01-02 to 2026-02-19",
      "full_ic": 0.1198,
      "full_p": 0.044,
      "is_ic": 0.0463,
      "oos_ic": 0.2454,
      "is_oos_consistent": "True",
      "hit_rate": 0.5426,
      "quintiles": {
        "0": {
          "mean_bps": -3.31,
          "win_rate": 0.54,
          "count": 57
        },
        "1": {
          "mean_bps": -1.56,
          "win_rate": 0.5,
          "count": 56
        },
        "2": {
          "mean_bps": -5.82,
          "win_rate": 0.51,
          "count": 57
        },
        "3": {
          "mean_bps": 29.66,
          "win_rate": 0.7,
          "count": 56
        },
        "4": {
          "mean_bps": 12.29,
          "win_rate": 0.54,
          "count": 57
        }
      },
      "ls_spread_bps": 15.6,
      "walk_forward": {
        "fold_ics": [
          0.0235,
          -0.0887,
          -0.0383,
          0.3229,
          -0.1364,
          0.1867,
          0.5736,
          0.2507,
          0.1708,
          0.2847
        ],
        "pct_positive": 0.7,
        "mean_ic": 0.155
      },
      "rolling_60d": {
        "mean_ic": 0.1675,
        "pct_positive": 0.852
      },
      "recent": {
        "30d": {
          "ic": 0.2578,
          "p": 0.1689
        },
        "60d": {
          "ic": 0.1697,
          "p": 0.195
        },
        "90d": {
          "ic": 0.2029,
          "p": 0.0551
        }
      },
      "flags": []
    },
    {
      "name": "PC_OI",
      "weight": 0.05,
      "n_obs": 283,
      "date_range": "2025-01-02 to 2026-02-19",
      "full_ic": 0.135,
      "full_p": 0.0232,
      "is_ic": 0.0786,
      "oos_ic": 0.2258,
      "is_oos_consistent": "True",
      "hit_rate": 0.5426,
      "quintiles": {
        "0": {
          "mean_bps": -2.36,
          "win_rate": 0.51,
          "count": 59
        },
        "1": {
          "mean_bps": 0.31,
          "win_rate": 0.54,
          "count": 57
        },
        "2": {
          "mean_bps": -14.25,
          "win_rate": 0.49,
          "count": 55
        },
        "3": {
          "mean_bps": -7.23,
          "win_rate": 0.54,
          "count": 57
        },
        "4": {
          "mean_bps": 55.83,
          "win_rate": 0.71,
          "count": 55
        }
      },
      "ls_spread_bps": 58.2,
      "walk_forward": {
        "fold_ics": [
          0.3568,
          0.0594,
          0.0507,
          0.45,
          0.0578,
          -0.1467,
          0.4865,
          0.2746,
          -0.0444,
          0.2383
        ],
        "pct_positive": 0.8,
        "mean_ic": 0.1783
      },
      "rolling_60d": {
        "mean_ic": 0.1325,
        "pct_positive": 0.9058
      },
      "recent": {
        "30d": {
          "ic": 0.2154,
          "p": 0.2529
        },
        "60d": {
          "ic": 0.1087,
          "p": 0.4083
        },
        "90d": {
          "ic": 0.1701,
          "p": 0.109
        }
      },
      "flags": []
    },
    {
      "name": "VPOC",
      "weight": 0.0,
      "n_obs": 292,
      "date_range": "2025-01-03 to 2026-02-20",
      "full_ic": -0.4116,
      "full_p": 0.0,
      "is_ic": -0.4748,
      "oos_ic": -0.287,
      "is_oos_consistent": "True",
      "hit_rate": 0.3024,
      "quintiles": {
        "0": {
          "mean_bps": 41.54,
          "win_rate": 0.73,
          "count": 59
        },
        "1": {
          "mean_bps": 26.63,
          "win_rate": 0.72,
          "count": 58
        },
        "2": {
          "mean_bps": 19.02,
          "win_rate": 0.74,
          "count": 58
        },
        "3": {
          "mean_bps": 0.99,
          "win_rate": 0.38,
          "count": 58
        },
        "4": {
          "mean_bps": -55.56,
          "win_rate": 0.27,
          "count": 59
        }
      },
      "ls_spread_bps": -97.1,
      "walk_forward": {
        "fold_ics": [
          -0.3473,
          -0.4655,
          -0.4621,
          -0.5793,
          -0.5813,
          -0.5315,
          -0.364,
          -0.3675,
          -0.1532,
          -0.1815
        ],
        "pct_positive": 0.0,
        "mean_ic": -0.4033
      },
      "rolling_60d": {
        "mean_ic": -0.4377,
        "pct_positive": 0.0
      },
      "recent": {
        "30d": {
          "ic": -0.1675,
          "p": 0.3762
        },
        "60d": {
          "ic": -0.1755,
          "p": 0.1797
        },
        "90d": {
          "ic": -0.2645,
          "p": 0.0118
        }
      },
      "flags": []
    },
    {
      "name": "GapFade",
      "weight": 0.0,
      "n_obs": 292,
      "date_range": "2025-01-03 to 2026-02-19",
      "full_ic": 0.0305,
      "full_p": 0.6039,
      "is_ic": 0.0746,
      "oos_ic": -0.0789,
      "is_oos_consistent": "False",
      "hit_rate": 0.4708,
      "quintiles": {
        "0": {
          "mean_bps": 11.73,
          "win_rate": 0.61,
          "count": 59
        },
        "1": {
          "mean_bps": -9.63,
          "win_rate": 0.55,
          "count": 58
        },
        "2": {
          "mean_bps": -1.25,
          "win_rate": 0.53,
          "count": 58
        },
        "3": {
          "mean_bps": -5.94,
          "win_rate": 0.48,
          "count": 58
        },
        "4": {
          "mean_bps": 36.21,
          "win_rate": 0.64,
          "count": 59
        }
      },
      "ls_spread_bps": 24.49,
      "walk_forward": {
        "fold_ics": [
          -0.0118,
          -0.3648,
          0.0995,
          0.3379,
          0.2877,
          0.1754,
          0.1389,
          -0.3748,
          -0.1704,
          0.1339
        ],
        "pct_positive": 0.6,
        "mean_ic": 0.0251
      },
      "rolling_60d": {
        "mean_ic": 0.0363,
        "pct_positive": 0.5517
      },
      "recent": {
        "30d": {
          "ic": 0.1377,
          "p": 0.468
        },
        "60d": {
          "ic": -0.0096,
          "p": 0.9417
        },
        "90d": {
          "ic": -0.114,
          "p": 0.2848
        }
      },
      "flags": []
    },
    {
      "name": "FOMC",
      "weight": 0.0,
      "n_obs": 293,
      "date_range": "2025-01-02 to 2026-02-19",
      "full_ic": 0.0251,
      "full_p": 0.6705,
      "is_ic": 0.0603,
      "oos_ic": -0.0279,
      "is_oos_consistent": "False",
      "hit_rate": 0.5778,
      "quintiles": {
        "0": {
          "mean_bps": 4.4,
          "win_rate": 0.55,
          "count": 290
        }
      },
      "ls_spread_bps": 0.0,
      "walk_forward": {
        "fold_ics": [
          -0.0635,
          0.1624,
          -0.1089,
          0.3055,
          0.1637,
          -0.1637,
          -0.0327,
          -0.1964,
          0.3382,
          -0.1818
        ],
        "pct_positive": 0.4,
        "mean_ic": 0.0223
      },
      "rolling_60d": {
        "mean_ic": 0.037,
        "pct_positive": 0.691
      },
      "recent": {
        "30d": {
          "ic": -0.1808,
          "p": 0.3389
        },
        "60d": {
          "ic": 0.0904,
          "p": 0.4922
        },
        "90d": {
          "ic": -0.0327,
          "p": 0.7596
        }
      },
      "flags": []
    }
  ],
  "composite": {
    "ic": 0.138,
    "p": 0.0285,
    "sharpe": 1.77,
    "win_rate": 0.5119,
    "n_days": 252
  },
  "correlation_matrix": {
    "DeltaDiv": {
      "DeltaDiv": 1.0,
      "DOW": -0.021,
      "VIXDecomp": 0.1027,
      "VIX_TS": 0.2269,
      "PC_OI": 0.2137
    },
    "DOW": {
      "DeltaDiv": -0.021,
      "DOW": 1.0,
      "VIXDecomp": -0.0436,
      "VIX_TS": -0.2815,
      "PC_OI": 0.0588
    },
    "VIXDecomp": {
      "DeltaDiv": 0.1027,
      "DOW": -0.0436,
      "VIXDecomp": 1.0,
      "VIX_TS": 0.127,
      "PC_OI": -0.0296
    },
    "VIX_TS": {
      "DeltaDiv": 0.2269,
      "DOW": -0.2815,
      "VIXDecomp": 0.127,
      "VIX_TS": 1.0,
      "PC_OI": 0.1425
    },
    "PC_OI": {
      "DeltaDiv": 0.2137,
      "DOW": 0.0588,
      "VIXDecomp": -0.0296,
      "VIX_TS": 0.1425,
      "PC_OI": 1.0
    }
  },
  "optimization": {
    "current_weights": {
      "DeltaDiv": 0.3,
      "DOW": 0.25,
      "VIXDecomp": 0.25,
      "VIX_TS": 0.15,
      "PC_OI": 0.05
    },
    "current_oos_sharpe": 2.91,
    "current_oos_ic": 0.1608,
    "optimal_weights": {
      "DeltaDiv": 0.15,
      "DOW": 0.0,
      "VIXDecomp": 0.15,
      "VIX_TS": 0.3,
      "PC_OI": 0.4
    },
    "optimal_oos_sharpe": 3.82,
    "optimal_oos_ic": 0.2588,
    "optimal_is_sharpe": 1.34,
    "is_oos_consistent": "True",
    "n_tested": 10626,
    "oos_period": "2025-09-24 to 2026-02-19",
    "oos_days": 101,
    "recommendation": "CONSIDER rebalancing. Optimal Sharpe 3.82 vs current 2.91 (+0.92). IS confirms (1.34). Review before changing."
  }
}