{
  "symbol": "BTC/USDT",
  "timeframe": "1h",
  "timestamp": "2026-06-30 09:00 KST",
  "last_price": 60217.3,
  "num_candles": 300,
  "stage1_analyses": {
    "fibonacci": {
      "agent_id": "fibonacci",
      "display_name": "Fibonacci Analyst",
      "signal": "neutral",
      "confidence": 0.57,
      "structure_bias": "bearish",
      "setup_bias": "bullish",
      "setup_score": 0.68,
      "setup_signals": [
        "하락 스윙 $60,758→$58,988 이후 0.618 황금비 되돌림 $60,082.05를 현재가 $60,217.30이 재상회하며 테스트 중",
        "고품질 피보나치 클러스터 $59,988.35 부근에 ret_0.5, ret_0.236, ret_0.618이 중첩되어 단기 수요 반응 가능성 존재",
        "현재가가 EMA20 $60,074.48 위에 있으나 EMA120 $60,435.81 및 ret_0.786 저항 $60,379.46 아래에 있어 아직 구조 전환은 미확정",
        "fib_reaction_state가 testing이고 reaction_probability가 0.65로, 확정 전 반등 셋업은 존재하지만 추세 확인은 부족"
      ],
      "reasoning": "확정 구조는 최근 기준 스윙이 High→Low $60,758→$58,988인 하락 방향이고, 현재가 $60,217.30이 EMA120 $60,435.81 및 EMA240 $61,358.66 아래에 있어 아직 bullish BOS나 구조적 수용은 확인되지 않았으므로 structure_bias는 bearish로 본다. 다만 실행 셋업 관점에서는 0.618 황금비 $60,082.05와 클러스터 중심 $59,988.35가 매우 근접하며 confluence_quality가 0.850으로 높아 단기 반등 조건은 유효하다. 상방 확인은 ret_0.786 $60,379.46 및 EMA120 $60,435.81 회복이 필요하며, 그 전까지는 하락 구조 안의 반등 셋업으로 해석하는 것이 적절하다. $60,082.05가 이탈되면 $59,873.15와 $59,664.25가 다음 방어선이며, 이 구간마저 무너지면 $58,988.00 및 확장 목표 $58,506.48, $58,255.10 쪽으로 하방 압력이 커질 수 있다.",
      "key_levels": {
        "support": [
          60082.05,
          59873.15,
          59664.25,
          58988,
          58506.48,
          58255.1,
          57893.95
        ],
        "resistance": [
          60379.46,
          60435.81,
          60758,
          61358.66
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$59,664.25",
      "risk_scenario": "반등 셋업이 실패해 $60,082.05를 재이탈하고 $59,664.25 아래로 수용되면, 0.618 지지 반응은 무효화되고 $58,988.00 스윙 저점 재테스트 및 $58,506.48~$58,255.10 확장 지지 구간까지 하락이 열릴 수 있다.",
      "data_quality": "high",
      "metrics": {
        "swing_pair": "High→Low: $60,758 → $58,988",
        "direction": "down",
        "nearest_fib": "ret_0.618",
        "nearest_fib_price": 60082.05,
        "nearest_fib_distance": 0.22,
        "golden_ratio_level": 60082.05,
        "fib_ret_382": 59664.25,
        "fib_ret_618": 60082.05,
        "confluence_zones": [
          {
            "price": 59988.35,
            "count": 3,
            "levels": [
              "ret_0.5",
              "ret_0.236",
              "ret_0.618"
            ],
            "cluster_score": 0.85
          },
          {
            "price": 57961.98,
            "count": 2,
            "levels": [
              "ext_1.618",
              "ext_1.0"
            ],
            "cluster_score": 0.6
          },
          {
            "price": 58380.79,
            "count": 2,
            "levels": [
              "ext_1.414",
              "ext_1.272"
            ],
            "cluster_score": 0.6
          },
          {
            "price": 59535.02,
            "count": 2,
            "levels": [
              "ret_0.236",
              "ret_0.382"
            ],
            "cluster_score": 0.6
          }
        ],
        "support_levels": [
          60082.0454,
          59873.15,
          59664.2546
        ],
        "resistance_levels": [
          60379.4558
        ],
        "level_candidates": [
          {
            "name": "ret_0.236",
            "price": 59405.79,
            "distance_pct": 1.35,
            "is_support": true,
            "cluster_score": 0.6
          },
          {
            "name": "ret_0.382",
            "price": 59664.25,
            "distance_pct": 0.92,
            "is_support": true,
            "cluster_score": 0.6
          },
          {
            "name": "ret_0.5",
            "price": 59873.15,
            "distance_pct": 0.57,
            "is_support": true,
            "cluster_score": 0.85
          },
          {
            "name": "ret_0.618",
            "price": 60082.05,
            "distance_pct": 0.22,
            "is_support": true,
            "cluster_score": 0.85
          },
          {
            "name": "ret_0.786",
            "price": 60379.46,
            "distance_pct": 0.27,
            "is_support": false,
            "cluster_score": 0.0
          },
          {
            "name": "ext_1.0",
            "price": 58988.0,
            "distance_pct": 2.04,
            "is_support": true,
            "cluster_score": 0.0
          },
          {
            "name": "ext_1.272",
            "price": 58506.48,
            "distance_pct": 2.84,
            "is_support": true,
            "cluster_score": 0.6
          },
          {
            "name": "ext_1.414",
            "price": 58255.1,
            "distance_pct": 3.26,
            "is_support": true,
            "cluster_score": 0.6
          },
          {
            "name": "ext_1.618",
            "price": 57893.95,
            "distance_pct": 3.86,
            "is_support": true,
            "cluster_score": 0.6
          },
          {
            "name": "ext_2.0",
            "price": 57217.7,
            "distance_pct": 4.98,
            "is_support": true,
            "cluster_score": 0.0
          }
        ],
        "confluence_quality": 0.85,
        "fib_reaction_state": "testing",
        "reaction_probability": 0.65
      },
      "raw_llm_response": "{\n  \"signal\": \"neutral\",\n  \"confidence\": 0.57,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.68,\n  \"setup_signals\": [\n    \"하락 스윙 $60,758→$58,988 이후 0.618 황금비 되돌림 $60,082.05를 현재가 $60,217.30이 재상회하며 테스트 중\",\n    \"고품질 피보나치 클러스터 $59,988.35 부근에 ret_0.5, ret_0.236, ret_0.618이 중첩되어 단기 수요 반응 가능성 존재\",\n    \"현재가가 EMA20 $60,074.48 위에 있으나 EMA120 $60,435.81 및 ret_0.786 저항 $60,379.46 아래에 있어 아직 구조 전환은 미확정\",\n    \"fib_reaction_state가 testing이고 reaction_probability가 0.65로, 확정 전 반등 셋업은 존재하지만 추세 확인은 부족\"\n  ],\n  \"reasoning\": \"확정 구조는 최근 기준 스윙이 High→Low $60,758→$58,988인 하락 방향이고, 현재가 $60,217.30이 EMA120 $60,435.81 및 EMA240 $61,358.66 아래에 있어 아직 bullish BOS나 구조적 수용은 확인되지 않았으므로 structure_bias는 bearish로 본다. 다만 실행 셋업 관점에서는 0.618 황금비 $60,082.05와 클러스터 중심 $59,988.35가 매우 근접하며 confluence_quality가 0.850으로 높아 단기 반등 조건은 유효하다. 상방 확인은 ret_0.786 $60,379.46 및 EMA120 $60,435.81 회복이 필요하며, 그 전까지는 하락 구조 안의 반등 셋업으로 해석하는 것이 적절하다. $60,082.05가 이탈되면 $59,873.15와 $59,664.25가 다음 방어선이며, 이 구간마저 무너지면 $58,988.00 및 확장 목표 $58,506.48, $58,255.10 쪽으로 하방 압력이 커질 수 있다.\",\n  \"key_levels\": {\n    \"support\": [\n      60082.05,\n      59873.15,\n      59664.25,\n      58988,\n      58506.48,\n      58255.1,\n      57893.95\n    ],\n    \"resistance\": [\n      60379.46,\n      60435.81,\n      60758,\n      61358.66\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$59,664.25\",\n  \"risk_scenario\": \"반등 셋업이 실패해 $60,082.05를 재이탈하고 $59,664.25 아래로 수용되면, 0.618 지지 반응은 무효화되고 $58,988.00 스윙 저점 재테스트 및 $58,506.48~$58,255.10 확장 지지 구간까지 하락이 열릴 수 있다.\",\n  \"data_quality\": \"high\"\n}"
    },
    "candlestick": {
      "agent_id": "candlestick",
      "display_name": "Candlestick Reader",
      "signal": "neutral",
      "confidence": 0.52,
      "structure_bias": "neutral",
      "setup_bias": "bullish",
      "setup_score": 0.43,
      "setup_signals": [
        "현재가 $60,217.30은 7일 range EQ $61,138.60 아래에 있어 discount zone에 위치",
        "현재가가 EMA20 $60,074.48 바로 위에서 방어 중이며 단기 지지 반응 가능성 존재",
        "bull_score 1.50이 bear_score 1.35보다 소폭 우위이나 격차가 작아 확정 신호는 아님",
        "최근 bullish_engulfing@295, bearish_engulfing@296, bullish_engulfing@297이 교차 출현해 단기 수급 충돌 상태",
        "best_pattern_quality 0.629의 bearish_engulfing은 후보 단계이며 high_volume_patterns가 없어 하락 확정 신뢰도는 제한적"
      ],
      "reasoning": "BTC는 현재 $60,217.30으로 EMA20 $60,074.48 위에 간신히 위치하지만, EMA120 $60,435.81 및 EMA240 $61,358.66 아래에 있어 구조적으로는 명확한 상승 전환이 확인되지 않았습니다. 최근 캔들에서는 bullish engulfing과 bearish engulfing이 연속으로 교차했고, bearish harami@294까지 있어 방향성보다 단기 박스권·수급 충돌 성격이 강합니다. 다만 현재가는 7일 고점 $64,247.20과 저점 $58,030.00의 중간값인 약 $61,138.60 아래 discount 영역에 있어, EMA20 부근을 지키는 한 단기 반등 setup은 열려 있습니다. 반대로 $60,435.81의 EMA120을 회복하지 못하고 $60,074.48 아래로 밀리면 최근 bearish engulfing 후보가 유효해지며 $58,030.00 재테스트 위험이 커집니다.",
      "key_levels": {
        "support": [
          60074.48,
          60000.0,
          58030.0
        ],
        "resistance": [
          60435.81,
          61138.6,
          61358.66,
          64247.2
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$58,030.00",
      "risk_scenario": "반대 시나리오로 가격이 EMA120 $60,435.81을 회복하지 못하고 EMA20 $60,074.48 아래에서 1시간봉 종가를 반복 형성하면, 현재의 discount 기반 반등 setup은 약화됩니다. 이 경우 bearish_engulfing 후보가 하락 지속 신호로 작동하며 7일 저점 $58,030.00까지 유동성 재탐색이 발생할 수 있습니다.",
      "data_quality": "medium",
      "metrics": {
        "total_patterns_detected": 139,
        "recent_patterns": 4,
        "pattern_list": [
          "bullish_engulfing@295",
          "bearish_engulfing@296",
          "bullish_engulfing@297",
          "bearish_harami@294"
        ],
        "atr_value": 464.88,
        "vol_avg_20": 9473.09,
        "high_volume_patterns": [],
        "pattern_candidates": [
          {
            "pattern": "bearish_engulfing",
            "signal": "bearish",
            "pattern_quality": 0.629,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "bearish_harami",
            "signal": "bearish",
            "pattern_quality": 0.555,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "bullish_engulfing",
            "signal": "bullish",
            "pattern_quality": 0.444,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "bullish_engulfing",
            "signal": "bullish",
            "pattern_quality": 0.435,
            "tier": "candidate",
            "high_volume": false
          }
        ],
        "best_pattern_quality": 0.629,
        "bull_score": 1.5,
        "bear_score": 1.35
      },
      "raw_llm_response": "{\n  \"signal\": \"neutral\",\n  \"confidence\": 0.52,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.43,\n  \"setup_signals\": [\n    \"현재가 $60,217.30은 7일 range EQ $61,138.60 아래에 있어 discount zone에 위치\",\n    \"현재가가 EMA20 $60,074.48 바로 위에서 방어 중이며 단기 지지 반응 가능성 존재\",\n    \"bull_score 1.50이 bear_score 1.35보다 소폭 우위이나 격차가 작아 확정 신호는 아님\",\n    \"최근 bullish_engulfing@295, bearish_engulfing@296, bullish_engulfing@297이 교차 출현해 단기 수급 충돌 상태\",\n    \"best_pattern_quality 0.629의 bearish_engulfing은 후보 단계이며 high_volume_patterns가 없어 하락 확정 신뢰도는 제한적\"\n  ],\n  \"reasoning\": \"BTC는 현재 $60,217.30으로 EMA20 $60,074.48 위에 간신히 위치하지만, EMA120 $60,435.81 및 EMA240 $61,358.66 아래에 있어 구조적으로는 명확한 상승 전환이 확인되지 않았습니다. 최근 캔들에서는 bullish engulfing과 bearish engulfing이 연속으로 교차했고, bearish harami@294까지 있어 방향성보다 단기 박스권·수급 충돌 성격이 강합니다. 다만 현재가는 7일 고점 $64,247.20과 저점 $58,030.00의 중간값인 약 $61,138.60 아래 discount 영역에 있어, EMA20 부근을 지키는 한 단기 반등 setup은 열려 있습니다. 반대로 $60,435.81의 EMA120을 회복하지 못하고 $60,074.48 아래로 밀리면 최근 bearish engulfing 후보가 유효해지며 $58,030.00 재테스트 위험이 커집니다.\",\n  \"key_levels\": {\n    \"support\": [\n      60074.48,\n      60000.0,\n      58030.0\n    ],\n    \"resistance\": [\n      60435.81,\n      61138.6,\n      61358.66,\n      64247.2\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$58,030.00\",\n  \"risk_scenario\": \"반대 시나리오로 가격이 EMA120 $60,435.81을 회복하지 못하고 EMA20 $60,074.48 아래에서 1시간봉 종가를 반복 형성하면, 현재의 discount 기반 반등 setup은 약화됩니다. 이 경우 bearish_engulfing 후보가 하락 지속 신호로 작동하며 7일 저점 $58,030.00까지 유동성 재탐색이 발생할 수 있습니다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "ict": {
      "agent_id": "ict",
      "display_name": "ICT Trader",
      "signal": "bearish",
      "confidence": 0.78,
      "structure_bias": "bearish",
      "setup_bias": "bearish",
      "setup_score": 0.868,
      "setup_signals": [
        "현재가 $60,217.30이 EQ $59,804.15 위에 있어 premium zone에서 매도 셋업 우위",
        "최근 확정 구조 이벤트가 BOS_bearish below $59,714.80로, 단기 구조가 하방으로 재확인됨",
        "상단에 candidate bearish OB $62,272.10-$63,209.60 존재, 가격이 상승 시 기관 매도 방어 구간으로 작동 가능",
        "현재가가 EMA120 $60,435.81 및 EMA240 $61,358.66 아래에 있어 중기 평균선 기준 공급 우위",
        "이전일 고점 $60,758.30이 아직 돌파되지 않아 buy-side liquidity 회수 실패 상태"
      ],
      "reasoning": "확정 구조 기준으로는 $63,220.00 하향 CHoCH 이후 $61,870.00, $59,060.00, $59,714.80에서 연속적인 bearish BOS가 발생했기 때문에 structure_bias는 bearish입니다. 현재가는 $60,217.30으로 EQ $59,804.15 위의 premium에 위치해 있으며, EMA120 $60,435.81과 EMA240 $61,358.66 아래에서 거래되어 반등이 매도 재진입 구간으로 해석됩니다. 다만 unfilled FVG가 0개이고 최근 liquidity sweep도 감지되지 않아, 즉각적인 강한 유동성 사냥 신호보다는 프리미엄 되돌림 이후 하방 지속 셋업에 가깝습니다. 상단 $60,758.30 돌파 실패 시 $59,804.15 EQ, $59,714.80 BOS 레벨, $58,850.00 range low 방향으로 sell-side liquidity를 재탐색할 가능성이 높습니다.",
      "key_levels": {
        "support": [
          59804.15,
          59714.8,
          59060.0,
          58850.0,
          58030.0
        ],
        "resistance": [
          60435.81,
          60758.3,
          61870.0,
          62272.1,
          63209.6,
          63220.0
        ]
      },
      "time_horizon": "short to medium term",
      "invalidation_level": "$60,758.30 단기 셋업 무효화, $63,220.00 상향 수용 시 bearish structure 무효화",
      "risk_scenario": "만약 가격이 이전일 고점이자 range high인 $60,758.30을 강하게 돌파하고 그 위에서 1시간봉 수용을 보이면, 단기 숏 셋업은 실패하며 $61,870.00을 거쳐 candidate bearish OB $62,272.10-$63,209.60까지 buy-side liquidity를 회수하러 갈 수 있습니다. 특히 $63,220.00 위로 구조적 수용이 나오면 기존 bearish CHoCH 구간을 되돌리는 움직임이므로 하방 구조 판단을 재평가해야 합니다.",
      "data_quality": "medium",
      "metrics": {
        "order_blocks_total": 1,
        "confirmed_bullish_ob": 0,
        "confirmed_bearish_ob": 0,
        "candidate_bullish_ob": 0,
        "candidate_bearish_ob": 1,
        "active_bullish_ob": 0,
        "active_bearish_ob": 0,
        "nearest_bull_ob_range": null,
        "nearest_bear_ob_range": {
          "bottom": 62272.1,
          "top": 63209.6,
          "quality": "candidate",
          "score": 0.548
        },
        "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": 50,
        "fvg_open_zones": [],
        "bos_choch_events": [
          "BOS_bullish",
          "CHoCH_bearish",
          "BOS_bearish",
          "BOS_bearish",
          "BOS_bullish",
          "BOS_bearish"
        ],
        "bos_choch_levels": [
          {
            "type": "BOS_bullish",
            "level": 64568.0
          },
          {
            "type": "CHoCH_bearish",
            "level": 63220.0
          },
          {
            "type": "BOS_bearish",
            "level": 61870.0
          },
          {
            "type": "BOS_bearish",
            "level": 59060.0
          },
          {
            "type": "BOS_bullish",
            "level": 60734.0
          },
          {
            "type": "BOS_bearish",
            "level": 59714.8
          }
        ],
        "bos_sequence": [
          "BOS_bullish",
          "CHoCH_bearish",
          "BOS_bearish",
          "BOS_bearish",
          "BOS_bullish",
          "BOS_bearish"
        ],
        "consecutive_bull_bos": 0,
        "consecutive_bear_bos": 1,
        "recent_liq_sweeps": [],
        "recent_sweep_levels": [],
        "liquidity_resting": [],
        "current_zone": "premium",
        "eq_level": 59804.15,
        "range_high": 60758.3,
        "range_low": 58850.0,
        "bull_score": 5.5,
        "bear_score": 9.7,
        "setup_bias": "bearish",
        "setup_score": 0.868,
        "setup_signals": [
          "bearish CHoCH below $63,220.00",
          "bearish BOS below $61,870.00",
          "bearish BOS below $59,060.00",
          "bearish BOS below $59,714.80"
        ],
        "retracement_direction": "bullish",
        "current_retracement_pct": 23.3,
        "deepest_retracement_pct": 92.8,
        "previous_day_high": 60758.3,
        "previous_day_low": 58850.0,
        "broken_prev_high": false,
        "broken_prev_low": false,
        "sessions": {
          "London": {
            "active": true,
            "high": 60493.2,
            "low": 60134.0
          },
          "New York": {
            "active": false,
            "high": null,
            "low": null
          },
          "Asian kill zone": {
            "active": false,
            "high": null,
            "low": null
          }
        }
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.78,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.868,\n  \"setup_signals\": [\n    \"현재가 $60,217.30이 EQ $59,804.15 위에 있어 premium zone에서 매도 셋업 우위\",\n    \"최근 확정 구조 이벤트가 BOS_bearish below $59,714.80로, 단기 구조가 하방으로 재확인됨\",\n    \"상단에 candidate bearish OB $62,272.10-$63,209.60 존재, 가격이 상승 시 기관 매도 방어 구간으로 작동 가능\",\n    \"현재가가 EMA120 $60,435.81 및 EMA240 $61,358.66 아래에 있어 중기 평균선 기준 공급 우위\",\n    \"이전일 고점 $60,758.30이 아직 돌파되지 않아 buy-side liquidity 회수 실패 상태\"\n  ],\n  \"reasoning\": \"확정 구조 기준으로는 $63,220.00 하향 CHoCH 이후 $61,870.00, $59,060.00, $59,714.80에서 연속적인 bearish BOS가 발생했기 때문에 structure_bias는 bearish입니다. 현재가는 $60,217.30으로 EQ $59,804.15 위의 premium에 위치해 있으며, EMA120 $60,435.81과 EMA240 $61,358.66 아래에서 거래되어 반등이 매도 재진입 구간으로 해석됩니다. 다만 unfilled FVG가 0개이고 최근 liquidity sweep도 감지되지 않아, 즉각적인 강한 유동성 사냥 신호보다는 프리미엄 되돌림 이후 하방 지속 셋업에 가깝습니다. 상단 $60,758.30 돌파 실패 시 $59,804.15 EQ, $59,714.80 BOS 레벨, $58,850.00 range low 방향으로 sell-side liquidity를 재탐색할 가능성이 높습니다.\",\n  \"key_levels\": {\n    \"support\": [\n      59804.15,\n      59714.8,\n      59060.0,\n      58850.0,\n      58030.0\n    ],\n    \"resistance\": [\n      60435.81,\n      60758.3,\n      61870.0,\n      62272.1,\n      63209.6,\n      63220.0\n    ]\n  },\n  \"time_horizon\": \"short to medium term\",\n  \"invalidation_level\": \"$60,758.30 단기 셋업 무효화, $63,220.00 상향 수용 시 bearish structure 무효화\",\n  \"risk_scenario\": \"만약 가격이 이전일 고점이자 range high인 $60,758.30을 강하게 돌파하고 그 위에서 1시간봉 수용을 보이면, 단기 숏 셋업은 실패하며 $61,870.00을 거쳐 candidate bearish OB $62,272.10-$63,209.60까지 buy-side liquidity를 회수하러 갈 수 있습니다. 특히 $63,220.00 위로 구조적 수용이 나오면 기존 bearish CHoCH 구간을 되돌리는 움직임이므로 하방 구조 판단을 재평가해야 합니다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "derivatives": {
      "agent_id": "derivatives",
      "display_name": "Derivatives Trader",
      "signal": "bearish",
      "confidence": 0.62,
      "structure_bias": "neutral",
      "setup_bias": "bearish",
      "setup_score": 0.74,
      "setup_signals": [
        "현재가 $60,217.30이 EMA120 $60,435.81 및 EMA240 $61,358.66 아래에 있어 구조적 회복이 아직 확인되지 않음",
        "CVD divergence 0.850으로 가격 반등 대비 매수 참여 품질이 약한 약세 다이버전스",
        "24h OI -0.6910%로 신규 롱 유입보다 포지션 언와인딩 성격이 강함",
        "long account latest 0.671, account_long_crowding 1.000으로 롱 계정 쏠림이 과도해 단기 역방향 리스크 존재",
        "선물 basis -0.0712% 및 basis change -0.0214로 현물 대비 선물 수요가 약화",
        "하방 청산 유동성 $58,800, $57,500 및 strongest liq level $53,900이 열려 있음"
      ],
      "reasoning": "확정 구조는 7일 저점 $58,030과 고점 $64,247.20 사이 박스권 내부이며, 현재가 $60,217.30은 EMA20 $60,074.48 위에 간신히 있지만 EMA120 $60,435.81과 EMA240 $61,358.66 아래라 명확한 BOS/CHoCH가 확인되지 않아 neutral로 판단한다. 다만 셋업은 약세 쪽이 우세한데, CVD divergence 0.850은 가격이 버티는 동안 실제 공격적 매수 참여가 충분하지 않다는 신호이며, OI가 24시간 -0.6910% 감소해 상승 추세를 지지하는 신규 포지션 유입도 약하다. long account latest 0.671 및 account_long_crowding 1.000은 롱 포지셔닝이 여전히 붐비는 상태임을 보여주며, 이는 파생시장 관점에서 단기 하방 청산 압력을 키운다. $60,435~$61,358 구간을 회복하지 못하면 $58,800, 이후 $57,500 하방 유동성 테스트 가능성이 높고, 반대로 $62,300 상방 청산대를 강하게 돌파하면 약세 셋업은 무효화된다.",
      "key_levels": {
        "support": [
          60074.48,
          58800,
          58030,
          57500,
          53900
        ],
        "resistance": [
          60435.81,
          61358.66,
          62300,
          64247.2,
          65400,
          65500
        ]
      },
      "time_horizon": "short term, 4-8시간",
      "invalidation_level": "$62,300 상방 청산대를 돌파 후 1시간봉 종가 기준으로 유지",
      "risk_scenario": "$60,435.81 EMA120을 회복하고 $61,358.66 EMA240까지 재진입한 뒤 $62,300 상방 유동성을 흡수하면, 숏 커버링이 발생하며 $64,247.20 7일 고점 및 $65,400~$65,500 청산 클러스터까지 급등할 수 있다.",
      "data_quality": "medium",
      "metrics": {
        "cvd_divergence": 0.85,
        "cvd_change": 537.518,
        "oi_trend": 0.431,
        "oi_change_pct_24h": -0.691,
        "oi_latest": 102068.995,
        "funding_pressure": 0.436,
        "funding_avg": 6.405e-05,
        "funding_change_24h": 5.546e-05,
        "long_account_ratio": 0.688,
        "short_account_ratio": 0.312,
        "long_account_latest": 0.671,
        "short_account_latest": 0.329,
        "long_account_change_24h": -0.0321,
        "short_account_change_24h": 0.0321,
        "account_flow_label": "short_accounts_rising_long_accounts_falling",
        "account_short_crowding": 0.0,
        "account_long_crowding": 1.0,
        "ls_imbalance": 0.0,
        "ls_imbalance_interpretation": "high=short-account crowding / low=long-account crowding",
        "spot_futures_basis_score": 0.482,
        "spot_futures_basis_pct": -0.0712,
        "basis_change_lookback": -0.0214,
        "aggregate_score": 0.44,
        "bull_signals": 1,
        "bear_signals": 3,
        "liq_below": [
          [
            58800,
            7115.2877865
          ],
          [
            57500,
            8604.65083
          ],
          [
            53900,
            10755.8135375
          ]
        ],
        "liq_above": [
          [
            62300,
            8004.464022
          ],
          [
            65400,
            7200.7891325
          ],
          [
            65500,
            7443.20959375
          ]
        ],
        "strongest_liq_level": 53900,
        "fragility_score": 0.85,
        "positioning_extreme": "balanced"
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.62,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.74,\n  \"setup_signals\": [\n    \"현재가 $60,217.30이 EMA120 $60,435.81 및 EMA240 $61,358.66 아래에 있어 구조적 회복이 아직 확인되지 않음\",\n    \"CVD divergence 0.850으로 가격 반등 대비 매수 참여 품질이 약한 약세 다이버전스\",\n    \"24h OI -0.6910%로 신규 롱 유입보다 포지션 언와인딩 성격이 강함\",\n    \"long account latest 0.671, account_long_crowding 1.000으로 롱 계정 쏠림이 과도해 단기 역방향 리스크 존재\",\n    \"선물 basis -0.0712% 및 basis change -0.0214로 현물 대비 선물 수요가 약화\",\n    \"하방 청산 유동성 $58,800, $57,500 및 strongest liq level $53,900이 열려 있음\"\n  ],\n  \"reasoning\": \"확정 구조는 7일 저점 $58,030과 고점 $64,247.20 사이 박스권 내부이며, 현재가 $60,217.30은 EMA20 $60,074.48 위에 간신히 있지만 EMA120 $60,435.81과 EMA240 $61,358.66 아래라 명확한 BOS/CHoCH가 확인되지 않아 neutral로 판단한다. 다만 셋업은 약세 쪽이 우세한데, CVD divergence 0.850은 가격이 버티는 동안 실제 공격적 매수 참여가 충분하지 않다는 신호이며, OI가 24시간 -0.6910% 감소해 상승 추세를 지지하는 신규 포지션 유입도 약하다. long account latest 0.671 및 account_long_crowding 1.000은 롱 포지셔닝이 여전히 붐비는 상태임을 보여주며, 이는 파생시장 관점에서 단기 하방 청산 압력을 키운다. $60,435~$61,358 구간을 회복하지 못하면 $58,800, 이후 $57,500 하방 유동성 테스트 가능성이 높고, 반대로 $62,300 상방 청산대를 강하게 돌파하면 약세 셋업은 무효화된다.\",\n  \"key_levels\": {\n    \"support\": [\n      60074.48,\n      58800,\n      58030,\n      57500,\n      53900\n    ],\n    \"resistance\": [\n      60435.81,\n      61358.66,\n      62300,\n      64247.2,\n      65400,\n      65500\n    ]\n  },\n  \"time_horizon\": \"short term, 4-8시간\",\n  \"invalidation_level\": \"$62,300 상방 청산대를 돌파 후 1시간봉 종가 기준으로 유지\",\n  \"risk_scenario\": \"$60,435.81 EMA120을 회복하고 $61,358.66 EMA240까지 재진입한 뒤 $62,300 상방 유동성을 흡수하면, 숏 커버링이 발생하며 $64,247.20 7일 고점 및 $65,400~$65,500 청산 클러스터까지 급등할 수 있다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "harmonic": {
      "agent_id": "harmonic",
      "display_name": "Harmonic Specialist",
      "signal": "neutral",
      "confidence": 0.55,
      "structure_bias": "neutral",
      "setup_bias": "bullish",
      "setup_score": 0.62,
      "setup_signals": [
        "고품질 strict bullish Bat 형성 PRZ가 $59,615.47-$60,093.59에 활성화되어 있으며 D 예상가는 $59,854.53, XAD/BC_EXT/ABCD 3중 Fib confluence",
        "고품질 strict bullish Butterfly 형성 PRZ가 $59,743.46-$60,093.62에 중첩되어 있어 $59.7k-$60.1k가 단기 반등 후보 구간",
        "현재가 $60,217.30은 bullish PRZ 상단 $60,093.59 바로 위에 있어 PRZ 방어 후 반등 시도 가능성이 있으나, 아직 confirmed_reaction=false",
        "상단에는 bearish Gartley 형성 PRZ $60,620.89-$61,046.73가 nearby로 존재하며, $60,833.81 부근은 상승 시 반락 리스크 구간",
        "완료된 bearish Gartley 후보는 $60,359.54-$60,717.48 PRZ에서 반응 확인 이력이 있으나 candidate-tier이므로 단독 구조 전환 근거로는 제한적"
      ],
      "reasoning": "현재 핵심 harmonic setup은 $59,615.47-$60,093.62에 겹친 bullish Bat/Butterfly PRZ이며, 두 패턴 모두 high quality, strict, 3중 Fib confluence로 단기 반등 후보 구간을 형성한다. 다만 best Bat의 harmonic_vote_state는 confirmed_reaction=false이고 권한은 pre_confirmation_reversal_candidate에 불과하므로, 이 PRZ만으로 시장 구조를 bullish로 확정할 수 없다. 상단 $60,620.89-$61,046.73에는 high-quality bearish Gartley PRZ가 대기하고 있어, $60.6k-$61.0k 접근 시 매도 반응 또는 되돌림 리스크가 커진다. 따라서 구조는 확정 BOS/CHoCH 정보 부재로 neutral, 실행 setup은 $59.6k-$60.1k 방어를 전제로 한 제한적 bullish로 평가한다.",
      "key_levels": {
        "support": [
          60093.59,
          59854.53,
          59743.46,
          59615.47,
          59530.7
        ],
        "resistance": [
          60313.6,
          60557.8,
          60620.89,
          60833.81,
          61046.73
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "59615.47",
      "risk_scenario": "$59,615.47 하단을 1시간 종가로 이탈하면 bullish Bat/Butterfly PRZ 방어 실패로 해석되며, $59,530.70 및 $59,305.57-$59,667.60의 하위 bullish Gartley 후보 구간까지 재탐색할 수 있다. 반대로 가격이 $60,620.89-$61,046.73 bearish Gartley PRZ에 진입한 뒤 rejection, sweep-reclaim 실패, 15m/1h CHoCH 하락이 동반되면 단기 반등 시나리오는 $60,336.02, $60,028.49 방향의 되돌림으로 전환될 수 있다.",
      "data_quality": "high",
      "metrics": {
        "patterns_found": 114,
        "completed_patterns_found": 36,
        "forming_d_prz_found": 78,
        "swing_orders_scanned": [
          3,
          5,
          8
        ],
        "swing_search_window": 34,
        "multiscale_swings_scanned": 68,
        "swing_highs_scanned": 37,
        "swing_lows_scanned": 31,
        "timeframe": "1h",
        "prz_active_threshold_pct": 0.5,
        "prz_nearby_threshold_pct": 1.0,
        "prz_watch_threshold_pct": 2.0,
        "prz_max_width_pct": 0.9,
        "quality_counts": {
          "high": 8,
          "medium": 50,
          "low": 56
        },
        "prz_status_counts": {
          "active": 25,
          "nearby": 21,
          "watch": 31,
          "far": 37,
          "forming": 35
        },
        "high_confluence_prz_count": 39,
        "strict_patterns_found": 52,
        "candidate_patterns_found": 62,
        "active_patterns_at_prz": 25,
        "nearby_patterns": 21,
        "all_patterns": [
          "bat",
          "shark",
          "bat",
          "bat",
          "shark",
          "butterfly",
          "bat",
          "gartley",
          "crab",
          "gartley",
          "bat",
          "gartley",
          "shark",
          "crab",
          "bat",
          "butterfly",
          "bat",
          "butterfly",
          "butterfly",
          "butterfly",
          "butterfly",
          "butterfly",
          "gartley",
          "shark",
          "butterfly",
          "gartley",
          "gartley",
          "crab",
          "shark",
          "shark",
          "butterfly",
          "crab",
          "shark",
          "bat",
          "gartley",
          "butterfly",
          "crab",
          "crab",
          "crab",
          "shark",
          "bat",
          "crab",
          "crab",
          "crab",
          "crab",
          "shark",
          "crab",
          "crab",
          "crab",
          "crab",
          "crab",
          "crab",
          "bat",
          "crab",
          "bat",
          "butterfly",
          "gartley",
          "bat",
          "crab",
          "butterfly",
          "gartley",
          "shark",
          "bat",
          "gartley",
          "bat",
          "butterfly",
          "gartley",
          "butterfly",
          "bat",
          "crab",
          "gartley",
          "gartley",
          "shark",
          "shark",
          "gartley",
          "crab",
          "bat",
          "butterfly",
          "butterfly",
          "shark",
          "gartley",
          "crab",
          "crab",
          "crab",
          "butterfly",
          "butterfly",
          "shark",
          "gartley",
          "butterfly",
          "shark",
          "butterfly",
          "crab",
          "gartley",
          "gartley",
          "shark",
          "butterfly",
          "crab",
          "butterfly",
          "crab",
          "bat",
          "crab",
          "bat",
          "shark",
          "crab",
          "gartley",
          "crab",
          "bat",
          "butterfly",
          "crab",
          "shark",
          "crab",
          "butterfly",
          "crab",
          "gartley"
        ],
        "all_signals": [
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish"
        ],
        "best_pattern": "bat",
        "best_pattern_quality": "strict",
        "best_quality": "high",
        "best_pattern_score": 0.956,
        "best_completion_status": "forming",
        "nearest_pattern": "shark",
        "nearest_prz": 60264.01,
        "price_to_prz": 0.08,
        "prz_range": [
          59927.57,
          60600.44
        ],
        "council_relevant_prz_count": 3,
        "directional_influence_prz_count": 3,
        "confirmed_reaction_prz_count": 0,
        "validated_harmonic_tp_count": 0,
        "pattern_candidates": [
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.956,
            "ratio_score": 1.0,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 59854.53,
            "prz_range": [
              59615.47,
              60093.59
            ],
            "prz_width_pct": 0.799,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.6,
            "price_to_prz_pct_raw": -0.6024,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 59854.53,
              "a_price": 60557.8,
              "tp1_ad_382": 60123.18,
              "tp2_ad_618": 60289.15,
              "tp3_a_or_structure_liquidity": 60557.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.3854,
              "ABC": 0.4118
            },
            "x_price": 59530.7,
            "x_idx": 222,
            "x_order": 3,
            "a_price": 60557.8,
            "a_idx": 235,
            "a_order": 5,
            "b_price": 60162.0,
            "b_idx": 239,
            "b_order": 3,
            "c_price": 60325.0,
            "c_idx": 282,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "shark",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.907,
            "ratio_score": 0.812,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 59966.71,
            "prz_range": [
              59757.23,
              60176.18
            ],
            "prz_width_pct": 0.699,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.42,
            "price_to_prz_pct_raw": -0.4162,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "shark",
              "d_price": 59966.71,
              "a_price": 60245.0,
              "tp1_ad_382": 60073.01,
              "tp2_ad_618": 60138.69,
              "tp3_a_or_structure_liquidity": 60245.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4231,
              "ABC": 1.4065
            },
            "x_price": 60648.0,
            "x_idx": 183,
            "x_order": 5,
            "a_price": 60245.0,
            "a_idx": 201,
            "a_order": 5,
            "b_price": 60074.5,
            "b_idx": 234,
            "b_order": 3,
            "c_price": 60314.3,
            "c_idx": 254,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.902,
            "ratio_score": 0.846,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 59918.54,
            "prz_range": [
              59743.46,
              60093.62
            ],
            "prz_width_pct": 0.584,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.5,
            "price_to_prz_pct_raw": -0.4961,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 59918.54,
              "a_price": 60557.8,
              "tp1_ad_382": 60162.74,
              "tp2_ad_618": 60313.6,
              "tp3_a_or_structure_liquidity": 60557.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.819,
              "ABC": 0.4118
            },
            "x_price": 60074.5,
            "x_idx": 234,
            "x_order": 3,
            "a_price": 60557.8,
            "a_idx": 235,
            "a_order": 5,
            "b_price": 60162.0,
            "b_idx": 239,
            "b_order": 3,
            "c_price": 60325.0,
            "c_idx": 282,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.891,
            "ratio_score": 0.865,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 60833.81,
            "prz_range": [
              60620.89,
              61046.73
            ],
            "prz_width_pct": 0.7,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.02,
            "price_to_prz_pct_raw": 1.0238,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 60833.81,
              "a_price": 59530.7,
              "tp1_ad_382": 60336.02,
              "tp2_ad_618": 60028.49,
              "tp3_a_or_structure_liquidity": 59530.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5953,
              "ABC": 0.7185
            },
            "x_price": 61256.0,
            "x_idx": 178,
            "x_order": 5,
            "a_price": 59530.7,
            "a_idx": 222,
            "a_order": 3,
            "b_price": 60557.8,
            "b_idx": 235,
            "b_order": 5,
            "c_price": 59819.8,
            "c_idx": 250,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.887,
            "ratio_score": 0.803,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 60538.51,
            "prz_range": [
              60359.54,
              60717.48
            ],
            "prz_width_pct": 0.591,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.53,
            "price_to_prz_pct_raw": 0.5334,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 60538.51,
              "a_price": 59530.7,
              "tp1_ad_382": 60153.53,
              "tp2_ad_618": 59915.68,
              "tp3_a_or_structure_liquidity": 59530.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6512,
              "ABC": 0.7651
            },
            "x_price": 60734.0,
            "x_idx": 211,
            "x_order": 8,
            "a_price": 59530.7,
            "a_idx": 222,
            "a_order": 3,
            "b_price": 60314.3,
            "b_idx": 254,
            "b_order": 3,
            "c_price": 59714.8,
            "c_idx": 257,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.841,
            "ratio_score": 0.777,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 60543.3,
            "prz_range": [
              60359.54,
              60717.48
            ],
            "prz_width_pct": 0.591,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.53,
            "price_to_prz_pct_raw": 0.5334,
            "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": 1.302,
                "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": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 60538.51,
              "a_price": 59530.7,
              "tp1_ad_382": 60153.53,
              "tp2_ad_618": 59915.68,
              "tp3_a_or_structure_liquidity": 59530.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6512,
              "ABC": 0.7651,
              "BCD": 1.382,
              "XAD": 0.8415
            },
            "x_price": 60734.0,
            "x_idx": 211,
            "x_order": 8,
            "a_price": 59530.7,
            "a_idx": 222,
            "a_order": 3,
            "b_price": 60314.3,
            "b_idx": 254,
            "b_order": 3,
            "c_price": 59714.8,
            "c_idx": 257,
            "c_order": 8,
            "d_idx": 260
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.839,
            "ratio_score": 0.711,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 59486.59,
            "prz_range": [
              59305.57,
              59667.6
            ],
            "prz_width_pct": 0.609,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.21,
            "price_to_prz_pct_raw": -1.2135,
            "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": 59486.59,
              "a_price": 60580.0,
              "tp1_ad_382": 59904.27,
              "tp2_ad_618": 60162.32,
              "tp3_a_or_structure_liquidity": 60580.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5692,
              "ABC": 0.7053
            },
            "x_price": 59060.0,
            "x_idx": 173,
            "x_order": 8,
            "a_price": 60580.0,
            "a_idx": 220,
            "a_order": 8,
            "b_price": 59714.8,
            "b_idx": 257,
            "b_order": 8,
            "c_price": 60325.0,
            "c_idx": 282,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "shark",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.935,
            "ratio_score": 1.0,
            "prz_score": 0.93,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 60531.07,
            "prz_range": [
              60176.61,
              60885.53
            ],
            "prz_width_pct": 1.171,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.52,
            "price_to_prz_pct_raw": 0.5211,
            "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": 60531.07,
              "a_price": 59819.8,
              "tp1_ad_382": 60259.37,
              "tp2_ad_618": 60091.51,
              "tp3_a_or_structure_liquidity": 59819.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5409,
              "ABC": 1.2123
            },
            "x_price": 60734.0,
            "x_idx": 211,
            "x_order": 8,
            "a_price": 59819.8,
            "a_idx": 250,
            "a_order": 5,
            "b_price": 60314.3,
            "b_idx": 254,
            "b_order": 3,
            "c_price": 59714.8,
            "c_idx": 257,
            "c_order": 8,
            "d_idx": null
          }
        ],
        "council_relevant_prz": [
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.956,
            "ratio_score": 1.0,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 59854.53,
            "prz_range": [
              59615.47,
              60093.59
            ],
            "prz_width_pct": 0.799,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.6,
            "price_to_prz_pct_raw": -0.6024,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 59854.53,
              "a_price": 60557.8,
              "tp1_ad_382": 60123.18,
              "tp2_ad_618": 60289.15,
              "tp3_a_or_structure_liquidity": 60557.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.3854,
              "ABC": 0.4118
            },
            "x_price": 59530.7,
            "x_idx": 222,
            "x_order": 3,
            "a_price": 60557.8,
            "a_idx": 235,
            "a_order": 5,
            "b_price": 60162.0,
            "b_idx": 239,
            "b_order": 3,
            "c_price": 60325.0,
            "c_idx": 282,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.902,
            "ratio_score": 0.846,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 59918.54,
            "prz_range": [
              59743.46,
              60093.62
            ],
            "prz_width_pct": 0.584,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.5,
            "price_to_prz_pct_raw": -0.4961,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 59918.54,
              "a_price": 60557.8,
              "tp1_ad_382": 60162.74,
              "tp2_ad_618": 60313.6,
              "tp3_a_or_structure_liquidity": 60557.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.819,
              "ABC": 0.4118
            },
            "x_price": 60074.5,
            "x_idx": 234,
            "x_order": 3,
            "a_price": 60557.8,
            "a_idx": 235,
            "a_order": 5,
            "b_price": 60162.0,
            "b_idx": 239,
            "b_order": 3,
            "c_price": 60325.0,
            "c_idx": 282,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.891,
            "ratio_score": 0.865,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 60833.81,
            "prz_range": [
              60620.89,
              61046.73
            ],
            "prz_width_pct": 0.7,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.02,
            "price_to_prz_pct_raw": 1.0238,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 60833.81,
              "a_price": 59530.7,
              "tp1_ad_382": 60336.02,
              "tp2_ad_618": 60028.49,
              "tp3_a_or_structure_liquidity": 59530.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5953,
              "ABC": 0.7185
            },
            "x_price": 61256.0,
            "x_idx": 178,
            "x_order": 5,
            "a_price": 59530.7,
            "a_idx": 222,
            "a_order": 3,
            "b_price": 60557.8,
            "b_idx": 235,
            "b_order": 5,
            "c_price": 59819.8,
            "c_idx": 250,
            "c_order": 5,
            "d_idx": null
          }
        ],
        "report_detail_candidates": [
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.956,
            "ratio_score": 1.0,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 59854.53,
            "prz_range": [
              59615.47,
              60093.59
            ],
            "prz_width_pct": 0.799,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.6,
            "price_to_prz_pct_raw": -0.6024,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 59854.53,
              "a_price": 60557.8,
              "tp1_ad_382": 60123.18,
              "tp2_ad_618": 60289.15,
              "tp3_a_or_structure_liquidity": 60557.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.3854,
              "ABC": 0.4118
            },
            "x_price": 59530.7,
            "x_idx": 222,
            "x_order": 3,
            "a_price": 60557.8,
            "a_idx": 235,
            "a_order": 5,
            "b_price": 60162.0,
            "b_idx": 239,
            "b_order": 3,
            "c_price": 60325.0,
            "c_idx": 282,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "shark",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.907,
            "ratio_score": 0.812,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 59966.71,
            "prz_range": [
              59757.23,
              60176.18
            ],
            "prz_width_pct": 0.699,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.42,
            "price_to_prz_pct_raw": -0.4162,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "shark",
              "d_price": 59966.71,
              "a_price": 60245.0,
              "tp1_ad_382": 60073.01,
              "tp2_ad_618": 60138.69,
              "tp3_a_or_structure_liquidity": 60245.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4231,
              "ABC": 1.4065
            },
            "x_price": 60648.0,
            "x_idx": 183,
            "x_order": 5,
            "a_price": 60245.0,
            "a_idx": 201,
            "a_order": 5,
            "b_price": 60074.5,
            "b_idx": 234,
            "b_order": 3,
            "c_price": 60314.3,
            "c_idx": 254,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.902,
            "ratio_score": 0.846,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 59918.54,
            "prz_range": [
              59743.46,
              60093.62
            ],
            "prz_width_pct": 0.584,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.5,
            "price_to_prz_pct_raw": -0.4961,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 59918.54,
              "a_price": 60557.8,
              "tp1_ad_382": 60162.74,
              "tp2_ad_618": 60313.6,
              "tp3_a_or_structure_liquidity": 60557.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.819,
              "ABC": 0.4118
            },
            "x_price": 60074.5,
            "x_idx": 234,
            "x_order": 3,
            "a_price": 60557.8,
            "a_idx": 235,
            "a_order": 5,
            "b_price": 60162.0,
            "b_idx": 239,
            "b_order": 3,
            "c_price": 60325.0,
            "c_idx": 282,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.891,
            "ratio_score": 0.865,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 60833.81,
            "prz_range": [
              60620.89,
              61046.73
            ],
            "prz_width_pct": 0.7,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.02,
            "price_to_prz_pct_raw": 1.0238,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 60833.81,
              "a_price": 59530.7,
              "tp1_ad_382": 60336.02,
              "tp2_ad_618": 60028.49,
              "tp3_a_or_structure_liquidity": 59530.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5953,
              "ABC": 0.7185
            },
            "x_price": 61256.0,
            "x_idx": 178,
            "x_order": 5,
            "a_price": 59530.7,
            "a_idx": 222,
            "a_order": 3,
            "b_price": 60557.8,
            "b_idx": 235,
            "b_order": 5,
            "c_price": 59819.8,
            "c_idx": 250,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.887,
            "ratio_score": 0.803,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 60538.51,
            "prz_range": [
              60359.54,
              60717.48
            ],
            "prz_width_pct": 0.591,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.53,
            "price_to_prz_pct_raw": 0.5334,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 60538.51,
              "a_price": 59530.7,
              "tp1_ad_382": 60153.53,
              "tp2_ad_618": 59915.68,
              "tp3_a_or_structure_liquidity": 59530.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6512,
              "ABC": 0.7651
            },
            "x_price": 60734.0,
            "x_idx": 211,
            "x_order": 8,
            "a_price": 59530.7,
            "a_idx": 222,
            "a_order": 3,
            "b_price": 60314.3,
            "b_idx": 254,
            "b_order": 3,
            "c_price": 59714.8,
            "c_idx": 257,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.841,
            "ratio_score": 0.777,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 60543.3,
            "prz_range": [
              60359.54,
              60717.48
            ],
            "prz_width_pct": 0.591,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.53,
            "price_to_prz_pct_raw": 0.5334,
            "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": 1.302,
                "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": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 60538.51,
              "a_price": 59530.7,
              "tp1_ad_382": 60153.53,
              "tp2_ad_618": 59915.68,
              "tp3_a_or_structure_liquidity": 59530.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6512,
              "ABC": 0.7651,
              "BCD": 1.382,
              "XAD": 0.8415
            },
            "x_price": 60734.0,
            "x_idx": 211,
            "x_order": 8,
            "a_price": 59530.7,
            "a_idx": 222,
            "a_order": 3,
            "b_price": 60314.3,
            "b_idx": 254,
            "b_order": 3,
            "c_price": 59714.8,
            "c_idx": 257,
            "c_order": 8,
            "d_idx": 260
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.839,
            "ratio_score": 0.711,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 59486.59,
            "prz_range": [
              59305.57,
              59667.6
            ],
            "prz_width_pct": 0.609,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.21,
            "price_to_prz_pct_raw": -1.2135,
            "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": 59486.59,
              "a_price": 60580.0,
              "tp1_ad_382": 59904.27,
              "tp2_ad_618": 60162.32,
              "tp3_a_or_structure_liquidity": 60580.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5692,
              "ABC": 0.7053
            },
            "x_price": 59060.0,
            "x_idx": 173,
            "x_order": 8,
            "a_price": 60580.0,
            "a_idx": 220,
            "a_order": 8,
            "b_price": 59714.8,
            "b_idx": 257,
            "b_order": 8,
            "c_price": 60325.0,
            "c_idx": 282,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "shark",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.935,
            "ratio_score": 1.0,
            "prz_score": 0.93,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 60531.07,
            "prz_range": [
              60176.61,
              60885.53
            ],
            "prz_width_pct": 1.171,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.52,
            "price_to_prz_pct_raw": 0.5211,
            "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": 60531.07,
              "a_price": 59819.8,
              "tp1_ad_382": 60259.37,
              "tp2_ad_618": 60091.51,
              "tp3_a_or_structure_liquidity": 59819.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5409,
              "ABC": 1.2123
            },
            "x_price": 60734.0,
            "x_idx": 211,
            "x_order": 8,
            "a_price": 59819.8,
            "a_idx": 250,
            "a_order": 5,
            "b_price": 60314.3,
            "b_idx": 254,
            "b_order": 3,
            "c_price": 59714.8,
            "c_idx": 257,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.93,
            "ratio_score": 1.0,
            "prz_score": 0.93,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 59567.32,
            "prz_range": [
              59218.67,
              59915.97
            ],
            "prz_width_pct": 1.171,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.08,
            "price_to_prz_pct_raw": -1.0794,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 59567.32,
              "a_price": 60734.0,
              "tp1_ad_382": 60012.99,
              "tp2_ad_618": 60288.33,
              "tp3_a_or_structure_liquidity": 60734.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.394,
              "ABC": 0.7108
            },
            "x_price": 59060.0,
            "x_idx": 173,
            "x_order": 8,
            "a_price": 60734.0,
            "a_idx": 211,
            "a_order": 8,
            "b_price": 60074.5,
            "b_idx": 234,
            "b_order": 3,
            "c_price": 60543.3,
            "c_idx": 260,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.923,
            "ratio_score": 0.999,
            "prz_score": 0.959,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 59283.59,
            "prz_range": [
              58970.37,
              59596.81
            ],
            "prz_width_pct": 1.057,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.55,
            "price_to_prz_pct_raw": -1.5506,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 59283.59,
              "a_price": 60580.0,
              "tp1_ad_382": 59778.82,
              "tp2_ad_618": 60084.77,
              "tp3_a_or_structure_liquidity": 60580.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5001,
              "ABC": 0.6646
            },
            "x_price": 59060.0,
            "x_idx": 173,
            "x_order": 8,
            "a_price": 60580.0,
            "a_idx": 220,
            "a_order": 8,
            "b_price": 59819.8,
            "b_idx": 250,
            "b_order": 5,
            "c_price": 60325.0,
            "c_idx": 282,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.893,
            "ratio_score": 1.0,
            "prz_score": 0.871,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 60891.35,
            "prz_range": [
              60465.52,
              61317.17
            ],
            "prz_width_pct": 1.399,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.12,
            "price_to_prz_pct_raw": 1.1194,
            "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": 60891.35,
              "a_price": 59530.7,
              "tp1_ad_382": 60371.58,
              "tp2_ad_618": 60050.47,
              "tp3_a_or_structure_liquidity": 59530.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4542,
              "ABC": 0.7651
            },
            "x_price": 61256.0,
            "x_idx": 178,
            "x_order": 5,
            "a_price": 59530.7,
            "a_idx": 222,
            "a_order": 3,
            "b_price": 60314.3,
            "b_idx": 254,
            "b_order": 3,
            "c_price": 59714.8,
            "c_idx": 257,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "crab",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.887,
            "ratio_score": 1.0,
            "prz_score": 0.937,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 59180.95,
            "prz_range": [
              58842.54,
              59519.36
            ],
            "prz_width_pct": 1.144,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.72,
            "price_to_prz_pct_raw": -1.721,
            "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": "crab",
              "d_price": 59180.95,
              "a_price": 60557.8,
              "tp1_ad_382": 59706.91,
              "tp2_ad_618": 60031.84,
              "tp3_a_or_structure_liquidity": 60557.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.3854,
              "ABC": 0.7044
            },
            "x_price": 59530.7,
            "x_idx": 222,
            "x_order": 3,
            "a_price": 60557.8,
            "a_idx": 235,
            "a_order": 5,
            "b_price": 60162.0,
            "b_idx": 239,
            "b_order": 3,
            "c_price": 59883.2,
            "c_idx": 274,
            "c_order": 3,
            "d_idx": null
          }
        ],
        "actionable_patterns_list": [
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.956,
            "prz_proximity": "active",
            "prz_range": [
              59615.47,
              60093.59
            ],
            "prz_reversal_direction": "up",
            "price_to_prz_pct": -0.6,
            "high_confluence_prz": true,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 59854.53,
              "a_price": 60557.8,
              "tp1_ad_382": 60123.18,
              "tp2_ad_618": 60289.15,
              "tp3_a_or_structure_liquidity": 60557.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "BAT FORMING HIGH PRZ $59,615.47-$60,093.59: expected reversal UP if price reacts in zone"
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.902,
            "prz_proximity": "active",
            "prz_range": [
              59743.46,
              60093.62
            ],
            "prz_reversal_direction": "up",
            "price_to_prz_pct": -0.5,
            "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": "butterfly",
              "d_price": 59918.54,
              "a_price": 60557.8,
              "tp1_ad_382": 60162.74,
              "tp2_ad_618": 60313.6,
              "tp3_a_or_structure_liquidity": 60557.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "BUTTERFLY FORMING HIGH PRZ $59,743.46-$60,093.62: expected reversal UP if price reacts in zone"
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.891,
            "prz_proximity": "nearby",
            "prz_range": [
              60620.89,
              61046.73
            ],
            "prz_reversal_direction": "down",
            "price_to_prz_pct": 1.02,
            "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": "bearish",
              "source": "gartley",
              "d_price": 60833.81,
              "a_price": 59530.7,
              "tp1_ad_382": 60336.02,
              "tp2_ad_618": 60028.49,
              "tp3_a_or_structure_liquidity": 59530.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "GARTLEY FORMING HIGH PRZ $60,620.89-$61,046.73: expected reversal DOWN if price reacts in zone"
          }
        ],
        "best_council_prz": {
          "pattern": "bat",
          "signal": "bullish",
          "completion_status": "forming",
          "pattern_quality": "strict",
          "quality": "high",
          "pattern_score": 0.956,
          "ratio_score": 1.0,
          "prz_score": 1.0,
          "prz_proximity": "active",
          "action_status": "active",
          "high_confluence_prz": true,
          "d_price": 59854.53,
          "prz_range": [
            59615.47,
            60093.59
          ],
          "prz_width_pct": 0.799,
          "prz_confluence_count": 3,
          "prz_fib_families": [
            "ABCD",
            "BC_EXT",
            "XAD"
          ],
          "price_to_prz_pct": -0.6,
          "price_to_prz_pct_raw": -0.6024,
          "harmonic_vote_state": {
            "authority": "pre_confirmation_reversal_candidate",
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "confirmation_reasons": [],
            "reaction_score": 0.0,
            "reaction_detail": {
              "reaction_score": 0.0,
              "reasons": []
            },
            "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
            "standalone_path_override_allowed": false
          },
          "directional_vote_weight": 0.35,
          "confirmed_reaction": false,
          "standalone_path_override_allowed": false,
          "tp_ladder": {
            "direction": "bullish",
            "source": "bat",
            "d_price": 59854.53,
            "a_price": 60557.8,
            "tp1_ad_382": 60123.18,
            "tp2_ad_618": 60289.15,
            "tp3_a_or_structure_liquidity": 60557.8,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          "ratios": {
            "XAB": 0.3854,
            "ABC": 0.4118
          },
          "x_price": 59530.7,
          "x_idx": 222,
          "x_order": 3,
          "a_price": 60557.8,
          "a_idx": 235,
          "a_order": 5,
          "b_price": 60162.0,
          "b_idx": 239,
          "b_order": 3,
          "c_price": 60325.0,
          "c_idx": 282,
          "c_order": 5,
          "d_idx": null
        },
        "best_tp_ladder": {
          "direction": "bullish",
          "source": "bat",
          "d_price": 59854.53,
          "a_price": 60557.8,
          "tp1_ad_382": 60123.18,
          "tp2_ad_618": 60289.15,
          "tp3_a_or_structure_liquidity": 60557.8,
          "note": "Use as strong TP ladder context; not standalone path authority."
        },
        "tp_ladder": [
          {
            "direction": "bullish",
            "source": "bat",
            "d_price": 59854.53,
            "a_price": 60557.8,
            "tp1_ad_382": 60123.18,
            "tp2_ad_618": 60289.15,
            "tp3_a_or_structure_liquidity": 60557.8,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bullish",
            "source": "butterfly",
            "d_price": 59918.54,
            "a_price": 60557.8,
            "tp1_ad_382": 60162.74,
            "tp2_ad_618": 60313.6,
            "tp3_a_or_structure_liquidity": 60557.8,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bearish",
            "source": "gartley",
            "d_price": 60833.81,
            "a_price": 59530.7,
            "tp1_ad_382": 60336.02,
            "tp2_ad_618": 60028.49,
            "tp3_a_or_structure_liquidity": 59530.7,
            "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.393,
          "bearish": 0.132
        },
        "directional_score_total": 0.525,
        "directional_dominance": 0.497
      },
      "raw_llm_response": "{\n  \"signal\": \"neutral\",\n  \"confidence\": 0.55,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.62,\n  \"setup_signals\": [\n    \"고품질 strict bullish Bat 형성 PRZ가 $59,615.47-$60,093.59에 활성화되어 있으며 D 예상가는 $59,854.53, XAD/BC_EXT/ABCD 3중 Fib confluence\",\n    \"고품질 strict bullish Butterfly 형성 PRZ가 $59,743.46-$60,093.62에 중첩되어 있어 $59.7k-$60.1k가 단기 반등 후보 구간\",\n    \"현재가 $60,217.30은 bullish PRZ 상단 $60,093.59 바로 위에 있어 PRZ 방어 후 반등 시도 가능성이 있으나, 아직 confirmed_reaction=false\",\n    \"상단에는 bearish Gartley 형성 PRZ $60,620.89-$61,046.73가 nearby로 존재하며, $60,833.81 부근은 상승 시 반락 리스크 구간\",\n    \"완료된 bearish Gartley 후보는 $60,359.54-$60,717.48 PRZ에서 반응 확인 이력이 있으나 candidate-tier이므로 단독 구조 전환 근거로는 제한적\"\n  ],\n  \"reasoning\": \"현재 핵심 harmonic setup은 $59,615.47-$60,093.62에 겹친 bullish Bat/Butterfly PRZ이며, 두 패턴 모두 high quality, strict, 3중 Fib confluence로 단기 반등 후보 구간을 형성한다. 다만 best Bat의 harmonic_vote_state는 confirmed_reaction=false이고 권한은 pre_confirmation_reversal_candidate에 불과하므로, 이 PRZ만으로 시장 구조를 bullish로 확정할 수 없다. 상단 $60,620.89-$61,046.73에는 high-quality bearish Gartley PRZ가 대기하고 있어, $60.6k-$61.0k 접근 시 매도 반응 또는 되돌림 리스크가 커진다. 따라서 구조는 확정 BOS/CHoCH 정보 부재로 neutral, 실행 setup은 $59.6k-$60.1k 방어를 전제로 한 제한적 bullish로 평가한다.\",\n  \"key_levels\": {\n    \"support\": [\n      60093.59,\n      59854.53,\n      59743.46,\n      59615.47,\n      59530.7\n    ],\n    \"resistance\": [\n      60313.6,\n      60557.8,\n      60620.89,\n      60833.81,\n      61046.73\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"59615.47\",\n  \"risk_scenario\": \"$59,615.47 하단을 1시간 종가로 이탈하면 bullish Bat/Butterfly PRZ 방어 실패로 해석되며, $59,530.70 및 $59,305.57-$59,667.60의 하위 bullish Gartley 후보 구간까지 재탐색할 수 있다. 반대로 가격이 $60,620.89-$61,046.73 bearish Gartley PRZ에 진입한 뒤 rejection, sweep-reclaim 실패, 15m/1h CHoCH 하락이 동반되면 단기 반등 시나리오는 $60,336.02, $60,028.49 방향의 되돌림으로 전환될 수 있다.\",\n  \"data_quality\": \"high\"\n}"
    },
    "wyckoff": {
      "agent_id": "wyckoff",
      "display_name": "Wyckoff Expert",
      "signal": "bearish",
      "confidence": 0.82,
      "structure_bias": "bearish",
      "setup_bias": "bearish",
      "setup_score": 0.68,
      "setup_signals": [
        "현재가 $60,217.30은 활성 재분배 후보 범위 저점 $58,030.00 대비 상단부이며, EQ 약 $59,394.15 위의 프리미엄 구간에 위치",
        "활성 구조의 UTAD 후보 $60,758.30 아래에서 거래 중이며, 즉각적인 회복 실패 시 공급 우위 유지",
        "활성 AR 고점 $60,466.90 및 EMA120 $60,435.81 아래에 위치해 단기 되돌림이 아직 수용으로 확인되지 않음",
        "이전 확정 분배 구조에서 SOW $59,060.00 이후 Phase E 저점 $58,030.00이 발생해 하방 구조가 이미 확인됨",
        "주요 분배 범위 하단 $62,836.60 및 UTAD $63,209.60을 재진입하지 못한 상태"
      ],
      "reasoning": "1시간 구조는 regime=DIS, regime_state=confirmed_dis, regime_fitness=0.991로 확정 분배 판독이며, 이전 구조는 BC $63,410.30 → AR $62,836.60 → ST $64,568.00 → UTAD $63,209.60 → SOW $59,060.00 → Phase E $58,030.00 순서로 완성되었습니다. 현재 가격 $60,217.30은 메인 분배 범위 하단 $62,836.60 아래에 있어 구조적으로는 여전히 bearish이며, $62,836.60 재진입 전까지는 Phase E 이후의 약세 구조가 우선입니다. 다만 활성 구조는 $58,030.00 저점 이후 $60,758.30 UTAD 후보를 만든 재분배 후보로 보이며, 현재가는 $60,466.90~$60,758.30 공급대 바로 아래에서 반응을 확인하는 구간입니다. 즉 구조_bias는 확정 bearish이고, setup_bias도 $60,758.30 회복 실패를 전제로 한 단기 bearish이나, $60,758.30 위 수용이 나오면 즉각적인 하방 셋업은 약화됩니다.",
      "key_levels": {
        "support": [
          59530.7,
          59060.0,
          58388.0,
          58030.0
        ],
        "resistance": [
          60466.9,
          60758.3,
          61870.0,
          62836.6,
          63209.6,
          63410.3,
          64568.0
        ]
      },
      "time_horizon": "short/medium term",
      "invalidation_level": "$60,758.30 위 1시간 종가 수용 시 단기 bearish setup 무효화; 구조적 bearish 판독은 $62,836.60 재진입 및 $63,209.60 상향 수용 전까지 유지",
      "risk_scenario": "$60,758.30을 회복하면 활성 UTAD 후보의 실패가 아니라 재흡수 가능성으로 바뀌며, 가격은 $61,870.00 SOW_IN_PHASE_B 구간과 메인 범위 하단 $62,836.60을 재시험할 수 있습니다. 특히 $63,209.60까지 회복하면 이전 UTAD/분배 공급대가 무력화되는지 확인해야 하며, 그 경우 단기 하방 셋업은 중립으로 낮춰야 합니다.",
      "data_quality": "high",
      "metrics": {
        "acc_score": 87.6,
        "dis_score": 99.1,
        "regime": "DIS",
        "regime_state": "confirmed_dis",
        "structure_bias": "bearish",
        "phase_context": "confirmed_dis / distribution / Phase E",
        "phases_detected": [
          "BC",
          "AR",
          "ST",
          "SOW_IN_PHASE_B",
          "UT",
          "UTAD",
          "SOW",
          "Phase E"
        ],
        "last_phase": "Phase E",
        "phase_candidates": [
          {
            "label": "BC",
            "side": "high",
            "idx": 49,
            "price": 63410.3,
            "color": "#ffd166"
          },
          {
            "label": "AR",
            "side": "low",
            "idx": 53,
            "price": 62836.6,
            "color": "#06d6a0"
          },
          {
            "label": "ST",
            "side": "high",
            "idx": 88,
            "price": 64568.0,
            "color": "#118ab2"
          },
          {
            "label": "SOW_IN_PHASE_B",
            "side": "low",
            "idx": 140,
            "price": 61870.0,
            "color": "#ef476f"
          },
          {
            "label": "UT",
            "side": "high",
            "idx": 157,
            "price": 63090.9,
            "color": "#f9844a"
          },
          {
            "label": "UTAD",
            "side": "high",
            "idx": 167,
            "price": 63209.6,
            "color": "#f9844a"
          },
          {
            "label": "SOW",
            "side": "low",
            "idx": 173,
            "price": 59060.0,
            "color": "#ef476f"
          },
          {
            "label": "Phase E",
            "side": "low",
            "idx": 193,
            "price": 58030.0,
            "color": "#7209b7"
          }
        ],
        "phase_structures": [
          {
            "structure_id": "1h_cycle_1",
            "sequence": 1,
            "timeframe": "1h",
            "regime": "distribution",
            "role": "prior_completed_structure",
            "is_active": false,
            "is_completed": true,
            "is_confirmed": true,
            "structure_bias": "bearish",
            "phase_context": "distribution",
            "start_idx": 49,
            "end_idx": 193,
            "phase_count": 8,
            "phases": [
              {
                "label": "BC",
                "side": "high",
                "idx": 49,
                "price": 63410.3,
                "color": "#ffd166",
                "dt": "2026-06-19 22:00:00+09:00"
              },
              {
                "label": "AR",
                "side": "low",
                "idx": 53,
                "price": 62836.6,
                "color": "#06d6a0",
                "dt": "2026-06-20 02:00:00+09:00"
              },
              {
                "label": "ST",
                "side": "high",
                "idx": 88,
                "price": 64568.0,
                "color": "#118ab2",
                "dt": "2026-06-21 13:00:00+09:00"
              },
              {
                "label": "SOW_IN_PHASE_B",
                "side": "low",
                "idx": 140,
                "price": 61870.0,
                "color": "#ef476f",
                "dt": "2026-06-23 17:00:00+09:00"
              },
              {
                "label": "UT",
                "side": "high",
                "idx": 157,
                "price": 63090.9,
                "color": "#f9844a",
                "dt": "2026-06-24 10:00:00+09:00"
              },
              {
                "label": "UTAD",
                "side": "high",
                "idx": 167,
                "price": 63209.6,
                "color": "#f9844a",
                "dt": "2026-06-24 20:00:00+09:00"
              },
              {
                "label": "SOW",
                "side": "low",
                "idx": 173,
                "price": 59060.0,
                "color": "#ef476f",
                "dt": "2026-06-25 02:00:00+09:00"
              },
              {
                "label": "Phase E",
                "side": "low",
                "idx": 193,
                "price": 58030.0,
                "color": "#7209b7",
                "dt": "2026-06-25 22:00:00+09:00"
              }
            ]
          },
          {
            "structure_id": "1h_cycle_2",
            "sequence": 2,
            "timeframe": "1h",
            "regime": "redistribution",
            "role": "current_structure_candidate",
            "is_active": true,
            "is_completed": false,
            "is_confirmed": true,
            "structure_bias": "bearish",
            "phase_context": "redistribution",
            "start_idx": 193,
            "end_idx": 288,
            "phase_count": 6,
            "phases": [
              {
                "label": "SC",
                "side": "low",
                "idx": 193,
                "price": 58030.0,
                "color": "#ffd166",
                "dt": "2026-06-25 22:00:00+09:00"
              },
              {
                "label": "AR",
                "side": "high",
                "idx": 194,
                "price": 60466.9,
                "color": "#06d6a0",
                "dt": "2026-06-25 23:00:00+09:00"
              },
              {
                "label": "ST",
                "side": "low",
                "idx": 217,
                "price": 58388.0,
                "color": "#118ab2",
                "dt": "2026-06-26 22:00:00+09:00"
              },
              {
                "label": "SOW_IN_PHASE_B",
                "side": "low",
                "idx": 222,
                "price": 59530.7,
                "color": "#ef476f",
                "dt": "2026-06-27 03:00:00+09:00"
              },
              {
                "label": "UT",
                "side": "high",
                "idx": 235,
                "price": 60557.8,
                "color": "#f9844a",
                "dt": "2026-06-27 16:00:00+09:00"
              },
              {
                "label": "UTAD",
                "side": "high",
                "idx": 288,
                "price": 60758.3,
                "color": "#f9844a",
                "dt": "2026-06-29 21:00:00+09:00"
              }
            ]
          }
        ],
        "active_structure_id": "1h_cycle_2",
        "primary_structure_id": "1h_cycle_1",
        "structure_count": 2,
        "regime_fitness": 0.9908026755852842,
        "current_event": "Phase E",
        "major_phase": "E",
        "pos_in_range": 0.5,
        "main_range_low": 62836.6,
        "main_range_high": 63410.3
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.82,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.68,\n  \"setup_signals\": [\n    \"현재가 $60,217.30은 활성 재분배 후보 범위 저점 $58,030.00 대비 상단부이며, EQ 약 $59,394.15 위의 프리미엄 구간에 위치\",\n    \"활성 구조의 UTAD 후보 $60,758.30 아래에서 거래 중이며, 즉각적인 회복 실패 시 공급 우위 유지\",\n    \"활성 AR 고점 $60,466.90 및 EMA120 $60,435.81 아래에 위치해 단기 되돌림이 아직 수용으로 확인되지 않음\",\n    \"이전 확정 분배 구조에서 SOW $59,060.00 이후 Phase E 저점 $58,030.00이 발생해 하방 구조가 이미 확인됨\",\n    \"주요 분배 범위 하단 $62,836.60 및 UTAD $63,209.60을 재진입하지 못한 상태\"\n  ],\n  \"reasoning\": \"1시간 구조는 regime=DIS, regime_state=confirmed_dis, regime_fitness=0.991로 확정 분배 판독이며, 이전 구조는 BC $63,410.30 → AR $62,836.60 → ST $64,568.00 → UTAD $63,209.60 → SOW $59,060.00 → Phase E $58,030.00 순서로 완성되었습니다. 현재 가격 $60,217.30은 메인 분배 범위 하단 $62,836.60 아래에 있어 구조적으로는 여전히 bearish이며, $62,836.60 재진입 전까지는 Phase E 이후의 약세 구조가 우선입니다. 다만 활성 구조는 $58,030.00 저점 이후 $60,758.30 UTAD 후보를 만든 재분배 후보로 보이며, 현재가는 $60,466.90~$60,758.30 공급대 바로 아래에서 반응을 확인하는 구간입니다. 즉 구조_bias는 확정 bearish이고, setup_bias도 $60,758.30 회복 실패를 전제로 한 단기 bearish이나, $60,758.30 위 수용이 나오면 즉각적인 하방 셋업은 약화됩니다.\",\n  \"key_levels\": {\n    \"support\": [\n      59530.7,\n      59060.0,\n      58388.0,\n      58030.0\n    ],\n    \"resistance\": [\n      60466.9,\n      60758.3,\n      61870.0,\n      62836.6,\n      63209.6,\n      63410.3,\n      64568.0\n    ]\n  },\n  \"time_horizon\": \"short/medium term\",\n  \"invalidation_level\": \"$60,758.30 위 1시간 종가 수용 시 단기 bearish setup 무효화; 구조적 bearish 판독은 $62,836.60 재진입 및 $63,209.60 상향 수용 전까지 유지\",\n  \"risk_scenario\": \"$60,758.30을 회복하면 활성 UTAD 후보의 실패가 아니라 재흡수 가능성으로 바뀌며, 가격은 $61,870.00 SOW_IN_PHASE_B 구간과 메인 범위 하단 $62,836.60을 재시험할 수 있습니다. 특히 $63,209.60까지 회복하면 이전 UTAD/분배 공급대가 무력화되는지 확인해야 하며, 그 경우 단기 하방 셋업은 중립으로 낮춰야 합니다.\",\n  \"data_quality\": \"high\"\n}"
    }
  },
  "chairman_synthesis": {
    "overall_signal": "bearish",
    "overall_confidence": 0.72,
    "execution_setup": {
      "setup_bias": "bearish",
      "setup_strength": 0.76,
      "active_setups": [
        "ICT: 현재가 $60,217.30이 단기 EQ $59,804.15 위 premium zone에 있어 구조적 하락장 내 매도 재진입 조건",
        "ICT: 최근 확정 구조 이벤트가 $59,714.80 하향 bearish BOS로, 단기 구조가 다시 하방 확인",
        "Wyckoff: 활성 재분배 후보 구조에서 UTAD 후보 $60,758.30 아래에 머물며, AR 고점 $60,466.90 및 EMA120 $60,435.81 아래에서 공급 우위 조건 유지",
        "Derivatives: CVD divergence 0.850으로 가격 반등 대비 공격적 매수 품질이 약하고, 24h OI -0.6910%로 신규 상승 추세 유입보다 포지션 언와인딩 성격",
        "Derivatives: long account latest 0.671 및 account_long_crowding 1.000으로 롱 포지셔닝 쏠림이 남아 하방 청산 취약성 존재",
        "Harmonic/Fibonacci 반대 조건: $59,615.47-$60,093.62 bullish PRZ 및 $59,988-$60,093 수요 클러스터가 단기 반등 방어 구간으로 작동할 수 있음"
      ],
      "setup_vs_structure": "구조와 실행 셋업은 모두 약세 쪽으로 정렬되어 있다. 다만 현재가가 $60,000 전후의 피보나치·하모닉 수요 클러스터 바로 위에 있어, 구조적 약세 속에서도 즉각적인 추격보다는 지지 반응 실패 여부가 중요하다."
    },
    "signal_breakdown": {
      "bullish_count": 0,
      "bearish_count": 3,
      "neutral_count": 3
    },
    "key_levels": {
      "support": [
        60093.59,
        60082.05,
        60074.48,
        59873.15,
        59854.53,
        59804.15,
        59714.8,
        59615.47,
        59530.7,
        59060.0,
        58850.0,
        58030.0
      ],
      "resistance": [
        60379.46,
        60435.81,
        60466.9,
        60758.3,
        61046.73,
        61358.66,
        61870.0,
        62272.1,
        62836.6,
        63209.6,
        63220.0
      ]
    },
    "confluences": [
      "ICT, Wyckoff, Fibonacci가 모두 1시간 구조를 약세로 판독한다: ICT는 $59,714.80 하향 BOS, Wyckoff는 확정 분배 및 활성 재분배 후보, Fibonacci는 $60,758→$58,988 하락 스윙을 기준 구조로 본다.",
      "EMA120 $60,435.81 부근은 Fibonacci, Candlestick, ICT, Derivatives가 공통으로 구조 회복 전 확인 저항으로 제시한다.",
      "$60,435.81-$60,466.90 구간은 EMA120과 Wyckoff AR 고점이 겹치는 단기 수용/거부 핵심 레벨이다.",
      "$60,758.30 부근은 Fibonacci 스윙 고점, ICT range high, Wyckoff UTAD 후보가 겹치는 상단 구조 저항이다.",
      "$60,074.48-$60,093.62 구간은 Candlestick EMA20, Fibonacci 0.618 $60,082.05, Harmonic bullish PRZ 상단 $60,093.59-$60,093.62가 겹치는 단기 지지·반응 구간이다.",
      "$59,804.15-$59,873.15 구간은 ICT EQ $59,804.15, Fibonacci ret_0.5 $59,873.15, Harmonic Bat D $59,854.53이 인접한 중간 지지 클러스터다.",
      "$59,714.80-$59,743.46 구간은 ICT bearish BOS 레벨 $59,714.80과 Harmonic bullish Butterfly PRZ 하단 $59,743.46이 가까워 구조 훼손과 반등 후보가 충돌하는 가격대다.",
      "$58,030.00은 Candlestick, Derivatives, Wyckoff가 모두 주요 하단 구조 저점 또는 재테스트 위험 레벨로 제시한다."
    ],
    "conflicts": [
      "Fibonacci와 Harmonic은 $59,615.47-$60,093.62 및 $59,988.35 부근의 고품질 수요·PRZ 클러스터를 근거로 단기 bullish setup을 제시하지만, ICT·Wyckoff·Derivatives는 이를 하락 구조 안의 되돌림 또는 premium 매도 조건으로 해석한다.",
      "Candlestick은 bullish engulfing과 bearish engulfing이 교차하고 bull_score 1.50 대 bear_score 1.35로 미세한 bullish 우위만 있어, 구조적 방향성 판정에는 중립적이다.",
      "Harmonic 내부에서도 하단 $59.6k-$60.1k bullish Bat/Butterfly PRZ와 상단 $60,620.89-$61,046.73 bearish Gartley PRZ가 동시에 존재해, PRZ 엔진은 방향 확정보다 반응 구간 식별에 더 적합하다.",
      "Derivatives는 구조 자체를 박스권 중립으로 보지만, CVD divergence 0.850, OI 감소, 롱 계정 쏠림을 근거로 실행 셋업은 bearish로 분리한다."
    ],
    "executive_summary": "현재 BTC 1시간 구조는 prior distribution이 Phase E까지 진행된 뒤, $58,030.00 저점 이후 새로운 재분배 후보 구조가 형성되는 구간으로 진단된다. 구조적 핵심은 가격이 Wyckoff 활성 UTAD 후보 $60,758.30, AR 고점 $60,466.90, EMA120 $60,435.81 아래에 머물며, ICT 역시 $59,714.80 하향 BOS 이후 bearish 구조를 유지한다는 점이다. 다만 현재가는 Fibonacci 0.618 $60,082.05, EMA20 $60,074.48, Harmonic bullish PRZ $59,615.47-$60,093.62 바로 위에 있어 하단 수요 반응 조건도 동시에 존재한다. 따라서 regime-level overall signal은 bearish이나, $60,000 전후 지지 클러스터와 $60,435-$60,758 공급대 사이에서 구조적 수용 또는 실패를 확인해야 하는 위치다. 구조적 무효화는 $62,836.60 재진입 후 $63,209.60-$63,220.00 상방 수용이며, 단기 약세 셋업의 1차 약화 조건은 $60,758.30 회복이다.",
    "raw_llm_response": "{\n  \"overall_signal\": \"bearish\",\n  \"overall_confidence\": 0.72,\n  \"execution_setup\": {\n    \"setup_bias\": \"bearish\",\n    \"setup_strength\": 0.76,\n    \"active_setups\": [\n      \"ICT: 현재가 $60,217.30이 단기 EQ $59,804.15 위 premium zone에 있어 구조적 하락장 내 매도 재진입 조건\",\n      \"ICT: 최근 확정 구조 이벤트가 $59,714.80 하향 bearish BOS로, 단기 구조가 다시 하방 확인\",\n      \"Wyckoff: 활성 재분배 후보 구조에서 UTAD 후보 $60,758.30 아래에 머물며, AR 고점 $60,466.90 및 EMA120 $60,435.81 아래에서 공급 우위 조건 유지\",\n      \"Derivatives: CVD divergence 0.850으로 가격 반등 대비 공격적 매수 품질이 약하고, 24h OI -0.6910%로 신규 상승 추세 유입보다 포지션 언와인딩 성격\",\n      \"Derivatives: long account latest 0.671 및 account_long_crowding 1.000으로 롱 포지셔닝 쏠림이 남아 하방 청산 취약성 존재\",\n      \"Harmonic/Fibonacci 반대 조건: $59,615.47-$60,093.62 bullish PRZ 및 $59,988-$60,093 수요 클러스터가 단기 반등 방어 구간으로 작동할 수 있음\"\n    ],\n    \"setup_vs_structure\": \"구조와 실행 셋업은 모두 약세 쪽으로 정렬되어 있다. 다만 현재가가 $60,000 전후의 피보나치·하모닉 수요 클러스터 바로 위에 있어, 구조적 약세 속에서도 즉각적인 추격보다는 지지 반응 실패 여부가 중요하다.\"\n  },\n  \"signal_breakdown\": {\n    \"bullish_count\": 0,\n    \"bearish_count\": 3,\n    \"neutral_count\": 3\n  },\n  \"key_levels\": {\n    \"support\": [\n      60093.59,\n      60082.05,\n      60074.48,\n      59873.15,\n      59854.53,\n      59804.15,\n      59714.8,\n      59615.47,\n      59530.7,\n      59060.0,\n      58850.0,\n      58030.0\n    ],\n    \"resistance\": [\n      60379.46,\n      60435.81,\n      60466.9,\n      60758.3,\n      61046.73,\n      61358.66,\n      61870.0,\n      62272.1,\n      62836.6,\n      63209.6,\n      63220.0\n    ]\n  },\n  \"confluences\": [\n    \"ICT, Wyckoff, Fibonacci가 모두 1시간 구조를 약세로 판독한다: ICT는 $59,714.80 하향 BOS, Wyckoff는 확정 분배 및 활성 재분배 후보, Fibonacci는 $60,758→$58,988 하락 스윙을 기준 구조로 본다.\",\n    \"EMA120 $60,435.81 부근은 Fibonacci, Candlestick, ICT, Derivatives가 공통으로 구조 회복 전 확인 저항으로 제시한다.\",\n    \"$60,435.81-$60,466.90 구간은 EMA120과 Wyckoff AR 고점이 겹치는 단기 수용/거부 핵심 레벨이다.\",\n    \"$60,758.30 부근은 Fibonacci 스윙 고점, ICT range high, Wyckoff UTAD 후보가 겹치는 상단 구조 저항이다.\",\n    \"$60,074.48-$60,093.62 구간은 Candlestick EMA20, Fibonacci 0.618 $60,082.05, Harmonic bullish PRZ 상단 $60,093.59-$60,093.62가 겹치는 단기 지지·반응 구간이다.\",\n    \"$59,804.15-$59,873.15 구간은 ICT EQ $59,804.15, Fibonacci ret_0.5 $59,873.15, Harmonic Bat D $59,854.53이 인접한 중간 지지 클러스터다.\",\n    \"$59,714.80-$59,743.46 구간은 ICT bearish BOS 레벨 $59,714.80과 Harmonic bullish Butterfly PRZ 하단 $59,743.46이 가까워 구조 훼손과 반등 후보가 충돌하는 가격대다.\",\n    \"$58,030.00은 Candlestick, Derivatives, Wyckoff가 모두 주요 하단 구조 저점 또는 재테스트 위험 레벨로 제시한다.\"\n  ],\n  \"conflicts\": [\n    \"Fibonacci와 Harmonic은 $59,615.47-$60,093.62 및 $59,988.35 부근의 고품질 수요·PRZ 클러스터를 근거로 단기 bullish setup을 제시하지만, ICT·Wyckoff·Derivatives는 이를 하락 구조 안의 되돌림 또는 premium 매도 조건으로 해석한다.\",\n    \"Candlestick은 bullish engulfing과 bearish engulfing이 교차하고 bull_score 1.50 대 bear_score 1.35로 미세한 bullish 우위만 있어, 구조적 방향성 판정에는 중립적이다.\",\n    \"Harmonic 내부에서도 하단 $59.6k-$60.1k bullish Bat/Butterfly PRZ와 상단 $60,620.89-$61,046.73 bearish Gartley PRZ가 동시에 존재해, PRZ 엔진은 방향 확정보다 반응 구간 식별에 더 적합하다.\",\n    \"Derivatives는 구조 자체를 박스권 중립으로 보지만, CVD divergence 0.850, OI 감소, 롱 계정 쏠림을 근거로 실행 셋업은 bearish로 분리한다.\"\n  ],\n  \"highest_conviction_analyst\": \"Wyckoff Expert — confidence 82%, regime_state가 확정 분배로 판독되고 regime_fitness 0.991로 가장 강한 구조 진단을 제공한다. 이전 분배 구조는 BC $63,410.30, ST $64,568.00, UTAD $63,209.60, SOW $59,060.00, Phase E $58,030.00로 완성되었고, 현재는 $58,030.00 이후의 활성 재분배 후보 안에서 UTAD 후보 $60,758.30 아래에 위치한다.\",\n  \"invalidation_level\": \"$62,836.60 이상으로 재진입하고 $63,209.60-$63,220.00 위에서 1시간 수용이 확인되면, 현재의 분배·재분배 기반 bearish 구조 해석은 훼손된다. 단기 실행 셋업은 $60,758.30 상방 수용 시 먼저 약화된다.\",\n  \"executive_summary\": \"현재 BTC 1시간 구조는 prior distribution이 Phase E까지 진행된 뒤, $58,030.00 저점 이후 새로운 재분배 후보 구조가 형성되는 구간으로 진단된다. 구조적 핵심은 가격이 Wyckoff 활성 UTAD 후보 $60,758.30, AR 고점 $60,466.90, EMA120 $60,435.81 아래에 머물며, ICT 역시 $59,714.80 하향 BOS 이후 bearish 구조를 유지한다는 점이다. 다만 현재가는 Fibonacci 0.618 $60,082.05, EMA20 $60,074.48, Harmonic bullish PRZ $59,615.47-$60,093.62 바로 위에 있어 하단 수요 반응 조건도 동시에 존재한다. 따라서 regime-level overall signal은 bearish이나, $60,000 전후 지지 클러스터와 $60,435-$60,758 공급대 사이에서 구조적 수용 또는 실패를 확인해야 하는 위치다. 구조적 무효화는 $62,836.60 재진입 후 $63,209.60-$63,220.00 상방 수용이며, 단기 약세 셋업의 1차 약화 조건은 $60,758.30 회복이다.\"\n}"
  },
  "overall_signal": "bearish",
  "overall_confidence": 0.72,
  "operating_path": {
    "path_type": "complex",
    "confidence": 0.66,
    "waypoints": [
      {
        "seq": 1,
        "price": 59988.35,
        "type": "support_test",
        "source": "Fibonacci(fib_confluence $59,988.35, strict, 0.85), Candlestick(EMA20 $60,074.48), Harmonic(bullish Bat/Butterfly PRZ $59,615.47-$60,093.62)",
        "description": "현재가 $60,217.30이 EQ $59,804.15 위 프리미엄 구간에 있어, 약세 셋업의 첫 움직임으로 바로 아래 고품질 수요 클러스터 $59,988.35(Fib ret_0.5·0.236·0.618 중첩, strict)를 하향 테스트. EMA20 $60,074.48·Fib 0.618 $60,082.05·하모닉 PRZ 상단 $60,093.62가 인접한 1차 지지 반응 구간으로, 강한 추격보다 반응 확인이 우선되는 위치.",
        "est_hours": 2.5,
        "turning_zone": [
          59840.0,
          59988.35
        ],
        "likely_wick": 59920.0,
        "rejection_confirm": 60082.05,
        "invalid_overshoot": 59800.0,
        "calibration_reasoning": "ret_0.5·0.236·0.618 3중 컨플루언스 $59,988.35를 상단으로 하고, 인접한 butterfly PRZ $59,918.54·Fib지지 $59,873.15·bat PRZ $59,854.53 클러스터까지 하단을 확장(폭 0.32 ATR). likely_wick은 butterfly PRZ 부근 $59,920, EQ $59,804.15 하향 이탈 시 수요대 무효."
      },
      {
        "seq": 2,
        "price": 60435.81,
        "type": "resistance_test",
        "source": "Wyckoff(EMA120 $60,435.81, AR 고점 $60,466.90, UTAD 후보 $60,758.30), ICT(프리미엄 매도 재진입), Fibonacci(EMA120·ret_0.786 $60,379.46), Derivatives(CVD divergence 0.850, OI -0.69%)",
        "description": "수요 클러스터 반응으로 EMA120 $60,435.81·AR 고점 $60,466.90 공급대까지 되돌림하는 매도 재진입 구간. AR 고점·UTAD 후보 $60,758.30 아래에서 형성되는 lower high로 ICT·Wyckoff가 공통 제시하는 핵심 매도 레벨. CVD divergence 0.850·OI -0.69%로 매수 품질이 약해 공급대 돌파 실패 및 하방 재개 가능성이 높음.",
        "est_hours": 6,
        "turning_zone": [
          60435.81,
          60620.0
        ],
        "likely_wick": 60490.0,
        "rejection_confirm": 60379.46,
        "invalid_overshoot": 60758.3,
        "calibration_reasoning": "EMA120 $60,435.81~AR고점 $60,466.90 공급대를 turning_zone 하단으로, lower high 한계인 UTAD 후보 $60,758.30 아래까지 상단 확장(폭 0.40 ATR). 약한 매수(CVD div 0.85·OI -0.69%) 반영해 likely_wick은 AR고점 직상단 소폭 스윕 $60,490, $60,758.30 돌파 시 lower high 구조 무효."
      },
      {
        "seq": 3,
        "price": 59714.8,
        "type": "liquidity_sweep",
        "source": "ICT(bearish BOS $59,714.80, EQ $59,804.15, sell-side liquidity), Harmonic(Butterfly PRZ 하단 $59,743.46), Derivatives(account_long_crowding 1.000)",
        "description": "공급대 거부 후 수요 클러스터·EQ $59,804.15를 하향 이탈하며 ICT bearish BOS $59,714.80까지 sell-side 유동성 탐색. 인접한 하모닉 Butterfly PRZ 하단 $59,743.46은 반등 후보지만 구조적 약세·롱 쏠림 청산 압력으로 훼손될 가능성이 크며, 이 구간 수용 이탈이 약세 가속을 확인.",
        "est_hours": 13,
        "turning_zone": [
          59535.02,
          59743.46
        ],
        "likely_wick": 59615.47,
        "rejection_confirm": 59804.15,
        "invalid_overshoot": 59530.7,
        "calibration_reasoning": "하향 sell-side 스윕이라 base 아래로 zone 확장: ICT BOS $59,714.80→Chairman지지 $59,615.47·Fib컨플루언스 $59,535.02(폭 0.45 ATR), 상단은 미확정 butterfly PRZ $59,743.46(조건부 반등 후보). likely_wick은 BOS 직하단 지지 $59,615.47이며, 구조적 약세로 $59,530.70 이탈 시 swing_low로 가속."
      },
      {
        "seq": 4,
        "price": 59060.0,
        "type": "swing_low",
        "source": "Wyckoff(SOW $59,060.00), ICT(지지 $59,060.00, range low $58,850.00)",
        "description": "BOS 이탈 후 Wyckoff SOW $59,060.00까지 약세 지속 — ICT·Wyckoff가 공통으로 제시하는 핵심 하방 구조 목표. 이 구간마저 이탈하면 range low $58,850.00, 나아가 Phase E 저점 $58,030.00 재테스트로 하방 압력이 확대될 위험.",
        "est_hours": 21,
        "turning_zone": [
          58820.0,
          59060.0
        ],
        "likely_wick": 59000.0,
        "rejection_confirm": 59530.7,
        "invalid_overshoot": 58700.0,
        "calibration_reasoning": "터미널 Wyckoff SOW $59,060이라 zone 확대(0.52 ATR), range low $58,850을 하단 근처에 포함. 라운드넘버 $59,000을 유동성 자석으로 SOW 직하단 소폭 오버슈트(likely_wick), 첫 저항 클러스터 $59,530.70 회복 시 반등 확인, $58,700 하회(range low 이탈) 시 $58,380.79·$58,030으로 확대."
      }
    ],
    "period_extremes": {
      "4h": {
        "expected_high": 60260.0,
        "expected_low": 59940.0,
        "high_first": true
      },
      "8h": {
        "expected_high": 60435.81,
        "expected_low": 59940.0,
        "high_first": false
      },
      "24h": {
        "expected_high": 60435.81,
        "expected_low": 59060.0,
        "high_first": true
      }
    },
    "triggers": {
      "bullish": {
        "price": 60758.3,
        "description": "EMA120 $60,435.81·AR 고점 $60,466.90 공급대를 돌파하고 UTAD 후보·range high $60,758.30 위에서 수용되면 매도 재진입(WP2)이 무효화되고 단기 약세 셋업이 약화됨(Chairman 1차 약화 조건). 이후 $61,046.73·EMA240 $61,358.66로 상방 확장 여지."
      },
      "bearish": {
        "price": 59714.8,
        "description": "수요 클러스터 $59,988.35와 EQ $59,804.15를 하향 이탈하고 ICT bearish BOS $59,714.80 아래에서 수용되면 약세 가속 확인. $59,530.70·SOW $59,060.00·range low $58,850.00로 sell-side 유동성 확장."
      }
    },
    "scenario_invalidation": 61358.66,
    "raw_llm_response": "```json\n{\n  \"path_type\": \"complex\",\n  \"confidence\": 0.66,\n  \"waypoints\": [\n    {\n      \"seq\": 1,\n      \"price\": 59988.35,\n      \"type\": \"support_test\",\n      \"source\": \"Fibonacci(fib_confluence $59,988.35, strict, 0.85), Candlestick(EMA20 $60,074.48), Harmonic(bullish Bat/Butterfly PRZ $59,615.47-$60,093.62)\",\n      \"description\": \"현재가 $60,217.30이 EQ $59,804.15 위 프리미엄 구간에 있어, 약세 셋업의 첫 움직임으로 바로 아래 고품질 수요 클러스터 $59,988.35(Fib ret_0.5·0.236·0.618 중첩, strict)를 하향 테스트. EMA20 $60,074.48·Fib 0.618 $60,082.05·하모닉 PRZ 상단 $60,093.62가 인접한 1차 지지 반응 구간으로, 강한 추격보다 반응 확인이 우선되는 위치.\",\n      \"est_hours\": 2.5\n    },\n    {\n      \"seq\": 2,\n      \"price\": 60435.81,\n      \"type\": \"resistance_test\",\n      \"source\": \"Wyckoff(EMA120 $60,435.81, AR 고점 $60,466.90, UTAD 후보 $60,758.30), ICT(프리미엄 매도 재진입), Fibonacci(EMA120·ret_0.786 $60,379.46), Derivatives(CVD divergence 0.850, OI -0.69%)\",\n      \"description\": \"수요 클러스터 반응으로 EMA120 $60,435.81·AR 고점 $60,466.90 공급대까지 되돌림하는 매도 재진입 구간. AR 고점·UTAD 후보 $60,758.30 아래에서 형성되는 lower high로 ICT·Wyckoff가 공통 제시하는 핵심 매도 레벨. CVD divergence 0.850·OI -0.69%로 매수 품질이 약해 공급대 돌파 실패 및 하방 재개 가능성이 높음.\",\n      \"est_hours\": 6\n    },\n    {\n      \"seq\": 3,\n      \"price\": 59714.80,\n      \"type\": \"liquidity_sweep\",\n      \"source\": \"ICT(bearish BOS $59,714.80, EQ $59,804.15, sell-side liquidity), Harmonic(Butterfly PRZ 하단 $59,743.46), Derivatives(account_long_crowding 1.000)\",\n      \"description\": \"공급대 거부 후 수요 클러스터·EQ $59,804.15를 하향 이탈하며 ICT bearish BOS $59,714.80까지 sell-side 유동성 탐색. 인접한 하모닉 Butterfly PRZ 하단 $59,743.46은 반등 후보지만 구조적 약세·롱 쏠림 청산 압력으로 훼손될 가능성이 크며, 이 구간 수용 이탈이 약세 가속을 확인.\",\n      \"est_hours\": 13\n    },\n    {\n      \"seq\": 4,\n      \"price\": 59060.00,\n      \"type\": \"swing_low\",\n      \"source\": \"Wyckoff(SOW $59,060.00), ICT(지지 $59,060.00, range low $58,850.00)\",\n      \"description\": \"BOS 이탈 후 Wyckoff SOW $59,060.00까지 약세 지속 — ICT·Wyckoff가 공통으로 제시하는 핵심 하방 구조 목표. 이 구간마저 이탈하면 range low $58,850.00, 나아가 Phase E 저점 $58,030.00 재테스트로 하방 압력이 확대될 위험.\",\n      \"est_hours\": 21\n    }\n  ],\n  \"period_extremes\": {\n    \"4h\":  {\"expected_high\": 60260.0, \"expected_low\": 59940.0, \"high_first\": true},\n    \"8h\":  {\"expected_high\": 60435.81, \"expected_low\": 59940.0, \"high_first\": false},\n    \"24h\": {\"expected_high\": 60435.81, \"expected_low\": 59060.0, \"high_first\": true}\n  },\n  \"triggers\": {\n    \"bullish\": {\"price\": 60758.30, \"description\": \"EMA120 $60,435.81·AR 고점 $60,466.90 공급대를 돌파하고 UTAD 후보·range high $60,758.30 위에서 수용되면 매도 재진입(WP2)이 무효화되고 단기 약세 셋업이 약화됨(Chairman 1차 약화 조건). 이후 $61,046.73·EMA240 $61,358.66로 상방 확장 여지.\"},\n    \"bearish\": {\"price\": 59714.80, \"description\": \"수요 클러스터 $59,988.35와 EQ $59,804.15를 하향 이탈하고 ICT bearish BOS $59,714.80 아래에서 수용되면 약세 가속 확인. $59,530.70·SOW $59,060.00·range low $58,850.00로 sell-side 유동성 확장.\"}\n  },\n  \"scenario_invalidation\": 61358.66\n}\n```"
  },
  "tp_calibration": {
    "calibrated_waypoints": [
      {
        "seq": 1,
        "base_target": 59988.35,
        "turning_zone": [
          59840.0,
          59988.35
        ],
        "likely_wick": 59920.0,
        "rejection_confirm": 60082.05,
        "invalid_overshoot": 59800.0,
        "calibration_reasoning": "ret_0.5·0.236·0.618 3중 컨플루언스 $59,988.35를 상단으로 하고, 인접한 butterfly PRZ $59,918.54·Fib지지 $59,873.15·bat PRZ $59,854.53 클러스터까지 하단을 확장(폭 0.32 ATR). likely_wick은 butterfly PRZ 부근 $59,920, EQ $59,804.15 하향 이탈 시 수요대 무효."
      },
      {
        "seq": 2,
        "base_target": 60435.81,
        "turning_zone": [
          60435.81,
          60620.0
        ],
        "likely_wick": 60490.0,
        "rejection_confirm": 60379.46,
        "invalid_overshoot": 60758.3,
        "calibration_reasoning": "EMA120 $60,435.81~AR고점 $60,466.90 공급대를 turning_zone 하단으로, lower high 한계인 UTAD 후보 $60,758.30 아래까지 상단 확장(폭 0.40 ATR). 약한 매수(CVD div 0.85·OI -0.69%) 반영해 likely_wick은 AR고점 직상단 소폭 스윕 $60,490, $60,758.30 돌파 시 lower high 구조 무효."
      },
      {
        "seq": 3,
        "base_target": 59714.8,
        "turning_zone": [
          59535.02,
          59743.46
        ],
        "likely_wick": 59615.47,
        "rejection_confirm": 59804.15,
        "invalid_overshoot": 59530.7,
        "calibration_reasoning": "하향 sell-side 스윕이라 base 아래로 zone 확장: ICT BOS $59,714.80→Chairman지지 $59,615.47·Fib컨플루언스 $59,535.02(폭 0.45 ATR), 상단은 미확정 butterfly PRZ $59,743.46(조건부 반등 후보). likely_wick은 BOS 직하단 지지 $59,615.47이며, 구조적 약세로 $59,530.70 이탈 시 swing_low로 가속."
      },
      {
        "seq": 4,
        "base_target": 59060.0,
        "turning_zone": [
          58820.0,
          59060.0
        ],
        "likely_wick": 59000.0,
        "rejection_confirm": 59530.7,
        "invalid_overshoot": 58700.0,
        "calibration_reasoning": "터미널 Wyckoff SOW $59,060이라 zone 확대(0.52 ATR), range low $58,850을 하단 근처에 포함. 라운드넘버 $59,000을 유동성 자석으로 SOW 직하단 소폭 오버슈트(likely_wick), 첫 저항 클러스터 $59,530.70 회복 시 반등 확인, $58,700 하회(range low 이탈) 시 $58,380.79·$58,030으로 확대."
      }
    ],
    "raw_llm_response": "```json\n{\n  \"calibrated_waypoints\": [\n    {\n      \"seq\": 1,\n      \"base_target\": 59988.35,\n      \"turning_zone\": [59840.00, 59988.35],\n      \"likely_wick\": 59920.00,\n      \"rejection_confirm\": 60082.05,\n      \"invalid_overshoot\": 59800.00,\n      \"calibration_reasoning\": \"ret_0.5·0.236·0.618 3중 컨플루언스 $59,988.35를 상단으로 하고, 인접한 butterfly PRZ $59,918.54·Fib지지 $59,873.15·bat PRZ $59,854.53 클러스터까지 하단을 확장(폭 0.32 ATR). likely_wick은 butterfly PRZ 부근 $59,920, EQ $59,804.15 하향 이탈 시 수요대 무효.\"\n    },\n    {\n      \"seq\": 2,\n      \"base_target\": 60435.81,\n      \"turning_zone\": [60435.81, 60620.00],\n      \"likely_wick\": 60490.00,\n      \"rejection_confirm\": 60379.46,\n      \"invalid_overshoot\": 60758.30,\n      \"calibration_reasoning\": \"EMA120 $60,435.81~AR고점 $60,466.90 공급대를 turning_zone 하단으로, lower high 한계인 UTAD 후보 $60,758.30 아래까지 상단 확장(폭 0.40 ATR). 약한 매수(CVD div 0.85·OI -0.69%) 반영해 likely_wick은 AR고점 직상단 소폭 스윕 $60,490, $60,758.30 돌파 시 lower high 구조 무효.\"\n    },\n    {\n      \"seq\": 3,\n      \"base_target\": 59714.80,\n      \"turning_zone\": [59535.02, 59743.46],\n      \"likely_wick\": 59615.47,\n      \"rejection_confirm\": 59804.15,\n      \"invalid_overshoot\": 59530.70,\n      \"calibration_reasoning\": \"하향 sell-side 스윕이라 base 아래로 zone 확장: ICT BOS $59,714.80→Chairman지지 $59,615.47·Fib컨플루언스 $59,535.02(폭 0.45 ATR), 상단은 미확정 butterfly PRZ $59,743.46(조건부 반등 후보). likely_wick은 BOS 직하단 지지 $59,615.47이며, 구조적 약세로 $59,530.70 이탈 시 swing_low로 가속.\"\n    },\n    {\n      \"seq\": 4,\n      \"base_target\": 59060.00,\n      \"turning_zone\": [58820.00, 59060.00],\n      \"likely_wick\": 59000.00,\n      \"rejection_confirm\": 59530.70,\n      \"invalid_overshoot\": 58700.00,\n      \"calibration_reasoning\": \"터미널 Wyckoff SOW $59,060이라 zone 확대(0.52 ATR), range low $58,850을 하단 근처에 포함. 라운드넘버 $59,000을 유동성 자석으로 SOW 직하단 소폭 오버슈트(likely_wick), 첫 저항 클러스터 $59,530.70 회복 시 반등 확인, $58,700 하회(range low 이탈) 시 $58,380.79·$58,030으로 확대.\"\n    }\n  ]\n}\n```"
  },
  "timing": {
    "stages": {
      "stage1_agents": 57.3,
      "chairman": 87.0,
      "operating_path": 550.5,
      "tp_calibrator": 347.9
    },
    "agents": {},
    "total_s": 1043.0
  }
}