{
  "meta": {
    "description": "Flow-price divergence rolling intraday signal (30-min snapshots)",
    "n_snapshots": 7931,
    "n_trading_days": 728,
    "years": [
      2023,
      2024,
      2025,
      2026
    ],
    "snapshot_times": [
      "10:00",
      "10:30",
      "11:00",
      "11:30",
      "12:00",
      "12:30",
      "13:00",
      "13:30",
      "14:00",
      "14:30",
      "15:00"
    ],
    "buy_pct_30_p20": 0.4857,
    "buy_pct_30_p80": 0.5147,
    "n_perm": 1000
  },
  "scenario_counts": {
    "BULL_CONFIRMED": 1438,
    "BULL_ABSORBED": 148,
    "BEAR_CONFIRMED": 1381,
    "BEAR_ABSORBED": 205,
    "NEUTRAL": 4759
  },
  "overall_stats": {
    "BULL_CONFIRMED": {
      "n": 1438,
      "wr_30m": 0.5355,
      "avg_ret_30m": 0.2323,
      "wr_60m": 0.5257,
      "avg_ret_60m": 0.3654
    },
    "BULL_ABSORBED": {
      "n": 148,
      "wr_30m": 0.4932,
      "avg_ret_30m": -0.3885,
      "wr_60m": 0.4054,
      "avg_ret_60m": -2.0068
    },
    "BEAR_CONFIRMED": {
      "n": 1381,
      "wr_30m": 0.4642,
      "avg_ret_30m": 0.1032,
      "wr_60m": 0.4642,
      "avg_ret_60m": -0.2877
    },
    "BEAR_ABSORBED": {
      "n": 205,
      "wr_30m": 0.4293,
      "avg_ret_30m": -0.0817,
      "wr_60m": 0.4683,
      "avg_ret_60m": 0.0061
    },
    "NEUTRAL": {
      "n": 4759,
      "wr_30m": null,
      "avg_ret_30m": -0.0157,
      "wr_60m": null,
      "avg_ret_60m": 0.3141
    }
  },
  "buypct_alone": {
    "HIGH_BUYPCT": {
      "n": 1586,
      "wr_30m": 0.5315,
      "avg_ret_30m": 0.1743,
      "wr_60m": 0.5145,
      "avg_ret_60m": 0.1441
    },
    "LOW_BUYPCT": {
      "n": 1586,
      "wr_30m": 0.4596,
      "avg_ret_30m": 0.0793,
      "wr_60m": 0.4647,
      "avg_ret_60m": -0.2497
    }
  },
  "time_of_day": {
    "10:00": {
      "BULL_CONFIRMED": {
        "n": 102,
        "wr_30m": 0.6373,
        "avg_ret_30m": 1.3824,
        "wr_60m": 0.549,
        "avg_ret_60m": 0.3186
      },
      "BULL_ABSORBED": {
        "n": 14,
        "wr_30m": 0.5,
        "avg_ret_30m": -2.4464,
        "wr_60m": 0.2857,
        "avg_ret_60m": -2.6071
      },
      "BEAR_CONFIRMED": {
        "n": 88,
        "wr_30m": 0.4432,
        "avg_ret_30m": 0.6193,
        "wr_60m": 0.4773,
        "avg_ret_60m": -0.8949
      },
      "BEAR_ABSORBED": {
        "n": 21,
        "wr_30m": 0.5714,
        "avg_ret_30m": -6.619,
        "wr_60m": 0.5714,
        "avg_ret_60m": -3.7857
      },
      "NEUTRAL": {
        "n": 503,
        "wr_30m": null,
        "avg_ret_30m": -0.8355,
        "wr_60m": null,
        "avg_ret_60m": -0.4483
      }
    },
    "10:30": {
      "BULL_CONFIRMED": {
        "n": 101,
        "wr_30m": 0.5347,
        "avg_ret_30m": 0.0371,
        "wr_60m": 0.5248,
        "avg_ret_60m": 0.4208
      },
      "BULL_ABSORBED": {
        "n": 14,
        "wr_30m": 0.4286,
        "avg_ret_30m": -0.125,
        "wr_60m": 0.5714,
        "avg_ret_60m": 5.2857
      },
      "BEAR_CONFIRMED": {
        "n": 124,
        "wr_30m": 0.5565,
        "avg_ret_30m": -1.2601,
        "wr_60m": 0.5403,
        "avg_ret_60m": -1.6008
      },
      "BEAR_ABSORBED": {
        "n": 16,
        "wr_30m": 0.5,
        "avg_ret_30m": 3.25,
        "wr_60m": 0.375,
        "avg_ret_60m": 7.5
      },
      "NEUTRAL": {
        "n": 473,
        "wr_30m": null,
        "avg_ret_30m": 0.2378,
        "wr_60m": null,
        "avg_ret_60m": -0.0544
      }
    },
    "11:00": {
      "BULL_CONFIRMED": {
        "n": 106,
        "wr_30m": 0.5943,
        "avg_ret_30m": 1.3915,
        "wr_60m": 0.5755,
        "avg_ret_60m": 2.5684
      },
      "BULL_ABSORBED": {
        "n": 11,
        "wr_30m": 0.3636,
        "avg_ret_30m": -0.3636,
        "wr_60m": 0.2727,
        "avg_ret_60m": -6.3864
      },
      "BEAR_CONFIRMED": {
        "n": 131,
        "wr_30m": 0.4809,
        "avg_ret_30m": -0.1813,
        "wr_60m": 0.4504,
        "avg_ret_60m": -0.5821
      },
      "BEAR_ABSORBED": {
        "n": 16,
        "wr_30m": 0.25,
        "avg_ret_30m": 3.0781,
        "wr_60m": 0.3125,
        "avg_ret_60m": 3.5156
      },
      "NEUTRAL": {
        "n": 463,
        "wr_30m": null,
        "avg_ret_30m": -0.3607,
        "wr_60m": null,
        "avg_ret_60m": -0.1647
      }
    },
    "11:30": {
      "BULL_CONFIRMED": {
        "n": 135,
        "wr_30m": 0.5259,
        "avg_ret_30m": -0.4241,
        "wr_60m": 0.5407,
        "avg_ret_60m": -0.0704
      },
      "BULL_ABSORBED": {
        "n": 9,
        "wr_30m": 0.6667,
        "avg_ret_30m": 4.7778,
        "wr_60m": 0.6667,
        "avg_ret_60m": 3.9167
      },
      "BEAR_CONFIRMED": {
        "n": 123,
        "wr_30m": 0.4553,
        "avg_ret_30m": 0.2602,
        "wr_60m": 0.4715,
        "avg_ret_60m": 0.2053
      },
      "BEAR_ABSORBED": {
        "n": 12,
        "wr_30m": 0.5,
        "avg_ret_30m": -0.3125,
        "wr_60m": 0.5,
        "avg_ret_60m": 0.25
      },
      "NEUTRAL": {
        "n": 444,
        "wr_30m": null,
        "avg_ret_30m": 0.2021,
        "wr_60m": null,
        "avg_ret_60m": 0.3812
      }
    },
    "12:00": {
      "BULL_CONFIRMED": {
        "n": 112,
        "wr_30m": 0.5357,
        "avg_ret_30m": -0.8192,
        "wr_60m": 0.4821,
        "avg_ret_60m": -0.7277
      },
      "BULL_ABSORBED": {
        "n": 12,
        "wr_30m": 0.5,
        "avg_ret_30m": -4.0208,
        "wr_60m": 0.3333,
        "avg_ret_60m": -5.5
      },
      "BEAR_CONFIRMED": {
        "n": 132,
        "wr_30m": 0.4394,
        "avg_ret_30m": 0.3466,
        "wr_60m": 0.4924,
        "avg_ret_60m": 0.4375
      },
      "BEAR_ABSORBED": {
        "n": 19,
        "wr_30m": 0.2632,
        "avg_ret_30m": 1.3289,
        "wr_60m": 0.4737,
        "avg_ret_60m": 1.1447
      },
      "NEUTRAL": {
        "n": 448,
        "wr_30m": null,
        "avg_ret_30m": 0.4208,
        "wr_60m": null,
        "avg_ret_60m": 0.0731
      }
    },
    "12:30": {
      "BULL_CONFIRMED": {
        "n": 144,
        "wr_30m": 0.5139,
        "avg_ret_30m": -0.2587,
        "wr_60m": 0.5278,
        "avg_ret_60m": -0.5451
      },
      "BULL_ABSORBED": {
        "n": 11,
        "wr_30m": 0.4545,
        "avg_ret_30m": 1.1136,
        "wr_60m": 0.3636,
        "avg_ret_60m": -1.75
      },
      "BEAR_CONFIRMED": {
        "n": 132,
        "wr_30m": 0.447,
        "avg_ret_30m": 1.0152,
        "wr_60m": 0.3939,
        "avg_ret_60m": 1.3333
      },
      "BEAR_ABSORBED": {
        "n": 19,
        "wr_30m": 0.5789,
        "avg_ret_30m": -3.0789,
        "wr_60m": 0.4737,
        "avg_ret_60m": -7.4868
      },
      "NEUTRAL": {
        "n": 417,
        "wr_30m": null,
        "avg_ret_30m": -0.4922,
        "wr_60m": null,
        "avg_ret_60m": 0.7326
      }
    },
    "13:00": {
      "BULL_CONFIRMED": {
        "n": 148,
        "wr_30m": 0.5743,
        "avg_ret_30m": 1.0405,
        "wr_60m": 0.527,
        "avg_ret_60m": 1.1841
      },
      "BULL_ABSORBED": {
        "n": 10,
        "wr_30m": 0.5,
        "avg_ret_30m": -1.325,
        "wr_60m": 0.4,
        "avg_ret_60m": 0.675
      },
      "BEAR_CONFIRMED": {
        "n": 150,
        "wr_30m": 0.42,
        "avg_ret_30m": 0.5917,
        "wr_60m": 0.42,
        "avg_ret_60m": -0.49
      },
      "BEAR_ABSORBED": {
        "n": 17,
        "wr_30m": 0.2353,
        "avg_ret_30m": 1.2647,
        "wr_60m": 0.6471,
        "avg_ret_60m": 0.2647
      },
      "NEUTRAL": {
        "n": 398,
        "wr_30m": null,
        "avg_ret_30m": 0.3649,
        "wr_60m": null,
        "avg_ret_60m": 1.3894
      }
    },
    "13:30": {
      "BULL_CONFIRMED": {
        "n": 158,
        "wr_30m": 0.4937,
        "avg_ret_30m": 0.1867,
        "wr_60m": 0.5759,
        "avg_ret_60m": 1.269
      },
      "BULL_ABSORBED": {
        "n": 12,
        "wr_30m": 0.4167,
        "avg_ret_30m": -1.2917,
        "wr_60m": 0.4167,
        "avg_ret_60m": -2.6458
      },
      "BEAR_CONFIRMED": {
        "n": 111,
        "wr_30m": 0.4505,
        "avg_ret_30m": 0.1036,
        "wr_60m": 0.5135,
        "avg_ret_60m": -1.9279
      },
      "BEAR_ABSORBED": {
        "n": 27,
        "wr_30m": 0.5185,
        "avg_ret_30m": 0.8889,
        "wr_60m": 0.4074,
        "avg_ret_60m": 1.9537
      },
      "NEUTRAL": {
        "n": 406,
        "wr_30m": null,
        "avg_ret_30m": 0.5425,
        "wr_60m": null,
        "avg_ret_60m": 1.1435
      }
    },
    "14:00": {
      "BULL_CONFIRMED": {
        "n": 151,
        "wr_30m": 0.543,
        "avg_ret_30m": 0.2384,
        "wr_60m": 0.5166,
        "avg_ret_60m": -0.0745
      },
      "BULL_ABSORBED": {
        "n": 18,
        "wr_30m": 0.4444,
        "avg_ret_30m": -1.3056,
        "wr_60m": 0.3333,
        "avg_ret_60m": -5.5278
      },
      "BEAR_CONFIRMED": {
        "n": 138,
        "wr_30m": 0.4493,
        "avg_ret_30m": -0.3986,
        "wr_60m": 0.413,
        "avg_ret_60m": -0.2862
      },
      "BEAR_ABSORBED": {
        "n": 20,
        "wr_30m": 0.3,
        "avg_ret_30m": 2.4,
        "wr_60m": 0.5,
        "avg_ret_60m": 0.35
      },
      "NEUTRAL": {
        "n": 387,
        "wr_30m": null,
        "avg_ret_30m": 0.5078,
        "wr_60m": null,
        "avg_ret_60m": 0.7203
      }
    },
    "14:30": {
      "BULL_CONFIRMED": {
        "n": 148,
        "wr_30m": 0.5203,
        "avg_ret_30m": 0.7044,
        "wr_60m": 0.5135,
        "avg_ret_60m": 0.0557
      },
      "BULL_ABSORBED": {
        "n": 14,
        "wr_30m": 0.3571,
        "avg_ret_30m": -1.8214,
        "wr_60m": 0.3571,
        "avg_ret_60m": -2.125
      },
      "BEAR_CONFIRMED": {
        "n": 129,
        "wr_30m": 0.4341,
        "avg_ret_30m": 0.1957,
        "wr_60m": 0.4496,
        "avg_ret_60m": 0.1047
      },
      "BEAR_ABSORBED": {
        "n": 17,
        "wr_30m": 0.4118,
        "avg_ret_30m": -0.4853,
        "wr_60m": 0.4706,
        "avg_ret_60m": -3.0147
      },
      "NEUTRAL": {
        "n": 406,
        "wr_30m": null,
        "avg_ret_30m": -0.3996,
        "wr_60m": null,
        "avg_ret_60m": -0.4033
      }
    },
    "15:00": {
      "BULL_CONFIRMED": {
        "n": 133,
        "wr_30m": 0.4586,
        "avg_ret_30m": -0.7199,
        "wr_60m": 0.4511,
        "avg_ret_60m": -0.188
      },
      "BULL_ABSORBED": {
        "n": 23,
        "wr_30m": 0.6957,
        "avg_ret_30m": 2.3152,
        "wr_60m": 0.4783,
        "avg_ret_60m": -2.6087
      },
      "BEAR_CONFIRMED": {
        "n": 123,
        "wr_30m": 0.5366,
        "avg_ret_30m": -0.1159,
        "wr_60m": 0.5122,
        "avg_ret_60m": 0.0874
      },
      "BEAR_ABSORBED": {
        "n": 21,
        "wr_30m": 0.5238,
        "avg_ret_30m": -1.2976,
        "wr_60m": 0.4286,
        "avg_ret_60m": 0.4286
      },
      "NEUTRAL": {
        "n": 414,
        "wr_30m": null,
        "avg_ret_30m": -0.1751,
        "wr_60m": null,
        "avg_ret_60m": 0.4414
      }
    }
  },
  "year_stats": {
    "2023": {
      "BULL_CONFIRMED": {
        "n": 446,
        "wr_30m": 0.5426,
        "avg_ret_30m": 0.2988,
        "wr_60m": 0.5359,
        "avg_ret_60m": 0.4647
      },
      "BULL_ABSORBED": {
        "n": 31,
        "wr_30m": 0.5806,
        "avg_ret_30m": -0.4032,
        "wr_60m": 0.5484,
        "avg_ret_60m": -0.6371
      },
      "BEAR_CONFIRMED": {
        "n": 443,
        "wr_30m": 0.4424,
        "avg_ret_30m": 0.434,
        "wr_60m": 0.4537,
        "avg_ret_60m": 0.1067
      },
      "BEAR_ABSORBED": {
        "n": 65,
        "wr_30m": 0.4308,
        "avg_ret_30m": -0.5077,
        "wr_60m": 0.4923,
        "avg_ret_60m": -0.5308
      },
      "NEUTRAL": {
        "n": 1207,
        "wr_30m": null,
        "avg_ret_30m": -0.0512,
        "wr_60m": null,
        "avg_ret_60m": 0.3801
      }
    },
    "2024": {
      "BULL_CONFIRMED": {
        "n": 534,
        "wr_30m": 0.5318,
        "avg_ret_30m": 0.2154,
        "wr_60m": 0.5112,
        "avg_ret_60m": 0.5154
      },
      "BULL_ABSORBED": {
        "n": 62,
        "wr_30m": 0.4032,
        "avg_ret_30m": -1.9032,
        "wr_60m": 0.3548,
        "avg_ret_60m": -3.2621
      },
      "BEAR_CONFIRMED": {
        "n": 531,
        "wr_30m": 0.467,
        "avg_ret_30m": -0.113,
        "wr_60m": 0.467,
        "avg_ret_60m": -0.5099
      },
      "BEAR_ABSORBED": {
        "n": 64,
        "wr_30m": 0.4375,
        "avg_ret_30m": -0.3906,
        "wr_60m": 0.4219,
        "avg_ret_60m": 0.6875
      },
      "NEUTRAL": {
        "n": 1437,
        "wr_30m": null,
        "avg_ret_30m": 0.0318,
        "wr_60m": null,
        "avg_ret_60m": 0.3516
      }
    },
    "2025": {
      "BULL_CONFIRMED": {
        "n": 397,
        "wr_30m": 0.5441,
        "avg_ret_30m": 0.3696,
        "wr_60m": 0.5466,
        "avg_ret_60m": 0.5202
      },
      "BULL_ABSORBED": {
        "n": 40,
        "wr_30m": 0.6,
        "avg_ret_30m": 1.9812,
        "wr_60m": 0.4,
        "avg_ret_60m": -1.0625
      },
      "BEAR_CONFIRMED": {
        "n": 359,
        "wr_30m": 0.4708,
        "avg_ret_30m": 0.2479,
        "wr_60m": 0.4624,
        "avg_ret_60m": 0.0077
      },
      "BEAR_ABSORBED": {
        "n": 58,
        "wr_30m": 0.3793,
        "avg_ret_30m": 1.5819,
        "wr_60m": 0.4828,
        "avg_ret_60m": 0.5086
      },
      "NEUTRAL": {
        "n": 1748,
        "wr_30m": null,
        "avg_ret_30m": -0.0636,
        "wr_60m": null,
        "avg_ret_60m": 0.1093
      }
    },
    "2026": {
      "BULL_CONFIRMED": {
        "n": 61,
        "wr_30m": 0.459,
        "avg_ret_30m": -1.0,
        "wr_60m": 0.4426,
        "avg_ret_60m": -2.6803
      },
      "BULL_ABSORBED": {
        "n": 15,
        "wr_30m": 0.4,
        "avg_ret_30m": -0.4167,
        "wr_60m": 0.3333,
        "avg_ret_60m": -2.1667
      },
      "BEAR_CONFIRMED": {
        "n": 48,
        "wr_30m": 0.5833,
        "avg_ret_30m": -1.6406,
        "wr_60m": 0.5417,
        "avg_ret_60m": -3.6771
      },
      "BEAR_ABSORBED": {
        "n": 18,
        "wr_30m": 0.5556,
        "avg_ret_30m": -2.8056,
        "wr_60m": 0.5,
        "avg_ret_60m": -2.0972
      },
      "NEUTRAL": {
        "n": 367,
        "wr_30m": null,
        "avg_ret_30m": 0.1437,
        "wr_60m": null,
        "avg_ret_60m": 0.9264
      }
    }
  },
  "null_test": {
    "BULL_CONFIRMED": {
      "null_mean_wr_30m": 0.5313,
      "null_std_wr_30m": 0.0119,
      "null_mean_wr_60m": 0.5143,
      "null_std_wr_60m": 0.0121,
      "p_val_30m": 0.363,
      "p_val_60m": 0.176
    },
    "BULL_ABSORBED": {
      "null_mean_wr_30m": 0.5318,
      "null_std_wr_30m": 0.0133,
      "null_mean_wr_60m": 0.5148,
      "null_std_wr_60m": 0.0136,
      "p_val_30m": 0.999,
      "p_val_60m": 1.0
    },
    "BEAR_CONFIRMED": {
      "null_mean_wr_30m": 0.4591,
      "null_std_wr_30m": 0.0143,
      "null_mean_wr_60m": 0.4646,
      "null_std_wr_60m": 0.014,
      "p_val_30m": 0.351,
      "p_val_60m": 0.497
    },
    "BEAR_ABSORBED": {
      "null_mean_wr_30m": 0.4601,
      "null_std_wr_30m": 0.0123,
      "null_mean_wr_60m": 0.4648,
      "null_std_wr_60m": 0.012,
      "p_val_30m": 0.995,
      "p_val_60m": 0.39
    }
  }
}