{
  "study": "Study 4: Dominant Strike Spread",
  "run_date": "2026-04-01T16:21:44.062496",
  "n_dates": 236,
  "n_rows": 90861,
  "date_range": {
    "start": "2025-04-01",
    "end": "2026-03-20"
  },
  "fomc_excluded": true,
  "tod_controlled": true,
  "hypothesis_a": {
    "description": "Dominant strike spread_pct (ToD-z) predicts remaining intraday range",
    "rho_raw": 0.0276,
    "p_raw": 7.853154450540127e-17,
    "rho_tod_z": -0.0005,
    "p_tod_z": 0.8887708926929383,
    "p_permutation": 0.8853,
    "significant": false
  },
  "hypothesis_b": {
    "description": "Dominant strike spread_pct (ToD-z) predicts price direction to close",
    "rho_raw": 0.0682,
    "p_raw": 3.7104304744016754e-94,
    "rho_tod_z": 0.0628,
    "p_tod_z": 5.4216140463676776e-80,
    "p_permutation": 0.0,
    "significant": true
  },
  "hypothesis_c": {
    "description": "Dominant option type (C vs P) predicts direction to close",
    "rho": -0.0828,
    "p": 6.891194536455157e-138,
    "significant": true,
    "call_dominant_mean_direction": -2.572,
    "put_dominant_mean_direction": 4.2464,
    "call_n": 48120,
    "put_n": 42741,
    "ttest_p": 0.0
  },
  "null_test": {
    "n_shuffles": 10000,
    "hyp_a_p_perm": 0.8853,
    "hyp_b_p_perm": 0.0
  },
  "quintile_analysis": [
    {
      "quintile": 1,
      "n": 18173.0,
      "mean_spread_pct": 0.0034,
      "mean_remaining_range": 27.1343,
      "mean_direction": -0.9312,
      "pct_up": 0.5198
    },
    {
      "quintile": 2,
      "n": 18172.0,
      "mean_spread_pct": 0.006,
      "mean_remaining_range": 18.3479,
      "mean_direction": -1.8216,
      "pct_up": 0.4801
    },
    {
      "quintile": 3,
      "n": 18172.0,
      "mean_spread_pct": 0.0125,
      "mean_remaining_range": 16.8198,
      "mean_direction": -0.6439,
      "pct_up": 0.4678
    },
    {
      "quintile": 4,
      "n": 18172.0,
      "mean_spread_pct": 0.0351,
      "mean_remaining_range": 18.1715,
      "mean_direction": 3.5447,
      "pct_up": 0.5434
    },
    {
      "quintile": 5,
      "n": 18172.0,
      "mean_spread_pct": 0.3714,
      "mean_remaining_range": 16.4256,
      "mean_direction": 3.0292,
      "pct_up": 0.5715
    }
  ],
  "walk_forward_oos": [
    {
      "month": "2025-05",
      "n": 7701,
      "rho_a": -0.0538,
      "p_a": 0.0,
      "rho_b": 0.1666,
      "p_b": 0.0
    },
    {
      "month": "2025-06",
      "n": 7252,
      "rho_a": 0.0664,
      "p_a": 0.0,
      "rho_b": 0.0253,
      "p_b": 0.031
    },
    {
      "month": "2025-07",
      "n": 7908,
      "rho_a": 0.4098,
      "p_a": 0.0,
      "rho_b": -0.125,
      "p_b": 0.0
    },
    {
      "month": "2025-08",
      "n": 8070,
      "rho_a": 0.1896,
      "p_a": 0.0,
      "rho_b": 0.2703,
      "p_b": 0.0
    },
    {
      "month": "2025-09",
      "n": 7704,
      "rho_a": -0.2283,
      "p_a": 0.0,
      "rho_b": 0.023,
      "p_b": 0.0439
    },
    {
      "month": "2025-10",
      "n": 8516,
      "rho_a": -0.2551,
      "p_a": 0.0,
      "rho_b": 0.1011,
      "p_b": 0.0
    },
    {
      "month": "2025-11",
      "n": 7262,
      "rho_a": 0.0765,
      "p_a": 0.0,
      "rho_b": 0.1286,
      "p_b": 0.0
    },
    {
      "month": "2025-12",
      "n": 7952,
      "rho_a": 0.0108,
      "p_a": 0.3377,
      "rho_b": -0.1876,
      "p_b": 0.0
    },
    {
      "month": "2026-01",
      "n": 7359,
      "rho_a": -0.0299,
      "p_a": 0.0103,
      "rho_b": 0.0688,
      "p_b": 0.0
    },
    {
      "month": "2026-02",
      "n": 7471,
      "rho_a": -0.2563,
      "p_a": 0.0,
      "rho_b": 0.0826,
      "p_b": 0.0
    },
    {
      "month": "2026-03",
      "n": 5471,
      "rho_a": -0.1032,
      "p_a": 0.0,
      "rho_b": -0.1769,
      "p_b": 0.0
    }
  ],
  "walk_forward_summary": {
    "rho_a_mean": -0.0158,
    "rho_a_pct_sig": 0.9091,
    "rho_b_mean": 0.0343,
    "rho_b_pct_sig": 1.0
  },
  "verdict": "HYPOTHESIS B CONFIRMED: Spread predicts direction to close (rho=0.0628, permuted p=0.0000)."
}