{
  "date": "2026-07-21",
  "generated_at_utc": "2026-07-21T12:57:42.623472+00:00",
  "macro_regime": "oil_geopolitical_shock",
  "regime_confidence": 63,
  "primary_driver": "Energy/geopolitical premium",
  "event_risk_score": 32,
  "guardrail_mode": "caution",
  "hmm_regime": {
    "dominant_state": "bear_trend",
    "posteriors": {
      "bull_trend": 0.0005,
      "bear_trend": 0.4378,
      "chop_rotation": 0.1899,
      "vol_shock": 0.3718
    },
    "n_sessions_trained": 2
  },
  "prediction": {
    "directional_call": "bearish",
    "confidence": 55,
    "key_drivers": [
      "VIX elevated/watchful at 17.95",
      "SKEW 146.05 shows tail-risk hedging demand",
      "WTI is carrying an inflation/geopolitical premium"
    ],
    "falsification_conditions": [
      "VIX compression below 17",
      "10Y yield reversal lower from open",
      "DXY rejection and reversal",
      "Breadth recovery: YM/RTY catching bid and holding"
    ],
    "surprise_deltas_used": [],
    "guardrail_applied": true
  },
  "surprise_deltas": [],
  "factor_weights_applied": {},
  "similar_sessions": [
    {
      "date": "2026-07-20",
      "regime": "oil_geopolitical_shock",
      "event_risk_score": 32,
      "event_risk_bucket": "low",
      "cross_state": "risk_warning",
      "bull_score": 0.0,
      "warn_score": 0.0,
      "directional_call": "unknown",
      "actual_direction": "bearish",
      "net_points": -47.75,
      "trend_day": true,
      "accuracy": "unscored",
      "lesson": "",
      "dominant_factors": [],
      "guardrail_mode": "normal"
    },
    {
      "date": "2026-07-20",
      "regime": "oil_geopolitical_shock",
      "event_risk_score": 32,
      "event_risk_bucket": "low",
      "cross_state": "risk_warning",
      "bull_score": 0.0,
      "warn_score": 0.0,
      "directional_call": "unknown",
      "actual_direction": "bearish",
      "net_points": -47.75,
      "trend_day": true,
      "accuracy": "unscored",
      "lesson": "",
      "dominant_factors": [],
      "guardrail_mode": "normal"
    }
  ],
  "day_trading_framework": {
    "premarket_question": "Is there a Tier-1 catalyst today, or is the session driven by overnight global/rates/FX/commodity flows?",
    "tier1_catalysts": [],
    "surprise_delta_formula": "actual_print_minus_consensus_expectation",
    "surprise_delta_rule": "Do not trade the headline alone; compare actual vs consensus, then confirm through 10Y/ZB/ZN, DXY, VIX/VVIX/SKEW, and ES/NQ reclaim or rejection.",
    "expectation_framing": "Classify every catalyst as priced-in, anticipated, or true surprise before assigning trend odds.",
    "dealer_vol_regime": {
      "regime": "positive_gamma_proxy",
      "data_status": "SqueezeMetrics daily SPX DIX/GEX integrated; direct ES/NQ intraday GEX still not integrated.",
      "dix": 0.4365478789744658,
      "gex": 3710697470.239997,
      "playbook": "Positive daily SPX GEX supports range suppression; favor confirmation and fades unless catalysts break the range."
    },
    "decision_mode": "guardrail_caution_overnight_global_driver_and_level_confirmation",
    "execution_rules": [
      "Harmonized bullish: cooler inflation or constructive growth plus falling yields, weaker DXY, VIX crush, then buy first pullback/retest above VWAP or key pivot.",
      "Harmonized bearish: hot inflation/hawkish Fed/weak growth plus rising yields, stronger DXY, VIX expansion, then short retest failures below VWAP/opening range or S1.",
      "Divergence/trap: if ES/NQ spike but 10Y/DXY/VIX refuse to confirm, do not chase; wait for structure break back toward pre-news origin.",
      "Inline/mixed print: expect stop runs and value-area mean reversion; fade extremes unless negative-gamma proxy confirms breakout volatility."
    ],
    "event_risk_score": 32
  },
  "data_source_status": [
    {
      "name": "ES",
      "source": "Yahoo Finance chart API",
      "symbol": "ES=F",
      "cadence": "queried at report publish time",
      "used_in_analysis": true,
      "status": "fresh",
      "latest_value": 7511.5,
      "updated_at_utc": "2026-07-21T12:57:36.195728+00:00",
      "notes": "5D change: -1.05%"
    },
    {
      "name": "NQ",
      "source": "Yahoo Finance chart API",
      "symbol": "NQ=F",
      "cadence": "queried at report publish time",
      "used_in_analysis": true,
      "status": "fresh",
      "latest_value": 29141.5,
      "updated_at_utc": "2026-07-21T12:57:36.235260+00:00",
      "notes": "5D change: -2.18%"
    },
    {
      "name": "YM",
      "source": "Yahoo Finance chart API",
      "symbol": "YM=F",
      "cadence": "queried at report publish time",
      "used_in_analysis": true,
      "status": "fresh",
      "latest_value": 52164.0,
      "updated_at_utc": "2026-07-21T12:57:36.276201+00:00",
      "notes": "5D change: -1.19%"
    },
    {
      "name": "RTY",
      "source": "Yahoo Finance chart API",
      "symbol": "RTY=F",
      "cadence": "queried at report publish time",
      "used_in_analysis": true,
      "status": "fresh",
      "latest_value": 2965.6,
      "updated_at_utc": "2026-07-21T12:57:36.315360+00:00",
      "notes": "5D change: -0.48%"
    },
    {
      "name": "VIX",
      "source": "Yahoo Finance chart API",
      "symbol": "^VIX",
      "cadence": "queried at report publish time",
      "used_in_analysis": true,
      "status": "fresh",
      "latest_value": 17.95,
      "updated_at_utc": "2026-07-21T12:57:36.353964+00:00",
      "notes": "5D change: 8.79%"
    },
    {
      "name": "VVIX",
      "source": "Yahoo Finance chart API",
      "symbol": "^VVIX",
      "cadence": "queried at report publish time",
      "used_in_analysis": true,
      "status": "fresh",
      "latest_value": 102.82,
      "updated_at_utc": "2026-07-21T12:57:36.395639+00:00",
      "notes": "5D change: 7.91%"
    },
    {
      "name": "SKEW",
      "source": "Yahoo Finance chart API",
      "symbol": "^SKEW",
      "cadence": "queried at report publish time",
      "used_in_analysis": true,
      "status": "fresh",
      "latest_value": 146.05,
      "updated_at_utc": "2026-07-21T12:57:36.453103+00:00",
      "notes": "5D change: 0.25%"
    },
    {
      "name": "WTI",
      "source": "Yahoo Finance chart API",
      "symbol": "CL=F",
      "cadence": "queried at report publish time",
      "used_in_analysis": true,
      "status": "fresh",
      "latest_value": 84.07,
      "updated_at_utc": "2026-07-21T12:57:36.500595+00:00",
      "notes": "5D change: 5.96%"
    },
    {
      "name": "GOLD",
      "source": "Yahoo Finance chart API",
      "symbol": "GC=F",
      "cadence": "queried at report publish time",
      "used_in_analysis": true,
      "status": "fresh",
      "latest_value": 4060.7,
      "updated_at_utc": "2026-07-21T12:57:36.542210+00:00",
      "notes": "5D change: -0.01%"
    },
    {
      "name": "COPPER",
      "source": "Yahoo Finance chart API",
      "symbol": "HG=F",
      "cadence": "queried at report publish time",
      "used_in_analysis": true,
      "status": "fresh",
      "latest_value": 6.522,
      "updated_at_utc": "2026-07-21T12:57:36.580890+00:00",
      "notes": "5D change: 3.03%"
    },
    {
      "name": "10Y",
      "source": "Yahoo Finance chart API",
      "symbol": "^TNX",
      "cadence": "queried at report publish time",
      "used_in_analysis": true,
      "status": "fresh",
      "latest_value": 4.606,
      "updated_at_utc": "2026-07-21T12:57:36.632807+00:00",
      "notes": "5D change: 0.46%"
    },
    {
      "name": "ZN",
      "source": "Yahoo Finance chart API",
      "symbol": "ZN=F",
      "cadence": "queried at report publish time",
      "used_in_analysis": true,
      "status": "fresh",
      "latest_value": 108.8125,
      "updated_at_utc": "2026-07-21T12:57:36.675493+00:00",
      "notes": "5D change: -0.10%"
    },
    {
      "name": "ZB",
      "source": "Yahoo Finance chart API",
      "symbol": "ZB=F",
      "cadence": "queried at report publish time",
      "used_in_analysis": true,
      "status": "fresh",
      "latest_value": 110.563,
      "updated_at_utc": "2026-07-21T12:57:36.756647+00:00",
      "notes": "5D change: -0.31%"
    },
    {
      "name": "DXY",
      "source": "Yahoo Finance chart API",
      "symbol": "DX-Y.NYB",
      "cadence": "queried at report publish time",
      "used_in_analysis": true,
      "status": "fresh",
      "latest_value": 101.02,
      "updated_at_utc": "2026-07-21T12:57:36.803240+00:00",
      "notes": "5D change: 0.08%"
    },
    {
      "name": "USDJPY",
      "source": "Yahoo Finance chart API",
      "symbol": "JPY=X",
      "cadence": "queried at report publish time",
      "used_in_analysis": true,
      "status": "fresh",
      "latest_value": 162.721,
      "updated_at_utc": "2026-07-21T12:57:36.840438+00:00",
      "notes": "5D change: 0.18%"
    },
    {
      "name": "EURUSD",
      "source": "Yahoo Finance chart API",
      "symbol": "EURUSD=X",
      "cadence": "queried at report publish time",
      "used_in_analysis": true,
      "status": "fresh",
      "latest_value": 1.1421,
      "updated_at_utc": "2026-07-21T12:57:36.884703+00:00",
      "notes": "5D change: 0.32%"
    },
    {
      "name": "DAX",
      "source": "Yahoo Finance chart API",
      "symbol": "^GDAXI",
      "cadence": "queried at report publish time",
      "used_in_analysis": true,
      "status": "fresh",
      "latest_value": 24855.22,
      "updated_at_utc": "2026-07-21T12:57:36.932153+00:00",
      "notes": "5D change: -1.16%"
    },
    {
      "name": "NIKKEI",
      "source": "Yahoo Finance chart API",
      "symbol": "^N225",
      "cadence": "queried at report publish time",
      "used_in_analysis": true,
      "status": "fresh",
      "latest_value": 66232.19,
      "updated_at_utc": "2026-07-21T12:57:37.010800+00:00",
      "notes": "5D change: -1.50%"
    },
    {
      "name": "HANG_SENG",
      "source": "Yahoo Finance chart API",
      "symbol": "^HSI",
      "cadence": "queried at report publish time",
      "used_in_analysis": true,
      "status": "fresh",
      "latest_value": 25132.29,
      "updated_at_utc": "2026-07-21T12:57:37.058464+00:00",
      "notes": "5D change: 3.25%"
    },
    {
      "name": "USD economic calendar",
      "source": "ForexFactory public widget feed",
      "cadence": "queried at report publish time",
      "used_in_analysis": true,
      "status": "fresh",
      "latest_value": 1,
      "updated_at_utc": null,
      "notes": "High/medium impact events filtered into catalyst board; 0 actual values present."
    },
    {
      "name": "Fed/news sentiment",
      "source": "Federal Reserve RSS plus Alpha Vantage NEWS_SENTIMENT when key is present",
      "cadence": "queried at report publish time",
      "used_in_analysis": true,
      "status": "fresh",
      "latest_value": 14,
      "updated_at_utc": null,
      "notes": "Used for Fed, geopolitical, oil, and risk-language checks."
    },
    {
      "name": "RRP",
      "source": "FRED official REST API",
      "symbol": "RRPONTSYD",
      "cadence": "daily",
      "used_in_analysis": true,
      "status": "fresh",
      "latest_value": 0.03,
      "updated_at_utc": "2026-07-21T12:57:41.936676+00:00",
      "notes": "Overnight Reverse Repurchase Agreements"
    },
    {
      "name": "TGA",
      "source": "FRED official REST API",
      "symbol": "WTREGEN",
      "cadence": "weekly",
      "used_in_analysis": true,
      "status": "fresh",
      "latest_value": 756218.0,
      "updated_at_utc": "2026-07-21T12:57:42.166607+00:00",
      "notes": "Treasury General Account"
    },
    {
      "name": "FED_BALANCE_SHEET",
      "source": "FRED official REST API",
      "symbol": "WALCL",
      "cadence": "weekly",
      "used_in_analysis": true,
      "status": "fresh",
      "latest_value": 6743028.0,
      "updated_at_utc": "2026-07-21T12:57:42.357072+00:00",
      "notes": "Fed total assets"
    },
    {
      "name": "BANK_RESERVES",
      "source": "FRED official REST API",
      "symbol": "WRESBAL",
      "cadence": "weekly",
      "used_in_analysis": true,
      "status": "fresh",
      "latest_value": 3142721.0,
      "updated_at_utc": "2026-07-21T12:57:42.549863+00:00",
      "notes": "Reserve balances with Federal Reserve Banks"
    },
    {
      "name": "SPX DIX/GEX dealer-flow proxy",
      "source": "SqueezeMetrics public DIX CSV",
      "symbol": "SPX DIX/GEX",
      "cadence": "daily after market close",
      "used_in_analysis": true,
      "status": "fresh",
      "latest_value": 3.710697470239997,
      "updated_at_utc": "2026-07-21T12:57:42.620088+00:00",
      "notes": "DIX 43.65%, GEX $3.71B on 2026-07-20"
    },
    {
      "name": "Direct ES/NQ intraday dealer GEX",
      "source": "vendor required",
      "cadence": "intraday",
      "used_in_analysis": false,
      "status": "source_needed",
      "latest_value": null,
      "updated_at_utc": null,
      "notes": "SqueezeMetrics adds daily SPX aggregate GEX/DIX; direct ES/NQ intraday gamma still needs a vendor."
    },
    {
      "name": "Market breadth internals",
      "source": "exchange/vendor required",
      "cadence": "intraday",
      "used_in_analysis": false,
      "status": "source_needed",
      "latest_value": null,
      "updated_at_utc": null,
      "notes": "YM/RTY provide index participation proxy, not true ADD/TICK breadth."
    },
    {
      "name": "True futures CVD/order flow",
      "source": "broker/platform feed required",
      "cadence": "intraday",
      "used_in_analysis": false,
      "status": "source_needed",
      "latest_value": null,
      "updated_at_utc": null,
      "notes": "Post-market feedback uses a Yahoo volume proxy only."
    },
    {
      "name": "Fed funds futures path",
      "source": "CME/FedWatch or rates data vendor required",
      "cadence": "daily/intraday",
      "used_in_analysis": false,
      "status": "source_needed",
      "latest_value": null,
      "updated_at_utc": null,
      "notes": "Calendar and 10Y/ZB/ZN currently proxy policy-rate sensitivity."
    }
  ],
  "catalyst_board": [
    {
      "event": "Unemployment Claims",
      "time": "2026-07-23T08:30:00-04:00",
      "importance": "Medium",
      "category": "labor",
      "forecast": "211K",
      "previous": "208K",
      "actual": null,
      "priced_in_view": "Market wants labor cooling without an abrupt growth scare.",
      "bullish_surprise": "Orderly cooling supports soft-landing/rate-cut optionality.",
      "bearish_surprise": "Too-hot labor pushes yields higher; too-weak labor can flip into growth fear.",
      "es_impact": "moderate",
      "nq_impact": "moderate",
      "trade_window_rule": "Reduce size around release; require price confirmation."
    }
  ],
  "cross_asset_confirmation": {
    "risk_confirmation": "risk_warning",
    "bullish_support": [
      "Copper strength supports cyclical/growth confirmation",
      "ES constructive_inside_range",
      "NQ breakout_watch"
    ],
    "bearish_warnings": [
      "VIX elevated/watchful at 17.95",
      "SKEW 146.05 shows tail-risk hedging demand",
      "WTI is carrying an inflation/geopolitical premium",
      "YM/RTY weakness flags narrow or defensive index participation",
      "Overnight global equity weakness is a risk-off tell",
      "Recent headlines include geopolitical risk language"
    ],
    "bull_weighted_score": 3.0,
    "warn_weighted_score": 6.0
  },
  "scenario_tree": [
    {
      "name": "Bull Continuation",
      "probability": 24,
      "trigger": "Two 5m closes above ES/NQ R1 with vol and cross-asset confirmation.",
      "model_posture": "trend_following_allowed",
      "avoid": "Do not buy the first touch through resistance without retest acceptance."
    },
    {
      "name": "Base Chop",
      "probability": 23,
      "trigger": "ES/NQ hold between S1 and R1 while catalysts remain unresolved.",
      "model_posture": "mean_reversion_preferred",
      "avoid": "Avoid oversizing in the middle of the range."
    },
    {
      "name": "Bear Reversal",
      "probability": 53,
      "trigger": "Loss of S1 with VIX/rates/DXY confirming risk-off pressure.",
      "model_posture": "short_retest_failures",
      "avoid": "Avoid fading downside if breadth and vol expand together."
    }
  ],
  "futures_playbook": {
    "ES": {
      "bias": "constructive_inside_range",
      "best_long_setup": "Acceptance above ES R1 7,531.92 with NQ and vol confirmation.",
      "best_short_setup": "Failed reclaim or loss of ES S1 7,456.67 with VIX/rates confirming.",
      "confirmation_required": true,
      "macro_risk_modifier": 1.0,
      "do_not_trade_windows": []
    },
    "NQ": {
      "bias": "breakout_watch",
      "best_long_setup": "NQ R1 29,077.58 reclaim after rates stabilize.",
      "best_short_setup": "NQ S1 28,594.83 failure while 10Y/DXY firm.",
      "confirmation_required": true,
      "macro_risk_modifier": 1.0,
      "do_not_trade_windows": []
    }
  },
  "model_feed": {
    "session_type": "level_driven_day",
    "risk_bias": "defensive",
    "event_risk_score": 32,
    "breakout_quality_score": 29,
    "mean_reversion_quality_score": 31,
    "trend_day_probability": 24,
    "chop_day_probability": 23,
    "reversal_probability": 53,
    "trade_permission": "confirmation_required"
  }
}
