{
  "symbol": "BTC/USDT",
  "timeframe": "15m",
  "timestamp": "2026-06-05 17:00 KST",
  "last_price": 63076.4,
  "num_candles": 300,
  "stage1_analyses": {
    "candlestick": {
      "agent_id": "candlestick",
      "display_name": "Candlestick Reader",
      "signal": "bullish",
      "confidence": 0.58,
      "structure_bias": "bearish",
      "setup_bias": "bullish",
      "setup_score": 0.68,
      "setup_signals": [
        "7일 범위 EQ 약 $65,944.20 아래의 디스카운트 구간에서 현재가 $63,076.40 거래",
        "EMA20 $62,607.38 상방 회복 및 현재가가 EMA20 대비 +0.7% 위치",
        "최근 strict 등급 bullish_engulfing 감지, pattern_quality 0.784 및 high_volume=true",
        "최근 5개 캔들 중 마지막 3개가 연속 양봉(+1.2%, +1.0%, +0.4%)으로 단기 매수 반응 확인",
        "단기 반등은 진행 중이나 EMA120 $63,600.26 및 EMA240 $64,820.20 아래에 있어 구조 전환은 미확정"
      ],
      "reasoning": "현재 BTC는 $63,076.40으로 EMA20 $62,607.38 위에 재진입했으며, 최근 strict 등급의 고거래량 bullish engulfing이 pattern_quality 0.784로 확인되어 단기 반등 셋업은 유효합니다. 다만 가격은 EMA120 $63,600.26 아래 -0.8%, EMA240 $64,820.20 아래 -2.7%에 있어 확인된 구조는 아직 bearish로 보는 것이 타당합니다. bull_score 1.60이 bear_score 1.35보다 소폭 우위지만, bearish_engulfing@290 및 bearish_harami@295가 함께 존재해 추세 반전 확정이라기보다 저점권 반등 시도에 가깝습니다. 핵심은 $63,600.26 돌파 및 안착 여부이며, 실패 시 $62,607.38 EMA20 재시험 가능성이 큽니다.",
      "key_levels": {
        "support": [
          62607.38,
          61067.6
        ],
        "resistance": [
          63600.26,
          64820.2,
          65944.2,
          70820.8
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$62,607.38 15분봉 종가 이탈 시 단기 bullish 셋업 약화, $61,067.60 이탈 시 완전 무효화",
      "risk_scenario": "반대 시나리오는 $63,600.26 EMA120에서 저항을 맞고 재차 하락하는 경우입니다. 이 경우 bullish engulfing은 단순 숏커버링으로 해석되며, $62,607.38 EMA20 이탈 후 7일 저점 $61,067.60 유동성 재공략 가능성이 높아집니다.",
      "data_quality": "medium",
      "metrics": {
        "total_patterns_detected": 136,
        "recent_patterns": 4,
        "pattern_list": [
          "bearish_engulfing@290",
          "bullish_engulfing@294",
          "bullish_engulfing@297",
          "bearish_harami@295"
        ],
        "atr_value": 533.62,
        "vol_avg_20": 5367.29,
        "high_volume_patterns": [
          "bullish_engulfing"
        ],
        "pattern_candidates": [
          {
            "pattern": "bullish_engulfing",
            "signal": "bullish",
            "pattern_quality": 0.784,
            "tier": "strict",
            "high_volume": true
          },
          {
            "pattern": "bearish_engulfing",
            "signal": "bearish",
            "pattern_quality": 0.615,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "bullish_engulfing",
            "signal": "bullish",
            "pattern_quality": 0.57,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "bearish_harami",
            "signal": "bearish",
            "pattern_quality": 0.414,
            "tier": "candidate",
            "high_volume": false
          }
        ],
        "best_pattern_quality": 0.784,
        "bull_score": 1.6,
        "bear_score": 1.35
      },
      "raw_llm_response": "{\n  \"signal\": \"bullish\",\n  \"confidence\": 0.58,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.68,\n  \"setup_signals\": [\n    \"7일 범위 EQ 약 $65,944.20 아래의 디스카운트 구간에서 현재가 $63,076.40 거래\",\n    \"EMA20 $62,607.38 상방 회복 및 현재가가 EMA20 대비 +0.7% 위치\",\n    \"최근 strict 등급 bullish_engulfing 감지, pattern_quality 0.784 및 high_volume=true\",\n    \"최근 5개 캔들 중 마지막 3개가 연속 양봉(+1.2%, +1.0%, +0.4%)으로 단기 매수 반응 확인\",\n    \"단기 반등은 진행 중이나 EMA120 $63,600.26 및 EMA240 $64,820.20 아래에 있어 구조 전환은 미확정\"\n  ],\n  \"reasoning\": \"현재 BTC는 $63,076.40으로 EMA20 $62,607.38 위에 재진입했으며, 최근 strict 등급의 고거래량 bullish engulfing이 pattern_quality 0.784로 확인되어 단기 반등 셋업은 유효합니다. 다만 가격은 EMA120 $63,600.26 아래 -0.8%, EMA240 $64,820.20 아래 -2.7%에 있어 확인된 구조는 아직 bearish로 보는 것이 타당합니다. bull_score 1.60이 bear_score 1.35보다 소폭 우위지만, bearish_engulfing@290 및 bearish_harami@295가 함께 존재해 추세 반전 확정이라기보다 저점권 반등 시도에 가깝습니다. 핵심은 $63,600.26 돌파 및 안착 여부이며, 실패 시 $62,607.38 EMA20 재시험 가능성이 큽니다.\",\n  \"key_levels\": {\n    \"support\": [\n      62607.38,\n      61067.6\n    ],\n    \"resistance\": [\n      63600.26,\n      64820.2,\n      65944.2,\n      70820.8\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$62,607.38 15분봉 종가 이탈 시 단기 bullish 셋업 약화, $61,067.60 이탈 시 완전 무효화\",\n  \"risk_scenario\": \"반대 시나리오는 $63,600.26 EMA120에서 저항을 맞고 재차 하락하는 경우입니다. 이 경우 bullish engulfing은 단순 숏커버링으로 해석되며, $62,607.38 EMA20 이탈 후 7일 저점 $61,067.60 유동성 재공략 가능성이 높아집니다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "ict": {
      "agent_id": "ict",
      "display_name": "ICT Trader",
      "signal": "bearish",
      "confidence": 0.82,
      "structure_bias": "bearish",
      "setup_bias": "bearish",
      "setup_score": 0.92,
      "setup_signals": [
        "현재가 $63,076.40가 EQ $62,594.25 위에 있어 단기 프리미엄 구간에서 매도 셋업 형성",
        "4회 연속 bearish BOS 확인: $66,388.00, $66,620.00, $65,508.30, $63,040.00 하향 이탈",
        "이전 저점 $61,344.80 하향 돌파 후 현재 반등 중이나 bullish CHoCH 미확인",
        "EMA120 $63,600.26 및 NY 세션 고점 $63,674.90 부근이 단기 공급/저항 구간",
        "상단 유동성 BSL $67,470.90와 후보 bearish OB $67,032.60-$67,448.00가 남아 있으나 현재가는 아직 해당 기관 매도 구간에 미도달"
      ],
      "reasoning": "확정 구조는 $66,388.00, $66,620.00, $65,508.30, $63,040.00을 순차적으로 하향 이탈한 4회 연속 bearish BOS로 인해 명확히 bearish입니다. 현재가 $63,076.40는 EQ $62,594.25 위의 프리미엄에 위치하지만 EMA120 $63,600.26 아래에 있어, 반등은 아직 구조 전환이 아니라 하락 추세 내 되돌림으로 해석됩니다. 이전 저점 $61,344.80은 이미 깨졌고, 7일 저점 및 NY 저점인 $61,067.60이 주요 sell-side liquidity로 남아 있습니다. 단기적으로 $63,600.26-$64,120.90 저항을 회복하지 못하면 $62,594.25 EQ 및 $61,067.60 재테스트 가능성이 높습니다.",
      "key_levels": {
        "support": [
          63040.0,
          62594.25,
          61344.8,
          61067.6
        ],
        "resistance": [
          63600.26,
          63674.9,
          64120.9,
          65508.3,
          66880.0,
          67032.6,
          67448.0,
          67470.9
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "64120.90",
      "risk_scenario": "$64,120.90 range high를 강하게 회복하고 그 위에서 수용되면 단기 bearish setup은 무효화되며, $65,508.30 BOS 레벨과 이전일 고점 $66,880.00 방향으로 숏 커버링이 발생할 수 있습니다. 특히 $67,032.60-$67,448.00 후보 bearish OB까지 상승하면 상단 BSL $67,470.90 유동성 사냥 후 재분배 여부를 다시 확인해야 합니다.",
      "data_quality": "medium",
      "metrics": {
        "order_blocks_total": 1,
        "confirmed_bullish_ob": 0,
        "confirmed_bearish_ob": 0,
        "candidate_bullish_ob": 0,
        "candidate_bearish_ob": 1,
        "active_bullish_ob": 0,
        "active_bearish_ob": 0,
        "nearest_bull_ob_range": null,
        "nearest_bear_ob_range": {
          "bottom": 67032.6,
          "top": 67448.0,
          "quality": "candidate",
          "score": 0.504
        },
        "active_bullish_ob_list": [],
        "active_bearish_ob_list": [],
        "ob_mitigated_count": 0,
        "unfilled_bull_fvg_count": 0,
        "unfilled_bear_fvg_count": 0,
        "bull_fvg_ranges": [],
        "bear_fvg_ranges": [],
        "fvg_open_count": 0,
        "fvg_mitigated_count": 68,
        "fvg_open_zones": [],
        "bos_choch_events": [
          "BOS_bearish",
          "BOS_bearish",
          "BOS_bearish",
          "BOS_bearish"
        ],
        "bos_choch_levels": [
          {
            "type": "BOS_bearish",
            "level": 66388.0
          },
          {
            "type": "BOS_bearish",
            "level": 66620.0
          },
          {
            "type": "BOS_bearish",
            "level": 65508.3
          },
          {
            "type": "BOS_bearish",
            "level": 63040.0
          }
        ],
        "bos_sequence": [
          "BOS_bearish",
          "BOS_bearish",
          "BOS_bearish",
          "BOS_bearish"
        ],
        "consecutive_bull_bos": 0,
        "consecutive_bear_bos": 4,
        "recent_liq_sweeps": [],
        "recent_sweep_levels": [],
        "liquidity_resting": [
          {
            "type": "BSL",
            "level": 67470.9
          }
        ],
        "current_zone": "premium",
        "eq_level": 62594.25,
        "range_high": 64120.9,
        "range_low": 61067.6,
        "bull_score": 0.5,
        "bear_score": 11.8,
        "setup_bias": "bearish",
        "setup_score": 0.92,
        "setup_signals": [
          "bearish BOS below $66,388.00",
          "bearish BOS below $66,620.00",
          "bearish BOS below $65,508.30",
          "bearish BOS below $63,040.00",
          "4x consecutive bearish BOS"
        ],
        "retracement_direction": "bullish",
        "current_retracement_pct": 110.6,
        "deepest_retracement_pct": 189.6,
        "previous_day_high": 66880.0,
        "previous_day_low": 61344.8,
        "broken_prev_high": false,
        "broken_prev_low": true,
        "sessions": {
          "London": {
            "active": false,
            "high": null,
            "low": null
          },
          "New York": {
            "active": true,
            "high": 63674.9,
            "low": 61067.6
          },
          "Asian kill zone": {
            "active": false,
            "high": null,
            "low": null
          }
        }
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.82,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.92,\n  \"setup_signals\": [\n    \"현재가 $63,076.40가 EQ $62,594.25 위에 있어 단기 프리미엄 구간에서 매도 셋업 형성\",\n    \"4회 연속 bearish BOS 확인: $66,388.00, $66,620.00, $65,508.30, $63,040.00 하향 이탈\",\n    \"이전 저점 $61,344.80 하향 돌파 후 현재 반등 중이나 bullish CHoCH 미확인\",\n    \"EMA120 $63,600.26 및 NY 세션 고점 $63,674.90 부근이 단기 공급/저항 구간\",\n    \"상단 유동성 BSL $67,470.90와 후보 bearish OB $67,032.60-$67,448.00가 남아 있으나 현재가는 아직 해당 기관 매도 구간에 미도달\"\n  ],\n  \"reasoning\": \"확정 구조는 $66,388.00, $66,620.00, $65,508.30, $63,040.00을 순차적으로 하향 이탈한 4회 연속 bearish BOS로 인해 명확히 bearish입니다. 현재가 $63,076.40는 EQ $62,594.25 위의 프리미엄에 위치하지만 EMA120 $63,600.26 아래에 있어, 반등은 아직 구조 전환이 아니라 하락 추세 내 되돌림으로 해석됩니다. 이전 저점 $61,344.80은 이미 깨졌고, 7일 저점 및 NY 저점인 $61,067.60이 주요 sell-side liquidity로 남아 있습니다. 단기적으로 $63,600.26-$64,120.90 저항을 회복하지 못하면 $62,594.25 EQ 및 $61,067.60 재테스트 가능성이 높습니다.\",\n  \"key_levels\": {\n    \"support\": [\n      63040.0,\n      62594.25,\n      61344.8,\n      61067.6\n    ],\n    \"resistance\": [\n      63600.26,\n      63674.9,\n      64120.9,\n      65508.3,\n      66880.0,\n      67032.6,\n      67448.0,\n      67470.9\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"64120.90\",\n  \"risk_scenario\": \"$64,120.90 range high를 강하게 회복하고 그 위에서 수용되면 단기 bearish setup은 무효화되며, $65,508.30 BOS 레벨과 이전일 고점 $66,880.00 방향으로 숏 커버링이 발생할 수 있습니다. 특히 $67,032.60-$67,448.00 후보 bearish OB까지 상승하면 상단 BSL $67,470.90 유동성 사냥 후 재분배 여부를 다시 확인해야 합니다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "derivatives": {
      "agent_id": "derivatives",
      "display_name": "Derivatives Trader",
      "signal": "neutral",
      "confidence": 0.58,
      "structure_bias": "bearish",
      "setup_bias": "bullish",
      "setup_score": 0.62,
      "setup_signals": [
        "현재가 $63,076.40은 7일 범위 EQ 약 $65,944.20 아래의 할인 구간에 위치",
        "EMA20 $62,607.38 위로 재진입했지만 EMA120 $63,600.26 및 EMA240 $64,820.20 아래에 있어 구조 전환은 미확정",
        "CVD divergence 0.700 및 cvd_change +214.1870으로 가격 약세 대비 매수 체결 누적이 개선되는 bullish divergence 후보",
        "상단 청산 밀집 $63,500 및 최강 청산 레벨 $64,100이 단기 유동성 타깃으로 남아 있음",
        "OI 24h -3.1230%로 신규 추세성 롱 유입보다는 포지션 언와인딩 성격이 강해 구조적 강세 확인은 부족",
        "롱 계정 비율 0.682, long_account_crowding 1.000으로 롱 포지셔닝이 과밀해 반등 실패 시 하방 청산 리스크 존재"
      ],
      "reasoning": "확정 구조는 아직 bearish입니다. 현재가는 $63,076.40으로 EMA20 $62,607.38은 회복했지만 EMA120 $63,600.26과 EMA240 $64,820.20 아래에 있어 $63,600~$64,820 구간의 구조적 수용이 확인되지 않았습니다. 다만 셋업 관점에서는 7일 범위 EQ 약 $65,944.20 아래의 할인 구간에서 CVD divergence 0.700, cvd_change +214.1870이 나타나며 단기적으로 $63,500 및 최강 청산 레벨 $64,100을 향한 반등 셋업이 존재합니다. 반대로 OI가 24시간 -3.1230% 감소했고 롱 계정 비율이 0.682까지 상승해 롱 과밀이 심하므로, $62,900/$62,700 하방 청산 구간을 이탈하면 반등 셋업은 빠르게 무효화될 수 있습니다.",
      "key_levels": {
        "support": [
          62900,
          62700,
          61067.6,
          61000
        ],
        "resistance": [
          63500,
          63600.26,
          64100,
          64820.2
        ]
      },
      "time_horizon": "short term, 4-8시간",
      "invalidation_level": "$62,700",
      "risk_scenario": "$63,500~$64,100 상단 유동성을 회수하지 못하고 $62,900 이후 $62,700을 하향 이탈하면, 롱 계정 과밀과 OI 언와인딩이 결합되며 $61,000 및 7일 저점 $61,067.60 재테스트로 확장될 수 있습니다.",
      "data_quality": "high",
      "metrics": {
        "cvd_divergence": 0.7,
        "cvd_change": 214.187,
        "oi_trend": 0.188,
        "oi_change_pct_24h": -3.123,
        "oi_latest": 98586.41,
        "funding_pressure": 0.494,
        "funding_avg": 5.86e-06,
        "funding_change_24h": -2.04e-06,
        "long_account_ratio": 0.667,
        "short_account_ratio": 0.333,
        "long_account_latest": 0.682,
        "short_account_latest": 0.318,
        "long_account_change_24h": 0.0206,
        "short_account_change_24h": -0.0206,
        "account_flow_label": "long_accounts_rising_short_accounts_falling",
        "account_short_crowding": 0.0,
        "account_long_crowding": 1.0,
        "ls_imbalance": 0.0,
        "ls_imbalance_interpretation": "high=short-account crowding / low=long-account crowding",
        "spot_futures_basis_score": 0.484,
        "spot_futures_basis_pct": -0.0627,
        "basis_change_lookback": -0.0073,
        "aggregate_score": 0.373,
        "bull_signals": 1,
        "bear_signals": 2,
        "liq_below": [
          [
            62900,
            3774.6251235
          ],
          [
            62700,
            3965.70346515
          ],
          [
            61000,
            5078.894035300001
          ]
        ],
        "liq_above": [
          [
            63500,
            3429.3747170999995
          ],
          [
            64100,
            6119.27103115
          ],
          [
            67800,
            4398.1116725
          ]
        ],
        "strongest_liq_level": 64100,
        "fragility_score": 0.683,
        "positioning_extreme": "balanced"
      },
      "raw_llm_response": "{\n  \"signal\": \"neutral\",\n  \"confidence\": 0.58,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.62,\n  \"setup_signals\": [\n    \"현재가 $63,076.40은 7일 범위 EQ 약 $65,944.20 아래의 할인 구간에 위치\",\n    \"EMA20 $62,607.38 위로 재진입했지만 EMA120 $63,600.26 및 EMA240 $64,820.20 아래에 있어 구조 전환은 미확정\",\n    \"CVD divergence 0.700 및 cvd_change +214.1870으로 가격 약세 대비 매수 체결 누적이 개선되는 bullish divergence 후보\",\n    \"상단 청산 밀집 $63,500 및 최강 청산 레벨 $64,100이 단기 유동성 타깃으로 남아 있음\",\n    \"OI 24h -3.1230%로 신규 추세성 롱 유입보다는 포지션 언와인딩 성격이 강해 구조적 강세 확인은 부족\",\n    \"롱 계정 비율 0.682, long_account_crowding 1.000으로 롱 포지셔닝이 과밀해 반등 실패 시 하방 청산 리스크 존재\"\n  ],\n  \"reasoning\": \"확정 구조는 아직 bearish입니다. 현재가는 $63,076.40으로 EMA20 $62,607.38은 회복했지만 EMA120 $63,600.26과 EMA240 $64,820.20 아래에 있어 $63,600~$64,820 구간의 구조적 수용이 확인되지 않았습니다. 다만 셋업 관점에서는 7일 범위 EQ 약 $65,944.20 아래의 할인 구간에서 CVD divergence 0.700, cvd_change +214.1870이 나타나며 단기적으로 $63,500 및 최강 청산 레벨 $64,100을 향한 반등 셋업이 존재합니다. 반대로 OI가 24시간 -3.1230% 감소했고 롱 계정 비율이 0.682까지 상승해 롱 과밀이 심하므로, $62,900/$62,700 하방 청산 구간을 이탈하면 반등 셋업은 빠르게 무효화될 수 있습니다.\",\n  \"key_levels\": {\n    \"support\": [\n      62900,\n      62700,\n      61067.6,\n      61000\n    ],\n    \"resistance\": [\n      63500,\n      63600.26,\n      64100,\n      64820.2\n    ]\n  },\n  \"time_horizon\": \"short term, 4-8시간\",\n  \"invalidation_level\": \"$62,700\",\n  \"risk_scenario\": \"$63,500~$64,100 상단 유동성을 회수하지 못하고 $62,900 이후 $62,700을 하향 이탈하면, 롱 계정 과밀과 OI 언와인딩이 결합되며 $61,000 및 7일 저점 $61,067.60 재테스트로 확장될 수 있습니다.\",\n  \"data_quality\": \"high\"\n}"
    },
    "fibonacci": {
      "agent_id": "fibonacci",
      "display_name": "Fibonacci Analyst",
      "signal": "bearish",
      "confidence": 0.62,
      "structure_bias": "bearish",
      "setup_bias": "bearish",
      "setup_score": 0.68,
      "setup_signals": [
        "프리미엄 구간 진입: 현재가 $63,076.40은 스윙 EQ ret_0.5 $62,371.25 위에 위치",
        "하락 스윙 $63,675 → $61,067.60의 ret_0.786 $63,116.94를 테스트 중이며 현재가와의 거리는 약 0.06%",
        "상단 피보나치 컨플루언스 저항: $63,243.15 부근에 ret_0.786 및 ret_0.236 클러스터 존재, cluster_score 0.6",
        "구조적 고점 $63,675를 아직 돌파하지 못해 상승 구조 전환은 미확정",
        "0.618 골든비율 $62,678.91은 이미 회복했으나, 이는 현재 구간에서 지지 확인 전까지 되돌림 과열 신호로 해석 가능"
      ],
      "reasoning": "현재 BTC/USDT는 하락 스윙 $63,675 → $61,067.60 이후 깊은 되돌림을 보이며 ret_0.786 $63,116.94 바로 아래인 $63,076.40에서 테스트 중입니다. 피보나치 관점에서 ret_0.618 골든비율 $62,678.91을 회복한 점은 단기 매수세를 보여주지만, 가격이 EQ ret_0.5 $62,371.25 위의 프리미엄 영역에 있고 ret_0.786 저항 및 $63,243.15 컨플루언스에 근접해 있어 단기 리젝션 가능성이 더 큽니다. 구조적으로는 스윙 고점 $63,675를 돌파하지 못했으므로 bullish BOS는 아직 확인되지 않았고, 기존 하락 구조 내 되돌림으로 보는 것이 타당합니다. 하락 반응이 나오면 1차 지지는 $62,678.91, 이후 $62,371.25 및 $62,063.59가 핵심 되돌림 지지대입니다.",
      "key_levels": {
        "support": [
          62678.91,
          62371.25,
          62063.59,
          61067.6
        ],
        "resistance": [
          63116.94,
          63243.15,
          63675
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$63,675.00",
      "risk_scenario": "만약 가격이 ret_0.786 $63,116.94와 컨플루언스 $63,243.15를 흡수한 뒤 스윙 고점 $63,675를 상향 돌파하면, 현재의 하락 되돌림 관점은 무효화되고 숏 커버링성 상승이 EMA240 $64,820.20 및 그 이상으로 확장될 수 있습니다.",
      "data_quality": "medium",
      "metrics": {
        "swing_pair": "High→Low: $63,675 → $61,068",
        "direction": "down",
        "nearest_fib": "ret_0.786",
        "nearest_fib_price": 63116.94,
        "nearest_fib_distance": 0.06,
        "golden_ratio_level": 62678.91,
        "fib_ret_382": 62063.59,
        "fib_ret_618": 62678.91,
        "confluence_zones": [
          {
            "price": 58437.51,
            "count": 2,
            "levels": [
              "ext_1.272",
              "ext_2.0"
            ],
            "cluster_score": 0.6
          },
          {
            "price": 61067.6,
            "count": 2,
            "levels": [
              "ext_1.0",
              "ext_1.0"
            ],
            "cluster_score": 0.6
          },
          {
            "price": 62217.42,
            "count": 2,
            "levels": [
              "ret_0.382",
              "ret_0.5"
            ],
            "cluster_score": 0.6
          },
          {
            "price": 63243.15,
            "count": 2,
            "levels": [
              "ret_0.786",
              "ret_0.236"
            ],
            "cluster_score": 0.6
          }
        ],
        "support_levels": [
          62678.9114,
          62371.25,
          62063.5886
        ],
        "resistance_levels": [
          63116.9378
        ],
        "level_candidates": [
          {
            "name": "ret_0.236",
            "price": 61682.92,
            "distance_pct": 2.21,
            "is_support": true,
            "cluster_score": 0.0
          },
          {
            "name": "ret_0.382",
            "price": 62063.59,
            "distance_pct": 1.61,
            "is_support": true,
            "cluster_score": 0.6
          },
          {
            "name": "ret_0.5",
            "price": 62371.25,
            "distance_pct": 1.12,
            "is_support": true,
            "cluster_score": 0.6
          },
          {
            "name": "ret_0.618",
            "price": 62678.91,
            "distance_pct": 0.63,
            "is_support": true,
            "cluster_score": 0.0
          },
          {
            "name": "ret_0.786",
            "price": 63116.94,
            "distance_pct": 0.06,
            "is_support": false,
            "cluster_score": 0.6
          },
          {
            "name": "ext_1.0",
            "price": 61067.6,
            "distance_pct": 3.18,
            "is_support": true,
            "cluster_score": 0.6
          },
          {
            "name": "ext_1.272",
            "price": 60358.41,
            "distance_pct": 4.31,
            "is_support": true,
            "cluster_score": 0.0
          },
          {
            "name": "ext_1.414",
            "price": 59988.18,
            "distance_pct": 4.9,
            "is_support": true,
            "cluster_score": 0.0
          },
          {
            "name": "ext_1.618",
            "price": 59456.29,
            "distance_pct": 5.74,
            "is_support": true,
            "cluster_score": 0.0
          },
          {
            "name": "ext_2.0",
            "price": 58460.3,
            "distance_pct": 7.32,
            "is_support": true,
            "cluster_score": 0.6
          }
        ],
        "confluence_quality": 0.6,
        "fib_reaction_state": "testing",
        "reaction_probability": 0.65
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.62,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.68,\n  \"setup_signals\": [\n    \"프리미엄 구간 진입: 현재가 $63,076.40은 스윙 EQ ret_0.5 $62,371.25 위에 위치\",\n    \"하락 스윙 $63,675 → $61,067.60의 ret_0.786 $63,116.94를 테스트 중이며 현재가와의 거리는 약 0.06%\",\n    \"상단 피보나치 컨플루언스 저항: $63,243.15 부근에 ret_0.786 및 ret_0.236 클러스터 존재, cluster_score 0.6\",\n    \"구조적 고점 $63,675를 아직 돌파하지 못해 상승 구조 전환은 미확정\",\n    \"0.618 골든비율 $62,678.91은 이미 회복했으나, 이는 현재 구간에서 지지 확인 전까지 되돌림 과열 신호로 해석 가능\"\n  ],\n  \"reasoning\": \"현재 BTC/USDT는 하락 스윙 $63,675 → $61,067.60 이후 깊은 되돌림을 보이며 ret_0.786 $63,116.94 바로 아래인 $63,076.40에서 테스트 중입니다. 피보나치 관점에서 ret_0.618 골든비율 $62,678.91을 회복한 점은 단기 매수세를 보여주지만, 가격이 EQ ret_0.5 $62,371.25 위의 프리미엄 영역에 있고 ret_0.786 저항 및 $63,243.15 컨플루언스에 근접해 있어 단기 리젝션 가능성이 더 큽니다. 구조적으로는 스윙 고점 $63,675를 돌파하지 못했으므로 bullish BOS는 아직 확인되지 않았고, 기존 하락 구조 내 되돌림으로 보는 것이 타당합니다. 하락 반응이 나오면 1차 지지는 $62,678.91, 이후 $62,371.25 및 $62,063.59가 핵심 되돌림 지지대입니다.\",\n  \"key_levels\": {\n    \"support\": [\n      62678.91,\n      62371.25,\n      62063.59,\n      61067.6\n    ],\n    \"resistance\": [\n      63116.94,\n      63243.15,\n      63675\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$63,675.00\",\n  \"risk_scenario\": \"만약 가격이 ret_0.786 $63,116.94와 컨플루언스 $63,243.15를 흡수한 뒤 스윙 고점 $63,675를 상향 돌파하면, 현재의 하락 되돌림 관점은 무효화되고 숏 커버링성 상승이 EMA240 $64,820.20 및 그 이상으로 확장될 수 있습니다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "wyckoff": {
      "agent_id": "wyckoff",
      "display_name": "Wyckoff Expert",
      "signal": "bearish",
      "confidence": 0.84,
      "structure_bias": "bearish",
      "setup_bias": "bearish",
      "setup_score": 0.58,
      "setup_signals": [
        "확정 분배 구조: active_structure 15m_cycle_2에서 BC $64,739.80 → AR $63,607.40 → ST $64,463.70 → SOW_IN_PHASE_B $62,910.00 → UT $64,091.70 → LPSY $63,674.90 → SOW $61,067.60 순서 완성",
        "현재가 $63,076.40은 active AR 저점 $63,607.40 및 LPSY $63,674.90 아래에 있어, 하락 이탈 후 되돌림이 아직 공급 구간을 회복하지 못한 상태",
        "즉시 저항대는 $63,607.40~$63,674.90이며, 이 구간에서 거부되면 Phase E 하락 지속 압력이 우세",
        "SOW 저점 $61,067.60에서 반등은 발생했지만, UT $64,091.70 및 ST $64,463.70 회복 전까지는 구조 전환 증거가 아님"
      ],
      "reasoning": "regime은 DIS이고 regime_state가 confirmed_dis이며, phase_context는 분배 Phase E로 확인되어 구조적 편향은 명확히 bearish입니다. 주요 과거 분배 범위는 BC $67,821.90와 AR $66,388.00에서 시작되었고, 이후 LPSY $66,159.00 및 SOW $65,711.40 이탈로 Phase E가 $61,067.60까지 전개되었습니다. 현재 활성 구조 15m_cycle_2도 BC $64,739.80, AR $63,607.40, UT $64,091.70, LPSY $63,674.90, SOW $61,067.60의 재분배성 하락 체인을 보여주며, 현재가 $63,076.40은 아직 깨진 AR/LPSY 저항을 회복하지 못했습니다. 단기 경로는 $63,607.40~$63,674.90 재테스트 후 거부 여부가 핵심이며, 이 구간을 회복하지 못하면 $62,910.00 및 $61,067.60 재시험 가능성이 높습니다.",
      "key_levels": {
        "support": [
          62910.0,
          61067.6
        ],
        "resistance": [
          63607.4,
          63674.9,
          64091.7,
          64463.7,
          64739.8,
          65711.4,
          66388.0,
          67821.9
        ]
      },
      "time_horizon": "단기~중기",
      "invalidation_level": "$64,739.80 상향 회복 및 수용",
      "risk_scenario": "반대 시나리오는 현재 반등이 단순 되돌림이 아니라 재흡수로 발전하는 경우입니다. 특히 $63,607.40~$63,674.90을 회복하고, 이어서 UT $64,091.70 및 ST $64,463.70 위에서 유지되면 즉시 bearish setup은 약화됩니다. 최종적으로 active BC $64,739.80 위 수용이 확인되면 현재 재분배 Phase E 해석은 무효화됩니다.",
      "data_quality": "high",
      "metrics": {
        "acc_score": 79.4,
        "dis_score": 100.0,
        "regime": "DIS",
        "regime_state": "confirmed_dis",
        "structure_bias": "bearish",
        "phase_context": "confirmed_dis / distribution / Phase E",
        "phases_detected": [
          "BC",
          "AR",
          "ST",
          "SOW_IN_PHASE_B",
          "UT",
          "LPSY",
          "SOW",
          "Phase E"
        ],
        "last_phase": "Phase E",
        "phase_candidates": [
          {
            "label": "BC",
            "side": "high",
            "idx": 50,
            "price": 67821.9,
            "color": "#ffd166"
          },
          {
            "label": "AR",
            "side": "low",
            "idx": 58,
            "price": 66388.0,
            "color": "#06d6a0"
          },
          {
            "label": "ST",
            "side": "high",
            "idx": 78,
            "price": 67195.7,
            "color": "#118ab2"
          },
          {
            "label": "SOW_IN_PHASE_B",
            "side": "low",
            "idx": 115,
            "price": 66620.0,
            "color": "#ef476f"
          },
          {
            "label": "UT",
            "side": "high",
            "idx": 129,
            "price": 67220.2,
            "color": "#f9844a"
          },
          {
            "label": "LPSY",
            "side": "high",
            "idx": 146,
            "price": 66159.0,
            "color": "#8338ec"
          },
          {
            "label": "SOW",
            "side": "low",
            "idx": 149,
            "price": 65711.4,
            "color": "#ef476f"
          },
          {
            "label": "Phase E",
            "side": "low",
            "idx": 293,
            "price": 61067.6,
            "color": "#7209b7"
          }
        ],
        "phase_structures": [
          {
            "structure_id": "15m_cycle_1",
            "sequence": 1,
            "timeframe": "15m",
            "regime": "distribution",
            "role": "prior_completed_structure",
            "is_active": false,
            "is_completed": true,
            "is_confirmed": true,
            "structure_bias": "bearish",
            "phase_context": "distribution",
            "start_idx": 50,
            "end_idx": 293,
            "phase_count": 8,
            "phases": [
              {
                "label": "BC",
                "side": "high",
                "idx": 50,
                "price": 67821.9,
                "color": "#ffd166",
                "dt": "2026-06-03 02:30:00+09:00"
              },
              {
                "label": "AR",
                "side": "low",
                "idx": 58,
                "price": 66388.0,
                "color": "#06d6a0",
                "dt": "2026-06-03 04:30:00+09:00"
              },
              {
                "label": "ST",
                "side": "high",
                "idx": 78,
                "price": 67195.7,
                "color": "#118ab2",
                "dt": "2026-06-03 09:30:00+09:00"
              },
              {
                "label": "SOW_IN_PHASE_B",
                "side": "low",
                "idx": 115,
                "price": 66620.0,
                "color": "#ef476f",
                "dt": "2026-06-03 18:45:00+09:00"
              },
              {
                "label": "UT",
                "side": "high",
                "idx": 129,
                "price": 67220.2,
                "color": "#f9844a",
                "dt": "2026-06-03 22:15:00+09:00"
              },
              {
                "label": "LPSY",
                "side": "high",
                "idx": 146,
                "price": 66159.0,
                "color": "#8338ec",
                "dt": "2026-06-04 02:30:00+09:00"
              },
              {
                "label": "SOW",
                "side": "low",
                "idx": 149,
                "price": 65711.4,
                "color": "#ef476f",
                "dt": "2026-06-04 03:15:00+09:00"
              },
              {
                "label": "Phase E",
                "side": "low",
                "idx": 293,
                "price": 61067.6,
                "color": "#7209b7",
                "dt": "2026-06-05 15:15:00+09:00"
              }
            ]
          },
          {
            "structure_id": "15m_cycle_2",
            "sequence": 2,
            "timeframe": "15m",
            "regime": "distribution",
            "role": "current_structure_candidate",
            "is_active": true,
            "is_completed": false,
            "is_confirmed": true,
            "structure_bias": "bearish",
            "phase_context": "distribution",
            "start_idx": 189,
            "end_idx": 293,
            "phase_count": 7,
            "phases": [
              {
                "label": "BC",
                "side": "high",
                "idx": 189,
                "price": 64739.8,
                "color": "#ffd166",
                "dt": "2026-06-04 13:15:00+09:00"
              },
              {
                "label": "AR",
                "side": "low",
                "idx": 193,
                "price": 63607.4,
                "color": "#06d6a0",
                "dt": "2026-06-04 14:15:00+09:00"
              },
              {
                "label": "ST",
                "side": "high",
                "idx": 228,
                "price": 64463.7,
                "color": "#118ab2",
                "dt": "2026-06-04 23:00:00+09:00"
              },
              {
                "label": "SOW_IN_PHASE_B",
                "side": "low",
                "idx": 243,
                "price": 62910.0,
                "color": "#ef476f",
                "dt": "2026-06-05 02:45:00+09:00"
              },
              {
                "label": "UT",
                "side": "high",
                "idx": 246,
                "price": 64091.7,
                "color": "#f9844a",
                "dt": "2026-06-05 03:30:00+09:00"
              },
              {
                "label": "LPSY",
                "side": "high",
                "idx": 288,
                "price": 63674.9,
                "color": "#8338ec",
                "dt": "2026-06-05 14:00:00+09:00"
              },
              {
                "label": "SOW",
                "side": "low",
                "idx": 293,
                "price": 61067.6,
                "color": "#ef476f",
                "dt": "2026-06-05 15:15:00+09:00"
              }
            ]
          }
        ],
        "active_structure_id": "15m_cycle_2",
        "primary_structure_id": "15m_cycle_1",
        "structure_count": 2,
        "regime_fitness": 1.0,
        "current_event": "Phase E",
        "major_phase": "E",
        "pos_in_range": 0.5,
        "main_range_low": 66388.0,
        "main_range_high": 67821.9
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.84,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.58,\n  \"setup_signals\": [\n    \"확정 분배 구조: active_structure 15m_cycle_2에서 BC $64,739.80 → AR $63,607.40 → ST $64,463.70 → SOW_IN_PHASE_B $62,910.00 → UT $64,091.70 → LPSY $63,674.90 → SOW $61,067.60 순서 완성\",\n    \"현재가 $63,076.40은 active AR 저점 $63,607.40 및 LPSY $63,674.90 아래에 있어, 하락 이탈 후 되돌림이 아직 공급 구간을 회복하지 못한 상태\",\n    \"즉시 저항대는 $63,607.40~$63,674.90이며, 이 구간에서 거부되면 Phase E 하락 지속 압력이 우세\",\n    \"SOW 저점 $61,067.60에서 반등은 발생했지만, UT $64,091.70 및 ST $64,463.70 회복 전까지는 구조 전환 증거가 아님\"\n  ],\n  \"reasoning\": \"regime은 DIS이고 regime_state가 confirmed_dis이며, phase_context는 분배 Phase E로 확인되어 구조적 편향은 명확히 bearish입니다. 주요 과거 분배 범위는 BC $67,821.90와 AR $66,388.00에서 시작되었고, 이후 LPSY $66,159.00 및 SOW $65,711.40 이탈로 Phase E가 $61,067.60까지 전개되었습니다. 현재 활성 구조 15m_cycle_2도 BC $64,739.80, AR $63,607.40, UT $64,091.70, LPSY $63,674.90, SOW $61,067.60의 재분배성 하락 체인을 보여주며, 현재가 $63,076.40은 아직 깨진 AR/LPSY 저항을 회복하지 못했습니다. 단기 경로는 $63,607.40~$63,674.90 재테스트 후 거부 여부가 핵심이며, 이 구간을 회복하지 못하면 $62,910.00 및 $61,067.60 재시험 가능성이 높습니다.\",\n  \"key_levels\": {\n    \"support\": [\n      62910.0,\n      61067.6\n    ],\n    \"resistance\": [\n      63607.4,\n      63674.9,\n      64091.7,\n      64463.7,\n      64739.8,\n      65711.4,\n      66388.0,\n      67821.9\n    ]\n  },\n  \"time_horizon\": \"단기~중기\",\n  \"invalidation_level\": \"$64,739.80 상향 회복 및 수용\",\n  \"risk_scenario\": \"반대 시나리오는 현재 반등이 단순 되돌림이 아니라 재흡수로 발전하는 경우입니다. 특히 $63,607.40~$63,674.90을 회복하고, 이어서 UT $64,091.70 및 ST $64,463.70 위에서 유지되면 즉시 bearish setup은 약화됩니다. 최종적으로 active BC $64,739.80 위 수용이 확인되면 현재 재분배 Phase E 해석은 무효화됩니다.\",\n  \"data_quality\": \"high\"\n}"
    },
    "harmonic": {
      "agent_id": "harmonic",
      "display_name": "Harmonic Specialist",
      "signal": "bullish",
      "confidence": 0.54,
      "structure_bias": "neutral",
      "setup_bias": "bullish",
      "setup_score": 0.62,
      "setup_signals": [
        "완료된 strict bullish Bat PRZ 진입/반응 확인: PRZ $63,031.69-$63,500.11, D $63,140.80, 현재가 $63,076.40",
        "Bat 반응 확인 점수 0.90: PRZ touch/entry, PRZ rejection/defense, PRZ center reclaim/reject, post-D close progress 확인",
        "완료 Bat의 AD 0.382 반응 목표 도달 이력: TP1 $63,723.46, TP2 $64,006.14, TP3 $64,463.70",
        "상단에 forming strict high-quality bullish Gartley PRZ 존재: $63,378.38-$63,704.10, D $63,541.24, XAD/BC_EXT/ABCD 3중 Fib confluence",
        "현재가가 EMA20 $62,607.38 위에 있으나 EMA120 $63,600.26 및 EMA240 $64,820.20 아래에 있어 단기 반등 setup은 있으나 구조 확정은 부족"
      ],
      "reasoning": "현재 BTC는 $63,076.40으로 완료된 strict bullish Bat의 활성 PRZ $63,031.69-$63,500.11 내부/직상단에 있으며, 해당 패턴은 confirmed_reaction=true, reaction_score 0.90으로 가장 실행 관련성이 높습니다. 다만 harmonic governance상 이 반응은 post-confirmation vote-eligible 중간 컨플루언스일 뿐이며, 단독으로 구조 전환을 선언할 수 없으므로 structure_bias는 neutral로 둡니다. setup_bias는 bullish입니다. 이유는 Bat PRZ 방어와 AD0.382 반응 도달 이력이 있고, 상단 $63,378.38-$63,704.10에 high-quality forming Gartley PRZ가 겹쳐 $63,723.46-$64,006.14 구간까지 TP ladder가 열려 있기 때문입니다. 단, 가격은 EMA120 $63,600.26 아래에 있어 $63,500-$63,704 구간에서 재차 거절되면 반등 setup은 빠르게 약화됩니다.",
      "key_levels": {
        "support": [
          63031.69,
          63140.8,
          62449.45,
          62697.79
        ],
        "resistance": [
          63500.11,
          63600.26,
          63723.46,
          64006.14,
          64463.7
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "15분 종가 기준 $63,031.69 하향 이탈",
      "risk_scenario": "$63,031.69 아래로 15분 종가가 확정되면 완료 Bat PRZ 방어가 실패한 것으로 보며, 하단 forming Gartley/Bat 클러스터인 $62,449.45-$62,970.06 및 $62,697.79 D 구간으로 재하락할 위험이 커집니다. 반대로 $63,500.11-$63,704.10을 회복하지 못하고 EMA120 $63,600.26 부근에서 거절되면 상승 TP ladder는 지연되고 박스권 또는 재하락 branch가 우세해질 수 있습니다.",
      "data_quality": "medium",
      "metrics": {
        "patterns_found": 124,
        "completed_patterns_found": 36,
        "forming_d_prz_found": 88,
        "swing_orders_scanned": [
          3,
          5,
          8
        ],
        "swing_search_window": 34,
        "multiscale_swings_scanned": 50,
        "swing_highs_scanned": 23,
        "swing_lows_scanned": 27,
        "timeframe": "15m",
        "prz_active_threshold_pct": 0.3,
        "prz_nearby_threshold_pct": 0.6,
        "prz_watch_threshold_pct": 1.2,
        "prz_max_width_pct": 0.6,
        "quality_counts": {
          "high": 2,
          "medium": 62,
          "low": 60
        },
        "prz_status_counts": {
          "active": 25,
          "nearby": 3,
          "watch": 9,
          "far": 87,
          "forming": 68
        },
        "high_confluence_prz_count": 26,
        "strict_patterns_found": 52,
        "candidate_patterns_found": 72,
        "active_patterns_at_prz": 25,
        "nearby_patterns": 3,
        "all_patterns": [
          "gartley",
          "gartley",
          "gartley",
          "bat",
          "bat",
          "bat",
          "butterfly",
          "gartley",
          "gartley",
          "bat",
          "bat",
          "bat",
          "shark",
          "butterfly",
          "butterfly",
          "shark",
          "crab",
          "gartley",
          "butterfly",
          "bat",
          "bat",
          "crab",
          "crab",
          "bat",
          "crab",
          "crab",
          "bat",
          "butterfly",
          "butterfly",
          "crab",
          "bat",
          "crab",
          "crab",
          "bat",
          "crab",
          "butterfly",
          "bat",
          "crab",
          "crab",
          "crab",
          "crab",
          "crab",
          "crab",
          "shark",
          "gartley",
          "shark",
          "gartley",
          "gartley",
          "shark",
          "bat",
          "butterfly",
          "crab",
          "shark",
          "shark",
          "shark",
          "gartley",
          "gartley",
          "crab",
          "crab",
          "butterfly",
          "butterfly",
          "butterfly",
          "butterfly",
          "gartley",
          "shark",
          "crab",
          "butterfly",
          "crab",
          "butterfly",
          "bat",
          "shark",
          "butterfly",
          "gartley",
          "crab",
          "crab",
          "gartley",
          "butterfly",
          "bat",
          "crab",
          "bat",
          "crab",
          "crab",
          "butterfly",
          "shark",
          "bat",
          "butterfly",
          "shark",
          "shark",
          "crab",
          "crab",
          "butterfly",
          "crab",
          "gartley",
          "shark",
          "butterfly",
          "crab",
          "butterfly",
          "butterfly",
          "butterfly",
          "crab",
          "crab",
          "butterfly",
          "crab",
          "shark",
          "butterfly",
          "shark",
          "butterfly",
          "crab",
          "butterfly",
          "butterfly",
          "shark",
          "crab",
          "crab",
          "crab",
          "butterfly",
          "bat",
          "gartley",
          "gartley",
          "gartley",
          "crab",
          "crab",
          "butterfly",
          "gartley",
          "gartley"
        ],
        "all_signals": [
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish"
        ],
        "best_pattern": "gartley",
        "best_pattern_quality": "strict",
        "best_quality": "medium",
        "best_pattern_score": 0.927,
        "best_completion_status": "forming",
        "nearest_pattern": "bat",
        "nearest_prz": 63029.68,
        "price_to_prz": -0.07,
        "prz_range": [
          62660.94,
          63398.41
        ],
        "council_relevant_prz_count": 2,
        "directional_influence_prz_count": 2,
        "confirmed_reaction_prz_count": 1,
        "validated_harmonic_tp_count": 1,
        "pattern_candidates": [
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.913,
            "ratio_score": 0.933,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 63541.24,
            "prz_range": [
              63378.38,
              63704.1
            ],
            "prz_width_pct": 0.513,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.74,
            "price_to_prz_pct_raw": 0.737,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 63541.24,
              "a_price": 64480.0,
              "tp1_ad_382": 63899.85,
              "tp2_ad_618": 64121.39,
              "tp3_a_or_structure_liquidity": 64480.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6066,
              "ABC": 0.5593
            },
            "x_price": 65711.4,
            "x_idx": 149,
            "x_order": 3,
            "a_price": 64480.0,
            "a_idx": 197,
            "a_order": 5,
            "b_price": 63733.0,
            "b_idx": 231,
            "b_order": 3,
            "c_price": 64150.8,
            "c_idx": 249,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.927,
            "ratio_score": 0.935,
            "prz_score": 0.971,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63318.45,
            "prz_range": [
              63104.61,
              63532.29
            ],
            "prz_width_pct": 0.675,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.38,
            "price_to_prz_pct_raw": 0.3837,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 63318.45,
              "a_price": 64739.8,
              "tp1_ad_382": 63861.4,
              "tp2_ad_618": 64196.84,
              "tp3_a_or_structure_liquidity": 64739.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6071,
              "ABC": 0.6823
            },
            "x_price": 66605.1,
            "x_idx": 131,
            "x_order": 3,
            "a_price": 64739.8,
            "a_idx": 189,
            "a_order": 8,
            "b_price": 63607.4,
            "b_idx": 193,
            "b_order": 5,
            "c_price": 64380.0,
            "c_idx": 233,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.916,
            "ratio_score": 0.985,
            "prz_score": 0.925,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 62697.79,
            "prz_range": [
              62449.45,
              62946.13
            ],
            "prz_width_pct": 0.792,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.6,
            "price_to_prz_pct_raw": -0.6002,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 62697.79,
              "a_price": 64463.7,
              "tp1_ad_382": 63372.37,
              "tp2_ad_618": 63789.12,
              "tp3_a_or_structure_liquidity": 64463.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6155,
              "ABC": 0.6427
            },
            "x_price": 62150.8,
            "x_idx": 218,
            "x_order": 8,
            "a_price": 64463.7,
            "a_idx": 228,
            "a_order": 8,
            "b_price": 63040.0,
            "b_idx": 258,
            "b_order": 8,
            "c_price": 63955.0,
            "c_idx": 270,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.91,
            "ratio_score": 0.908,
            "prz_score": 0.927,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63424.91,
            "prz_range": [
              63175.16,
              63674.67
            ],
            "prz_width_pct": 0.788,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.55,
            "price_to_prz_pct_raw": 0.5525,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 63424.91,
              "a_price": 64463.7,
              "tp1_ad_382": 63821.73,
              "tp2_ad_618": 64066.88,
              "tp3_a_or_structure_liquidity": 64463.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5125,
              "ABC": 0.8855
            },
            "x_price": 63038.0,
            "x_idx": 225,
            "x_order": 3,
            "a_price": 64463.7,
            "a_idx": 228,
            "a_order": 8,
            "b_price": 63733.0,
            "b_idx": 231,
            "b_order": 3,
            "c_price": 64380.0,
            "c_idx": 233,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.871,
            "ratio_score": 0.868,
            "prz_score": 0.945,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63140.8,
            "prz_range": [
              63031.69,
              63500.11
            ],
            "prz_width_pct": 0.74,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.3,
            "price_to_prz_pct_raw": 0.3004,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "post_D_close_progress"
              ],
              "reaction_score": 0.9,
              "reaction_detail": {
                "reaction_score": 0.9,
                "reaction_move_ratio_ad": 0.535,
                "adverse_move_ratio_ad": 0.076,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 63265.9,
              "a_price": 64463.7,
              "tp1_ad_382": 63723.46,
              "tp2_ad_618": 64006.14,
              "tp3_a_or_structure_liquidity": 64463.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5125,
              "ABC": 0.5718,
              "BCD": 2.4174,
              "XAD": 0.9279
            },
            "x_price": 63038.0,
            "x_idx": 225,
            "x_order": 3,
            "a_price": 64463.7,
            "a_idx": 228,
            "a_order": 8,
            "b_price": 63733.0,
            "b_idx": 231,
            "b_order": 3,
            "c_price": 64150.8,
            "c_idx": 249,
            "c_order": 8,
            "d_idx": 253
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.87,
            "ratio_score": 0.866,
            "prz_score": 0.945,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63140.8,
            "prz_range": [
              63031.69,
              63500.11
            ],
            "prz_width_pct": 0.74,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.3,
            "price_to_prz_pct_raw": 0.3004,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "post_D_close_progress"
              ],
              "reaction_score": 0.9,
              "reaction_detail": {
                "reaction_score": 0.9,
                "reaction_move_ratio_ad": 0.535,
                "adverse_move_ratio_ad": 0.076,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 63265.9,
              "a_price": 64463.7,
              "tp1_ad_382": 63723.46,
              "tp2_ad_618": 64006.14,
              "tp3_a_or_structure_liquidity": 64463.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.8533,
              "ABC": 0.5718,
              "BCD": 2.4174,
              "XAD": 1.5449
            },
            "x_price": 63607.4,
            "x_idx": 193,
            "x_order": 5,
            "a_price": 64463.7,
            "a_idx": 228,
            "a_order": 8,
            "b_price": 63733.0,
            "b_idx": 231,
            "b_order": 3,
            "c_price": 64150.8,
            "c_idx": 249,
            "c_order": 8,
            "d_idx": 253
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.845,
            "ratio_score": 0.795,
            "prz_score": 0.971,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63140.8,
            "prz_range": [
              63104.61,
              63532.29
            ],
            "prz_width_pct": 0.675,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.38,
            "price_to_prz_pct_raw": 0.3837,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "post_D_close_progress"
              ],
              "reaction_score": 0.9,
              "reaction_detail": {
                "reaction_score": 0.9,
                "reaction_move_ratio_ad": 0.442,
                "adverse_move_ratio_ad": 0.063,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 63318.45,
              "a_price": 64739.8,
              "tp1_ad_382": 63861.4,
              "tp2_ad_618": 64196.84,
              "tp3_a_or_structure_liquidity": 64739.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6071,
              "ABC": 0.6823,
              "BCD": 1.6039,
              "XAD": 0.8572
            },
            "x_price": 66605.1,
            "x_idx": 131,
            "x_order": 3,
            "a_price": 64739.8,
            "a_idx": 189,
            "a_order": 8,
            "b_price": 63607.4,
            "b_idx": 193,
            "b_order": 5,
            "c_price": 64380.0,
            "c_idx": 233,
            "c_order": 3,
            "d_idx": 253
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.832,
            "ratio_score": 0.686,
            "prz_score": 0.945,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63265.9,
            "prz_range": [
              63031.69,
              63500.11
            ],
            "prz_width_pct": 0.74,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.3,
            "price_to_prz_pct_raw": 0.3004,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 63265.9,
              "a_price": 64463.7,
              "tp1_ad_382": 63723.46,
              "tp2_ad_618": 64006.14,
              "tp3_a_or_structure_liquidity": 64463.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.8533,
              "ABC": 0.5718
            },
            "x_price": 63607.4,
            "x_idx": 193,
            "x_order": 5,
            "a_price": 64463.7,
            "a_idx": 228,
            "a_order": 8,
            "b_price": 63733.0,
            "b_idx": 231,
            "b_order": 3,
            "c_price": 64150.8,
            "c_idx": 249,
            "c_order": 8,
            "d_idx": null
          }
        ],
        "council_relevant_prz": [
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.871,
            "ratio_score": 0.868,
            "prz_score": 0.945,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63140.8,
            "prz_range": [
              63031.69,
              63500.11
            ],
            "prz_width_pct": 0.74,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.3,
            "price_to_prz_pct_raw": 0.3004,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "post_D_close_progress"
              ],
              "reaction_score": 0.9,
              "reaction_detail": {
                "reaction_score": 0.9,
                "reaction_move_ratio_ad": 0.535,
                "adverse_move_ratio_ad": 0.076,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 63265.9,
              "a_price": 64463.7,
              "tp1_ad_382": 63723.46,
              "tp2_ad_618": 64006.14,
              "tp3_a_or_structure_liquidity": 64463.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5125,
              "ABC": 0.5718,
              "BCD": 2.4174,
              "XAD": 0.9279
            },
            "x_price": 63038.0,
            "x_idx": 225,
            "x_order": 3,
            "a_price": 64463.7,
            "a_idx": 228,
            "a_order": 8,
            "b_price": 63733.0,
            "b_idx": 231,
            "b_order": 3,
            "c_price": 64150.8,
            "c_idx": 249,
            "c_order": 8,
            "d_idx": 253
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.913,
            "ratio_score": 0.933,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 63541.24,
            "prz_range": [
              63378.38,
              63704.1
            ],
            "prz_width_pct": 0.513,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.74,
            "price_to_prz_pct_raw": 0.737,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 63541.24,
              "a_price": 64480.0,
              "tp1_ad_382": 63899.85,
              "tp2_ad_618": 64121.39,
              "tp3_a_or_structure_liquidity": 64480.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6066,
              "ABC": 0.5593
            },
            "x_price": 65711.4,
            "x_idx": 149,
            "x_order": 3,
            "a_price": 64480.0,
            "a_idx": 197,
            "a_order": 5,
            "b_price": 63733.0,
            "b_idx": 231,
            "b_order": 3,
            "c_price": 64150.8,
            "c_idx": 249,
            "c_order": 8,
            "d_idx": null
          }
        ],
        "report_detail_candidates": [
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.913,
            "ratio_score": 0.933,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 63541.24,
            "prz_range": [
              63378.38,
              63704.1
            ],
            "prz_width_pct": 0.513,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.74,
            "price_to_prz_pct_raw": 0.737,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 63541.24,
              "a_price": 64480.0,
              "tp1_ad_382": 63899.85,
              "tp2_ad_618": 64121.39,
              "tp3_a_or_structure_liquidity": 64480.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6066,
              "ABC": 0.5593
            },
            "x_price": 65711.4,
            "x_idx": 149,
            "x_order": 3,
            "a_price": 64480.0,
            "a_idx": 197,
            "a_order": 5,
            "b_price": 63733.0,
            "b_idx": 231,
            "b_order": 3,
            "c_price": 64150.8,
            "c_idx": 249,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.927,
            "ratio_score": 0.935,
            "prz_score": 0.971,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63318.45,
            "prz_range": [
              63104.61,
              63532.29
            ],
            "prz_width_pct": 0.675,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.38,
            "price_to_prz_pct_raw": 0.3837,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 63318.45,
              "a_price": 64739.8,
              "tp1_ad_382": 63861.4,
              "tp2_ad_618": 64196.84,
              "tp3_a_or_structure_liquidity": 64739.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6071,
              "ABC": 0.6823
            },
            "x_price": 66605.1,
            "x_idx": 131,
            "x_order": 3,
            "a_price": 64739.8,
            "a_idx": 189,
            "a_order": 8,
            "b_price": 63607.4,
            "b_idx": 193,
            "b_order": 5,
            "c_price": 64380.0,
            "c_idx": 233,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.916,
            "ratio_score": 0.985,
            "prz_score": 0.925,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 62697.79,
            "prz_range": [
              62449.45,
              62946.13
            ],
            "prz_width_pct": 0.792,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.6,
            "price_to_prz_pct_raw": -0.6002,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 62697.79,
              "a_price": 64463.7,
              "tp1_ad_382": 63372.37,
              "tp2_ad_618": 63789.12,
              "tp3_a_or_structure_liquidity": 64463.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6155,
              "ABC": 0.6427
            },
            "x_price": 62150.8,
            "x_idx": 218,
            "x_order": 8,
            "a_price": 64463.7,
            "a_idx": 228,
            "a_order": 8,
            "b_price": 63040.0,
            "b_idx": 258,
            "b_order": 8,
            "c_price": 63955.0,
            "c_idx": 270,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.91,
            "ratio_score": 0.908,
            "prz_score": 0.927,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63424.91,
            "prz_range": [
              63175.16,
              63674.67
            ],
            "prz_width_pct": 0.788,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.55,
            "price_to_prz_pct_raw": 0.5525,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 63424.91,
              "a_price": 64463.7,
              "tp1_ad_382": 63821.73,
              "tp2_ad_618": 64066.88,
              "tp3_a_or_structure_liquidity": 64463.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5125,
              "ABC": 0.8855
            },
            "x_price": 63038.0,
            "x_idx": 225,
            "x_order": 3,
            "a_price": 64463.7,
            "a_idx": 228,
            "a_order": 8,
            "b_price": 63733.0,
            "b_idx": 231,
            "b_order": 3,
            "c_price": 64380.0,
            "c_idx": 233,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.871,
            "ratio_score": 0.868,
            "prz_score": 0.945,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63140.8,
            "prz_range": [
              63031.69,
              63500.11
            ],
            "prz_width_pct": 0.74,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.3,
            "price_to_prz_pct_raw": 0.3004,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "post_D_close_progress"
              ],
              "reaction_score": 0.9,
              "reaction_detail": {
                "reaction_score": 0.9,
                "reaction_move_ratio_ad": 0.535,
                "adverse_move_ratio_ad": 0.076,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 63265.9,
              "a_price": 64463.7,
              "tp1_ad_382": 63723.46,
              "tp2_ad_618": 64006.14,
              "tp3_a_or_structure_liquidity": 64463.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5125,
              "ABC": 0.5718,
              "BCD": 2.4174,
              "XAD": 0.9279
            },
            "x_price": 63038.0,
            "x_idx": 225,
            "x_order": 3,
            "a_price": 64463.7,
            "a_idx": 228,
            "a_order": 8,
            "b_price": 63733.0,
            "b_idx": 231,
            "b_order": 3,
            "c_price": 64150.8,
            "c_idx": 249,
            "c_order": 8,
            "d_idx": 253
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.87,
            "ratio_score": 0.866,
            "prz_score": 0.945,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63140.8,
            "prz_range": [
              63031.69,
              63500.11
            ],
            "prz_width_pct": 0.74,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.3,
            "price_to_prz_pct_raw": 0.3004,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "post_D_close_progress"
              ],
              "reaction_score": 0.9,
              "reaction_detail": {
                "reaction_score": 0.9,
                "reaction_move_ratio_ad": 0.535,
                "adverse_move_ratio_ad": 0.076,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 63265.9,
              "a_price": 64463.7,
              "tp1_ad_382": 63723.46,
              "tp2_ad_618": 64006.14,
              "tp3_a_or_structure_liquidity": 64463.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.8533,
              "ABC": 0.5718,
              "BCD": 2.4174,
              "XAD": 1.5449
            },
            "x_price": 63607.4,
            "x_idx": 193,
            "x_order": 5,
            "a_price": 64463.7,
            "a_idx": 228,
            "a_order": 8,
            "b_price": 63733.0,
            "b_idx": 231,
            "b_order": 3,
            "c_price": 64150.8,
            "c_idx": 249,
            "c_order": 8,
            "d_idx": 253
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.845,
            "ratio_score": 0.795,
            "prz_score": 0.971,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63140.8,
            "prz_range": [
              63104.61,
              63532.29
            ],
            "prz_width_pct": 0.675,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.38,
            "price_to_prz_pct_raw": 0.3837,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "post_D_close_progress"
              ],
              "reaction_score": 0.9,
              "reaction_detail": {
                "reaction_score": 0.9,
                "reaction_move_ratio_ad": 0.442,
                "adverse_move_ratio_ad": 0.063,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 63318.45,
              "a_price": 64739.8,
              "tp1_ad_382": 63861.4,
              "tp2_ad_618": 64196.84,
              "tp3_a_or_structure_liquidity": 64739.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6071,
              "ABC": 0.6823,
              "BCD": 1.6039,
              "XAD": 0.8572
            },
            "x_price": 66605.1,
            "x_idx": 131,
            "x_order": 3,
            "a_price": 64739.8,
            "a_idx": 189,
            "a_order": 8,
            "b_price": 63607.4,
            "b_idx": 193,
            "b_order": 5,
            "c_price": 64380.0,
            "c_idx": 233,
            "c_order": 3,
            "d_idx": 253
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.832,
            "ratio_score": 0.686,
            "prz_score": 0.945,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63265.9,
            "prz_range": [
              63031.69,
              63500.11
            ],
            "prz_width_pct": 0.74,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.3,
            "price_to_prz_pct_raw": 0.3004,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 63265.9,
              "a_price": 64463.7,
              "tp1_ad_382": 63723.46,
              "tp2_ad_618": 64006.14,
              "tp3_a_or_structure_liquidity": 64463.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.8533,
              "ABC": 0.5718
            },
            "x_price": 63607.4,
            "x_idx": 193,
            "x_order": 5,
            "a_price": 64463.7,
            "a_idx": 228,
            "a_order": 8,
            "b_price": 63733.0,
            "b_idx": 231,
            "b_order": 3,
            "c_price": 64150.8,
            "c_idx": 249,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.747,
            "ratio_score": 0.589,
            "prz_score": 0.953,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63011.0,
            "prz_range": [
              62606.97,
              63060.09
            ],
            "prz_width_pct": 0.721,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.39,
            "price_to_prz_pct_raw": -0.385,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.236_reaction_reached",
                "PRZ_center_reclaimed_or_rejected"
              ],
              "reaction_score": 0.65,
              "reaction_detail": {
                "reaction_score": 0.65,
                "reaction_move_ratio_ad": 0.369,
                "adverse_move_ratio_ad": 0.489,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.236_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 62833.53,
              "a_price": 64463.7,
              "tp1_ad_382": 63456.25,
              "tp2_ad_618": 63840.97,
              "tp3_a_or_structure_liquidity": 64463.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.572,
              "ABC": 0.6155,
              "BCD": 1.1594,
              "XAD": 0.6281
            },
            "x_price": 62150.8,
            "x_idx": 218,
            "x_order": 8,
            "a_price": 64463.7,
            "a_idx": 228,
            "a_order": 8,
            "b_price": 63140.8,
            "b_idx": 253,
            "b_order": 3,
            "c_price": 63955.0,
            "c_idx": 270,
            "c_order": 8,
            "d_idx": 272
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.704,
            "ratio_score": 0.601,
            "prz_score": 0.885,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 62300.0,
            "prz_range": [
              62239.18,
              62799.16
            ],
            "prz_width_pct": 0.896,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.88,
            "price_to_prz_pct_raw": -0.8834,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected"
              ],
              "reaction_score": 0.8,
              "reaction_detail": {
                "reaction_score": 0.8,
                "reaction_move_ratio_ad": 0.661,
                "adverse_move_ratio_ad": 0.177,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 62519.17,
              "a_price": 64380.0,
              "tp1_ad_382": 63230.01,
              "tp2_ad_618": 63669.16,
              "tp3_a_or_structure_liquidity": 64380.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6594,
              "ABC": 0.7109,
              "BCD": 1.5837,
              "XAD": 0.9331
            },
            "x_price": 62150.8,
            "x_idx": 218,
            "x_order": 8,
            "a_price": 64380.0,
            "a_idx": 233,
            "a_order": 3,
            "b_price": 62910.0,
            "b_idx": 243,
            "b_order": 8,
            "c_price": 63955.0,
            "c_idx": 270,
            "c_order": 8,
            "d_idx": 280
          },
          {
            "pattern": "shark",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "low",
            "pattern_score": 0.662,
            "ratio_score": 0.61,
            "prz_score": 0.877,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 63955.0,
            "prz_range": [
              63721.49,
              64307.71
            ],
            "prz_width_pct": 0.916,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.49,
            "price_to_prz_pct_raw": 1.4874,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 2.033,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "shark",
              "d_price": 64014.6,
              "a_price": 63140.8,
              "tp1_ad_382": 63680.81,
              "tp2_ad_618": 63474.59,
              "tp3_a_or_structure_liquidity": 63140.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7001,
              "ABC": 1.1426,
              "BCD": 1.1326,
              "XAD": 0.8061
            },
            "x_price": 64150.8,
            "x_idx": 249,
            "x_order": 8,
            "a_price": 63140.8,
            "a_idx": 253,
            "a_order": 3,
            "b_price": 63847.9,
            "b_idx": 256,
            "b_order": 5,
            "c_price": 63040.0,
            "c_idx": 258,
            "c_order": 8,
            "d_idx": 270
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.877,
            "ratio_score": 0.963,
            "prz_score": 0.851,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 62661.9,
            "prz_range": [
              62353.74,
              62970.06
            ],
            "prz_width_pct": 0.984,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.66,
            "price_to_prz_pct_raw": -0.6571,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 62661.9,
              "a_price": 64150.8,
              "tp1_ad_382": 63230.66,
              "tp2_ad_618": 63582.04,
              "tp3_a_or_structure_liquidity": 64150.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.505,
              "ABC": 0.8061
            },
            "x_price": 62150.8,
            "x_idx": 218,
            "x_order": 8,
            "a_price": 64150.8,
            "a_idx": 249,
            "a_order": 8,
            "b_price": 63140.8,
            "b_idx": 253,
            "b_order": 3,
            "c_price": 63955.0,
            "c_idx": 270,
            "c_order": 8,
            "d_idx": null
          }
        ],
        "actionable_patterns_list": [
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.913,
            "prz_proximity": "nearby",
            "prz_range": [
              63378.38,
              63704.1
            ],
            "prz_reversal_direction": "up",
            "price_to_prz_pct": 0.74,
            "high_confluence_prz": true,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 63541.24,
              "a_price": 64480.0,
              "tp1_ad_382": 63899.85,
              "tp2_ad_618": 64121.39,
              "tp3_a_or_structure_liquidity": 64480.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "GARTLEY FORMING HIGH PRZ $63,378.38-$63,704.10: expected reversal UP if price reacts in zone"
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.871,
            "prz_proximity": "active",
            "prz_range": [
              63031.69,
              63500.11
            ],
            "prz_reversal_direction": "up",
            "price_to_prz_pct": 0.3,
            "high_confluence_prz": true,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "post_D_close_progress"
              ],
              "reaction_score": 0.9,
              "reaction_detail": {
                "reaction_score": 0.9,
                "reaction_move_ratio_ad": 0.535,
                "adverse_move_ratio_ad": 0.076,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 63265.9,
              "a_price": 64463.7,
              "tp1_ad_382": 63723.46,
              "tp2_ad_618": 64006.14,
              "tp3_a_or_structure_liquidity": 64463.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "BAT COMPLETED MEDIUM PRZ $63,031.69-$63,500.11: expected reversal UP if price reacts in zone"
          }
        ],
        "best_council_prz": {
          "pattern": "gartley",
          "signal": "bullish",
          "completion_status": "forming",
          "pattern_quality": "strict",
          "quality": "high",
          "pattern_score": 0.913,
          "ratio_score": 0.933,
          "prz_score": 1.0,
          "prz_proximity": "nearby",
          "action_status": "nearby",
          "high_confluence_prz": true,
          "d_price": 63541.24,
          "prz_range": [
            63378.38,
            63704.1
          ],
          "prz_width_pct": 0.513,
          "prz_confluence_count": 3,
          "prz_fib_families": [
            "ABCD",
            "BC_EXT",
            "XAD"
          ],
          "price_to_prz_pct": 0.74,
          "price_to_prz_pct_raw": 0.737,
          "harmonic_vote_state": {
            "authority": "pre_confirmation_reversal_candidate",
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "confirmation_reasons": [],
            "reaction_score": 0.0,
            "reaction_detail": {
              "reaction_score": 0.0,
              "reasons": []
            },
            "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
            "standalone_path_override_allowed": false
          },
          "directional_vote_weight": 0.35,
          "confirmed_reaction": false,
          "standalone_path_override_allowed": false,
          "tp_ladder": {
            "direction": "bullish",
            "source": "gartley",
            "d_price": 63541.24,
            "a_price": 64480.0,
            "tp1_ad_382": 63899.85,
            "tp2_ad_618": 64121.39,
            "tp3_a_or_structure_liquidity": 64480.0,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          "ratios": {
            "XAB": 0.6066,
            "ABC": 0.5593
          },
          "x_price": 65711.4,
          "x_idx": 149,
          "x_order": 3,
          "a_price": 64480.0,
          "a_idx": 197,
          "a_order": 5,
          "b_price": 63733.0,
          "b_idx": 231,
          "b_order": 3,
          "c_price": 64150.8,
          "c_idx": 249,
          "c_order": 8,
          "d_idx": null
        },
        "best_tp_ladder": {
          "direction": "bullish",
          "source": "gartley",
          "d_price": 63541.24,
          "a_price": 64480.0,
          "tp1_ad_382": 63899.85,
          "tp2_ad_618": 64121.39,
          "tp3_a_or_structure_liquidity": 64480.0,
          "note": "Use as strong TP ladder context; not standalone path authority."
        },
        "best_confirmed_tp_ladder": {
          "direction": "bullish",
          "source": "bat",
          "d_price": 63265.9,
          "a_price": 64463.7,
          "tp1_ad_382": 63723.46,
          "tp2_ad_618": 64006.14,
          "tp3_a_or_structure_liquidity": 64463.7,
          "note": "Use as strong TP ladder context; not standalone path authority."
        },
        "tp_ladder": [
          {
            "direction": "bullish",
            "source": "gartley",
            "d_price": 63541.24,
            "a_price": 64480.0,
            "tp1_ad_382": 63899.85,
            "tp2_ad_618": 64121.39,
            "tp3_a_or_structure_liquidity": 64480.0,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bullish",
            "source": "bat",
            "d_price": 63265.9,
            "a_price": 64463.7,
            "tp1_ad_382": 63723.46,
            "tp2_ad_618": 64006.14,
            "tp3_a_or_structure_liquidity": 64463.7,
            "note": "Use as strong TP ladder context; not standalone path authority."
          }
        ],
        "validated_tp_ladder": [
          {
            "direction": "bullish",
            "source": "bat",
            "d_price": 63265.9,
            "a_price": 64463.7,
            "tp1_ad_382": 63723.46,
            "tp2_ad_618": 64006.14,
            "tp3_a_or_structure_liquidity": 64463.7,
            "note": "Use as strong TP ladder context; not standalone path authority."
          }
        ],
        "harmonic_governance": {
          "role": "PRZ reaction + TP ladder confluence, not standalone path engine",
          "pre_confirmation_weight_range": [
            0.25,
            0.35
          ],
          "post_confirmation_vote_weight_range": [
            0.5,
            0.6
          ],
          "standalone_path_override_allowed": false,
          "opposes_core_path_policy": "branch/reversal-risk/reaction-zone unless lower-TF structure and derivatives also confirm",
          "aligns_with_core_path_policy": "modest confidence lift plus strong TP ladder influence"
        },
        "execution_readiness": "watch",
        "directional_scores": {
          "bullish": 0.497,
          "bearish": 0
        },
        "directional_score_total": 0.497,
        "directional_dominance": 1.0
      },
      "raw_llm_response": "{\n  \"signal\": \"bullish\",\n  \"confidence\": 0.54,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.62,\n  \"setup_signals\": [\n    \"완료된 strict bullish Bat PRZ 진입/반응 확인: PRZ $63,031.69-$63,500.11, D $63,140.80, 현재가 $63,076.40\",\n    \"Bat 반응 확인 점수 0.90: PRZ touch/entry, PRZ rejection/defense, PRZ center reclaim/reject, post-D close progress 확인\",\n    \"완료 Bat의 AD 0.382 반응 목표 도달 이력: TP1 $63,723.46, TP2 $64,006.14, TP3 $64,463.70\",\n    \"상단에 forming strict high-quality bullish Gartley PRZ 존재: $63,378.38-$63,704.10, D $63,541.24, XAD/BC_EXT/ABCD 3중 Fib confluence\",\n    \"현재가가 EMA20 $62,607.38 위에 있으나 EMA120 $63,600.26 및 EMA240 $64,820.20 아래에 있어 단기 반등 setup은 있으나 구조 확정은 부족\"\n  ],\n  \"reasoning\": \"현재 BTC는 $63,076.40으로 완료된 strict bullish Bat의 활성 PRZ $63,031.69-$63,500.11 내부/직상단에 있으며, 해당 패턴은 confirmed_reaction=true, reaction_score 0.90으로 가장 실행 관련성이 높습니다. 다만 harmonic governance상 이 반응은 post-confirmation vote-eligible 중간 컨플루언스일 뿐이며, 단독으로 구조 전환을 선언할 수 없으므로 structure_bias는 neutral로 둡니다. setup_bias는 bullish입니다. 이유는 Bat PRZ 방어와 AD0.382 반응 도달 이력이 있고, 상단 $63,378.38-$63,704.10에 high-quality forming Gartley PRZ가 겹쳐 $63,723.46-$64,006.14 구간까지 TP ladder가 열려 있기 때문입니다. 단, 가격은 EMA120 $63,600.26 아래에 있어 $63,500-$63,704 구간에서 재차 거절되면 반등 setup은 빠르게 약화됩니다.\",\n  \"key_levels\": {\n    \"support\": [\n      63031.69,\n      63140.8,\n      62449.45,\n      62697.79\n    ],\n    \"resistance\": [\n      63500.11,\n      63600.26,\n      63723.46,\n      64006.14,\n      64463.7\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"15분 종가 기준 $63,031.69 하향 이탈\",\n  \"risk_scenario\": \"$63,031.69 아래로 15분 종가가 확정되면 완료 Bat PRZ 방어가 실패한 것으로 보며, 하단 forming Gartley/Bat 클러스터인 $62,449.45-$62,970.06 및 $62,697.79 D 구간으로 재하락할 위험이 커집니다. 반대로 $63,500.11-$63,704.10을 회복하지 못하고 EMA120 $63,600.26 부근에서 거절되면 상승 TP ladder는 지연되고 박스권 또는 재하락 branch가 우세해질 수 있습니다.\",\n  \"data_quality\": \"medium\"\n}"
    }
  },
  "chairman_synthesis": {
    "overall_signal": "bearish",
    "overall_confidence": 0.79,
    "execution_setup": {
      "setup_bias": "bearish",
      "setup_strength": 0.68,
      "active_setups": [
        "ICT 기준 현재가 $63,076.40는 단기 EQ $62,594.25 위 프리미엄 구간이며, $63,600.26-$64,120.90 저항 회복 전까지 하락 구조 내 되돌림으로 해석",
        "4회 연속 bearish BOS가 $66,388.00, $66,620.00, $65,508.30, $63,040.00에서 확인되어 구조적 매도 우위 지속",
        "Wyckoff 활성 구조는 BC $64,739.80 → AR $63,607.40 → UT $64,091.70 → LPSY $63,674.90 → SOW $61,067.60 이후 Phase E 위치",
        "Fibonacci 기준 하락 스윙 $63,675 → $61,067.60의 ret_0.786 $63,116.94를 현재 테스트 중이며, $63,116.94-$63,243.15가 되돌림 저항 클러스터",
        "반대편 단기 매수 셋업으로는 EMA20 $62,607.38 회복, 고거래량 strict bullish engulfing, CVD 개선, bullish Bat PRZ $63,031.69-$63,500.11 방어가 존재"
      ],
      "setup_vs_structure": "구조와 주 실행 셋업은 모두 bearish 쪽으로 정렬되어 있으나, $63,031.69-$63,500.11 구간의 harmonic PRZ 및 캔들·CVD 반등 신호가 단기 역방향 리스크로 존재합니다. 따라서 현재는 bearish 구조 속 반등 저항 테스트 국면이며, 실행 관점에서는 $63,600-$63,675 수용 여부가 핵심 분기 조건입니다."
    },
    "signal_breakdown": {
      "bullish_count": 2,
      "bearish_count": 3,
      "neutral_count": 1
    },
    "key_levels": {
      "support": [
        63040.0,
        62910.0,
        62678.91,
        62607.38,
        62594.25,
        62371.25,
        61067.6
      ],
      "resistance": [
        63116.94,
        63243.15,
        63500.11,
        63600.26,
        63607.4,
        63674.9,
        64120.9,
        64820.2,
        65508.3
      ]
    },
    "confluences": [
      "ICT, Wyckoff, Candlestick, Harmonic이 모두 $63,600 부근을 핵심 구조 저항으로 제시합니다: EMA120 $63,600.26, Wyckoff AR $63,607.40, LPSY $63,674.90, NY high $63,674.90, harmonic PRZ 상단 $63,500.11-$63,704.10이 중첩됩니다.",
      "ICT와 Wyckoff는 $61,067.60을 동일하게 주요 하단 구조 기준점으로 인식합니다. Fibonacci도 $61,067.60을 확장·스윙 저점 컨플루언스로 제시해 하단 유동성/구조 저점으로 중요도가 높습니다.",
      "Fibonacci의 ret_0.786 $63,116.94와 Harmonic의 completed bullish Bat D $63,140.80 및 PRZ $63,031.69-$63,500.11이 현재가 $63,076.40 근처에서 겹쳐, 현 구간은 단순 중간 가격이 아니라 구조적 반응 구간입니다.",
      "Derivatives의 하방 청산 레벨 $62,900-$62,700, Candlestick EMA20 $62,607.38, ICT EQ $62,594.25, Fibonacci ret_0.618 $62,678.91이 $62,600-$62,900 지지 클러스터를 형성합니다.",
      "ICT의 $64,120.90, Derivatives의 최강 상방 청산 레벨 $64,100, Harmonic TP2 $64,006.14-$64,121.39가 $64,000-$64,120 구간에 상단 유동성/반응 목표 컨플루언스를 만듭니다."
    ],
    "conflicts": [
      "구조 판정은 Wyckoff, ICT, Fibonacci, Candlestick 구조 해석, Derivatives 구조 해석이 모두 bearish에 가깝지만, Candlestick·Derivatives·Harmonic의 실행 셋업은 단기 bullish 반등을 지지합니다.",
      "ICT는 현재가가 단기 EQ $62,594.25 위 프리미엄이라고 보며 매도 셋업을 강조하는 반면, Candlestick과 Derivatives는 7일 범위 EQ 약 $65,944.20 아래 디스카운트라고 보며 반등 셋업을 인정합니다. 이는 서로 다른 거래 범위를 기준으로 한 해석 차이입니다.",
      "Fibonacci는 $63,116.94-$63,243.15를 깊은 되돌림 저항으로 평가하지만, Harmonic은 같은 가격대의 $63,031.69-$63,500.11을 bullish Bat PRZ 방어 구간으로 평가합니다.",
      "Derivatives에서는 CVD 개선이 bullish divergence 후보이나, OI 24시간 -3.1230% 감소와 롱 계정 비율 0.682 상승은 반등의 질을 약화시키는 포지셔닝 리스크입니다."
    ],
    "executive_summary": "BTC/USDT 15분 구조는 현재 confirmed distribution / Phase E 성격이 우세하며, 이전 분배 하락이 $61,067.60까지 전개된 뒤 활성 재분배 구조의 하단 이탈 후 되돌림 구간에 있습니다. 현재가 $63,076.40은 Wyckoff의 깨진 AR $63,607.40 및 LPSY $63,674.90 아래, ICT의 bearish BOS 체인 내부, Fibonacci ret_0.786 $63,116.94 부근에 있어 구조 전환보다는 하락 구조 내 저항 재시험으로 보는 쪽이 더 강합니다. 다만 $63,031.69-$63,500.11의 bullish Bat PRZ, EMA20 $62,607.38 회복, 고거래량 bullish engulfing, CVD 개선은 단기 반등 셋업으로 유효해 즉시 실행 리스크는 양방향입니다. 구조적으로는 $63,600.26-$64,120.90 회복 여부가 1차 조건이며, $64,820.20 및 $65,508.30 회복 전까지는 bearish regime 판정이 유지됩니다.",
    "raw_llm_response": "{\n  \"overall_signal\": \"bearish\",\n  \"overall_confidence\": 0.79,\n  \"execution_setup\": {\n    \"setup_bias\": \"bearish\",\n    \"setup_strength\": 0.68,\n    \"active_setups\": [\n      \"ICT 기준 현재가 $63,076.40는 단기 EQ $62,594.25 위 프리미엄 구간이며, $63,600.26-$64,120.90 저항 회복 전까지 하락 구조 내 되돌림으로 해석\",\n      \"4회 연속 bearish BOS가 $66,388.00, $66,620.00, $65,508.30, $63,040.00에서 확인되어 구조적 매도 우위 지속\",\n      \"Wyckoff 활성 구조는 BC $64,739.80 → AR $63,607.40 → UT $64,091.70 → LPSY $63,674.90 → SOW $61,067.60 이후 Phase E 위치\",\n      \"Fibonacci 기준 하락 스윙 $63,675 → $61,067.60의 ret_0.786 $63,116.94를 현재 테스트 중이며, $63,116.94-$63,243.15가 되돌림 저항 클러스터\",\n      \"반대편 단기 매수 셋업으로는 EMA20 $62,607.38 회복, 고거래량 strict bullish engulfing, CVD 개선, bullish Bat PRZ $63,031.69-$63,500.11 방어가 존재\"\n    ],\n    \"setup_vs_structure\": \"구조와 주 실행 셋업은 모두 bearish 쪽으로 정렬되어 있으나, $63,031.69-$63,500.11 구간의 harmonic PRZ 및 캔들·CVD 반등 신호가 단기 역방향 리스크로 존재합니다. 따라서 현재는 bearish 구조 속 반등 저항 테스트 국면이며, 실행 관점에서는 $63,600-$63,675 수용 여부가 핵심 분기 조건입니다.\"\n  },\n  \"signal_breakdown\": {\n    \"bullish_count\": 2,\n    \"bearish_count\": 3,\n    \"neutral_count\": 1\n  },\n  \"key_levels\": {\n    \"support\": [\n      63040.0,\n      62910.0,\n      62678.91,\n      62607.38,\n      62594.25,\n      62371.25,\n      61067.6\n    ],\n    \"resistance\": [\n      63116.94,\n      63243.15,\n      63500.11,\n      63600.26,\n      63607.4,\n      63674.9,\n      64120.9,\n      64820.2,\n      65508.3\n    ]\n  },\n  \"confluences\": [\n    \"ICT, Wyckoff, Candlestick, Harmonic이 모두 $63,600 부근을 핵심 구조 저항으로 제시합니다: EMA120 $63,600.26, Wyckoff AR $63,607.40, LPSY $63,674.90, NY high $63,674.90, harmonic PRZ 상단 $63,500.11-$63,704.10이 중첩됩니다.\",\n    \"ICT와 Wyckoff는 $61,067.60을 동일하게 주요 하단 구조 기준점으로 인식합니다. Fibonacci도 $61,067.60을 확장·스윙 저점 컨플루언스로 제시해 하단 유동성/구조 저점으로 중요도가 높습니다.\",\n    \"Fibonacci의 ret_0.786 $63,116.94와 Harmonic의 completed bullish Bat D $63,140.80 및 PRZ $63,031.69-$63,500.11이 현재가 $63,076.40 근처에서 겹쳐, 현 구간은 단순 중간 가격이 아니라 구조적 반응 구간입니다.\",\n    \"Derivatives의 하방 청산 레벨 $62,900-$62,700, Candlestick EMA20 $62,607.38, ICT EQ $62,594.25, Fibonacci ret_0.618 $62,678.91이 $62,600-$62,900 지지 클러스터를 형성합니다.\",\n    \"ICT의 $64,120.90, Derivatives의 최강 상방 청산 레벨 $64,100, Harmonic TP2 $64,006.14-$64,121.39가 $64,000-$64,120 구간에 상단 유동성/반응 목표 컨플루언스를 만듭니다.\"\n  ],\n  \"conflicts\": [\n    \"구조 판정은 Wyckoff, ICT, Fibonacci, Candlestick 구조 해석, Derivatives 구조 해석이 모두 bearish에 가깝지만, Candlestick·Derivatives·Harmonic의 실행 셋업은 단기 bullish 반등을 지지합니다.\",\n    \"ICT는 현재가가 단기 EQ $62,594.25 위 프리미엄이라고 보며 매도 셋업을 강조하는 반면, Candlestick과 Derivatives는 7일 범위 EQ 약 $65,944.20 아래 디스카운트라고 보며 반등 셋업을 인정합니다. 이는 서로 다른 거래 범위를 기준으로 한 해석 차이입니다.\",\n    \"Fibonacci는 $63,116.94-$63,243.15를 깊은 되돌림 저항으로 평가하지만, Harmonic은 같은 가격대의 $63,031.69-$63,500.11을 bullish Bat PRZ 방어 구간으로 평가합니다.\",\n    \"Derivatives에서는 CVD 개선이 bullish divergence 후보이나, OI 24시간 -3.1230% 감소와 롱 계정 비율 0.682 상승은 반등의 질을 약화시키는 포지셔닝 리스크입니다.\"\n  ],\n  \"highest_conviction_analyst\": \"Wyckoff Expert — confirmed distribution regime, Phase E 구조, BC $64,739.80 → AR $63,607.40 → UT $64,091.70 → LPSY $63,674.90 → SOW $61,067.60의 구체적 재분배 시퀀스를 제시했고, 현재가가 깨진 AR/LPSY 아래에 있다는 구조 진단이 ICT의 4회 bearish BOS와 강하게 일치합니다.\",\n  \"invalidation_level\": \"$64,820.20 상방 안착 및 $65,508.30 회복 시 현재 bearish 구조 판정은 약화되며, $63,600.26-$64,120.90 회복은 1차 경고 조건입니다.\",\n  \"executive_summary\": \"BTC/USDT 15분 구조는 현재 confirmed distribution / Phase E 성격이 우세하며, 이전 분배 하락이 $61,067.60까지 전개된 뒤 활성 재분배 구조의 하단 이탈 후 되돌림 구간에 있습니다. 현재가 $63,076.40은 Wyckoff의 깨진 AR $63,607.40 및 LPSY $63,674.90 아래, ICT의 bearish BOS 체인 내부, Fibonacci ret_0.786 $63,116.94 부근에 있어 구조 전환보다는 하락 구조 내 저항 재시험으로 보는 쪽이 더 강합니다. 다만 $63,031.69-$63,500.11의 bullish Bat PRZ, EMA20 $62,607.38 회복, 고거래량 bullish engulfing, CVD 개선은 단기 반등 셋업으로 유효해 즉시 실행 리스크는 양방향입니다. 구조적으로는 $63,600.26-$64,120.90 회복 여부가 1차 조건이며, $64,820.20 및 $65,508.30 회복 전까지는 bearish regime 판정이 유지됩니다.\"\n}"
  },
  "overall_signal": "bearish",
  "overall_confidence": 0.79,
  "operating_path": {
    "path_type": "complex",
    "confidence": 0.68,
    "waypoints": [
      {
        "seq": 1,
        "price": 63607.4,
        "type": "resistance_test",
        "source": "Harmonic Specialist (confirmed Bat PRZ reaction 0.90, TP1 $63,723.46), Candlestick Reader (strict high-volume bullish engulfing, EMA20 reclaim), Derivatives Trader (CVD divergence +214.19), Wyckoff Expert (AR $63,607.40 / LPSY $63,674.90), ICT Trader (EMA120 $63,600.26 resistance)",
        "description": "확인된 harmonic Bat PRZ 반응(reaction_score 0.90), strict 고거래량 bullish engulfing, CVD divergence(+214.19), EMA20 $62,607.38 회복이 단기 반등을 지지하므로 현재가 $63,076.40에서 곧바로 하락하기보다 $63,500.11(PRZ 상단)–$63,607.40(EMA120 $63,600.26/Wyckoff AR)–$63,674.90(LPSY/NY 고점) 저항 클러스터를 먼저 시험할 가능성이 높습니다. 이 구간은 harmonic TP1 $63,723.46까지 중첩되는 핵심 분기 저항이며, 거부 시 4회 연속 bearish BOS·Phase E 구조가 재확인됩니다. 반등이 약하면 $63,243.15(fib 컨플루언스)에서 조기 거부될 수 있습니다.",
        "est_hours": 3.0,
        "turning_zone": [
          63607.4,
          63800.0
        ],
        "likely_wick": 63723.46,
        "rejection_confirm": 63500.11,
        "invalid_overshoot": 64006.14,
        "calibration_reasoning": "검증된(CONFIRMED_REACTION) harmonic Bat의 TP1 AD0.382 $63,723.46을 상단 핵심 앵커로 사용하고, $63,607.40(EMA120/Wyckoff AR)~$63,674.90(LPSY·NY 고점 유동성) 저항 클러스터를 turning_zone으로 묶었습니다(폭 $192.6 ≈ 0.36 ATR). NY 고점 유동성을 스윕한 뒤 TP1을 태깅하는 흐름이 가장 유력한 wick이며, $63,500.11(PRZ 상단) 하향 이탈 시 거부 확정, TP2 $64,006.14 도달 시 상방 연장으로 무효화됩니다."
      },
      {
        "seq": 2,
        "price": 62594.25,
        "type": "support_test",
        "source": "ICT Trader (EQ $62,594.25), Candlestick Reader (EMA20 $62,607.38), Fibonacci Analyst (ret_0.618 $62,678.91), Derivatives Trader (하방 청산 $62,700-$62,900), Wyckoff Expert (SOW_IN_PHASE_B $62,910.00)",
        "description": "$63,600–$63,675 거부 후 첫 하락 목표는 $62,594.25–$62,910.00 지지 클러스터입니다. ICT EQ $62,594.25, EMA20 $62,607.38, Fibonacci ret_0.618 골든비율 $62,678.91, Derivatives 하방 청산 $62,700–$62,900, Wyckoff SOW_IN_PHASE_B $62,910.00이 중첩됩니다. 디스카운트 전환 지점으로 단기 반발이 가능하나, 롱 과밀(롱 비율 0.682)과 OI 24h -3.12% 감소가 반등 질을 약화시켜 이 구간 이탈 압력이 우세합니다.",
        "est_hours": 9.0,
        "turning_zone": [
          62371.25,
          62594.25
        ],
        "likely_wick": 62371.25,
        "rejection_confirm": 62678.91,
        "invalid_overshoot": 62217.42,
        "calibration_reasoning": "support_test이므로 ICT EQ/EMA20 $62,594.25를 상단, fib ret_0.5·Chairman 지지 $62,371.25를 하단으로 turning_zone을 설정했습니다(폭 $223 ≈ 0.42 ATR). 롱 과밀(0.682)·OI 감소로 반등 질이 약해 클러스터 바닥 $62,371.25까지 wick될 가능성이 높고, $62,678.91(0.618 골든비율) 회복 시 지지 반등 확정, $62,217.42(ret_0.382/0.5 컨플루언스) 이탈 시 $61,067.60 향한 연속 하락으로 무효화됩니다."
      },
      {
        "seq": 3,
        "price": 61067.6,
        "type": "liquidity_sweep",
        "source": "Wyckoff Expert (SOW $61,067.60), ICT Trader (sell-side liquidity / 7d·NY 저점), Fibonacci Analyst (확장·스윙 저점 컨플루언스)",
        "description": "$62,594.25 클러스터 이탈 시 경로는 Fibonacci $62,371.25(ret_0.5)·$62,217.42·$62,063.59를 거쳐 $61,067.60으로 향합니다. $61,067.60은 Wyckoff SOW, 7일·NY 저점, ICT sell-side liquidity, Fibonacci 확장 컨플루언스가 동시에 일치하는 최대 하단 구조 기준점으로, Phase E 분배 하락의 1차 목표이자 주요 유동성 흡수 구간입니다.",
        "est_hours": 21.0,
        "turning_zone": [
          60700.0,
          61067.6
        ],
        "likely_wick": 60950.0,
        "rejection_confirm": 61200.0,
        "invalid_overshoot": 60534.0,
        "calibration_reasoning": "터미널 웨이포인트이자 ICT sell-side(하방) 유동성 스윕이므로 $61,067.60(Wyckoff SOW·7일/NY 저점·fib ext_1.0 컨플루언스) 아래로 확장한 와이드 존을 적용했습니다(폭 $367.6 ≈ 0.69 ATR). 라운드넘버 $61,000 자석과 저점 하단 스톱 스윕을 반영해 likely_wick을 $60,950로, $61,200(저점 재탈환) 회복 시 스윕 반전 확정, $60,534(약 1 ATR 하단, $58,437.51 컨플루언스 방향) 이탈 시 하방 연장으로 무효화됩니다."
      }
    ],
    "period_extremes": {
      "4h": {
        "expected_high": 63674.9,
        "expected_low": 62910.0,
        "high_first": true
      },
      "8h": {
        "expected_high": 63674.9,
        "expected_low": 62594.25,
        "high_first": true
      },
      "24h": {
        "expected_high": 63674.9,
        "expected_low": 61067.6,
        "high_first": true
      }
    },
    "triggers": {
      "bullish": {
        "price": 63674.9,
        "description": "15분 종가가 $63,674.90(LPSY/NY 고점·Wyckoff AR) 위로 수용되면 단기 반등이 예상보다 강함을 의미하며 $64,006.14–$64,120.90 상단 유동성으로 확장됩니다. 이 경우 bearish 되돌림→하락 경로의 신뢰도가 급격히 약화됩니다."
      },
      "bearish": {
        "price": 62594.25,
        "description": "$62,594.25(ICT EQ)·$62,607.38(EMA20) 지지 클러스터를 15분 종가로 하향 이탈하면 하락 가속이 확인되며, 롱 청산 구간($62,700/$62,900) 트리거와 함께 $61,067.60 sell-side liquidity로의 직행 압력이 강해집니다."
      }
    },
    "scenario_invalidation": 64120.9,
    "raw_llm_response": "```json\n{\n  \"path_type\": \"complex\",\n  \"confidence\": 0.68,\n  \"waypoints\": [\n    {\n      \"seq\": 1,\n      \"price\": 63607.40,\n      \"type\": \"resistance_test\",\n      \"source\": \"Harmonic Specialist (confirmed Bat PRZ reaction 0.90, TP1 $63,723.46), Candlestick Reader (strict high-volume bullish engulfing, EMA20 reclaim), Derivatives Trader (CVD divergence +214.19), Wyckoff Expert (AR $63,607.40 / LPSY $63,674.90), ICT Trader (EMA120 $63,600.26 resistance)\",\n      \"description\": \"확인된 harmonic Bat PRZ 반응(reaction_score 0.90), strict 고거래량 bullish engulfing, CVD divergence(+214.19), EMA20 $62,607.38 회복이 단기 반등을 지지하므로 현재가 $63,076.40에서 곧바로 하락하기보다 $63,500.11(PRZ 상단)–$63,607.40(EMA120 $63,600.26/Wyckoff AR)–$63,674.90(LPSY/NY 고점) 저항 클러스터를 먼저 시험할 가능성이 높습니다. 이 구간은 harmonic TP1 $63,723.46까지 중첩되는 핵심 분기 저항이며, 거부 시 4회 연속 bearish BOS·Phase E 구조가 재확인됩니다. 반등이 약하면 $63,243.15(fib 컨플루언스)에서 조기 거부될 수 있습니다.\",\n      \"est_hours\": 3.0\n    },\n    {\n      \"seq\": 2,\n      \"price\": 62594.25,\n      \"type\": \"support_test\",\n      \"source\": \"ICT Trader (EQ $62,594.25), Candlestick Reader (EMA20 $62,607.38), Fibonacci Analyst (ret_0.618 $62,678.91), Derivatives Trader (하방 청산 $62,700-$62,900), Wyckoff Expert (SOW_IN_PHASE_B $62,910.00)\",\n      \"description\": \"$63,600–$63,675 거부 후 첫 하락 목표는 $62,594.25–$62,910.00 지지 클러스터입니다. ICT EQ $62,594.25, EMA20 $62,607.38, Fibonacci ret_0.618 골든비율 $62,678.91, Derivatives 하방 청산 $62,700–$62,900, Wyckoff SOW_IN_PHASE_B $62,910.00이 중첩됩니다. 디스카운트 전환 지점으로 단기 반발이 가능하나, 롱 과밀(롱 비율 0.682)과 OI 24h -3.12% 감소가 반등 질을 약화시켜 이 구간 이탈 압력이 우세합니다.\",\n      \"est_hours\": 9.0\n    },\n    {\n      \"seq\": 3,\n      \"price\": 61067.60,\n      \"type\": \"liquidity_sweep\",\n      \"source\": \"Wyckoff Expert (SOW $61,067.60), ICT Trader (sell-side liquidity / 7d·NY 저점), Fibonacci Analyst (확장·스윙 저점 컨플루언스)\",\n      \"description\": \"$62,594.25 클러스터 이탈 시 경로는 Fibonacci $62,371.25(ret_0.5)·$62,217.42·$62,063.59를 거쳐 $61,067.60으로 향합니다. $61,067.60은 Wyckoff SOW, 7일·NY 저점, ICT sell-side liquidity, Fibonacci 확장 컨플루언스가 동시에 일치하는 최대 하단 구조 기준점으로, Phase E 분배 하락의 1차 목표이자 주요 유동성 흡수 구간입니다.\",\n      \"est_hours\": 21.0\n    }\n  ],\n  \"period_extremes\": {\n    \"4h\":  {\"expected_high\": 63674.90, \"expected_low\": 62910.00, \"high_first\": true},\n    \"8h\":  {\"expected_high\": 63674.90, \"expected_low\": 62594.25, \"high_first\": true},\n    \"24h\": {\"expected_high\": 63674.90, \"expected_low\": 61067.60, \"high_first\": true}\n  },\n  \"triggers\": {\n    \"bullish\": {\n      \"price\": 63674.90,\n      \"description\": \"15분 종가가 $63,674.90(LPSY/NY 고점·Wyckoff AR) 위로 수용되면 단기 반등이 예상보다 강함을 의미하며 $64,006.14–$64,120.90 상단 유동성으로 확장됩니다. 이 경우 bearish 되돌림→하락 경로의 신뢰도가 급격히 약화됩니다.\"\n    },\n    \"bearish\": {\n      \"price\": 62594.25,\n      \"description\": \"$62,594.25(ICT EQ)·$62,607.38(EMA20) 지지 클러스터를 15분 종가로 하향 이탈하면 하락 가속이 확인되며, 롱 청산 구간($62,700/$62,900) 트리거와 함께 $61,067.60 sell-side liquidity로의 직행 압력이 강해집니다.\"\n    }\n  },\n  \"scenario_invalidation\": 64120.90\n}\n```"
  },
  "tp_calibration": {
    "calibrated_waypoints": [
      {
        "seq": 1,
        "base_target": 63607.4,
        "turning_zone": [
          63607.4,
          63800.0
        ],
        "likely_wick": 63723.46,
        "rejection_confirm": 63500.11,
        "invalid_overshoot": 64006.14,
        "calibration_reasoning": "검증된(CONFIRMED_REACTION) harmonic Bat의 TP1 AD0.382 $63,723.46을 상단 핵심 앵커로 사용하고, $63,607.40(EMA120/Wyckoff AR)~$63,674.90(LPSY·NY 고점 유동성) 저항 클러스터를 turning_zone으로 묶었습니다(폭 $192.6 ≈ 0.36 ATR). NY 고점 유동성을 스윕한 뒤 TP1을 태깅하는 흐름이 가장 유력한 wick이며, $63,500.11(PRZ 상단) 하향 이탈 시 거부 확정, TP2 $64,006.14 도달 시 상방 연장으로 무효화됩니다."
      },
      {
        "seq": 2,
        "base_target": 62594.25,
        "turning_zone": [
          62371.25,
          62594.25
        ],
        "likely_wick": 62371.25,
        "rejection_confirm": 62678.91,
        "invalid_overshoot": 62217.42,
        "calibration_reasoning": "support_test이므로 ICT EQ/EMA20 $62,594.25를 상단, fib ret_0.5·Chairman 지지 $62,371.25를 하단으로 turning_zone을 설정했습니다(폭 $223 ≈ 0.42 ATR). 롱 과밀(0.682)·OI 감소로 반등 질이 약해 클러스터 바닥 $62,371.25까지 wick될 가능성이 높고, $62,678.91(0.618 골든비율) 회복 시 지지 반등 확정, $62,217.42(ret_0.382/0.5 컨플루언스) 이탈 시 $61,067.60 향한 연속 하락으로 무효화됩니다."
      },
      {
        "seq": 3,
        "base_target": 61067.6,
        "turning_zone": [
          60700.0,
          61067.6
        ],
        "likely_wick": 60950.0,
        "rejection_confirm": 61200.0,
        "invalid_overshoot": 60534.0,
        "calibration_reasoning": "터미널 웨이포인트이자 ICT sell-side(하방) 유동성 스윕이므로 $61,067.60(Wyckoff SOW·7일/NY 저점·fib ext_1.0 컨플루언스) 아래로 확장한 와이드 존을 적용했습니다(폭 $367.6 ≈ 0.69 ATR). 라운드넘버 $61,000 자석과 저점 하단 스톱 스윕을 반영해 likely_wick을 $60,950로, $61,200(저점 재탈환) 회복 시 스윕 반전 확정, $60,534(약 1 ATR 하단, $58,437.51 컨플루언스 방향) 이탈 시 하방 연장으로 무효화됩니다."
      }
    ],
    "raw_llm_response": "```json\n{\n  \"calibrated_waypoints\": [\n    {\n      \"seq\": 1,\n      \"base_target\": 63607.40,\n      \"turning_zone\": [63607.40, 63800.00],\n      \"likely_wick\": 63723.46,\n      \"rejection_confirm\": 63500.11,\n      \"invalid_overshoot\": 64006.14,\n      \"calibration_reasoning\": \"검증된(CONFIRMED_REACTION) harmonic Bat의 TP1 AD0.382 $63,723.46을 상단 핵심 앵커로 사용하고, $63,607.40(EMA120/Wyckoff AR)~$63,674.90(LPSY·NY 고점 유동성) 저항 클러스터를 turning_zone으로 묶었습니다(폭 $192.6 ≈ 0.36 ATR). NY 고점 유동성을 스윕한 뒤 TP1을 태깅하는 흐름이 가장 유력한 wick이며, $63,500.11(PRZ 상단) 하향 이탈 시 거부 확정, TP2 $64,006.14 도달 시 상방 연장으로 무효화됩니다.\"\n    },\n    {\n      \"seq\": 2,\n      \"base_target\": 62594.25,\n      \"turning_zone\": [62371.25, 62594.25],\n      \"likely_wick\": 62371.25,\n      \"rejection_confirm\": 62678.91,\n      \"invalid_overshoot\": 62217.42,\n      \"calibration_reasoning\": \"support_test이므로 ICT EQ/EMA20 $62,594.25를 상단, fib ret_0.5·Chairman 지지 $62,371.25를 하단으로 turning_zone을 설정했습니다(폭 $223 ≈ 0.42 ATR). 롱 과밀(0.682)·OI 감소로 반등 질이 약해 클러스터 바닥 $62,371.25까지 wick될 가능성이 높고, $62,678.91(0.618 골든비율) 회복 시 지지 반등 확정, $62,217.42(ret_0.382/0.5 컨플루언스) 이탈 시 $61,067.60 향한 연속 하락으로 무효화됩니다.\"\n    },\n    {\n      \"seq\": 3,\n      \"base_target\": 61067.60,\n      \"turning_zone\": [60700.00, 61067.60],\n      \"likely_wick\": 60950.00,\n      \"rejection_confirm\": 61200.00,\n      \"invalid_overshoot\": 60534.00,\n      \"calibration_reasoning\": \"터미널 웨이포인트이자 ICT sell-side(하방) 유동성 스윕이므로 $61,067.60(Wyckoff SOW·7일/NY 저점·fib ext_1.0 컨플루언스) 아래로 확장한 와이드 존을 적용했습니다(폭 $367.6 ≈ 0.69 ATR). 라운드넘버 $61,000 자석과 저점 하단 스톱 스윕을 반영해 likely_wick을 $60,950로, $61,200(저점 재탈환) 회복 시 스윕 반전 확정, $60,534(약 1 ATR 하단, $58,437.51 컨플루언스 방향) 이탈 시 하방 연장으로 무효화됩니다.\"\n    }\n  ]\n}\n```"
  },
  "timing": {
    "stages": {
      "stage1_agents": 27.3,
      "chairman": 51.9,
      "operating_path": 226.6,
      "tp_calibrator": 249.9
    },
    "agents": {},
    "total_s": 556.0
  }
}