{
  "symbol": "BTC/USDT",
  "timeframe": "4h",
  "timestamp": "2026-07-04 13:00 KST",
  "last_price": 62609.6,
  "num_candles": 300,
  "stage1_analyses": {
    "candlestick": {
      "agent_id": "candlestick",
      "display_name": "Candlestick Reader",
      "signal": "neutral",
      "confidence": 0.52,
      "structure_bias": "neutral",
      "setup_bias": "bearish",
      "setup_score": 0.58,
      "setup_signals": [
        "현재가 $62,609.60은 7일 레인지 EQ $60,357.90 위의 프리미엄 구간에 위치",
        "7일 고점 저항 $62,957.20 바로 아래에서 도지@299 발생, 단기 매수세 둔화 신호",
        "bearish_harami@296 감지, 품질 0.578로 최근 패턴 중 가장 높음",
        "EMA240 $65,261.98 아래에 있어 상위 추세 저항이 아직 해소되지 않음",
        "최근 bullish_engulfing@294, @297이 있었지만 고거래량 패턴이 없어 추세 전환 확정력은 제한적"
      ],
      "reasoning": "BTC는 현재 $62,609.60으로 EMA20 $61,234.80과 EMA120 $62,192.35 위에 있어 단기 반등 압력은 유지되고 있지만, EMA240 $65,261.98 아래에 있어 중기 구조적 강세 확정은 부족합니다. 최근 패턴은 bullish_engulfing 2개, bearish_harami 1개, doji 1개로 혼재되어 있으며, 가장 높은 품질은 bearish_harami 0.578이고 고거래량 확인은 없습니다. 가격이 7일 고점 $62,957.20 바로 아래에서 도지를 만들었기 때문에, 이는 저항권에서의 매수세 피로 또는 단기 되돌림 가능성을 시사합니다. 다만 최근 5개 캔들이 대체로 양봉 우위이고 가격이 EMA20 위에 있으므로, 확정적 약세 구조라기보다는 프리미엄 구간에서의 약세 셋업으로 해석합니다.",
      "key_levels": {
        "support": [
          62192.35,
          61234.8,
          60357.9,
          57758.6
        ],
        "resistance": [
          62957.2,
          65261.98
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$62,957.20 상방 4시간봉 종가 안착",
      "risk_scenario": "만약 $62,957.20을 강하게 돌파하고 4시간봉 기준으로 안착하면 도지와 bearish harami 기반의 단기 약세 셋업은 무효화되며, 다음 저항인 EMA240 $65,261.98까지 숏 커버링성 상승이 이어질 수 있습니다.",
      "data_quality": "medium",
      "metrics": {
        "total_patterns_detected": 139,
        "recent_patterns": 4,
        "pattern_list": [
          "bullish_engulfing@294",
          "bullish_engulfing@297",
          "doji@299",
          "bearish_harami@296"
        ],
        "atr_value": 810.53,
        "vol_avg_20": 32892.72,
        "high_volume_patterns": [],
        "pattern_candidates": [
          {
            "pattern": "bearish_harami",
            "signal": "bearish",
            "pattern_quality": 0.578,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "bullish_engulfing",
            "signal": "bullish",
            "pattern_quality": 0.457,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "bullish_engulfing",
            "signal": "bullish",
            "pattern_quality": 0.427,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "doji",
            "signal": "neutral",
            "pattern_quality": 0.355,
            "tier": "candidate",
            "high_volume": false
          }
        ],
        "best_pattern_quality": 0.578,
        "bull_score": 1.5,
        "bear_score": 0.6
      },
      "raw_llm_response": "{\n  \"signal\": \"neutral\",\n  \"confidence\": 0.52,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.58,\n  \"setup_signals\": [\n    \"현재가 $62,609.60은 7일 레인지 EQ $60,357.90 위의 프리미엄 구간에 위치\",\n    \"7일 고점 저항 $62,957.20 바로 아래에서 도지@299 발생, 단기 매수세 둔화 신호\",\n    \"bearish_harami@296 감지, 품질 0.578로 최근 패턴 중 가장 높음\",\n    \"EMA240 $65,261.98 아래에 있어 상위 추세 저항이 아직 해소되지 않음\",\n    \"최근 bullish_engulfing@294, @297이 있었지만 고거래량 패턴이 없어 추세 전환 확정력은 제한적\"\n  ],\n  \"reasoning\": \"BTC는 현재 $62,609.60으로 EMA20 $61,234.80과 EMA120 $62,192.35 위에 있어 단기 반등 압력은 유지되고 있지만, EMA240 $65,261.98 아래에 있어 중기 구조적 강세 확정은 부족합니다. 최근 패턴은 bullish_engulfing 2개, bearish_harami 1개, doji 1개로 혼재되어 있으며, 가장 높은 품질은 bearish_harami 0.578이고 고거래량 확인은 없습니다. 가격이 7일 고점 $62,957.20 바로 아래에서 도지를 만들었기 때문에, 이는 저항권에서의 매수세 피로 또는 단기 되돌림 가능성을 시사합니다. 다만 최근 5개 캔들이 대체로 양봉 우위이고 가격이 EMA20 위에 있으므로, 확정적 약세 구조라기보다는 프리미엄 구간에서의 약세 셋업으로 해석합니다.\",\n  \"key_levels\": {\n    \"support\": [\n      62192.35,\n      61234.8,\n      60357.9,\n      57758.6\n    ],\n    \"resistance\": [\n      62957.2,\n      65261.98\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$62,957.20 상방 4시간봉 종가 안착\",\n  \"risk_scenario\": \"만약 $62,957.20을 강하게 돌파하고 4시간봉 기준으로 안착하면 도지와 bearish harami 기반의 단기 약세 셋업은 무효화되며, 다음 저항인 EMA240 $65,261.98까지 숏 커버링성 상승이 이어질 수 있습니다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "wyckoff": {
      "agent_id": "wyckoff",
      "display_name": "Wyckoff Expert",
      "signal": "bullish",
      "confidence": 0.72,
      "structure_bias": "bullish",
      "setup_bias": "neutral",
      "setup_score": 0.45,
      "setup_signals": [
        "현재가 $62,609.60은 메인 레인지 EQ 약 $61,665 위에 있어 프리미엄 구간에 진입",
        "SOS $62,180 상단을 회복했지만 LPS 또는 BU가 아직 검출되지 않아 Phase D 진행은 확인되나 추격 근거는 제한적",
        "상단 공급/저항은 AR 기준 $64,250이며, 현재가는 레인지 상단보다 낮지만 단기 7일 고점 $62,957.20에 근접",
        "Spring $57,758.60 이후 반등은 유효하지만, 재테스트 없이 상승한 구조라 SOS 재확인 또는 EQ $61,665 부근 테스트 가능성 존재"
      ],
      "reasoning": "현재 체계는 regime=ACC, regime_state=confirmed_acc이며 SC $59,080 → AR $64,250 → ST $63,650 → Spring $57,758.60 → SOS $62,180의 누적 Phase D 구조로 해석된다. 구조적으로는 Spring 이후 SOS $62,180을 회복했고 현재가 $62,609.60이 그 위에 있어 bullish 구조가 유지된다. 다만 현재가는 레인지 EQ 약 $61,665 위의 프리미엄 구간에 있고, AR $64,250 상단 저항까지 완전한 수용이 확인된 것은 아니며 LPS/BU가 아직 없기 때문에 즉시 강한 상방 추세로 단정하기는 이르다. 따라서 구조 편향은 bullish이나, 실행 관점의 setup_bias는 SOS 재테스트 또는 EQ 부근 눌림 확인을 기다리는 neutral에 가깝다.",
      "key_levels": {
        "support": [
          62180.0,
          61665.0,
          59080.0,
          57758.6
        ],
        "resistance": [
          62957.2,
          64250.0,
          65261.98
        ]
      },
      "time_horizon": "중기, 4시간봉 기준",
      "invalidation_level": "$57,758.60",
      "risk_scenario": "반대로 가격이 SOS $62,180 아래로 재진입하고 EQ $61,665까지 회수되지 못하면 Phase D의 힘이 약해지며, $59,080 메인 레인지 저점 재시험 가능성이 커진다. 특히 Spring 저점 $57,758.60을 하향 이탈하면 현재 누적 구조 해석은 무효화된다.",
      "data_quality": "high",
      "metrics": {
        "acc_score": 88.8,
        "dis_score": 81.2,
        "regime": "ACC",
        "regime_state": "confirmed_acc",
        "structure_bias": "bullish",
        "phase_context": "confirmed_acc / accumulation / Phase D",
        "phases_detected": [
          "SC",
          "AR",
          "ST",
          "Spring",
          "SOS"
        ],
        "last_phase": "SOS",
        "phase_candidates": [
          {
            "label": "SC",
            "side": "low",
            "idx": 129,
            "price": 59080.0,
            "color": "#ffd166"
          },
          {
            "label": "AR",
            "side": "high",
            "idx": 142,
            "price": 64250.0,
            "color": "#06d6a0"
          },
          {
            "label": "ST",
            "side": "low",
            "idx": 183,
            "price": 63650.0,
            "color": "#118ab2"
          },
          {
            "label": "Spring",
            "side": "low",
            "idx": 281,
            "price": 57758.6,
            "color": "#f9844a"
          },
          {
            "label": "SOS",
            "side": "high",
            "idx": 290,
            "price": 62180.0,
            "color": "#06d6a0"
          }
        ],
        "phase_structures": [
          {
            "structure_id": "4h_cycle_1",
            "sequence": 1,
            "timeframe": "4h",
            "regime": "accumulation",
            "role": "current_structure_candidate",
            "is_active": true,
            "is_completed": false,
            "is_confirmed": true,
            "structure_bias": "bullish",
            "phase_context": "accumulation",
            "start_idx": 129,
            "end_idx": 290,
            "phase_count": 5,
            "phases": [
              {
                "label": "SC",
                "side": "low",
                "idx": 129,
                "price": 59080.0,
                "color": "#ffd166",
                "dt": "2026-06-06 01:00:00+09:00"
              },
              {
                "label": "AR",
                "side": "high",
                "idx": 142,
                "price": 64250.0,
                "color": "#06d6a0",
                "dt": "2026-06-08 05:00:00+09:00"
              },
              {
                "label": "ST",
                "side": "low",
                "idx": 183,
                "price": 63650.0,
                "color": "#118ab2",
                "dt": "2026-06-15 01:00:00+09:00"
              },
              {
                "label": "Spring",
                "side": "low",
                "idx": 281,
                "price": 57758.6,
                "color": "#f9844a",
                "dt": "2026-07-01 09:00:00+09:00"
              },
              {
                "label": "SOS",
                "side": "high",
                "idx": 290,
                "price": 62180.0,
                "color": "#06d6a0",
                "dt": "2026-07-02 21: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": "SOS",
        "major_phase": "D",
        "pos_in_range": 0.5,
        "main_range_low": 59080.0,
        "main_range_high": 64250.0
      },
      "raw_llm_response": "{\n  \"signal\": \"bullish\",\n  \"confidence\": 0.72,\n  \"structure_bias\": \"bullish\",\n  \"setup_bias\": \"neutral\",\n  \"setup_score\": 0.45,\n  \"setup_signals\": [\n    \"현재가 $62,609.60은 메인 레인지 EQ 약 $61,665 위에 있어 프리미엄 구간에 진입\",\n    \"SOS $62,180 상단을 회복했지만 LPS 또는 BU가 아직 검출되지 않아 Phase D 진행은 확인되나 추격 근거는 제한적\",\n    \"상단 공급/저항은 AR 기준 $64,250이며, 현재가는 레인지 상단보다 낮지만 단기 7일 고점 $62,957.20에 근접\",\n    \"Spring $57,758.60 이후 반등은 유효하지만, 재테스트 없이 상승한 구조라 SOS 재확인 또는 EQ $61,665 부근 테스트 가능성 존재\"\n  ],\n  \"reasoning\": \"현재 체계는 regime=ACC, regime_state=confirmed_acc이며 SC $59,080 → AR $64,250 → ST $63,650 → Spring $57,758.60 → SOS $62,180의 누적 Phase D 구조로 해석된다. 구조적으로는 Spring 이후 SOS $62,180을 회복했고 현재가 $62,609.60이 그 위에 있어 bullish 구조가 유지된다. 다만 현재가는 레인지 EQ 약 $61,665 위의 프리미엄 구간에 있고, AR $64,250 상단 저항까지 완전한 수용이 확인된 것은 아니며 LPS/BU가 아직 없기 때문에 즉시 강한 상방 추세로 단정하기는 이르다. 따라서 구조 편향은 bullish이나, 실행 관점의 setup_bias는 SOS 재테스트 또는 EQ 부근 눌림 확인을 기다리는 neutral에 가깝다.\",\n  \"key_levels\": {\n    \"support\": [\n      62180.0,\n      61665.0,\n      59080.0,\n      57758.6\n    ],\n    \"resistance\": [\n      62957.2,\n      64250.0,\n      65261.98\n    ]\n  },\n  \"time_horizon\": \"중기, 4시간봉 기준\",\n  \"invalidation_level\": \"$57,758.60\",\n  \"risk_scenario\": \"반대로 가격이 SOS $62,180 아래로 재진입하고 EQ $61,665까지 회수되지 못하면 Phase D의 힘이 약해지며, $59,080 메인 레인지 저점 재시험 가능성이 커진다. 특히 Spring 저점 $57,758.60을 하향 이탈하면 현재 누적 구조 해석은 무효화된다.\",\n  \"data_quality\": \"high\"\n}"
    },
    "fibonacci": {
      "agent_id": "fibonacci",
      "display_name": "Fibonacci Analyst",
      "signal": "neutral",
      "confidence": 0.54,
      "structure_bias": "bullish",
      "setup_bias": "bearish",
      "setup_score": 0.58,
      "setup_signals": [
        "가격이 0.5 EQ $59,969.30 위에 위치한 프리미엄 구간이며 현재가 $62,609.60은 스윙 고점/ext_1.0 $62,180.00 위에 있음",
        "상단 미충족 확장 목표 ext_1.272 $63,382.62가 근접 저항으로 남아 있으며 현재가 대비 약 1.23% 거리",
        "confluence zone $63,321.73 부근에 ret_0.236/ext_1.272 클러스터가 형성되어 단기 공급 반응 가능성 존재",
        "현재가는 EMA20 $61,234.80 및 EMA120 $62,192.35 위에 있으나 EMA240 $65,261.98 아래에 있어 중기 상단 압력이 완전히 해소되지 않음",
        "0.618 골든 리트레이스먼트 $59,447.57은 아직 미테스트 상태로, 상승 지속 실패 시 고확률 되돌림 자석으로 작용 가능"
      ],
      "reasoning": "현재 BTC는 Low $57,759 → High $62,180 상승 스윙 기준으로 ext_1.0 $62,180.00을 상회하고 있어 확인된 구조는 단기적으로 bullish에 가깝습니다. 다만 현재가 $62,609.60은 EQ인 ret_0.5 $59,969.30보다 크게 위에 있는 프리미엄 구간이며, 바로 위 $63,321.73~$63,382.62에 0.236/1.272 피보나치 confluence 저항이 있어 선행 setup은 bearish 되돌림 위험이 우세합니다. 가장 중요한 지지 후보는 $62,180.00, $61,136.55, $60,491.03이며, 특히 $59,447.57의 0.618 골든 비율은 조정이 깊어질 경우 핵심 반응 구간입니다. confluence_quality는 0.600으로 중간 이상이나 reaction_probability가 0.45에 그쳐, 즉시 강한 추세 지속보다는 저항 확인 후 방향 결정 가능성이 높습니다.",
      "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시간봉 종가 돌파 시 단기 bearish setup은 무효화되고 ext_1.618 $64,912.43 재공략 가능성이 커짐",
      "risk_scenario": "반대로 $62,180.00을 이탈하면 ext_1.0 돌파 실패로 해석될 수 있으며, $61,136.55 ret_0.236 및 $60,491.03 ret_0.382까지 조정이 확대될 수 있습니다. $60,491.03마저 방어하지 못하면 0.618 골든 리트레이스먼트 $59,447.57이 핵심 하락 목표가 됩니다.",
      "data_quality": "medium",
      "metrics": {
        "swing_pair": "Low→High: $57,759 → $62,180",
        "direction": "up",
        "nearest_fib": "ext_1.0",
        "nearest_fib_price": 62180.0,
        "nearest_fib_distance": 0.69,
        "golden_ratio_level": 59447.57,
        "fib_ret_382": 60491.03,
        "fib_ret_618": 59447.57,
        "confluence_zones": [
          {
            "price": 63321.73,
            "count": 2,
            "levels": [
              "ret_0.236",
              "ext_1.272"
            ],
            "cluster_score": 0.6
          },
          {
            "price": 66633.09,
            "count": 2,
            "levels": [
              "ext_2.0",
              "ret_0.382"
            ],
            "cluster_score": 0.6
          },
          {
            "price": 69374.86,
            "count": 2,
            "levels": [
              "ext_2.618",
              "ret_0.5"
            ],
            "cluster_score": 0.6
          }
        ],
        "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.35,
            "is_support": true,
            "cluster_score": 0.0
          },
          {
            "name": "ret_0.382",
            "price": 60491.03,
            "distance_pct": 3.38,
            "is_support": true,
            "cluster_score": 0.0
          },
          {
            "name": "ret_0.5",
            "price": 59969.3,
            "distance_pct": 4.22,
            "is_support": true,
            "cluster_score": 0.0
          },
          {
            "name": "ret_0.618",
            "price": 59447.57,
            "distance_pct": 5.05,
            "is_support": true,
            "cluster_score": 0.0
          },
          {
            "name": "ret_0.786",
            "price": 58704.78,
            "distance_pct": 6.24,
            "is_support": true,
            "cluster_score": 0.0
          },
          {
            "name": "ext_1.0",
            "price": 62180.0,
            "distance_pct": 0.69,
            "is_support": true,
            "cluster_score": 0.0
          },
          {
            "name": "ext_1.272",
            "price": 63382.62,
            "distance_pct": 1.23,
            "is_support": false,
            "cluster_score": 0.6
          },
          {
            "name": "ext_1.414",
            "price": 64010.46,
            "distance_pct": 2.24,
            "is_support": false,
            "cluster_score": 0.0
          },
          {
            "name": "ext_1.618",
            "price": 64912.43,
            "distance_pct": 3.68,
            "is_support": false,
            "cluster_score": 0.0
          },
          {
            "name": "ext_2.0",
            "price": 66601.4,
            "distance_pct": 6.38,
            "is_support": false,
            "cluster_score": 0.6
          }
        ],
        "confluence_quality": 0.6,
        "fib_reaction_state": "approaching",
        "reaction_probability": 0.45
      },
      "raw_llm_response": "{\n  \"signal\": \"neutral\",\n  \"confidence\": 0.54,\n  \"structure_bias\": \"bullish\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.58,\n  \"setup_signals\": [\n    \"가격이 0.5 EQ $59,969.30 위에 위치한 프리미엄 구간이며 현재가 $62,609.60은 스윙 고점/ext_1.0 $62,180.00 위에 있음\",\n    \"상단 미충족 확장 목표 ext_1.272 $63,382.62가 근접 저항으로 남아 있으며 현재가 대비 약 1.23% 거리\",\n    \"confluence zone $63,321.73 부근에 ret_0.236/ext_1.272 클러스터가 형성되어 단기 공급 반응 가능성 존재\",\n    \"현재가는 EMA20 $61,234.80 및 EMA120 $62,192.35 위에 있으나 EMA240 $65,261.98 아래에 있어 중기 상단 압력이 완전히 해소되지 않음\",\n    \"0.618 골든 리트레이스먼트 $59,447.57은 아직 미테스트 상태로, 상승 지속 실패 시 고확률 되돌림 자석으로 작용 가능\"\n  ],\n  \"reasoning\": \"현재 BTC는 Low $57,759 → High $62,180 상승 스윙 기준으로 ext_1.0 $62,180.00을 상회하고 있어 확인된 구조는 단기적으로 bullish에 가깝습니다. 다만 현재가 $62,609.60은 EQ인 ret_0.5 $59,969.30보다 크게 위에 있는 프리미엄 구간이며, 바로 위 $63,321.73~$63,382.62에 0.236/1.272 피보나치 confluence 저항이 있어 선행 setup은 bearish 되돌림 위험이 우세합니다. 가장 중요한 지지 후보는 $62,180.00, $61,136.55, $60,491.03이며, 특히 $59,447.57의 0.618 골든 비율은 조정이 깊어질 경우 핵심 반응 구간입니다. confluence_quality는 0.600으로 중간 이상이나 reaction_probability가 0.45에 그쳐, 즉시 강한 추세 지속보다는 저항 확인 후 방향 결정 가능성이 높습니다.\",\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시간봉 종가 돌파 시 단기 bearish setup은 무효화되고 ext_1.618 $64,912.43 재공략 가능성이 커짐\",\n  \"risk_scenario\": \"반대로 $62,180.00을 이탈하면 ext_1.0 돌파 실패로 해석될 수 있으며, $61,136.55 ret_0.236 및 $60,491.03 ret_0.382까지 조정이 확대될 수 있습니다. $60,491.03마저 방어하지 못하면 0.618 골든 리트레이스먼트 $59,447.57이 핵심 하락 목표가 됩니다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "ict": {
      "agent_id": "ict",
      "display_name": "ICT Trader",
      "signal": "bearish",
      "confidence": 0.72,
      "structure_bias": "neutral",
      "setup_bias": "bearish",
      "setup_score": 0.889,
      "setup_signals": [
        "현재가 $62,609.60은 EQ $60,357.90 위의 premium zone에 위치",
        "7일 고점 $62,957.20 바로 아래에서 거래 중이며, 이전일 고점 $62,386.70을 상향 돌파해 단기 buy-side liquidity 소진 가능성 존재",
        "최근 구조 이벤트는 $60,924.70 상방 CHoCH_bullish이나, $64,250.00 bullish BOS 레벨을 아직 회복하지 못해 상승 구조 확정 전 단계",
        "하방에는 bearish BOS 레벨 $62,232.10 재이탈 시 매도 압력 재개 가능",
        "가장 가까운 bullish OB는 $57,758.60~$59,298.40으로 현재가보다 아래에 있어 하방 유동성/디스카운트 재방문 가능성 존재",
        "bear_score 11.5가 bull_score 6.0보다 우위이며 setup_bias가 bearish로 산출됨"
      ],
      "reasoning": "확정 구조 관점에서는 최근 $60,924.70에서 bullish CHoCH가 발생했지만, 핵심 bullish BOS 레벨인 $64,250.00을 아직 돌파하지 못했기 때문에 structure_bias는 bullish 확정이 아닌 neutral로 본다. 반면 실행 셋업은 현재가 $62,609.60이 EQ $60,357.90 위 premium zone에 있고, 이전일 고점 $62,386.70을 이미 넘긴 뒤 7일 고점 $62,957.20 근처에서 거래되어 buy-side liquidity를 사냥한 뒤 되돌림이 나올 수 있는 bearish setup이다. 하방에서 $62,232.10을 다시 이탈하면 직전 bearish BOS 흐름이 재활성화되며, 다음 관심 유동성은 $60,924.70 CHoCH 레벨과 EQ $60,357.90, 이후 bullish OB $59,298.40~$57,758.60이다. 다만 활성 FVG와 활성 OB가 없고 최근 명시적 liquidity sweep 이벤트가 없기 때문에, 강한 확정 매도 구조라기보다는 프리미엄 구간의 선행 bearish execution setup으로 해석한다.",
      "key_levels": {
        "support": [
          62232.1,
          60924.7,
          60357.9,
          59298.4,
          57758.6
        ],
        "resistance": [
          62957.2,
          64250.0,
          76234.7,
          78077.1,
          78128.55
        ]
      },
      "time_horizon": "short to medium term",
      "invalidation_level": "$64,250.00 4시간봉 종가 상향 돌파",
      "risk_scenario": "가격이 $62,957.20 7일 고점을 강하게 돌파하고 $64,250.00 위에서 4시간봉 종가를 형성하면, 현재 bearish premium rejection 셋업은 실패로 간주된다. 이 경우 $60,924.70 CHoCH가 실제 bullish market structure shift로 확장되며, 숏 포지션은 숏 스퀴즈에 노출될 수 있다.",
      "data_quality": "medium",
      "metrics": {
        "order_blocks_total": 3,
        "confirmed_bullish_ob": 0,
        "confirmed_bearish_ob": 0,
        "candidate_bullish_ob": 1,
        "candidate_bearish_ob": 2,
        "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": 56,
        "fvg_open_zones": [],
        "bos_choch_events": [
          "BOS_bearish",
          "BOS_bearish",
          "BOS_bearish",
          "BOS_bullish",
          "BOS_bearish",
          "CHoCH_bullish"
        ],
        "bos_choch_levels": [
          {
            "type": "BOS_bearish",
            "level": 76014.2
          },
          {
            "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_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": 60357.9,
        "range_high": 62957.2,
        "range_low": 57758.6,
        "bull_score": 6.0,
        "bear_score": 11.5,
        "setup_bias": "bearish",
        "setup_score": 0.889,
        "setup_signals": [
          "bearish BOS below $76,014.20",
          "bearish BOS below $74,203.60",
          "bearish BOS below $72,436.00",
          "bearish BOS below $62,232.10",
          "deep retracement 164.2% in premium zone"
        ],
        "retracement_direction": "bearish",
        "current_retracement_pct": 164.2,
        "deepest_retracement_pct": 164.2,
        "previous_day_high": 62386.7,
        "previous_day_low": 61113.8,
        "broken_prev_high": true,
        "broken_prev_low": false,
        "sessions": {}
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.72,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.889,\n  \"setup_signals\": [\n    \"현재가 $62,609.60은 EQ $60,357.90 위의 premium zone에 위치\",\n    \"7일 고점 $62,957.20 바로 아래에서 거래 중이며, 이전일 고점 $62,386.70을 상향 돌파해 단기 buy-side liquidity 소진 가능성 존재\",\n    \"최근 구조 이벤트는 $60,924.70 상방 CHoCH_bullish이나, $64,250.00 bullish BOS 레벨을 아직 회복하지 못해 상승 구조 확정 전 단계\",\n    \"하방에는 bearish BOS 레벨 $62,232.10 재이탈 시 매도 압력 재개 가능\",\n    \"가장 가까운 bullish OB는 $57,758.60~$59,298.40으로 현재가보다 아래에 있어 하방 유동성/디스카운트 재방문 가능성 존재\",\n    \"bear_score 11.5가 bull_score 6.0보다 우위이며 setup_bias가 bearish로 산출됨\"\n  ],\n  \"reasoning\": \"확정 구조 관점에서는 최근 $60,924.70에서 bullish CHoCH가 발생했지만, 핵심 bullish BOS 레벨인 $64,250.00을 아직 돌파하지 못했기 때문에 structure_bias는 bullish 확정이 아닌 neutral로 본다. 반면 실행 셋업은 현재가 $62,609.60이 EQ $60,357.90 위 premium zone에 있고, 이전일 고점 $62,386.70을 이미 넘긴 뒤 7일 고점 $62,957.20 근처에서 거래되어 buy-side liquidity를 사냥한 뒤 되돌림이 나올 수 있는 bearish setup이다. 하방에서 $62,232.10을 다시 이탈하면 직전 bearish BOS 흐름이 재활성화되며, 다음 관심 유동성은 $60,924.70 CHoCH 레벨과 EQ $60,357.90, 이후 bullish OB $59,298.40~$57,758.60이다. 다만 활성 FVG와 활성 OB가 없고 최근 명시적 liquidity sweep 이벤트가 없기 때문에, 강한 확정 매도 구조라기보다는 프리미엄 구간의 선행 bearish execution setup으로 해석한다.\",\n  \"key_levels\": {\n    \"support\": [\n      62232.1,\n      60924.7,\n      60357.9,\n      59298.4,\n      57758.6\n    ],\n    \"resistance\": [\n      62957.2,\n      64250.0,\n      76234.7,\n      78077.1,\n      78128.55\n    ]\n  },\n  \"time_horizon\": \"short to medium term\",\n  \"invalidation_level\": \"$64,250.00 4시간봉 종가 상향 돌파\",\n  \"risk_scenario\": \"가격이 $62,957.20 7일 고점을 강하게 돌파하고 $64,250.00 위에서 4시간봉 종가를 형성하면, 현재 bearish premium rejection 셋업은 실패로 간주된다. 이 경우 $60,924.70 CHoCH가 실제 bullish market structure shift로 확장되며, 숏 포지션은 숏 스퀴즈에 노출될 수 있다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "harmonic": {
      "agent_id": "harmonic",
      "display_name": "Harmonic Specialist",
      "signal": "bullish",
      "confidence": 0.46,
      "structure_bias": "neutral",
      "setup_bias": "bullish",
      "setup_score": 0.55,
      "setup_signals": [
        "현재가 $62,609.60이 고품질 strict bullish Bat 형성 PRZ $62,527.12-$63,386.13 내부에 진입해 있음",
        "bullish Bat PRZ가 ABCD, BC_EXT, XAD 3개 Fib family로 구성된 high-confluence zone이며 pattern_score 0.959, ratio_score 1.000, prz_score 0.988",
        "가장 가까운 forming bullish Gartley D값 $62,608.77과 현재가 $62,609.60이 거의 동일하며 PRZ $62,202.51-$63,015.03에 위치",
        "bullish Bat TP ladder가 $64,598.76, $65,613.27, $67,255.40으로 제시되어 반등 확인 시 상방 waypoint가 명확함",
        "단, confirmed_reaction_prz_count가 0이므로 아직 PRZ 반응 확인 전이며 독립적인 구조 전환 신호는 아님"
      ],
      "reasoning": "4시간 기준 핵심 harmonic setup은 strict/high 품질의 forming bullish Bat이며, 현재가 $62,609.60은 활성 PRZ $62,527.12-$63,386.13 안에 있어 반등 후보 구간에 진입한 상태입니다. 이 PRZ는 ABCD, BC extension, XAD가 모두 겹친 3중 confluence이고 pattern_score 0.959로 가장 우수하지만, confirmed_reaction=false 및 reaction_score 0.0이므로 아직 구조를 뒤집을 수 있는 신호는 아닙니다. 가장 가까운 forming bullish Gartley의 D값 $62,608.77도 현재가와 거의 일치해 단기적으로 $62.2k-$63.4k 구간은 강한 반응 관찰 구역입니다. 구조적으로는 BOS/CHoCH/MSS 확인 데이터가 없으므로 structure_bias는 neutral이며, setup_bias만 bullish로 평가합니다. 반등 확인 시 harmonic TP는 $64,598.76, $65,613.27, 최종 $67,255.40 순서가 유효합니다.",
      "key_levels": {
        "support": [
          62527.12,
          62315.0,
          62202.51,
          61505.57,
          61013.8
        ],
        "resistance": [
          63015.03,
          63386.13,
          63422.14,
          64598.76,
          65613.27,
          67255.4
        ]
      },
      "time_horizon": "short to medium term",
      "invalidation_level": "$62,315.00",
      "risk_scenario": "반대로 가격이 bullish Bat/Gartley PRZ를 방어하지 못하고 $62,315.00 아래로 4시간 종가 이탈하면 D/X 방어 실패로 간주되며, $62,202.51 하단 및 bearish active Bat/Gartley 관련 구간인 $61,505.57-$62,667.55, 이후 $60,536.96-$59,579.61 쪽으로 하락 branch가 열립니다. 특히 $63,386.13 상단을 회복하지 못한 채 $62.5k 아래로 밀리면 현재 harmonic bullish setup은 단순 반응 실패 구간으로 격하됩니다.",
      "data_quality": "high",
      "metrics": {
        "patterns_found": 158,
        "completed_patterns_found": 68,
        "forming_d_prz_found": 90,
        "swing_orders_scanned": [
          3,
          5,
          8
        ],
        "swing_search_window": 30,
        "multiscale_swings_scanned": 54,
        "swing_highs_scanned": 28,
        "swing_lows_scanned": 26,
        "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": 42,
          "low": 112
        },
        "prz_status_counts": {
          "active": 58,
          "nearby": 10,
          "watch": 29,
          "far": 61,
          "forming": 33
        },
        "high_confluence_prz_count": 20,
        "strict_patterns_found": 57,
        "candidate_patterns_found": 101,
        "active_patterns_at_prz": 58,
        "nearby_patterns": 10,
        "all_patterns": [
          "bat",
          "gartley",
          "butterfly",
          "butterfly",
          "crab",
          "shark",
          "bat",
          "bat",
          "gartley",
          "bat",
          "bat",
          "shark",
          "gartley",
          "gartley",
          "bat",
          "gartley",
          "crab",
          "crab",
          "butterfly",
          "butterfly",
          "shark",
          "bat",
          "shark",
          "bat",
          "butterfly",
          "shark",
          "gartley",
          "bat",
          "bat",
          "butterfly",
          "butterfly",
          "bat",
          "bat",
          "gartley",
          "bat",
          "crab",
          "gartley",
          "crab",
          "shark",
          "crab",
          "bat",
          "shark",
          "butterfly",
          "crab",
          "crab",
          "shark",
          "shark",
          "crab",
          "shark",
          "shark",
          "crab",
          "butterfly",
          "shark",
          "butterfly",
          "butterfly",
          "butterfly",
          "gartley",
          "crab",
          "gartley",
          "gartley",
          "butterfly",
          "bat",
          "shark",
          "gartley",
          "crab",
          "shark",
          "bat",
          "crab",
          "crab",
          "bat",
          "butterfly",
          "crab",
          "gartley",
          "butterfly",
          "crab",
          "crab",
          "shark",
          "bat",
          "gartley",
          "bat",
          "shark",
          "butterfly",
          "crab",
          "gartley",
          "butterfly",
          "crab",
          "shark",
          "crab",
          "bat",
          "crab",
          "gartley",
          "crab",
          "gartley",
          "shark",
          "shark",
          "crab",
          "bat",
          "crab",
          "shark",
          "shark",
          "shark",
          "crab",
          "shark",
          "crab",
          "bat",
          "crab",
          "crab",
          "shark",
          "gartley",
          "crab",
          "bat",
          "shark",
          "butterfly",
          "shark",
          "shark",
          "shark",
          "shark",
          "crab",
          "crab",
          "crab",
          "crab",
          "shark",
          "butterfly",
          "crab",
          "butterfly",
          "crab",
          "gartley",
          "butterfly",
          "bat",
          "crab",
          "crab",
          "butterfly",
          "crab",
          "gartley",
          "butterfly",
          "butterfly",
          "bat",
          "shark",
          "crab",
          "shark",
          "butterfly",
          "butterfly",
          "crab",
          "crab",
          "bat",
          "crab",
          "shark",
          "crab",
          "butterfly",
          "shark",
          "gartley",
          "gartley",
          "butterfly",
          "crab",
          "gartley",
          "butterfly",
          "shark",
          "shark"
        ],
        "all_signals": [
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish"
        ],
        "best_pattern": "bat",
        "best_pattern_quality": "strict",
        "best_quality": "high",
        "best_pattern_score": 0.959,
        "best_completion_status": "forming",
        "nearest_pattern": "gartley",
        "nearest_prz": 62608.77,
        "price_to_prz": -0.0,
        "prz_range": [
          62202.51,
          63015.03
        ],
        "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.55,
            "price_to_prz_pct_raw": 0.5543,
            "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": 165,
            "x_order": 3,
            "a_price": 67255.4,
            "a_idx": 188,
            "a_order": 8,
            "b_price": 65328.8,
            "b_idx": 194,
            "b_order": 3,
            "c_price": 64568.0,
            "c_idx": 222,
            "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.55,
            "price_to_prz_pct_raw": 0.5543,
            "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": 165,
            "x_order": 3,
            "a_price": 67255.4,
            "a_idx": 188,
            "a_order": 8,
            "b_price": 65328.8,
            "b_idx": 194,
            "b_order": 3,
            "c_price": 64568.0,
            "c_idx": 222,
            "c_order": 3,
            "d_idx": 226
          },
          {
            "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.0,
            "price_to_prz_pct_raw": -0.0013,
            "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": 165,
            "x_order": 3,
            "a_price": 64738.0,
            "a_idx": 178,
            "a_order": 5,
            "b_price": 63136.2,
            "b_idx": 218,
            "b_order": 3,
            "c_price": 64568.0,
            "c_idx": 222,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.84,
            "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.09,
            "price_to_prz_pct_raw": -2.0946,
            "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": 165,
            "x_order": 3,
            "a_price": 67255.4,
            "a_idx": 188,
            "a_order": 8,
            "b_price": 63136.2,
            "b_idx": 218,
            "b_order": 3,
            "c_price": 65597.2,
            "c_idx": 230,
            "c_order": 8,
            "d_idx": 243
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.892,
            "ratio_score": 0.911,
            "prz_score": 0.972,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "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": -1.83,
            "price_to_prz_pct_raw": -1.8344,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 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": 165,
            "x_order": 3,
            "a_price": 66956.7,
            "a_idx": 193,
            "a_order": 3,
            "b_price": 63220.0,
            "b_idx": 226,
            "b_order": 5,
            "c_price": 65597.2,
            "c_idx": 230,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.867,
            "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": 2.5,
            "price_to_prz_pct_raw": 2.5049,
            "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": 183,
            "x_order": 8,
            "a_price": 66956.7,
            "a_idx": 193,
            "a_order": 3,
            "b_price": 65328.8,
            "b_idx": 194,
            "b_order": 3,
            "c_price": 66419.2,
            "c_idx": 201,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.864,
            "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": -0.84,
            "price_to_prz_pct_raw": -0.8354,
            "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": 241,
            "x_order": 5,
            "a_price": 58030.0,
            "a_idx": 248,
            "a_order": 8,
            "b_price": 60734.0,
            "b_idx": 252,
            "b_order": 3,
            "c_price": 58850.0,
            "c_idx": 269,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.853,
            "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.29,
            "price_to_prz_pct_raw": -2.2888,
            "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": 246,
            "x_order": 3,
            "a_price": 58030.0,
            "a_idx": 248,
            "a_order": 8,
            "b_price": 60543.3,
            "b_idx": 265,
            "b_order": 3,
            "c_price": 58850.0,
            "c_idx": 269,
            "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.55,
            "price_to_prz_pct_raw": 0.5543,
            "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": 165,
            "x_order": 3,
            "a_price": 67255.4,
            "a_idx": 188,
            "a_order": 8,
            "b_price": 65328.8,
            "b_idx": 194,
            "b_order": 3,
            "c_price": 64568.0,
            "c_idx": 222,
            "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.55,
            "price_to_prz_pct_raw": 0.5543,
            "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": 165,
            "x_order": 3,
            "a_price": 67255.4,
            "a_idx": 188,
            "a_order": 8,
            "b_price": 65328.8,
            "b_idx": 194,
            "b_order": 3,
            "c_price": 64568.0,
            "c_idx": 222,
            "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.55,
            "price_to_prz_pct_raw": 0.5543,
            "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": 165,
            "x_order": 3,
            "a_price": 67255.4,
            "a_idx": 188,
            "a_order": 8,
            "b_price": 65328.8,
            "b_idx": 194,
            "b_order": 3,
            "c_price": 64568.0,
            "c_idx": 222,
            "c_order": 3,
            "d_idx": 226
          },
          {
            "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.0,
            "price_to_prz_pct_raw": -0.0013,
            "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": 165,
            "x_order": 3,
            "a_price": 64738.0,
            "a_idx": 178,
            "a_order": 5,
            "b_price": 63136.2,
            "b_idx": 218,
            "b_order": 3,
            "c_price": 64568.0,
            "c_idx": 222,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.84,
            "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.09,
            "price_to_prz_pct_raw": -2.0946,
            "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": 165,
            "x_order": 3,
            "a_price": 67255.4,
            "a_idx": 188,
            "a_order": 8,
            "b_price": 63136.2,
            "b_idx": 218,
            "b_order": 3,
            "c_price": 65597.2,
            "c_idx": 230,
            "c_order": 8,
            "d_idx": 243
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.892,
            "ratio_score": 0.911,
            "prz_score": 0.972,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "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": -1.83,
            "price_to_prz_pct_raw": -1.8344,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 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": 165,
            "x_order": 3,
            "a_price": 66956.7,
            "a_idx": 193,
            "a_order": 3,
            "b_price": 63220.0,
            "b_idx": 226,
            "b_order": 5,
            "c_price": 65597.2,
            "c_idx": 230,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.867,
            "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": 2.5,
            "price_to_prz_pct_raw": 2.5049,
            "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": 183,
            "x_order": 8,
            "a_price": 66956.7,
            "a_idx": 193,
            "a_order": 3,
            "b_price": 65328.8,
            "b_idx": 194,
            "b_order": 3,
            "c_price": 66419.2,
            "c_idx": 201,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.864,
            "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": -0.84,
            "price_to_prz_pct_raw": -0.8354,
            "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": 241,
            "x_order": 5,
            "a_price": 58030.0,
            "a_idx": 248,
            "a_order": 8,
            "b_price": 60734.0,
            "b_idx": 252,
            "b_order": 3,
            "c_price": 58850.0,
            "c_idx": 269,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.853,
            "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.29,
            "price_to_prz_pct_raw": -2.2888,
            "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": 246,
            "x_order": 3,
            "a_price": 58030.0,
            "a_idx": 248,
            "a_order": 8,
            "b_price": 60543.3,
            "b_idx": 265,
            "b_order": 3,
            "c_price": 58850.0,
            "c_idx": 269,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.833,
            "ratio_score": 0.837,
            "prz_score": 0.918,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "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.35,
            "price_to_prz_pct_raw": -2.3484,
            "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": 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": 157,
            "x_order": 8,
            "a_price": 63915.3,
            "a_idx": 165,
            "a_order": 3,
            "b_price": 62232.1,
            "b_idx": 206,
            "b_order": 8,
            "c_price": 63209.6,
            "c_idx": 241,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.82,
            "ratio_score": 0.812,
            "prz_score": 0.911,
            "prz_proximity": "active",
            "action_status": "active",
            "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": -1.45,
            "price_to_prz_pct_raw": -1.4518,
            "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.187,
                "bars_after_d": 9,
                "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": 241,
            "x_order": 5,
            "a_price": 58030.0,
            "a_idx": 248,
            "a_order": 8,
            "b_price": 60924.7,
            "b_idx": 260,
            "b_order": 8,
            "c_price": 58850.0,
            "c_idx": 269,
            "c_order": 8,
            "d_idx": 290
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.803,
            "ratio_score": 0.649,
            "prz_score": 0.911,
            "prz_proximity": "active",
            "action_status": "active",
            "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": -1.45,
            "price_to_prz_pct_raw": -1.4518,
            "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": 241,
            "x_order": 5,
            "a_price": 58030.0,
            "a_idx": 248,
            "a_order": 8,
            "b_price": 60924.7,
            "b_idx": 260,
            "b_order": 8,
            "c_price": 58850.0,
            "c_idx": 269,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.797,
            "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": -0.84,
            "price_to_prz_pct_raw": -0.8354,
            "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.187,
                "bars_after_d": 9,
                "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": 241,
            "x_order": 5,
            "a_price": 58030.0,
            "a_idx": 248,
            "a_order": 8,
            "b_price": 60734.0,
            "b_idx": 252,
            "b_order": 3,
            "c_price": 58850.0,
            "c_idx": 269,
            "c_order": 8,
            "d_idx": 290
          }
        ],
        "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.55,
            "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.55,
          "price_to_prz_pct_raw": 0.5543,
          "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": 165,
          "x_order": 3,
          "a_price": 67255.4,
          "a_idx": 188,
          "a_order": 8,
          "b_price": 65328.8,
          "b_idx": 194,
          "b_order": 3,
          "c_price": 64568.0,
          "c_idx": 222,
          "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.46,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.55,\n  \"setup_signals\": [\n    \"현재가 $62,609.60이 고품질 strict bullish Bat 형성 PRZ $62,527.12-$63,386.13 내부에 진입해 있음\",\n    \"bullish Bat PRZ가 ABCD, BC_EXT, XAD 3개 Fib family로 구성된 high-confluence zone이며 pattern_score 0.959, ratio_score 1.000, prz_score 0.988\",\n    \"가장 가까운 forming bullish Gartley D값 $62,608.77과 현재가 $62,609.60이 거의 동일하며 PRZ $62,202.51-$63,015.03에 위치\",\n    \"bullish Bat TP ladder가 $64,598.76, $65,613.27, $67,255.40으로 제시되어 반등 확인 시 상방 waypoint가 명확함\",\n    \"단, confirmed_reaction_prz_count가 0이므로 아직 PRZ 반응 확인 전이며 독립적인 구조 전환 신호는 아님\"\n  ],\n  \"reasoning\": \"4시간 기준 핵심 harmonic setup은 strict/high 품질의 forming bullish Bat이며, 현재가 $62,609.60은 활성 PRZ $62,527.12-$63,386.13 안에 있어 반등 후보 구간에 진입한 상태입니다. 이 PRZ는 ABCD, BC extension, XAD가 모두 겹친 3중 confluence이고 pattern_score 0.959로 가장 우수하지만, confirmed_reaction=false 및 reaction_score 0.0이므로 아직 구조를 뒤집을 수 있는 신호는 아닙니다. 가장 가까운 forming bullish Gartley의 D값 $62,608.77도 현재가와 거의 일치해 단기적으로 $62.2k-$63.4k 구간은 강한 반응 관찰 구역입니다. 구조적으로는 BOS/CHoCH/MSS 확인 데이터가 없으므로 structure_bias는 neutral이며, setup_bias만 bullish로 평가합니다. 반등 확인 시 harmonic TP는 $64,598.76, $65,613.27, 최종 $67,255.40 순서가 유효합니다.\",\n  \"key_levels\": {\n    \"support\": [\n      62527.12,\n      62315.0,\n      62202.51,\n      61505.57,\n      61013.8\n    ],\n    \"resistance\": [\n      63015.03,\n      63386.13,\n      63422.14,\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\": \"반대로 가격이 bullish Bat/Gartley PRZ를 방어하지 못하고 $62,315.00 아래로 4시간 종가 이탈하면 D/X 방어 실패로 간주되며, $62,202.51 하단 및 bearish active Bat/Gartley 관련 구간인 $61,505.57-$62,667.55, 이후 $60,536.96-$59,579.61 쪽으로 하락 branch가 열립니다. 특히 $63,386.13 상단을 회복하지 못한 채 $62.5k 아래로 밀리면 현재 harmonic bullish setup은 단순 반응 실패 구간으로 격하됩니다.\",\n  \"data_quality\": \"high\"\n}"
    },
    "derivatives": {
      "agent_id": "derivatives",
      "display_name": "Derivatives Trader",
      "signal": "bearish",
      "confidence": 0.62,
      "structure_bias": "neutral",
      "setup_bias": "bearish",
      "setup_score": 0.76,
      "setup_signals": [
        "현재가 $62,609.60이 7일 고점 $62,957.20 바로 아래에 위치해 단기 프리미엄/상단 유동성 구간 진입",
        "가격은 24시간 +1.96% 상승했지만 OI는 24시간 -0.6570% 감소하여 신규 롱 유입보다 숏 커버링/포지션 언와인딩 성격이 강함",
        "롱 계정 비율 0.607, account_long_crowding 1.000으로 롱 포지셔닝이 혼잡하며 contrarian bearish 조건 형성",
        "account_flow_label이 short_accounts_rising_long_accounts_falling로 전환되어 상승 중에도 롱 계정은 줄고 숏 계정은 증가",
        "spot-futures basis가 -0.0282%로 음수이며, 선물 시장이 현물 대비 약하게 거래되어 추격 매수 신뢰도 낮음",
        "하방 청산 유동성이 $62,400 및 strongest liq level $60,700에 집중되어 단기 가격 자석으로 작용 가능",
        "fragility_score 0.771로 포지셔닝 취약성이 높아 4-8시간 내 변동성 확대 위험"
      ],
      "reasoning": "구조적으로는 현재가 $62,609.60이 EMA20 $61,234.80과 EMA120 $62,192.35 위에 있어 단기 반등 구조는 유지되지만, EMA240 $65,261.98 아래에 있고 $62,957.20 상단 돌파 및 안착이 확인되지 않아 확정적인 bullish BOS로 보기는 어렵습니다. 반면 셋업 관점에서는 가격이 7일 고점 $62,957.20 근처까지 올라온 상태에서 OI가 24시간 -0.6570% 감소해 상승 참여가 약하고, 롱 계정 비율 0.607 및 account_long_crowding 1.000으로 롱 쏠림이 뚜렷합니다. CVD divergence 0.700과 fragility_score 0.771은 현재 상승이 취약한 레버리지/포지셔닝 위에서 진행 중임을 시사하며, 하방에는 $62,400과 $60,700 청산 유동성이 열려 있습니다. 따라서 확정 구조는 중립이지만, 파생 포지셔닝 기반 4-8시간 선행 시그널은 $62,957.20 돌파 실패 시 $62,400 → $60,700 방향의 단기 하락 셋업이 우세합니다.",
      "key_levels": {
        "support": [
          62400,
          62192.35,
          61234.8,
          60700,
          60400,
          57758.6
        ],
        "resistance": [
          62957.2,
          65261.98,
          66000,
          66100
        ]
      },
      "time_horizon": "short term, 4-8시간",
      "invalidation_level": "$62,957.20 4시간 종가 상향 안착",
      "risk_scenario": "$62,957.20 위로 4시간 종가가 안착하면 근접 숏 셋업은 무효화되며, OI가 재증가할 경우 숏 커버링이 $66,000-$66,100 상단 청산 클러스터까지 확장될 수 있습니다.",
      "data_quality": "medium",
      "metrics": {
        "cvd_divergence": 0.7,
        "cvd_change": 6425.331,
        "oi_trend": 0.434,
        "oi_change_pct_24h": -0.657,
        "oi_latest": 106236.154,
        "funding_pressure": 0.416,
        "funding_avg": 8.435e-05,
        "funding_change_24h": 0.0,
        "long_account_ratio": 0.627,
        "short_account_ratio": 0.373,
        "long_account_latest": 0.607,
        "short_account_latest": 0.393,
        "long_account_change_24h": -0.0195,
        "short_account_change_24h": 0.0195,
        "account_flow_label": "short_accounts_rising_long_accounts_falling",
        "account_short_crowding": 0.0,
        "account_long_crowding": 1.0,
        "ls_imbalance": 0.0,
        "ls_imbalance_interpretation": "high=short-account crowding / low=long-account crowding",
        "spot_futures_basis_score": 0.493,
        "spot_futures_basis_pct": -0.0282,
        "basis_change_lookback": 0.016,
        "aggregate_score": 0.409,
        "bull_signals": 1,
        "bear_signals": 3,
        "liq_below": [
          [
            62400,
            25060.230404
          ],
          [
            60700,
            39804.120049100005
          ],
          [
            60400,
            27561.009405299996
          ]
        ],
        "liq_above": [
          [
            66000,
            29346.59825875
          ],
          [
            66100,
            24470.2079575
          ]
        ],
        "strongest_liq_level": 60700,
        "fragility_score": 0.771,
        "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.76,\n  \"setup_signals\": [\n    \"현재가 $62,609.60이 7일 고점 $62,957.20 바로 아래에 위치해 단기 프리미엄/상단 유동성 구간 진입\",\n    \"가격은 24시간 +1.96% 상승했지만 OI는 24시간 -0.6570% 감소하여 신규 롱 유입보다 숏 커버링/포지션 언와인딩 성격이 강함\",\n    \"롱 계정 비율 0.607, account_long_crowding 1.000으로 롱 포지셔닝이 혼잡하며 contrarian bearish 조건 형성\",\n    \"account_flow_label이 short_accounts_rising_long_accounts_falling로 전환되어 상승 중에도 롱 계정은 줄고 숏 계정은 증가\",\n    \"spot-futures basis가 -0.0282%로 음수이며, 선물 시장이 현물 대비 약하게 거래되어 추격 매수 신뢰도 낮음\",\n    \"하방 청산 유동성이 $62,400 및 strongest liq level $60,700에 집중되어 단기 가격 자석으로 작용 가능\",\n    \"fragility_score 0.771로 포지셔닝 취약성이 높아 4-8시간 내 변동성 확대 위험\"\n  ],\n  \"reasoning\": \"구조적으로는 현재가 $62,609.60이 EMA20 $61,234.80과 EMA120 $62,192.35 위에 있어 단기 반등 구조는 유지되지만, EMA240 $65,261.98 아래에 있고 $62,957.20 상단 돌파 및 안착이 확인되지 않아 확정적인 bullish BOS로 보기는 어렵습니다. 반면 셋업 관점에서는 가격이 7일 고점 $62,957.20 근처까지 올라온 상태에서 OI가 24시간 -0.6570% 감소해 상승 참여가 약하고, 롱 계정 비율 0.607 및 account_long_crowding 1.000으로 롱 쏠림이 뚜렷합니다. CVD divergence 0.700과 fragility_score 0.771은 현재 상승이 취약한 레버리지/포지셔닝 위에서 진행 중임을 시사하며, 하방에는 $62,400과 $60,700 청산 유동성이 열려 있습니다. 따라서 확정 구조는 중립이지만, 파생 포지셔닝 기반 4-8시간 선행 시그널은 $62,957.20 돌파 실패 시 $62,400 → $60,700 방향의 단기 하락 셋업이 우세합니다.\",\n  \"key_levels\": {\n    \"support\": [\n      62400,\n      62192.35,\n      61234.8,\n      60700,\n      60400,\n      57758.6\n    ],\n    \"resistance\": [\n      62957.2,\n      65261.98,\n      66000,\n      66100\n    ]\n  },\n  \"time_horizon\": \"short term, 4-8시간\",\n  \"invalidation_level\": \"$62,957.20 4시간 종가 상향 안착\",\n  \"risk_scenario\": \"$62,957.20 위로 4시간 종가가 안착하면 근접 숏 셋업은 무효화되며, OI가 재증가할 경우 숏 커버링이 $66,000-$66,100 상단 청산 클러스터까지 확장될 수 있습니다.\",\n  \"data_quality\": \"medium\"\n}"
    }
  },
  "chairman_synthesis": {
    "overall_signal": "bullish",
    "overall_confidence": 0.62,
    "execution_setup": {
      "setup_bias": "bearish",
      "setup_strength": 0.76,
      "active_setups": [
        "가격이 7일 레인지 EQ $60,357.90 위 프리미엄 구간에 위치",
        "현재가 $62,609.60이 7일 고점 $62,957.20 바로 아래에 있어 상단 유동성 소진 및 저항 반응 조건 형성",
        "ICT 기준 이전일 고점 $62,386.70 상향 돌파 이후 buy-side liquidity 소진 가능성",
        "피보나치 기준 $63,321.73~$63,382.62 confluence 저항 접근",
        "파생 기준 24시간 가격 +1.96% 상승에도 OI -0.6570% 감소로 신규 추세 롱보다 숏커버링성 반등 가능성",
        "롱 계정 비율 0.607 및 롱 혼잡도 1.000으로 contrarian bearish 조건 형성",
        "캔들 기준 $62,957.20 저항 직하단 도지 및 bearish harami 후보 품질 0.578 발생"
      ],
      "setup_vs_structure": "구조는 Wyckoff 누적 Phase D 및 Spring 이후 SOS 회복으로 bullish 쪽이 우세하지만, 실행 셋업은 프리미엄·상단 유동성·파생 포지셔닝 취약성 때문에 bearish로 기울어져 있다. 즉, 큰 구조는 아직 회복/누적 후반부로 보되, 단기 운영상으로는 추격 매수보다 저항권 반응과 재테스트 조건을 우선 감시해야 하는 구조-셋업 불일치 상태다."
    },
    "signal_breakdown": {
      "bullish_count": 2,
      "bearish_count": 2,
      "neutral_count": 2
    },
    "key_levels": {
      "support": [
        62527.12,
        62400,
        62232.1,
        62192.35,
        62180,
        61234.8,
        61136.55,
        60924.7,
        60357.9,
        59080,
        57758.6
      ],
      "resistance": [
        62957.2,
        63382.62,
        63386.13,
        64250,
        64598.76,
        65261.98,
        66000,
        66100
      ]
    },
    "confluences": [
      "Wyckoff의 SOS $62,180.00, Fibonacci의 ext_1.0 $62,180.00, ICT의 구조 기준 $62,232.10, EMA120 $62,192.35가 모두 $62.18k~$62.23k 부근을 핵심 단기 구조 지지로 지목한다.",
      "Candlestick, ICT, Wyckoff, Derivatives가 모두 7일 고점 $62,957.20을 즉시 저항 또는 상단 유동성 레벨로 인식한다.",
      "Fibonacci의 $63,321.73~$63,382.62 confluence 저항과 Harmonic bullish Bat PRZ 상단 $63,386.13이 거의 일치해 $63.32k~$63.39k는 강한 반응 관찰 구간이다.",
      "Wyckoff의 AR $64,250.00과 ICT의 bullish BOS 기준 $64,250.00이 동일하여, 이 레벨은 단순 저항이 아니라 구조적 상방 확정 여부를 가르는 기준이다.",
      "Candlestick과 ICT 모두 EQ $60,357.90 위 프리미엄 구간을 지적하며, Fibonacci도 EQ $59,969.30 위 프리미엄 상태를 확인한다.",
      "Wyckoff Spring $57,758.60, ICT bullish OB 하단 $57,758.60, Candlestick 7일 저점 $57,758.60이 동일해 구조적 하단 방어선으로 강하게 수렴한다.",
      "Candlestick의 EMA240 $65,261.98, Derivatives의 EMA240 $65,261.98, Harmonic TP1 $64,598.76~TP2 $65,613.27이 $64.6k~$65.6k를 중기 공급/목표 클러스터로 제시한다."
    ],
    "conflicts": [
      "Wyckoff는 SC $59,080 → AR $64,250 → ST $63,650 → Spring $57,758.60 → SOS $62,180의 confirmed accumulation Phase D로 구조적 bullish를 제시하지만, ICT와 Derivatives는 현재 위치가 프리미엄 및 상단 유동성 구간이라 실행 셋업은 bearish라고 평가한다.",
      "Harmonic은 현재가가 bullish Bat PRZ $62,527.12~$63,386.13 및 forming Gartley D값 $62,608.77 부근에 있어 반등 후보라고 보지만, Fibonacci는 같은 상단 영역의 $63,321.73~$63,382.62를 저항 confluence로 본다.",
      "Candlestick은 최근 EMA20 $61,234.80 및 EMA120 $62,192.35 위에 있어 단기 반등 압력은 인정하지만, $62,957.20 직하단 도지와 bearish harami 후보 때문에 구조 확정보다는 중립/약세 셋업으로 해석한다.",
      "ICT는 $60,924.70 bullish CHoCH를 인정하면서도 $64,250.00 bullish BOS 미회복을 이유로 구조를 neutral로 유지해, Wyckoff의 bullish Phase D 판정과 강도 면에서 차이가 있다.",
      "Derivatives는 가격 상승에도 OI 감소와 롱 계정 혼잡을 근거로 상승의 질을 낮게 평가해, Wyckoff의 구조적 누적 해석과 단기 수급 품질에서 충돌한다."
    ],
    "executive_summary": "현재 BTC 4시간 구조는 Spring $57,758.60 이후 SOS $62,180.00을 회복한 Wyckoff confirmed accumulation Phase D로, regime-level 구조 편향은 bullish가 우세하다. 다만 가격은 $62,609.60으로 7일 고점 $62,957.20 바로 아래이자 EQ $60,357.90 위 프리미엄 구간에 있어, 구조적 회복 국면 안에서 상단 유동성 소진·저항 반응 조건이 강하게 형성되어 있다. 핵심 구조 레벨은 $62,180~$62,232 지지 클러스터, $62,957 단기 상단, $63,321~$63,386 피보나치·하모닉 반응 구간, 그리고 $64,250 AR/BOS 확정선이다. LPS 또는 BU가 아직 확인되지 않았기 때문에 Phase D는 진행 중이나 완전한 Phase E 추세 전환으로 단정하기는 이르며, $57,758.60 이탈 시 누적 구조의 핵심 전제가 무효화된다.",
    "raw_llm_response": "{\n  \"overall_signal\": \"bullish\",\n  \"overall_confidence\": 0.62,\n  \"execution_setup\": {\n    \"setup_bias\": \"bearish\",\n    \"setup_strength\": 0.76,\n    \"active_setups\": [\n      \"가격이 7일 레인지 EQ $60,357.90 위 프리미엄 구간에 위치\",\n      \"현재가 $62,609.60이 7일 고점 $62,957.20 바로 아래에 있어 상단 유동성 소진 및 저항 반응 조건 형성\",\n      \"ICT 기준 이전일 고점 $62,386.70 상향 돌파 이후 buy-side liquidity 소진 가능성\",\n      \"피보나치 기준 $63,321.73~$63,382.62 confluence 저항 접근\",\n      \"파생 기준 24시간 가격 +1.96% 상승에도 OI -0.6570% 감소로 신규 추세 롱보다 숏커버링성 반등 가능성\",\n      \"롱 계정 비율 0.607 및 롱 혼잡도 1.000으로 contrarian bearish 조건 형성\",\n      \"캔들 기준 $62,957.20 저항 직하단 도지 및 bearish harami 후보 품질 0.578 발생\"\n    ],\n    \"setup_vs_structure\": \"구조는 Wyckoff 누적 Phase D 및 Spring 이후 SOS 회복으로 bullish 쪽이 우세하지만, 실행 셋업은 프리미엄·상단 유동성·파생 포지셔닝 취약성 때문에 bearish로 기울어져 있다. 즉, 큰 구조는 아직 회복/누적 후반부로 보되, 단기 운영상으로는 추격 매수보다 저항권 반응과 재테스트 조건을 우선 감시해야 하는 구조-셋업 불일치 상태다.\"\n  },\n  \"signal_breakdown\": {\n    \"bullish_count\": 2,\n    \"bearish_count\": 2,\n    \"neutral_count\": 2\n  },\n  \"key_levels\": {\n    \"support\": [\n      62527.12,\n      62400,\n      62232.1,\n      62192.35,\n      62180,\n      61234.8,\n      61136.55,\n      60924.7,\n      60357.9,\n      59080,\n      57758.6\n    ],\n    \"resistance\": [\n      62957.2,\n      63382.62,\n      63386.13,\n      64250,\n      64598.76,\n      65261.98,\n      66000,\n      66100\n    ]\n  },\n  \"confluences\": [\n    \"Wyckoff의 SOS $62,180.00, Fibonacci의 ext_1.0 $62,180.00, ICT의 구조 기준 $62,232.10, EMA120 $62,192.35가 모두 $62.18k~$62.23k 부근을 핵심 단기 구조 지지로 지목한다.\",\n    \"Candlestick, ICT, Wyckoff, Derivatives가 모두 7일 고점 $62,957.20을 즉시 저항 또는 상단 유동성 레벨로 인식한다.\",\n    \"Fibonacci의 $63,321.73~$63,382.62 confluence 저항과 Harmonic bullish Bat PRZ 상단 $63,386.13이 거의 일치해 $63.32k~$63.39k는 강한 반응 관찰 구간이다.\",\n    \"Wyckoff의 AR $64,250.00과 ICT의 bullish BOS 기준 $64,250.00이 동일하여, 이 레벨은 단순 저항이 아니라 구조적 상방 확정 여부를 가르는 기준이다.\",\n    \"Candlestick과 ICT 모두 EQ $60,357.90 위 프리미엄 구간을 지적하며, Fibonacci도 EQ $59,969.30 위 프리미엄 상태를 확인한다.\",\n    \"Wyckoff Spring $57,758.60, ICT bullish OB 하단 $57,758.60, Candlestick 7일 저점 $57,758.60이 동일해 구조적 하단 방어선으로 강하게 수렴한다.\",\n    \"Candlestick의 EMA240 $65,261.98, Derivatives의 EMA240 $65,261.98, Harmonic TP1 $64,598.76~TP2 $65,613.27이 $64.6k~$65.6k를 중기 공급/목표 클러스터로 제시한다.\"\n  ],\n  \"conflicts\": [\n    \"Wyckoff는 SC $59,080 → AR $64,250 → ST $63,650 → Spring $57,758.60 → SOS $62,180의 confirmed accumulation Phase D로 구조적 bullish를 제시하지만, ICT와 Derivatives는 현재 위치가 프리미엄 및 상단 유동성 구간이라 실행 셋업은 bearish라고 평가한다.\",\n    \"Harmonic은 현재가가 bullish Bat PRZ $62,527.12~$63,386.13 및 forming Gartley D값 $62,608.77 부근에 있어 반등 후보라고 보지만, Fibonacci는 같은 상단 영역의 $63,321.73~$63,382.62를 저항 confluence로 본다.\",\n    \"Candlestick은 최근 EMA20 $61,234.80 및 EMA120 $62,192.35 위에 있어 단기 반등 압력은 인정하지만, $62,957.20 직하단 도지와 bearish harami 후보 때문에 구조 확정보다는 중립/약세 셋업으로 해석한다.\",\n    \"ICT는 $60,924.70 bullish CHoCH를 인정하면서도 $64,250.00 bullish BOS 미회복을 이유로 구조를 neutral로 유지해, Wyckoff의 bullish Phase D 판정과 강도 면에서 차이가 있다.\",\n    \"Derivatives는 가격 상승에도 OI 감소와 롱 계정 혼잡을 근거로 상승의 질을 낮게 평가해, Wyckoff의 구조적 누적 해석과 단기 수급 품질에서 충돌한다.\"\n  ],\n  \"highest_conviction_analyst\": \"Wyckoff Expert — SC $59,080, AR $64,250, ST $63,650, Spring $57,758.60, SOS $62,180으로 이어지는 구체적 Phase D 누적 시퀀스를 제시했고, regime fitness 0.888 및 confidence 72%로 구조 진단의 정합성이 가장 높다. 다만 LPS/BU가 아직 확인되지 않아 실행 관점의 추격 근거는 제한적이라고 명확히 구분한 점도 신뢰도를 높인다.\",\n  \"invalidation_level\": \"$57,758.60 하향 이탈 시 Spring 기반 누적 구조의 핵심 가정이 훼손된다. 그 전에는 $62,180.00 SOS 및 $60,357.90 EQ 이탈 여부가 Phase D 강도 약화 조건이다.\",\n  \"executive_summary\": \"현재 BTC 4시간 구조는 Spring $57,758.60 이후 SOS $62,180.00을 회복한 Wyckoff confirmed accumulation Phase D로, regime-level 구조 편향은 bullish가 우세하다. 다만 가격은 $62,609.60으로 7일 고점 $62,957.20 바로 아래이자 EQ $60,357.90 위 프리미엄 구간에 있어, 구조적 회복 국면 안에서 상단 유동성 소진·저항 반응 조건이 강하게 형성되어 있다. 핵심 구조 레벨은 $62,180~$62,232 지지 클러스터, $62,957 단기 상단, $63,321~$63,386 피보나치·하모닉 반응 구간, 그리고 $64,250 AR/BOS 확정선이다. LPS 또는 BU가 아직 확인되지 않았기 때문에 Phase D는 진행 중이나 완전한 Phase E 추세 전환으로 단정하기는 이르며, $57,758.60 이탈 시 누적 구조의 핵심 전제가 무효화된다.\"\n}"
  },
  "overall_signal": "bullish",
  "overall_confidence": 0.62,
  "operating_path": {
    "raw_llm_response": ""
  },
  "tp_calibration": {},
  "timing": {
    "stages": {
      "stage1_agents": 58.0,
      "chairman": 84.5,
      "operating_path": 5.3,
      "tp_calibrator": 0.0
    },
    "agents": {},
    "total_s": 147.9
  }
}