{
  "symbol": "BTC/USDT",
  "timeframe": "1h",
  "timestamp": "2026-06-23 21:00 KST",
  "last_price": 62478.0,
  "num_candles": 300,
  "stage1_analyses": {
    "ict": {
      "agent_id": "ict",
      "display_name": "ICT Trader",
      "signal": "bullish",
      "confidence": 0.58,
      "structure_bias": "bearish",
      "setup_bias": "bullish",
      "setup_score": 0.764,
      "setup_signals": [
        "현재가 $62,478은 EQ $63,733.60 아래의 discount 영역에 위치",
        "이전일 저점 $63,220.00이 하향 이탈되어 sell-side liquidity가 제거됨",
        "현재가는 7일 저점 및 NY 세션 저점 $61,870.00 근처에서 거래 중",
        "retracement가 142.6%로 과도하게 깊어져 discount 내 반등 후보 구간 형성",
        "이전 bullish BOS 레벨 $63,915.30, $64,738.00, $64,568.00 회복 시 bullish reversal confirmation 가능"
      ],
      "reasoning": "확정 구조는 bearish입니다. 최근 구조 이벤트가 $63,220.00 기준 CHoCH_bearish이며, 현재가 $62,478은 해당 레벨 아래에서 거래되고 있고 EMA20 $63,397.06, EMA120 $63,946.57, EMA240 $63,910.51 모두 하회하고 있습니다. 다만 셋업 관점에서는 이전일 저점 $63,220.00이 깨진 뒤 가격이 range low $61,870.00 부근 discount 영역에 있어 sell-side liquidity sweep 이후 반등을 노리는 bullish pre-confirmation setup이 유효합니다. OB와 미충족 FVG가 모두 부재하기 때문에 기관 주문블록 기반의 강한 컨플루언스는 부족하며, $63,220.00 재돌파와 $63,733.60 EQ 회복이 확인되기 전까지는 counter-structure 롱 셋업으로 봐야 합니다.",
      "key_levels": {
        "support": [
          61870.0,
          63220.0,
          62478.0
        ],
        "resistance": [
          63397.06,
          63733.6,
          63915.3,
          64568.0,
          64738.0,
          65597.2
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "61870.00",
      "risk_scenario": "$61,870.00 NY 세션 저점이 명확히 이탈되면 discount 반등 셋업은 실패하며, sell-side liquidity가 추가로 열리면서 bearish structure continuation이 강화될 수 있습니다. 이 경우 $63,220.00은 저항으로 전환되고, 반등은 short re-entry 구간으로 해석됩니다.",
      "data_quality": "medium",
      "metrics": {
        "order_blocks_total": 0,
        "confirmed_bullish_ob": 0,
        "confirmed_bearish_ob": 0,
        "candidate_bullish_ob": 0,
        "candidate_bearish_ob": 0,
        "active_bullish_ob": 0,
        "active_bearish_ob": 0,
        "nearest_bull_ob_range": null,
        "nearest_bear_ob_range": null,
        "active_bullish_ob_list": [],
        "active_bearish_ob_list": [],
        "ob_mitigated_count": 1,
        "unfilled_bull_fvg_count": 0,
        "unfilled_bear_fvg_count": 0,
        "bull_fvg_ranges": [],
        "bear_fvg_ranges": [],
        "fvg_open_count": 0,
        "fvg_mitigated_count": 57,
        "fvg_open_zones": [],
        "bos_choch_events": [
          "BOS_bullish",
          "BOS_bullish",
          "BOS_bearish",
          "BOS_bearish",
          "BOS_bullish",
          "CHoCH_bearish"
        ],
        "bos_choch_levels": [
          {
            "type": "BOS_bullish",
            "level": 63915.3
          },
          {
            "type": "BOS_bullish",
            "level": 64738.0
          },
          {
            "type": "BOS_bearish",
            "level": 65607.1
          },
          {
            "type": "BOS_bearish",
            "level": 65328.8
          },
          {
            "type": "BOS_bullish",
            "level": 64568.0
          },
          {
            "type": "CHoCH_bearish",
            "level": 63220.0
          }
        ],
        "bos_sequence": [
          "BOS_bullish",
          "BOS_bullish",
          "BOS_bearish",
          "BOS_bearish",
          "BOS_bullish",
          "CHoCH_bearish"
        ],
        "consecutive_bull_bos": 0,
        "consecutive_bear_bos": 0,
        "recent_liq_sweeps": [],
        "recent_sweep_levels": [],
        "liquidity_resting": [],
        "current_zone": "discount",
        "eq_level": 63733.6,
        "range_high": 65597.2,
        "range_low": 61870.0,
        "bull_score": 9.0,
        "bear_score": 8.0,
        "setup_bias": "bullish",
        "setup_score": 0.764,
        "setup_signals": [
          "bullish BOS above $63,915.30",
          "bullish BOS above $64,738.00",
          "bullish BOS above $64,568.00",
          "deep retracement 142.6% in discount zone"
        ],
        "retracement_direction": "bullish",
        "current_retracement_pct": 142.6,
        "deepest_retracement_pct": 156.8,
        "previous_day_high": 65597.2,
        "previous_day_low": 63220.0,
        "broken_prev_high": false,
        "broken_prev_low": true,
        "sessions": {
          "London": {
            "active": false,
            "high": null,
            "low": null
          },
          "New York": {
            "active": true,
            "high": 64068.0,
            "low": 61870.0
          },
          "Asian kill zone": {
            "active": false,
            "high": null,
            "low": null
          }
        }
      },
      "raw_llm_response": "{\n  \"signal\": \"bullish\",\n  \"confidence\": 0.58,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.764,\n  \"setup_signals\": [\n    \"현재가 $62,478은 EQ $63,733.60 아래의 discount 영역에 위치\",\n    \"이전일 저점 $63,220.00이 하향 이탈되어 sell-side liquidity가 제거됨\",\n    \"현재가는 7일 저점 및 NY 세션 저점 $61,870.00 근처에서 거래 중\",\n    \"retracement가 142.6%로 과도하게 깊어져 discount 내 반등 후보 구간 형성\",\n    \"이전 bullish BOS 레벨 $63,915.30, $64,738.00, $64,568.00 회복 시 bullish reversal confirmation 가능\"\n  ],\n  \"reasoning\": \"확정 구조는 bearish입니다. 최근 구조 이벤트가 $63,220.00 기준 CHoCH_bearish이며, 현재가 $62,478은 해당 레벨 아래에서 거래되고 있고 EMA20 $63,397.06, EMA120 $63,946.57, EMA240 $63,910.51 모두 하회하고 있습니다. 다만 셋업 관점에서는 이전일 저점 $63,220.00이 깨진 뒤 가격이 range low $61,870.00 부근 discount 영역에 있어 sell-side liquidity sweep 이후 반등을 노리는 bullish pre-confirmation setup이 유효합니다. OB와 미충족 FVG가 모두 부재하기 때문에 기관 주문블록 기반의 강한 컨플루언스는 부족하며, $63,220.00 재돌파와 $63,733.60 EQ 회복이 확인되기 전까지는 counter-structure 롱 셋업으로 봐야 합니다.\",\n  \"key_levels\": {\n    \"support\": [\n      61870.0,\n      63220.0,\n      62478.0\n    ],\n    \"resistance\": [\n      63397.06,\n      63733.6,\n      63915.3,\n      64568.0,\n      64738.0,\n      65597.2\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"61870.00\",\n  \"risk_scenario\": \"$61,870.00 NY 세션 저점이 명확히 이탈되면 discount 반등 셋업은 실패하며, sell-side liquidity가 추가로 열리면서 bearish structure continuation이 강화될 수 있습니다. 이 경우 $63,220.00은 저항으로 전환되고, 반등은 short re-entry 구간으로 해석됩니다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "candlestick": {
      "agent_id": "candlestick",
      "display_name": "Candlestick Reader",
      "signal": "bullish",
      "confidence": 0.56,
      "structure_bias": "bearish",
      "setup_bias": "bullish",
      "setup_score": 0.62,
      "setup_signals": [
        "7일 레인지 EQ $64,328.55 아래의 디스카운트 구간에서 현재가 $62,478.00 거래",
        "7일 저점 $61,870.00 근처에서 doji@297 이후 bullish_engulfing@299 출현",
        "현재가가 EMA20 $63,397.06, EMA120 $63,946.57, EMA240 $63,910.51 아래에 있어 구조 전환 전 반등 셋업 단계",
        "최근 bullish_engulfing 품질 0.653, bull_score 0.750으로 단기 매수 반응 우위"
      ],
      "reasoning": "현재 BTC는 $62,478.00으로 EMA20 $63,397.06보다 1.4%, EMA120 $63,946.57보다 2.3%, EMA240 $63,910.51보다 2.2% 낮아 확인된 구조는 아직 약세입니다. 다만 7일 저점 $61,870.00 부근에서 doji@297 이후 bullish_engulfing@299가 발생했고, 패턴 품질 0.653 및 bull_score 0.750은 단기 반등 셋업을 지지합니다. 7일 레인지 EQ는 약 $64,328.55이며 현재 가격은 그 아래 디스카운트 영역에 있어, 구조적 강세 전환 전의 저점 매수 반응으로 해석됩니다. 단, high_volume_patterns가 없고 24시간 변동률이 -3.32%이므로 반등 신뢰도는 중간 수준에 머뭅니다.",
      "key_levels": {
        "support": [
          61870.0,
          62478.0
        ],
        "resistance": [
          63397.06,
          63910.51,
          63946.57,
          64328.55,
          66787.1
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$61,870.00 하향 이탈",
      "risk_scenario": "가격이 $61,870.00을 하향 돌파하면 bullish engulfing 기반의 반등 셋업은 실패로 간주되며, EMA 저항 아래의 약세 구조가 강화되어 추가 하락 추세가 재개될 수 있습니다. 반대로 $63,397.06 EMA20을 회복하고 $64,328.55 EQ 위에서 안착하면 단기 반등이 구조 전환 시도로 확장될 수 있습니다.",
      "data_quality": "medium",
      "metrics": {
        "total_patterns_detected": 145,
        "recent_patterns": 2,
        "pattern_list": [
          "bullish_engulfing@299",
          "doji@297"
        ],
        "atr_value": 417.72,
        "vol_avg_20": 7195.63,
        "high_volume_patterns": [],
        "pattern_candidates": [
          {
            "pattern": "bullish_engulfing",
            "signal": "bullish",
            "pattern_quality": 0.653,
            "tier": "strict",
            "high_volume": false
          },
          {
            "pattern": "doji",
            "signal": "neutral",
            "pattern_quality": 0.355,
            "tier": "candidate",
            "high_volume": false
          }
        ],
        "best_pattern_quality": 0.653,
        "bull_score": 0.75,
        "bear_score": 0
      },
      "raw_llm_response": "{\n  \"signal\": \"bullish\",\n  \"confidence\": 0.56,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.62,\n  \"setup_signals\": [\n    \"7일 레인지 EQ $64,328.55 아래의 디스카운트 구간에서 현재가 $62,478.00 거래\",\n    \"7일 저점 $61,870.00 근처에서 doji@297 이후 bullish_engulfing@299 출현\",\n    \"현재가가 EMA20 $63,397.06, EMA120 $63,946.57, EMA240 $63,910.51 아래에 있어 구조 전환 전 반등 셋업 단계\",\n    \"최근 bullish_engulfing 품질 0.653, bull_score 0.750으로 단기 매수 반응 우위\"\n  ],\n  \"reasoning\": \"현재 BTC는 $62,478.00으로 EMA20 $63,397.06보다 1.4%, EMA120 $63,946.57보다 2.3%, EMA240 $63,910.51보다 2.2% 낮아 확인된 구조는 아직 약세입니다. 다만 7일 저점 $61,870.00 부근에서 doji@297 이후 bullish_engulfing@299가 발생했고, 패턴 품질 0.653 및 bull_score 0.750은 단기 반등 셋업을 지지합니다. 7일 레인지 EQ는 약 $64,328.55이며 현재 가격은 그 아래 디스카운트 영역에 있어, 구조적 강세 전환 전의 저점 매수 반응으로 해석됩니다. 단, high_volume_patterns가 없고 24시간 변동률이 -3.32%이므로 반등 신뢰도는 중간 수준에 머뭅니다.\",\n  \"key_levels\": {\n    \"support\": [\n      61870.0,\n      62478.0\n    ],\n    \"resistance\": [\n      63397.06,\n      63910.51,\n      63946.57,\n      64328.55,\n      66787.1\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$61,870.00 하향 이탈\",\n  \"risk_scenario\": \"가격이 $61,870.00을 하향 돌파하면 bullish engulfing 기반의 반등 셋업은 실패로 간주되며, EMA 저항 아래의 약세 구조가 강화되어 추가 하락 추세가 재개될 수 있습니다. 반대로 $63,397.06 EMA20을 회복하고 $64,328.55 EQ 위에서 안착하면 단기 반등이 구조 전환 시도로 확장될 수 있습니다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "fibonacci": {
      "agent_id": "fibonacci",
      "display_name": "Fibonacci Analyst",
      "signal": "bearish",
      "confidence": 0.62,
      "structure_bias": "bearish",
      "setup_bias": "bullish",
      "setup_score": 0.55,
      "setup_signals": [
        "가격이 하락 스윙 $65,597 → $63,758의 1.618 확장선 $62,621.86 부근을 테스트 중이며, 현재가 $62,478은 해당 레벨 바로 아래에 위치",
        "ext_1.618 $62,621.86과 ret_0.786 기반 클러스터 $62,670.31이 겹치는 단기 반등 후보 구간 존재",
        "하방 최종 확장 지지인 ext_2.0 $61,919.40이 현재가에서 약 0.89% 아래에 있어 과매도성 반응 가능",
        "다만 $62,621.86을 회복하지 못하면 해당 피보나치 확장선은 지지 실패 후 저항으로 전환될 위험"
      ],
      "reasoning": "확정 구조는 bearish로 판단한다. 현재가 $62,478은 EMA20 $63,397.06, EMA120 $63,946.57, EMA240 $63,910.51 모두 아래에 있으며, 하락 스윙 $65,597 → $63,758 이후 가격이 1.618 확장선 $62,621.86까지 밀린 상태다. 단기적으로는 $62,621.86 및 클러스터 $62,670.31 부근에서 반등 setup이 존재하지만, 이 구간을 명확히 회복하지 못하면 다음 피보나치 확장 목표는 ext_2.0 $61,919.40이다. 반등이 나오더라도 $62,997.00, $63,258.12, $63,758.30 순으로 저항이 촘촘하며, 특히 0.382 되돌림 $64,460.76과 황금비 0.618 $64,894.74를 회복하기 전까지는 구조적 전환으로 보기 어렵다.",
      "key_levels": {
        "support": [
          61919.4,
          60782.96
        ],
        "resistance": [
          62621.86,
          62997.0,
          63258.12,
          63758.3,
          64460.76,
          64894.74
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "64894.74",
      "risk_scenario": "$62,621.86을 빠르게 회복하고 $62,997.00 및 $63,258.12까지 돌파하면 단기 숏 커버링이 발생할 수 있으며, 이 경우 $63,758.30과 confluence zone $64,340.85까지 되돌림이 열릴 수 있다. 특히 황금비 되돌림 $64,894.74 위로 안착하면 현재 bearish 구조 해석은 무효화되고 중기 반등 구조로 전환될 가능성이 커진다.",
      "data_quality": "medium",
      "metrics": {
        "swing_pair": "High→Low: $65,597 → $63,758",
        "direction": "down",
        "nearest_fib": "ext_1.618",
        "nearest_fib_price": 62621.86,
        "nearest_fib_distance": 0.23,
        "golden_ratio_level": 64894.74,
        "fib_ret_382": 64460.76,
        "fib_ret_618": 64894.74,
        "confluence_zones": [
          {
            "price": 64340.85,
            "count": 3,
            "levels": [
              "ret_0.236",
              "ret_0.5",
              "ret_0.382"
            ],
            "cluster_score": 0.85
          },
          {
            "price": 62670.31,
            "count": 2,
            "levels": [
              "ext_1.618",
              "ret_0.786"
            ],
            "cluster_score": 0.6
          },
          {
            "price": 63127.56,
            "count": 2,
            "levels": [
              "ext_1.414",
              "ext_1.272"
            ],
            "cluster_score": 0.6
          },
          {
            "price": 63723.36,
            "count": 2,
            "levels": [
              "ret_0.618",
              "ext_1.0"
            ],
            "cluster_score": 0.6
          },
          {
            "price": 64786.25,
            "count": 2,
            "levels": [
              "ret_0.5",
              "ret_0.618"
            ],
            "cluster_score": 0.6
          }
        ],
        "support_levels": [
          61919.40000000001,
          60782.95980000001
        ],
        "resistance_levels": [
          62621.859800000006,
          62996.99540000001,
          63258.1192
        ],
        "level_candidates": [
          {
            "name": "ret_0.236",
            "price": 64192.28,
            "distance_pct": 2.74,
            "is_support": false,
            "cluster_score": 0.85
          },
          {
            "name": "ret_0.382",
            "price": 64460.76,
            "distance_pct": 3.17,
            "is_support": false,
            "cluster_score": 0.85
          },
          {
            "name": "ret_0.5",
            "price": 64677.75,
            "distance_pct": 3.52,
            "is_support": false,
            "cluster_score": 0.6
          },
          {
            "name": "ret_0.618",
            "price": 64894.74,
            "distance_pct": 3.87,
            "is_support": false,
            "cluster_score": 0.6
          },
          {
            "name": "ret_0.786",
            "price": 65203.68,
            "distance_pct": 4.36,
            "is_support": false,
            "cluster_score": 0.0
          },
          {
            "name": "ext_1.0",
            "price": 63758.3,
            "distance_pct": 2.05,
            "is_support": false,
            "cluster_score": 0.6
          },
          {
            "name": "ext_1.272",
            "price": 63258.12,
            "distance_pct": 1.25,
            "is_support": false,
            "cluster_score": 0.6
          },
          {
            "name": "ext_1.414",
            "price": 62997.0,
            "distance_pct": 0.83,
            "is_support": false,
            "cluster_score": 0.6
          },
          {
            "name": "ext_1.618",
            "price": 62621.86,
            "distance_pct": 0.23,
            "is_support": false,
            "cluster_score": 0.6
          },
          {
            "name": "ext_2.0",
            "price": 61919.4,
            "distance_pct": 0.89,
            "is_support": true,
            "cluster_score": 0.0
          }
        ],
        "confluence_quality": 0.85,
        "fib_reaction_state": "testing",
        "reaction_probability": 0.65
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.62,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.55,\n  \"setup_signals\": [\n    \"가격이 하락 스윙 $65,597 → $63,758의 1.618 확장선 $62,621.86 부근을 테스트 중이며, 현재가 $62,478은 해당 레벨 바로 아래에 위치\",\n    \"ext_1.618 $62,621.86과 ret_0.786 기반 클러스터 $62,670.31이 겹치는 단기 반등 후보 구간 존재\",\n    \"하방 최종 확장 지지인 ext_2.0 $61,919.40이 현재가에서 약 0.89% 아래에 있어 과매도성 반응 가능\",\n    \"다만 $62,621.86을 회복하지 못하면 해당 피보나치 확장선은 지지 실패 후 저항으로 전환될 위험\"\n  ],\n  \"reasoning\": \"확정 구조는 bearish로 판단한다. 현재가 $62,478은 EMA20 $63,397.06, EMA120 $63,946.57, EMA240 $63,910.51 모두 아래에 있으며, 하락 스윙 $65,597 → $63,758 이후 가격이 1.618 확장선 $62,621.86까지 밀린 상태다. 단기적으로는 $62,621.86 및 클러스터 $62,670.31 부근에서 반등 setup이 존재하지만, 이 구간을 명확히 회복하지 못하면 다음 피보나치 확장 목표는 ext_2.0 $61,919.40이다. 반등이 나오더라도 $62,997.00, $63,258.12, $63,758.30 순으로 저항이 촘촘하며, 특히 0.382 되돌림 $64,460.76과 황금비 0.618 $64,894.74를 회복하기 전까지는 구조적 전환으로 보기 어렵다.\",\n  \"key_levels\": {\n    \"support\": [\n      61919.4,\n      60782.96\n    ],\n    \"resistance\": [\n      62621.86,\n      62997.0,\n      63258.12,\n      63758.3,\n      64460.76,\n      64894.74\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"64894.74\",\n  \"risk_scenario\": \"$62,621.86을 빠르게 회복하고 $62,997.00 및 $63,258.12까지 돌파하면 단기 숏 커버링이 발생할 수 있으며, 이 경우 $63,758.30과 confluence zone $64,340.85까지 되돌림이 열릴 수 있다. 특히 황금비 되돌림 $64,894.74 위로 안착하면 현재 bearish 구조 해석은 무효화되고 중기 반등 구조로 전환될 가능성이 커진다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "wyckoff": {
      "agent_id": "wyckoff",
      "display_name": "Wyckoff Expert",
      "signal": "bearish",
      "confidence": 0.82,
      "structure_bias": "bearish",
      "setup_bias": "bearish",
      "setup_score": 0.62,
      "setup_signals": [
        "현재가 $62,478.00가 주 분배 박스 하단 AR $63,352.30 아래에 위치하며 하단 이탈 후 회복 실패 상태",
        "LPSY $64,247.20 이후 SOW $61,870.00 발생으로 Phase D 약세 진행 신호가 확인됨",
        "현재가가 EMA20 $63,397.06, EMA120 $63,946.57, EMA240 $63,910.51 아래에 있어 단기 반등 시 공급 우위 구간에 진입",
        "UTAD $65,597.20 이후 고점 수용 실패 → LPSY $64,247.20 → SOW $61,870.00의 분배형 이벤트 체인이 유지됨"
      ],
      "reasoning": "1시간 구조는 regime=DIS, regime_fitness 1.000이며 BC $64,362.60, AR $63,352.30로 시작된 분배 구조가 ST $64,738.00, UT $64,780.00, UTAD $65,597.20, LPSY $64,247.20, SOW $61,870.00까지 이어진 상태입니다. phase_structures상 현재 구조는 confirmed=true이고 major_phase=D, last_phase=SOW이므로 구조적 해석은 명확히 bearish입니다. 다만 현재가 $62,478.00는 SOW 저점 $61,870.00에서 소폭 반등한 위치라 즉시 추격보다는 $63,352.30 AR 하단 회복 실패 또는 $64,247.20 LPSY 재공급 여부가 다음 핵심 확인 지점입니다. $63,352.30을 회복하지 못하면 SOW 이후 약한 반등으로 해석되며, 반대로 $64,247.20 위로 회복하면 단기 약세 setup은 약화됩니다.",
      "key_levels": {
        "support": [
          61870.0
        ],
        "resistance": [
          63352.3,
          63397.06,
          63946.57,
          64247.2,
          64362.6,
          65597.2
        ]
      },
      "time_horizon": "short-to-medium term",
      "invalidation_level": "$65,597.20 상방 회복 및 수용",
      "risk_scenario": "반대 시나리오는 SOW $61,870.00이 단순 하방 유동성 회수로 끝나고 가격이 AR $63,352.30 및 LPSY $64,247.20을 순차적으로 회복하는 경우입니다. 이 경우 Phase D 약세 지속 해석은 약화되며, 특히 UTAD $65,597.20 위에서 수용되면 현재 분배 구조 판독은 무효화됩니다.",
      "data_quality": "high",
      "metrics": {
        "acc_score": 96.2,
        "dis_score": 100.0,
        "regime": "DIS",
        "regime_state": "dis_candidate",
        "structure_bias": "bearish",
        "phase_context": "dis_candidate / distribution / Phase D",
        "phases_detected": [
          "BC",
          "AR",
          "ST",
          "SOW_IN_PHASE_B",
          "UT",
          "UTAD",
          "LPSY",
          "SOW"
        ],
        "last_phase": "SOW",
        "phase_candidates": [
          {
            "label": "BC",
            "side": "high",
            "idx": 39,
            "price": 64362.6,
            "color": "#ffd166"
          },
          {
            "label": "AR",
            "side": "low",
            "idx": 44,
            "price": 63352.3,
            "color": "#06d6a0"
          },
          {
            "label": "ST",
            "side": "high",
            "idx": 69,
            "price": 64738.0,
            "color": "#118ab2"
          },
          {
            "label": "SOW_IN_PHASE_B",
            "side": "low",
            "idx": 89,
            "price": 63650.0,
            "color": "#ef476f"
          },
          {
            "label": "UT",
            "side": "high",
            "idx": 169,
            "price": 64780.0,
            "color": "#f9844a"
          },
          {
            "label": "UTAD",
            "side": "high",
            "idx": 278,
            "price": 65597.2,
            "color": "#f9844a"
          },
          {
            "label": "LPSY",
            "side": "high",
            "idx": 290,
            "price": 64247.2,
            "color": "#8338ec"
          },
          {
            "label": "SOW",
            "side": "low",
            "idx": 296,
            "price": 61870.0,
            "color": "#ef476f"
          }
        ],
        "phase_structures": [
          {
            "structure_id": "1h_cycle_1",
            "sequence": 1,
            "timeframe": "1h",
            "regime": "distribution",
            "role": "current_structure_candidate",
            "is_active": true,
            "is_completed": false,
            "is_confirmed": true,
            "structure_bias": "bearish",
            "phase_context": "distribution",
            "start_idx": 39,
            "end_idx": 296,
            "phase_count": 8,
            "phases": [
              {
                "label": "BC",
                "side": "high",
                "idx": 39,
                "price": 64362.6,
                "color": "#ffd166",
                "dt": "2026-06-13 00:00:00+09:00"
              },
              {
                "label": "AR",
                "side": "low",
                "idx": 44,
                "price": 63352.3,
                "color": "#06d6a0",
                "dt": "2026-06-13 05:00:00+09:00"
              },
              {
                "label": "ST",
                "side": "high",
                "idx": 69,
                "price": 64738.0,
                "color": "#118ab2",
                "dt": "2026-06-14 06:00:00+09:00"
              },
              {
                "label": "SOW_IN_PHASE_B",
                "side": "low",
                "idx": 89,
                "price": 63650.0,
                "color": "#ef476f",
                "dt": "2026-06-15 02:00:00+09:00"
              },
              {
                "label": "UT",
                "side": "high",
                "idx": 169,
                "price": 64780.0,
                "color": "#f9844a",
                "dt": "2026-06-18 10:00:00+09:00"
              },
              {
                "label": "UTAD",
                "side": "high",
                "idx": 278,
                "price": 65597.2,
                "color": "#f9844a",
                "dt": "2026-06-22 23:00:00+09:00"
              },
              {
                "label": "LPSY",
                "side": "high",
                "idx": 290,
                "price": 64247.2,
                "color": "#8338ec",
                "dt": "2026-06-23 11:00:00+09:00"
              },
              {
                "label": "SOW",
                "side": "low",
                "idx": 296,
                "price": 61870.0,
                "color": "#ef476f",
                "dt": "2026-06-23 17:00:00+09:00"
              }
            ]
          }
        ],
        "active_structure_id": "1h_cycle_1",
        "primary_structure_id": "1h_cycle_1",
        "structure_count": 1,
        "regime_fitness": 1.0,
        "current_event": "SOW",
        "major_phase": "D",
        "pos_in_range": 0.5,
        "main_range_low": 63352.3,
        "main_range_high": 64362.6
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.82,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.62,\n  \"setup_signals\": [\n    \"현재가 $62,478.00가 주 분배 박스 하단 AR $63,352.30 아래에 위치하며 하단 이탈 후 회복 실패 상태\",\n    \"LPSY $64,247.20 이후 SOW $61,870.00 발생으로 Phase D 약세 진행 신호가 확인됨\",\n    \"현재가가 EMA20 $63,397.06, EMA120 $63,946.57, EMA240 $63,910.51 아래에 있어 단기 반등 시 공급 우위 구간에 진입\",\n    \"UTAD $65,597.20 이후 고점 수용 실패 → LPSY $64,247.20 → SOW $61,870.00의 분배형 이벤트 체인이 유지됨\"\n  ],\n  \"reasoning\": \"1시간 구조는 regime=DIS, regime_fitness 1.000이며 BC $64,362.60, AR $63,352.30로 시작된 분배 구조가 ST $64,738.00, UT $64,780.00, UTAD $65,597.20, LPSY $64,247.20, SOW $61,870.00까지 이어진 상태입니다. phase_structures상 현재 구조는 confirmed=true이고 major_phase=D, last_phase=SOW이므로 구조적 해석은 명확히 bearish입니다. 다만 현재가 $62,478.00는 SOW 저점 $61,870.00에서 소폭 반등한 위치라 즉시 추격보다는 $63,352.30 AR 하단 회복 실패 또는 $64,247.20 LPSY 재공급 여부가 다음 핵심 확인 지점입니다. $63,352.30을 회복하지 못하면 SOW 이후 약한 반등으로 해석되며, 반대로 $64,247.20 위로 회복하면 단기 약세 setup은 약화됩니다.\",\n  \"key_levels\": {\n    \"support\": [\n      61870.0\n    ],\n    \"resistance\": [\n      63352.3,\n      63397.06,\n      63946.57,\n      64247.2,\n      64362.6,\n      65597.2\n    ]\n  },\n  \"time_horizon\": \"short-to-medium term\",\n  \"invalidation_level\": \"$65,597.20 상방 회복 및 수용\",\n  \"risk_scenario\": \"반대 시나리오는 SOW $61,870.00이 단순 하방 유동성 회수로 끝나고 가격이 AR $63,352.30 및 LPSY $64,247.20을 순차적으로 회복하는 경우입니다. 이 경우 Phase D 약세 지속 해석은 약화되며, 특히 UTAD $65,597.20 위에서 수용되면 현재 분배 구조 판독은 무효화됩니다.\",\n  \"data_quality\": \"high\"\n}"
    },
    "harmonic": {
      "agent_id": "harmonic",
      "display_name": "Harmonic Specialist",
      "signal": "neutral",
      "confidence": 0.46,
      "structure_bias": "bearish",
      "setup_bias": "bullish",
      "setup_score": 0.56,
      "setup_signals": [
        "현재가 $62,478이 최인접 PRZ 중심 $62,483.15와 사실상 동일하며, 대형 PRZ 범위 $61,836.26~$63,130.04 안에 위치",
        "활성 bullish Gartley 후보 PRZ $62,551.26~$63,130.23, D 예상가 $62,840.75, XAD/BC_EXT/ABCD 3중 confluence",
        "활성 bullish Bat 후보 PRZ $62,477.71~$63,130.21, D 예상가 $62,803.96, 3중 confluence이나 candidate 등급",
        "완성 bullish Bat는 D $63,378.96 기준 AD 0.382 반응 목표 $63,833.17을 이미 달성한 confirmed reaction 패턴이나, 현재가가 다시 PRZ 하단부로 밀려 재방어 확인이 필요",
        "EMA20 $63,397.06, EMA120 $63,946.57, EMA240 $63,910.51 모두 현재가 위에 있어 구조적으로는 아직 하방 압력이 우세"
      ],
      "reasoning": "하모닉 관점에서는 현재가 $62,478이 최인접 PRZ $62,483.15와 거의 일치하고, $62,477.71~$63,130.23 구간에 bullish Bat/Gartley 후보가 겹쳐 단기 반등 셋업은 존재한다. 다만 council_relevant_prz_count와 directional_influence_prz_count가 모두 0이고 actionable_patterns_list도 비어 있어, 이 PRZ는 아직 구조를 뒤집을 수 있는 독립 신호가 아니다. 완성 bullish Bat는 confirmed reaction으로 reaction_score 0.9를 기록했지만, 현재 가격이 EMA20 $63,397 및 EMA120/240 아래에 있고 24h -3.32%라 confirmed structure는 여전히 약세 쪽이다. 따라서 구조_bias는 bearish, 셋업_bias는 bullish로 분리하며, 실제 방향 신호는 확인 전까지 neutral로 둔다.",
      "key_levels": {
        "support": [
          62477.71,
          62551.26,
          61870.0,
          61836.26
        ],
        "resistance": [
          63130.04,
          63130.23,
          63397.06,
          63833.17,
          64113.79,
          64568.0
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$61,836.26 하향 이탈 및 1시간봉 종가 수용",
      "risk_scenario": "$61,836.26~$61,870.00 방어에 실패하면 현재 bullish PRZ는 D 실패 구간으로 전환되고, $62,237.20 및 그 이하 유동성 재탐색 가능성이 커진다. 반대로 $63,130.23 상단을 회복하고 $63,397.06 EMA20 위에서 수용되면 bullish Bat/Gartley 반응이 재활성화되어 $63,833.17, $64,113.79, $64,568.00 순으로 TP 래더가 열릴 수 있다.",
      "data_quality": "medium",
      "metrics": {
        "patterns_found": 81,
        "completed_patterns_found": 36,
        "forming_d_prz_found": 45,
        "swing_orders_scanned": [
          3,
          5,
          8
        ],
        "swing_search_window": 34,
        "multiscale_swings_scanned": 69,
        "swing_highs_scanned": 37,
        "swing_lows_scanned": 32,
        "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": 9,
          "medium": 28,
          "low": 44
        },
        "prz_status_counts": {
          "active": 16,
          "nearby": 10,
          "watch": 22,
          "far": 33,
          "forming": 18
        },
        "high_confluence_prz_count": 33,
        "strict_patterns_found": 33,
        "candidate_patterns_found": 48,
        "active_patterns_at_prz": 16,
        "nearby_patterns": 10,
        "all_patterns": [
          "bat",
          "shark",
          "shark",
          "shark",
          "shark",
          "bat",
          "crab",
          "crab",
          "bat",
          "gartley",
          "bat",
          "bat",
          "shark",
          "bat",
          "bat",
          "butterfly",
          "bat",
          "gartley",
          "crab",
          "gartley",
          "butterfly",
          "gartley",
          "bat",
          "butterfly",
          "gartley",
          "gartley",
          "butterfly",
          "bat",
          "crab",
          "butterfly",
          "crab",
          "crab",
          "butterfly",
          "crab",
          "crab",
          "crab",
          "crab",
          "shark",
          "butterfly",
          "butterfly",
          "crab",
          "butterfly",
          "crab",
          "shark",
          "shark",
          "shark",
          "gartley",
          "butterfly",
          "butterfly",
          "crab",
          "gartley",
          "gartley",
          "shark",
          "shark",
          "crab",
          "gartley",
          "butterfly",
          "gartley",
          "crab",
          "gartley",
          "butterfly",
          "bat",
          "crab",
          "crab",
          "butterfly",
          "bat",
          "butterfly",
          "crab",
          "bat",
          "crab",
          "butterfly",
          "shark",
          "crab",
          "gartley",
          "crab",
          "gartley",
          "crab",
          "crab",
          "shark",
          "butterfly",
          "crab"
        ],
        "all_signals": [
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish"
        ],
        "best_pattern": "bat",
        "best_pattern_quality": "strict",
        "best_quality": "high",
        "best_pattern_score": 0.925,
        "best_completion_status": "forming",
        "nearest_pattern": "bat",
        "nearest_prz": 62483.15,
        "price_to_prz": 0.01,
        "prz_range": [
          61836.26,
          63130.04
        ],
        "council_relevant_prz_count": 0,
        "directional_influence_prz_count": 0,
        "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.925,
            "ratio_score": 1.0,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 63493.72,
            "prz_range": [
              63265.14,
              63722.31
            ],
            "prz_width_pct": 0.72,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.63,
            "price_to_prz_pct_raw": 1.6257,
            "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": 63493.72,
              "a_price": 64568.0,
              "tp1_ad_382": 63904.1,
              "tp2_ad_618": 64157.63,
              "tp3_a_or_structure_liquidity": 64568.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4554,
              "ABC": 0.5658
            },
            "x_price": 63136.2,
            "x_idx": 230,
            "x_order": 8,
            "a_price": 64568.0,
            "a_idx": 244,
            "a_order": 8,
            "b_price": 63916.0,
            "b_idx": 252,
            "b_order": 3,
            "c_price": 64284.9,
            "c_idx": 259,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.867,
            "ratio_score": 0.895,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 63575.45,
            "prz_range": [
              63421.83,
              63729.07
            ],
            "prz_width_pct": 0.483,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.76,
            "price_to_prz_pct_raw": 1.7565,
            "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": "gartley",
              "d_price": 63575.45,
              "a_price": 64453.3,
              "tp1_ad_382": 63910.79,
              "tp2_ad_618": 64117.96,
              "tp3_a_or_structure_liquidity": 64453.3,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6357,
              "ABC": 0.7035
            },
            "x_price": 63360.0,
            "x_idx": 224,
            "x_order": 3,
            "a_price": 64453.3,
            "a_idx": 251,
            "a_order": 5,
            "b_price": 63758.3,
            "b_idx": 286,
            "b_order": 5,
            "c_price": 64247.2,
            "c_idx": 290,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.854,
            "ratio_score": 0.877,
            "prz_score": 0.991,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 63220.0,
            "prz_range": [
              63083.09,
              63674.82
            ],
            "prz_width_pct": 0.934,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.44,
            "price_to_prz_pct_raw": 1.442,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "post_D_close_progress"
              ],
              "reaction_score": 0.9,
              "reaction_detail": {
                "reaction_score": 0.9,
                "reaction_move_ratio_ad": 1.163,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 63378.96,
              "a_price": 64568.0,
              "tp1_ad_382": 63833.17,
              "tp2_ad_618": 64113.79,
              "tp3_a_or_structure_liquidity": 64568.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4866,
              "ABC": 0.6689,
              "BCD": 2.3976,
              "XAD": 0.9415
            },
            "x_price": 63136.2,
            "x_idx": 230,
            "x_order": 8,
            "a_price": 64568.0,
            "a_idx": 244,
            "a_order": 8,
            "b_price": 63871.3,
            "b_idx": 248,
            "b_order": 8,
            "c_price": 64337.3,
            "c_idx": 255,
            "c_order": 3,
            "d_idx": 263
          },
          {
            "pattern": "butterfly",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.844,
            "ratio_score": 0.8,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 63556.76,
            "prz_range": [
              63283.4,
              63830.12
            ],
            "prz_width_pct": 0.86,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.73,
            "price_to_prz_pct_raw": 1.7266,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "butterfly",
              "d_price": 63556.76,
              "a_price": 62237.2,
              "tp1_ad_382": 63052.69,
              "tp2_ad_618": 62741.27,
              "tp3_a_or_structure_liquidity": 62237.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7753,
              "ABC": 0.3629
            },
            "x_price": 63088.0,
            "x_idx": 194,
            "x_order": 3,
            "a_price": 62237.2,
            "a_idx": 195,
            "a_order": 8,
            "b_price": 62896.8,
            "b_idx": 199,
            "b_order": 3,
            "c_price": 63136.2,
            "c_idx": 230,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.833,
            "ratio_score": 0.565,
            "prz_score": 0.994,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 62840.75,
            "prz_range": [
              62551.26,
              63130.23
            ],
            "prz_width_pct": 0.921,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.58,
            "price_to_prz_pct_raw": 0.5806,
            "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": 62840.75,
              "a_price": 64370.9,
              "tp1_ad_382": 63425.26,
              "tp2_ad_618": 63786.38,
              "tp3_a_or_structure_liquidity": 64370.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5484,
              "ABC": 0.8925
            },
            "x_price": 62272.4,
            "x_idx": 201,
            "x_order": 5,
            "a_price": 64370.9,
            "a_idx": 231,
            "a_order": 8,
            "b_price": 63220.0,
            "b_idx": 263,
            "b_order": 8,
            "c_price": 64247.2,
            "c_idx": 290,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.819,
            "ratio_score": 0.66,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 63107.34,
            "prz_range": [
              62897.92,
              63316.76
            ],
            "prz_width_pct": 0.664,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.01,
            "price_to_prz_pct_raw": 1.0073,
            "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": 63107.34,
              "a_price": 62237.2,
              "tp1_ad_382": 62774.95,
              "tp2_ad_618": 62569.59,
              "tp3_a_or_structure_liquidity": 62237.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6406,
              "ABC": 0.9466
            },
            "x_price": 63266.8,
            "x_idx": 188,
            "x_order": 3,
            "a_price": 62237.2,
            "a_idx": 195,
            "a_order": 8,
            "b_price": 62896.8,
            "b_idx": 199,
            "b_order": 3,
            "c_price": 62272.4,
            "c_idx": 201,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "shark",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.916,
            "ratio_score": 1.0,
            "prz_score": 0.916,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63068.61,
            "prz_range": [
              62682.86,
              63454.36
            ],
            "prz_width_pct": 1.223,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.95,
            "price_to_prz_pct_raw": 0.9453,
            "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": 63068.61,
              "a_price": 63757.2,
              "tp1_ad_382": 63331.65,
              "tp2_ad_618": 63494.16,
              "tp3_a_or_structure_liquidity": 63757.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5146,
              "ABC": 1.2888
            },
            "x_price": 62836.6,
            "x_idx": 209,
            "x_order": 3,
            "a_price": 63757.2,
            "a_idx": 216,
            "a_order": 3,
            "b_price": 63283.5,
            "b_idx": 219,
            "b_order": 3,
            "c_price": 63894.0,
            "c_idx": 221,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "shark",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.89,
            "ratio_score": 0.995,
            "prz_score": 0.922,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 63582.1,
            "prz_range": [
              63200.09,
              63964.12
            ],
            "prz_width_pct": 1.202,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.77,
            "price_to_prz_pct_raw": 1.7672,
            "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": "shark",
              "d_price": 63582.1,
              "a_price": 64326.0,
              "tp1_ad_382": 63866.27,
              "tp2_ad_618": 64041.83,
              "tp3_a_or_structure_liquidity": 64326.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4707,
              "ABC": 1.1282
            },
            "x_price": 63360.0,
            "x_idx": 224,
            "x_order": 3,
            "a_price": 64326.0,
            "a_idx": 238,
            "a_order": 3,
            "b_price": 63871.3,
            "b_idx": 248,
            "b_order": 8,
            "c_price": 64384.3,
            "c_idx": 271,
            "c_order": 3,
            "d_idx": null
          }
        ],
        "council_relevant_prz": [],
        "report_detail_candidates": [
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.925,
            "ratio_score": 1.0,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 63493.72,
            "prz_range": [
              63265.14,
              63722.31
            ],
            "prz_width_pct": 0.72,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.63,
            "price_to_prz_pct_raw": 1.6257,
            "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": 63493.72,
              "a_price": 64568.0,
              "tp1_ad_382": 63904.1,
              "tp2_ad_618": 64157.63,
              "tp3_a_or_structure_liquidity": 64568.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4554,
              "ABC": 0.5658
            },
            "x_price": 63136.2,
            "x_idx": 230,
            "x_order": 8,
            "a_price": 64568.0,
            "a_idx": 244,
            "a_order": 8,
            "b_price": 63916.0,
            "b_idx": 252,
            "b_order": 3,
            "c_price": 64284.9,
            "c_idx": 259,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.867,
            "ratio_score": 0.895,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 63575.45,
            "prz_range": [
              63421.83,
              63729.07
            ],
            "prz_width_pct": 0.483,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.76,
            "price_to_prz_pct_raw": 1.7565,
            "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": "gartley",
              "d_price": 63575.45,
              "a_price": 64453.3,
              "tp1_ad_382": 63910.79,
              "tp2_ad_618": 64117.96,
              "tp3_a_or_structure_liquidity": 64453.3,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6357,
              "ABC": 0.7035
            },
            "x_price": 63360.0,
            "x_idx": 224,
            "x_order": 3,
            "a_price": 64453.3,
            "a_idx": 251,
            "a_order": 5,
            "b_price": 63758.3,
            "b_idx": 286,
            "b_order": 5,
            "c_price": 64247.2,
            "c_idx": 290,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.854,
            "ratio_score": 0.877,
            "prz_score": 0.991,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 63220.0,
            "prz_range": [
              63083.09,
              63674.82
            ],
            "prz_width_pct": 0.934,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.44,
            "price_to_prz_pct_raw": 1.442,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "post_D_close_progress"
              ],
              "reaction_score": 0.9,
              "reaction_detail": {
                "reaction_score": 0.9,
                "reaction_move_ratio_ad": 1.163,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 63378.96,
              "a_price": 64568.0,
              "tp1_ad_382": 63833.17,
              "tp2_ad_618": 64113.79,
              "tp3_a_or_structure_liquidity": 64568.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4866,
              "ABC": 0.6689,
              "BCD": 2.3976,
              "XAD": 0.9415
            },
            "x_price": 63136.2,
            "x_idx": 230,
            "x_order": 8,
            "a_price": 64568.0,
            "a_idx": 244,
            "a_order": 8,
            "b_price": 63871.3,
            "b_idx": 248,
            "b_order": 8,
            "c_price": 64337.3,
            "c_idx": 255,
            "c_order": 3,
            "d_idx": 263
          },
          {
            "pattern": "butterfly",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.844,
            "ratio_score": 0.8,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 63556.76,
            "prz_range": [
              63283.4,
              63830.12
            ],
            "prz_width_pct": 0.86,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.73,
            "price_to_prz_pct_raw": 1.7266,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "butterfly",
              "d_price": 63556.76,
              "a_price": 62237.2,
              "tp1_ad_382": 63052.69,
              "tp2_ad_618": 62741.27,
              "tp3_a_or_structure_liquidity": 62237.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7753,
              "ABC": 0.3629
            },
            "x_price": 63088.0,
            "x_idx": 194,
            "x_order": 3,
            "a_price": 62237.2,
            "a_idx": 195,
            "a_order": 8,
            "b_price": 62896.8,
            "b_idx": 199,
            "b_order": 3,
            "c_price": 63136.2,
            "c_idx": 230,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.833,
            "ratio_score": 0.565,
            "prz_score": 0.994,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 62840.75,
            "prz_range": [
              62551.26,
              63130.23
            ],
            "prz_width_pct": 0.921,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.58,
            "price_to_prz_pct_raw": 0.5806,
            "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": 62840.75,
              "a_price": 64370.9,
              "tp1_ad_382": 63425.26,
              "tp2_ad_618": 63786.38,
              "tp3_a_or_structure_liquidity": 64370.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5484,
              "ABC": 0.8925
            },
            "x_price": 62272.4,
            "x_idx": 201,
            "x_order": 5,
            "a_price": 64370.9,
            "a_idx": 231,
            "a_order": 8,
            "b_price": 63220.0,
            "b_idx": 263,
            "b_order": 8,
            "c_price": 64247.2,
            "c_idx": 290,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.819,
            "ratio_score": 0.66,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 63107.34,
            "prz_range": [
              62897.92,
              63316.76
            ],
            "prz_width_pct": 0.664,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.01,
            "price_to_prz_pct_raw": 1.0073,
            "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": 63107.34,
              "a_price": 62237.2,
              "tp1_ad_382": 62774.95,
              "tp2_ad_618": 62569.59,
              "tp3_a_or_structure_liquidity": 62237.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6406,
              "ABC": 0.9466
            },
            "x_price": 63266.8,
            "x_idx": 188,
            "x_order": 3,
            "a_price": 62237.2,
            "a_idx": 195,
            "a_order": 8,
            "b_price": 62896.8,
            "b_idx": 199,
            "b_order": 3,
            "c_price": 62272.4,
            "c_idx": 201,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "shark",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.916,
            "ratio_score": 1.0,
            "prz_score": 0.916,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63068.61,
            "prz_range": [
              62682.86,
              63454.36
            ],
            "prz_width_pct": 1.223,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.95,
            "price_to_prz_pct_raw": 0.9453,
            "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": 63068.61,
              "a_price": 63757.2,
              "tp1_ad_382": 63331.65,
              "tp2_ad_618": 63494.16,
              "tp3_a_or_structure_liquidity": 63757.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5146,
              "ABC": 1.2888
            },
            "x_price": 62836.6,
            "x_idx": 209,
            "x_order": 3,
            "a_price": 63757.2,
            "a_idx": 216,
            "a_order": 3,
            "b_price": 63283.5,
            "b_idx": 219,
            "b_order": 3,
            "c_price": 63894.0,
            "c_idx": 221,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "shark",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.89,
            "ratio_score": 0.995,
            "prz_score": 0.922,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 63582.1,
            "prz_range": [
              63200.09,
              63964.12
            ],
            "prz_width_pct": 1.202,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.77,
            "price_to_prz_pct_raw": 1.7672,
            "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": "shark",
              "d_price": 63582.1,
              "a_price": 64326.0,
              "tp1_ad_382": 63866.27,
              "tp2_ad_618": 64041.83,
              "tp3_a_or_structure_liquidity": 64326.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4707,
              "ABC": 1.1282
            },
            "x_price": 63360.0,
            "x_idx": 224,
            "x_order": 3,
            "a_price": 64326.0,
            "a_idx": 238,
            "a_order": 3,
            "b_price": 63871.3,
            "b_idx": 248,
            "b_order": 8,
            "c_price": 64384.3,
            "c_idx": 271,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.876,
            "ratio_score": 1.0,
            "prz_score": 0.945,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 63853.13,
            "prz_range": [
              63498.18,
              64208.07
            ],
            "prz_width_pct": 1.112,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 2.2,
            "price_to_prz_pct_raw": 2.201,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "bat",
              "d_price": 63853.13,
              "a_price": 62232.1,
              "tp1_ad_382": 63233.9,
              "tp2_ad_618": 62851.33,
              "tp3_a_or_structure_liquidity": 62232.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4722,
              "ABC": 0.4158
            },
            "x_price": 64423.4,
            "x_idx": 181,
            "x_order": 3,
            "a_price": 62232.1,
            "a_idx": 183,
            "a_order": 8,
            "b_price": 63266.8,
            "b_idx": 188,
            "b_order": 3,
            "c_price": 62836.6,
            "c_idx": 209,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.872,
            "ratio_score": 1.0,
            "prz_score": 0.908,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 63718.79,
            "prz_range": [
              63318.69,
              64118.89
            ],
            "prz_width_pct": 1.256,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.99,
            "price_to_prz_pct_raw": 1.986,
            "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": 63718.79,
              "a_price": 63894.0,
              "tp1_ad_382": 63785.72,
              "tp2_ad_618": 63827.07,
              "tp3_a_or_structure_liquidity": 63894.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4996,
              "ABC": 0.6075
            },
            "x_price": 63283.5,
            "x_idx": 219,
            "x_order": 3,
            "a_price": 63894.0,
            "a_idx": 221,
            "a_order": 8,
            "b_price": 64199.0,
            "b_idx": 242,
            "b_order": 3,
            "c_price": 64384.3,
            "c_idx": 271,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.845,
            "ratio_score": 0.623,
            "prz_score": 0.964,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 62803.96,
            "prz_range": [
              62477.71,
              63130.21
            ],
            "prz_width_pct": 1.039,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.52,
            "price_to_prz_pct_raw": 0.5217,
            "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": 62803.96,
              "a_price": 64370.9,
              "tp1_ad_382": 63402.53,
              "tp2_ad_618": 63772.33,
              "tp3_a_or_structure_liquidity": 64370.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5484,
              "ABC": 0.8925
            },
            "x_price": 62272.4,
            "x_idx": 201,
            "x_order": 5,
            "a_price": 64370.9,
            "a_idx": 231,
            "a_order": 8,
            "b_price": 63220.0,
            "b_idx": 263,
            "b_order": 8,
            "c_price": 64247.2,
            "c_idx": 290,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "crab",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.791,
            "ratio_score": 0.716,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 63837.4,
            "prz_range": [
              63637.98,
              64036.82
            ],
            "prz_width_pct": 0.625,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 2.18,
            "price_to_prz_pct_raw": 2.1758,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "crab",
              "d_price": 63837.4,
              "a_price": 62237.2,
              "tp1_ad_382": 63226.13,
              "tp2_ad_618": 62848.48,
              "tp3_a_or_structure_liquidity": 62237.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6406,
              "ABC": 0.3629
            },
            "x_price": 63266.8,
            "x_idx": 188,
            "x_order": 3,
            "a_price": 62237.2,
            "a_idx": 195,
            "a_order": 8,
            "b_price": 62896.8,
            "b_idx": 199,
            "b_order": 3,
            "c_price": 63136.2,
            "c_idx": 230,
            "c_order": 8,
            "d_idx": null
          }
        ],
        "actionable_patterns_list": [],
        "tp_ladder": [],
        "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": "early"
      },
      "raw_llm_response": "{\n  \"signal\": \"neutral\",\n  \"confidence\": 0.46,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.56,\n  \"setup_signals\": [\n    \"현재가 $62,478이 최인접 PRZ 중심 $62,483.15와 사실상 동일하며, 대형 PRZ 범위 $61,836.26~$63,130.04 안에 위치\",\n    \"활성 bullish Gartley 후보 PRZ $62,551.26~$63,130.23, D 예상가 $62,840.75, XAD/BC_EXT/ABCD 3중 confluence\",\n    \"활성 bullish Bat 후보 PRZ $62,477.71~$63,130.21, D 예상가 $62,803.96, 3중 confluence이나 candidate 등급\",\n    \"완성 bullish Bat는 D $63,378.96 기준 AD 0.382 반응 목표 $63,833.17을 이미 달성한 confirmed reaction 패턴이나, 현재가가 다시 PRZ 하단부로 밀려 재방어 확인이 필요\",\n    \"EMA20 $63,397.06, EMA120 $63,946.57, EMA240 $63,910.51 모두 현재가 위에 있어 구조적으로는 아직 하방 압력이 우세\"\n  ],\n  \"reasoning\": \"하모닉 관점에서는 현재가 $62,478이 최인접 PRZ $62,483.15와 거의 일치하고, $62,477.71~$63,130.23 구간에 bullish Bat/Gartley 후보가 겹쳐 단기 반등 셋업은 존재한다. 다만 council_relevant_prz_count와 directional_influence_prz_count가 모두 0이고 actionable_patterns_list도 비어 있어, 이 PRZ는 아직 구조를 뒤집을 수 있는 독립 신호가 아니다. 완성 bullish Bat는 confirmed reaction으로 reaction_score 0.9를 기록했지만, 현재 가격이 EMA20 $63,397 및 EMA120/240 아래에 있고 24h -3.32%라 confirmed structure는 여전히 약세 쪽이다. 따라서 구조_bias는 bearish, 셋업_bias는 bullish로 분리하며, 실제 방향 신호는 확인 전까지 neutral로 둔다.\",\n  \"key_levels\": {\n    \"support\": [\n      62477.71,\n      62551.26,\n      61870.0,\n      61836.26\n    ],\n    \"resistance\": [\n      63130.04,\n      63130.23,\n      63397.06,\n      63833.17,\n      64113.79,\n      64568.0\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$61,836.26 하향 이탈 및 1시간봉 종가 수용\",\n  \"risk_scenario\": \"$61,836.26~$61,870.00 방어에 실패하면 현재 bullish PRZ는 D 실패 구간으로 전환되고, $62,237.20 및 그 이하 유동성 재탐색 가능성이 커진다. 반대로 $63,130.23 상단을 회복하고 $63,397.06 EMA20 위에서 수용되면 bullish Bat/Gartley 반응이 재활성화되어 $63,833.17, $64,113.79, $64,568.00 순으로 TP 래더가 열릴 수 있다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "derivatives": {
      "agent_id": "derivatives",
      "display_name": "Derivatives Trader",
      "signal": "bearish",
      "confidence": 0.68,
      "structure_bias": "bearish",
      "setup_bias": "bearish",
      "setup_score": 0.74,
      "setup_signals": [
        "현재가 $62,478가 EMA20 $63,397, EMA120 $63,947, EMA240 $63,911 아래에서 거래되며 구조적 약세 수용",
        "롱 계정 비율 0.665, 24시간 +0.039 상승으로 롱 포지셔닝 과밀",
        "숏 계정 비율 0.335, 24시간 -0.0388 하락으로 하락 중에도 숏 추격보다 롱 잔존이 우세",
        "CVD 변화 -1183.5060으로 가격 반등 참여가 약하고 매도 체결 우위",
        "OI 24시간 -1.769% 감소로 신규 숏 확장보다는 기존 포지션 언와인딩 진행",
        "하방 청산 밀집 구간 $61,700, $61,600이 현재가와 근접하여 단기 유동성 타깃으로 작동 가능",
        "상방 $63,500-$63,600 청산대가 있지만, 현재는 EMA20 $63,397 아래라 반등 시 매도 반응 확인 구간"
      ],
      "reasoning": "구조적으로 BTC는 현재 $62,478에서 EMA20 $63,397, EMA120 $63,947, EMA240 $63,911을 모두 하회하고 있어 확인된 약세 수용 구간으로 판단한다. 파생 포지셔닝은 롱 계정 비율이 0.665까지 상승했고 account_long_crowding이 1.000으로 극단적이라, 하락 중에도 롱이 줄지 않는 취약한 구조다. CVD 변화가 -1183.5060으로 음수이고 OI가 24시간 -1.769% 감소해 매수 참여 부재와 포지션 언와인딩이 동시에 나타나며, aggregate_score 0.315와 bear_signals 3개가 약세 쪽을 지지한다. 단기적으로 $61,700 및 $61,600 하방 청산대가 먼저 자석처럼 작동할 가능성이 높으며, 반대로 $63,500-$63,600을 회복하면 숏커버링성 반등이 $64,200까지 확대될 수 있다.",
      "key_levels": {
        "support": [
          61870,
          61700,
          61600,
          56600
        ],
        "resistance": [
          63397.06,
          63500,
          63600,
          64200,
          64800
        ]
      },
      "time_horizon": "short term, 파생 데이터 선행성을 감안한 4-8시간 중심",
      "invalidation_level": "$64,200 상향 돌파 및 1시간 종가 수용",
      "risk_scenario": "$63,500-$63,600 상방 청산대를 먼저 흡수하고 EMA20 $63,397 위로 재수용되면 약세 셋업은 약화되며, 이후 $64,200 및 strongest_liq_level $64,800까지 숏커버링 반등이 열릴 수 있다.",
      "data_quality": "medium",
      "metrics": {
        "cvd_divergence": 0.3,
        "cvd_change": -1183.506,
        "oi_trend": 0.323,
        "oi_change_pct_24h": -1.769,
        "oi_latest": 97931.343,
        "funding_pressure": 0.465,
        "funding_avg": 3.503e-05,
        "funding_change_24h": -3.158e-05,
        "long_account_ratio": 0.63,
        "short_account_ratio": 0.37,
        "long_account_latest": 0.665,
        "short_account_latest": 0.335,
        "long_account_change_24h": 0.0388,
        "short_account_change_24h": -0.0388,
        "account_flow_label": "long_accounts_rising_short_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.488,
        "spot_futures_basis_pct": -0.0465,
        "basis_change_lookback": -0.0012,
        "aggregate_score": 0.315,
        "bull_signals": 0,
        "bear_signals": 3,
        "liq_below": [
          [
            61700,
            6267.0040904
          ],
          [
            61600,
            9032.4805515
          ],
          [
            56600,
            7260.9659624999995
          ]
        ],
        "liq_above": [
          [
            63500,
            7777.763674949998
          ],
          [
            63600,
            6785.8218222000005
          ],
          [
            64200,
            6223.2887907
          ]
        ],
        "strongest_liq_level": 64800,
        "fragility_score": 0.538,
        "positioning_extreme": "balanced"
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.68,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.74,\n  \"setup_signals\": [\n    \"현재가 $62,478가 EMA20 $63,397, EMA120 $63,947, EMA240 $63,911 아래에서 거래되며 구조적 약세 수용\",\n    \"롱 계정 비율 0.665, 24시간 +0.039 상승으로 롱 포지셔닝 과밀\",\n    \"숏 계정 비율 0.335, 24시간 -0.0388 하락으로 하락 중에도 숏 추격보다 롱 잔존이 우세\",\n    \"CVD 변화 -1183.5060으로 가격 반등 참여가 약하고 매도 체결 우위\",\n    \"OI 24시간 -1.769% 감소로 신규 숏 확장보다는 기존 포지션 언와인딩 진행\",\n    \"하방 청산 밀집 구간 $61,700, $61,600이 현재가와 근접하여 단기 유동성 타깃으로 작동 가능\",\n    \"상방 $63,500-$63,600 청산대가 있지만, 현재는 EMA20 $63,397 아래라 반등 시 매도 반응 확인 구간\"\n  ],\n  \"reasoning\": \"구조적으로 BTC는 현재 $62,478에서 EMA20 $63,397, EMA120 $63,947, EMA240 $63,911을 모두 하회하고 있어 확인된 약세 수용 구간으로 판단한다. 파생 포지셔닝은 롱 계정 비율이 0.665까지 상승했고 account_long_crowding이 1.000으로 극단적이라, 하락 중에도 롱이 줄지 않는 취약한 구조다. CVD 변화가 -1183.5060으로 음수이고 OI가 24시간 -1.769% 감소해 매수 참여 부재와 포지션 언와인딩이 동시에 나타나며, aggregate_score 0.315와 bear_signals 3개가 약세 쪽을 지지한다. 단기적으로 $61,700 및 $61,600 하방 청산대가 먼저 자석처럼 작동할 가능성이 높으며, 반대로 $63,500-$63,600을 회복하면 숏커버링성 반등이 $64,200까지 확대될 수 있다.\",\n  \"key_levels\": {\n    \"support\": [\n      61870,\n      61700,\n      61600,\n      56600\n    ],\n    \"resistance\": [\n      63397.06,\n      63500,\n      63600,\n      64200,\n      64800\n    ]\n  },\n  \"time_horizon\": \"short term, 파생 데이터 선행성을 감안한 4-8시간 중심\",\n  \"invalidation_level\": \"$64,200 상향 돌파 및 1시간 종가 수용\",\n  \"risk_scenario\": \"$63,500-$63,600 상방 청산대를 먼저 흡수하고 EMA20 $63,397 위로 재수용되면 약세 셋업은 약화되며, 이후 $64,200 및 strongest_liq_level $64,800까지 숏커버링 반등이 열릴 수 있다.\",\n  \"data_quality\": \"medium\"\n}"
    }
  },
  "chairman_synthesis": {
    "overall_signal": "bearish",
    "overall_confidence": 0.74,
    "execution_setup": {
      "setup_bias": "bullish",
      "setup_strength": 0.62,
      "active_setups": [
        "ICT: 현재가 $62,478은 EQ $63,733.60 아래 discount 영역이며, 이전일 저점 $63,220 하향 이탈 후 sell-side liquidity 제거 상태",
        "캔들: 7일 저점 $61,870 부근에서 doji 이후 bullish engulfing이 출현했으나 거래량 확증은 부재",
        "피보나치: 하락 확장 1.618 $62,621.86 및 클러스터 $62,670.31 부근에서 단기 반응 후보 구간 형성",
        "하모닉: 현재가가 PRZ 중심 $62,483.15와 거의 일치하며, $62,477.71~$63,130.23 구간에 bullish Bat/Gartley 후보가 겹침",
        "파생: 하방 $61,700, $61,600 청산 유동성이 존재하고 롱 계정 비율 0.665로 롱 포지셔닝 과밀"
      ],
      "setup_vs_structure": "구조는 명확히 bearish이나, 실행 셋업은 저점 유동성 스윕·피보나치 확장·하모닉 PRZ·캔들 반응이 겹치며 bullish counter-structure 성격을 띱니다. 즉 현재 반등 조건은 존재하지만, $63,220~$63,397 회복 전까지는 구조 전환이 아니라 약세 구조 내부의 반응 구간으로 해석해야 합니다."
    },
    "signal_breakdown": {
      "bullish_count": 2,
      "bearish_count": 3,
      "neutral_count": 1
    },
    "key_levels": {
      "support": [
        62478.0,
        61919.4,
        61870.0,
        61700.0,
        61600.0,
        60782.96
      ],
      "resistance": [
        62621.86,
        63130.23,
        63220.0,
        63352.3,
        63397.06,
        63733.6,
        64247.2,
        64568.0,
        64894.74,
        65597.2
      ]
    },
    "confluences": [
      "전문가 전원이 현재가 $62,478이 EMA20 $63,397.06, EMA120 $63,946.57, EMA240 $63,910.51 아래에 있음을 약세 구조의 핵심 근거로 공유합니다.",
      "Wyckoff는 $63,352.30을 분배 박스 하단 AR로, ICT는 $63,220을 bearish CHoCH 및 이전일 저점 이탈 레벨로 제시해 $63,220~$63,352 구간이 구조 회복의 1차 관문으로 수렴합니다.",
      "ICT의 range low 및 Wyckoff의 SOW 저점이 모두 $61,870으로 일치하며, 피보나치 ext_2.0 $61,919.40과도 근접해 $61,870~$61,919가 핵심 하단 구조 지지대로 겹칩니다.",
      "피보나치 $62,621.86, 하모닉 PRZ $62,477.71~$63,130.23, 현재가 $62,478이 매우 근접해 단기 반응 후보 구간이 $62,480~$62,670에 집중됩니다.",
      "Wyckoff LPSY $64,247.20, ICT bullish BOS $64,568, 피보나치 0.382 $64,460.76, 하모닉 TP/구조 유동성 $64,568이 $64,247~$64,568 저항 클러스터를 형성합니다.",
      "파생 데이터의 하방 청산대 $61,700/$61,600은 Wyckoff SOW 저점 $61,870 및 피보나치 ext_2.0 $61,919.40 아래에 위치해 하단 유동성 위험을 강화합니다."
    ],
    "conflicts": [
      "구조 해석과 실행 셋업이 분리됩니다. Wyckoff, Fibonacci, Derivatives는 bearish 구조를 강조하지만, ICT·Candlestick·Harmonic은 저점 스윕 및 PRZ 반응에 따른 bullish pre-confirmation 셋업을 제시합니다.",
      "ICT와 Candlestick은 $61,870 부근 반등 반응을 매수 셋업으로 보지만, Wyckoff는 같은 $61,870을 분배 Phase D의 SOW로 해석해 구조적으로는 약세 지속 신호로 봅니다.",
      "하모닉은 현재가가 bullish PRZ 중심 $62,483.15에 거의 일치한다고 보지만, actionable 패턴이 없고 독립적인 구조 전환 권한은 낮아 Wyckoff/파생의 약세 구조를 뒤집지는 못합니다.",
      "캔들 bullish engulfing의 품질은 0.653으로 단기 반응을 지지하지만, 고거래량 패턴이 없어 파생의 CVD 감소 및 롱 과밀 신호와 충돌합니다."
    ],
    "executive_summary": "BTC 1시간 구조는 현재 분배 이후 Phase D 약세 구조로 진단됩니다. Wyckoff상 UTAD $65,597.20 이후 LPSY $64,247.20이 형성되었고, SOW $61,870 발생 후 가격이 AR 하단 $63,352.30 및 주요 EMA 군 아래에 머물러 있어 구조적 우위는 공급 측에 있습니다. 다만 현재가 $62,478은 하모닉 PRZ $62,483.15, 피보나치 1.618 확장 $62,621.86, 그리고 $61,870 저점 스윕 반응권에 있어 실행 관점에서는 bullish counter-structure 셋업이 다수 존재합니다. 핵심 구조 조건은 $63,220~$63,397 회복 여부이며, 이 구간 아래에서는 반등이 나와도 약세 구조 내부의 반응으로 분류됩니다. 현재 bearish 구조의 주요 무효화는 LPSY $64,247.20 회복이며, 보다 강한 무효화는 $64,568.00 돌파입니다.",
    "raw_llm_response": "{\n  \"overall_signal\": \"bearish\",\n  \"overall_confidence\": 0.74,\n  \"execution_setup\": {\n    \"setup_bias\": \"bullish\",\n    \"setup_strength\": 0.62,\n    \"active_setups\": [\n      \"ICT: 현재가 $62,478은 EQ $63,733.60 아래 discount 영역이며, 이전일 저점 $63,220 하향 이탈 후 sell-side liquidity 제거 상태\",\n      \"캔들: 7일 저점 $61,870 부근에서 doji 이후 bullish engulfing이 출현했으나 거래량 확증은 부재\",\n      \"피보나치: 하락 확장 1.618 $62,621.86 및 클러스터 $62,670.31 부근에서 단기 반응 후보 구간 형성\",\n      \"하모닉: 현재가가 PRZ 중심 $62,483.15와 거의 일치하며, $62,477.71~$63,130.23 구간에 bullish Bat/Gartley 후보가 겹침\",\n      \"파생: 하방 $61,700, $61,600 청산 유동성이 존재하고 롱 계정 비율 0.665로 롱 포지셔닝 과밀\"\n    ],\n    \"setup_vs_structure\": \"구조는 명확히 bearish이나, 실행 셋업은 저점 유동성 스윕·피보나치 확장·하모닉 PRZ·캔들 반응이 겹치며 bullish counter-structure 성격을 띱니다. 즉 현재 반등 조건은 존재하지만, $63,220~$63,397 회복 전까지는 구조 전환이 아니라 약세 구조 내부의 반응 구간으로 해석해야 합니다.\"\n  },\n  \"signal_breakdown\": {\n    \"bullish_count\": 2,\n    \"bearish_count\": 3,\n    \"neutral_count\": 1\n  },\n  \"key_levels\": {\n    \"support\": [\n      62478.0,\n      61919.4,\n      61870.0,\n      61700.0,\n      61600.0,\n      60782.96\n    ],\n    \"resistance\": [\n      62621.86,\n      63130.23,\n      63220.0,\n      63352.3,\n      63397.06,\n      63733.6,\n      64247.2,\n      64568.0,\n      64894.74,\n      65597.2\n    ]\n  },\n  \"confluences\": [\n    \"전문가 전원이 현재가 $62,478이 EMA20 $63,397.06, EMA120 $63,946.57, EMA240 $63,910.51 아래에 있음을 약세 구조의 핵심 근거로 공유합니다.\",\n    \"Wyckoff는 $63,352.30을 분배 박스 하단 AR로, ICT는 $63,220을 bearish CHoCH 및 이전일 저점 이탈 레벨로 제시해 $63,220~$63,352 구간이 구조 회복의 1차 관문으로 수렴합니다.\",\n    \"ICT의 range low 및 Wyckoff의 SOW 저점이 모두 $61,870으로 일치하며, 피보나치 ext_2.0 $61,919.40과도 근접해 $61,870~$61,919가 핵심 하단 구조 지지대로 겹칩니다.\",\n    \"피보나치 $62,621.86, 하모닉 PRZ $62,477.71~$63,130.23, 현재가 $62,478이 매우 근접해 단기 반응 후보 구간이 $62,480~$62,670에 집중됩니다.\",\n    \"Wyckoff LPSY $64,247.20, ICT bullish BOS $64,568, 피보나치 0.382 $64,460.76, 하모닉 TP/구조 유동성 $64,568이 $64,247~$64,568 저항 클러스터를 형성합니다.\",\n    \"파생 데이터의 하방 청산대 $61,700/$61,600은 Wyckoff SOW 저점 $61,870 및 피보나치 ext_2.0 $61,919.40 아래에 위치해 하단 유동성 위험을 강화합니다.\"\n  ],\n  \"conflicts\": [\n    \"구조 해석과 실행 셋업이 분리됩니다. Wyckoff, Fibonacci, Derivatives는 bearish 구조를 강조하지만, ICT·Candlestick·Harmonic은 저점 스윕 및 PRZ 반응에 따른 bullish pre-confirmation 셋업을 제시합니다.\",\n    \"ICT와 Candlestick은 $61,870 부근 반등 반응을 매수 셋업으로 보지만, Wyckoff는 같은 $61,870을 분배 Phase D의 SOW로 해석해 구조적으로는 약세 지속 신호로 봅니다.\",\n    \"하모닉은 현재가가 bullish PRZ 중심 $62,483.15에 거의 일치한다고 보지만, actionable 패턴이 없고 독립적인 구조 전환 권한은 낮아 Wyckoff/파생의 약세 구조를 뒤집지는 못합니다.\",\n    \"캔들 bullish engulfing의 품질은 0.653으로 단기 반응을 지지하지만, 고거래량 패턴이 없어 파생의 CVD 감소 및 롱 과밀 신호와 충돌합니다.\"\n  ],\n  \"highest_conviction_analyst\": \"Wyckoff Expert — regime이 분배(DIS)로 식별되고 구조 적합도가 1.000이며, UTAD $65,597.20 이후 LPSY $64,247.20, SOW $61,870으로 이어지는 Phase D 약세 진행이 가장 명확합니다. 또한 현재가가 분배 박스 하단 AR $63,352.30 아래에 머물러 있어 구조 진단의 일관성과 가격 레벨 정밀도가 가장 높습니다.\",\n  \"invalidation_level\": \"$64,247.20 1시간 종가 회복, 보수적으로는 $64,568.00 상향 돌파 시 현재 bearish 분배 구조 해석이 크게 약화됩니다.\",\n  \"executive_summary\": \"BTC 1시간 구조는 현재 분배 이후 Phase D 약세 구조로 진단됩니다. Wyckoff상 UTAD $65,597.20 이후 LPSY $64,247.20이 형성되었고, SOW $61,870 발생 후 가격이 AR 하단 $63,352.30 및 주요 EMA 군 아래에 머물러 있어 구조적 우위는 공급 측에 있습니다. 다만 현재가 $62,478은 하모닉 PRZ $62,483.15, 피보나치 1.618 확장 $62,621.86, 그리고 $61,870 저점 스윕 반응권에 있어 실행 관점에서는 bullish counter-structure 셋업이 다수 존재합니다. 핵심 구조 조건은 $63,220~$63,397 회복 여부이며, 이 구간 아래에서는 반등이 나와도 약세 구조 내부의 반응으로 분류됩니다. 현재 bearish 구조의 주요 무효화는 LPSY $64,247.20 회복이며, 보다 강한 무효화는 $64,568.00 돌파입니다.\"\n}"
  },
  "overall_signal": "bearish",
  "overall_confidence": 0.74,
  "operating_path": {
    "path_type": "complex",
    "confidence": 0.6,
    "waypoints": [
      {
        "seq": 1,
        "price": 63127.56,
        "type": "resistance_test",
        "source": "Fibonacci (fib_confluence $63,127.56), Harmonic (PRZ 상단 $63,130.23 / bullish Bat·Gartley PRZ 상단 $63,130.21), ICT·Candlestick (counter-structure 매수 셋업)",
        "description": "셋업 레이어가 bullish(62%, ≥0.5)로 구조와 분리되므로 첫 웨이포인트는 셋업 방향(상방)을 우선한다. $61,870 저점에서 bullish engulfing 출현 + sell-side 유동성 제거로 반등이 진행 중이며, 1차 반등 천장은 fib_confluence $63,127.56와 하모닉 PRZ 상단 $63,130.23이 겹치는 구간이다. 단 구조 회복 관문 $63,220~$63,397(ICT CHoCH·Wyckoff AR·EMA20) 바로 아래라 공급에 막힐 가능성이 높고, 이는 '약세 구조 내부의 반응'으로 분류된다. 현재가 대비 +$649 스윙으로 0.5*ATR을 상회. (턴존: $62,670~$63,130)",
        "est_hours": 3,
        "turning_zone": [
          63127.56,
          63260.0
        ],
        "likely_wick": 63220.0,
        "rejection_confirm": 62670.31,
        "invalid_overshoot": 63400.0,
        "calibration_reasoning": "fib 컨플루언스 $63,127.56(ext_1.414/1.272)와 하모닉 PRZ 상단 $63,130.23이 베이스를 고정하고, 구조 회복 관문 $63,220~$63,397(CHoCH·Wyckoff AR·EMA20)이 상단을 캡한다. 존은 fib 저항 $63,258.12를 포함해 $63,260(0.32×ATR)까지로 제한했고, 윅은 관문 하단·체어맨 저항 유동성 $63,220으로 편향. EMA20 $63,397 상향 탈환은 구조 회복이므로 무효 처리."
      },
      {
        "seq": 2,
        "price": 61870.0,
        "type": "support_test",
        "source": "Wyckoff (SOW 저점 $61,870), ICT (range low $61,870), Fibonacci (ext_2.0 $61,919.40 근접)",
        "description": "$63,220 관문 회복 실패 후 Phase D 약세 구조가 재개되며, SOW/range low $61,870과 fib ext_2.0 $61,919.40 클러스터를 재테스트한다. 현재가가 EMA20 $63,397.06·EMA120 $63,946.57·EMA240 $63,910.51을 모두 하회하는 공급 우위 환경이 유지된다. WP1 대비 -$1,257의 구조적 하락 스윙.",
        "est_hours": 9,
        "turning_zone": [
          61730.0,
          61870.0
        ],
        "likely_wick": 61800.0,
        "rejection_confirm": 61919.4,
        "invalid_overshoot": 61695.0,
        "calibration_reasoning": "SOW/레인지 저점 $61,870과 fib ext_2.0 $61,919.40 클러스터가 지지 베이스를 형성. support_test이므로 존을 하방으로 0.34×ATR 확장하되 $61,700 롱 청산대 위($61,730)에서 유지했다. 윅 $61,800은 레인지 저점 직하방 sell-side 유동성 확보 수준. $61,919.40 재탈환 시 지지 확인, $61,700 이탈 시 WP3 캐스케이드로 무효."
      },
      {
        "seq": 3,
        "price": 61600.0,
        "type": "liquidity_sweep",
        "source": "Derivatives (하방 청산 유동성 $61,700/$61,600, 롱 과밀 0.665·crowding 1.000, CVD -1183.5), Wyckoff (SOW 이후 Phase D 하단 확장)",
        "description": "$61,870 지지 이탈 시 파생 하방 청산대 $61,700→$61,600이 자석처럼 작동한다. 롱 계정 과밀과 음의 CVD·OI 감소(-1.769%)가 겹쳐 롱 청산 캐스케이드로 sell-side 유동성을 스윕할 환경. fib ext_2.0 $61,919 하향 이탈을 확정하며 하단 유동성 위험을 실현한다.",
        "est_hours": 18,
        "turning_zone": [
          61300.0,
          61600.0
        ],
        "likely_wick": 61450.0,
        "rejection_confirm": 61700.0,
        "invalid_overshoot": 61260.0,
        "calibration_reasoning": "터미널 웨이포인트로 0.72×ATR 광역 존 적용. $61,700→$61,600 롱 청산대가 자석이며 이 구간은 하방 sell-side 스윕이므로(상방 룰 예외) 존을 베이스 아래 $61,300까지 확장. 윅은 $61,500 라운드 직하방 스톱 사냥대 $61,450으로 편향. $61,700 재탈환 시 반전 확인, $61,300 이탈 시 다음 지지 $60,782.96로 연속 하락하여 무효."
      }
    ],
    "period_extremes": {
      "4h": {
        "expected_high": 63127.56,
        "expected_low": 62400.0,
        "high_first": true
      },
      "8h": {
        "expected_high": 63127.56,
        "expected_low": 61950.0,
        "high_first": true
      },
      "24h": {
        "expected_high": 63127.56,
        "expected_low": 61600.0,
        "high_first": true
      }
    },
    "triggers": {
      "bullish": {
        "price": 63397.06,
        "description": "구조 회복 관문 $63,220(ICT CHoCH/이전일 저점) 돌파 후 EMA20 $63,397.06을 종가 기준으로 회복·유지하면 counter-structure 반등이 구조 전환으로 확대된다. 이후 EQ $63,733.60, LPSY $64,247.20까지 숏커버링 가속."
      },
      "bearish": {
        "price": 61870.0,
        "description": "SOW/range low $61,870 하향 이탈 시 Phase D 하락 가속이 확정된다. 파생 청산대 $61,700/$61,600, fib $60,782.96까지 sell-side 캐스케이드로 확장."
      }
    },
    "scenario_invalidation": 63397.06,
    "raw_llm_response": "```json\n{\n  \"path_type\": \"complex\",\n  \"confidence\": 0.6,\n  \"waypoints\": [\n    {\n      \"seq\": 1,\n      \"price\": 63127.56,\n      \"type\": \"resistance_test\",\n      \"source\": \"Fibonacci (fib_confluence $63,127.56), Harmonic (PRZ 상단 $63,130.23 / bullish Bat·Gartley PRZ 상단 $63,130.21), ICT·Candlestick (counter-structure 매수 셋업)\",\n      \"description\": \"셋업 레이어가 bullish(62%, ≥0.5)로 구조와 분리되므로 첫 웨이포인트는 셋업 방향(상방)을 우선한다. $61,870 저점에서 bullish engulfing 출현 + sell-side 유동성 제거로 반등이 진행 중이며, 1차 반등 천장은 fib_confluence $63,127.56와 하모닉 PRZ 상단 $63,130.23이 겹치는 구간이다. 단 구조 회복 관문 $63,220~$63,397(ICT CHoCH·Wyckoff AR·EMA20) 바로 아래라 공급에 막힐 가능성이 높고, 이는 '약세 구조 내부의 반응'으로 분류된다. 현재가 대비 +$649 스윙으로 0.5*ATR을 상회. (턴존: $62,670~$63,130)\",\n      \"est_hours\": 3\n    },\n    {\n      \"seq\": 2,\n      \"price\": 61870.0,\n      \"type\": \"support_test\",\n      \"source\": \"Wyckoff (SOW 저점 $61,870), ICT (range low $61,870), Fibonacci (ext_2.0 $61,919.40 근접)\",\n      \"description\": \"$63,220 관문 회복 실패 후 Phase D 약세 구조가 재개되며, SOW/range low $61,870과 fib ext_2.0 $61,919.40 클러스터를 재테스트한다. 현재가가 EMA20 $63,397.06·EMA120 $63,946.57·EMA240 $63,910.51을 모두 하회하는 공급 우위 환경이 유지된다. WP1 대비 -$1,257의 구조적 하락 스윙.\",\n      \"est_hours\": 9\n    },\n    {\n      \"seq\": 3,\n      \"price\": 61600.0,\n      \"type\": \"liquidity_sweep\",\n      \"source\": \"Derivatives (하방 청산 유동성 $61,700/$61,600, 롱 과밀 0.665·crowding 1.000, CVD -1183.5), Wyckoff (SOW 이후 Phase D 하단 확장)\",\n      \"description\": \"$61,870 지지 이탈 시 파생 하방 청산대 $61,700→$61,600이 자석처럼 작동한다. 롱 계정 과밀과 음의 CVD·OI 감소(-1.769%)가 겹쳐 롱 청산 캐스케이드로 sell-side 유동성을 스윕할 환경. fib ext_2.0 $61,919 하향 이탈을 확정하며 하단 유동성 위험을 실현한다.\",\n      \"est_hours\": 18\n    }\n  ],\n  \"period_extremes\": {\n    \"4h\":  {\"expected_high\": 63127.56, \"expected_low\": 62400.0, \"high_first\": true},\n    \"8h\":  {\"expected_high\": 63127.56, \"expected_low\": 61950.0, \"high_first\": true},\n    \"24h\": {\"expected_high\": 63127.56, \"expected_low\": 61600.0, \"high_first\": true}\n  },\n  \"triggers\": {\n    \"bullish\": {\n      \"price\": 63397.06,\n      \"description\": \"구조 회복 관문 $63,220(ICT CHoCH/이전일 저점) 돌파 후 EMA20 $63,397.06을 종가 기준으로 회복·유지하면 counter-structure 반등이 구조 전환으로 확대된다. 이후 EQ $63,733.60, LPSY $64,247.20까지 숏커버링 가속.\"\n    },\n    \"bearish\": {\n      \"price\": 61870.0,\n      \"description\": \"SOW/range low $61,870 하향 이탈 시 Phase D 하락 가속이 확정된다. 파생 청산대 $61,700/$61,600, fib $60,782.96까지 sell-side 캐스케이드로 확장.\"\n    }\n  },\n  \"scenario_invalidation\": 63397.06\n}\n```"
  },
  "tp_calibration": {
    "calibrated_waypoints": [
      {
        "seq": 1,
        "base_target": 63127.56,
        "turning_zone": [
          63127.56,
          63260.0
        ],
        "likely_wick": 63220.0,
        "rejection_confirm": 62670.31,
        "invalid_overshoot": 63400.0,
        "calibration_reasoning": "fib 컨플루언스 $63,127.56(ext_1.414/1.272)와 하모닉 PRZ 상단 $63,130.23이 베이스를 고정하고, 구조 회복 관문 $63,220~$63,397(CHoCH·Wyckoff AR·EMA20)이 상단을 캡한다. 존은 fib 저항 $63,258.12를 포함해 $63,260(0.32×ATR)까지로 제한했고, 윅은 관문 하단·체어맨 저항 유동성 $63,220으로 편향. EMA20 $63,397 상향 탈환은 구조 회복이므로 무효 처리."
      },
      {
        "seq": 2,
        "base_target": 61870.0,
        "turning_zone": [
          61730.0,
          61870.0
        ],
        "likely_wick": 61800.0,
        "rejection_confirm": 61919.4,
        "invalid_overshoot": 61695.0,
        "calibration_reasoning": "SOW/레인지 저점 $61,870과 fib ext_2.0 $61,919.40 클러스터가 지지 베이스를 형성. support_test이므로 존을 하방으로 0.34×ATR 확장하되 $61,700 롱 청산대 위($61,730)에서 유지했다. 윅 $61,800은 레인지 저점 직하방 sell-side 유동성 확보 수준. $61,919.40 재탈환 시 지지 확인, $61,700 이탈 시 WP3 캐스케이드로 무효."
      },
      {
        "seq": 3,
        "base_target": 61600.0,
        "turning_zone": [
          61300.0,
          61600.0
        ],
        "likely_wick": 61450.0,
        "rejection_confirm": 61700.0,
        "invalid_overshoot": 61260.0,
        "calibration_reasoning": "터미널 웨이포인트로 0.72×ATR 광역 존 적용. $61,700→$61,600 롱 청산대가 자석이며 이 구간은 하방 sell-side 스윕이므로(상방 룰 예외) 존을 베이스 아래 $61,300까지 확장. 윅은 $61,500 라운드 직하방 스톱 사냥대 $61,450으로 편향. $61,700 재탈환 시 반전 확인, $61,300 이탈 시 다음 지지 $60,782.96로 연속 하락하여 무효."
      }
    ],
    "raw_llm_response": "```json\n{\n  \"calibrated_waypoints\": [\n    {\n      \"seq\": 1,\n      \"base_target\": 63127.56,\n      \"turning_zone\": [63127.56, 63260.0],\n      \"likely_wick\": 63220.0,\n      \"rejection_confirm\": 62670.31,\n      \"invalid_overshoot\": 63400.0,\n      \"calibration_reasoning\": \"fib 컨플루언스 $63,127.56(ext_1.414/1.272)와 하모닉 PRZ 상단 $63,130.23이 베이스를 고정하고, 구조 회복 관문 $63,220~$63,397(CHoCH·Wyckoff AR·EMA20)이 상단을 캡한다. 존은 fib 저항 $63,258.12를 포함해 $63,260(0.32×ATR)까지로 제한했고, 윅은 관문 하단·체어맨 저항 유동성 $63,220으로 편향. EMA20 $63,397 상향 탈환은 구조 회복이므로 무효 처리.\"\n    },\n    {\n      \"seq\": 2,\n      \"base_target\": 61870.0,\n      \"turning_zone\": [61730.0, 61870.0],\n      \"likely_wick\": 61800.0,\n      \"rejection_confirm\": 61919.4,\n      \"invalid_overshoot\": 61695.0,\n      \"calibration_reasoning\": \"SOW/레인지 저점 $61,870과 fib ext_2.0 $61,919.40 클러스터가 지지 베이스를 형성. support_test이므로 존을 하방으로 0.34×ATR 확장하되 $61,700 롱 청산대 위($61,730)에서 유지했다. 윅 $61,800은 레인지 저점 직하방 sell-side 유동성 확보 수준. $61,919.40 재탈환 시 지지 확인, $61,700 이탈 시 WP3 캐스케이드로 무효.\"\n    },\n    {\n      \"seq\": 3,\n      \"base_target\": 61600.0,\n      \"turning_zone\": [61300.0, 61600.0],\n      \"likely_wick\": 61450.0,\n      \"rejection_confirm\": 61700.0,\n      \"invalid_overshoot\": 61260.0,\n      \"calibration_reasoning\": \"터미널 웨이포인트로 0.72×ATR 광역 존 적용. $61,700→$61,600 롱 청산대가 자석이며 이 구간은 하방 sell-side 스윕이므로(상방 룰 예외) 존을 베이스 아래 $61,300까지 확장. 윅은 $61,500 라운드 직하방 스톱 사냥대 $61,450으로 편향. $61,700 재탈환 시 반전 확인, $61,300 이탈 시 다음 지지 $60,782.96로 연속 하락하여 무효.\"\n    }\n  ]\n}\n```"
  },
  "timing": {
    "stages": {
      "stage1_agents": 51.0,
      "chairman": 78.1,
      "operating_path": 209.1,
      "tp_calibrator": 159.4
    },
    "agents": {},
    "total_s": 497.7
  }
}