{
  "symbol": "BTC/USDT",
  "timeframe": "4h",
  "timestamp": "2026-07-05 17:00 KST",
  "last_price": 62995.1,
  "num_candles": 300,
  "stage1_analyses": {
    "candlestick": {
      "agent_id": "candlestick",
      "display_name": "Candlestick Reader",
      "signal": "bearish",
      "confidence": 0.62,
      "structure_bias": "neutral",
      "setup_bias": "bearish",
      "setup_score": 0.68,
      "setup_signals": [
        "7일 범위 EQ $60,604.30 상단의 프리미엄 구간에서 현재가 $62,995.10 거래",
        "7일 고점 $63,450.00 근처에서 strict evening_star 감지, 품질 0.686",
        "최근 패턴에서 bearish_engulfing@293, bearish_harami@297, evening_star@298가 연속 출현하며 bear_score 2.15가 bull_score 1.50을 상회",
        "현재가가 EMA20 $62,068.21 및 EMA120 $62,249.19 위에 있으나, 상위 저항 EMA240 $64,907.52 아래에 위치",
        "고거래량 패턴이 없어 하락 전환은 아직 구조 확정보다는 사전 경고 성격"
      ],
      "reasoning": "현재 BTC는 $62,995.10으로 7일 고점 $63,450.00에 매우 근접해 있으며, 7일 범위 EQ $60,604.30보다 위인 프리미엄 구간에 있습니다. 최근 strict 등급의 evening_star 품질 0.686이 확인되었고, bearish_engulfing 및 bearish_harami까지 동반되어 단기 매수 피로 신호가 우세합니다. 다만 가격은 EMA20 $62,068.21과 EMA120 $62,249.19 위에 있어 아직 하락 구조가 확정된 것은 아니며, EMA240 $64,907.52 아래에서 중기 저항을 받는 중립 구조로 해석됩니다. 고거래량 패턴이 없기 때문에 강한 추세 반전보다는 $63,450.00 저항 부근의 단기 약세 셋업으로 판단합니다.",
      "key_levels": {
        "support": [
          62249.19,
          62068.21,
          60604.3,
          57758.6
        ],
        "resistance": [
          63450.0,
          64907.52
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$63,450.00 상향 돌파 및 4시간봉 종가 안착",
      "risk_scenario": "$63,450.00을 강하게 돌파하면 evening_star와 bearish_harami의 약세 신호가 무효화되고, EMA240 $64,907.52까지 숏 커버링성 상승이 이어질 수 있습니다. 반대로 $62,249.19와 $62,068.21을 하향 이탈하면 단기 하락 셋업이 확인되며 EQ $60,604.30까지 되돌림이 확대될 수 있습니다.",
      "data_quality": "medium",
      "metrics": {
        "total_patterns_detected": 141,
        "recent_patterns": 6,
        "pattern_list": [
          "bullish_engulfing@290",
          "bearish_engulfing@293",
          "bullish_engulfing@295",
          "evening_star@298",
          "doji@292",
          "bearish_harami@297"
        ],
        "atr_value": 687.16,
        "vol_avg_20": 23637.28,
        "high_volume_patterns": [],
        "pattern_candidates": [
          {
            "pattern": "evening_star",
            "signal": "bearish",
            "pattern_quality": 0.686,
            "tier": "strict",
            "high_volume": false
          },
          {
            "pattern": "bearish_engulfing",
            "signal": "bearish",
            "pattern_quality": 0.644,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "bearish_harami",
            "signal": "bearish",
            "pattern_quality": 0.62,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "bullish_engulfing",
            "signal": "bullish",
            "pattern_quality": 0.489,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "bullish_engulfing",
            "signal": "bullish",
            "pattern_quality": 0.424,
            "tier": "candidate",
            "high_volume": false
          }
        ],
        "best_pattern_quality": 0.686,
        "bull_score": 1.5,
        "bear_score": 2.15
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.62,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.68,\n  \"setup_signals\": [\n    \"7일 범위 EQ $60,604.30 상단의 프리미엄 구간에서 현재가 $62,995.10 거래\",\n    \"7일 고점 $63,450.00 근처에서 strict evening_star 감지, 품질 0.686\",\n    \"최근 패턴에서 bearish_engulfing@293, bearish_harami@297, evening_star@298가 연속 출현하며 bear_score 2.15가 bull_score 1.50을 상회\",\n    \"현재가가 EMA20 $62,068.21 및 EMA120 $62,249.19 위에 있으나, 상위 저항 EMA240 $64,907.52 아래에 위치\",\n    \"고거래량 패턴이 없어 하락 전환은 아직 구조 확정보다는 사전 경고 성격\"\n  ],\n  \"reasoning\": \"현재 BTC는 $62,995.10으로 7일 고점 $63,450.00에 매우 근접해 있으며, 7일 범위 EQ $60,604.30보다 위인 프리미엄 구간에 있습니다. 최근 strict 등급의 evening_star 품질 0.686이 확인되었고, bearish_engulfing 및 bearish_harami까지 동반되어 단기 매수 피로 신호가 우세합니다. 다만 가격은 EMA20 $62,068.21과 EMA120 $62,249.19 위에 있어 아직 하락 구조가 확정된 것은 아니며, EMA240 $64,907.52 아래에서 중기 저항을 받는 중립 구조로 해석됩니다. 고거래량 패턴이 없기 때문에 강한 추세 반전보다는 $63,450.00 저항 부근의 단기 약세 셋업으로 판단합니다.\",\n  \"key_levels\": {\n    \"support\": [\n      62249.19,\n      62068.21,\n      60604.3,\n      57758.6\n    ],\n    \"resistance\": [\n      63450.0,\n      64907.52\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$63,450.00 상향 돌파 및 4시간봉 종가 안착\",\n  \"risk_scenario\": \"$63,450.00을 강하게 돌파하면 evening_star와 bearish_harami의 약세 신호가 무효화되고, EMA240 $64,907.52까지 숏 커버링성 상승이 이어질 수 있습니다. 반대로 $62,249.19와 $62,068.21을 하향 이탈하면 단기 하락 셋업이 확인되며 EQ $60,604.30까지 되돌림이 확대될 수 있습니다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "wyckoff": {
      "agent_id": "wyckoff",
      "display_name": "Wyckoff Expert",
      "signal": "bearish",
      "confidence": 0.72,
      "structure_bias": "bearish",
      "setup_bias": "bearish",
      "setup_score": 0.66,
      "setup_signals": [
        "현재가 $62,995.10은 분배 박스 EQ $62,467.25 위에 위치해 프리미엄 구간에서 거래 중",
        "Phase C의 UT가 $63,450.00에서 발생했으며, 이는 상단 저항대 $64,179.50~$64,362.60 아래에서의 상단 실패 성격",
        "이전 SOW_IN_PHASE_B 저점 $59,060.00이 이미 형성되어 Phase B/C 약세 단서가 존재",
        "현재 가격이 UT $63,450.00을 즉시 재돌파하지 못하면 EQ $62,467.25 및 AR 저점 $60,755.00 재시험 가능성 우세"
      ],
      "reasoning": "4시간 구조는 regime=DIS, regime_fitness=0.888이며, 이벤트 체인은 BC $64,179.50 → AR $60,755.00 → ST $64,362.60 → SOW_IN_PHASE_B $59,060.00 → UT $63,450.00으로 분배 구조가 우세하다. 현재 major_phase는 Phase C이고 current_event는 UT이므로, 아직 Phase E 하락 확정이 아니라 상단 실패 이후 하단 테스트가 필요한 구간으로 해석한다. 현재가 $62,995.10은 박스 중간값 $62,467.25 위의 프리미엄 영역에 있어 구조적 약세와 단기 셋업 약세가 일치하지만, $60,755.00 AR 및 $59,060.00 SOW 저점 이탈 전까지는 박스 내부 분배 진행으로 봐야 한다. 상단에서 $63,450.00 UT를 회복하고 특히 $64,362.60 ST 위로 4시간 수용이 나오면 현재 분배 해석은 약화된다.",
      "key_levels": {
        "support": [
          62467.25,
          60755.0,
          59060.0
        ],
        "resistance": [
          63450.0,
          64179.5,
          64362.6
        ]
      },
      "time_horizon": "medium term",
      "invalidation_level": "$64,362.60 위 4시간 종가 수용",
      "risk_scenario": "$63,450.00 UT 레벨을 빠르게 회복하고 $64,179.50~$64,362.60 상단 공급대를 흡수하면, 현재 Phase C UT 해석은 상단 실패가 아니라 재축적성 상단 테스트로 변질될 수 있으며 박스 상단 재평가가 필요하다.",
      "data_quality": "medium",
      "metrics": {
        "acc_score": 88.8,
        "dis_score": 88.8,
        "regime": "DIS",
        "regime_state": "dis_candidate",
        "structure_bias": "bearish",
        "phase_context": "dis_candidate / distribution / Phase C",
        "phases_detected": [
          "BC",
          "AR",
          "ST",
          "SOW_IN_PHASE_B",
          "UT"
        ],
        "last_phase": "UT",
        "phase_candidates": [
          {
            "label": "BC",
            "side": "high",
            "idx": 139,
            "price": 64179.5,
            "color": "#ffd166"
          },
          {
            "label": "AR",
            "side": "low",
            "idx": 146,
            "price": 60755.0,
            "color": "#06d6a0"
          },
          {
            "label": "ST",
            "side": "high",
            "idx": 163,
            "price": 64362.6,
            "color": "#118ab2"
          },
          {
            "label": "SOW_IN_PHASE_B",
            "side": "low",
            "idx": 236,
            "price": 59060.0,
            "color": "#ef476f"
          },
          {
            "label": "UT",
            "side": "high",
            "idx": 296,
            "price": 63450.0,
            "color": "#f9844a"
          }
        ],
        "phase_structures": [
          {
            "structure_id": "4h_cycle_1",
            "sequence": 1,
            "timeframe": "4h",
            "regime": "distribution",
            "role": "current_structure_candidate",
            "is_active": true,
            "is_completed": false,
            "is_confirmed": true,
            "structure_bias": "bearish",
            "phase_context": "distribution",
            "start_idx": 139,
            "end_idx": 296,
            "phase_count": 5,
            "phases": [
              {
                "label": "BC",
                "side": "high",
                "idx": 139,
                "price": 64179.5,
                "color": "#ffd166",
                "dt": "2026-06-08 21:00:00+09:00"
              },
              {
                "label": "AR",
                "side": "low",
                "idx": 146,
                "price": 60755.0,
                "color": "#06d6a0",
                "dt": "2026-06-10 01:00:00+09:00"
              },
              {
                "label": "ST",
                "side": "high",
                "idx": 163,
                "price": 64362.6,
                "color": "#118ab2",
                "dt": "2026-06-12 21:00:00+09:00"
              },
              {
                "label": "SOW_IN_PHASE_B",
                "side": "low",
                "idx": 236,
                "price": 59060.0,
                "color": "#ef476f",
                "dt": "2026-06-25 01:00:00+09:00"
              },
              {
                "label": "UT",
                "side": "high",
                "idx": 296,
                "price": 63450.0,
                "color": "#f9844a",
                "dt": "2026-07-05 01:00:00+09:00"
              }
            ]
          }
        ],
        "active_structure_id": "4h_cycle_1",
        "primary_structure_id": "4h_cycle_1",
        "structure_count": 1,
        "regime_fitness": 0.8875000000000001,
        "current_event": "UT",
        "major_phase": "C",
        "pos_in_range": 0.5,
        "main_range_low": 60755.0,
        "main_range_high": 64179.5
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.72,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.66,\n  \"setup_signals\": [\n    \"현재가 $62,995.10은 분배 박스 EQ $62,467.25 위에 위치해 프리미엄 구간에서 거래 중\",\n    \"Phase C의 UT가 $63,450.00에서 발생했으며, 이는 상단 저항대 $64,179.50~$64,362.60 아래에서의 상단 실패 성격\",\n    \"이전 SOW_IN_PHASE_B 저점 $59,060.00이 이미 형성되어 Phase B/C 약세 단서가 존재\",\n    \"현재 가격이 UT $63,450.00을 즉시 재돌파하지 못하면 EQ $62,467.25 및 AR 저점 $60,755.00 재시험 가능성 우세\"\n  ],\n  \"reasoning\": \"4시간 구조는 regime=DIS, regime_fitness=0.888이며, 이벤트 체인은 BC $64,179.50 → AR $60,755.00 → ST $64,362.60 → SOW_IN_PHASE_B $59,060.00 → UT $63,450.00으로 분배 구조가 우세하다. 현재 major_phase는 Phase C이고 current_event는 UT이므로, 아직 Phase E 하락 확정이 아니라 상단 실패 이후 하단 테스트가 필요한 구간으로 해석한다. 현재가 $62,995.10은 박스 중간값 $62,467.25 위의 프리미엄 영역에 있어 구조적 약세와 단기 셋업 약세가 일치하지만, $60,755.00 AR 및 $59,060.00 SOW 저점 이탈 전까지는 박스 내부 분배 진행으로 봐야 한다. 상단에서 $63,450.00 UT를 회복하고 특히 $64,362.60 ST 위로 4시간 수용이 나오면 현재 분배 해석은 약화된다.\",\n  \"key_levels\": {\n    \"support\": [\n      62467.25,\n      60755.0,\n      59060.0\n    ],\n    \"resistance\": [\n      63450.0,\n      64179.5,\n      64362.6\n    ]\n  },\n  \"time_horizon\": \"medium term\",\n  \"invalidation_level\": \"$64,362.60 위 4시간 종가 수용\",\n  \"risk_scenario\": \"$63,450.00 UT 레벨을 빠르게 회복하고 $64,179.50~$64,362.60 상단 공급대를 흡수하면, 현재 Phase C UT 해석은 상단 실패가 아니라 재축적성 상단 테스트로 변질될 수 있으며 박스 상단 재평가가 필요하다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "harmonic": {
      "agent_id": "harmonic",
      "display_name": "Harmonic Specialist",
      "signal": "bullish",
      "confidence": 0.45,
      "structure_bias": "neutral",
      "setup_bias": "bullish",
      "setup_score": 0.55,
      "setup_signals": [
        "현재가 $62,995.10이 고컨플루언스 bullish Bat 형성 PRZ $62,527.12-$63,386.13 내부에 위치",
        "best council PRZ: bullish Bat, strict/high quality, score 0.959, PRZ score 0.988, D 예상가 $62,956.63",
        "PRZ가 ABCD, BC extension, XAD 3개 Fib 패밀리로 구성된 3중 컨플루언스 구간",
        "이전 completed bullish Bat 후보는 같은 PRZ에서 반응 확인됨: PRZ touch/entry, rejection/defense, AD 0.382 반응 도달, reaction_score 0.80",
        "상방 TP ladder가 명확함: TP1 $64,598.76, TP2 $65,613.27, A-point/구조 유동성 $67,255.40"
      ],
      "reasoning": "4h 기준 현재가 $62,995.10은 active bullish Bat PRZ $62,527.12-$63,386.13 안에 있으며, D 예상가 $62,956.63과 거의 일치해 단기 반등 후보 구간이다. 해당 Bat은 strict/high quality, pattern_score 0.959, ratio_score 1.0, PRZ score 0.988로 품질은 높지만 아직 forming 상태이고 confirmed_reaction=false이므로 구조 전환을 확정할 수 없다. 같은 PRZ의 completed bullish Bat 후보는 reaction_score 0.80으로 AD 0.382 반응을 이미 달성했으나 candidate-tier이므로 단독 방향성 엔진이 아니라 중간 컨플루언스 및 TP 기준으로만 사용한다. 따라서 structure_bias는 확정 BOS/CHoCH 정보 부재로 neutral이며, setup_bias만 PRZ 기반의 bullish로 평가한다.",
      "key_levels": {
        "support": [
          62956.63,
          62527.12,
          62315.0,
          62202.51
        ],
        "resistance": [
          63386.13,
          63450.0,
          64598.76,
          65613.27,
          67255.4
        ]
      },
      "time_horizon": "short to medium term",
      "invalidation_level": "$62,315.00",
      "risk_scenario": "가격이 PRZ 하단 $62,527.12를 이탈하고 특히 X-point $62,315.00 아래에서 4h 종가 수용이 나오면 bullish Bat 반등 셋업은 실패로 본다. 이 경우 $62,202.51 부근 Gartley PRZ 하단까지 재시험하거나, 더 아래의 $61,950.87-$61,663.11 하위 PRZ/수요대까지 유동성 탐색이 열릴 수 있다.",
      "data_quality": "medium",
      "metrics": {
        "patterns_found": 171,
        "completed_patterns_found": 81,
        "forming_d_prz_found": 90,
        "swing_orders_scanned": [
          3,
          5,
          8
        ],
        "swing_search_window": 30,
        "multiscale_swings_scanned": 55,
        "swing_highs_scanned": 30,
        "swing_lows_scanned": 25,
        "timeframe": "4h",
        "prz_active_threshold_pct": 0.75,
        "prz_nearby_threshold_pct": 1.5,
        "prz_watch_threshold_pct": 3.0,
        "prz_max_width_pct": 1.3,
        "quality_counts": {
          "high": 4,
          "medium": 47,
          "low": 120
        },
        "prz_status_counts": {
          "active": 63,
          "nearby": 15,
          "watch": 31,
          "far": 62,
          "forming": 33
        },
        "high_confluence_prz_count": 20,
        "strict_patterns_found": 56,
        "candidate_patterns_found": 115,
        "active_patterns_at_prz": 63,
        "nearby_patterns": 15,
        "all_patterns": [
          "bat",
          "gartley",
          "crab",
          "shark",
          "bat",
          "bat",
          "butterfly",
          "bat",
          "butterfly",
          "gartley",
          "gartley",
          "gartley",
          "bat",
          "butterfly",
          "crab",
          "shark",
          "shark",
          "crab",
          "bat",
          "bat",
          "gartley",
          "shark",
          "bat",
          "butterfly",
          "butterfly",
          "butterfly",
          "bat",
          "bat",
          "bat",
          "butterfly",
          "butterfly",
          "bat",
          "bat",
          "crab",
          "shark",
          "butterfly",
          "crab",
          "gartley",
          "crab",
          "shark",
          "gartley",
          "butterfly",
          "bat",
          "gartley",
          "crab",
          "shark",
          "shark",
          "bat",
          "crab",
          "crab",
          "butterfly",
          "shark",
          "shark",
          "bat",
          "crab",
          "butterfly",
          "shark",
          "butterfly",
          "shark",
          "crab",
          "butterfly",
          "butterfly",
          "gartley",
          "bat",
          "crab",
          "shark",
          "gartley",
          "gartley",
          "gartley",
          "gartley",
          "crab",
          "shark",
          "bat",
          "bat",
          "butterfly",
          "crab",
          "crab",
          "shark",
          "crab",
          "gartley",
          "bat",
          "crab",
          "gartley",
          "butterfly",
          "butterfly",
          "crab",
          "crab",
          "butterfly",
          "bat",
          "crab",
          "shark",
          "gartley",
          "bat",
          "crab",
          "bat",
          "crab",
          "gartley",
          "shark",
          "shark",
          "shark",
          "bat",
          "bat",
          "shark",
          "shark",
          "crab",
          "bat",
          "crab",
          "crab",
          "crab",
          "bat",
          "crab",
          "crab",
          "shark",
          "gartley",
          "crab",
          "shark",
          "shark",
          "shark",
          "crab",
          "shark",
          "butterfly",
          "shark",
          "crab",
          "shark",
          "shark",
          "shark",
          "crab",
          "crab",
          "crab",
          "shark",
          "crab",
          "crab",
          "bat",
          "butterfly",
          "crab",
          "butterfly",
          "crab",
          "crab",
          "crab",
          "butterfly",
          "gartley",
          "butterfly",
          "crab",
          "bat",
          "shark",
          "crab",
          "crab",
          "crab",
          "gartley",
          "butterfly",
          "butterfly",
          "shark",
          "shark",
          "butterfly",
          "crab",
          "bat",
          "shark",
          "butterfly",
          "shark",
          "crab",
          "crab",
          "crab",
          "butterfly",
          "shark",
          "gartley",
          "crab",
          "gartley",
          "butterfly",
          "gartley",
          "butterfly",
          "shark"
        ],
        "all_signals": [
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish"
        ],
        "best_pattern": "bat",
        "best_pattern_quality": "strict",
        "best_quality": "high",
        "best_pattern_score": 0.959,
        "best_completion_status": "forming",
        "nearest_pattern": "shark",
        "nearest_prz": 62997.71,
        "price_to_prz": 0.0,
        "prz_range": [
          61950.87,
          64044.54
        ],
        "council_relevant_prz_count": 1,
        "directional_influence_prz_count": 1,
        "confirmed_reaction_prz_count": 0,
        "validated_harmonic_tp_count": 0,
        "pattern_candidates": [
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.959,
            "ratio_score": 1.0,
            "prz_score": 0.988,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 62956.63,
            "prz_range": [
              62527.12,
              63386.13
            ],
            "prz_width_pct": 1.364,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.06,
            "price_to_prz_pct_raw": -0.0611,
            "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": 62956.63,
              "a_price": 67255.4,
              "tp1_ad_382": 64598.76,
              "tp2_ad_618": 65613.27,
              "tp3_a_or_structure_liquidity": 67255.4,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.39,
              "ABC": 0.3949
            },
            "x_price": 62315.0,
            "x_idx": 158,
            "x_order": 3,
            "a_price": 67255.4,
            "a_idx": 181,
            "a_order": 8,
            "b_price": 65328.8,
            "b_idx": 187,
            "b_order": 3,
            "c_price": 64568.0,
            "c_idx": 215,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.878,
            "ratio_score": 0.847,
            "prz_score": 0.988,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63220.0,
            "prz_range": [
              62527.12,
              63386.13
            ],
            "prz_width_pct": 1.364,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.06,
            "price_to_prz_pct_raw": -0.0611,
            "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"
              ],
              "reaction_score": 0.8,
              "reaction_detail": {
                "reaction_score": 0.8,
                "reaction_move_ratio_ad": 0.589,
                "adverse_move_ratio_ad": 0.335,
                "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": "bat",
              "d_price": 62956.63,
              "a_price": 67255.4,
              "tp1_ad_382": 64598.76,
              "tp2_ad_618": 65613.27,
              "tp3_a_or_structure_liquidity": 67255.4,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.39,
              "ABC": 0.3949,
              "BCD": 1.7718,
              "XAD": 0.8168
            },
            "x_price": 62315.0,
            "x_idx": 158,
            "x_order": 3,
            "a_price": 67255.4,
            "a_idx": 181,
            "a_order": 8,
            "b_price": 65328.8,
            "b_idx": 187,
            "b_order": 3,
            "c_price": 64568.0,
            "c_idx": 215,
            "c_order": 3,
            "d_idx": 219
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.858,
            "ratio_score": 0.718,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 62608.77,
            "prz_range": [
              62202.51,
              63015.03
            ],
            "prz_width_pct": 1.298,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.61,
            "price_to_prz_pct_raw": -0.6133,
            "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": 62608.77,
              "a_price": 64738.0,
              "tp1_ad_382": 63422.14,
              "tp2_ad_618": 63924.64,
              "tp3_a_or_structure_liquidity": 64738.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6611,
              "ABC": 0.8939
            },
            "x_price": 62315.0,
            "x_idx": 158,
            "x_order": 3,
            "a_price": 64738.0,
            "a_idx": 171,
            "a_order": 5,
            "b_price": 63136.2,
            "b_idx": 211,
            "b_order": 3,
            "c_price": 64568.0,
            "c_idx": 215,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.824,
            "ratio_score": 0.826,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 59060.0,
            "prz_range": [
              60933.28,
              61663.11
            ],
            "prz_width_pct": 1.191,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -2.69,
            "price_to_prz_pct_raw": -2.6937,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.236_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "post_D_close_progress"
              ],
              "reaction_score": 0.75,
              "reaction_detail": {
                "reaction_score": 0.75,
                "reaction_move_ratio_ad": 0.35,
                "adverse_move_ratio_ad": 0.126,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.236_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "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": "bullish",
              "source": "butterfly",
              "d_price": 61298.2,
              "a_price": 67255.4,
              "tp1_ad_382": 63573.85,
              "tp2_ad_618": 64979.75,
              "tp3_a_or_structure_liquidity": 67255.4,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.8338,
              "ABC": 0.5974,
              "BCD": 2.6563,
              "XAD": 1.6589
            },
            "x_price": 62315.0,
            "x_idx": 158,
            "x_order": 3,
            "a_price": 67255.4,
            "a_idx": 181,
            "a_order": 8,
            "b_price": 63136.2,
            "b_idx": 211,
            "b_order": 3,
            "c_price": 65597.2,
            "c_idx": 223,
            "c_order": 8,
            "d_idx": 236
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.884,
            "ratio_score": 1.0,
            "prz_score": 0.862,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 64177.92,
            "prz_range": [
              63514.47,
              64841.36
            ],
            "prz_width_pct": 2.068,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.88,
            "price_to_prz_pct_raw": 1.8776,
            "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": 64177.92,
              "a_price": 66956.7,
              "tp1_ad_382": 65239.41,
              "tp2_ad_618": 65895.2,
              "tp3_a_or_structure_liquidity": 66956.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4923,
              "ABC": 0.6698
            },
            "x_price": 63650.0,
            "x_idx": 176,
            "x_order": 8,
            "a_price": 66956.7,
            "a_idx": 186,
            "a_order": 3,
            "b_price": 65328.8,
            "b_idx": 187,
            "b_order": 3,
            "c_price": 66419.2,
            "c_idx": 194,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.876,
            "ratio_score": 0.911,
            "prz_score": 0.972,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 61461.12,
            "prz_range": [
              61013.8,
              61908.44
            ],
            "prz_width_pct": 1.456,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -2.44,
            "price_to_prz_pct_raw": -2.4351,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "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.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 61461.12,
              "a_price": 66956.7,
              "tp1_ad_382": 63560.43,
              "tp2_ad_618": 64857.39,
              "tp3_a_or_structure_liquidity": 66956.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.805,
              "ABC": 0.6362
            },
            "x_price": 62315.0,
            "x_idx": 158,
            "x_order": 3,
            "a_price": 66956.7,
            "a_idx": 186,
            "a_order": 3,
            "b_price": 63220.0,
            "b_idx": 219,
            "b_order": 5,
            "c_price": 65597.2,
            "c_idx": 223,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.851,
            "ratio_score": 0.838,
            "prz_score": 0.897,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 62086.56,
            "prz_range": [
              61505.57,
              62667.55
            ],
            "prz_width_pct": 1.872,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.44,
            "price_to_prz_pct_raw": -1.4422,
            "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": "bearish",
              "source": "bat",
              "d_price": 62086.56,
              "a_price": 58030.0,
              "tp1_ad_382": 60536.96,
              "tp2_ad_618": 59579.61,
              "tp3_a_or_structure_liquidity": 58030.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.522,
              "ABC": 0.6967
            },
            "x_price": 63209.6,
            "x_idx": 234,
            "x_order": 5,
            "a_price": 58030.0,
            "a_idx": 241,
            "a_order": 8,
            "b_price": 60734.0,
            "b_idx": 245,
            "b_order": 3,
            "c_price": 58850.0,
            "c_idx": 262,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.837,
            "ratio_score": 0.844,
            "prz_score": 0.963,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 61176.59,
            "prz_range": [
              60715.71,
              61637.48
            ],
            "prz_width_pct": 1.507,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -2.89,
            "price_to_prz_pct_raw": -2.8867,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "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.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 61176.59,
              "a_price": 58030.0,
              "tp1_ad_382": 59974.6,
              "tp2_ad_618": 59232.0,
              "tp3_a_or_structure_liquidity": 58030.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6443,
              "ABC": 0.6737
            },
            "x_price": 61931.1,
            "x_idx": 239,
            "x_order": 3,
            "a_price": 58030.0,
            "a_idx": 241,
            "a_order": 8,
            "b_price": 60543.3,
            "b_idx": 258,
            "b_order": 3,
            "c_price": 58850.0,
            "c_idx": 262,
            "c_order": 8,
            "d_idx": null
          }
        ],
        "council_relevant_prz": [
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.959,
            "ratio_score": 1.0,
            "prz_score": 0.988,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 62956.63,
            "prz_range": [
              62527.12,
              63386.13
            ],
            "prz_width_pct": 1.364,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.06,
            "price_to_prz_pct_raw": -0.0611,
            "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": 62956.63,
              "a_price": 67255.4,
              "tp1_ad_382": 64598.76,
              "tp2_ad_618": 65613.27,
              "tp3_a_or_structure_liquidity": 67255.4,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.39,
              "ABC": 0.3949
            },
            "x_price": 62315.0,
            "x_idx": 158,
            "x_order": 3,
            "a_price": 67255.4,
            "a_idx": 181,
            "a_order": 8,
            "b_price": 65328.8,
            "b_idx": 187,
            "b_order": 3,
            "c_price": 64568.0,
            "c_idx": 215,
            "c_order": 3,
            "d_idx": null
          }
        ],
        "report_detail_candidates": [
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.959,
            "ratio_score": 1.0,
            "prz_score": 0.988,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 62956.63,
            "prz_range": [
              62527.12,
              63386.13
            ],
            "prz_width_pct": 1.364,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.06,
            "price_to_prz_pct_raw": -0.0611,
            "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": 62956.63,
              "a_price": 67255.4,
              "tp1_ad_382": 64598.76,
              "tp2_ad_618": 65613.27,
              "tp3_a_or_structure_liquidity": 67255.4,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.39,
              "ABC": 0.3949
            },
            "x_price": 62315.0,
            "x_idx": 158,
            "x_order": 3,
            "a_price": 67255.4,
            "a_idx": 181,
            "a_order": 8,
            "b_price": 65328.8,
            "b_idx": 187,
            "b_order": 3,
            "c_price": 64568.0,
            "c_idx": 215,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.878,
            "ratio_score": 0.847,
            "prz_score": 0.988,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63220.0,
            "prz_range": [
              62527.12,
              63386.13
            ],
            "prz_width_pct": 1.364,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.06,
            "price_to_prz_pct_raw": -0.0611,
            "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"
              ],
              "reaction_score": 0.8,
              "reaction_detail": {
                "reaction_score": 0.8,
                "reaction_move_ratio_ad": 0.589,
                "adverse_move_ratio_ad": 0.335,
                "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": "bat",
              "d_price": 62956.63,
              "a_price": 67255.4,
              "tp1_ad_382": 64598.76,
              "tp2_ad_618": 65613.27,
              "tp3_a_or_structure_liquidity": 67255.4,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.39,
              "ABC": 0.3949,
              "BCD": 1.7718,
              "XAD": 0.8168
            },
            "x_price": 62315.0,
            "x_idx": 158,
            "x_order": 3,
            "a_price": 67255.4,
            "a_idx": 181,
            "a_order": 8,
            "b_price": 65328.8,
            "b_idx": 187,
            "b_order": 3,
            "c_price": 64568.0,
            "c_idx": 215,
            "c_order": 3,
            "d_idx": 219
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.858,
            "ratio_score": 0.718,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 62608.77,
            "prz_range": [
              62202.51,
              63015.03
            ],
            "prz_width_pct": 1.298,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.61,
            "price_to_prz_pct_raw": -0.6133,
            "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": 62608.77,
              "a_price": 64738.0,
              "tp1_ad_382": 63422.14,
              "tp2_ad_618": 63924.64,
              "tp3_a_or_structure_liquidity": 64738.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6611,
              "ABC": 0.8939
            },
            "x_price": 62315.0,
            "x_idx": 158,
            "x_order": 3,
            "a_price": 64738.0,
            "a_idx": 171,
            "a_order": 5,
            "b_price": 63136.2,
            "b_idx": 211,
            "b_order": 3,
            "c_price": 64568.0,
            "c_idx": 215,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.824,
            "ratio_score": 0.826,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 59060.0,
            "prz_range": [
              60933.28,
              61663.11
            ],
            "prz_width_pct": 1.191,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -2.69,
            "price_to_prz_pct_raw": -2.6937,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.236_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "post_D_close_progress"
              ],
              "reaction_score": 0.75,
              "reaction_detail": {
                "reaction_score": 0.75,
                "reaction_move_ratio_ad": 0.35,
                "adverse_move_ratio_ad": 0.126,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.236_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "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": "bullish",
              "source": "butterfly",
              "d_price": 61298.2,
              "a_price": 67255.4,
              "tp1_ad_382": 63573.85,
              "tp2_ad_618": 64979.75,
              "tp3_a_or_structure_liquidity": 67255.4,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.8338,
              "ABC": 0.5974,
              "BCD": 2.6563,
              "XAD": 1.6589
            },
            "x_price": 62315.0,
            "x_idx": 158,
            "x_order": 3,
            "a_price": 67255.4,
            "a_idx": 181,
            "a_order": 8,
            "b_price": 63136.2,
            "b_idx": 211,
            "b_order": 3,
            "c_price": 65597.2,
            "c_idx": 223,
            "c_order": 8,
            "d_idx": 236
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.884,
            "ratio_score": 1.0,
            "prz_score": 0.862,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 64177.92,
            "prz_range": [
              63514.47,
              64841.36
            ],
            "prz_width_pct": 2.068,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.88,
            "price_to_prz_pct_raw": 1.8776,
            "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": 64177.92,
              "a_price": 66956.7,
              "tp1_ad_382": 65239.41,
              "tp2_ad_618": 65895.2,
              "tp3_a_or_structure_liquidity": 66956.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4923,
              "ABC": 0.6698
            },
            "x_price": 63650.0,
            "x_idx": 176,
            "x_order": 8,
            "a_price": 66956.7,
            "a_idx": 186,
            "a_order": 3,
            "b_price": 65328.8,
            "b_idx": 187,
            "b_order": 3,
            "c_price": 66419.2,
            "c_idx": 194,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.876,
            "ratio_score": 0.911,
            "prz_score": 0.972,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 61461.12,
            "prz_range": [
              61013.8,
              61908.44
            ],
            "prz_width_pct": 1.456,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -2.44,
            "price_to_prz_pct_raw": -2.4351,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "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.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 61461.12,
              "a_price": 66956.7,
              "tp1_ad_382": 63560.43,
              "tp2_ad_618": 64857.39,
              "tp3_a_or_structure_liquidity": 66956.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.805,
              "ABC": 0.6362
            },
            "x_price": 62315.0,
            "x_idx": 158,
            "x_order": 3,
            "a_price": 66956.7,
            "a_idx": 186,
            "a_order": 3,
            "b_price": 63220.0,
            "b_idx": 219,
            "b_order": 5,
            "c_price": 65597.2,
            "c_idx": 223,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.851,
            "ratio_score": 0.838,
            "prz_score": 0.897,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 62086.56,
            "prz_range": [
              61505.57,
              62667.55
            ],
            "prz_width_pct": 1.872,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.44,
            "price_to_prz_pct_raw": -1.4422,
            "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": "bearish",
              "source": "bat",
              "d_price": 62086.56,
              "a_price": 58030.0,
              "tp1_ad_382": 60536.96,
              "tp2_ad_618": 59579.61,
              "tp3_a_or_structure_liquidity": 58030.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.522,
              "ABC": 0.6967
            },
            "x_price": 63209.6,
            "x_idx": 234,
            "x_order": 5,
            "a_price": 58030.0,
            "a_idx": 241,
            "a_order": 8,
            "b_price": 60734.0,
            "b_idx": 245,
            "b_order": 3,
            "c_price": 58850.0,
            "c_idx": 262,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.837,
            "ratio_score": 0.844,
            "prz_score": 0.963,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 61176.59,
            "prz_range": [
              60715.71,
              61637.48
            ],
            "prz_width_pct": 1.507,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -2.89,
            "price_to_prz_pct_raw": -2.8867,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "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.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 61176.59,
              "a_price": 58030.0,
              "tp1_ad_382": 59974.6,
              "tp2_ad_618": 59232.0,
              "tp3_a_or_structure_liquidity": 58030.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6443,
              "ABC": 0.6737
            },
            "x_price": 61931.1,
            "x_idx": 239,
            "x_order": 3,
            "a_price": 58030.0,
            "a_idx": 241,
            "a_order": 8,
            "b_price": 60543.3,
            "b_idx": 258,
            "b_order": 3,
            "c_price": 58850.0,
            "c_idx": 262,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.817,
            "ratio_score": 0.837,
            "prz_score": 0.918,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 61139.25,
            "prz_range": [
              60602.82,
              61675.69
            ],
            "prz_width_pct": 1.755,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -2.95,
            "price_to_prz_pct_raw": -2.946,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "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.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 61139.25,
              "a_price": 63915.3,
              "tp1_ad_382": 62199.7,
              "tp2_ad_618": 62854.85,
              "tp3_a_or_structure_liquidity": 63915.3,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5222,
              "ABC": 0.5807
            },
            "x_price": 60691.9,
            "x_idx": 150,
            "x_order": 8,
            "a_price": 63915.3,
            "a_idx": 158,
            "a_order": 3,
            "b_price": 62232.1,
            "b_idx": 199,
            "b_order": 8,
            "c_price": 63209.6,
            "c_idx": 234,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.804,
            "ratio_score": 0.812,
            "prz_score": 0.911,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 62180.0,
            "prz_range": [
              61146.28,
              62254.99
            ],
            "prz_width_pct": 1.797,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -2.05,
            "price_to_prz_pct_raw": -2.0549,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "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.257,
                "adverse_move_ratio_ad": 0.214,
                "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": "bearish",
              "source": "gartley",
              "d_price": 61700.64,
              "a_price": 58030.0,
              "tp1_ad_382": 60298.45,
              "tp2_ad_618": 59432.18,
              "tp3_a_or_structure_liquidity": 58030.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5589,
              "ABC": 0.7167,
              "BCD": 1.6051,
              "XAD": 0.8012
            },
            "x_price": 63209.6,
            "x_idx": 234,
            "x_order": 5,
            "a_price": 58030.0,
            "a_idx": 241,
            "a_order": 8,
            "b_price": 60924.7,
            "b_idx": 253,
            "b_order": 8,
            "c_price": 58850.0,
            "c_idx": 262,
            "c_order": 8,
            "d_idx": 283
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.787,
            "ratio_score": 0.649,
            "prz_score": 0.911,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 61700.64,
            "prz_range": [
              61146.28,
              62254.99
            ],
            "prz_width_pct": 1.797,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -2.05,
            "price_to_prz_pct_raw": -2.0549,
            "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": "bearish",
              "source": "gartley",
              "d_price": 61700.64,
              "a_price": 58030.0,
              "tp1_ad_382": 60298.45,
              "tp2_ad_618": 59432.18,
              "tp3_a_or_structure_liquidity": 58030.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5589,
              "ABC": 0.7167
            },
            "x_price": 63209.6,
            "x_idx": 234,
            "x_order": 5,
            "a_price": 58030.0,
            "a_idx": 241,
            "a_order": 8,
            "b_price": 60924.7,
            "b_idx": 253,
            "b_order": 8,
            "c_price": 58850.0,
            "c_idx": 262,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.783,
            "ratio_score": 0.743,
            "prz_score": 0.897,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 62180.0,
            "prz_range": [
              61505.57,
              62667.55
            ],
            "prz_width_pct": 1.872,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.44,
            "price_to_prz_pct_raw": -1.4422,
            "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.257,
                "adverse_move_ratio_ad": 0.214,
                "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": "bearish",
              "source": "bat",
              "d_price": 62086.56,
              "a_price": 58030.0,
              "tp1_ad_382": 60536.96,
              "tp2_ad_618": 59579.61,
              "tp3_a_or_structure_liquidity": 58030.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.522,
              "ABC": 0.6967,
              "BCD": 1.7675,
              "XAD": 0.8012
            },
            "x_price": 63209.6,
            "x_idx": 234,
            "x_order": 5,
            "a_price": 58030.0,
            "a_idx": 241,
            "a_order": 8,
            "b_price": 60734.0,
            "b_idx": 245,
            "b_order": 3,
            "c_price": 58850.0,
            "c_idx": 262,
            "c_order": 8,
            "d_idx": 283
          }
        ],
        "actionable_patterns_list": [
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.959,
            "prz_proximity": "active",
            "prz_range": [
              62527.12,
              63386.13
            ],
            "prz_reversal_direction": "up",
            "price_to_prz_pct": -0.06,
            "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": "bat",
              "d_price": 62956.63,
              "a_price": 67255.4,
              "tp1_ad_382": 64598.76,
              "tp2_ad_618": 65613.27,
              "tp3_a_or_structure_liquidity": 67255.4,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "BAT FORMING HIGH PRZ $62,527.12-$63,386.13: expected reversal UP if price reacts in zone"
          }
        ],
        "best_council_prz": {
          "pattern": "bat",
          "signal": "bullish",
          "completion_status": "forming",
          "pattern_quality": "strict",
          "quality": "high",
          "pattern_score": 0.959,
          "ratio_score": 1.0,
          "prz_score": 0.988,
          "prz_proximity": "active",
          "action_status": "active",
          "high_confluence_prz": true,
          "d_price": 62956.63,
          "prz_range": [
            62527.12,
            63386.13
          ],
          "prz_width_pct": 1.364,
          "prz_confluence_count": 3,
          "prz_fib_families": [
            "ABCD",
            "BC_EXT",
            "XAD"
          ],
          "price_to_prz_pct": -0.06,
          "price_to_prz_pct_raw": -0.0611,
          "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": 62956.63,
            "a_price": 67255.4,
            "tp1_ad_382": 64598.76,
            "tp2_ad_618": 65613.27,
            "tp3_a_or_structure_liquidity": 67255.4,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          "ratios": {
            "XAB": 0.39,
            "ABC": 0.3949
          },
          "x_price": 62315.0,
          "x_idx": 158,
          "x_order": 3,
          "a_price": 67255.4,
          "a_idx": 181,
          "a_order": 8,
          "b_price": 65328.8,
          "b_idx": 187,
          "b_order": 3,
          "c_price": 64568.0,
          "c_idx": 215,
          "c_order": 3,
          "d_idx": null
        },
        "best_tp_ladder": {
          "direction": "bullish",
          "source": "bat",
          "d_price": 62956.63,
          "a_price": 67255.4,
          "tp1_ad_382": 64598.76,
          "tp2_ad_618": 65613.27,
          "tp3_a_or_structure_liquidity": 67255.4,
          "note": "Use as strong TP ladder context; not standalone path authority."
        },
        "tp_ladder": [
          {
            "direction": "bullish",
            "source": "bat",
            "d_price": 62956.63,
            "a_price": 67255.4,
            "tp1_ad_382": 64598.76,
            "tp2_ad_618": 65613.27,
            "tp3_a_or_structure_liquidity": 67255.4,
            "note": "Use as strong TP ladder context; not standalone path authority."
          }
        ],
        "validated_tp_ladder": [],
        "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": "ready",
        "directional_scores": {
          "bullish": 0.203,
          "bearish": 0
        },
        "directional_score_total": 0.203,
        "directional_dominance": 1.0
      },
      "raw_llm_response": "{\n  \"signal\": \"bullish\",\n  \"confidence\": 0.45,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.55,\n  \"setup_signals\": [\n    \"현재가 $62,995.10이 고컨플루언스 bullish Bat 형성 PRZ $62,527.12-$63,386.13 내부에 위치\",\n    \"best council PRZ: bullish Bat, strict/high quality, score 0.959, PRZ score 0.988, D 예상가 $62,956.63\",\n    \"PRZ가 ABCD, BC extension, XAD 3개 Fib 패밀리로 구성된 3중 컨플루언스 구간\",\n    \"이전 completed bullish Bat 후보는 같은 PRZ에서 반응 확인됨: PRZ touch/entry, rejection/defense, AD 0.382 반응 도달, reaction_score 0.80\",\n    \"상방 TP ladder가 명확함: TP1 $64,598.76, TP2 $65,613.27, A-point/구조 유동성 $67,255.40\"\n  ],\n  \"reasoning\": \"4h 기준 현재가 $62,995.10은 active bullish Bat PRZ $62,527.12-$63,386.13 안에 있으며, D 예상가 $62,956.63과 거의 일치해 단기 반등 후보 구간이다. 해당 Bat은 strict/high quality, pattern_score 0.959, ratio_score 1.0, PRZ score 0.988로 품질은 높지만 아직 forming 상태이고 confirmed_reaction=false이므로 구조 전환을 확정할 수 없다. 같은 PRZ의 completed bullish Bat 후보는 reaction_score 0.80으로 AD 0.382 반응을 이미 달성했으나 candidate-tier이므로 단독 방향성 엔진이 아니라 중간 컨플루언스 및 TP 기준으로만 사용한다. 따라서 structure_bias는 확정 BOS/CHoCH 정보 부재로 neutral이며, setup_bias만 PRZ 기반의 bullish로 평가한다.\",\n  \"key_levels\": {\n    \"support\": [\n      62956.63,\n      62527.12,\n      62315.0,\n      62202.51\n    ],\n    \"resistance\": [\n      63386.13,\n      63450.0,\n      64598.76,\n      65613.27,\n      67255.4\n    ]\n  },\n  \"time_horizon\": \"short to medium term\",\n  \"invalidation_level\": \"$62,315.00\",\n  \"risk_scenario\": \"가격이 PRZ 하단 $62,527.12를 이탈하고 특히 X-point $62,315.00 아래에서 4h 종가 수용이 나오면 bullish Bat 반등 셋업은 실패로 본다. 이 경우 $62,202.51 부근 Gartley PRZ 하단까지 재시험하거나, 더 아래의 $61,950.87-$61,663.11 하위 PRZ/수요대까지 유동성 탐색이 열릴 수 있다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "ict": {
      "agent_id": "ict",
      "display_name": "ICT Trader",
      "signal": "bearish",
      "confidence": 0.83,
      "structure_bias": "bearish",
      "setup_bias": "bearish",
      "setup_score": 0.831,
      "setup_signals": [
        "가격이 EQ $60,604.30 위의 premium zone에 위치하며 현재가 $62,995.10",
        "current_retracement_pct 169.2%로 과도한 프리미엄 되돌림 구간",
        "이전 bearish BOS 레벨 $62,232.10 위로 되돌림 후 재분배 가능성",
        "previous_day_high $63,069.60 상단 유동성 돌파 완료, previous_day_low $61,877.60은 미돌파",
        "7일 고점 $63,450.00 인근에서 buy-side liquidity 흡수 가능성",
        "확정 bullish OB 및 active bullish OB 부재, unfilled bullish FVG도 없음"
      ],
      "reasoning": "구조적으로는 $74,203.60, $72,436.00, $62,232.10 하방 BOS가 연속적으로 발생한 이후의 시장이므로 confirmed structure_bias는 여전히 bearish로 판단한다. 최근 $60,924.70에서 bullish CHoCH가 있었지만, 현재가는 $62,995.10으로 $64,250.00 bullish BOS 레벨을 회복하지 못했기 때문에 완전한 bullish 구조 전환으로 보기는 어렵다. 셋업 관점에서는 가격이 EQ $60,604.30보다 높은 premium zone에 있고, 169.2%의 깊은 되돌림 상태이며, previous_day_high $63,069.60을 이미 상향 돌파해 단기 buy-side liquidity를 취한 뒤 $63,450.00 7일 고점 아래에 머물고 있다. 확정 OB나 미충족 FVG가 없기 때문에 강한 continuation imbalance보다는 프리미엄 재분배 후 $62,232.10, $61,877.60, $60,604.30 방향으로 되돌릴 가능성이 우세하다.",
      "key_levels": {
        "support": [
          62232.1,
          61877.6,
          60924.7,
          60604.3,
          59298.4,
          57758.6
        ],
        "resistance": [
          63069.6,
          63450.0,
          64250.0,
          64907.52,
          76234.7,
          78077.1,
          78128.55
        ]
      },
      "time_horizon": "short/medium term",
      "invalidation_level": "$64,250.00",
      "risk_scenario": "$64,250.00 bullish BOS 레벨을 강하게 돌파하고 그 위에서 4시간봉 종가 수용이 발생하면, 현재의 bearish setup은 실패로 간주된다. 이 경우 $63,450.00 상단 유동성 돌파가 단순 upthrust가 아니라 bullish market structure shift로 해석될 수 있으며, 다음 저항은 EMA240 $64,907.52와 상위 공급 구간 방향으로 열릴 수 있다.",
      "data_quality": "medium",
      "metrics": {
        "order_blocks_total": 2,
        "confirmed_bullish_ob": 0,
        "confirmed_bearish_ob": 0,
        "candidate_bullish_ob": 1,
        "candidate_bearish_ob": 1,
        "active_bullish_ob": 0,
        "active_bearish_ob": 0,
        "nearest_bull_ob_range": {
          "bottom": 57758.6,
          "top": 59298.4,
          "quality": "candidate",
          "score": 0.546
        },
        "nearest_bear_ob_range": {
          "bottom": 76234.7,
          "top": 78077.1,
          "quality": "candidate",
          "score": 0.56
        },
        "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": 55,
        "fvg_open_zones": [],
        "bos_choch_events": [
          "BOS_bearish",
          "BOS_bearish",
          "BOS_bullish",
          "BOS_bearish",
          "CHoCH_bullish"
        ],
        "bos_choch_levels": [
          {
            "type": "BOS_bearish",
            "level": 74203.6
          },
          {
            "type": "BOS_bearish",
            "level": 72436.0
          },
          {
            "type": "BOS_bullish",
            "level": 64250.0
          },
          {
            "type": "BOS_bearish",
            "level": 62232.1
          },
          {
            "type": "CHoCH_bullish",
            "level": 60924.7
          }
        ],
        "bos_sequence": [
          "BOS_bearish",
          "BOS_bearish",
          "BOS_bullish",
          "BOS_bearish",
          "CHoCH_bullish"
        ],
        "consecutive_bull_bos": 0,
        "consecutive_bear_bos": 0,
        "recent_liq_sweeps": [],
        "recent_sweep_levels": [],
        "liquidity_resting": [
          {
            "type": "BSL",
            "level": 78128.55
          }
        ],
        "current_zone": "premium",
        "eq_level": 60604.3,
        "range_high": 63450.0,
        "range_low": 57758.6,
        "bull_score": 6.0,
        "bear_score": 9.0,
        "setup_bias": "bearish",
        "setup_score": 0.831,
        "setup_signals": [
          "bearish BOS below $74,203.60",
          "bearish BOS below $72,436.00",
          "bearish BOS below $62,232.10",
          "deep retracement 169.2% in premium zone"
        ],
        "retracement_direction": "bearish",
        "current_retracement_pct": 169.2,
        "deepest_retracement_pct": 179.8,
        "previous_day_high": 63069.6,
        "previous_day_low": 61877.6,
        "broken_prev_high": true,
        "broken_prev_low": false,
        "sessions": {}
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.83,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.831,\n  \"setup_signals\": [\n    \"가격이 EQ $60,604.30 위의 premium zone에 위치하며 현재가 $62,995.10\",\n    \"current_retracement_pct 169.2%로 과도한 프리미엄 되돌림 구간\",\n    \"이전 bearish BOS 레벨 $62,232.10 위로 되돌림 후 재분배 가능성\",\n    \"previous_day_high $63,069.60 상단 유동성 돌파 완료, previous_day_low $61,877.60은 미돌파\",\n    \"7일 고점 $63,450.00 인근에서 buy-side liquidity 흡수 가능성\",\n    \"확정 bullish OB 및 active bullish OB 부재, unfilled bullish FVG도 없음\"\n  ],\n  \"reasoning\": \"구조적으로는 $74,203.60, $72,436.00, $62,232.10 하방 BOS가 연속적으로 발생한 이후의 시장이므로 confirmed structure_bias는 여전히 bearish로 판단한다. 최근 $60,924.70에서 bullish CHoCH가 있었지만, 현재가는 $62,995.10으로 $64,250.00 bullish BOS 레벨을 회복하지 못했기 때문에 완전한 bullish 구조 전환으로 보기는 어렵다. 셋업 관점에서는 가격이 EQ $60,604.30보다 높은 premium zone에 있고, 169.2%의 깊은 되돌림 상태이며, previous_day_high $63,069.60을 이미 상향 돌파해 단기 buy-side liquidity를 취한 뒤 $63,450.00 7일 고점 아래에 머물고 있다. 확정 OB나 미충족 FVG가 없기 때문에 강한 continuation imbalance보다는 프리미엄 재분배 후 $62,232.10, $61,877.60, $60,604.30 방향으로 되돌릴 가능성이 우세하다.\",\n  \"key_levels\": {\n    \"support\": [\n      62232.1,\n      61877.6,\n      60924.7,\n      60604.3,\n      59298.4,\n      57758.6\n    ],\n    \"resistance\": [\n      63069.6,\n      63450.0,\n      64250.0,\n      64907.52,\n      76234.7,\n      78077.1,\n      78128.55\n    ]\n  },\n  \"time_horizon\": \"short/medium term\",\n  \"invalidation_level\": \"$64,250.00\",\n  \"risk_scenario\": \"$64,250.00 bullish BOS 레벨을 강하게 돌파하고 그 위에서 4시간봉 종가 수용이 발생하면, 현재의 bearish setup은 실패로 간주된다. 이 경우 $63,450.00 상단 유동성 돌파가 단순 upthrust가 아니라 bullish market structure shift로 해석될 수 있으며, 다음 저항은 EMA240 $64,907.52와 상위 공급 구간 방향으로 열릴 수 있다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "derivatives": {
      "agent_id": "derivatives",
      "display_name": "Derivatives Trader",
      "signal": "bearish",
      "confidence": 0.62,
      "structure_bias": "neutral",
      "setup_bias": "bearish",
      "setup_score": 0.74,
      "setup_signals": [
        "가격 $62,995.10이 7일 고점 $63,450.00 바로 아래에서 정체되어 있으며, 상단 유동성 $65,100 전에는 확정 돌파가 없음",
        "가격은 EMA20 $62,068.21 및 EMA120 $62,249.19 위에 있지만 EMA240 $64,907.52 아래에 있어 중기 구조 전환은 미확정",
        "24시간 OI가 -0.8070% 감소하면서 가격은 +0.71% 상승해 신규 롱 유입보다는 포지션 언와인딩성 반등 가능성",
        "롱 계정 비율 0.597, 롱 과밀도 0.825로 롱 포지셔닝이 혼잡하며 contrarian bearish 조건",
        "롱 계정은 24시간 -0.0038 감소, 숏 계정은 +0.004 증가해 계정 플로우가 short_accounts_rising_long_accounts_falling",
        "선물 베이시스가 -0.0398%로 음수이며, 현물 대비 선물 수요가 약해 상승 추격 강도가 제한적",
        "하단 청산 유동성이 $61,300, $60,700, $60,400에 집중되어 있으며 최강 청산 레벨은 $60,700"
      ],
      "reasoning": "현재 BTC는 $62,995.10에서 EMA20 $62,068.21과 EMA120 $62,249.19 위에 있어 단기 반등 구조는 유지되지만, EMA240 $64,907.52 및 7일 고점 $63,450.00 위의 구조적 수용이 없어 확정 bullish 구조로 보기는 어렵습니다. 파생 포지셔닝은 OI가 24시간 -0.8070% 감소한 가운데 가격만 +0.71% 상승해 신규 매수 레버리지보다는 숏 커버 또는 포지션 축소성 반등에 가깝습니다. 롱 계정 비율 0.597과 롱 과밀도 0.825는 상방 추격이 이미 혼잡하다는 신호이며, 동시에 숏 계정이 증가하고 롱 계정이 감소하는 흐름은 단기 변동성 확대 전 포지션 재배치를 시사합니다. CVD divergence 0.700과 fragility_score 0.756은 현재 가격대의 참여 강도가 취약하다는 경고이며, 하단 $61,300, $60,700, $60,400 청산대가 단기 유동성 자석으로 작동할 가능성이 높습니다.",
      "key_levels": {
        "support": [
          62249.19,
          62068.21,
          61300,
          60700,
          60400,
          57758.6
        ],
        "resistance": [
          63450,
          64907.52,
          65100,
          66000
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$65,100 상향 돌파 및 수용",
      "risk_scenario": "$63,450을 강하게 돌파한 뒤 EMA240 $64,907.52 위에서 수용되면, 현재의 bearish setup은 실패하며 상단 청산 유동성 $65,100 및 $66,000을 향한 숏 스퀴즈가 우선 전개될 수 있습니다.",
      "data_quality": "medium",
      "metrics": {
        "cvd_divergence": 0.7,
        "cvd_change": 3127.873,
        "oi_trend": 0.419,
        "oi_change_pct_24h": -0.807,
        "oi_latest": 105591.93,
        "funding_pressure": 0.403,
        "funding_avg": 9.671e-05,
        "funding_change_24h": -4.67e-06,
        "long_account_ratio": 0.599,
        "short_account_ratio": 0.401,
        "long_account_latest": 0.597,
        "short_account_latest": 0.403,
        "long_account_change_24h": -0.0038,
        "short_account_change_24h": 0.0038,
        "account_flow_label": "short_accounts_rising_long_accounts_falling",
        "account_short_crowding": 0.0,
        "account_long_crowding": 0.825,
        "ls_imbalance": 0.0,
        "ls_imbalance_interpretation": "high=short-account crowding / low=long-account crowding",
        "spot_futures_basis_score": 0.49,
        "spot_futures_basis_pct": -0.0398,
        "basis_change_lookback": 0.0098,
        "aggregate_score": 0.403,
        "bull_signals": 1,
        "bear_signals": 3,
        "liq_below": [
          [
            61300,
            21503.712499499998
          ],
          [
            60700,
            37734.4544784
          ],
          [
            60400,
            25856.7010966
          ]
        ],
        "liq_above": [
          [
            65100,
            22151.680854250004
          ],
          [
            66000,
            21127.20046375
          ]
        ],
        "strongest_liq_level": 60700,
        "fragility_score": 0.756,
        "positioning_extreme": "balanced"
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.62,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.74,\n  \"setup_signals\": [\n    \"가격 $62,995.10이 7일 고점 $63,450.00 바로 아래에서 정체되어 있으며, 상단 유동성 $65,100 전에는 확정 돌파가 없음\",\n    \"가격은 EMA20 $62,068.21 및 EMA120 $62,249.19 위에 있지만 EMA240 $64,907.52 아래에 있어 중기 구조 전환은 미확정\",\n    \"24시간 OI가 -0.8070% 감소하면서 가격은 +0.71% 상승해 신규 롱 유입보다는 포지션 언와인딩성 반등 가능성\",\n    \"롱 계정 비율 0.597, 롱 과밀도 0.825로 롱 포지셔닝이 혼잡하며 contrarian bearish 조건\",\n    \"롱 계정은 24시간 -0.0038 감소, 숏 계정은 +0.004 증가해 계정 플로우가 short_accounts_rising_long_accounts_falling\",\n    \"선물 베이시스가 -0.0398%로 음수이며, 현물 대비 선물 수요가 약해 상승 추격 강도가 제한적\",\n    \"하단 청산 유동성이 $61,300, $60,700, $60,400에 집중되어 있으며 최강 청산 레벨은 $60,700\"\n  ],\n  \"reasoning\": \"현재 BTC는 $62,995.10에서 EMA20 $62,068.21과 EMA120 $62,249.19 위에 있어 단기 반등 구조는 유지되지만, EMA240 $64,907.52 및 7일 고점 $63,450.00 위의 구조적 수용이 없어 확정 bullish 구조로 보기는 어렵습니다. 파생 포지셔닝은 OI가 24시간 -0.8070% 감소한 가운데 가격만 +0.71% 상승해 신규 매수 레버리지보다는 숏 커버 또는 포지션 축소성 반등에 가깝습니다. 롱 계정 비율 0.597과 롱 과밀도 0.825는 상방 추격이 이미 혼잡하다는 신호이며, 동시에 숏 계정이 증가하고 롱 계정이 감소하는 흐름은 단기 변동성 확대 전 포지션 재배치를 시사합니다. CVD divergence 0.700과 fragility_score 0.756은 현재 가격대의 참여 강도가 취약하다는 경고이며, 하단 $61,300, $60,700, $60,400 청산대가 단기 유동성 자석으로 작동할 가능성이 높습니다.\",\n  \"key_levels\": {\n    \"support\": [\n      62249.19,\n      62068.21,\n      61300,\n      60700,\n      60400,\n      57758.6\n    ],\n    \"resistance\": [\n      63450,\n      64907.52,\n      65100,\n      66000\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$65,100 상향 돌파 및 수용\",\n  \"risk_scenario\": \"$63,450을 강하게 돌파한 뒤 EMA240 $64,907.52 위에서 수용되면, 현재의 bearish setup은 실패하며 상단 청산 유동성 $65,100 및 $66,000을 향한 숏 스퀴즈가 우선 전개될 수 있습니다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "fibonacci": {
      "agent_id": "fibonacci",
      "display_name": "Fibonacci Analyst",
      "signal": "neutral",
      "confidence": 0.52,
      "structure_bias": "bullish",
      "setup_bias": "bearish",
      "setup_score": 0.58,
      "setup_signals": [
        "현재가 $62,995.10은 스윙 EQ인 ret_0.5 $59,969.30 위에 있어 프리미엄 구간에 위치",
        "가격이 ext_1.272 $63,382.62까지 약 0.62%만 남겨둔 상태로 단기 확장 저항에 접근 중",
        "7일 고점 $63,450.00이 ext_1.272 $63,382.62와 매우 근접해 있어 매수 유동성 흡수 또는 단기 상단 거부 가능성 존재",
        "상단 저항 ext_1.414 $64,010.46 및 ext_1.618 $64,912.43이 EMA240 $64,907.52와 겹쳐 중기 공급 구간 형성",
        "핵심 골든 비율 되돌림 ret_0.618 $59,447.57은 현재가 대비 5.63% 아래에 있어, 추격 매수보다 되돌림 대기 구간이 더 유리"
      ],
      "reasoning": "구조적으로는 스윙 Low $57,759에서 High $62,180으로 형성된 상승 스윙 이후 현재가 $62,995.10이 ext_1.0 $62,180 위에 있어 단기 구조는 bullish로 해석된다. 다만 현재 가격은 EQ $59,969.30을 크게 상회한 프리미엄 구간이며, 가장 가까운 피보나치 레벨이 저항인 ext_1.272 $63,382.62로 불과 0.62% 거리라 즉시 추격 매수의 기대값은 낮다. 특히 7일 고점 $63,450.00과 ext_1.272 $63,382.62가 밀집해 있어 이 구간에서 상단 유동성 흡수 후 되돌림이 나올 수 있다. confluence_quality가 0이고 반응 확률도 0.45 수준이므로 강한 반전 신호보다는 구조적 상승과 단기 과열 setup이 충돌하는 중립 국면으로 판단한다.",
      "key_levels": {
        "support": [
          62180.0,
          61136.55,
          60491.03,
          59969.3,
          59447.57
        ],
        "resistance": [
          63382.62,
          64010.46,
          64912.43,
          66601.4
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$64,010.46 4시간봉 종가 상향 안착",
      "risk_scenario": "반대 시나리오는 가격이 ext_1.272 $63,382.62와 7일 고점 $63,450.00을 강하게 돌파한 뒤 ext_1.414 $64,010.46 위에 안착하는 경우이다. 이 경우 단기 bearish setup은 무효화되고, 다음 목표는 ext_1.618 $64,912.43 및 EMA240 $64,907.52 부근의 중기 저항으로 이동한다. 반대로 $62,180.00 아래로 재진입하면 상승 돌파 실패로 해석되며 ret_0.236 $61,136.55, ret_0.382 $60,491.03까지 되돌림 압력이 커질 수 있다.",
      "data_quality": "medium",
      "metrics": {
        "swing_pair": "Low→High: $57,759 → $62,180",
        "direction": "up",
        "nearest_fib": "ext_1.272",
        "nearest_fib_price": 63382.62,
        "nearest_fib_distance": 0.62,
        "golden_ratio_level": 59447.57,
        "fib_ret_382": 60491.03,
        "fib_ret_618": 59447.57,
        "confluence_zones": [],
        "support_levels": [
          62180.0,
          61136.5496,
          60491.0252
        ],
        "resistance_levels": [
          63382.620800000004,
          64010.4596,
          64912.4252
        ],
        "level_candidates": [
          {
            "name": "ret_0.236",
            "price": 61136.55,
            "distance_pct": 2.95,
            "is_support": true,
            "cluster_score": 0.0
          },
          {
            "name": "ret_0.382",
            "price": 60491.03,
            "distance_pct": 3.98,
            "is_support": true,
            "cluster_score": 0.0
          },
          {
            "name": "ret_0.5",
            "price": 59969.3,
            "distance_pct": 4.8,
            "is_support": true,
            "cluster_score": 0.0
          },
          {
            "name": "ret_0.618",
            "price": 59447.57,
            "distance_pct": 5.63,
            "is_support": true,
            "cluster_score": 0.0
          },
          {
            "name": "ret_0.786",
            "price": 58704.78,
            "distance_pct": 6.81,
            "is_support": true,
            "cluster_score": 0.0
          },
          {
            "name": "ext_1.0",
            "price": 62180.0,
            "distance_pct": 1.29,
            "is_support": true,
            "cluster_score": 0.0
          },
          {
            "name": "ext_1.272",
            "price": 63382.62,
            "distance_pct": 0.62,
            "is_support": false,
            "cluster_score": 0.0
          },
          {
            "name": "ext_1.414",
            "price": 64010.46,
            "distance_pct": 1.61,
            "is_support": false,
            "cluster_score": 0.0
          },
          {
            "name": "ext_1.618",
            "price": 64912.43,
            "distance_pct": 3.04,
            "is_support": false,
            "cluster_score": 0.0
          },
          {
            "name": "ext_2.0",
            "price": 66601.4,
            "distance_pct": 5.72,
            "is_support": false,
            "cluster_score": 0.0
          }
        ],
        "confluence_quality": 0,
        "fib_reaction_state": "approaching",
        "reaction_probability": 0.45
      },
      "raw_llm_response": "{\n  \"signal\": \"neutral\",\n  \"confidence\": 0.52,\n  \"structure_bias\": \"bullish\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.58,\n  \"setup_signals\": [\n    \"현재가 $62,995.10은 스윙 EQ인 ret_0.5 $59,969.30 위에 있어 프리미엄 구간에 위치\",\n    \"가격이 ext_1.272 $63,382.62까지 약 0.62%만 남겨둔 상태로 단기 확장 저항에 접근 중\",\n    \"7일 고점 $63,450.00이 ext_1.272 $63,382.62와 매우 근접해 있어 매수 유동성 흡수 또는 단기 상단 거부 가능성 존재\",\n    \"상단 저항 ext_1.414 $64,010.46 및 ext_1.618 $64,912.43이 EMA240 $64,907.52와 겹쳐 중기 공급 구간 형성\",\n    \"핵심 골든 비율 되돌림 ret_0.618 $59,447.57은 현재가 대비 5.63% 아래에 있어, 추격 매수보다 되돌림 대기 구간이 더 유리\"\n  ],\n  \"reasoning\": \"구조적으로는 스윙 Low $57,759에서 High $62,180으로 형성된 상승 스윙 이후 현재가 $62,995.10이 ext_1.0 $62,180 위에 있어 단기 구조는 bullish로 해석된다. 다만 현재 가격은 EQ $59,969.30을 크게 상회한 프리미엄 구간이며, 가장 가까운 피보나치 레벨이 저항인 ext_1.272 $63,382.62로 불과 0.62% 거리라 즉시 추격 매수의 기대값은 낮다. 특히 7일 고점 $63,450.00과 ext_1.272 $63,382.62가 밀집해 있어 이 구간에서 상단 유동성 흡수 후 되돌림이 나올 수 있다. confluence_quality가 0이고 반응 확률도 0.45 수준이므로 강한 반전 신호보다는 구조적 상승과 단기 과열 setup이 충돌하는 중립 국면으로 판단한다.\",\n  \"key_levels\": {\n    \"support\": [\n      62180.0,\n      61136.55,\n      60491.03,\n      59969.3,\n      59447.57\n    ],\n    \"resistance\": [\n      63382.62,\n      64010.46,\n      64912.43,\n      66601.4\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$64,010.46 4시간봉 종가 상향 안착\",\n  \"risk_scenario\": \"반대 시나리오는 가격이 ext_1.272 $63,382.62와 7일 고점 $63,450.00을 강하게 돌파한 뒤 ext_1.414 $64,010.46 위에 안착하는 경우이다. 이 경우 단기 bearish setup은 무효화되고, 다음 목표는 ext_1.618 $64,912.43 및 EMA240 $64,907.52 부근의 중기 저항으로 이동한다. 반대로 $62,180.00 아래로 재진입하면 상승 돌파 실패로 해석되며 ret_0.236 $61,136.55, ret_0.382 $60,491.03까지 되돌림 압력이 커질 수 있다.\",\n  \"data_quality\": \"medium\"\n}"
    }
  },
  "chairman_synthesis": {
    "overall_signal": "bearish",
    "overall_confidence": 0.7,
    "execution_setup": {
      "setup_bias": "bearish",
      "setup_strength": 0.78,
      "active_setups": [
        "현재가 $62,995.10은 7일 범위 EQ $60,604.30 위의 프리미엄 구간에 위치",
        "Wyckoff 분배 구조상 Phase C UT가 $63,450.00에서 형성되었고, 상단 ST $64,362.60 아래에서 실패",
        "ICT 기준 이전 하방 BOS $62,232.10 위로 되돌린 뒤 $64,250.00 bullish BOS를 회복하지 못한 재분배 조건",
        "previous day high $63,069.60 상향 돌파 후 7일 고점 $63,450.00 아래 정체",
        "캔들상 $63,450.00 부근 strict evening star와 bearish engulfing, bearish harami가 연속 출현",
        "파생시장 OI 24시간 -0.8070% 감소 중 가격 +0.71% 상승으로 신규 롱 추세보다는 숏커버성 반등 가능성",
        "롱 계정 비율 0.597 및 롱 과밀도 0.825로 상방 추격 포지션 혼잡",
        "피보나치 ext_1.272 $63,382.62와 7일 고점 $63,450.00이 근접해 단기 확장 저항 클러스터 형성"
      ],
      "setup_vs_structure": "구조적 신호와 실행 셋업이 모두 약세 쪽으로 정렬되어 있다. 다만 가격이 bullish Bat PRZ $62,527.12-$63,386.13 내부에 있어 단기 반응성 반등 리스크는 별도 관리가 필요하다."
    },
    "signal_breakdown": {
      "bullish_count": 1,
      "bearish_count": 4,
      "neutral_count": 1
    },
    "key_levels": {
      "support": [
        62249.19,
        62232.1,
        62068.21,
        61877.6,
        60755.0,
        60700.0,
        60604.3,
        60400.0,
        59060.0,
        57758.6
      ],
      "resistance": [
        63069.6,
        63382.62,
        63450.0,
        64179.5,
        64250.0,
        64362.6,
        64907.52,
        65100.0,
        66000.0
      ]
    },
    "confluences": [
      "Wyckoff, Candlestick, ICT가 모두 $63,450.00을 핵심 상단 실패·저항·7일 고점으로 지목",
      "Fibonacci ext_1.272 $63,382.62와 Wyckoff/I​​CT/Candlestick의 $63,450.00 저항이 0.1% 내외로 밀집",
      "ICT의 previous day high $63,069.60 돌파 후 정체와 Candlestick의 $63,450.00 인근 evening star가 상단 유동성 흡수 가능성을 함께 시사",
      "Wyckoff의 박스 EQ $62,467.25, Candlestick·Derivatives의 EMA120 $62,249.19, ICT의 bearish BOS 레벨 $62,232.10, Fibonacci ext_1.0 $62,180.00이 $62,180-$62,467 구간에 구조적 중간 지지 클러스터를 형성",
      "ICT EQ $60,604.30, Wyckoff AR $60,755.00, Derivatives 청산대 $60,700/$60,400이 $60,400-$60,755 구간에 하단 유동성·지지 클러스터를 형성",
      "Wyckoff SOW 저점 $59,060.00, ICT 지지 $59,298.40, Fibonacci 0.618 $59,447.57이 $59,060-$59,448 구간에 하위 구조 지지대를 형성",
      "Derivatives의 EMA240 $64,907.52, Fibonacci ext_1.618 $64,912.43, Candlestick의 EMA240 $64,907.52가 $64,907-$64,912에 중기 구조 저항으로 일치"
    ],
    "conflicts": [
      "Harmonic은 bullish Bat PRZ $62,527.12-$63,386.13 내부 반응 가능성을 제시하지만, 해당 핵심 패턴은 아직 forming 상태이며 독립적으로 구조를 뒤집을 권한은 낮다",
      "Fibonacci는 Low $57,759 → High $62,180 상승 스윙 확장 기준으로 구조를 bullish로 보지만, 동일 분석 내에서도 현재가가 프리미엄에 있고 ext_1.272 $63,382.62 저항에 접근했다고 평가해 실행 셋업은 약세다",
      "Candlestick과 Derivatives는 가격이 EMA20 $62,068.21 및 EMA120 $62,249.19 위에 있어 단기 반등 구조는 인정하지만, Wyckoff와 ICT는 더 큰 구조를 분배·하방 BOS 이후 재분배로 해석한다",
      "Harmonic의 bullish TP ladder는 $64,598.76, $65,613.27, $67,255.40을 제시하지만, 이는 반응 확인 후 참고할 목표 구간이지 현재의 Wyckoff/ICT 약세 구조를 무효화하는 신호는 아니다"
    ],
    "executive_summary": "BTC/USDT 4시간 구조는 Wyckoff상 BC $64,179.50 → AR $60,755.00 → ST $64,362.60 → SOW $59,060.00 → UT $63,450.00로 이어지는 분배 후보가 우세하며, 현재는 Phase C의 UT 이후 상단 실패 조건에 위치한다. ICT 역시 연속 하방 BOS 이후 $64,250.00 bullish BOS를 회복하지 못한 상태로 보아 구조적 편향은 약세이며, 현재가 $62,995.10은 EQ $60,604.30 위 프리미엄 구간에 있다. 핵심 상단 구조 구간은 $63,382.62-$63,450.00 및 $64,179.50-$64,362.60이고, 하단 구조 확인 구간은 $62,232.10-$62,467.25 및 $60,400-$60,755이다. 단기적으로 Harmonic의 bullish Bat PRZ $62,527.12-$63,386.13이 반등 리스크를 만들지만, 아직 주 구조를 뒤집는 확정 신호는 아니다. 약세 구조의 주요 무효화 조건은 $64,362.60 위 4시간 수용이며, $64,907.52 위 안착은 중기 구조 전환 리스크를 크게 높인다.",
    "raw_llm_response": "{\n  \"overall_signal\": \"bearish\",\n  \"overall_confidence\": 0.7,\n  \"execution_setup\": {\n    \"setup_bias\": \"bearish\",\n    \"setup_strength\": 0.78,\n    \"active_setups\": [\n      \"현재가 $62,995.10은 7일 범위 EQ $60,604.30 위의 프리미엄 구간에 위치\",\n      \"Wyckoff 분배 구조상 Phase C UT가 $63,450.00에서 형성되었고, 상단 ST $64,362.60 아래에서 실패\",\n      \"ICT 기준 이전 하방 BOS $62,232.10 위로 되돌린 뒤 $64,250.00 bullish BOS를 회복하지 못한 재분배 조건\",\n      \"previous day high $63,069.60 상향 돌파 후 7일 고점 $63,450.00 아래 정체\",\n      \"캔들상 $63,450.00 부근 strict evening star와 bearish engulfing, bearish harami가 연속 출현\",\n      \"파생시장 OI 24시간 -0.8070% 감소 중 가격 +0.71% 상승으로 신규 롱 추세보다는 숏커버성 반등 가능성\",\n      \"롱 계정 비율 0.597 및 롱 과밀도 0.825로 상방 추격 포지션 혼잡\",\n      \"피보나치 ext_1.272 $63,382.62와 7일 고점 $63,450.00이 근접해 단기 확장 저항 클러스터 형성\"\n    ],\n    \"setup_vs_structure\": \"구조적 신호와 실행 셋업이 모두 약세 쪽으로 정렬되어 있다. 다만 가격이 bullish Bat PRZ $62,527.12-$63,386.13 내부에 있어 단기 반응성 반등 리스크는 별도 관리가 필요하다.\"\n  },\n  \"signal_breakdown\": {\n    \"bullish_count\": 1,\n    \"bearish_count\": 4,\n    \"neutral_count\": 1\n  },\n  \"key_levels\": {\n    \"support\": [\n      62249.19,\n      62232.1,\n      62068.21,\n      61877.6,\n      60755.0,\n      60700.0,\n      60604.3,\n      60400.0,\n      59060.0,\n      57758.6\n    ],\n    \"resistance\": [\n      63069.6,\n      63382.62,\n      63450.0,\n      64179.5,\n      64250.0,\n      64362.6,\n      64907.52,\n      65100.0,\n      66000.0\n    ]\n  },\n  \"confluences\": [\n    \"Wyckoff, Candlestick, ICT가 모두 $63,450.00을 핵심 상단 실패·저항·7일 고점으로 지목\",\n    \"Fibonacci ext_1.272 $63,382.62와 Wyckoff/I​​CT/Candlestick의 $63,450.00 저항이 0.1% 내외로 밀집\",\n    \"ICT의 previous day high $63,069.60 돌파 후 정체와 Candlestick의 $63,450.00 인근 evening star가 상단 유동성 흡수 가능성을 함께 시사\",\n    \"Wyckoff의 박스 EQ $62,467.25, Candlestick·Derivatives의 EMA120 $62,249.19, ICT의 bearish BOS 레벨 $62,232.10, Fibonacci ext_1.0 $62,180.00이 $62,180-$62,467 구간에 구조적 중간 지지 클러스터를 형성\",\n    \"ICT EQ $60,604.30, Wyckoff AR $60,755.00, Derivatives 청산대 $60,700/$60,400이 $60,400-$60,755 구간에 하단 유동성·지지 클러스터를 형성\",\n    \"Wyckoff SOW 저점 $59,060.00, ICT 지지 $59,298.40, Fibonacci 0.618 $59,447.57이 $59,060-$59,448 구간에 하위 구조 지지대를 형성\",\n    \"Derivatives의 EMA240 $64,907.52, Fibonacci ext_1.618 $64,912.43, Candlestick의 EMA240 $64,907.52가 $64,907-$64,912에 중기 구조 저항으로 일치\"\n  ],\n  \"conflicts\": [\n    \"Harmonic은 bullish Bat PRZ $62,527.12-$63,386.13 내부 반응 가능성을 제시하지만, 해당 핵심 패턴은 아직 forming 상태이며 독립적으로 구조를 뒤집을 권한은 낮다\",\n    \"Fibonacci는 Low $57,759 → High $62,180 상승 스윙 확장 기준으로 구조를 bullish로 보지만, 동일 분석 내에서도 현재가가 프리미엄에 있고 ext_1.272 $63,382.62 저항에 접근했다고 평가해 실행 셋업은 약세다\",\n    \"Candlestick과 Derivatives는 가격이 EMA20 $62,068.21 및 EMA120 $62,249.19 위에 있어 단기 반등 구조는 인정하지만, Wyckoff와 ICT는 더 큰 구조를 분배·하방 BOS 이후 재분배로 해석한다\",\n    \"Harmonic의 bullish TP ladder는 $64,598.76, $65,613.27, $67,255.40을 제시하지만, 이는 반응 확인 후 참고할 목표 구간이지 현재의 Wyckoff/ICT 약세 구조를 무효화하는 신호는 아니다\"\n  ],\n  \"highest_conviction_analyst\": \"ICT Trader — 신뢰도 83%로 가장 높고, $74,203.60, $72,436.00, $62,232.10의 하방 BOS 이후 $64,250.00 bullish BOS 미회복이라는 구조 논리가 명확하다. 또한 현재가 $62,995.10이 EQ $60,604.30 위 프리미엄에 있으며 previous day high $63,069.60 돌파 후 $63,450.00 아래에 머무는 조건까지 구체적이다.\",\n  \"invalidation_level\": \"4시간봉 기준 $64,362.60 상방 수용 시 분배 Phase C UT 해석이 약화되며, $64,907.52 위 안착 시 중기 약세 구조는 실질적으로 무효화된다.\",\n  \"executive_summary\": \"BTC/USDT 4시간 구조는 Wyckoff상 BC $64,179.50 → AR $60,755.00 → ST $64,362.60 → SOW $59,060.00 → UT $63,450.00로 이어지는 분배 후보가 우세하며, 현재는 Phase C의 UT 이후 상단 실패 조건에 위치한다. ICT 역시 연속 하방 BOS 이후 $64,250.00 bullish BOS를 회복하지 못한 상태로 보아 구조적 편향은 약세이며, 현재가 $62,995.10은 EQ $60,604.30 위 프리미엄 구간에 있다. 핵심 상단 구조 구간은 $63,382.62-$63,450.00 및 $64,179.50-$64,362.60이고, 하단 구조 확인 구간은 $62,232.10-$62,467.25 및 $60,400-$60,755이다. 단기적으로 Harmonic의 bullish Bat PRZ $62,527.12-$63,386.13이 반등 리스크를 만들지만, 아직 주 구조를 뒤집는 확정 신호는 아니다. 약세 구조의 주요 무효화 조건은 $64,362.60 위 4시간 수용이며, $64,907.52 위 안착은 중기 구조 전환 리스크를 크게 높인다.\"\n}"
  },
  "overall_signal": "bearish",
  "overall_confidence": 0.7,
  "operating_path": {
    "path_type": "complex",
    "confidence": 0.68,
    "waypoints": [
      {
        "seq": 1,
        "price": 62232.1,
        "type": "support_test",
        "source": "ICT(하방 BOS $62,232.10), Candlestick·Derivatives(EMA120 $62,249.19 / EMA20 $62,068.21), Wyckoff(박스 EQ $62,467.25), Fibonacci(ext_1.0 $62,180.00), Harmonic(Bat PRZ 하단 $62,527.12)",
        "description": "구조·셋업이 모두 약세(구조 70% / 셋업 78%)로 정렬되어 첫 이동은 하방. 프리미엄 구간(EQ $60,604.30 상단, ICT retracement 169.2%)에서 거부된 뒤 첫 구조적 지지 클러스터 $62,180~$62,527를 테스트한다. ICT 하방 BOS $62,232.10, EMA120 $62,249.19, Wyckoff 박스 EQ $62,467.25, Fib ext_1.0 $62,180.00이 밀집한 STRICT급 셋업 정렬 구간. 하모닉 Bat PRZ 하단 $62,527.12이 바로 위에 있어 이 지점에서 반응성 반등이 나올 확률이 높다.",
        "est_hours": 5,
        "turning_zone": [
          62068.21,
          62249.19
        ],
        "likely_wick": 62180.0,
        "rejection_confirm": 62467.25,
        "invalid_overshoot": 61877.6,
        "calibration_reasoning": "ICT BOS $62,232·EMA120 $62,249·Fib ext_1.0 $62,180이 밀집한 STRICT 지지 클러스터가 zone 상단·중심을 고정하고 하단은 첫 이탈 지지인 Chairman $62,068.21로 확장(폭 ≈0.26 ATR, 밀집 정렬로 타이트화). 최밀집 지점 Fib ext_1.0 $62,180이 wick 극점으로 유력하며 Wyckoff 박스 EQ $62,467 회복 시 반등 확정, Chairman $61,877.60 하향 이탈 시 지지 클러스터 실패로 무효."
      },
      {
        "seq": 2,
        "price": 63069.6,
        "type": "resistance_test",
        "source": "Harmonic(Bat PRZ / D $62,956.63, forming·미확정), ICT(previous day high $63,069.60), Fibonacci(ext_1.272 $63,382.62), Candlestick(evening star @ $63,450.00)",
        "description": "별도 관리 대상인 하모닉 bullish Bat PRZ 반응성 되돌림 반등. D 예상가 $62,956.63과 이전일 고점 $63,069.60을 저항으로 재테스트하지만, 상단 저항 클러스터 $63,382.62(Fib ext_1.272)~$63,450.00(7일 고점·Wyckoff UT·strict evening star) 아래에서 lower high를 형성하고 실패한다. 하모닉은 confirmed_reaction=false로 방향을 뒤집을 권한이 없어 이 반등은 분배 지속을 확인하는 재분배성 되돌림으로 소진된다.",
        "est_hours": 11,
        "turning_zone": [
          63069.6,
          63382.62
        ],
        "likely_wick": 63350.0,
        "rejection_confirm": 62956.63,
        "invalid_overshoot": 63450.0,
        "calibration_reasoning": "이전일 고점 $63,069.60(base)~Fib ext_1.272 $63,382.62를 lower-high 밴드(폭 ≈0.46 ATR)로 설정, 반등이 상단 저항 클러스터 아래에서 소진되므로 wick은 $63,382.62 직전 $63,350 부근이 유력. 하모닉 D $62,956.63(PRE_CONFIRMATION이라 waypoint 이동 없이 참고용) 하향 상실 시 재분배 재개 확정, 7일 고점·Wyckoff UT·evening star $63,450 상향 돌파 시 higher high가 되어 lower-high 논리 무효."
      },
      {
        "seq": 3,
        "price": 60700.0,
        "type": "swing_low",
        "source": "Wyckoff(AR $60,755.00), ICT(7일 범위 EQ $60,604.30), Derivatives(청산대 $61,300/$60,700/$60,400), Fibonacci($60,491.03)",
        "description": "반등 실패 후 하단 유동성·지지 클러스터 $60,400~$60,755로 마크다운. Wyckoff AR $60,755.00, ICT EQ $60,604.30, 파생 청산대 $60,700/$60,400이 유동성 자석으로 작동하며, 도중 $61,300 청산대를 경유한다. OI 24h -0.807% 감소 속 숏커버성 반등이라는 취약 구조와 CVD divergence 0.700·fragility 0.756이 하방 가속을 뒷받침한다.",
        "est_hours": 22,
        "turning_zone": [
          60350.0,
          60755.0
        ],
        "likely_wick": 60400.0,
        "rejection_confirm": 61136.55,
        "invalid_overshoot": 60200.0,
        "calibration_reasoning": "터미널 스윙로우로 폭 확대(≈0.59 ATR): Wyckoff AR $60,755을 zone 상단, 파생 청산대 $60,400 자석을 포함하도록 하단 $60,350 설정. $60,700/$60,400 청산대 + 라운드넘버 자석 특성상 fragility 0.756 하방 가속에서 하단 청산풀 $60,400이 wick 극점으로 유력(ICT EQ $60,604·Fib 0.382 $60,491 하단 스윕). Fib $61,136.55 회복 시 반전 확정, $60,400 붕괴 후 $59,060까지 지지 공백이라 $60,200 이탈 시 무효."
      }
    ],
    "period_extremes": {
      "4h": {
        "expected_high": 63050.0,
        "expected_low": 62400.0,
        "high_first": true
      },
      "8h": {
        "expected_high": 63050.0,
        "expected_low": 62232.1,
        "high_first": true
      },
      "24h": {
        "expected_high": 63120.0,
        "expected_low": 60700.0,
        "high_first": true
      }
    },
    "triggers": {
      "bullish": {
        "price": 63386.13,
        "description": "하모닉 PRZ 상단 $63,386.13 및 Fib ext_1.272 $63,382.62 회복 시 반등 우위로 전환 → $63,450.00 재돌파 및 하모닉 TP 사다리 $64,598.76 활성화 리스크. 약세 셋업 약화."
      },
      "bearish": {
        "price": 62068.21,
        "description": "EMA20 $62,068.21 4시간 종가 이탈 시 유일하게 남은 단기 지지(EMA20/EMA120)를 상실 → $62,180~$62,232 지지 클러스터 하향 확정과 함께 $60,755/$60,700 청산대 방향 마크다운 가속."
      }
    },
    "scenario_invalidation": 63450.0,
    "raw_llm_response": "```json\n{\n  \"path_type\": \"complex\",\n  \"confidence\": 0.68,\n  \"waypoints\": [\n    {\n      \"seq\": 1,\n      \"price\": 62232.10,\n      \"type\": \"support_test\",\n      \"source\": \"ICT(하방 BOS $62,232.10), Candlestick·Derivatives(EMA120 $62,249.19 / EMA20 $62,068.21), Wyckoff(박스 EQ $62,467.25), Fibonacci(ext_1.0 $62,180.00), Harmonic(Bat PRZ 하단 $62,527.12)\",\n      \"description\": \"구조·셋업이 모두 약세(구조 70% / 셋업 78%)로 정렬되어 첫 이동은 하방. 프리미엄 구간(EQ $60,604.30 상단, ICT retracement 169.2%)에서 거부된 뒤 첫 구조적 지지 클러스터 $62,180~$62,527를 테스트한다. ICT 하방 BOS $62,232.10, EMA120 $62,249.19, Wyckoff 박스 EQ $62,467.25, Fib ext_1.0 $62,180.00이 밀집한 STRICT급 셋업 정렬 구간. 하모닉 Bat PRZ 하단 $62,527.12이 바로 위에 있어 이 지점에서 반응성 반등이 나올 확률이 높다.\",\n      \"est_hours\": 5\n    },\n    {\n      \"seq\": 2,\n      \"price\": 63069.60,\n      \"type\": \"resistance_test\",\n      \"source\": \"Harmonic(Bat PRZ / D $62,956.63, forming·미확정), ICT(previous day high $63,069.60), Fibonacci(ext_1.272 $63,382.62), Candlestick(evening star @ $63,450.00)\",\n      \"description\": \"별도 관리 대상인 하모닉 bullish Bat PRZ 반응성 되돌림 반등. D 예상가 $62,956.63과 이전일 고점 $63,069.60을 저항으로 재테스트하지만, 상단 저항 클러스터 $63,382.62(Fib ext_1.272)~$63,450.00(7일 고점·Wyckoff UT·strict evening star) 아래에서 lower high를 형성하고 실패한다. 하모닉은 confirmed_reaction=false로 방향을 뒤집을 권한이 없어 이 반등은 분배 지속을 확인하는 재분배성 되돌림으로 소진된다.\",\n      \"est_hours\": 11\n    },\n    {\n      \"seq\": 3,\n      \"price\": 60700.00,\n      \"type\": \"swing_low\",\n      \"source\": \"Wyckoff(AR $60,755.00), ICT(7일 범위 EQ $60,604.30), Derivatives(청산대 $61,300/$60,700/$60,400), Fibonacci($60,491.03)\",\n      \"description\": \"반등 실패 후 하단 유동성·지지 클러스터 $60,400~$60,755로 마크다운. Wyckoff AR $60,755.00, ICT EQ $60,604.30, 파생 청산대 $60,700/$60,400이 유동성 자석으로 작동하며, 도중 $61,300 청산대를 경유한다. OI 24h -0.807% 감소 속 숏커버성 반등이라는 취약 구조와 CVD divergence 0.700·fragility 0.756이 하방 가속을 뒷받침한다.\",\n      \"est_hours\": 22\n    }\n  ],\n  \"period_extremes\": {\n    \"4h\":  {\"expected_high\": 63050.0,  \"expected_low\": 62400.0,  \"high_first\": true},\n    \"8h\":  {\"expected_high\": 63050.0,  \"expected_low\": 62232.10, \"high_first\": true},\n    \"24h\": {\"expected_high\": 63120.0,  \"expected_low\": 60700.0,  \"high_first\": true}\n  },\n  \"triggers\": {\n    \"bullish\": {\"price\": 63386.13, \"description\": \"하모닉 PRZ 상단 $63,386.13 및 Fib ext_1.272 $63,382.62 회복 시 반등 우위로 전환 → $63,450.00 재돌파 및 하모닉 TP 사다리 $64,598.76 활성화 리스크. 약세 셋업 약화.\"},\n    \"bearish\": {\"price\": 62068.21, \"description\": \"EMA20 $62,068.21 4시간 종가 이탈 시 유일하게 남은 단기 지지(EMA20/EMA120)를 상실 → $62,180~$62,232 지지 클러스터 하향 확정과 함께 $60,755/$60,700 청산대 방향 마크다운 가속.\"}\n  },\n  \"scenario_invalidation\": 63450.0\n}\n```\n\n**핵심 판단:** 구조(70%)와 실행 셋업(78%)이 모두 약세로 정렬 → 하방이 1차 이동. 다만 현재가 $62,995.10이 하모닉 Bat PRZ($62,527.12–$63,386.13) 내부 D 근처라 반응성 반등 리스크가 실재하므로, 이를 WP1로 승격하지 않고(규칙상 forming 하모닉은 WP1을 뒤집을 수 없음) **WP2의 lower-high 실패 반등**으로 배치했다. 경로는 지지 클러스터 테스트($62,232) → 하모닉 반등 실패($63,069) → 하단 유동성 마크다운($60,700)의 분배형 복합 경로다. $63,450 4시간 수용 시 전 경로 무효."
  },
  "tp_calibration": {
    "calibrated_waypoints": [
      {
        "seq": 1,
        "base_target": 62232.1,
        "turning_zone": [
          62068.21,
          62249.19
        ],
        "likely_wick": 62180.0,
        "rejection_confirm": 62467.25,
        "invalid_overshoot": 61877.6,
        "calibration_reasoning": "ICT BOS $62,232·EMA120 $62,249·Fib ext_1.0 $62,180이 밀집한 STRICT 지지 클러스터가 zone 상단·중심을 고정하고 하단은 첫 이탈 지지인 Chairman $62,068.21로 확장(폭 ≈0.26 ATR, 밀집 정렬로 타이트화). 최밀집 지점 Fib ext_1.0 $62,180이 wick 극점으로 유력하며 Wyckoff 박스 EQ $62,467 회복 시 반등 확정, Chairman $61,877.60 하향 이탈 시 지지 클러스터 실패로 무효."
      },
      {
        "seq": 2,
        "base_target": 63069.6,
        "turning_zone": [
          63069.6,
          63382.62
        ],
        "likely_wick": 63350.0,
        "rejection_confirm": 62956.63,
        "invalid_overshoot": 63450.0,
        "calibration_reasoning": "이전일 고점 $63,069.60(base)~Fib ext_1.272 $63,382.62를 lower-high 밴드(폭 ≈0.46 ATR)로 설정, 반등이 상단 저항 클러스터 아래에서 소진되므로 wick은 $63,382.62 직전 $63,350 부근이 유력. 하모닉 D $62,956.63(PRE_CONFIRMATION이라 waypoint 이동 없이 참고용) 하향 상실 시 재분배 재개 확정, 7일 고점·Wyckoff UT·evening star $63,450 상향 돌파 시 higher high가 되어 lower-high 논리 무효."
      },
      {
        "seq": 3,
        "base_target": 60700.0,
        "turning_zone": [
          60350.0,
          60755.0
        ],
        "likely_wick": 60400.0,
        "rejection_confirm": 61136.55,
        "invalid_overshoot": 60200.0,
        "calibration_reasoning": "터미널 스윙로우로 폭 확대(≈0.59 ATR): Wyckoff AR $60,755을 zone 상단, 파생 청산대 $60,400 자석을 포함하도록 하단 $60,350 설정. $60,700/$60,400 청산대 + 라운드넘버 자석 특성상 fragility 0.756 하방 가속에서 하단 청산풀 $60,400이 wick 극점으로 유력(ICT EQ $60,604·Fib 0.382 $60,491 하단 스윕). Fib $61,136.55 회복 시 반전 확정, $60,400 붕괴 후 $59,060까지 지지 공백이라 $60,200 이탈 시 무효."
      }
    ],
    "raw_llm_response": "```json\n{\n  \"calibrated_waypoints\": [\n    {\n      \"seq\": 1,\n      \"base_target\": 62232.10,\n      \"turning_zone\": [62068.21, 62249.19],\n      \"likely_wick\": 62180.00,\n      \"rejection_confirm\": 62467.25,\n      \"invalid_overshoot\": 61877.60,\n      \"calibration_reasoning\": \"ICT BOS $62,232·EMA120 $62,249·Fib ext_1.0 $62,180이 밀집한 STRICT 지지 클러스터가 zone 상단·중심을 고정하고 하단은 첫 이탈 지지인 Chairman $62,068.21로 확장(폭 ≈0.26 ATR, 밀집 정렬로 타이트화). 최밀집 지점 Fib ext_1.0 $62,180이 wick 극점으로 유력하며 Wyckoff 박스 EQ $62,467 회복 시 반등 확정, Chairman $61,877.60 하향 이탈 시 지지 클러스터 실패로 무효.\"\n    },\n    {\n      \"seq\": 2,\n      \"base_target\": 63069.60,\n      \"turning_zone\": [63069.60, 63382.62],\n      \"likely_wick\": 63350.00,\n      \"rejection_confirm\": 62956.63,\n      \"invalid_overshoot\": 63450.00,\n      \"calibration_reasoning\": \"이전일 고점 $63,069.60(base)~Fib ext_1.272 $63,382.62를 lower-high 밴드(폭 ≈0.46 ATR)로 설정, 반등이 상단 저항 클러스터 아래에서 소진되므로 wick은 $63,382.62 직전 $63,350 부근이 유력. 하모닉 D $62,956.63(PRE_CONFIRMATION이라 waypoint 이동 없이 참고용) 하향 상실 시 재분배 재개 확정, 7일 고점·Wyckoff UT·evening star $63,450 상향 돌파 시 higher high가 되어 lower-high 논리 무효.\"\n    },\n    {\n      \"seq\": 3,\n      \"base_target\": 60700.00,\n      \"turning_zone\": [60350.00, 60755.00],\n      \"likely_wick\": 60400.00,\n      \"rejection_confirm\": 61136.55,\n      \"invalid_overshoot\": 60200.00,\n      \"calibration_reasoning\": \"터미널 스윙로우로 폭 확대(≈0.59 ATR): Wyckoff AR $60,755을 zone 상단, 파생 청산대 $60,400 자석을 포함하도록 하단 $60,350 설정. $60,700/$60,400 청산대 + 라운드넘버 자석 특성상 fragility 0.756 하방 가속에서 하단 청산풀 $60,400이 wick 극점으로 유력(ICT EQ $60,604·Fib 0.382 $60,491 하단 스윕). Fib $61,136.55 회복 시 반전 확정, $60,400 붕괴 후 $59,060까지 지지 공백이라 $60,200 이탈 시 무효.\"\n    }\n  ]\n}\n```"
  },
  "timing": {
    "stages": {
      "stage1_agents": 50.2,
      "chairman": 83.7,
      "operating_path": 509.5,
      "tp_calibrator": 272.1
    },
    "agents": {},
    "total_s": 915.6
  }
}