{
  "symbol": "BTC/USDT",
  "timeframe": "1d",
  "timestamp": "2026-05-27 21:00 KST",
  "last_price": 75742.8,
  "num_candles": 300,
  "stage1_analyses": {
    "candlestick": {
      "agent_id": "candlestick",
      "display_name": "Candlestick Reader",
      "signal": "bearish",
      "confidence": 0.58,
      "structure_bias": "bearish",
      "setup_bias": "bearish",
      "setup_score": 0.62,
      "setup_signals": [
        "현재가 $75,742.80이 EMA20 $77,465.32 및 EMA120 $77,606.41 아래에 있어 단기·중기 평균선 저항 하단에 위치",
        "7일 고점 $78,180.00 부근에서 bearish_engulfing@298 및 evening_star@294 후보가 발생해 상단 공급 반응 가능성",
        "최근 5개 일봉 중 마지막 2개가 음봉이며, 직전 -1.8% 하락 이후 회복이 약한 -0.2% 마감",
        "bull_score 0 대비 bear_score 2.3000으로 캔들 패턴 스코어가 매도 우위",
        "고거래량 패턴이 없어 하락 신호는 확정형보다 사전 경고형에 가까움"
      ],
      "reasoning": "현재 BTC는 $75,742.80으로 EMA20 $77,465.32보다 2.2%, EMA120 $77,606.41보다 2.4% 낮아 구조적으로는 반등이 평균선 저항 아래에 갇힌 약세 국면으로 해석된다. 최근 패턴은 evening_star와 bearish_engulfing 2개가 포함되어 있으며, best_pattern_quality는 0.456으로 강한 확정 신호는 아니지만 7일 고점 $78,180.00 부근의 매도 압력을 시사한다. 특히 bull_score가 0인 반면 bear_score는 2.3000으로 캔들 기반 방향성은 명확히 하방 쪽에 기울어 있다. 다만 high_volume_patterns가 없고 패턴들이 모두 candidate 등급이므로, $74,203.60 지지 이탈 전까지는 공격적 추격매도보다 저항 재확인 후 하락 시나리오가 더 적절하다.",
      "key_levels": {
        "support": [
          74203.6,
          73807.11
        ],
        "resistance": [
          77465.32,
          77606.41,
          78180.0,
          84216.57
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$78,180.00 일봉 종가 상향 돌파",
      "risk_scenario": "$78,180.00을 일봉 종가로 회복하면 최근 bearish engulfing 및 evening star 후보는 실패 신호가 되며, EMA20 $77,465.32와 EMA120 $77,606.41을 재탈환한 상태에서 숏커버링이 발생해 EMA240 $84,216.57까지 반등 폭이 열릴 수 있다.",
      "data_quality": "medium",
      "metrics": {
        "total_patterns_detected": 134,
        "recent_patterns": 4,
        "pattern_list": [
          "bearish_engulfing@294",
          "bearish_engulfing@298",
          "evening_star@294",
          "doji@293"
        ],
        "atr_value": 1935.69,
        "vol_avg_20": 114512.88,
        "high_volume_patterns": [],
        "pattern_candidates": [
          {
            "pattern": "evening_star",
            "signal": "bearish",
            "pattern_quality": 0.456,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "bearish_engulfing",
            "signal": "bearish",
            "pattern_quality": 0.447,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "bearish_engulfing",
            "signal": "bearish",
            "pattern_quality": 0.431,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "doji",
            "signal": "neutral",
            "pattern_quality": 0.355,
            "tier": "candidate",
            "high_volume": false
          }
        ],
        "best_pattern_quality": 0.456,
        "bull_score": 0,
        "bear_score": 2.3
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.58,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.62,\n  \"setup_signals\": [\n    \"현재가 $75,742.80이 EMA20 $77,465.32 및 EMA120 $77,606.41 아래에 있어 단기·중기 평균선 저항 하단에 위치\",\n    \"7일 고점 $78,180.00 부근에서 bearish_engulfing@298 및 evening_star@294 후보가 발생해 상단 공급 반응 가능성\",\n    \"최근 5개 일봉 중 마지막 2개가 음봉이며, 직전 -1.8% 하락 이후 회복이 약한 -0.2% 마감\",\n    \"bull_score 0 대비 bear_score 2.3000으로 캔들 패턴 스코어가 매도 우위\",\n    \"고거래량 패턴이 없어 하락 신호는 확정형보다 사전 경고형에 가까움\"\n  ],\n  \"reasoning\": \"현재 BTC는 $75,742.80으로 EMA20 $77,465.32보다 2.2%, EMA120 $77,606.41보다 2.4% 낮아 구조적으로는 반등이 평균선 저항 아래에 갇힌 약세 국면으로 해석된다. 최근 패턴은 evening_star와 bearish_engulfing 2개가 포함되어 있으며, best_pattern_quality는 0.456으로 강한 확정 신호는 아니지만 7일 고점 $78,180.00 부근의 매도 압력을 시사한다. 특히 bull_score가 0인 반면 bear_score는 2.3000으로 캔들 기반 방향성은 명확히 하방 쪽에 기울어 있다. 다만 high_volume_patterns가 없고 패턴들이 모두 candidate 등급이므로, $74,203.60 지지 이탈 전까지는 공격적 추격매도보다 저항 재확인 후 하락 시나리오가 더 적절하다.\",\n  \"key_levels\": {\n    \"support\": [\n      74203.6,\n      73807.11\n    ],\n    \"resistance\": [\n      77465.32,\n      77606.41,\n      78180.0,\n      84216.57\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$78,180.00 일봉 종가 상향 돌파\",\n  \"risk_scenario\": \"$78,180.00을 일봉 종가로 회복하면 최근 bearish engulfing 및 evening star 후보는 실패 신호가 되며, EMA20 $77,465.32와 EMA120 $77,606.41을 재탈환한 상태에서 숏커버링이 발생해 EMA240 $84,216.57까지 반등 폭이 열릴 수 있다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "derivatives": {
      "agent_id": "derivatives",
      "display_name": "Derivatives Trader",
      "signal": "bearish",
      "confidence": 0.64,
      "structure_bias": "bearish",
      "setup_bias": "bearish",
      "setup_score": 0.68,
      "setup_signals": [
        "현재가 $75,742.80가 EMA20 $77,465.32 및 EMA120 $77,606.41 아래에 있어 단기 구조 수용이 약세",
        "CVD 변화가 -1194.7850으로 가격 반등 구간 대비 매수 체결 참여가 약함",
        "24시간 OI가 -0.7030% 감소하여 신규 롱 유입보다 포지션 언와인딩 성격이 강함",
        "롱 계정 비율이 0.573까지 상승했고 24시간 변화도 +0.070으로 롱 쏠림이 증가하는 반면 숏 계정은 0.427로 하락",
        "현물-선물 베이시스가 -0.0454%로 음수이며, 선물 프리미엄 부재가 상승 추세 신뢰도를 낮춤",
        "하방 유동성 클러스터가 $73,900, $72,900, $69,300에 위치해 있으며, 특히 $73,900은 7일 저점 $74,203.60 이탈 시 가까운 타깃"
      ],
      "reasoning": "구조적으로 BTC는 현재 $75,742.80에서 EMA20 $77,465.32와 EMA120 $77,606.41 아래에 머물고 있어 단기 구조는 약세 수용 상태로 판단한다. 파생 포지셔닝은 aggregate_score 0.329, bear_signals 4, bull_signals 0으로 매수 우위가 확인되지 않으며, CVD 변화 -1194.7850과 24시간 OI -0.7030%는 가격 반등을 지지할 신규 참여가 약하다는 신호다. 특히 롱 계정 비율이 0.573으로 상승하고 숏 계정 비율이 0.427로 하락한 점은 가격이 약한데 롱 계정만 늘어나는 형태라 단기적으로 롱 청산 리스크가 크다. 단기 하방은 7일 저점 $74,203.60 및 청산 밀집 $73,900이 1차 타깃이며, 반대로 $77,400~$77,800 상단 유동성을 먼저 스윕할 경우에도 EMA120 $77,606.41 부근에서 재차 매도 반응이 나오는지 확인해야 한다.",
      "key_levels": {
        "support": [
          74203.6,
          73900,
          72900,
          69300
        ],
        "resistance": [
          76600,
          77400,
          77800,
          78180,
          78900
        ]
      },
      "time_horizon": "short term, 약 4-24시간",
      "invalidation_level": "78180",
      "risk_scenario": "$76,600, $77,400, $77,800 상단 청산 구간을 연속적으로 흡수한 뒤 7일 고점 $78,180 위로 안착하면 현재 약세 셋업은 실패한다. 이 경우 숏 커버링이 붙으면서 strongest_liq_level로 제시된 $78,900까지 빠른 상방 유동성 사냥이 나올 수 있다.",
      "data_quality": "medium",
      "metrics": {
        "cvd_divergence": 0.3,
        "cvd_change": -1194.785,
        "oi_trend": 0.43,
        "oi_change_pct_24h": -0.703,
        "oi_latest": 99129.766,
        "funding_pressure": 0.427,
        "funding_avg": 7.327e-05,
        "funding_change_24h": 8.9e-06,
        "long_account_ratio": 0.538,
        "short_account_ratio": 0.462,
        "long_account_latest": 0.573,
        "short_account_latest": 0.427,
        "long_account_change_24h": 0.0697,
        "short_account_change_24h": -0.0697,
        "account_flow_label": "long_accounts_rising_short_accounts_falling",
        "account_short_crowding": 0.0,
        "account_long_crowding": 0.314,
        "ls_imbalance": 0.0,
        "ls_imbalance_interpretation": "high=short-account crowding / low=long-account crowding",
        "spot_futures_basis_score": 0.489,
        "spot_futures_basis_pct": -0.0454,
        "basis_change_lookback": -0.0016,
        "aggregate_score": 0.329,
        "bull_signals": 0,
        "bear_signals": 4,
        "liq_below": [
          [
            73900,
            77134.26551
          ],
          [
            72900,
            78750.34115425
          ],
          [
            69300,
            90841.62750625
          ]
        ],
        "liq_above": [
          [
            76600,
            92466.14983075
          ],
          [
            77400,
            79256.2793483
          ],
          [
            77800,
            105113.9052642
          ]
        ],
        "strongest_liq_level": 78900,
        "fragility_score": 0.573,
        "positioning_extreme": "balanced"
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.64,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.68,\n  \"setup_signals\": [\n    \"현재가 $75,742.80가 EMA20 $77,465.32 및 EMA120 $77,606.41 아래에 있어 단기 구조 수용이 약세\",\n    \"CVD 변화가 -1194.7850으로 가격 반등 구간 대비 매수 체결 참여가 약함\",\n    \"24시간 OI가 -0.7030% 감소하여 신규 롱 유입보다 포지션 언와인딩 성격이 강함\",\n    \"롱 계정 비율이 0.573까지 상승했고 24시간 변화도 +0.070으로 롱 쏠림이 증가하는 반면 숏 계정은 0.427로 하락\",\n    \"현물-선물 베이시스가 -0.0454%로 음수이며, 선물 프리미엄 부재가 상승 추세 신뢰도를 낮춤\",\n    \"하방 유동성 클러스터가 $73,900, $72,900, $69,300에 위치해 있으며, 특히 $73,900은 7일 저점 $74,203.60 이탈 시 가까운 타깃\"\n  ],\n  \"reasoning\": \"구조적으로 BTC는 현재 $75,742.80에서 EMA20 $77,465.32와 EMA120 $77,606.41 아래에 머물고 있어 단기 구조는 약세 수용 상태로 판단한다. 파생 포지셔닝은 aggregate_score 0.329, bear_signals 4, bull_signals 0으로 매수 우위가 확인되지 않으며, CVD 변화 -1194.7850과 24시간 OI -0.7030%는 가격 반등을 지지할 신규 참여가 약하다는 신호다. 특히 롱 계정 비율이 0.573으로 상승하고 숏 계정 비율이 0.427로 하락한 점은 가격이 약한데 롱 계정만 늘어나는 형태라 단기적으로 롱 청산 리스크가 크다. 단기 하방은 7일 저점 $74,203.60 및 청산 밀집 $73,900이 1차 타깃이며, 반대로 $77,400~$77,800 상단 유동성을 먼저 스윕할 경우에도 EMA120 $77,606.41 부근에서 재차 매도 반응이 나오는지 확인해야 한다.\",\n  \"key_levels\": {\n    \"support\": [\n      74203.6,\n      73900,\n      72900,\n      69300\n    ],\n    \"resistance\": [\n      76600,\n      77400,\n      77800,\n      78180,\n      78900\n    ]\n  },\n  \"time_horizon\": \"short term, 약 4-24시간\",\n  \"invalidation_level\": \"78180\",\n  \"risk_scenario\": \"$76,600, $77,400, $77,800 상단 청산 구간을 연속적으로 흡수한 뒤 7일 고점 $78,180 위로 안착하면 현재 약세 셋업은 실패한다. 이 경우 숏 커버링이 붙으면서 strongest_liq_level로 제시된 $78,900까지 빠른 상방 유동성 사냥이 나올 수 있다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "wyckoff": {
      "agent_id": "wyckoff",
      "display_name": "Wyckoff Expert",
      "signal": "neutral",
      "confidence": 0.68,
      "structure_bias": "bullish",
      "setup_bias": "bearish",
      "setup_score": 0.55,
      "setup_signals": [
        "SOS 고점 $82,828.7 이후 현재가 $75,742.8까지 되밀려 SOS 이후 상단 수용이 아직 미확인",
        "현재가가 주 범위 하단/SC $80,600.0 아래에 위치하여 Phase D 강세 구조에도 단기 회복 실패 상태",
        "EMA20 $77,465.32 및 EMA120 $77,606.41 아래에서 거래되어 단기 수요 반응이 약함",
        "TERMINAL_SPRING $74,868.0 바로 위에서 유지 중이나, 이탈 시 재시험/흔들기 위험 확대"
      ],
      "reasoning": "1일 구조는 acc_score 92.5, regime_fitness 0.925, confirmed_acc로 분류되며 SC $80,600 → AR $93,080 → ST $84,408.6 → Spring $65,595.7 → TERMINAL_SPRING $74,868 → SOS $82,828.7의 축적 Phase D 구조가 확인되어 structure_bias는 bullish이다. 다만 현재가 $75,742.8은 SOS $82,828.7 및 SC/주 범위 하단 $80,600 아래로 되밀린 상태라, Phase D 이후의 즉각적인 상방 수용보다는 TERMINAL_SPRING $74,868 재시험 여부가 더 중요하다. 따라서 구조적 해석은 강세 축적이지만, 실행 관점의 setup_bias는 단기적으로 bearish/방어적이며 $80,600 회복 전까지는 중립~약세 경로를 우선한다. $80,600을 회복하고 이후 $82,828.7 위에서 수용되면 SOS의 질이 개선되지만, $74,868 이탈은 Phase D 판독을 약화시키고 $65,595.7 Spring 저점 재검증 위험을 연다.",
      "key_levels": {
        "support": [
          74868.0,
          65595.7
        ],
        "resistance": [
          80600.0,
          82828.7,
          84408.6,
          93080.0
        ]
      },
      "time_horizon": "medium term",
      "invalidation_level": "$65,595.70",
      "risk_scenario": "$74,868.0 TERMINAL_SPRING을 일봉 기준으로 이탈하면 현재 Phase D/SOS 해석은 크게 약화되며, 시장은 $65,595.7 Spring 저점 재시험 또는 더 긴 범위 재구축으로 전환될 수 있다. 반대로 $80,600을 회복하고 $82,828.7 위에서 수용되면 단기 bearish setup은 무효화되고 축적 구조의 상방 테스트가 재개될 가능성이 높아진다.",
      "data_quality": "high",
      "metrics": {
        "acc_score": 92.5,
        "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",
          "TERMINAL_SPRING",
          "SOS"
        ],
        "last_phase": "SOS",
        "phase_candidates": [
          {
            "label": "SC",
            "side": "low",
            "idx": 112,
            "price": 80600.0,
            "color": "#ffd166"
          },
          {
            "label": "AR",
            "side": "high",
            "idx": 119,
            "price": 93080.0,
            "color": "#06d6a0"
          },
          {
            "label": "ST",
            "side": "low",
            "idx": 139,
            "price": 84408.6,
            "color": "#118ab2"
          },
          {
            "label": "Spring",
            "side": "low",
            "idx": 202,
            "price": 65595.7,
            "color": "#f9844a"
          },
          {
            "label": "TERMINAL_SPRING",
            "side": "low",
            "idx": 271,
            "price": 74868.0,
            "color": "#f3722c"
          },
          {
            "label": "SOS",
            "side": "high",
            "idx": 278,
            "price": 82828.7,
            "color": "#06d6a0"
          }
        ],
        "phase_structures": [
          {
            "structure_id": "1d_cycle_1",
            "sequence": 1,
            "timeframe": "1d",
            "regime": "accumulation",
            "role": "current_structure_candidate",
            "is_active": true,
            "is_completed": false,
            "is_confirmed": true,
            "structure_bias": "bullish",
            "phase_context": "accumulation",
            "start_idx": 112,
            "end_idx": 278,
            "phase_count": 6,
            "phases": [
              {
                "label": "SC",
                "side": "low",
                "idx": 112,
                "price": 80600.0,
                "color": "#ffd166",
                "dt": "2025-11-21 09:00:00+09:00"
              },
              {
                "label": "AR",
                "side": "high",
                "idx": 119,
                "price": 93080.0,
                "color": "#06d6a0",
                "dt": "2025-11-28 09:00:00+09:00"
              },
              {
                "label": "ST",
                "side": "low",
                "idx": 139,
                "price": 84408.6,
                "color": "#118ab2",
                "dt": "2025-12-18 09:00:00+09:00"
              },
              {
                "label": "Spring",
                "side": "low",
                "idx": 202,
                "price": 65595.7,
                "color": "#f9844a",
                "dt": "2026-02-19 09:00:00+09:00"
              },
              {
                "label": "TERMINAL_SPRING",
                "side": "low",
                "idx": 271,
                "price": 74868.0,
                "color": "#f3722c",
                "dt": "2026-04-29 09:00:00+09:00"
              },
              {
                "label": "SOS",
                "side": "high",
                "idx": 278,
                "price": 82828.7,
                "color": "#06d6a0",
                "dt": "2026-05-06 09:00:00+09:00"
              }
            ]
          }
        ],
        "active_structure_id": "1d_cycle_1",
        "primary_structure_id": "1d_cycle_1",
        "structure_count": 1,
        "regime_fitness": 0.9249999999999999,
        "current_event": "SOS",
        "major_phase": "D",
        "pos_in_range": 0.5,
        "main_range_low": 80600.0,
        "main_range_high": 93080.0
      },
      "raw_llm_response": "{\n  \"signal\": \"neutral\",\n  \"confidence\": 0.68,\n  \"structure_bias\": \"bullish\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.55,\n  \"setup_signals\": [\n    \"SOS 고점 $82,828.7 이후 현재가 $75,742.8까지 되밀려 SOS 이후 상단 수용이 아직 미확인\",\n    \"현재가가 주 범위 하단/SC $80,600.0 아래에 위치하여 Phase D 강세 구조에도 단기 회복 실패 상태\",\n    \"EMA20 $77,465.32 및 EMA120 $77,606.41 아래에서 거래되어 단기 수요 반응이 약함\",\n    \"TERMINAL_SPRING $74,868.0 바로 위에서 유지 중이나, 이탈 시 재시험/흔들기 위험 확대\"\n  ],\n  \"reasoning\": \"1일 구조는 acc_score 92.5, regime_fitness 0.925, confirmed_acc로 분류되며 SC $80,600 → AR $93,080 → ST $84,408.6 → Spring $65,595.7 → TERMINAL_SPRING $74,868 → SOS $82,828.7의 축적 Phase D 구조가 확인되어 structure_bias는 bullish이다. 다만 현재가 $75,742.8은 SOS $82,828.7 및 SC/주 범위 하단 $80,600 아래로 되밀린 상태라, Phase D 이후의 즉각적인 상방 수용보다는 TERMINAL_SPRING $74,868 재시험 여부가 더 중요하다. 따라서 구조적 해석은 강세 축적이지만, 실행 관점의 setup_bias는 단기적으로 bearish/방어적이며 $80,600 회복 전까지는 중립~약세 경로를 우선한다. $80,600을 회복하고 이후 $82,828.7 위에서 수용되면 SOS의 질이 개선되지만, $74,868 이탈은 Phase D 판독을 약화시키고 $65,595.7 Spring 저점 재검증 위험을 연다.\",\n  \"key_levels\": {\n    \"support\": [\n      74868.0,\n      65595.7\n    ],\n    \"resistance\": [\n      80600.0,\n      82828.7,\n      84408.6,\n      93080.0\n    ]\n  },\n  \"time_horizon\": \"medium term\",\n  \"invalidation_level\": \"$65,595.70\",\n  \"risk_scenario\": \"$74,868.0 TERMINAL_SPRING을 일봉 기준으로 이탈하면 현재 Phase D/SOS 해석은 크게 약화되며, 시장은 $65,595.7 Spring 저점 재시험 또는 더 긴 범위 재구축으로 전환될 수 있다. 반대로 $80,600을 회복하고 $82,828.7 위에서 수용되면 단기 bearish setup은 무효화되고 축적 구조의 상방 테스트가 재개될 가능성이 높아진다.\",\n  \"data_quality\": \"high\"\n}"
    },
    "harmonic": {
      "agent_id": "harmonic",
      "display_name": "Harmonic Specialist",
      "signal": "neutral",
      "confidence": 0.42,
      "structure_bias": "neutral",
      "setup_bias": "bullish",
      "setup_score": 0.58,
      "setup_signals": [
        "현재가 $75,742.80가 고품질 strict bullish Gartley 활성 PRZ $74,594.52-$75,813.87 내부에 위치",
        "bullish Gartley D 예상가 $75,204.19 부근에서 ABCD·BC_EXT·XAD 3개 Fib 패밀리 수렴, PRZ 점수 1.0",
        "동일 스윙 기반 후보 completed bullish Gartley가 $74,122.63-$75,813.61 PRZ에서 반응 확인, AD 0.382 반응 도달 및 D/PRZ 방어 기록",
        "상방 TP 사다리: $76,828.00, $77,831.19, $79,455.00로 PRZ 반등 시 명확한 waypoint 제공",
        "단, best Gartley는 아직 forming 상태이며 confirmed_reaction=false라 구조 전환 신호로는 불충분"
      ],
      "reasoning": "일봉 기준 가장 중요한 패턴은 strict·high 품질의 forming bullish Gartley이며, 현재가 $75,742.80는 활성 PRZ $74,594.52-$75,813.87 안에 있어 단기 반등 후보 구간에 진입해 있다. 이 PRZ는 ABCD, BC extension, XAD가 모두 겹치는 3중 Fib confluence이고 pattern_score 0.909, PRZ score 1.0으로 품질은 높지만, 아직 rejection·MSS/CHoCH·sweep reclaim 같은 확인이 없어 harmonic_vote_state는 pre_confirmation_reversal_candidate에 머문다. 따라서 setup_bias는 bullish이나, 가격이 EMA20 $77,465.32와 EMA120 $77,606.41 아래에 있고 확인된 BOS/CHoCH 정보가 없으므로 structure_bias는 neutral로 둔다. 반등이 확인되면 $76,828.00, $77,831.19, $79,455.00가 Gartley 기반 목표이며, 반대로 $74,594.52 하단 이탈 후 $74,203.60 및 X 저점 $73,669.00까지 밀리면 bullish PRZ 실패 위험이 커진다.",
      "key_levels": {
        "support": [
          74594.52,
          74203.6,
          74122.63,
          73669.0,
          72028.1
        ],
        "resistance": [
          75813.87,
          76014.2,
          76828.0,
          77831.19,
          78180.0,
          79455.0
        ]
      },
      "time_horizon": "medium term",
      "invalidation_level": "일봉 종가 기준 $73,669.00 하향 이탈 시 bullish Gartley/XABCD 반등 셋업 무효",
      "risk_scenario": "PRZ $74,594.52-$75,813.87에서 반등 확인 없이 하단을 이탈하면 harmonic bullish setup은 실패로 전환되며, $74,203.60 저점 재시험 후 $73,669.00 X 저점까지 유동성 사냥이 열릴 수 있다. 반대로 $75,813.87 상단 회복 후 $76,828.00 돌파가 나오면 $77,831.19-$79,455.00까지 반등 확장 가능성이 커진다.",
      "data_quality": "medium",
      "metrics": {
        "patterns_found": 260,
        "completed_patterns_found": 97,
        "forming_d_prz_found": 163,
        "swing_orders_scanned": [
          3,
          5,
          8
        ],
        "swing_search_window": 30,
        "multiscale_swings_scanned": 58,
        "swing_highs_scanned": 29,
        "swing_lows_scanned": 29,
        "timeframe": "1d",
        "prz_active_threshold_pct": 1.0,
        "prz_nearby_threshold_pct": 2.0,
        "prz_watch_threshold_pct": 4.0,
        "prz_max_width_pct": 1.8,
        "quality_counts": {
          "high": 3,
          "medium": 72,
          "low": 185
        },
        "prz_status_counts": {
          "active": 45,
          "nearby": 16,
          "watch": 41,
          "far": 158,
          "forming": 108
        },
        "high_confluence_prz_count": 19,
        "strict_patterns_found": 65,
        "candidate_patterns_found": 195,
        "active_patterns_at_prz": 45,
        "nearby_patterns": 16,
        "all_patterns": [
          "gartley",
          "butterfly",
          "shark",
          "gartley",
          "shark",
          "bat",
          "crab",
          "butterfly",
          "butterfly",
          "shark",
          "gartley",
          "butterfly",
          "bat",
          "butterfly",
          "bat",
          "bat",
          "bat",
          "bat",
          "bat",
          "crab",
          "bat",
          "crab",
          "bat",
          "bat",
          "bat",
          "bat",
          "butterfly",
          "crab",
          "crab",
          "crab",
          "shark",
          "bat",
          "crab",
          "crab",
          "crab",
          "butterfly",
          "crab",
          "shark",
          "gartley",
          "crab",
          "gartley",
          "gartley",
          "bat",
          "crab",
          "gartley",
          "shark",
          "bat",
          "butterfly",
          "butterfly",
          "bat",
          "butterfly",
          "butterfly",
          "crab",
          "butterfly",
          "butterfly",
          "bat",
          "shark",
          "crab",
          "crab",
          "gartley",
          "shark",
          "bat",
          "crab",
          "gartley",
          "shark",
          "crab",
          "shark",
          "butterfly",
          "butterfly",
          "bat",
          "crab",
          "bat",
          "butterfly",
          "shark",
          "gartley",
          "bat",
          "shark",
          "butterfly",
          "crab",
          "crab",
          "shark",
          "bat",
          "butterfly",
          "shark",
          "shark",
          "butterfly",
          "crab",
          "crab",
          "crab",
          "shark",
          "gartley",
          "bat",
          "crab",
          "shark",
          "shark",
          "shark",
          "butterfly",
          "shark",
          "shark",
          "shark",
          "bat",
          "butterfly",
          "crab",
          "bat",
          "crab",
          "gartley",
          "shark",
          "crab",
          "crab",
          "crab",
          "crab",
          "bat",
          "gartley",
          "shark",
          "bat",
          "shark",
          "bat",
          "butterfly",
          "bat",
          "bat",
          "bat",
          "crab",
          "gartley",
          "shark",
          "crab",
          "crab",
          "crab",
          "shark",
          "bat",
          "butterfly",
          "butterfly",
          "crab",
          "bat",
          "bat",
          "bat",
          "shark",
          "bat",
          "crab",
          "butterfly",
          "crab",
          "crab",
          "crab",
          "bat",
          "bat",
          "crab",
          "crab",
          "gartley",
          "bat",
          "shark",
          "butterfly",
          "bat",
          "butterfly",
          "bat",
          "butterfly",
          "crab",
          "shark",
          "bat",
          "crab",
          "crab",
          "gartley",
          "gartley",
          "shark",
          "crab",
          "crab",
          "bat",
          "crab",
          "gartley",
          "shark",
          "bat",
          "butterfly",
          "crab",
          "bat",
          "shark",
          "bat",
          "crab",
          "shark",
          "bat",
          "bat",
          "gartley",
          "shark",
          "butterfly",
          "butterfly",
          "bat",
          "crab",
          "shark",
          "butterfly",
          "bat",
          "bat",
          "bat",
          "crab",
          "butterfly",
          "crab",
          "bat",
          "butterfly",
          "crab",
          "bat",
          "butterfly",
          "gartley",
          "bat",
          "butterfly",
          "butterfly",
          "shark",
          "gartley",
          "bat",
          "crab",
          "shark",
          "crab",
          "crab",
          "shark",
          "butterfly",
          "crab",
          "shark",
          "shark",
          "gartley",
          "crab",
          "bat",
          "bat",
          "bat",
          "butterfly",
          "butterfly",
          "gartley",
          "shark",
          "butterfly",
          "bat",
          "butterfly",
          "shark",
          "crab",
          "butterfly",
          "crab",
          "butterfly",
          "bat",
          "shark",
          "gartley",
          "shark",
          "crab",
          "crab",
          "gartley",
          "shark",
          "shark",
          "bat",
          "bat",
          "crab",
          "bat",
          "crab",
          "crab",
          "butterfly",
          "shark",
          "gartley",
          "butterfly",
          "shark",
          "crab",
          "shark",
          "butterfly",
          "shark",
          "butterfly",
          "bat",
          "shark",
          "crab",
          "crab",
          "shark"
        ],
        "all_signals": [
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish"
        ],
        "best_pattern": "gartley",
        "best_pattern_quality": "strict",
        "best_quality": "high",
        "best_pattern_score": 0.909,
        "best_completion_status": "forming",
        "nearest_pattern": "crab",
        "nearest_prz": 75745.43,
        "price_to_prz": 0.0,
        "prz_range": [
          75410.15,
          76080.71
        ],
        "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.909,
            "ratio_score": 0.862,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 75204.19,
            "prz_range": [
              74594.52,
              75813.87
            ],
            "prz_width_pct": 1.621,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.71,
            "price_to_prz_pct_raw": -0.7111,
            "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": 75204.19,
              "a_price": 79455.0,
              "tp1_ad_382": 76828.0,
              "tp2_ad_618": 77831.19,
              "tp3_a_or_structure_liquidity": 79455.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5947,
              "ABC": 0.6294
            },
            "x_price": 73669.0,
            "x_idx": 262,
            "x_order": 3,
            "a_price": 79455.0,
            "a_idx": 269,
            "a_order": 5,
            "b_price": 76014.2,
            "b_idx": 290,
            "b_order": 3,
            "c_price": 78180.0,
            "c_idx": 293,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.87,
            "ratio_score": 0.968,
            "prz_score": 0.941,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 72849.89,
            "prz_range": [
              72028.1,
              73671.68
            ],
            "prz_width_pct": 2.256,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -3.82,
            "price_to_prz_pct_raw": -3.8194,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 72849.89,
              "a_price": 79455.0,
              "tp1_ad_382": 75373.04,
              "tp2_ad_618": 76931.85,
              "tp3_a_or_structure_liquidity": 79455.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7928,
              "ABC": 0.722
            },
            "x_price": 73669.0,
            "x_idx": 262,
            "x_order": 3,
            "a_price": 79455.0,
            "a_idx": 269,
            "a_order": 5,
            "b_price": 74868.0,
            "b_idx": 271,
            "b_order": 5,
            "c_price": 78180.0,
            "c_idx": 293,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.846,
            "ratio_score": 0.969,
            "prz_score": 0.924,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 72303.79,
            "prz_range": [
              71442.07,
              73165.52
            ],
            "prz_width_pct": 2.384,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -4.54,
            "price_to_prz_pct_raw": -4.5404,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "butterfly",
              "d_price": 72303.79,
              "a_price": 62979.5,
              "tp1_ad_382": 68741.91,
              "tp2_ad_618": 66541.38,
              "tp3_a_or_structure_liquidity": 62979.5,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7926,
              "ABC": 0.5725
            },
            "x_price": 70938.5,
            "x_idx": 198,
            "x_order": 5,
            "a_price": 62979.5,
            "a_idx": 211,
            "a_order": 3,
            "b_price": 69288.0,
            "b_idx": 243,
            "b_order": 3,
            "c_price": 65676.1,
            "c_idx": 244,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.749,
            "ratio_score": 0.583,
            "prz_score": 0.983,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 78891.87,
            "prz_range": [
              78130.63,
              79653.1
            ],
            "prz_width_pct": 1.93,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 4.16,
            "price_to_prz_pct_raw": 4.1576,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "butterfly",
              "d_price": 78891.87,
              "a_price": 67300.0,
              "tp1_ad_382": 74463.77,
              "tp2_ad_618": 71728.09,
              "tp3_a_or_structure_liquidity": 67300.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6966,
              "ABC": 0.6102
            },
            "x_price": 74046.5,
            "x_idx": 215,
            "x_order": 8,
            "a_price": 67300.0,
            "a_idx": 233,
            "a_order": 3,
            "b_price": 71999.9,
            "b_idx": 236,
            "b_order": 5,
            "c_price": 74868.0,
            "c_idx": 271,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "shark",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.715,
            "ratio_score": 0.57,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 78180.0,
            "prz_range": [
              77355.12,
              78703.8
            ],
            "prz_width_pct": 1.728,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 3.02,
            "price_to_prz_pct_raw": 3.019,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.236_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 0.95,
              "reaction_detail": {
                "reaction_score": 0.95,
                "reaction_move_ratio_ad": 0.3,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 6,
                "reasons": [
                  "AD0.236_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "shark",
              "d_price": 78029.46,
              "a_price": 64918.2,
              "tp1_ad_382": 73020.96,
              "tp2_ad_618": 69926.7,
              "tp3_a_or_structure_liquidity": 64918.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.3944,
              "ABC": 1.0026,
              "BCD": 1.0297,
              "XAD": 1.1968
            },
            "x_price": 75998.9,
            "x_idx": 228,
            "x_order": 8,
            "a_price": 64918.2,
            "a_idx": 240,
            "a_order": 8,
            "b_price": 69288.0,
            "b_idx": 243,
            "b_order": 3,
            "c_price": 73669.0,
            "c_idx": 262,
            "c_order": 3,
            "d_idx": 293
          },
          {
            "pattern": "butterfly",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.668,
            "ratio_score": 0.528,
            "prz_score": 0.977,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 78180.0,
            "prz_range": [
              78094.82,
              79653.08
            ],
            "prz_width_pct": 1.976,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 4.13,
            "price_to_prz_pct_raw": 4.1339,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.236_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 0.95,
              "reaction_detail": {
                "reaction_score": 0.95,
                "reaction_move_ratio_ad": 0.365,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 6,
                "reasons": [
                  "AD0.236_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "butterfly",
              "d_price": 78873.95,
              "a_price": 67300.0,
              "tp1_ad_382": 74452.7,
              "tp2_ad_618": 71721.25,
              "tp3_a_or_structure_liquidity": 67300.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6966,
              "ABC": 0.6102,
              "BCD": 1.1548,
              "XAD": 1.6127
            },
            "x_price": 74046.5,
            "x_idx": 215,
            "x_order": 8,
            "a_price": 67300.0,
            "a_idx": 233,
            "a_order": 3,
            "b_price": 71999.9,
            "b_idx": 236,
            "b_order": 5,
            "c_price": 74868.0,
            "c_idx": 271,
            "c_order": 5,
            "d_idx": 293
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.645,
            "ratio_score": 0.383,
            "prz_score": 0.941,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 74203.6,
            "prz_range": [
              74122.63,
              75813.61
            ],
            "prz_width_pct": 2.256,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.02,
            "price_to_prz_pct_raw": -1.0228,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 0.738,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 4,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 74968.12,
              "a_price": 79455.0,
              "tp1_ad_382": 76682.11,
              "tp2_ad_618": 77741.01,
              "tp3_a_or_structure_liquidity": 79455.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5947,
              "ABC": 0.6294,
              "BCD": 1.836,
              "XAD": 0.9076
            },
            "x_price": 73669.0,
            "x_idx": 262,
            "x_order": 3,
            "a_price": 79455.0,
            "a_idx": 269,
            "a_order": 5,
            "b_price": 76014.2,
            "b_idx": 290,
            "b_order": 3,
            "c_price": 78180.0,
            "c_idx": 293,
            "c_order": 3,
            "d_idx": 295
          },
          {
            "pattern": "butterfly",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "low",
            "pattern_score": 0.596,
            "ratio_score": 0.366,
            "prz_score": 0.983,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 71999.9,
            "prz_range": [
              71921.47,
              73321.87
            ],
            "prz_width_pct": 1.928,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -4.12,
            "price_to_prz_pct_raw": -4.1207,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 0.738,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "butterfly",
              "d_price": 72621.67,
              "a_price": 62401.7,
              "tp1_ad_382": 68717.64,
              "tp2_ad_618": 66305.73,
              "tp3_a_or_structure_liquidity": 62401.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.8899,
              "ABC": 0.5831,
              "BCD": 1.4517,
              "XAD": 1.1243
            },
            "x_price": 70938.5,
            "x_idx": 198,
            "x_order": 5,
            "a_price": 62401.7,
            "a_idx": 207,
            "a_order": 8,
            "b_price": 69999.0,
            "b_idx": 208,
            "b_order": 3,
            "c_price": 65569.2,
            "c_idx": 219,
            "c_order": 5,
            "d_idx": 236
          }
        ],
        "council_relevant_prz": [
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.909,
            "ratio_score": 0.862,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 75204.19,
            "prz_range": [
              74594.52,
              75813.87
            ],
            "prz_width_pct": 1.621,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.71,
            "price_to_prz_pct_raw": -0.7111,
            "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": 75204.19,
              "a_price": 79455.0,
              "tp1_ad_382": 76828.0,
              "tp2_ad_618": 77831.19,
              "tp3_a_or_structure_liquidity": 79455.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5947,
              "ABC": 0.6294
            },
            "x_price": 73669.0,
            "x_idx": 262,
            "x_order": 3,
            "a_price": 79455.0,
            "a_idx": 269,
            "a_order": 5,
            "b_price": 76014.2,
            "b_idx": 290,
            "b_order": 3,
            "c_price": 78180.0,
            "c_idx": 293,
            "c_order": 3,
            "d_idx": null
          }
        ],
        "report_detail_candidates": [
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.909,
            "ratio_score": 0.862,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 75204.19,
            "prz_range": [
              74594.52,
              75813.87
            ],
            "prz_width_pct": 1.621,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.71,
            "price_to_prz_pct_raw": -0.7111,
            "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": 75204.19,
              "a_price": 79455.0,
              "tp1_ad_382": 76828.0,
              "tp2_ad_618": 77831.19,
              "tp3_a_or_structure_liquidity": 79455.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5947,
              "ABC": 0.6294
            },
            "x_price": 73669.0,
            "x_idx": 262,
            "x_order": 3,
            "a_price": 79455.0,
            "a_idx": 269,
            "a_order": 5,
            "b_price": 76014.2,
            "b_idx": 290,
            "b_order": 3,
            "c_price": 78180.0,
            "c_idx": 293,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.87,
            "ratio_score": 0.968,
            "prz_score": 0.941,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 72849.89,
            "prz_range": [
              72028.1,
              73671.68
            ],
            "prz_width_pct": 2.256,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -3.82,
            "price_to_prz_pct_raw": -3.8194,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 72849.89,
              "a_price": 79455.0,
              "tp1_ad_382": 75373.04,
              "tp2_ad_618": 76931.85,
              "tp3_a_or_structure_liquidity": 79455.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7928,
              "ABC": 0.722
            },
            "x_price": 73669.0,
            "x_idx": 262,
            "x_order": 3,
            "a_price": 79455.0,
            "a_idx": 269,
            "a_order": 5,
            "b_price": 74868.0,
            "b_idx": 271,
            "b_order": 5,
            "c_price": 78180.0,
            "c_idx": 293,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.846,
            "ratio_score": 0.969,
            "prz_score": 0.924,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 72303.79,
            "prz_range": [
              71442.07,
              73165.52
            ],
            "prz_width_pct": 2.384,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -4.54,
            "price_to_prz_pct_raw": -4.5404,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "butterfly",
              "d_price": 72303.79,
              "a_price": 62979.5,
              "tp1_ad_382": 68741.91,
              "tp2_ad_618": 66541.38,
              "tp3_a_or_structure_liquidity": 62979.5,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7926,
              "ABC": 0.5725
            },
            "x_price": 70938.5,
            "x_idx": 198,
            "x_order": 5,
            "a_price": 62979.5,
            "a_idx": 211,
            "a_order": 3,
            "b_price": 69288.0,
            "b_idx": 243,
            "b_order": 3,
            "c_price": 65676.1,
            "c_idx": 244,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.749,
            "ratio_score": 0.583,
            "prz_score": 0.983,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 78891.87,
            "prz_range": [
              78130.63,
              79653.1
            ],
            "prz_width_pct": 1.93,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 4.16,
            "price_to_prz_pct_raw": 4.1576,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "butterfly",
              "d_price": 78891.87,
              "a_price": 67300.0,
              "tp1_ad_382": 74463.77,
              "tp2_ad_618": 71728.09,
              "tp3_a_or_structure_liquidity": 67300.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6966,
              "ABC": 0.6102
            },
            "x_price": 74046.5,
            "x_idx": 215,
            "x_order": 8,
            "a_price": 67300.0,
            "a_idx": 233,
            "a_order": 3,
            "b_price": 71999.9,
            "b_idx": 236,
            "b_order": 5,
            "c_price": 74868.0,
            "c_idx": 271,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "shark",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.715,
            "ratio_score": 0.57,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 78180.0,
            "prz_range": [
              77355.12,
              78703.8
            ],
            "prz_width_pct": 1.728,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 3.02,
            "price_to_prz_pct_raw": 3.019,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.236_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 0.95,
              "reaction_detail": {
                "reaction_score": 0.95,
                "reaction_move_ratio_ad": 0.3,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 6,
                "reasons": [
                  "AD0.236_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "shark",
              "d_price": 78029.46,
              "a_price": 64918.2,
              "tp1_ad_382": 73020.96,
              "tp2_ad_618": 69926.7,
              "tp3_a_or_structure_liquidity": 64918.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.3944,
              "ABC": 1.0026,
              "BCD": 1.0297,
              "XAD": 1.1968
            },
            "x_price": 75998.9,
            "x_idx": 228,
            "x_order": 8,
            "a_price": 64918.2,
            "a_idx": 240,
            "a_order": 8,
            "b_price": 69288.0,
            "b_idx": 243,
            "b_order": 3,
            "c_price": 73669.0,
            "c_idx": 262,
            "c_order": 3,
            "d_idx": 293
          },
          {
            "pattern": "butterfly",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.668,
            "ratio_score": 0.528,
            "prz_score": 0.977,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 78180.0,
            "prz_range": [
              78094.82,
              79653.08
            ],
            "prz_width_pct": 1.976,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 4.13,
            "price_to_prz_pct_raw": 4.1339,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.236_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 0.95,
              "reaction_detail": {
                "reaction_score": 0.95,
                "reaction_move_ratio_ad": 0.365,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 6,
                "reasons": [
                  "AD0.236_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "butterfly",
              "d_price": 78873.95,
              "a_price": 67300.0,
              "tp1_ad_382": 74452.7,
              "tp2_ad_618": 71721.25,
              "tp3_a_or_structure_liquidity": 67300.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6966,
              "ABC": 0.6102,
              "BCD": 1.1548,
              "XAD": 1.6127
            },
            "x_price": 74046.5,
            "x_idx": 215,
            "x_order": 8,
            "a_price": 67300.0,
            "a_idx": 233,
            "a_order": 3,
            "b_price": 71999.9,
            "b_idx": 236,
            "b_order": 5,
            "c_price": 74868.0,
            "c_idx": 271,
            "c_order": 5,
            "d_idx": 293
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.645,
            "ratio_score": 0.383,
            "prz_score": 0.941,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 74203.6,
            "prz_range": [
              74122.63,
              75813.61
            ],
            "prz_width_pct": 2.256,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.02,
            "price_to_prz_pct_raw": -1.0228,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 0.738,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 4,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 74968.12,
              "a_price": 79455.0,
              "tp1_ad_382": 76682.11,
              "tp2_ad_618": 77741.01,
              "tp3_a_or_structure_liquidity": 79455.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5947,
              "ABC": 0.6294,
              "BCD": 1.836,
              "XAD": 0.9076
            },
            "x_price": 73669.0,
            "x_idx": 262,
            "x_order": 3,
            "a_price": 79455.0,
            "a_idx": 269,
            "a_order": 5,
            "b_price": 76014.2,
            "b_idx": 290,
            "b_order": 3,
            "c_price": 78180.0,
            "c_idx": 293,
            "c_order": 3,
            "d_idx": 295
          },
          {
            "pattern": "butterfly",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "low",
            "pattern_score": 0.596,
            "ratio_score": 0.366,
            "prz_score": 0.983,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 71999.9,
            "prz_range": [
              71921.47,
              73321.87
            ],
            "prz_width_pct": 1.928,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -4.12,
            "price_to_prz_pct_raw": -4.1207,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 0.738,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "butterfly",
              "d_price": 72621.67,
              "a_price": 62401.7,
              "tp1_ad_382": 68717.64,
              "tp2_ad_618": 66305.73,
              "tp3_a_or_structure_liquidity": 62401.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.8899,
              "ABC": 0.5831,
              "BCD": 1.4517,
              "XAD": 1.1243
            },
            "x_price": 70938.5,
            "x_idx": 198,
            "x_order": 5,
            "a_price": 62401.7,
            "a_idx": 207,
            "a_order": 8,
            "b_price": 69999.0,
            "b_idx": 208,
            "b_order": 3,
            "c_price": 65569.2,
            "c_idx": 219,
            "c_order": 5,
            "d_idx": 236
          },
          {
            "pattern": "shark",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.865,
            "ratio_score": 1.0,
            "prz_score": 0.783,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 74874.67,
            "prz_range": [
              74356.58,
              75392.76
            ],
            "prz_width_pct": 1.384,
            "prz_confluence_count": 2,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT"
            ],
            "price_to_prz_pct": -1.15,
            "price_to_prz_pct_raw": -1.1462,
            "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": "shark",
              "d_price": 74874.67,
              "a_price": 71999.9,
              "tp1_ad_382": 73776.51,
              "tp2_ad_618": 73098.06,
              "tp3_a_or_structure_liquidity": 71999.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.446,
              "ABC": 1.1548
            },
            "x_price": 65569.2,
            "x_idx": 219,
            "x_order": 5,
            "a_price": 71999.9,
            "a_idx": 236,
            "a_order": 5,
            "b_price": 74868.0,
            "b_idx": 271,
            "b_order": 5,
            "c_price": 78180.0,
            "c_idx": 293,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "shark",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.857,
            "ratio_score": 0.94,
            "prz_score": 0.798,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 76349.56,
            "prz_range": [
              75066.09,
              77633.02
            ],
            "prz_width_pct": 3.362,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.8,
            "price_to_prz_pct_raw": 0.8011,
            "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": "shark",
              "d_price": 76349.56,
              "a_price": 65569.2,
              "tp1_ad_382": 72231.46,
              "tp2_ad_618": 69687.3,
              "tp3_a_or_structure_liquidity": 65569.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4387,
              "ABC": 1.1781
            },
            "x_price": 74046.5,
            "x_idx": 215,
            "x_order": 8,
            "a_price": 65569.2,
            "a_idx": 219,
            "a_order": 5,
            "b_price": 69288.0,
            "b_idx": 243,
            "b_order": 3,
            "c_price": 73669.0,
            "c_idx": 262,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.851,
            "ratio_score": 1.0,
            "prz_score": 0.783,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 74933.88,
            "prz_range": [
              74654.77,
              75212.98
            ],
            "prz_width_pct": 0.745,
            "prz_confluence_count": 2,
            "prz_fib_families": [
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.07,
            "price_to_prz_pct_raw": -1.068,
            "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": 74933.88,
              "a_price": 64918.2,
              "tp1_ad_382": 71107.89,
              "tp2_ad_618": 68744.19,
              "tp3_a_or_structure_liquidity": 64918.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.3944,
              "ABC": 0.8266
            },
            "x_price": 75998.9,
            "x_idx": 228,
            "x_order": 8,
            "a_price": 64918.2,
            "a_idx": 240,
            "a_order": 8,
            "b_price": 69288.0,
            "b_idx": 243,
            "b_order": 3,
            "c_price": 65676.1,
            "c_idx": 244,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "shark",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.838,
            "ratio_score": 1.0,
            "prz_score": 0.827,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": false,
            "d_price": 78663.74,
            "prz_range": [
              77430.64,
              79896.84
            ],
            "prz_width_pct": 3.135,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 3.86,
            "price_to_prz_pct_raw": 3.8564,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "shark",
              "d_price": 78663.74,
              "a_price": 74868.0,
              "tp1_ad_382": 77213.77,
              "tp2_ad_618": 76317.97,
              "tp3_a_or_structure_liquidity": 74868.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5935,
              "ABC": 1.2006
            },
            "x_price": 69288.0,
            "x_idx": 243,
            "x_order": 3,
            "a_price": 74868.0,
            "a_idx": 271,
            "a_order": 5,
            "b_price": 78180.0,
            "b_idx": 293,
            "b_order": 3,
            "c_price": 74203.6,
            "c_idx": 295,
            "c_order": 3,
            "d_idx": null
          }
        ],
        "actionable_patterns_list": [
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.909,
            "prz_proximity": "active",
            "prz_range": [
              74594.52,
              75813.87
            ],
            "prz_reversal_direction": "up",
            "price_to_prz_pct": -0.71,
            "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": 75204.19,
              "a_price": 79455.0,
              "tp1_ad_382": 76828.0,
              "tp2_ad_618": 77831.19,
              "tp3_a_or_structure_liquidity": 79455.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "GARTLEY FORMING HIGH PRZ $74,594.52-$75,813.87: 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.909,
          "ratio_score": 0.862,
          "prz_score": 1.0,
          "prz_proximity": "active",
          "action_status": "active",
          "high_confluence_prz": true,
          "d_price": 75204.19,
          "prz_range": [
            74594.52,
            75813.87
          ],
          "prz_width_pct": 1.621,
          "prz_confluence_count": 3,
          "prz_fib_families": [
            "ABCD",
            "BC_EXT",
            "XAD"
          ],
          "price_to_prz_pct": -0.71,
          "price_to_prz_pct_raw": -0.7111,
          "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": 75204.19,
            "a_price": 79455.0,
            "tp1_ad_382": 76828.0,
            "tp2_ad_618": 77831.19,
            "tp3_a_or_structure_liquidity": 79455.0,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          "ratios": {
            "XAB": 0.5947,
            "ABC": 0.6294
          },
          "x_price": 73669.0,
          "x_idx": 262,
          "x_order": 3,
          "a_price": 79455.0,
          "a_idx": 269,
          "a_order": 5,
          "b_price": 76014.2,
          "b_idx": 290,
          "b_order": 3,
          "c_price": 78180.0,
          "c_idx": 293,
          "c_order": 3,
          "d_idx": null
        },
        "best_tp_ladder": {
          "direction": "bullish",
          "source": "gartley",
          "d_price": 75204.19,
          "a_price": 79455.0,
          "tp1_ad_382": 76828.0,
          "tp2_ad_618": 77831.19,
          "tp3_a_or_structure_liquidity": 79455.0,
          "note": "Use as strong TP ladder context; not standalone path authority."
        },
        "tp_ladder": [
          {
            "direction": "bullish",
            "source": "gartley",
            "d_price": 75204.19,
            "a_price": 79455.0,
            "tp1_ad_382": 76828.0,
            "tp2_ad_618": 77831.19,
            "tp3_a_or_structure_liquidity": 79455.0,
            "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.192,
          "bearish": 0
        },
        "directional_score_total": 0.192,
        "directional_dominance": 1.0
      },
      "raw_llm_response": "{\n  \"signal\": \"neutral\",\n  \"confidence\": 0.42,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.58,\n  \"setup_signals\": [\n    \"현재가 $75,742.80가 고품질 strict bullish Gartley 활성 PRZ $74,594.52-$75,813.87 내부에 위치\",\n    \"bullish Gartley D 예상가 $75,204.19 부근에서 ABCD·BC_EXT·XAD 3개 Fib 패밀리 수렴, PRZ 점수 1.0\",\n    \"동일 스윙 기반 후보 completed bullish Gartley가 $74,122.63-$75,813.61 PRZ에서 반응 확인, AD 0.382 반응 도달 및 D/PRZ 방어 기록\",\n    \"상방 TP 사다리: $76,828.00, $77,831.19, $79,455.00로 PRZ 반등 시 명확한 waypoint 제공\",\n    \"단, best Gartley는 아직 forming 상태이며 confirmed_reaction=false라 구조 전환 신호로는 불충분\"\n  ],\n  \"reasoning\": \"일봉 기준 가장 중요한 패턴은 strict·high 품질의 forming bullish Gartley이며, 현재가 $75,742.80는 활성 PRZ $74,594.52-$75,813.87 안에 있어 단기 반등 후보 구간에 진입해 있다. 이 PRZ는 ABCD, BC extension, XAD가 모두 겹치는 3중 Fib confluence이고 pattern_score 0.909, PRZ score 1.0으로 품질은 높지만, 아직 rejection·MSS/CHoCH·sweep reclaim 같은 확인이 없어 harmonic_vote_state는 pre_confirmation_reversal_candidate에 머문다. 따라서 setup_bias는 bullish이나, 가격이 EMA20 $77,465.32와 EMA120 $77,606.41 아래에 있고 확인된 BOS/CHoCH 정보가 없으므로 structure_bias는 neutral로 둔다. 반등이 확인되면 $76,828.00, $77,831.19, $79,455.00가 Gartley 기반 목표이며, 반대로 $74,594.52 하단 이탈 후 $74,203.60 및 X 저점 $73,669.00까지 밀리면 bullish PRZ 실패 위험이 커진다.\",\n  \"key_levels\": {\n    \"support\": [\n      74594.52,\n      74203.6,\n      74122.63,\n      73669.0,\n      72028.1\n    ],\n    \"resistance\": [\n      75813.87,\n      76014.2,\n      76828.0,\n      77831.19,\n      78180.0,\n      79455.0\n    ]\n  },\n  \"time_horizon\": \"medium term\",\n  \"invalidation_level\": \"일봉 종가 기준 $73,669.00 하향 이탈 시 bullish Gartley/XABCD 반등 셋업 무효\",\n  \"risk_scenario\": \"PRZ $74,594.52-$75,813.87에서 반등 확인 없이 하단을 이탈하면 harmonic bullish setup은 실패로 전환되며, $74,203.60 저점 재시험 후 $73,669.00 X 저점까지 유동성 사냥이 열릴 수 있다. 반대로 $75,813.87 상단 회복 후 $76,828.00 돌파가 나오면 $77,831.19-$79,455.00까지 반등 확장 가능성이 커진다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "fibonacci": {
      "agent_id": "fibonacci",
      "display_name": "Fibonacci Analyst",
      "signal": "bearish",
      "confidence": 0.58,
      "structure_bias": "neutral",
      "setup_bias": "bearish",
      "setup_score": 0.62,
      "setup_signals": [
        "가격이 0.786 되돌림 $76,571.59 아래에 위치하여 상승 스윙 $74,868→$82,829의 깊은 되돌림 구간에 진입",
        "핵심 황금비 0.618 레벨 $77,908.99를 회복하지 못한 상태로, 고확률 반등 구간이 현재 저항으로 전환",
        "현재가 $75,742.80는 EQ/0.5 되돌림 $78,848.35 아래의 디스카운트 영역이나, 지지 레벨 후보가 비어 있어 반등 확인 부족",
        "EMA20 $77,465.32 및 EMA120 $77,606.41 아래에서 거래되어 단기·중기 평균 회복 실패",
        "상단 저항이 $76,571.59, $77,908.99, $78,848.35로 촘촘하게 배열되어 반등 시 매도 압력 구간 형성"
      ],
      "reasoning": "현재 BTC/USDT는 상승 스윙 $74,868→$82,829 기준으로 0.786 되돌림 $76,571.59 아래에 있으며, 이는 상승 구조가 아직 완전히 붕괴되지는 않았지만 상당히 약화된 상태를 의미한다. 특히 최고 확률 반응 구간인 0.618 황금비 $77,908.99를 하향 이탈한 뒤 회복하지 못하고 있어, 해당 레벨은 단기 핵심 저항으로 작용한다. 구조적으로는 스윙 저점 $74,868이 아직 명확히 이탈되지 않았으므로 확정 bearish BOS로 보기는 어렵고 structure_bias는 neutral이지만, 셋업 관점에서는 $76,571.59 회복 실패 시 저점 재시험 가능성이 높다. 상방으로는 $78,848.35의 0.5 되돌림과 $85,081.03 부근의 confluence zone이 있으나, 현재가 대비 각각 4.1% 및 약 12% 이상 떨어져 있어 당장 도달 가능성은 낮다.",
      "key_levels": {
        "support": [
          74868.0
        ],
        "resistance": [
          76571.59,
          77908.99,
          78848.35,
          79787.71,
          80949.97,
          82828.7,
          85081.03
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "76571.59",
      "risk_scenario": "$76,571.59의 0.786 되돌림을 강하게 회복하고 그 위에서 종가 안착할 경우, 현재 bearish 셋업은 약화되며 $77,908.99의 0.618 황금비와 $78,848.35의 EQ/0.5 되돌림까지 숏커버성 반등이 전개될 수 있다. 반대로 $74,868 스윙 저점을 이탈하면 상승 스윙 자체가 무효화되며 구조적 bearish 전환 가능성이 커진다.",
      "data_quality": "medium",
      "metrics": {
        "swing_pair": "Low→High: $74,868 → $82,829",
        "direction": "up",
        "nearest_fib": "ret_0.786",
        "nearest_fib_price": 76571.59,
        "nearest_fib_distance": 1.09,
        "golden_ratio_level": 77908.99,
        "fib_ret_382": 79787.71,
        "fib_ret_618": 77908.99,
        "confluence_zones": [
          {
            "price": 85081.03,
            "count": 2,
            "levels": [
              "ext_1.272",
              "ret_0.382"
            ],
            "cluster_score": 0.6
          }
        ],
        "support_levels": [],
        "resistance_levels": [
          76571.5898,
          77908.9874,
          78848.35
        ],
        "level_candidates": [
          {
            "name": "ret_0.236",
            "price": 80949.97,
            "distance_pct": 6.87,
            "is_support": false,
            "cluster_score": 0.0
          },
          {
            "name": "ret_0.382",
            "price": 79787.71,
            "distance_pct": 5.34,
            "is_support": false,
            "cluster_score": 0.0
          },
          {
            "name": "ret_0.5",
            "price": 78848.35,
            "distance_pct": 4.1,
            "is_support": false,
            "cluster_score": 0.0
          },
          {
            "name": "ret_0.618",
            "price": 77908.99,
            "distance_pct": 2.86,
            "is_support": false,
            "cluster_score": 0.0
          },
          {
            "name": "ret_0.786",
            "price": 76571.59,
            "distance_pct": 1.09,
            "is_support": false,
            "cluster_score": 0.0
          },
          {
            "name": "ext_1.0",
            "price": 82828.7,
            "distance_pct": 9.36,
            "is_support": false,
            "cluster_score": 0.0
          },
          {
            "name": "ext_1.272",
            "price": 84994.01,
            "distance_pct": 12.21,
            "is_support": false,
            "cluster_score": 0.6
          },
          {
            "name": "ext_1.414",
            "price": 86124.43,
            "distance_pct": 13.71,
            "is_support": false,
            "cluster_score": 0.0
          },
          {
            "name": "ext_1.618",
            "price": 87748.41,
            "distance_pct": 15.85,
            "is_support": false,
            "cluster_score": 0.0
          },
          {
            "name": "ext_2.0",
            "price": 90789.4,
            "distance_pct": 19.87,
            "is_support": false,
            "cluster_score": 0.0
          }
        ],
        "confluence_quality": 0.6,
        "fib_reaction_state": "approaching",
        "reaction_probability": 0.45
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.58,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.62,\n  \"setup_signals\": [\n    \"가격이 0.786 되돌림 $76,571.59 아래에 위치하여 상승 스윙 $74,868→$82,829의 깊은 되돌림 구간에 진입\",\n    \"핵심 황금비 0.618 레벨 $77,908.99를 회복하지 못한 상태로, 고확률 반등 구간이 현재 저항으로 전환\",\n    \"현재가 $75,742.80는 EQ/0.5 되돌림 $78,848.35 아래의 디스카운트 영역이나, 지지 레벨 후보가 비어 있어 반등 확인 부족\",\n    \"EMA20 $77,465.32 및 EMA120 $77,606.41 아래에서 거래되어 단기·중기 평균 회복 실패\",\n    \"상단 저항이 $76,571.59, $77,908.99, $78,848.35로 촘촘하게 배열되어 반등 시 매도 압력 구간 형성\"\n  ],\n  \"reasoning\": \"현재 BTC/USDT는 상승 스윙 $74,868→$82,829 기준으로 0.786 되돌림 $76,571.59 아래에 있으며, 이는 상승 구조가 아직 완전히 붕괴되지는 않았지만 상당히 약화된 상태를 의미한다. 특히 최고 확률 반응 구간인 0.618 황금비 $77,908.99를 하향 이탈한 뒤 회복하지 못하고 있어, 해당 레벨은 단기 핵심 저항으로 작용한다. 구조적으로는 스윙 저점 $74,868이 아직 명확히 이탈되지 않았으므로 확정 bearish BOS로 보기는 어렵고 structure_bias는 neutral이지만, 셋업 관점에서는 $76,571.59 회복 실패 시 저점 재시험 가능성이 높다. 상방으로는 $78,848.35의 0.5 되돌림과 $85,081.03 부근의 confluence zone이 있으나, 현재가 대비 각각 4.1% 및 약 12% 이상 떨어져 있어 당장 도달 가능성은 낮다.\",\n  \"key_levels\": {\n    \"support\": [\n      74868.0\n    ],\n    \"resistance\": [\n      76571.59,\n      77908.99,\n      78848.35,\n      79787.71,\n      80949.97,\n      82828.7,\n      85081.03\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"76571.59\",\n  \"risk_scenario\": \"$76,571.59의 0.786 되돌림을 강하게 회복하고 그 위에서 종가 안착할 경우, 현재 bearish 셋업은 약화되며 $77,908.99의 0.618 황금비와 $78,848.35의 EQ/0.5 되돌림까지 숏커버성 반등이 전개될 수 있다. 반대로 $74,868 스윙 저점을 이탈하면 상승 스윙 자체가 무효화되며 구조적 bearish 전환 가능성이 커진다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "ict": {
      "agent_id": "ict",
      "display_name": "ICT Trader",
      "signal": "neutral",
      "confidence": 0.52,
      "structure_bias": "bullish",
      "setup_bias": "neutral",
      "setup_score": 0.35,
      "setup_signals": [
        "현재가 $75,742.80는 EQ $76,628.35 아래의 discount 구간에 위치",
        "전일 저점 $75,641.20은 하향 이탈되었으나 현재가가 재상단에 있어 단기 sell-side liquidity 회수 가능성 존재",
        "최근 확인된 구조 이벤트는 $75,998.90 상방 BOS이나 현재가는 해당 레벨 아래에 있어 강한 구조 수용은 미확인",
        "활성 bullish/bearish OB 없음, 미충족 FVG 없음으로 기관형 명확한 배열 타깃 부족",
        "EMA20 $77,465.32 및 EMA120 $77,606.41 아래에서 거래되어 단기 반등 setup의 추세 확인 부족"
      ],
      "reasoning": "확인된 마지막 구조 이벤트는 $75,998.90 상방 BOS이므로 structure_bias는 약한 bullish로 본다. 다만 현재가 $75,742.80는 해당 BOS 레벨 아래이며, EQ $76,628.35 아래 discount에 있어 매수 관점의 위치는 좋지만 아직 구조적 수용이 부족하다. 전일 저점 $75,641.20이 깨진 뒤 회복을 시도하는 모습은 sell-side liquidity 회수 후보지만, recent_liq_sweeps가 비어 있어 확정 sweep으로 보기는 어렵다. OB와 미충족 FVG가 모두 0개이므로 기관 주문흐름상 명확한 자석 구간이 부족하며, bull_score 7.5와 bear_score 7.7도 거의 균형이라 최종 signal은 neutral이다.",
      "key_levels": {
        "support": [
          75641.2,
          74203.6,
          70428.0
        ],
        "resistance": [
          75998.9,
          76628.35,
          78077.1,
          78180.0,
          82828.7
        ]
      },
      "time_horizon": "short/medium term",
      "invalidation_level": "$70,428.00",
      "risk_scenario": "반대 시나리오로 가격이 $75,998.90 BOS 레벨을 회복하지 못하고 전일 저점 $75,641.20 아래에서 일봉 종가를 만들면, discount 매수 setup은 실패로 보고 $74,203.60 및 range low $70,428.00까지 sell-side liquidity 재탐색이 열릴 수 있다. 반대로 $78,180.00 7일 고점을 강하게 돌파하고 수용하면 neutral 신호는 bullish continuation으로 전환될 가능성이 높다.",
      "data_quality": "medium",
      "metrics": {
        "order_blocks_total": 0,
        "confirmed_bullish_ob": 0,
        "confirmed_bearish_ob": 0,
        "candidate_bullish_ob": 0,
        "candidate_bearish_ob": 0,
        "active_bullish_ob": 0,
        "active_bearish_ob": 0,
        "nearest_bull_ob_range": null,
        "nearest_bear_ob_range": null,
        "active_bullish_ob_list": [],
        "active_bearish_ob_list": [],
        "ob_mitigated_count": 1,
        "unfilled_bull_fvg_count": 0,
        "unfilled_bear_fvg_count": 0,
        "bull_fvg_ranges": [],
        "bear_fvg_ranges": [],
        "fvg_open_count": 0,
        "fvg_mitigated_count": 67,
        "fvg_open_zones": [],
        "bos_choch_events": [
          "BOS_bullish",
          "CHoCH_bearish",
          "BOS_bearish",
          "BOS_bullish",
          "CHoCH_bearish",
          "BOS_bullish"
        ],
        "bos_choch_levels": [
          {
            "type": "BOS_bullish",
            "level": 117875.2
          },
          {
            "type": "CHoCH_bearish",
            "level": 108566.0
          },
          {
            "type": "BOS_bearish",
            "level": 101516.5
          },
          {
            "type": "BOS_bullish",
            "level": 94555.0
          },
          {
            "type": "CHoCH_bearish",
            "level": 84408.6
          },
          {
            "type": "BOS_bullish",
            "level": 75998.9
          }
        ],
        "bos_sequence": [
          "BOS_bullish",
          "CHoCH_bearish",
          "BOS_bearish",
          "BOS_bullish",
          "CHoCH_bearish",
          "BOS_bullish"
        ],
        "consecutive_bull_bos": 1,
        "consecutive_bear_bos": 0,
        "recent_liq_sweeps": [],
        "recent_sweep_levels": [],
        "liquidity_resting": [],
        "current_zone": "discount",
        "eq_level": 76628.35,
        "range_high": 82828.7,
        "range_low": 70428.0,
        "bull_score": 7.5,
        "bear_score": 7.7,
        "setup_bias": "neutral",
        "setup_score": 0.35,
        "setup_signals": [
          "bullish BOS above $117,875.20",
          "bullish BOS above $94,555.00",
          "bearish CHoCH below $108,566.00",
          "bearish BOS below $101,516.50"
        ],
        "retracement_direction": "bullish",
        "current_retracement_pct": 40.1,
        "deepest_retracement_pct": 48.2,
        "previous_day_high": 78077.1,
        "previous_day_low": 75641.2,
        "broken_prev_high": false,
        "broken_prev_low": true,
        "sessions": {}
      },
      "raw_llm_response": "{\n  \"signal\": \"neutral\",\n  \"confidence\": 0.52,\n  \"structure_bias\": \"bullish\",\n  \"setup_bias\": \"neutral\",\n  \"setup_score\": 0.35,\n  \"setup_signals\": [\n    \"현재가 $75,742.80는 EQ $76,628.35 아래의 discount 구간에 위치\",\n    \"전일 저점 $75,641.20은 하향 이탈되었으나 현재가가 재상단에 있어 단기 sell-side liquidity 회수 가능성 존재\",\n    \"최근 확인된 구조 이벤트는 $75,998.90 상방 BOS이나 현재가는 해당 레벨 아래에 있어 강한 구조 수용은 미확인\",\n    \"활성 bullish/bearish OB 없음, 미충족 FVG 없음으로 기관형 명확한 배열 타깃 부족\",\n    \"EMA20 $77,465.32 및 EMA120 $77,606.41 아래에서 거래되어 단기 반등 setup의 추세 확인 부족\"\n  ],\n  \"reasoning\": \"확인된 마지막 구조 이벤트는 $75,998.90 상방 BOS이므로 structure_bias는 약한 bullish로 본다. 다만 현재가 $75,742.80는 해당 BOS 레벨 아래이며, EQ $76,628.35 아래 discount에 있어 매수 관점의 위치는 좋지만 아직 구조적 수용이 부족하다. 전일 저점 $75,641.20이 깨진 뒤 회복을 시도하는 모습은 sell-side liquidity 회수 후보지만, recent_liq_sweeps가 비어 있어 확정 sweep으로 보기는 어렵다. OB와 미충족 FVG가 모두 0개이므로 기관 주문흐름상 명확한 자석 구간이 부족하며, bull_score 7.5와 bear_score 7.7도 거의 균형이라 최종 signal은 neutral이다.\",\n  \"key_levels\": {\n    \"support\": [\n      75641.2,\n      74203.6,\n      70428.0\n    ],\n    \"resistance\": [\n      75998.9,\n      76628.35,\n      78077.1,\n      78180.0,\n      82828.7\n    ]\n  },\n  \"time_horizon\": \"short/medium term\",\n  \"invalidation_level\": \"$70,428.00\",\n  \"risk_scenario\": \"반대 시나리오로 가격이 $75,998.90 BOS 레벨을 회복하지 못하고 전일 저점 $75,641.20 아래에서 일봉 종가를 만들면, discount 매수 setup은 실패로 보고 $74,203.60 및 range low $70,428.00까지 sell-side liquidity 재탐색이 열릴 수 있다. 반대로 $78,180.00 7일 고점을 강하게 돌파하고 수용하면 neutral 신호는 bullish continuation으로 전환될 가능성이 높다.\",\n  \"data_quality\": \"medium\"\n}"
    }
  },
  "chairman_synthesis": {
    "overall_signal": "bullish",
    "overall_confidence": 0.58,
    "execution_setup": {
      "setup_bias": "bearish",
      "setup_strength": 0.64,
      "active_setups": [
        "가격이 EMA20 $77,465.32 및 EMA120 $77,606.41 아래에 머물며 단기·중기 평균선이 저항화된 상태",
        "$78,180.00 부근에서 bearish engulfing 및 evening star 후보가 발생했으나 거래량 확증은 부족",
        "CVD 변화 -1194.7850 및 24시간 OI -0.7030%로 반등 구간의 신규 매수 참여가 약함",
        "롱 계정 비율이 0.573까지 상승한 반면 가격은 약해 롱 청산 취약성이 존재",
        "상승 스윙 $74,868.00→$82,828.70 기준 0.786 되돌림 $76,571.59 아래에 있어 깊은 되돌림 구조",
        "Wyckoff Phase D 축적 구조 안에서 SOS $82,828.70 이후 가격이 $80,600.00 아래로 되밀려 SOS 수용이 미확인",
        "고품질 strict bullish Gartley PRZ $74,594.52-$75,813.87 안에 위치하지만 아직 MSS·CHoCH·강한 반전 확인은 없음"
      ],
      "setup_vs_structure": "상위 구조는 Wyckoff 기준 confirmed accumulation / Phase D로 해석되어 bullish이나, 실행 셋업은 4개 분석이 $76,571-$77,908 회복 실패와 파생 약세를 근거로 bearish에 기울어 있다. 즉 구조와 단기 실행 조건이 불일치하며, 현재 구간은 축적 구조 내부의 방어 시험 구간으로 보는 것이 적절하다."
    },
    "signal_breakdown": {
      "bullish_count": 2,
      "bearish_count": 2,
      "neutral_count": 2
    },
    "key_levels": {
      "support": [
        75641.2,
        74868.0,
        74594.52,
        74203.6,
        73900.0,
        73669.0,
        72900.0,
        65595.7
      ],
      "resistance": [
        75998.9,
        76571.59,
        76628.35,
        77465.32,
        77606.41,
        77908.99,
        78180.0,
        80600.0,
        82828.7
      ]
    },
    "confluences": [
      "Wyckoff와 Fibonacci가 모두 $74,868.00을 핵심 구조 저점으로 제시하며, 이 가격은 terminal spring 및 상승 스윙의 기점으로 겹친다.",
      "Candlestick, Derivatives, Harmonic이 $74,203.60 부근을 단기 하단 기준으로 공유한다. 이는 7일 저점이자 completed bullish Gartley 반응 구간과도 연결된다.",
      "Harmonic의 active bullish Gartley PRZ $74,594.52-$75,813.87이 현재가 $75,742.80을 포함하며, Wyckoff의 terminal spring $74,868.00과 근접해 구조적 방어 구간을 형성한다.",
      "Candlestick과 Derivatives가 EMA20 $77,465.32 및 EMA120 $77,606.41 아래의 약세 수용을 공통으로 지적하며, Fibonacci의 0.618 저항 $77,908.99와 함께 $77,400-$77,900 저항 클러스터를 만든다.",
      "ICT의 BOS 기준 $75,998.90, Fibonacci 0.786 $76,571.59, ICT EQ $76,628.35, Derivatives 청산 레벨 $76,600이 $76,000-$76,600 회복 여부를 단기 구조 수용 기준으로 묶는다.",
      "$78,180.00은 Candlestick의 최근 7일 고점 및 bearish candle 후보 구간이며, Harmonic·ICT도 같은 가격대를 상단 저항으로 제시한다.",
      "Wyckoff의 SC / range low $80,600.00과 SOS $82,828.70은 축적 Phase D의 질을 재평가하는 상위 구조 저항으로 일치한다."
    ],
    "conflicts": [
      "Wyckoff는 confirmed accumulation, Phase D, SOS 이후 구조로 상위 regime을 bullish로 보지만, 현재 가격이 $80,600.00과 $82,828.70 아래에 있어 SOS 이후 상단 수용은 아직 확인되지 않았다.",
      "Candlestick과 Derivatives는 EMA20·EMA120 하단 수용, 음봉 흐름, CVD 약화, OI 감소를 근거로 bearish 구조/셋업을 제시하나, 이는 주로 현재 실행 조건과 단기 수급 약세에 가깝다.",
      "Harmonic은 strict high-quality bullish Gartley PRZ $74,594.52-$75,813.87을 제시하지만, 해당 패턴은 pre-confirmation 상태라 Wyckoff·파생·캔들 구조를 단독으로 뒤집을 권한은 낮다.",
      "ICT는 마지막 확인 이벤트를 $75,998.90 상방 BOS로 보아 구조를 약한 bullish로 분류하지만, 현재가는 해당 레벨 아래이고 OB/FVG가 없어 기관 주문흐름 확증은 부족하다.",
      "Fibonacci는 $74,868.00 저점이 아직 명확히 이탈되지 않아 구조는 neutral로 두지만, $76,571.59와 $77,908.99 아래에서는 실행 셋업을 bearish로 평가한다."
    ],
    "executive_summary": "BTC/USDT 1일 구조는 Wyckoff 기준 confirmed accumulation의 Phase D로 분류되며, 현재 위치는 SOS $82,828.70 이후 상단 수용에 실패하고 terminal spring $74,868.00 부근을 재시험하는 구간이다. 상위 구조의 핵심은 아직 bullish이나, 가격이 $80,600.00 주 범위 하단과 EMA20 $77,465.32·EMA120 $77,606.41 아래에 있어 즉각적인 실행 조건은 약세로 기울어 있다. $74,594.52-$75,813.87의 bullish Gartley PRZ와 $74,868.00 terminal spring이 방어 구간으로 겹치지만, 파생 CVD 약화와 OI 감소는 해당 방어가 아직 확정되지 않았음을 시사한다. 구조적으로는 $74,868.00 및 $73,669.00 이탈이 Phase D 품질 저하 조건이며, $65,595.70 이탈은 축적 구조 자체의 핵심 무효화 조건이다.",
    "raw_llm_response": "{\n  \"overall_signal\": \"bullish\",\n  \"overall_confidence\": 0.58,\n  \"execution_setup\": {\n    \"setup_bias\": \"bearish\",\n    \"setup_strength\": 0.64,\n    \"active_setups\": [\n      \"가격이 EMA20 $77,465.32 및 EMA120 $77,606.41 아래에 머물며 단기·중기 평균선이 저항화된 상태\",\n      \"$78,180.00 부근에서 bearish engulfing 및 evening star 후보가 발생했으나 거래량 확증은 부족\",\n      \"CVD 변화 -1194.7850 및 24시간 OI -0.7030%로 반등 구간의 신규 매수 참여가 약함\",\n      \"롱 계정 비율이 0.573까지 상승한 반면 가격은 약해 롱 청산 취약성이 존재\",\n      \"상승 스윙 $74,868.00→$82,828.70 기준 0.786 되돌림 $76,571.59 아래에 있어 깊은 되돌림 구조\",\n      \"Wyckoff Phase D 축적 구조 안에서 SOS $82,828.70 이후 가격이 $80,600.00 아래로 되밀려 SOS 수용이 미확인\",\n      \"고품질 strict bullish Gartley PRZ $74,594.52-$75,813.87 안에 위치하지만 아직 MSS·CHoCH·강한 반전 확인은 없음\"\n    ],\n    \"setup_vs_structure\": \"상위 구조는 Wyckoff 기준 confirmed accumulation / Phase D로 해석되어 bullish이나, 실행 셋업은 4개 분석이 $76,571-$77,908 회복 실패와 파생 약세를 근거로 bearish에 기울어 있다. 즉 구조와 단기 실행 조건이 불일치하며, 현재 구간은 축적 구조 내부의 방어 시험 구간으로 보는 것이 적절하다.\"\n  },\n  \"signal_breakdown\": {\n    \"bullish_count\": 2,\n    \"bearish_count\": 2,\n    \"neutral_count\": 2\n  },\n  \"key_levels\": {\n    \"support\": [\n      75641.2,\n      74868.0,\n      74594.52,\n      74203.6,\n      73900.0,\n      73669.0,\n      72900.0,\n      65595.7\n    ],\n    \"resistance\": [\n      75998.9,\n      76571.59,\n      76628.35,\n      77465.32,\n      77606.41,\n      77908.99,\n      78180.0,\n      80600.0,\n      82828.7\n    ]\n  },\n  \"confluences\": [\n    \"Wyckoff와 Fibonacci가 모두 $74,868.00을 핵심 구조 저점으로 제시하며, 이 가격은 terminal spring 및 상승 스윙의 기점으로 겹친다.\",\n    \"Candlestick, Derivatives, Harmonic이 $74,203.60 부근을 단기 하단 기준으로 공유한다. 이는 7일 저점이자 completed bullish Gartley 반응 구간과도 연결된다.\",\n    \"Harmonic의 active bullish Gartley PRZ $74,594.52-$75,813.87이 현재가 $75,742.80을 포함하며, Wyckoff의 terminal spring $74,868.00과 근접해 구조적 방어 구간을 형성한다.\",\n    \"Candlestick과 Derivatives가 EMA20 $77,465.32 및 EMA120 $77,606.41 아래의 약세 수용을 공통으로 지적하며, Fibonacci의 0.618 저항 $77,908.99와 함께 $77,400-$77,900 저항 클러스터를 만든다.\",\n    \"ICT의 BOS 기준 $75,998.90, Fibonacci 0.786 $76,571.59, ICT EQ $76,628.35, Derivatives 청산 레벨 $76,600이 $76,000-$76,600 회복 여부를 단기 구조 수용 기준으로 묶는다.\",\n    \"$78,180.00은 Candlestick의 최근 7일 고점 및 bearish candle 후보 구간이며, Harmonic·ICT도 같은 가격대를 상단 저항으로 제시한다.\",\n    \"Wyckoff의 SC / range low $80,600.00과 SOS $82,828.70은 축적 Phase D의 질을 재평가하는 상위 구조 저항으로 일치한다.\"\n  ],\n  \"conflicts\": [\n    \"Wyckoff는 confirmed accumulation, Phase D, SOS 이후 구조로 상위 regime을 bullish로 보지만, 현재 가격이 $80,600.00과 $82,828.70 아래에 있어 SOS 이후 상단 수용은 아직 확인되지 않았다.\",\n    \"Candlestick과 Derivatives는 EMA20·EMA120 하단 수용, 음봉 흐름, CVD 약화, OI 감소를 근거로 bearish 구조/셋업을 제시하나, 이는 주로 현재 실행 조건과 단기 수급 약세에 가깝다.\",\n    \"Harmonic은 strict high-quality bullish Gartley PRZ $74,594.52-$75,813.87을 제시하지만, 해당 패턴은 pre-confirmation 상태라 Wyckoff·파생·캔들 구조를 단독으로 뒤집을 권한은 낮다.\",\n    \"ICT는 마지막 확인 이벤트를 $75,998.90 상방 BOS로 보아 구조를 약한 bullish로 분류하지만, 현재가는 해당 레벨 아래이고 OB/FVG가 없어 기관 주문흐름 확증은 부족하다.\",\n    \"Fibonacci는 $74,868.00 저점이 아직 명확히 이탈되지 않아 구조는 neutral로 두지만, $76,571.59와 $77,908.99 아래에서는 실행 셋업을 bearish로 평가한다.\"\n  ],\n  \"highest_conviction_analyst\": \"Wyckoff Expert — acc_score 92.5, regime fitness 0.925, confirmed accumulation으로 SC $80,600.00 → AR $93,080.00 → ST $84,408.60 → Spring $65,595.70 → Terminal Spring $74,868.00 → SOS $82,828.70의 완성도 높은 Phase D 구조를 제시했기 때문에 구조 진단에서 가장 높은 가중치를 부여한다.\",\n  \"invalidation_level\": \"$65,595.70 하향 이탈 시 confirmed accumulation / Phase D 구조 해석은 핵심적으로 훼손된다. 단, $74,868.00 및 $73,669.00 하향 이탈은 그 전에 Phase D 품질을 약화시키는 1차 구조 경고선이다.\",\n  \"executive_summary\": \"BTC/USDT 1일 구조는 Wyckoff 기준 confirmed accumulation의 Phase D로 분류되며, 현재 위치는 SOS $82,828.70 이후 상단 수용에 실패하고 terminal spring $74,868.00 부근을 재시험하는 구간이다. 상위 구조의 핵심은 아직 bullish이나, 가격이 $80,600.00 주 범위 하단과 EMA20 $77,465.32·EMA120 $77,606.41 아래에 있어 즉각적인 실행 조건은 약세로 기울어 있다. $74,594.52-$75,813.87의 bullish Gartley PRZ와 $74,868.00 terminal spring이 방어 구간으로 겹치지만, 파생 CVD 약화와 OI 감소는 해당 방어가 아직 확정되지 않았음을 시사한다. 구조적으로는 $74,868.00 및 $73,669.00 이탈이 Phase D 품질 저하 조건이며, $65,595.70 이탈은 축적 구조 자체의 핵심 무효화 조건이다.\"\n}"
  },
  "overall_signal": "bullish",
  "overall_confidence": 0.58,
  "operating_path": {
    "path_type": "complex",
    "confidence": 0.55,
    "waypoints": [
      {
        "seq": 1,
        "price": 74000.0,
        "type": "liquidity_sweep",
        "source": "Derivatives(7일 저점 $74,203.60·청산 클러스터 $73,900·롱비율 0.573), Candlestick($74,203.60 지지), ICT($74,203.60 지지·전일 저점 $75,641.20 이탈), Harmonic($74,122.63 completed Gartley PRZ)",
        "description": "셋업 바이어스가 약세(64%)이고 가격이 EMA20 $77,465.32·EMA120 $77,606.41 아래에 갇혀 있어 즉각 경로는 하방. CVD -1194.79·OI -0.70%로 매수 참여가 약한 상태에서 롱 계정 비율 0.573의 청산 취약성을 따라, 7일 저점 $74,203.60의 sell-side 유동성을 스윕하고 $73,900 청산 클러스터까지 딥하며 늦은 롱을 정리. Gartley PRZ 하단 $74,594.52·터미널 스프링 $74,868 아래로의 일시 이탈이지만 $73,669 위에서 방어 시험으로 본다.",
        "est_hours": 5.0,
        "turning_zone": [
          73669.0,
          74203.6
        ],
        "likely_wick": 73900.0,
        "rejection_confirm": 74594.52,
        "invalid_overshoot": 73500.0,
        "calibration_reasoning": "7일 저점 $74,203.60(sell-side 유동성)을 존 상단, $73,669 방어선을 하단으로 잡아 폭 ≈0.28×ATR로 구성했고 그 사이 $73,900 청산 클러스터를 포함시켰다. $74,000 라운드넘버가 자석이라 위크는 라운드넘버를 살짝 관통해 청산 클러스터 $73,900에 안착할 가능성이 가장 높고, $74,594.52(Gartley PRZ 하단) 회복이 스윕 종료 확인, $73,669 방어선 하향 이탈이 무효화."
      },
      {
        "seq": 2,
        "price": 76571.59,
        "type": "resistance_test",
        "source": "Fibonacci(0.786 $76,571.59), ICT(EQ $76,628.35·BOS $75,998.90), Derivatives(청산 레벨 $76,600), Chairman($76,000-$76,600 회복=단기 구조 수용 분기)",
        "description": "Wyckoff 축적 Phase D 방어 구간(터미널 스프링 $74,868·Gartley PRZ)에서 반응 매수가 발생하며 반등. $75,998.90(ICT 상방 BOS) 회복 후 $76,571.59(Fib 0.786)~$76,600(파생 청산)~$76,628.35(ICT EQ) 클러스터를 시험. 이 구간은 챔버 기준 단기 구조 수용 여부를 가르는 핵심 저항대로, 약세 셋업상 1차 반등의 상단 캡 후보.",
        "est_hours": 15.0,
        "turning_zone": [
          76571.59,
          77150.0
        ],
        "likely_wick": 76700.0,
        "rejection_confirm": 75998.9,
        "invalid_overshoot": 77465.32,
        "calibration_reasoning": "Fib 0.786 $76,571.59·파생 청산 $76,600·ICT EQ $76,628.35의 밀집 클러스터가 존 하단을 고정하고 상단은 EMA20 직전까지 폭 ≈0.30×ATR로 확장했다. PRE_CONFIRMATION 상태인 하모닉 TP1 $76,828은 단독으로 웨이포인트를 옮길 수 없어 위크 상단 조건부 컨텍스트로만 사용했고, 위크는 클러스터 상단을 살짝 넘는 $76,700이 유력. $75,998.90(ICT BOS) 상실이 거부 확인, EMA20 $77,465.32 수용 시 약세 캡 논리 무효화."
      },
      {
        "seq": 3,
        "price": 75204.19,
        "type": "support_test",
        "source": "Harmonic(Gartley D 예상가 $75,204.19·PRZ 중심), ICT(전일 저점 $75,641.20)",
        "description": "CVD·OI 약세로 신규 매수 참여가 부족해 EMA20 $77,465.32 저항을 넘지 못하고 $76,571 클러스터에서 반등이 막힘. Gartley D $75,204.19·PRZ 중심으로 되밀리며 구조(축적)는 방어했으나 단기 수용은 미확인 상태로 레인지 내부에서 마감 — 셋업과 구조의 불일치가 해소되지 않은 코일링.",
        "est_hours": 23.0,
        "turning_zone": [
          74594.52,
          75204.19
        ],
        "likely_wick": 75000.0,
        "rejection_confirm": 75641.2,
        "invalid_overshoot": 74203.6,
        "calibration_reasoning": "strict Gartley PRZ(D/중심 $75,204.19 ~ PRZ 하단 $74,594.52, 터미널 스프링 $74,868 포함)가 존을 고정했으며, PRE_CONFIRMATION이라 base는 이동시키지 않고 조건부 반응대로만 취급했다. $75,000 라운드넘버가 위크 자석. 터미널 가이드(0.5~0.8×ATR)보다 좁은 ≈0.31×ATR로 둔 이유는 코일링의 고점-저점(higher-low) 구조상 WP1 스윕 영역 아래로 확장하면 구조 붕괴가 되기 때문 — 그래서 7일 저점 $74,203.60 도달을 무효화 기준으로, $75,641.2(차어맨 지지) 회복을 PRZ 방어 완료 확인으로 설정."
      }
    ],
    "period_extremes": {
      "4h": {
        "expected_high": 75815.0,
        "expected_low": 74400.0,
        "high_first": true
      },
      "8h": {
        "expected_high": 75815.0,
        "expected_low": 74000.0,
        "high_first": true
      },
      "24h": {
        "expected_high": 76571.59,
        "expected_low": 74000.0,
        "high_first": false
      }
    },
    "triggers": {
      "bullish": {
        "price": 76628.35,
        "description": "ICT EQ $76,628.35(=Fib 0.786 $76,571.59 위) 명확한 회복·수용 시 챔버의 $76,000-$76,600 단기 구조 수용 충족, WP3 페이드 무효화. EMA20 $77,465.32·EMA120 $77,606.41 돌파 시 $78,180→$80,600 SOS 재시험으로 강세 가속."
      },
      "bearish": {
        "price": 73669.0,
        "description": "예상 스윕 저점($74,000)·청산 클러스터($73,900) 아래로 $73,669.00(Gartley X 저점·Wyckoff 동반 하단) 이탈 시 Phase D 품질 저하 확정, 방어 실패로 하방 가속해 $72,900→$72,028 노출."
      }
    },
    "scenario_invalidation": 72900.0,
    "raw_llm_response": "```json\n{\n  \"path_type\": \"complex\",\n  \"confidence\": 0.55,\n  \"waypoints\": [\n    {\n      \"seq\": 1,\n      \"price\": 74000.0,\n      \"type\": \"liquidity_sweep\",\n      \"source\": \"Derivatives(7일 저점 $74,203.60·청산 클러스터 $73,900·롱비율 0.573), Candlestick($74,203.60 지지), ICT($74,203.60 지지·전일 저점 $75,641.20 이탈), Harmonic($74,122.63 completed Gartley PRZ)\",\n      \"description\": \"셋업 바이어스가 약세(64%)이고 가격이 EMA20 $77,465.32·EMA120 $77,606.41 아래에 갇혀 있어 즉각 경로는 하방. CVD -1194.79·OI -0.70%로 매수 참여가 약한 상태에서 롱 계정 비율 0.573의 청산 취약성을 따라, 7일 저점 $74,203.60의 sell-side 유동성을 스윕하고 $73,900 청산 클러스터까지 딥하며 늦은 롱을 정리. Gartley PRZ 하단 $74,594.52·터미널 스프링 $74,868 아래로의 일시 이탈이지만 $73,669 위에서 방어 시험으로 본다.\",\n      \"est_hours\": 5.0\n    },\n    {\n      \"seq\": 2,\n      \"price\": 76571.59,\n      \"type\": \"resistance_test\",\n      \"source\": \"Fibonacci(0.786 $76,571.59), ICT(EQ $76,628.35·BOS $75,998.90), Derivatives(청산 레벨 $76,600), Chairman($76,000-$76,600 회복=단기 구조 수용 분기)\",\n      \"description\": \"Wyckoff 축적 Phase D 방어 구간(터미널 스프링 $74,868·Gartley PRZ)에서 반응 매수가 발생하며 반등. $75,998.90(ICT 상방 BOS) 회복 후 $76,571.59(Fib 0.786)~$76,600(파생 청산)~$76,628.35(ICT EQ) 클러스터를 시험. 이 구간은 챔버 기준 단기 구조 수용 여부를 가르는 핵심 저항대로, 약세 셋업상 1차 반등의 상단 캡 후보.\",\n      \"est_hours\": 15.0\n    },\n    {\n      \"seq\": 3,\n      \"price\": 75204.19,\n      \"type\": \"support_test\",\n      \"source\": \"Harmonic(Gartley D 예상가 $75,204.19·PRZ 중심), ICT(전일 저점 $75,641.20)\",\n      \"description\": \"CVD·OI 약세로 신규 매수 참여가 부족해 EMA20 $77,465.32 저항을 넘지 못하고 $76,571 클러스터에서 반등이 막힘. Gartley D $75,204.19·PRZ 중심으로 되밀리며 구조(축적)는 방어했으나 단기 수용은 미확인 상태로 레인지 내부에서 마감 — 셋업과 구조의 불일치가 해소되지 않은 코일링.\",\n      \"est_hours\": 23.0\n    }\n  ],\n  \"period_extremes\": {\n    \"4h\":  {\"expected_high\": 75815.0, \"expected_low\": 74400.0, \"high_first\": true},\n    \"8h\":  {\"expected_high\": 75815.0, \"expected_low\": 74000.0, \"high_first\": true},\n    \"24h\": {\"expected_high\": 76571.59, \"expected_low\": 74000.0, \"high_first\": false}\n  },\n  \"triggers\": {\n    \"bullish\": {\"price\": 76628.35, \"description\": \"ICT EQ $76,628.35(=Fib 0.786 $76,571.59 위) 명확한 회복·수용 시 챔버의 $76,000-$76,600 단기 구조 수용 충족, WP3 페이드 무효화. EMA20 $77,465.32·EMA120 $77,606.41 돌파 시 $78,180→$80,600 SOS 재시험으로 강세 가속.\"},\n    \"bearish\": {\"price\": 73669.0, \"description\": \"예상 스윕 저점($74,000)·청산 클러스터($73,900) 아래로 $73,669.00(Gartley X 저점·Wyckoff 동반 하단) 이탈 시 Phase D 품질 저하 확정, 방어 실패로 하방 가속해 $72,900→$72,028 노출.\"}\n  },\n  \"scenario_invalidation\": 72900.0\n}\n```\n\n핵심: 셋업 약세(64%, strength≥0.5)가 강세 구조와 불일치하므로 **첫 웨이포인트는 하방 청산 스윕**으로 두고, 그 뒤 Phase D 방어 반등 → 미확인 페이드로 이어지는 corrective 경로입니다. WP1은 candidate-only 레벨($85,081)이 아니라 4개 분석이 겹치는 7일 저점/청산 클러스터 confluence로 선택했습니다. 경로 전체 무효화는 $72,900 이탈(방어 실패·반등 시나리오 폐기)입니다."
  },
  "tp_calibration": {
    "calibrated_waypoints": [
      {
        "seq": 1,
        "base_target": 74000.0,
        "turning_zone": [
          73669.0,
          74203.6
        ],
        "likely_wick": 73900.0,
        "rejection_confirm": 74594.52,
        "invalid_overshoot": 73500.0,
        "calibration_reasoning": "7일 저점 $74,203.60(sell-side 유동성)을 존 상단, $73,669 방어선을 하단으로 잡아 폭 ≈0.28×ATR로 구성했고 그 사이 $73,900 청산 클러스터를 포함시켰다. $74,000 라운드넘버가 자석이라 위크는 라운드넘버를 살짝 관통해 청산 클러스터 $73,900에 안착할 가능성이 가장 높고, $74,594.52(Gartley PRZ 하단) 회복이 스윕 종료 확인, $73,669 방어선 하향 이탈이 무효화."
      },
      {
        "seq": 2,
        "base_target": 76571.59,
        "turning_zone": [
          76571.59,
          77150.0
        ],
        "likely_wick": 76700.0,
        "rejection_confirm": 75998.9,
        "invalid_overshoot": 77465.32,
        "calibration_reasoning": "Fib 0.786 $76,571.59·파생 청산 $76,600·ICT EQ $76,628.35의 밀집 클러스터가 존 하단을 고정하고 상단은 EMA20 직전까지 폭 ≈0.30×ATR로 확장했다. PRE_CONFIRMATION 상태인 하모닉 TP1 $76,828은 단독으로 웨이포인트를 옮길 수 없어 위크 상단 조건부 컨텍스트로만 사용했고, 위크는 클러스터 상단을 살짝 넘는 $76,700이 유력. $75,998.90(ICT BOS) 상실이 거부 확인, EMA20 $77,465.32 수용 시 약세 캡 논리 무효화."
      },
      {
        "seq": 3,
        "base_target": 75204.19,
        "turning_zone": [
          74594.52,
          75204.19
        ],
        "likely_wick": 75000.0,
        "rejection_confirm": 75641.2,
        "invalid_overshoot": 74203.6,
        "calibration_reasoning": "strict Gartley PRZ(D/중심 $75,204.19 ~ PRZ 하단 $74,594.52, 터미널 스프링 $74,868 포함)가 존을 고정했으며, PRE_CONFIRMATION이라 base는 이동시키지 않고 조건부 반응대로만 취급했다. $75,000 라운드넘버가 위크 자석. 터미널 가이드(0.5~0.8×ATR)보다 좁은 ≈0.31×ATR로 둔 이유는 코일링의 고점-저점(higher-low) 구조상 WP1 스윕 영역 아래로 확장하면 구조 붕괴가 되기 때문 — 그래서 7일 저점 $74,203.60 도달을 무효화 기준으로, $75,641.2(차어맨 지지) 회복을 PRZ 방어 완료 확인으로 설정."
      }
    ],
    "raw_llm_response": "```json\n{\n  \"calibrated_waypoints\": [\n    {\n      \"seq\": 1,\n      \"base_target\": 74000.00,\n      \"turning_zone\": [73669.00, 74203.60],\n      \"likely_wick\": 73900.00,\n      \"rejection_confirm\": 74594.52,\n      \"invalid_overshoot\": 73500.00,\n      \"calibration_reasoning\": \"7일 저점 $74,203.60(sell-side 유동성)을 존 상단, $73,669 방어선을 하단으로 잡아 폭 ≈0.28×ATR로 구성했고 그 사이 $73,900 청산 클러스터를 포함시켰다. $74,000 라운드넘버가 자석이라 위크는 라운드넘버를 살짝 관통해 청산 클러스터 $73,900에 안착할 가능성이 가장 높고, $74,594.52(Gartley PRZ 하단) 회복이 스윕 종료 확인, $73,669 방어선 하향 이탈이 무효화.\"\n    },\n    {\n      \"seq\": 2,\n      \"base_target\": 76571.59,\n      \"turning_zone\": [76571.59, 77150.00],\n      \"likely_wick\": 76700.00,\n      \"rejection_confirm\": 75998.90,\n      \"invalid_overshoot\": 77465.32,\n      \"calibration_reasoning\": \"Fib 0.786 $76,571.59·파생 청산 $76,600·ICT EQ $76,628.35의 밀집 클러스터가 존 하단을 고정하고 상단은 EMA20 직전까지 폭 ≈0.30×ATR로 확장했다. PRE_CONFIRMATION 상태인 하모닉 TP1 $76,828은 단독으로 웨이포인트를 옮길 수 없어 위크 상단 조건부 컨텍스트로만 사용했고, 위크는 클러스터 상단을 살짝 넘는 $76,700이 유력. $75,998.90(ICT BOS) 상실이 거부 확인, EMA20 $77,465.32 수용 시 약세 캡 논리 무효화.\"\n    },\n    {\n      \"seq\": 3,\n      \"base_target\": 75204.19,\n      \"turning_zone\": [74594.52, 75204.19],\n      \"likely_wick\": 75000.00,\n      \"rejection_confirm\": 75641.20,\n      \"invalid_overshoot\": 74203.60,\n      \"calibration_reasoning\": \"strict Gartley PRZ(D/중심 $75,204.19 ~ PRZ 하단 $74,594.52, 터미널 스프링 $74,868 포함)가 존을 고정했으며, PRE_CONFIRMATION이라 base는 이동시키지 않고 조건부 반응대로만 취급했다. $75,000 라운드넘버가 위크 자석. 터미널 가이드(0.5~0.8×ATR)보다 좁은 ≈0.31×ATR로 둔 이유는 코일링의 고점-저점(higher-low) 구조상 WP1 스윕 영역 아래로 확장하면 구조 붕괴가 되기 때문 — 그래서 7일 저점 $74,203.60 도달을 무효화 기준으로, $75,641.2(차어맨 지지) 회복을 PRZ 방어 완료 확인으로 설정.\"\n    }\n  ]\n}\n```"
  },
  "timing": {
    "stages": {
      "stage1_agents": 245.2,
      "chairman": 132.1,
      "operating_path": 488.4,
      "tp_calibrator": 321.2
    },
    "agents": {},
    "total_s": 1186.9
  }
}