{
  "symbol": "BTC/USDT",
  "timeframe": "4h",
  "timestamp": "2026-07-03 09:00 KST",
  "last_price": 61540.6,
  "num_candles": 300,
  "stage1_analyses": {
    "wyckoff": {
      "agent_id": "wyckoff",
      "display_name": "Wyckoff Expert",
      "signal": "neutral",
      "confidence": 0.66,
      "structure_bias": "bullish",
      "setup_bias": "neutral",
      "setup_score": 0.38,
      "setup_signals": [
        "현재가 $61,540.60은 메인 레인지 EQ 약 $61,665 바로 아래에 위치하여 프리미엄 추격 매수 조건은 아님",
        "Spring 저점 $57,758.60 이후 SOS 고점 $62,180.00이 발생했지만, 현재가는 SOS 고점 및 EMA120 $62,195.49 아래에 있어 LPS/테스트 확인 전 단계",
        "AR 상단 $64,250.00 재수복 전까지는 Phase D 내부 테스트 또는 BU 후보 구간으로 해석해야 함",
        "EMA20 $60,324.15 위에 머물러 단기 수요는 유지되지만, $62,180~$62,195 구간 돌파 수용은 아직 미확인"
      ],
      "reasoning": "Wyckoff 구조상 regime은 ACC이며 regime_state는 confirmed_acc, acc_score 88.8 및 regime_fitness 0.888로 누적 구조 우위가 확인된다. 주요 이벤트 체인은 SC $59,080 → AR $64,250 → ST $63,650 → Spring $57,758.60 → SOS $62,180으로, 현재는 accumulation Phase D의 SOS 이후 구간이다. 다만 현재가 $61,540.60은 SOS $62,180 및 EMA120 $62,195.49 아래, 레인지 EQ 약 $61,665 부근에 있어 즉시 상승 확정이라기보다 LPS/테스트 확인이 필요한 위치다. 구조적 편향은 bullish지만, 실행 관점에서는 $62,180~$62,195 수용 또는 $60,324~$59,080 방어 확인 전까지 중립적·레인지성 판단이 더 타당하다.",
      "key_levels": {
        "support": [
          60324.15,
          59080.0,
          57758.6
        ],
        "resistance": [
          62180.0,
          62195.49,
          64250.0,
          65306.39
        ]
      },
      "time_horizon": "medium term",
      "invalidation_level": "$57,758.60",
      "risk_scenario": "$62,180~$62,195 구간에서 재차 거부되고 EMA20 $60,324.15를 이탈하면 SOS 이후 LPS가 아니라 약한 반등으로 재해석될 수 있으며, $59,080 메인 레인지 하단까지 재테스트가 열릴 수 있다. 특히 Spring 저점 $57,758.60을 하회하면 현재의 Phase D 누적 해석은 무효화된다.",
      "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": 136,
            "price": 59080.0,
            "color": "#ffd166"
          },
          {
            "label": "AR",
            "side": "high",
            "idx": 149,
            "price": 64250.0,
            "color": "#06d6a0"
          },
          {
            "label": "ST",
            "side": "low",
            "idx": 190,
            "price": 63650.0,
            "color": "#118ab2"
          },
          {
            "label": "Spring",
            "side": "low",
            "idx": 288,
            "price": 57758.6,
            "color": "#f9844a"
          },
          {
            "label": "SOS",
            "side": "high",
            "idx": 297,
            "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": 136,
            "end_idx": 297,
            "phase_count": 5,
            "phases": [
              {
                "label": "SC",
                "side": "low",
                "idx": 136,
                "price": 59080.0,
                "color": "#ffd166",
                "dt": "2026-06-06 01:00:00+09:00"
              },
              {
                "label": "AR",
                "side": "high",
                "idx": 149,
                "price": 64250.0,
                "color": "#06d6a0",
                "dt": "2026-06-08 05:00:00+09:00"
              },
              {
                "label": "ST",
                "side": "low",
                "idx": 190,
                "price": 63650.0,
                "color": "#118ab2",
                "dt": "2026-06-15 01:00:00+09:00"
              },
              {
                "label": "Spring",
                "side": "low",
                "idx": 288,
                "price": 57758.6,
                "color": "#f9844a",
                "dt": "2026-07-01 09:00:00+09:00"
              },
              {
                "label": "SOS",
                "side": "high",
                "idx": 297,
                "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\": \"neutral\",\n  \"confidence\": 0.66,\n  \"structure_bias\": \"bullish\",\n  \"setup_bias\": \"neutral\",\n  \"setup_score\": 0.38,\n  \"setup_signals\": [\n    \"현재가 $61,540.60은 메인 레인지 EQ 약 $61,665 바로 아래에 위치하여 프리미엄 추격 매수 조건은 아님\",\n    \"Spring 저점 $57,758.60 이후 SOS 고점 $62,180.00이 발생했지만, 현재가는 SOS 고점 및 EMA120 $62,195.49 아래에 있어 LPS/테스트 확인 전 단계\",\n    \"AR 상단 $64,250.00 재수복 전까지는 Phase D 내부 테스트 또는 BU 후보 구간으로 해석해야 함\",\n    \"EMA20 $60,324.15 위에 머물러 단기 수요는 유지되지만, $62,180~$62,195 구간 돌파 수용은 아직 미확인\"\n  ],\n  \"reasoning\": \"Wyckoff 구조상 regime은 ACC이며 regime_state는 confirmed_acc, acc_score 88.8 및 regime_fitness 0.888로 누적 구조 우위가 확인된다. 주요 이벤트 체인은 SC $59,080 → AR $64,250 → ST $63,650 → Spring $57,758.60 → SOS $62,180으로, 현재는 accumulation Phase D의 SOS 이후 구간이다. 다만 현재가 $61,540.60은 SOS $62,180 및 EMA120 $62,195.49 아래, 레인지 EQ 약 $61,665 부근에 있어 즉시 상승 확정이라기보다 LPS/테스트 확인이 필요한 위치다. 구조적 편향은 bullish지만, 실행 관점에서는 $62,180~$62,195 수용 또는 $60,324~$59,080 방어 확인 전까지 중립적·레인지성 판단이 더 타당하다.\",\n  \"key_levels\": {\n    \"support\": [\n      60324.15,\n      59080.0,\n      57758.6\n    ],\n    \"resistance\": [\n      62180.0,\n      62195.49,\n      64250.0,\n      65306.39\n    ]\n  },\n  \"time_horizon\": \"medium term\",\n  \"invalidation_level\": \"$57,758.60\",\n  \"risk_scenario\": \"$62,180~$62,195 구간에서 재차 거부되고 EMA20 $60,324.15를 이탈하면 SOS 이후 LPS가 아니라 약한 반등으로 재해석될 수 있으며, $59,080 메인 레인지 하단까지 재테스트가 열릴 수 있다. 특히 Spring 저점 $57,758.60을 하회하면 현재의 Phase D 누적 해석은 무효화된다.\",\n  \"data_quality\": \"high\"\n}"
    },
    "ict": {
      "agent_id": "ict",
      "display_name": "ICT Trader",
      "signal": "bearish",
      "confidence": 0.72,
      "structure_bias": "neutral",
      "setup_bias": "bearish",
      "setup_score": 0.919,
      "setup_signals": [
        "현재가 $61,540.60은 EQ $59,969.30 위의 premium zone에 위치",
        "가격이 7일 고점 및 전일 고점 $62,180.00 바로 아래에서 정체",
        "최근 핵심 bearish BOS 레벨 $62,232.10을 아직 회복하지 못함",
        "EMA120 $62,195.49가 현재가 위에 있어 $62,180~$62,232 구간이 단기 공급대로 작용",
        "bear_score 11.5가 bull_score 5.2보다 우위",
        "deep retracement 130.8%로 premium 구간에서 과확장 반등 상태"
      ],
      "reasoning": "상위 구조는 $76,014.20, $74,203.60, $72,436.00, $62,232.10 하향 BOS가 연속적으로 존재해 큰 흐름은 아직 약세 압력이 우세하지만, 마지막 이벤트가 $60,924.70의 bullish CHoCH이므로 확정 bearish 지속보다는 중립적 전환 구간으로 판단한다. 다만 현재가 $61,540.60은 EQ $59,969.30 위 premium zone에 있으며, $62,180.00 전일/7일 고점과 $62,232.10 bearish BOS 레벨을 아직 돌파하지 못했다. 활성 FVG는 없고 확정 OB도 없지만, $57,758.60~$59,298.40 후보 bullish OB 위에서 반등한 가격이 premium까지 되돌린 상태라 신규 롱보다는 매도 셋업이 더 유리하다. 따라서 구조는 중립, 실행 셋업은 bearish이며, $62,232.10 회복 전까지는 $60,924.70 및 EQ $59,969.30 재테스트 가능성을 우선 본다.",
      "key_levels": {
        "support": [
          60924.7,
          59969.3,
          59555.0,
          59298.4,
          57758.6
        ],
        "resistance": [
          62180.0,
          62232.1,
          64250.0,
          76234.7,
          78077.1
        ]
      },
      "time_horizon": "단기~중기, 4시간봉 기준",
      "invalidation_level": "$62,232.10",
      "risk_scenario": "$62,232.10을 4시간봉 종가로 회복하고 $62,180.00 이전 고점 위에서 수용이 발생하면 bearish setup은 무효화되며, 다음 유동성 목표는 $64,250.00 bullish BOS 레벨이 된다. 이 경우 premium에서의 매도 논리는 숏 스퀴즈로 전환될 수 있다.",
      "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": 59969.3,
        "range_high": 62180.0,
        "range_low": 57758.6,
        "bull_score": 5.2,
        "bear_score": 11.5,
        "setup_bias": "bearish",
        "setup_score": 0.919,
        "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 130.8% in premium zone"
        ],
        "retracement_direction": "bearish",
        "current_retracement_pct": 130.8,
        "deepest_retracement_pct": 139.6,
        "previous_day_high": 62180.0,
        "previous_day_low": 59555.0,
        "broken_prev_high": false,
        "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.919,\n  \"setup_signals\": [\n    \"현재가 $61,540.60은 EQ $59,969.30 위의 premium zone에 위치\",\n    \"가격이 7일 고점 및 전일 고점 $62,180.00 바로 아래에서 정체\",\n    \"최근 핵심 bearish BOS 레벨 $62,232.10을 아직 회복하지 못함\",\n    \"EMA120 $62,195.49가 현재가 위에 있어 $62,180~$62,232 구간이 단기 공급대로 작용\",\n    \"bear_score 11.5가 bull_score 5.2보다 우위\",\n    \"deep retracement 130.8%로 premium 구간에서 과확장 반등 상태\"\n  ],\n  \"reasoning\": \"상위 구조는 $76,014.20, $74,203.60, $72,436.00, $62,232.10 하향 BOS가 연속적으로 존재해 큰 흐름은 아직 약세 압력이 우세하지만, 마지막 이벤트가 $60,924.70의 bullish CHoCH이므로 확정 bearish 지속보다는 중립적 전환 구간으로 판단한다. 다만 현재가 $61,540.60은 EQ $59,969.30 위 premium zone에 있으며, $62,180.00 전일/7일 고점과 $62,232.10 bearish BOS 레벨을 아직 돌파하지 못했다. 활성 FVG는 없고 확정 OB도 없지만, $57,758.60~$59,298.40 후보 bullish OB 위에서 반등한 가격이 premium까지 되돌린 상태라 신규 롱보다는 매도 셋업이 더 유리하다. 따라서 구조는 중립, 실행 셋업은 bearish이며, $62,232.10 회복 전까지는 $60,924.70 및 EQ $59,969.30 재테스트 가능성을 우선 본다.\",\n  \"key_levels\": {\n    \"support\": [\n      60924.7,\n      59969.3,\n      59555.0,\n      59298.4,\n      57758.6\n    ],\n    \"resistance\": [\n      62180.0,\n      62232.1,\n      64250.0,\n      76234.7,\n      78077.1\n    ]\n  },\n  \"time_horizon\": \"단기~중기, 4시간봉 기준\",\n  \"invalidation_level\": \"$62,232.10\",\n  \"risk_scenario\": \"$62,232.10을 4시간봉 종가로 회복하고 $62,180.00 이전 고점 위에서 수용이 발생하면 bearish setup은 무효화되며, 다음 유동성 목표는 $64,250.00 bullish BOS 레벨이 된다. 이 경우 premium에서의 매도 논리는 숏 스퀴즈로 전환될 수 있다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "fibonacci": {
      "agent_id": "fibonacci",
      "display_name": "Fibonacci Analyst",
      "signal": "neutral",
      "confidence": 0.52,
      "structure_bias": "neutral",
      "setup_bias": "bearish",
      "setup_score": 0.62,
      "setup_signals": [
        "현재가 $61,540.60은 스윙 EQ인 ret_0.5 $59,258.45 위의 프리미엄 구간에 위치",
        "현재가가 ret_0.786 $60,116.36 및 황금비 ret_0.618 $59,612.41을 모두 상회하여 단기 상승 과열/되돌림 리스크 존재",
        "상단에 7일 고점 $62,180.00 및 EMA120 $62,195.49가 근접해 있어 즉각적인 저항 후보 형성",
        "최근 하락 스윙 $60,758 → $57,758.60 기준 주요 피보나치 되돌림을 모두 초과했으나, 상위 EMA240 $65,306.39 아래에 있어 중기 구조 확정은 부족"
      ],
      "reasoning": "현재 BTC는 $61,540.60으로 최근 하락 스윙 $60,758 → $57,758.60의 ret_0.786 $60,116.36을 2.31% 상회하고 있어 단기적으로는 피보나치 되돌림 구간을 모두 회복한 상태입니다. 다만 구조적으로는 7일 고점 $62,180.00과 EMA120 $62,195.49 저항이 바로 위에 있으며, EMA240 $65,306.39보다 5.8% 낮아 명확한 중기 상승 구조 전환으로 보기는 어렵습니다. 셋업 관점에서는 가격이 EQ $59,258.45 및 황금비 $59,612.41 위의 프리미엄 구간에 있어, $60,116.36 또는 $59,612.41 재테스트 가능성이 열려 있습니다. 피보나치 반응 상태가 distant이고 reaction_probability가 0.25로 낮아, 현재 가격대에서 신규 추격 매수보다는 되돌림 확인이 더 유리합니다.",
      "key_levels": {
        "support": [
          60116.36,
          59612.41,
          59258.45,
          58904.49,
          57758.6
        ],
        "resistance": [
          62180.0,
          62195.49,
          65306.39
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$62,195.49 상방 4시간봉 종가 안착",
      "risk_scenario": "가격이 EMA120 $62,195.49와 7일 고점 $62,180.00을 강하게 돌파해 수용되면, 프리미엄 구간 되돌림 셋업은 무효화되고 단기 상승 구조가 강화될 수 있습니다. 이 경우 다음 저항은 EMA240 $65,306.39 부근으로 확장될 가능성이 있습니다.",
      "data_quality": "medium",
      "metrics": {
        "swing_pair": "High→Low: $60,758 → $57,759",
        "direction": "down",
        "nearest_fib": "ret_0.786",
        "nearest_fib_price": 60116.36,
        "nearest_fib_distance": 2.31,
        "golden_ratio_level": 59612.41,
        "fib_ret_382": 58904.49,
        "fib_ret_618": 59612.41,
        "confluence_zones": [
          {
            "price": 57758.6,
            "count": 2,
            "levels": [
              "ext_1.0",
              "ext_1.0"
            ],
            "cluster_score": 0.6
          }
        ],
        "support_levels": [
          60116.3642,
          59612.414600000004,
          59258.45
        ],
        "resistance_levels": [],
        "level_candidates": [
          {
            "name": "ret_0.236",
            "price": 58466.53,
            "distance_pct": 5.0,
            "is_support": true,
            "cluster_score": 0.0
          },
          {
            "name": "ret_0.382",
            "price": 58904.49,
            "distance_pct": 4.28,
            "is_support": true,
            "cluster_score": 0.0
          },
          {
            "name": "ret_0.5",
            "price": 59258.45,
            "distance_pct": 3.71,
            "is_support": true,
            "cluster_score": 0.0
          },
          {
            "name": "ret_0.618",
            "price": 59612.41,
            "distance_pct": 3.13,
            "is_support": true,
            "cluster_score": 0.0
          },
          {
            "name": "ret_0.786",
            "price": 60116.36,
            "distance_pct": 2.31,
            "is_support": true,
            "cluster_score": 0.0
          },
          {
            "name": "ext_1.0",
            "price": 57758.6,
            "distance_pct": 6.15,
            "is_support": true,
            "cluster_score": 0.6
          },
          {
            "name": "ext_1.272",
            "price": 56942.68,
            "distance_pct": 7.47,
            "is_support": true,
            "cluster_score": 0.0
          },
          {
            "name": "ext_1.414",
            "price": 56516.72,
            "distance_pct": 8.16,
            "is_support": true,
            "cluster_score": 0.0
          },
          {
            "name": "ext_1.618",
            "price": 55904.79,
            "distance_pct": 9.16,
            "is_support": true,
            "cluster_score": 0.0
          },
          {
            "name": "ext_2.0",
            "price": 54758.9,
            "distance_pct": 11.02,
            "is_support": true,
            "cluster_score": 0.0
          }
        ],
        "confluence_quality": 0.6,
        "fib_reaction_state": "distant",
        "reaction_probability": 0.25
      },
      "raw_llm_response": "{\n  \"signal\": \"neutral\",\n  \"confidence\": 0.52,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.62,\n  \"setup_signals\": [\n    \"현재가 $61,540.60은 스윙 EQ인 ret_0.5 $59,258.45 위의 프리미엄 구간에 위치\",\n    \"현재가가 ret_0.786 $60,116.36 및 황금비 ret_0.618 $59,612.41을 모두 상회하여 단기 상승 과열/되돌림 리스크 존재\",\n    \"상단에 7일 고점 $62,180.00 및 EMA120 $62,195.49가 근접해 있어 즉각적인 저항 후보 형성\",\n    \"최근 하락 스윙 $60,758 → $57,758.60 기준 주요 피보나치 되돌림을 모두 초과했으나, 상위 EMA240 $65,306.39 아래에 있어 중기 구조 확정은 부족\"\n  ],\n  \"reasoning\": \"현재 BTC는 $61,540.60으로 최근 하락 스윙 $60,758 → $57,758.60의 ret_0.786 $60,116.36을 2.31% 상회하고 있어 단기적으로는 피보나치 되돌림 구간을 모두 회복한 상태입니다. 다만 구조적으로는 7일 고점 $62,180.00과 EMA120 $62,195.49 저항이 바로 위에 있으며, EMA240 $65,306.39보다 5.8% 낮아 명확한 중기 상승 구조 전환으로 보기는 어렵습니다. 셋업 관점에서는 가격이 EQ $59,258.45 및 황금비 $59,612.41 위의 프리미엄 구간에 있어, $60,116.36 또는 $59,612.41 재테스트 가능성이 열려 있습니다. 피보나치 반응 상태가 distant이고 reaction_probability가 0.25로 낮아, 현재 가격대에서 신규 추격 매수보다는 되돌림 확인이 더 유리합니다.\",\n  \"key_levels\": {\n    \"support\": [\n      60116.36,\n      59612.41,\n      59258.45,\n      58904.49,\n      57758.6\n    ],\n    \"resistance\": [\n      62180.0,\n      62195.49,\n      65306.39\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$62,195.49 상방 4시간봉 종가 안착\",\n  \"risk_scenario\": \"가격이 EMA120 $62,195.49와 7일 고점 $62,180.00을 강하게 돌파해 수용되면, 프리미엄 구간 되돌림 셋업은 무효화되고 단기 상승 구조가 강화될 수 있습니다. 이 경우 다음 저항은 EMA240 $65,306.39 부근으로 확장될 가능성이 있습니다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "derivatives": {
      "agent_id": "derivatives",
      "display_name": "Derivatives Trader",
      "signal": "bearish",
      "confidence": 0.58,
      "structure_bias": "neutral",
      "setup_bias": "bearish",
      "setup_score": 0.72,
      "setup_signals": [
        "가격 $61,540.60은 7일 레인지 EQ 약 $59,969 위의 프리미엄 구간에 위치",
        "7일 고점 $62,180 및 EMA120 $62,195.49 저항 바로 아래에서 구조적 수용 실패 가능성",
        "OI 24h +2.479% 증가로 신규 포지션 유입 중이나 가격은 EMA120 아래에 머물러 추격 롱 취약",
        "롱 계정 비율 0.627, account_long_crowding 1.000으로 롱 포지셔닝 과밀",
        "CVD divergence 0.700으로 가격 상승 대비 체결 참여 강도에 약점 존재",
        "하방 청산 밀집 구간 $60,700, $60,400, $58,900이 열려 있으며 최강 청산 레벨은 $60,700"
      ],
      "reasoning": "현재 BTC는 $61,540.60으로 EMA20 $60,324.15 위에 있어 단기 반등은 유지되지만, EMA120 $62,195.49와 7일 고점 $62,180을 아직 확정 돌파하지 못해 구조적으로는 중립에 가깝다. 파생 포지셔닝은 OI가 24시간 +2.479% 증가한 가운데 롱 계정 비율이 0.627로 높고 account_long_crowding이 1.000이라, $62.2k 저항 아래에서 신규 롱이 쌓이는 형태다. CVD divergence 0.700은 가격 반등 대비 매수 체결의 질이 약하다는 신호이며, funding_avg는 0.000으로 강한 롱 펀딩 과열은 아니지만 방향성 확증도 부족하다. 단기적으로는 $62,180-$62,195를 수용하지 못하면 하방 청산 밀집 구간인 $60,700 및 $60,400을 먼저 테스트할 가능성이 높다.",
      "key_levels": {
        "support": [
          60700,
          60400,
          60324.15,
          58900,
          57758.6
        ],
        "resistance": [
          62180,
          62195.49,
          65306.39,
          66000,
          66100
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$62,200 이상 4시간봉 종가 수용",
      "risk_scenario": "$62,180-$62,195 저항을 강하게 돌파하고 4시간봉 기준 수용하면, 현재 쌓인 OI가 숏 커버링과 함께 상방 연료로 전환될 수 있으며 다음 유동성 타깃은 $66,000-$66,100 구간이다.",
      "data_quality": "medium",
      "metrics": {
        "cvd_divergence": 0.7,
        "cvd_change": 10.82,
        "oi_trend": 0.748,
        "oi_change_pct_24h": 2.479,
        "oi_latest": 107401.979,
        "funding_pressure": 0.438,
        "funding_avg": 6.167e-05,
        "funding_change_24h": -2.74e-05,
        "long_account_ratio": 0.638,
        "short_account_ratio": 0.362,
        "long_account_latest": 0.627,
        "short_account_latest": 0.373,
        "long_account_change_24h": -0.018,
        "short_account_change_24h": 0.018,
        "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.492,
        "spot_futures_basis_pct": -0.0315,
        "basis_change_lookback": 0.0179,
        "aggregate_score": 0.476,
        "bull_signals": 2,
        "bear_signals": 2,
        "liq_below": [
          [
            60700,
            48201.38214680001
          ],
          [
            60400,
            33161.1539364
          ],
          [
            58900,
            47878.99667595
          ]
        ],
        "liq_above": [
          [
            66000,
            34870.076035000006
          ],
          [
            66100,
            27916.336255000002
          ]
        ],
        "strongest_liq_level": 60700,
        "fragility_score": 0.939,
        "positioning_extreme": "balanced"
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.58,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.72,\n  \"setup_signals\": [\n    \"가격 $61,540.60은 7일 레인지 EQ 약 $59,969 위의 프리미엄 구간에 위치\",\n    \"7일 고점 $62,180 및 EMA120 $62,195.49 저항 바로 아래에서 구조적 수용 실패 가능성\",\n    \"OI 24h +2.479% 증가로 신규 포지션 유입 중이나 가격은 EMA120 아래에 머물러 추격 롱 취약\",\n    \"롱 계정 비율 0.627, account_long_crowding 1.000으로 롱 포지셔닝 과밀\",\n    \"CVD divergence 0.700으로 가격 상승 대비 체결 참여 강도에 약점 존재\",\n    \"하방 청산 밀집 구간 $60,700, $60,400, $58,900이 열려 있으며 최강 청산 레벨은 $60,700\"\n  ],\n  \"reasoning\": \"현재 BTC는 $61,540.60으로 EMA20 $60,324.15 위에 있어 단기 반등은 유지되지만, EMA120 $62,195.49와 7일 고점 $62,180을 아직 확정 돌파하지 못해 구조적으로는 중립에 가깝다. 파생 포지셔닝은 OI가 24시간 +2.479% 증가한 가운데 롱 계정 비율이 0.627로 높고 account_long_crowding이 1.000이라, $62.2k 저항 아래에서 신규 롱이 쌓이는 형태다. CVD divergence 0.700은 가격 반등 대비 매수 체결의 질이 약하다는 신호이며, funding_avg는 0.000으로 강한 롱 펀딩 과열은 아니지만 방향성 확증도 부족하다. 단기적으로는 $62,180-$62,195를 수용하지 못하면 하방 청산 밀집 구간인 $60,700 및 $60,400을 먼저 테스트할 가능성이 높다.\",\n  \"key_levels\": {\n    \"support\": [\n      60700,\n      60400,\n      60324.15,\n      58900,\n      57758.6\n    ],\n    \"resistance\": [\n      62180,\n      62195.49,\n      65306.39,\n      66000,\n      66100\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$62,200 이상 4시간봉 종가 수용\",\n  \"risk_scenario\": \"$62,180-$62,195 저항을 강하게 돌파하고 4시간봉 기준 수용하면, 현재 쌓인 OI가 숏 커버링과 함께 상방 연료로 전환될 수 있으며 다음 유동성 타깃은 $66,000-$66,100 구간이다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "harmonic": {
      "agent_id": "harmonic",
      "display_name": "Harmonic Specialist",
      "signal": "neutral",
      "confidence": 0.46,
      "structure_bias": "neutral",
      "setup_bias": "bullish",
      "setup_score": 0.62,
      "setup_signals": [
        "가격 $61,540.60이 고품질 strict bullish Gartley 활성 PRZ $61,478.18-$62,153.24 내부에 위치",
        "bullish Gartley PRZ가 ABCD, BC_EXT, XAD 3개 Fib family confluence로 구성됨; PRZ score 1.000, pattern score 0.960",
        "Gartley 핵심 비율 XAB 0.6087로 이상적 0.618에 근접하며, D 예상가 $61,815.71 부근에서 반전 후보 형성",
        "현재 PRZ proximity active, price_to_prz_pct 0.45%로 실행 감시권이나 confirmed_reaction=false라 구조 전환 신호는 아직 없음",
        "상방 반응 시 harmonic TP ladder는 $62,617.75, $63,113.26, $63,915.30 순으로 제시됨"
      ],
      "reasoning": "현재 BTC는 $61,540.60으로, 최우선 council PRZ인 bullish Gartley $61,478.18-$62,153.24 안에 들어와 있어 단기적으로는 상방 반응 setup이 존재한다. 이 패턴은 strict/high 품질, score 0.960, ratio_score 0.945, PRZ confluence 3개(ABCD, BC_EXT, XAD)로 harmonic 관점에서는 가장 신뢰도 높은 활성 구간이다. 다만 confirmed_reaction=false, reaction_score 0.0이며 15m/1h MSS, CHoCH, sweep→reclaim, CVD/OI 확인이 없으므로 구조상 bullish로 확정할 수는 없다. 따라서 structure_bias는 neutral로 유지하고, setup_bias만 bullish로 평가한다. $62,153.24 상단 회복 및 방어가 확인되면 $62,617.75와 $63,113.26이 1차/2차 반응 목표가 될 수 있다.",
      "key_levels": {
        "support": [
          61478.18,
          61013.8,
          60933.28,
          60742.93,
          60602.82
        ],
        "resistance": [
          62153.24,
          62195.49,
          62617.75,
          63113.26,
          63915.3
        ]
      },
      "time_horizon": "short to medium term",
      "invalidation_level": "$61,478.18",
      "risk_scenario": "$61,478.18 아래로 4시간봉 종가가 수용되면 최우선 bullish Gartley PRZ 방어 실패로 해석되며, 가격은 하단 confluence cluster인 $60,933.28-$60,602.82까지 재탐색할 수 있다. 반대로 $62,153.24와 EMA120 $62,195.49 위로 회복·안착하면 PRZ 반응 확인 가능성이 커지고 $62,617.75, $63,113.26, $63,915.30 TP ladder가 활성화된다.",
      "data_quality": "high",
      "metrics": {
        "patterns_found": 150,
        "completed_patterns_found": 58,
        "forming_d_prz_found": 92,
        "swing_orders_scanned": [
          3,
          5,
          8
        ],
        "swing_search_window": 30,
        "multiscale_swings_scanned": 55,
        "swing_highs_scanned": 28,
        "swing_lows_scanned": 27,
        "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": 5,
          "medium": 42,
          "low": 103
        },
        "prz_status_counts": {
          "active": 54,
          "nearby": 13,
          "watch": 17,
          "far": 66,
          "forming": 39
        },
        "high_confluence_prz_count": 20,
        "strict_patterns_found": 62,
        "candidate_patterns_found": 88,
        "active_patterns_at_prz": 54,
        "nearby_patterns": 13,
        "all_patterns": [
          "gartley",
          "shark",
          "butterfly",
          "bat",
          "bat",
          "gartley",
          "gartley",
          "butterfly",
          "gartley",
          "crab",
          "shark",
          "butterfly",
          "bat",
          "butterfly",
          "shark",
          "bat",
          "shark",
          "bat",
          "shark",
          "gartley",
          "crab",
          "shark",
          "gartley",
          "crab",
          "crab",
          "shark",
          "bat",
          "crab",
          "bat",
          "shark",
          "gartley",
          "bat",
          "butterfly",
          "crab",
          "gartley",
          "butterfly",
          "butterfly",
          "bat",
          "bat",
          "butterfly",
          "shark",
          "gartley",
          "crab",
          "shark",
          "butterfly",
          "crab",
          "bat",
          "butterfly",
          "crab",
          "butterfly",
          "bat",
          "gartley",
          "crab",
          "bat",
          "shark",
          "bat",
          "bat",
          "crab",
          "butterfly",
          "shark",
          "crab",
          "crab",
          "butterfly",
          "crab",
          "shark",
          "bat",
          "crab",
          "shark",
          "butterfly",
          "gartley",
          "butterfly",
          "shark",
          "butterfly",
          "crab",
          "crab",
          "shark",
          "crab",
          "crab",
          "gartley",
          "gartley",
          "shark",
          "gartley",
          "shark",
          "crab",
          "crab",
          "crab",
          "gartley",
          "butterfly",
          "crab",
          "crab",
          "shark",
          "bat",
          "crab",
          "bat",
          "crab",
          "crab",
          "gartley",
          "crab",
          "shark",
          "bat",
          "shark",
          "shark",
          "crab",
          "butterfly",
          "bat",
          "crab",
          "crab",
          "shark",
          "crab",
          "shark",
          "crab",
          "crab",
          "crab",
          "butterfly",
          "crab",
          "butterfly",
          "crab",
          "butterfly",
          "gartley",
          "butterfly",
          "crab",
          "gartley",
          "crab",
          "butterfly",
          "bat",
          "gartley",
          "shark",
          "butterfly",
          "shark",
          "butterfly",
          "shark",
          "butterfly",
          "crab",
          "crab",
          "shark",
          "crab",
          "crab",
          "bat",
          "shark",
          "crab",
          "bat",
          "butterfly",
          "butterfly",
          "shark",
          "gartley",
          "crab",
          "gartley",
          "butterfly",
          "gartley",
          "shark"
        ],
        "all_signals": [
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish"
        ],
        "best_pattern": "gartley",
        "best_pattern_quality": "strict",
        "best_quality": "high",
        "best_pattern_score": 0.96,
        "best_completion_status": "forming",
        "nearest_pattern": "butterfly",
        "nearest_prz": 61535.45,
        "price_to_prz": -0.01,
        "prz_range": [
          60771.55,
          62299.35
        ],
        "council_relevant_prz_count": 1,
        "directional_influence_prz_count": 1,
        "confirmed_reaction_prz_count": 0,
        "validated_harmonic_tp_count": 0,
        "pattern_candidates": [
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.96,
            "ratio_score": 0.945,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 61815.71,
            "prz_range": [
              61478.18,
              62153.24
            ],
            "prz_width_pct": 1.092,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.45,
            "price_to_prz_pct_raw": 0.447,
            "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": 61815.71,
              "a_price": 63915.3,
              "tp1_ad_382": 62617.75,
              "tp2_ad_618": 63113.26,
              "tp3_a_or_structure_liquidity": 63915.3,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6087,
              "ABC": 0.5807
            },
            "x_price": 61150.2,
            "x_idx": 148,
            "x_order": 3,
            "a_price": 63915.3,
            "a_idx": 172,
            "a_order": 3,
            "b_price": 62232.1,
            "b_idx": 213,
            "b_order": 8,
            "c_price": 63209.6,
            "c_idx": 248,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.916,
            "ratio_score": 1.0,
            "prz_score": 0.988,
            "prz_proximity": "watch",
            "action_status": "watch",
            "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": 2.3,
            "price_to_prz_pct_raw": 2.301,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 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": 172,
            "x_order": 3,
            "a_price": 67255.4,
            "a_idx": 195,
            "a_order": 8,
            "b_price": 65328.8,
            "b_idx": 201,
            "b_order": 3,
            "c_price": 64568.0,
            "c_idx": 229,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.88,
            "ratio_score": 0.826,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "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": -0.39,
            "price_to_prz_pct_raw": -0.3939,
            "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",
                "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": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 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": 172,
            "x_order": 3,
            "a_price": 67255.4,
            "a_idx": 195,
            "a_order": 8,
            "b_price": 63136.2,
            "b_idx": 225,
            "b_order": 3,
            "c_price": 65597.2,
            "c_idx": 237,
            "c_order": 8,
            "d_idx": 250
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.835,
            "ratio_score": 0.847,
            "prz_score": 0.988,
            "prz_proximity": "watch",
            "action_status": "watch",
            "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": 2.3,
            "price_to_prz_pct_raw": 2.301,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected"
              ],
              "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": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 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": 172,
            "x_order": 3,
            "a_price": 67255.4,
            "a_idx": 195,
            "a_order": 8,
            "b_price": 65328.8,
            "b_idx": 201,
            "b_order": 3,
            "c_price": 64568.0,
            "c_idx": 229,
            "c_order": 3,
            "d_idx": 233
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.83,
            "ratio_score": 0.718,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "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": 1.74,
            "price_to_prz_pct_raw": 1.7357,
            "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": 172,
            "x_order": 3,
            "a_price": 64738.0,
            "a_idx": 185,
            "a_order": 5,
            "b_price": 63136.2,
            "b_idx": 225,
            "b_order": 3,
            "c_price": 64568.0,
            "c_idx": 229,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "shark",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.929,
            "ratio_score": 1.0,
            "prz_score": 0.911,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 61293.42,
            "prz_range": [
              60742.93,
              61843.91
            ],
            "prz_width_pct": 1.796,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.4,
            "price_to_prz_pct_raw": -0.4017,
            "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": "shark",
              "d_price": 61293.42,
              "a_price": 63915.3,
              "tp1_ad_382": 62294.98,
              "tp2_ad_618": 62913.74,
              "tp3_a_or_structure_liquidity": 63915.3,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5112,
              "ABC": 1.4993
            },
            "x_price": 61150.2,
            "x_idx": 148,
            "x_order": 3,
            "a_price": 63915.3,
            "a_idx": 172,
            "a_order": 3,
            "b_price": 65328.8,
            "b_idx": 201,
            "b_order": 3,
            "c_price": 63209.6,
            "c_idx": 248,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.922,
            "ratio_score": 0.911,
            "prz_score": 0.972,
            "prz_proximity": "active",
            "action_status": "active",
            "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": -0.13,
            "price_to_prz_pct_raw": -0.1291,
            "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": 172,
            "x_order": 3,
            "a_price": 66956.7,
            "a_idx": 200,
            "a_order": 3,
            "b_price": 63220.0,
            "b_idx": 233,
            "b_order": 5,
            "c_price": 65597.2,
            "c_idx": 237,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.895,
            "ratio_score": 0.844,
            "prz_score": 0.963,
            "prz_proximity": "active",
            "action_status": "active",
            "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": -0.59,
            "price_to_prz_pct_raw": -0.5915,
            "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": 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": 253,
            "x_order": 3,
            "a_price": 58030.0,
            "a_idx": 255,
            "a_order": 8,
            "b_price": 60543.3,
            "b_idx": 272,
            "b_order": 3,
            "c_price": 58850.0,
            "c_idx": 276,
            "c_order": 8,
            "d_idx": null
          }
        ],
        "council_relevant_prz": [
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.96,
            "ratio_score": 0.945,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 61815.71,
            "prz_range": [
              61478.18,
              62153.24
            ],
            "prz_width_pct": 1.092,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.45,
            "price_to_prz_pct_raw": 0.447,
            "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": 61815.71,
              "a_price": 63915.3,
              "tp1_ad_382": 62617.75,
              "tp2_ad_618": 63113.26,
              "tp3_a_or_structure_liquidity": 63915.3,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6087,
              "ABC": 0.5807
            },
            "x_price": 61150.2,
            "x_idx": 148,
            "x_order": 3,
            "a_price": 63915.3,
            "a_idx": 172,
            "a_order": 3,
            "b_price": 62232.1,
            "b_idx": 213,
            "b_order": 8,
            "c_price": 63209.6,
            "c_idx": 248,
            "c_order": 5,
            "d_idx": null
          }
        ],
        "report_detail_candidates": [
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.96,
            "ratio_score": 0.945,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 61815.71,
            "prz_range": [
              61478.18,
              62153.24
            ],
            "prz_width_pct": 1.092,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.45,
            "price_to_prz_pct_raw": 0.447,
            "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": 61815.71,
              "a_price": 63915.3,
              "tp1_ad_382": 62617.75,
              "tp2_ad_618": 63113.26,
              "tp3_a_or_structure_liquidity": 63915.3,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6087,
              "ABC": 0.5807
            },
            "x_price": 61150.2,
            "x_idx": 148,
            "x_order": 3,
            "a_price": 63915.3,
            "a_idx": 172,
            "a_order": 3,
            "b_price": 62232.1,
            "b_idx": 213,
            "b_order": 8,
            "c_price": 63209.6,
            "c_idx": 248,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.916,
            "ratio_score": 1.0,
            "prz_score": 0.988,
            "prz_proximity": "watch",
            "action_status": "watch",
            "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": 2.3,
            "price_to_prz_pct_raw": 2.301,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 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": 172,
            "x_order": 3,
            "a_price": 67255.4,
            "a_idx": 195,
            "a_order": 8,
            "b_price": 65328.8,
            "b_idx": 201,
            "b_order": 3,
            "c_price": 64568.0,
            "c_idx": 229,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.88,
            "ratio_score": 0.826,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "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": -0.39,
            "price_to_prz_pct_raw": -0.3939,
            "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",
                "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": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 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": 172,
            "x_order": 3,
            "a_price": 67255.4,
            "a_idx": 195,
            "a_order": 8,
            "b_price": 63136.2,
            "b_idx": 225,
            "b_order": 3,
            "c_price": 65597.2,
            "c_idx": 237,
            "c_order": 8,
            "d_idx": 250
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.835,
            "ratio_score": 0.847,
            "prz_score": 0.988,
            "prz_proximity": "watch",
            "action_status": "watch",
            "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": 2.3,
            "price_to_prz_pct_raw": 2.301,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected"
              ],
              "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": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 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": 172,
            "x_order": 3,
            "a_price": 67255.4,
            "a_idx": 195,
            "a_order": 8,
            "b_price": 65328.8,
            "b_idx": 201,
            "b_order": 3,
            "c_price": 64568.0,
            "c_idx": 229,
            "c_order": 3,
            "d_idx": 233
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.83,
            "ratio_score": 0.718,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "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": 1.74,
            "price_to_prz_pct_raw": 1.7357,
            "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": 172,
            "x_order": 3,
            "a_price": 64738.0,
            "a_idx": 185,
            "a_order": 5,
            "b_price": 63136.2,
            "b_idx": 225,
            "b_order": 3,
            "c_price": 64568.0,
            "c_idx": 229,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "shark",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.929,
            "ratio_score": 1.0,
            "prz_score": 0.911,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 61293.42,
            "prz_range": [
              60742.93,
              61843.91
            ],
            "prz_width_pct": 1.796,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.4,
            "price_to_prz_pct_raw": -0.4017,
            "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": "shark",
              "d_price": 61293.42,
              "a_price": 63915.3,
              "tp1_ad_382": 62294.98,
              "tp2_ad_618": 62913.74,
              "tp3_a_or_structure_liquidity": 63915.3,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5112,
              "ABC": 1.4993
            },
            "x_price": 61150.2,
            "x_idx": 148,
            "x_order": 3,
            "a_price": 63915.3,
            "a_idx": 172,
            "a_order": 3,
            "b_price": 65328.8,
            "b_idx": 201,
            "b_order": 3,
            "c_price": 63209.6,
            "c_idx": 248,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.922,
            "ratio_score": 0.911,
            "prz_score": 0.972,
            "prz_proximity": "active",
            "action_status": "active",
            "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": -0.13,
            "price_to_prz_pct_raw": -0.1291,
            "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": 172,
            "x_order": 3,
            "a_price": 66956.7,
            "a_idx": 200,
            "a_order": 3,
            "b_price": 63220.0,
            "b_idx": 233,
            "b_order": 5,
            "c_price": 65597.2,
            "c_idx": 237,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.895,
            "ratio_score": 0.844,
            "prz_score": 0.963,
            "prz_proximity": "active",
            "action_status": "active",
            "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": -0.59,
            "price_to_prz_pct_raw": -0.5915,
            "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": 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": 253,
            "x_order": 3,
            "a_price": 58030.0,
            "a_idx": 255,
            "a_order": 8,
            "b_price": 60543.3,
            "b_idx": 272,
            "b_order": 3,
            "c_price": 58850.0,
            "c_idx": 276,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.894,
            "ratio_score": 0.935,
            "prz_score": 0.884,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 61760.53,
            "prz_range": [
              61158.69,
              62362.37
            ],
            "prz_width_pct": 1.949,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.36,
            "price_to_prz_pct_raw": 0.3574,
            "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": 61760.53,
              "a_price": 66419.2,
              "tp1_ad_382": 63540.14,
              "tp2_ad_618": 64639.59,
              "tp3_a_or_structure_liquidity": 66419.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7999,
              "ABC": 0.7496
            },
            "x_price": 62315.0,
            "x_idx": 172,
            "x_order": 3,
            "a_price": 66419.2,
            "a_idx": 208,
            "a_order": 5,
            "b_price": 63136.2,
            "b_idx": 225,
            "b_order": 3,
            "c_price": 65597.2,
            "c_idx": 237,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.873,
            "ratio_score": 0.837,
            "prz_score": 0.918,
            "prz_proximity": "active",
            "action_status": "active",
            "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": -0.65,
            "price_to_prz_pct_raw": -0.6522,
            "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": 164,
            "x_order": 8,
            "a_price": 63915.3,
            "a_idx": 172,
            "a_order": 3,
            "b_price": 62232.1,
            "b_idx": 213,
            "b_order": 8,
            "c_price": 63209.6,
            "c_idx": 248,
            "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.89,
            "price_to_prz_pct_raw": 0.8872,
            "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": 248,
            "x_order": 5,
            "a_price": 58030.0,
            "a_idx": 255,
            "a_order": 8,
            "b_price": 60734.0,
            "b_idx": 259,
            "b_order": 3,
            "c_price": 58850.0,
            "c_idx": 276,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.818,
            "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": 0.26,
            "price_to_prz_pct_raw": 0.2601,
            "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": 248,
            "x_order": 5,
            "a_price": 58030.0,
            "a_idx": 255,
            "a_order": 8,
            "b_price": 60924.7,
            "b_idx": 267,
            "b_order": 8,
            "c_price": 58850.0,
            "c_idx": 276,
            "c_order": 8,
            "d_idx": null
          }
        ],
        "actionable_patterns_list": [
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.96,
            "prz_proximity": "active",
            "prz_range": [
              61478.18,
              62153.24
            ],
            "prz_reversal_direction": "up",
            "price_to_prz_pct": 0.45,
            "high_confluence_prz": true,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 61815.71,
              "a_price": 63915.3,
              "tp1_ad_382": 62617.75,
              "tp2_ad_618": 63113.26,
              "tp3_a_or_structure_liquidity": 63915.3,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "GARTLEY FORMING HIGH PRZ $61,478.18-$62,153.24: expected reversal UP if price reacts in zone"
          }
        ],
        "best_council_prz": {
          "pattern": "gartley",
          "signal": "bullish",
          "completion_status": "forming",
          "pattern_quality": "strict",
          "quality": "high",
          "pattern_score": 0.96,
          "ratio_score": 0.945,
          "prz_score": 1.0,
          "prz_proximity": "active",
          "action_status": "active",
          "high_confluence_prz": true,
          "d_price": 61815.71,
          "prz_range": [
            61478.18,
            62153.24
          ],
          "prz_width_pct": 1.092,
          "prz_confluence_count": 3,
          "prz_fib_families": [
            "ABCD",
            "BC_EXT",
            "XAD"
          ],
          "price_to_prz_pct": 0.45,
          "price_to_prz_pct_raw": 0.447,
          "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": 61815.71,
            "a_price": 63915.3,
            "tp1_ad_382": 62617.75,
            "tp2_ad_618": 63113.26,
            "tp3_a_or_structure_liquidity": 63915.3,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          "ratios": {
            "XAB": 0.6087,
            "ABC": 0.5807
          },
          "x_price": 61150.2,
          "x_idx": 148,
          "x_order": 3,
          "a_price": 63915.3,
          "a_idx": 172,
          "a_order": 3,
          "b_price": 62232.1,
          "b_idx": 213,
          "b_order": 8,
          "c_price": 63209.6,
          "c_idx": 248,
          "c_order": 5,
          "d_idx": null
        },
        "best_tp_ladder": {
          "direction": "bullish",
          "source": "gartley",
          "d_price": 61815.71,
          "a_price": 63915.3,
          "tp1_ad_382": 62617.75,
          "tp2_ad_618": 63113.26,
          "tp3_a_or_structure_liquidity": 63915.3,
          "note": "Use as strong TP ladder context; not standalone path authority."
        },
        "tp_ladder": [
          {
            "direction": "bullish",
            "source": "gartley",
            "d_price": 61815.71,
            "a_price": 63915.3,
            "tp1_ad_382": 62617.75,
            "tp2_ad_618": 63113.26,
            "tp3_a_or_structure_liquidity": 63915.3,
            "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\": \"neutral\",\n  \"confidence\": 0.46,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.62,\n  \"setup_signals\": [\n    \"가격 $61,540.60이 고품질 strict bullish Gartley 활성 PRZ $61,478.18-$62,153.24 내부에 위치\",\n    \"bullish Gartley PRZ가 ABCD, BC_EXT, XAD 3개 Fib family confluence로 구성됨; PRZ score 1.000, pattern score 0.960\",\n    \"Gartley 핵심 비율 XAB 0.6087로 이상적 0.618에 근접하며, D 예상가 $61,815.71 부근에서 반전 후보 형성\",\n    \"현재 PRZ proximity active, price_to_prz_pct 0.45%로 실행 감시권이나 confirmed_reaction=false라 구조 전환 신호는 아직 없음\",\n    \"상방 반응 시 harmonic TP ladder는 $62,617.75, $63,113.26, $63,915.30 순으로 제시됨\"\n  ],\n  \"reasoning\": \"현재 BTC는 $61,540.60으로, 최우선 council PRZ인 bullish Gartley $61,478.18-$62,153.24 안에 들어와 있어 단기적으로는 상방 반응 setup이 존재한다. 이 패턴은 strict/high 품질, score 0.960, ratio_score 0.945, PRZ confluence 3개(ABCD, BC_EXT, XAD)로 harmonic 관점에서는 가장 신뢰도 높은 활성 구간이다. 다만 confirmed_reaction=false, reaction_score 0.0이며 15m/1h MSS, CHoCH, sweep→reclaim, CVD/OI 확인이 없으므로 구조상 bullish로 확정할 수는 없다. 따라서 structure_bias는 neutral로 유지하고, setup_bias만 bullish로 평가한다. $62,153.24 상단 회복 및 방어가 확인되면 $62,617.75와 $63,113.26이 1차/2차 반응 목표가 될 수 있다.\",\n  \"key_levels\": {\n    \"support\": [\n      61478.18,\n      61013.8,\n      60933.28,\n      60742.93,\n      60602.82\n    ],\n    \"resistance\": [\n      62153.24,\n      62195.49,\n      62617.75,\n      63113.26,\n      63915.3\n    ]\n  },\n  \"time_horizon\": \"short to medium term\",\n  \"invalidation_level\": \"$61,478.18\",\n  \"risk_scenario\": \"$61,478.18 아래로 4시간봉 종가가 수용되면 최우선 bullish Gartley PRZ 방어 실패로 해석되며, 가격은 하단 confluence cluster인 $60,933.28-$60,602.82까지 재탐색할 수 있다. 반대로 $62,153.24와 EMA120 $62,195.49 위로 회복·안착하면 PRZ 반응 확인 가능성이 커지고 $62,617.75, $63,113.26, $63,915.30 TP ladder가 활성화된다.\",\n  \"data_quality\": \"high\"\n}"
    },
    "candlestick": {
      "agent_id": "candlestick",
      "display_name": "Candlestick Reader",
      "signal": "bullish",
      "confidence": 0.62,
      "structure_bias": "neutral",
      "setup_bias": "bullish",
      "setup_score": 0.68,
      "setup_signals": [
        "현재가 $61,540.60이 EMA20 $60,324.15 위에서 +2.0% 유지되어 단기 매수세가 우위",
        "최근 4개 패턴 중 bullish_engulfing이 3회 발생: index 291, 294, 296",
        "가장 강한 패턴은 strict 등급 bullish_engulfing, quality 0.738, high_volume=true",
        "doji@index293 이후 bullish_engulfing이 재출현해 단기 흡수 후 상방 재시도 가능성",
        "7일 범위 EQ 약 $59,969.30 위에 위치하지만, 7일 고점 $62,180.00 및 EMA120 $62,195.49 저항에 근접"
      ],
      "reasoning": "최근 캔들 구조는 bullish_engulfing이 3회 반복되고 bear_score가 0인 반면 bull_score가 2.35로 우세해 단기적으로는 매수 압력이 강합니다. 현재가 $61,540.60은 EMA20 $60,324.15 위에 있어 단기 반등 구조는 유지되지만, EMA120 $62,195.49와 7일 고점 $62,180.00이 거의 같은 구간에 있어 즉시 돌파 확인은 아직 부족합니다. 따라서 확정된 시장 구조는 EMA120·EMA240 아래에 머물러 있어 bullish로 단정하기 어렵고 neutral로 보며, 실행 관점의 setup_bias는 고거래량 bullish engulfing과 EMA20 회복을 근거로 bullish입니다. $62,180~$62,195 구간을 4시간 종가로 돌파하면 단기 상승 신호의 신뢰도가 높아지고, 반대로 $60,324.15를 이탈하면 최근 bullish engulfing 클러스터의 의미가 약화됩니다.",
      "key_levels": {
        "support": [
          60324.15,
          59969.3,
          57758.6
        ],
        "resistance": [
          62180.0,
          62195.49,
          65306.39
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$60,324.15",
      "risk_scenario": "$62,180.00~$62,195.49 저항에서 돌파 실패 후 4시간 종가가 EMA20 $60,324.15 아래로 내려가면, 최근 bullish_engulfing 신호는 단기 반등 실패로 해석되며 7일 범위 EQ $59,969.30 및 7일 저점 $57,758.60 재테스트 가능성이 커집니다.",
      "data_quality": "medium",
      "metrics": {
        "total_patterns_detected": 139,
        "recent_patterns": 4,
        "pattern_list": [
          "bullish_engulfing@291",
          "bullish_engulfing@294",
          "bullish_engulfing@296",
          "doji@293"
        ],
        "atr_value": 955.97,
        "vol_avg_20": 37067.5,
        "high_volume_patterns": [
          "bullish_engulfing"
        ],
        "pattern_candidates": [
          {
            "pattern": "bullish_engulfing",
            "signal": "bullish",
            "pattern_quality": 0.738,
            "tier": "strict",
            "high_volume": true
          },
          {
            "pattern": "bullish_engulfing",
            "signal": "bullish",
            "pattern_quality": 0.466,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "bullish_engulfing",
            "signal": "bullish",
            "pattern_quality": 0.442,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "doji",
            "signal": "neutral",
            "pattern_quality": 0.355,
            "tier": "candidate",
            "high_volume": false
          }
        ],
        "best_pattern_quality": 0.738,
        "bull_score": 2.35,
        "bear_score": 0
      },
      "raw_llm_response": "{\n  \"signal\": \"bullish\",\n  \"confidence\": 0.62,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.68,\n  \"setup_signals\": [\n    \"현재가 $61,540.60이 EMA20 $60,324.15 위에서 +2.0% 유지되어 단기 매수세가 우위\",\n    \"최근 4개 패턴 중 bullish_engulfing이 3회 발생: index 291, 294, 296\",\n    \"가장 강한 패턴은 strict 등급 bullish_engulfing, quality 0.738, high_volume=true\",\n    \"doji@index293 이후 bullish_engulfing이 재출현해 단기 흡수 후 상방 재시도 가능성\",\n    \"7일 범위 EQ 약 $59,969.30 위에 위치하지만, 7일 고점 $62,180.00 및 EMA120 $62,195.49 저항에 근접\"\n  ],\n  \"reasoning\": \"최근 캔들 구조는 bullish_engulfing이 3회 반복되고 bear_score가 0인 반면 bull_score가 2.35로 우세해 단기적으로는 매수 압력이 강합니다. 현재가 $61,540.60은 EMA20 $60,324.15 위에 있어 단기 반등 구조는 유지되지만, EMA120 $62,195.49와 7일 고점 $62,180.00이 거의 같은 구간에 있어 즉시 돌파 확인은 아직 부족합니다. 따라서 확정된 시장 구조는 EMA120·EMA240 아래에 머물러 있어 bullish로 단정하기 어렵고 neutral로 보며, 실행 관점의 setup_bias는 고거래량 bullish engulfing과 EMA20 회복을 근거로 bullish입니다. $62,180~$62,195 구간을 4시간 종가로 돌파하면 단기 상승 신호의 신뢰도가 높아지고, 반대로 $60,324.15를 이탈하면 최근 bullish engulfing 클러스터의 의미가 약화됩니다.\",\n  \"key_levels\": {\n    \"support\": [\n      60324.15,\n      59969.3,\n      57758.6\n    ],\n    \"resistance\": [\n      62180.0,\n      62195.49,\n      65306.39\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$60,324.15\",\n  \"risk_scenario\": \"$62,180.00~$62,195.49 저항에서 돌파 실패 후 4시간 종가가 EMA20 $60,324.15 아래로 내려가면, 최근 bullish_engulfing 신호는 단기 반등 실패로 해석되며 7일 범위 EQ $59,969.30 및 7일 저점 $57,758.60 재테스트 가능성이 커집니다.\",\n  \"data_quality\": \"medium\"\n}"
    }
  },
  "chairman_synthesis": {
    "overall_signal": "bullish",
    "overall_confidence": 0.62,
    "execution_setup": {
      "setup_bias": "bearish",
      "setup_strength": 0.72,
      "active_setups": [
        "ICT: 현재가 $61,540.60은 7일 레인지 EQ $59,969.30 위의 프리미엄 구간이며, 전일/7일 고점 $62,180.00 및 bearish BOS 레벨 $62,232.10 아래에서 정체",
        "Fibonacci: 현재가가 ret_0.786 $60,116.36, ret_0.618 $59,612.41, ret_0.5 $59,258.45를 모두 상회한 프리미엄 상태로 되돌림 리스크 존재",
        "Derivatives: OI 24시간 +2.479% 증가와 long account 비중 0.627, long crowding 1.000이 $62,180~$62,195 저항 아래에서 누적되어 추격 롱 취약",
        "Harmonic: strict/high bullish Gartley PRZ $61,478.18~$62,153.24 내부에 있으나 confirmed reaction이 없어 구조 전환 근거가 아닌 반응 후보",
        "Candlestick: EMA20 $60,324.15 위에서 고거래량 strict bullish engulfing이 확인되어 단기 매수세는 유지"
      ],
      "setup_vs_structure": "구조는 Wyckoff상 확정 누적 이후 Phase D로 bullish이나, 실행 셋업은 프리미엄 위치와 $62.2k 저항 미수복, 파생 롱 혼잡 때문에 bearish로 기울어 있다. 즉, 레짐과 단기 실행 리스크가 분리되어 있으며 현재 구간은 추격 매수보다 수용 여부를 확인해야 하는 위치다."
    },
    "signal_breakdown": {
      "bullish_count": 1,
      "bearish_count": 0,
      "neutral_count": 5
    },
    "key_levels": {
      "support": [
        61478.18,
        60924.7,
        60700,
        60400,
        60324.15,
        60116.36,
        59969.3,
        59612.41,
        59080.0,
        57758.6
      ],
      "resistance": [
        62153.24,
        62180.0,
        62195.49,
        62232.1,
        62617.75,
        63113.26,
        64250.0,
        65306.39
      ]
    },
    "confluences": [
      "Wyckoff, ICT, Candlestick, Derivatives가 모두 $62,180.00을 핵심 상단 저항 또는 전일/7일 고점으로 식별",
      "Wyckoff, Fibonacci, Candlestick, Derivatives가 모두 EMA120 $62,195.49 부근을 구조 수용 확인 저항으로 제시",
      "ICT의 bearish BOS 레벨 $62,232.10은 $62,180~$62,195 저항 클러스터 바로 위에 있어 $62.2k 구간의 구조적 중요도를 강화",
      "Wyckoff와 Candlestick은 EMA20 $60,324.15를 단기 반등 유지선으로 공유",
      "ICT EQ $59,969.30과 Fibonacci ret_0.786 $60,116.36, Derivatives 하방 청산 $60,400~$60,700, Wyckoff EMA20 $60,324.15가 $60.0k~$60.7k 지지 클러스터를 형성",
      "Wyckoff Spring 저점 $57,758.60, ICT 후보 bullish OB 하단 $57,758.60, Fibonacci 확장/스윙 저점 $57,758.60이 동일한 핵심 구조 저점으로 수렴",
      "Harmonic의 bullish Gartley PRZ $61,478.18~$62,153.24가 현재가 $61,540.60과 겹치며, 동시에 $62,153.24 상단이 $62,180~$62,195 저항 클러스터와 인접"
    ],
    "conflicts": [
      "Wyckoff는 confirmed accumulation 및 Phase D를 근거로 구조적 bullish를 제시하지만, ICT와 Derivatives는 현재 가격이 프리미엄 및 $62.2k 저항 아래에 있어 실행상 bearish 리스크가 우세하다고 평가",
      "Candlestick은 고거래량 bullish engulfing과 EMA20 회복을 근거로 단기 bullish 셋업을 제시하지만, Fibonacci는 같은 가격 위치를 ret_0.786 상회 프리미엄으로 해석해 되돌림 리스크를 강조",
      "Harmonic은 strict/high bullish Gartley PRZ 내부 진입을 bullish 반응 후보로 보지만, confirmed reaction이 없고 자체적으로 단독 구조 전환 권한이 없으므로 ICT·Derivatives의 bearish 실행 신호와 충돌",
      "Wyckoff의 SOS $62,180 발생은 누적 구조 진전을 의미하지만, 현재가는 SOS 고점 및 EMA120 $62,195.49 아래에 있어 LPS/BU 확인 전 단계라는 점에서 구조 신호와 가격 수용 상태가 완전히 일치하지 않음"
    ],
    "executive_summary": "BTC/USDT 4시간 구조는 Wyckoff 기준 확정 누적 구조이며, 현재 위치는 Spring $57,758.60 이후 SOS $62,180이 발생한 Phase D 내부의 LPS/BU 확인 전 구간으로 진단된다. 다만 가격은 $61,540.60으로 레인지 EQ 부근이자 SOS $62,180, EMA120 $62,195.49, ICT bearish BOS $62,232.10 아래에 있어 구조적 bullish와 즉시 수용 상태는 분리되어 있다. 실행 관점에서는 ICT·Fibonacci·Derivatives가 공통적으로 프리미엄 위치와 $62.2k 저항 미수복, 롱 혼잡을 지적해 bearish 셋업 우위가 형성되어 있으며, Harmonic과 Candlestick의 bullish 신호는 반응 후보 또는 단기 매수세 확인에 가깝다. 구조가 유지되려면 $60,324.15~$59,969.30 및 $59,080.00 방어가 중요하고, Spring 저점 $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.72,\n    \"active_setups\": [\n      \"ICT: 현재가 $61,540.60은 7일 레인지 EQ $59,969.30 위의 프리미엄 구간이며, 전일/7일 고점 $62,180.00 및 bearish BOS 레벨 $62,232.10 아래에서 정체\",\n      \"Fibonacci: 현재가가 ret_0.786 $60,116.36, ret_0.618 $59,612.41, ret_0.5 $59,258.45를 모두 상회한 프리미엄 상태로 되돌림 리스크 존재\",\n      \"Derivatives: OI 24시간 +2.479% 증가와 long account 비중 0.627, long crowding 1.000이 $62,180~$62,195 저항 아래에서 누적되어 추격 롱 취약\",\n      \"Harmonic: strict/high bullish Gartley PRZ $61,478.18~$62,153.24 내부에 있으나 confirmed reaction이 없어 구조 전환 근거가 아닌 반응 후보\",\n      \"Candlestick: EMA20 $60,324.15 위에서 고거래량 strict bullish engulfing이 확인되어 단기 매수세는 유지\"\n    ],\n    \"setup_vs_structure\": \"구조는 Wyckoff상 확정 누적 이후 Phase D로 bullish이나, 실행 셋업은 프리미엄 위치와 $62.2k 저항 미수복, 파생 롱 혼잡 때문에 bearish로 기울어 있다. 즉, 레짐과 단기 실행 리스크가 분리되어 있으며 현재 구간은 추격 매수보다 수용 여부를 확인해야 하는 위치다.\"\n  },\n  \"signal_breakdown\": {\n    \"bullish_count\": 1,\n    \"bearish_count\": 0,\n    \"neutral_count\": 5\n  },\n  \"key_levels\": {\n    \"support\": [\n      61478.18,\n      60924.7,\n      60700,\n      60400,\n      60324.15,\n      60116.36,\n      59969.3,\n      59612.41,\n      59080.0,\n      57758.6\n    ],\n    \"resistance\": [\n      62153.24,\n      62180.0,\n      62195.49,\n      62232.1,\n      62617.75,\n      63113.26,\n      64250.0,\n      65306.39\n    ]\n  },\n  \"confluences\": [\n    \"Wyckoff, ICT, Candlestick, Derivatives가 모두 $62,180.00을 핵심 상단 저항 또는 전일/7일 고점으로 식별\",\n    \"Wyckoff, Fibonacci, Candlestick, Derivatives가 모두 EMA120 $62,195.49 부근을 구조 수용 확인 저항으로 제시\",\n    \"ICT의 bearish BOS 레벨 $62,232.10은 $62,180~$62,195 저항 클러스터 바로 위에 있어 $62.2k 구간의 구조적 중요도를 강화\",\n    \"Wyckoff와 Candlestick은 EMA20 $60,324.15를 단기 반등 유지선으로 공유\",\n    \"ICT EQ $59,969.30과 Fibonacci ret_0.786 $60,116.36, Derivatives 하방 청산 $60,400~$60,700, Wyckoff EMA20 $60,324.15가 $60.0k~$60.7k 지지 클러스터를 형성\",\n    \"Wyckoff Spring 저점 $57,758.60, ICT 후보 bullish OB 하단 $57,758.60, Fibonacci 확장/스윙 저점 $57,758.60이 동일한 핵심 구조 저점으로 수렴\",\n    \"Harmonic의 bullish Gartley PRZ $61,478.18~$62,153.24가 현재가 $61,540.60과 겹치며, 동시에 $62,153.24 상단이 $62,180~$62,195 저항 클러스터와 인접\"\n  ],\n  \"conflicts\": [\n    \"Wyckoff는 confirmed accumulation 및 Phase D를 근거로 구조적 bullish를 제시하지만, ICT와 Derivatives는 현재 가격이 프리미엄 및 $62.2k 저항 아래에 있어 실행상 bearish 리스크가 우세하다고 평가\",\n    \"Candlestick은 고거래량 bullish engulfing과 EMA20 회복을 근거로 단기 bullish 셋업을 제시하지만, Fibonacci는 같은 가격 위치를 ret_0.786 상회 프리미엄으로 해석해 되돌림 리스크를 강조\",\n    \"Harmonic은 strict/high bullish Gartley PRZ 내부 진입을 bullish 반응 후보로 보지만, confirmed reaction이 없고 자체적으로 단독 구조 전환 권한이 없으므로 ICT·Derivatives의 bearish 실행 신호와 충돌\",\n    \"Wyckoff의 SOS $62,180 발생은 누적 구조 진전을 의미하지만, 현재가는 SOS 고점 및 EMA120 $62,195.49 아래에 있어 LPS/BU 확인 전 단계라는 점에서 구조 신호와 가격 수용 상태가 완전히 일치하지 않음\"\n  ],\n  \"highest_conviction_analyst\": \"Wyckoff Expert — acc 구조 점수 88.8, regime fitness 0.888, SC $59,080 → AR $64,250 → ST $63,650 → Spring $57,758.60 → SOS $62,180의 구체적 이벤트 체인을 제시해 구조 진단의 신뢰도가 가장 높다. 다만 현재가가 SOS 및 EMA120 아래에 있어 실행 신호는 중립으로 낮춘 점도 불확실성 인식 측면에서 신뢰도를 높인다.\",\n  \"invalidation_level\": \"$57,758.60\",\n  \"executive_summary\": \"BTC/USDT 4시간 구조는 Wyckoff 기준 확정 누적 구조이며, 현재 위치는 Spring $57,758.60 이후 SOS $62,180이 발생한 Phase D 내부의 LPS/BU 확인 전 구간으로 진단된다. 다만 가격은 $61,540.60으로 레인지 EQ 부근이자 SOS $62,180, EMA120 $62,195.49, ICT bearish BOS $62,232.10 아래에 있어 구조적 bullish와 즉시 수용 상태는 분리되어 있다. 실행 관점에서는 ICT·Fibonacci·Derivatives가 공통적으로 프리미엄 위치와 $62.2k 저항 미수복, 롱 혼잡을 지적해 bearish 셋업 우위가 형성되어 있으며, Harmonic과 Candlestick의 bullish 신호는 반응 후보 또는 단기 매수세 확인에 가깝다. 구조가 유지되려면 $60,324.15~$59,969.30 및 $59,080.00 방어가 중요하고, Spring 저점 $57,758.60 이탈은 현재 누적 구조 해석의 핵심 무효화 조건이다.\"\n}"
  },
  "overall_signal": "bullish",
  "overall_confidence": 0.62,
  "operating_path": {
    "path_type": "complex",
    "confidence": 0.55,
    "key_insight": "레짐(Wyckoff 확정 누적·Phase D, 구조 BULLISH)과 단기 실행(프리미엄 위치·$62.2k 저항 미수복·롱 혼잡, 셋업 BEARISH 72%)이 분리되어 있다. setup_strength 0.72 >= 0.7이고 구조가 아직 셋업 방향을 확정하지 못한 '고확신 프리-컨펌' 상태이므로, 첫 이동(WP1)은 반드시 하방이다. EMA20·하방 청산 클러스터를 스윕해 Fib 0.786/EQ 경계로 롱을 플러시한 뒤, 누적 구조가 재개되며 $62.2k 저항으로 반등하지만 고확신 bearish 셋업 + 롱 혼잡으로 첫 테스트는 거부 가능성이 우세하다. $62,232.10 4h 종가 회복이 진짜 bullish 전환 트리거, $59,080 이탈이 경로 전체 무효화 조건이다.",
    "waypoints": [
      {
        "seq": 1,
        "price": 60116.36,
        "type": "liquidity_sweep",
        "source": "Fibonacci(ret_0.786 $60,116.36), ICT(EQ $59,969.30), Derivatives(청산 클러스터 $60,700·$60,400·long_crowding 1.000), Wyckoff·Candlestick(EMA20 $60,324.15)",
        "description": "실행 셋업(BEARISH 72%, 고확신 프리-컨펌)에 따른 프리미엄 되돌림. 현재가 $61,540.60은 EQ $59,969.30 위 프리미엄이며 long_crowding 1.000·OI +2.479%로 추격 롱이 혼잡하다. $60,700·$60,400 하방 청산 클러스터와 EMA20 $60,324.15 방어선을 스윕하며 Fib ret_0.786 $60,116.36 / EQ $59,969.30 디스카운트 경계로 롱을 플러시하는 구간. CVD divergence 0.700이 반등 체결 질 약화를 뒷받침.",
        "est_hours": 6,
        "turning_zone": [
          59850.0,
          60150.0
        ],
        "likely_wick": 59969.3,
        "rejection_confirm": 60324.15,
        "invalid_overshoot": 59612.41,
        "calibration_reasoning": "기준 $60,116.36(Fib 0.786) 아래 EQ $59,969.30 디스카운트 경계와 $60,000 라운드 스톱을 청산하는 프리미엄 스윕 구간으로, 존 폭 $300은 0.31×ATR. 위크는 EQ 자석에 정렬, 반등 확정은 EMA20 $60,324.15 리클레임, $59,612.41(0.618 골든) 하회 시 스윕이 아닌 브레이크다운으로 무효."
      },
      {
        "seq": 2,
        "price": 62180.0,
        "type": "resistance_test",
        "source": "Wyckoff(SOS $62,180·LPS/BU 수용 테스트), ICT·Candlestick·Derivatives(7일/전일 고점 $62,180·EMA120 $62,195.49), Harmonic(Gartley PRZ 상단 $62,153.24)",
        "description": "스윕-리클레임 후 Wyckoff 확정 누적 Phase D 구조가 재개되며 LPS/BU 수용 여부를 확인하는 반등. 지지 클러스터에서 회복해 SOS $62,180.00·EMA120 $62,195.49·7일 고점·Gartley PRZ 상단으로 구성된 $62,153~$62,232 핵심 저항 밀집대를 재테스트한다. 이 구간은 4개 이상 에이전트가 상단 저항으로 공유하는 최우선 수용 확인선.",
        "est_hours": 17,
        "turning_zone": [
          62153.24,
          62450.0
        ],
        "likely_wick": 62232.1,
        "rejection_confirm": 61478.18,
        "invalid_overshoot": 62617.75,
        "calibration_reasoning": "$62,153.24~$62,232.10 저항 밀집대(SOS $62,180·EMA120 $62,195.49·7일 고점·클러스터 상단)가 존을 고정하고 상방 브레이크 스톱 스윕을 위해 $62,450까지 확장(0.31×ATR). Gartley PRZ·TP 래더는 PRE_CONFIRMATION이라 앵커에서 제외했으며, 위크는 클러스터 상단, 거부 확정은 $61,478.18 상실, $62,617.75 종가 돌파 시 브레이크아웃으로 저항 테스트 무효."
      },
      {
        "seq": 3,
        "price": 60924.7,
        "type": "support_test",
        "source": "ICT(bullish CHoCH·지지 $60,924.70), Derivatives",
        "description": "고확신 bearish 셋업 + 롱 혼잡으로 첫 $62.2k 테스트에서 거부. WP1 스윕 저점 위에서 higher low를 형성하며 ICT bullish CHoCH/지지 $60,924.70로 되돌림. $62,180~$62,232 4시간 종가 회복 전까지 레인지 하단 재축적(코일링) 구간으로, 구조는 bullish이나 저항 미수복 상태를 반영.",
        "est_hours": 22,
        "turning_zone": [
          60400.0,
          60980.0
        ],
        "likely_wick": 60700.0,
        "rejection_confirm": 61478.18,
        "invalid_overshoot": 60116.36,
        "calibration_reasoning": "터미널 지지 테스트로 존 폭 $580(0.61×ATR)을 적용, 기준 $60,924.70 아래 $60,700·$60,400 청산 클러스터를 포함하되 WP1 스윕 저점 위 higher low를 유지. 위크는 강한 자석인 $60,700 청산 클러스터에 정렬, 반등 확정은 $61,478.18 리클레임, $60,116.36 하회 시 higher low 구조 붕괴로 bullish 시나리오 무효."
      }
    ],
    "period_extremes": {
      "4h": {
        "expected_high": 61650.0,
        "expected_low": 60600.0,
        "high_first": true
      },
      "8h": {
        "expected_high": 61650.0,
        "expected_low": 60116.36,
        "high_first": true
      },
      "24h": {
        "expected_high": 62180.0,
        "expected_low": 60116.36,
        "high_first": false
      }
    },
    "triggers": {
      "bullish": {
        "price": 62232.1,
        "description": "4시간 종가가 bearish BOS $62,232.10(저항 클러스터 상단, SOS $62,180·EMA120 $62,195.49 위)을 회복하면 Wyckoff LPS/BU 수용이 확정되어 bullish 가속. 목표 $62,617.75 → $63,113.26. 이 종가 회복 전까지 반등은 저항 테스트로 취급."
      },
      "bearish": {
        "price": 59969.3,
        "description": "레인지 EQ $59,969.30($60.0k~$60.7k 지지 클러스터 하단)을 4시간 종가로 이탈하면 스윕-리클레임 시나리오가 부정되고 bearish 가속. $59,612.41 → $59,080.00으로 하방 확장."
      }
    },
    "scenario_invalidation": 59080.0,
    "raw_llm_response": "```json\n{\n  \"path_type\": \"complex\",\n  \"confidence\": 0.55,\n  \"key_insight\": \"레짐(Wyckoff 확정 누적·Phase D, 구조 BULLISH)과 단기 실행(프리미엄 위치·$62.2k 저항 미수복·롱 혼잡, 셋업 BEARISH 72%)이 분리되어 있다. setup_strength 0.72 >= 0.7이고 구조가 아직 셋업 방향을 확정하지 못한 '고확신 프리-컨펌' 상태이므로, 첫 이동(WP1)은 반드시 하방이다. EMA20·하방 청산 클러스터를 스윕해 Fib 0.786/EQ 경계로 롱을 플러시한 뒤, 누적 구조가 재개되며 $62.2k 저항으로 반등하지만 고확신 bearish 셋업 + 롱 혼잡으로 첫 테스트는 거부 가능성이 우세하다. $62,232.10 4h 종가 회복이 진짜 bullish 전환 트리거, $59,080 이탈이 경로 전체 무효화 조건이다.\",\n  \"waypoints\": [\n    {\n      \"seq\": 1,\n      \"price\": 60116.36,\n      \"type\": \"liquidity_sweep\",\n      \"source\": \"Fibonacci(ret_0.786 $60,116.36), ICT(EQ $59,969.30), Derivatives(청산 클러스터 $60,700·$60,400·long_crowding 1.000), Wyckoff·Candlestick(EMA20 $60,324.15)\",\n      \"description\": \"실행 셋업(BEARISH 72%, 고확신 프리-컨펌)에 따른 프리미엄 되돌림. 현재가 $61,540.60은 EQ $59,969.30 위 프리미엄이며 long_crowding 1.000·OI +2.479%로 추격 롱이 혼잡하다. $60,700·$60,400 하방 청산 클러스터와 EMA20 $60,324.15 방어선을 스윕하며 Fib ret_0.786 $60,116.36 / EQ $59,969.30 디스카운트 경계로 롱을 플러시하는 구간. CVD divergence 0.700이 반등 체결 질 약화를 뒷받침.\",\n      \"est_hours\": 6\n    },\n    {\n      \"seq\": 2,\n      \"price\": 62180.0,\n      \"type\": \"resistance_test\",\n      \"source\": \"Wyckoff(SOS $62,180·LPS/BU 수용 테스트), ICT·Candlestick·Derivatives(7일/전일 고점 $62,180·EMA120 $62,195.49), Harmonic(Gartley PRZ 상단 $62,153.24)\",\n      \"description\": \"스윕-리클레임 후 Wyckoff 확정 누적 Phase D 구조가 재개되며 LPS/BU 수용 여부를 확인하는 반등. 지지 클러스터에서 회복해 SOS $62,180.00·EMA120 $62,195.49·7일 고점·Gartley PRZ 상단으로 구성된 $62,153~$62,232 핵심 저항 밀집대를 재테스트한다. 이 구간은 4개 이상 에이전트가 상단 저항으로 공유하는 최우선 수용 확인선.\",\n      \"est_hours\": 17\n    },\n    {\n      \"seq\": 3,\n      \"price\": 60924.7,\n      \"type\": \"support_test\",\n      \"source\": \"ICT(bullish CHoCH·지지 $60,924.70), Derivatives\",\n      \"description\": \"고확신 bearish 셋업 + 롱 혼잡으로 첫 $62.2k 테스트에서 거부. WP1 스윕 저점 위에서 higher low를 형성하며 ICT bullish CHoCH/지지 $60,924.70로 되돌림. $62,180~$62,232 4시간 종가 회복 전까지 레인지 하단 재축적(코일링) 구간으로, 구조는 bullish이나 저항 미수복 상태를 반영.\",\n      \"est_hours\": 22\n    }\n  ],\n  \"period_extremes\": {\n    \"4h\":  {\"expected_high\": 61650.0, \"expected_low\": 60600.0, \"high_first\": true},\n    \"8h\":  {\"expected_high\": 61650.0, \"expected_low\": 60116.36, \"high_first\": true},\n    \"24h\": {\"expected_high\": 62180.0, \"expected_low\": 60116.36, \"high_first\": false}\n  },\n  \"triggers\": {\n    \"bullish\": {\"price\": 62232.1, \"description\": \"4시간 종가가 bearish BOS $62,232.10(저항 클러스터 상단, SOS $62,180·EMA120 $62,195.49 위)을 회복하면 Wyckoff LPS/BU 수용이 확정되어 bullish 가속. 목표 $62,617.75 → $63,113.26. 이 종가 회복 전까지 반등은 저항 테스트로 취급.\"},\n    \"bearish\": {\"price\": 59969.3, \"description\": \"레인지 EQ $59,969.30($60.0k~$60.7k 지지 클러스터 하단)을 4시간 종가로 이탈하면 스윕-리클레임 시나리오가 부정되고 bearish 가속. $59,612.41 → $59,080.00으로 하방 확장.\"}\n  },\n  \"scenario_invalidation\": 59080.0\n}\n```"
  },
  "tp_calibration": {
    "calibrated_waypoints": [
      {
        "seq": 1,
        "base_target": 60116.36,
        "turning_zone": [
          59850.0,
          60150.0
        ],
        "likely_wick": 59969.3,
        "rejection_confirm": 60324.15,
        "invalid_overshoot": 59612.41,
        "calibration_reasoning": "기준 $60,116.36(Fib 0.786) 아래 EQ $59,969.30 디스카운트 경계와 $60,000 라운드 스톱을 청산하는 프리미엄 스윕 구간으로, 존 폭 $300은 0.31×ATR. 위크는 EQ 자석에 정렬, 반등 확정은 EMA20 $60,324.15 리클레임, $59,612.41(0.618 골든) 하회 시 스윕이 아닌 브레이크다운으로 무효."
      },
      {
        "seq": 2,
        "base_target": 62180.0,
        "turning_zone": [
          62153.24,
          62450.0
        ],
        "likely_wick": 62232.1,
        "rejection_confirm": 61478.18,
        "invalid_overshoot": 62617.75,
        "calibration_reasoning": "$62,153.24~$62,232.10 저항 밀집대(SOS $62,180·EMA120 $62,195.49·7일 고점·클러스터 상단)가 존을 고정하고 상방 브레이크 스톱 스윕을 위해 $62,450까지 확장(0.31×ATR). Gartley PRZ·TP 래더는 PRE_CONFIRMATION이라 앵커에서 제외했으며, 위크는 클러스터 상단, 거부 확정은 $61,478.18 상실, $62,617.75 종가 돌파 시 브레이크아웃으로 저항 테스트 무효."
      },
      {
        "seq": 3,
        "base_target": 60924.7,
        "turning_zone": [
          60400.0,
          60980.0
        ],
        "likely_wick": 60700.0,
        "rejection_confirm": 61478.18,
        "invalid_overshoot": 60116.36,
        "calibration_reasoning": "터미널 지지 테스트로 존 폭 $580(0.61×ATR)을 적용, 기준 $60,924.70 아래 $60,700·$60,400 청산 클러스터를 포함하되 WP1 스윕 저점 위 higher low를 유지. 위크는 강한 자석인 $60,700 청산 클러스터에 정렬, 반등 확정은 $61,478.18 리클레임, $60,116.36 하회 시 higher low 구조 붕괴로 bullish 시나리오 무효."
      }
    ],
    "raw_llm_response": "{\n  \"calibrated_waypoints\": [\n    {\n      \"seq\": 1,\n      \"base_target\": 60116.36,\n      \"turning_zone\": [59850.0, 60150.0],\n      \"likely_wick\": 59969.30,\n      \"rejection_confirm\": 60324.15,\n      \"invalid_overshoot\": 59612.41,\n      \"calibration_reasoning\": \"기준 $60,116.36(Fib 0.786) 아래 EQ $59,969.30 디스카운트 경계와 $60,000 라운드 스톱을 청산하는 프리미엄 스윕 구간으로, 존 폭 $300은 0.31×ATR. 위크는 EQ 자석에 정렬, 반등 확정은 EMA20 $60,324.15 리클레임, $59,612.41(0.618 골든) 하회 시 스윕이 아닌 브레이크다운으로 무효.\"\n    },\n    {\n      \"seq\": 2,\n      \"base_target\": 62180.00,\n      \"turning_zone\": [62153.24, 62450.0],\n      \"likely_wick\": 62232.10,\n      \"rejection_confirm\": 61478.18,\n      \"invalid_overshoot\": 62617.75,\n      \"calibration_reasoning\": \"$62,153.24~$62,232.10 저항 밀집대(SOS $62,180·EMA120 $62,195.49·7일 고점·클러스터 상단)가 존을 고정하고 상방 브레이크 스톱 스윕을 위해 $62,450까지 확장(0.31×ATR). Gartley PRZ·TP 래더는 PRE_CONFIRMATION이라 앵커에서 제외했으며, 위크는 클러스터 상단, 거부 확정은 $61,478.18 상실, $62,617.75 종가 돌파 시 브레이크아웃으로 저항 테스트 무효.\"\n    },\n    {\n      \"seq\": 3,\n      \"base_target\": 60924.70,\n      \"turning_zone\": [60400.0, 60980.0],\n      \"likely_wick\": 60700.0,\n      \"rejection_confirm\": 61478.18,\n      \"invalid_overshoot\": 60116.36,\n      \"calibration_reasoning\": \"터미널 지지 테스트로 존 폭 $580(0.61×ATR)을 적용, 기준 $60,924.70 아래 $60,700·$60,400 청산 클러스터를 포함하되 WP1 스윕 저점 위 higher low를 유지. 위크는 강한 자석인 $60,700 청산 클러스터에 정렬, 반등 확정은 $61,478.18 리클레임, $60,116.36 하회 시 higher low 구조 붕괴로 bullish 시나리오 무효.\"\n    }\n  ]\n}"
  },
  "timing": {
    "stages": {
      "stage1_agents": 51.7,
      "chairman": 72.0,
      "operating_path": 363.7,
      "tp_calibrator": 157.3
    },
    "agents": {},
    "total_s": 644.7
  }
}