{
  "symbol": "BTC/USDT",
  "timeframe": "1h",
  "timestamp": "2026-06-29 13:00 KST",
  "last_price": 60019.9,
  "num_candles": 300,
  "stage1_analyses": {
    "candlestick": {
      "agent_id": "candlestick",
      "display_name": "Candlestick Reader",
      "signal": "bullish",
      "confidence": 0.56,
      "structure_bias": "bearish",
      "setup_bias": "bullish",
      "setup_score": 0.64,
      "setup_signals": [
        "7일 범위 EQ $61,813.60 아래의 디스카운트 구간에서 현재가 $60,019.90 거래",
        "EMA20 $59,754.16 상향 회복 후 현재가가 약 +0.4% 위에 위치",
        "strict 등급 bullish_engulfing 감지, 품질 0.743 및 고거래량 동반",
        "7일 저점 $58,030.00 위에서 반등 시도 중이며 단기 수요 반응 가능성",
        "최근 5개 1시간봉 중 4개가 양봉이며 마지막 2개 봉도 각각 +0.5%, +0.5% 상승"
      ],
      "reasoning": "현재 BTC는 $60,019.90으로 EMA20 $59,754.16 위에 재진입했지만, EMA120 $60,594.98 및 EMA240 $61,665.14 아래에 있어 확정 구조는 아직 약세로 판단된다. 최근 패턴은 bearish/bullish engulfing이 번갈아 6개 발생해 단기 변동성 장세이지만, 가장 강한 후보가 고거래량 bullish_engulfing이며 품질 0.743으로 매수 반전 시그널의 신뢰도가 상대적으로 높다. 7일 고점 $65,597.20과 저점 $58,030.00의 EQ는 $61,813.60이며, 현재 가격은 그 아래 디스카운트 구간이라 구조 전환 전 매수 셋업은 유효하다. 다만 bull_score 2.35와 bear_score 2.25의 차이가 작아, $60,594.98~$61,665.14 저항대를 돌파하기 전까지는 강한 추세 확정이 아닌 단기 반등 셋업으로 해석한다.",
      "key_levels": {
        "support": [
          59754.16,
          58030.0
        ],
        "resistance": [
          60594.98,
          61665.14,
          61813.6,
          65597.2
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$58,030.00",
      "risk_scenario": "가격이 EMA20 $59,754.16을 다시 이탈하고 7일 저점 $58,030.00까지 밀리면 bullish engulfing 기반 반등 셋업은 실패로 간주된다. 이 경우 디스카운트 매수 구간이 지지로 작동하지 못했다는 의미이며, 하방 유동성 확장과 추가 약세 구조 지속 가능성이 커진다.",
      "data_quality": "medium",
      "metrics": {
        "total_patterns_detected": 144,
        "recent_patterns": 6,
        "pattern_list": [
          "bearish_engulfing@291",
          "bullish_engulfing@292",
          "bearish_engulfing@293",
          "bullish_engulfing@295",
          "bearish_engulfing@297",
          "bullish_engulfing@298"
        ],
        "atr_value": 471.6,
        "vol_avg_20": 6049.82,
        "high_volume_patterns": [
          "bullish_engulfing"
        ],
        "pattern_candidates": [
          {
            "pattern": "bullish_engulfing",
            "signal": "bullish",
            "pattern_quality": 0.743,
            "tier": "strict",
            "high_volume": true
          },
          {
            "pattern": "bullish_engulfing",
            "signal": "bullish",
            "pattern_quality": 0.58,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "bullish_engulfing",
            "signal": "bullish",
            "pattern_quality": 0.563,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "bearish_engulfing",
            "signal": "bearish",
            "pattern_quality": 0.499,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "bearish_engulfing",
            "signal": "bearish",
            "pattern_quality": 0.492,
            "tier": "candidate",
            "high_volume": false
          }
        ],
        "best_pattern_quality": 0.743,
        "bull_score": 2.35,
        "bear_score": 2.25
      },
      "raw_llm_response": "{\n  \"signal\": \"bullish\",\n  \"confidence\": 0.56,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.64,\n  \"setup_signals\": [\n    \"7일 범위 EQ $61,813.60 아래의 디스카운트 구간에서 현재가 $60,019.90 거래\",\n    \"EMA20 $59,754.16 상향 회복 후 현재가가 약 +0.4% 위에 위치\",\n    \"strict 등급 bullish_engulfing 감지, 품질 0.743 및 고거래량 동반\",\n    \"7일 저점 $58,030.00 위에서 반등 시도 중이며 단기 수요 반응 가능성\",\n    \"최근 5개 1시간봉 중 4개가 양봉이며 마지막 2개 봉도 각각 +0.5%, +0.5% 상승\"\n  ],\n  \"reasoning\": \"현재 BTC는 $60,019.90으로 EMA20 $59,754.16 위에 재진입했지만, EMA120 $60,594.98 및 EMA240 $61,665.14 아래에 있어 확정 구조는 아직 약세로 판단된다. 최근 패턴은 bearish/bullish engulfing이 번갈아 6개 발생해 단기 변동성 장세이지만, 가장 강한 후보가 고거래량 bullish_engulfing이며 품질 0.743으로 매수 반전 시그널의 신뢰도가 상대적으로 높다. 7일 고점 $65,597.20과 저점 $58,030.00의 EQ는 $61,813.60이며, 현재 가격은 그 아래 디스카운트 구간이라 구조 전환 전 매수 셋업은 유효하다. 다만 bull_score 2.35와 bear_score 2.25의 차이가 작아, $60,594.98~$61,665.14 저항대를 돌파하기 전까지는 강한 추세 확정이 아닌 단기 반등 셋업으로 해석한다.\",\n  \"key_levels\": {\n    \"support\": [\n      59754.16,\n      58030.0\n    ],\n    \"resistance\": [\n      60594.98,\n      61665.14,\n      61813.6,\n      65597.2\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$58,030.00\",\n  \"risk_scenario\": \"가격이 EMA20 $59,754.16을 다시 이탈하고 7일 저점 $58,030.00까지 밀리면 bullish engulfing 기반 반등 셋업은 실패로 간주된다. 이 경우 디스카운트 매수 구간이 지지로 작동하지 못했다는 의미이며, 하방 유동성 확장과 추가 약세 구조 지속 가능성이 커진다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "fibonacci": {
      "agent_id": "fibonacci",
      "display_name": "Fibonacci Analyst",
      "signal": "bullish",
      "confidence": 0.62,
      "structure_bias": "neutral",
      "setup_bias": "bullish",
      "setup_score": 0.65,
      "setup_signals": [
        "가격이 스윙 EQ ret_0.5 $60,129.05 아래에 위치해 단기 할인 구간에서 반등 셋업 형성",
        "현재가 $60,019.90이 골든비율 ret_0.618 $60,031.29를 0.020% 거리로 테스트 중",
        "$60,015.57 부근에 ret_0.786, ret_0.236, ret_0.618, ret_0.5가 겹친 4중 피보나치 컨플루언스 존 형성",
        "하단 방어 기준 ret_0.786 $59,892.10이 가까워 손익비가 명확한 반등 후보 구간",
        "fib_reaction_state가 testing이며 반응 확률이 0.65로 측정됨"
      ],
      "reasoning": "현재 BTC/USDT는 상승 스윙 $59,715 → $60,543 이후 되돌림 구간에 있으며, 현재가 $60,019.90은 핵심 골든비율 ret_0.618 $60,031.29 바로 아래에서 테스트 중이다. $60,015.57 부근은 4개 피보나치 레벨이 중첩된 고품질 컨플루언스 존이며 confluence_quality가 1.000으로 매우 높다. 다만 $60,031.29, $60,129.05, $60,226.81이 모두 상방 저항으로 남아 있어, 구조적으로는 아직 명확한 BOS나 상방 수용이 확인되지 않았으므로 structure_bias는 neutral이다. 셋업 관점에서는 가격이 EQ $60,129.05 아래 할인 구간에 있고 골든비율 반응 구간에 위치하므로 단기 반등 setup_bias는 bullish로 판단한다.",
      "key_levels": {
        "support": [
          59892.1,
          59715
        ],
        "resistance": [
          60031.29,
          60129.05,
          60226.81,
          60543.3,
          60768.65,
          61055.31
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$59,892.10",
      "risk_scenario": "$60,031.29 골든비율 회복에 실패하고 $59,892.10 ret_0.786 지지를 1시간봉 기준으로 하향 이탈하면 반등 셋업은 무효화되며, 스윙 저점 $59,715 재테스트 또는 7일 저점 $58,030 방향으로 하락 압력이 확대될 수 있다.",
      "data_quality": "high",
      "metrics": {
        "swing_pair": "Low→High: $59,715 → $60,543",
        "direction": "up",
        "nearest_fib": "ret_0.618",
        "nearest_fib_price": 60031.29,
        "nearest_fib_distance": 0.02,
        "golden_ratio_level": 60031.29,
        "fib_ret_382": 60226.81,
        "fib_ret_618": 60031.29,
        "confluence_zones": [
          {
            "price": 60015.57,
            "count": 4,
            "levels": [
              "ret_0.786",
              "ret_0.236",
              "ret_0.618",
              "ret_0.5"
            ],
            "cluster_score": 1.0
          },
          {
            "price": 60287.29,
            "count": 2,
            "levels": [
              "ret_0.382",
              "ret_0.236"
            ],
            "cluster_score": 0.6
          },
          {
            "price": 60655.98,
            "count": 2,
            "levels": [
              "ext_1.0",
              "ext_1.272"
            ],
            "cluster_score": 0.6
          },
          {
            "price": 60970.81,
            "count": 2,
            "levels": [
              "ext_1.414",
              "ext_1.618"
            ],
            "cluster_score": 0.6
          },
          {
            "price": 61303.24,
            "count": 2,
            "levels": [
              "ret_0.382",
              "ext_2.0"
            ],
            "cluster_score": 0.6
          }
        ],
        "support_levels": [
          59892.099
        ],
        "resistance_levels": [
          60031.287000000004,
          60129.05,
          60226.813
        ],
        "level_candidates": [
          {
            "name": "ret_0.236",
            "price": 60347.77,
            "distance_pct": 0.55,
            "is_support": false,
            "cluster_score": 0.6
          },
          {
            "name": "ret_0.382",
            "price": 60226.81,
            "distance_pct": 0.34,
            "is_support": false,
            "cluster_score": 1.0
          },
          {
            "name": "ret_0.5",
            "price": 60129.05,
            "distance_pct": 0.18,
            "is_support": false,
            "cluster_score": 1.0
          },
          {
            "name": "ret_0.618",
            "price": 60031.29,
            "distance_pct": 0.02,
            "is_support": false,
            "cluster_score": 1.0
          },
          {
            "name": "ret_0.786",
            "price": 59892.1,
            "distance_pct": 0.21,
            "is_support": true,
            "cluster_score": 1.0
          },
          {
            "name": "ext_1.0",
            "price": 60543.3,
            "distance_pct": 0.87,
            "is_support": false,
            "cluster_score": 0.6
          },
          {
            "name": "ext_1.272",
            "price": 60768.65,
            "distance_pct": 1.25,
            "is_support": false,
            "cluster_score": 0.6
          },
          {
            "name": "ext_1.414",
            "price": 60886.3,
            "distance_pct": 1.44,
            "is_support": false,
            "cluster_score": 0.6
          },
          {
            "name": "ext_1.618",
            "price": 61055.31,
            "distance_pct": 1.73,
            "is_support": false,
            "cluster_score": 0.6
          },
          {
            "name": "ext_2.0",
            "price": 61371.8,
            "distance_pct": 2.25,
            "is_support": false,
            "cluster_score": 0.6
          }
        ],
        "confluence_quality": 1.0,
        "fib_reaction_state": "testing",
        "reaction_probability": 0.65
      },
      "raw_llm_response": "{\n  \"signal\": \"bullish\",\n  \"confidence\": 0.62,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.65,\n  \"setup_signals\": [\n    \"가격이 스윙 EQ ret_0.5 $60,129.05 아래에 위치해 단기 할인 구간에서 반등 셋업 형성\",\n    \"현재가 $60,019.90이 골든비율 ret_0.618 $60,031.29를 0.020% 거리로 테스트 중\",\n    \"$60,015.57 부근에 ret_0.786, ret_0.236, ret_0.618, ret_0.5가 겹친 4중 피보나치 컨플루언스 존 형성\",\n    \"하단 방어 기준 ret_0.786 $59,892.10이 가까워 손익비가 명확한 반등 후보 구간\",\n    \"fib_reaction_state가 testing이며 반응 확률이 0.65로 측정됨\"\n  ],\n  \"reasoning\": \"현재 BTC/USDT는 상승 스윙 $59,715 → $60,543 이후 되돌림 구간에 있으며, 현재가 $60,019.90은 핵심 골든비율 ret_0.618 $60,031.29 바로 아래에서 테스트 중이다. $60,015.57 부근은 4개 피보나치 레벨이 중첩된 고품질 컨플루언스 존이며 confluence_quality가 1.000으로 매우 높다. 다만 $60,031.29, $60,129.05, $60,226.81이 모두 상방 저항으로 남아 있어, 구조적으로는 아직 명확한 BOS나 상방 수용이 확인되지 않았으므로 structure_bias는 neutral이다. 셋업 관점에서는 가격이 EQ $60,129.05 아래 할인 구간에 있고 골든비율 반응 구간에 위치하므로 단기 반등 setup_bias는 bullish로 판단한다.\",\n  \"key_levels\": {\n    \"support\": [\n      59892.1,\n      59715\n    ],\n    \"resistance\": [\n      60031.29,\n      60129.05,\n      60226.81,\n      60543.3,\n      60768.65,\n      61055.31\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$59,892.10\",\n  \"risk_scenario\": \"$60,031.29 골든비율 회복에 실패하고 $59,892.10 ret_0.786 지지를 1시간봉 기준으로 하향 이탈하면 반등 셋업은 무효화되며, 스윙 저점 $59,715 재테스트 또는 7일 저점 $58,030 방향으로 하락 압력이 확대될 수 있다.\",\n  \"data_quality\": \"high\"\n}"
    },
    "derivatives": {
      "agent_id": "derivatives",
      "display_name": "Derivatives Trader",
      "signal": "bearish",
      "confidence": 0.62,
      "structure_bias": "bearish",
      "setup_bias": "bearish",
      "setup_score": 0.72,
      "setup_signals": [
        "현재가 $60,019.90가 EMA120 $60,594.98 및 EMA240 $61,665.14 아래에 있어 상위 구조는 아직 약세",
        "롱 계정 비율 0.699, 숏 계정 비율 0.301로 롱 쏠림이 극단적이며 account_long_crowding=1.000",
        "24시간 OI가 +1.1420% 증가했는데 CVD는 -3277.7820 감소하여 신규 포지션 유입 대비 매수 체결 참여가 약함",
        "가격은 EMA20 $59,754.16 위로 단기 반등했지만 CVD divergence 0.150으로 반등 신뢰도가 낮음",
        "상방 $60,200 / $60,600 / $60,800에 근접 청산 유동성이 있어 단기 스윕 후 거절될 경우 하방 $59,000 및 $58,400 유동성으로 회귀할 가능성",
        "가장 강한 하방 청산 레벨이 $58,400이며, 7일 저점 $58,030과 가까워 하방 자석 역할 가능"
      ],
      "reasoning": "구조적으로 BTC는 현재 $60,019.90에서 EMA20 $59,754.16 위에 있으나 EMA120 $60,594.98과 EMA240 $61,665.14 아래에 머물러 있어 확정 구조는 약세로 본다. 파생 포지셔닝은 롱 계정 비율이 0.699까지 상승하고 숏은 0.301로 하락해 롱 crowded 상태이며, OI가 24시간 +1.1420% 증가한 상황에서 CVD가 -3277.7820 감소해 신규 롱 유입의 질이 좋지 않다. 단기적으로 $60,200, $60,600, $60,800 상방 청산 유동성을 먼저 스윕할 수 있으나, $60,800 위 안착에 실패하면 $59,000, $58,400, $58,030 순으로 하방 유동성 회수가 우세하다. 특히 strongest_liq_level이 $58,400이고 fragility_score가 0.611로 높아, 롱 포지션이 무너지면 4~8시간 내 변동성 확대가 나올 수 있다.",
      "key_levels": {
        "support": [
          59000,
          58400,
          58030,
          57300
        ],
        "resistance": [
          60200,
          60594.98,
          60600,
          60800,
          61665.14
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$60,800 상방 유동성 구간을 돌파한 뒤 1시간봉 종가가 $60,800 위에서 안착하면 약세 셋업은 무효화",
      "risk_scenario": "$60,800을 강하게 돌파하고 EMA120 $60,594.98 위에서 수용되면 숏 커버링이 발생하며 EMA240 $61,665.14까지 빠르게 확장될 수 있다. 이 경우 롱 쏠림이 단기적으로는 오히려 모멘텀 연료가 되어 $60,200~$60,800 청산 클러스터 흡수 후 추가 상승 시나리오로 전환된다.",
      "data_quality": "medium",
      "metrics": {
        "cvd_divergence": 0.15,
        "cvd_change": -3277.782,
        "oi_trend": 0.614,
        "oi_change_pct_24h": 1.142,
        "oi_latest": 104244.971,
        "funding_pressure": 0.47,
        "funding_avg": 2.966e-05,
        "funding_change_24h": 1.757e-05,
        "long_account_ratio": 0.68,
        "short_account_ratio": 0.32,
        "long_account_latest": 0.699,
        "short_account_latest": 0.301,
        "long_account_change_24h": 0.0275,
        "short_account_change_24h": -0.0275,
        "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.0492,
        "basis_change_lookback": -0.0078,
        "aggregate_score": 0.344,
        "bull_signals": 1,
        "bear_signals": 2,
        "liq_below": [
          [
            59000,
            5459.136504
          ],
          [
            58400,
            6958.453060749999
          ],
          [
            57300,
            5762.014767000001
          ]
        ],
        "liq_above": [
          [
            60200,
            5182.158288
          ],
          [
            60600,
            4931.2536612
          ],
          [
            60800,
            5112.633213599999
          ]
        ],
        "strongest_liq_level": 58400,
        "fragility_score": 0.611,
        "positioning_extreme": "balanced"
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.62,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.72,\n  \"setup_signals\": [\n    \"현재가 $60,019.90가 EMA120 $60,594.98 및 EMA240 $61,665.14 아래에 있어 상위 구조는 아직 약세\",\n    \"롱 계정 비율 0.699, 숏 계정 비율 0.301로 롱 쏠림이 극단적이며 account_long_crowding=1.000\",\n    \"24시간 OI가 +1.1420% 증가했는데 CVD는 -3277.7820 감소하여 신규 포지션 유입 대비 매수 체결 참여가 약함\",\n    \"가격은 EMA20 $59,754.16 위로 단기 반등했지만 CVD divergence 0.150으로 반등 신뢰도가 낮음\",\n    \"상방 $60,200 / $60,600 / $60,800에 근접 청산 유동성이 있어 단기 스윕 후 거절될 경우 하방 $59,000 및 $58,400 유동성으로 회귀할 가능성\",\n    \"가장 강한 하방 청산 레벨이 $58,400이며, 7일 저점 $58,030과 가까워 하방 자석 역할 가능\"\n  ],\n  \"reasoning\": \"구조적으로 BTC는 현재 $60,019.90에서 EMA20 $59,754.16 위에 있으나 EMA120 $60,594.98과 EMA240 $61,665.14 아래에 머물러 있어 확정 구조는 약세로 본다. 파생 포지셔닝은 롱 계정 비율이 0.699까지 상승하고 숏은 0.301로 하락해 롱 crowded 상태이며, OI가 24시간 +1.1420% 증가한 상황에서 CVD가 -3277.7820 감소해 신규 롱 유입의 질이 좋지 않다. 단기적으로 $60,200, $60,600, $60,800 상방 청산 유동성을 먼저 스윕할 수 있으나, $60,800 위 안착에 실패하면 $59,000, $58,400, $58,030 순으로 하방 유동성 회수가 우세하다. 특히 strongest_liq_level이 $58,400이고 fragility_score가 0.611로 높아, 롱 포지션이 무너지면 4~8시간 내 변동성 확대가 나올 수 있다.\",\n  \"key_levels\": {\n    \"support\": [\n      59000,\n      58400,\n      58030,\n      57300\n    ],\n    \"resistance\": [\n      60200,\n      60594.98,\n      60600,\n      60800,\n      61665.14\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$60,800 상방 유동성 구간을 돌파한 뒤 1시간봉 종가가 $60,800 위에서 안착하면 약세 셋업은 무효화\",\n  \"risk_scenario\": \"$60,800을 강하게 돌파하고 EMA120 $60,594.98 위에서 수용되면 숏 커버링이 발생하며 EMA240 $61,665.14까지 빠르게 확장될 수 있다. 이 경우 롱 쏠림이 단기적으로는 오히려 모멘텀 연료가 되어 $60,200~$60,800 청산 클러스터 흡수 후 추가 상승 시나리오로 전환된다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "ict": {
      "agent_id": "ict",
      "display_name": "ICT Trader",
      "signal": "bearish",
      "confidence": 0.68,
      "structure_bias": "bullish",
      "setup_bias": "bearish",
      "setup_score": 0.843,
      "setup_signals": [
        "현재가 $60,019.90는 EQ $59,887.35 위에 있어 단기 프리미엄 영역에서 거래 중",
        "이전 일 저점 $59,714.80이 이미 하향 이탈되어 약세 유동성 이벤트가 발생",
        "상단 $62,272.10-$63,209.60에 후보 bearish OB가 대기 중이며, $63,220.00 bearish CHoCH 레벨과 근접",
        "가격은 EMA120 $60,594.98 및 EMA240 $61,665.14 아래에 있어 중기 공급 우위",
        "최근 구조 이벤트에 bearish CHoCH $63,220.00, bearish BOS $61,870.00, bearish BOS $59,060.00이 포함되어 상위 압력이 남아 있음"
      ],
      "reasoning": "확정 구조만 보면 최근 마지막 이벤트가 $60,734.00 상향 BOS이므로 단기 structure_bias는 bullish로 읽히지만, 현재가는 해당 BOS 레벨 아래인 $60,019.90에 머물러 구조적 수용은 약합니다. 실행 관점의 setup_bias는 bearish이며, 가격이 EQ $59,887.35 위 프리미엄에 있고 EMA120 $60,594.98 및 EMA240 $61,665.14 아래에서 거래되어 반등 매수보다는 프리미엄 매도 조건이 우세합니다. 상단에는 $62,272.10-$63,209.60 후보 bearish OB가 있으며, $63,220.00 bearish CHoCH 레벨과 겹쳐 기관 매도 방어 구간으로 볼 수 있습니다. 하방으로는 이전 일 저점 $59,714.80 재이탈 및 London 저점 $58,850.00, 7일 저점 $58,030.00이 다음 sell-side liquidity 목표입니다.",
      "key_levels": {
        "support": [
          59887.35,
          59714.8,
          58850.0,
          58030.0
        ],
        "resistance": [
          60219.4,
          60734.0,
          60924.7,
          62272.1,
          63209.6,
          63220.0
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$63,220.00",
      "risk_scenario": "반대 시나리오는 가격이 $60,734.00 상향 BOS 레벨을 회복하고, 이후 $60,924.70 이전 일 고점까지 돌파하며 상단 bearish OB $62,272.10-$63,209.60 안으로 진입하는 경우입니다. 특히 $63,220.00 bearish CHoCH 레벨을 명확히 상향 수용하면 현재 bearish setup은 무효화되고, $64,568.00 및 7일 고점 $65,597.20 쪽 buy-side liquidity 사냥이 열릴 수 있습니다.",
      "data_quality": "medium",
      "metrics": {
        "order_blocks_total": 1,
        "confirmed_bullish_ob": 0,
        "confirmed_bearish_ob": 0,
        "candidate_bullish_ob": 0,
        "candidate_bearish_ob": 1,
        "active_bullish_ob": 0,
        "active_bearish_ob": 0,
        "nearest_bull_ob_range": null,
        "nearest_bear_ob_range": {
          "bottom": 62272.1,
          "top": 63209.6,
          "quality": "candidate",
          "score": 0.548
        },
        "active_bullish_ob_list": [],
        "active_bearish_ob_list": [],
        "ob_mitigated_count": 1,
        "unfilled_bull_fvg_count": 0,
        "unfilled_bear_fvg_count": 0,
        "bull_fvg_ranges": [],
        "bear_fvg_ranges": [],
        "fvg_open_count": 0,
        "fvg_mitigated_count": 51,
        "fvg_open_zones": [],
        "bos_choch_events": [
          "BOS_bullish",
          "CHoCH_bearish",
          "BOS_bearish",
          "BOS_bearish",
          "BOS_bullish"
        ],
        "bos_choch_levels": [
          {
            "type": "BOS_bullish",
            "level": 64568.0
          },
          {
            "type": "CHoCH_bearish",
            "level": 63220.0
          },
          {
            "type": "BOS_bearish",
            "level": 61870.0
          },
          {
            "type": "BOS_bearish",
            "level": 59060.0
          },
          {
            "type": "BOS_bullish",
            "level": 60734.0
          }
        ],
        "bos_sequence": [
          "BOS_bullish",
          "CHoCH_bearish",
          "BOS_bearish",
          "BOS_bearish",
          "BOS_bullish"
        ],
        "consecutive_bull_bos": 1,
        "consecutive_bear_bos": 0,
        "recent_liq_sweeps": [],
        "recent_sweep_levels": [],
        "liquidity_resting": [],
        "current_zone": "premium",
        "eq_level": 59887.35,
        "range_high": 60924.7,
        "range_low": 58850.0,
        "bull_score": 5.0,
        "bear_score": 8.0,
        "setup_bias": "bearish",
        "setup_score": 0.843,
        "setup_signals": [
          "bearish CHoCH below $63,220.00",
          "bearish BOS below $61,870.00",
          "bearish BOS below $59,060.00",
          "broken previous day low $59,714.80"
        ],
        "retracement_direction": "bullish",
        "current_retracement_pct": 204.4,
        "deepest_retracement_pct": 204.4,
        "previous_day_high": 60924.7,
        "previous_day_low": 59714.8,
        "broken_prev_high": false,
        "broken_prev_low": true,
        "sessions": {
          "London": {
            "active": true,
            "high": 60219.4,
            "low": 58850.0
          },
          "New York": {
            "active": false,
            "high": null,
            "low": null
          },
          "Asian kill zone": {
            "active": false,
            "high": null,
            "low": null
          }
        }
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.68,\n  \"structure_bias\": \"bullish\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.843,\n  \"setup_signals\": [\n    \"현재가 $60,019.90는 EQ $59,887.35 위에 있어 단기 프리미엄 영역에서 거래 중\",\n    \"이전 일 저점 $59,714.80이 이미 하향 이탈되어 약세 유동성 이벤트가 발생\",\n    \"상단 $62,272.10-$63,209.60에 후보 bearish OB가 대기 중이며, $63,220.00 bearish CHoCH 레벨과 근접\",\n    \"가격은 EMA120 $60,594.98 및 EMA240 $61,665.14 아래에 있어 중기 공급 우위\",\n    \"최근 구조 이벤트에 bearish CHoCH $63,220.00, bearish BOS $61,870.00, bearish BOS $59,060.00이 포함되어 상위 압력이 남아 있음\"\n  ],\n  \"reasoning\": \"확정 구조만 보면 최근 마지막 이벤트가 $60,734.00 상향 BOS이므로 단기 structure_bias는 bullish로 읽히지만, 현재가는 해당 BOS 레벨 아래인 $60,019.90에 머물러 구조적 수용은 약합니다. 실행 관점의 setup_bias는 bearish이며, 가격이 EQ $59,887.35 위 프리미엄에 있고 EMA120 $60,594.98 및 EMA240 $61,665.14 아래에서 거래되어 반등 매수보다는 프리미엄 매도 조건이 우세합니다. 상단에는 $62,272.10-$63,209.60 후보 bearish OB가 있으며, $63,220.00 bearish CHoCH 레벨과 겹쳐 기관 매도 방어 구간으로 볼 수 있습니다. 하방으로는 이전 일 저점 $59,714.80 재이탈 및 London 저점 $58,850.00, 7일 저점 $58,030.00이 다음 sell-side liquidity 목표입니다.\",\n  \"key_levels\": {\n    \"support\": [\n      59887.35,\n      59714.8,\n      58850.0,\n      58030.0\n    ],\n    \"resistance\": [\n      60219.4,\n      60734.0,\n      60924.7,\n      62272.1,\n      63209.6,\n      63220.0\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$63,220.00\",\n  \"risk_scenario\": \"반대 시나리오는 가격이 $60,734.00 상향 BOS 레벨을 회복하고, 이후 $60,924.70 이전 일 고점까지 돌파하며 상단 bearish OB $62,272.10-$63,209.60 안으로 진입하는 경우입니다. 특히 $63,220.00 bearish CHoCH 레벨을 명확히 상향 수용하면 현재 bearish setup은 무효화되고, $64,568.00 및 7일 고점 $65,597.20 쪽 buy-side liquidity 사냥이 열릴 수 있습니다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "harmonic": {
      "agent_id": "harmonic",
      "display_name": "Harmonic Specialist",
      "signal": "bullish",
      "confidence": 0.54,
      "structure_bias": "neutral",
      "setup_bias": "bullish",
      "setup_score": 0.62,
      "setup_signals": [
        "현재가 $60,019.90가 고품질 strict bullish Bat 활성 PRZ $59,615.47-$60,100.20 내부에 위치",
        "bullish Bat D 후보 $59,857.83 근처에서 XAD·BC_EXT·ABCD 3중 Fib confluence 형성, pattern_score 0.961",
        "고품질 strict bullish Butterfly 활성 PRZ $59,743.46-$60,100.24와 Bat PRZ가 중첩되어 $59,743-$60,100 구간 반등 후보 강화",
        "두 주요 council PRZ 모두 bullish 방향이며 directional_scores bullish 0.396, bearish 0.000으로 harmonic setup 우위",
        "단, confirmed_reaction_prz_count 0 및 활성 PRZ들의 confirmed_reaction=false이므로 아직 MSS/CHoCH 또는 sweep→reclaim 확인 전"
      ],
      "reasoning": "구조 관점에서는 1h 기준 확정 BOS/CHoCH 또는 명확한 구조 전환 데이터가 없으므로 structure_bias는 neutral로 둔다. 다만 실행 setup 관점에서는 현재가 $60,019.90가 strict high bullish Bat PRZ $59,615.47-$60,100.20와 strict high bullish Butterfly PRZ $59,743.46-$60,100.24 안에 있어 반등 후보 구간에 진입해 있다. 특히 Bat는 pattern_score 0.961, ratio_score 1.0, PRZ confluence_count 3(XAD·BC_EXT·ABCD)로 가장 우수하지만, harmonic_vote_state가 pre_confirmation_reversal_candidate이고 confirmed_reaction=false라 단독으로 메인 경로를 뒤집을 수는 없다. 반등 확인 시 Bat TP ladder는 $60,125.22 → $60,290.41 → $60,557.80이며, 반대로 $59,615.47 하단과 X 저점 $59,530.70을 잃으면 bullish PRZ 방어 실패로 해석한다.",
      "key_levels": {
        "support": [
          60100.2,
          59921.85,
          59857.83,
          59743.46,
          59615.47,
          59530.7,
          59180.95
        ],
        "resistance": [
          60125.22,
          60290.41,
          60314.87,
          60557.8,
          60717.48,
          60833.81,
          61046.73
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$59,530.70 1h 종가 하회",
      "risk_scenario": "가격이 $60,100.20 위로 강하게 reclaim하지 못하고 $59,615.47 PRZ 하단을 이탈한 뒤 $59,530.70 아래에서 1h 종가를 만들면 bullish Bat/Butterfly 반등 setup은 실패한다. 이 경우 하단의 medium bullish Crab PRZ $58,842.54-$59,519.36 및 Butterfly watch PRZ $58,435.31-$59,231.17까지 유동성 탐색이 열릴 수 있다. 반대로 $60,359.54-$60,717.48 구간은 bearish Gartley PRZ와 겹치는 저항대라, 반등이 나오더라도 그곳에서 재차 매도 반응이 발생할 위험이 있다.",
      "data_quality": "high",
      "metrics": {
        "patterns_found": 114,
        "completed_patterns_found": 33,
        "forming_d_prz_found": 81,
        "swing_orders_scanned": [
          3,
          5,
          8
        ],
        "swing_search_window": 34,
        "multiscale_swings_scanned": 67,
        "swing_highs_scanned": 35,
        "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": 7,
          "medium": 50,
          "low": 57
        },
        "prz_status_counts": {
          "active": 23,
          "nearby": 19,
          "watch": 26,
          "far": 46,
          "forming": 43
        },
        "high_confluence_prz_count": 33,
        "strict_patterns_found": 54,
        "candidate_patterns_found": 60,
        "active_patterns_at_prz": 23,
        "nearby_patterns": 19,
        "all_patterns": [
          "bat",
          "bat",
          "shark",
          "shark",
          "butterfly",
          "crab",
          "shark",
          "bat",
          "gartley",
          "gartley",
          "bat",
          "bat",
          "butterfly",
          "butterfly",
          "butterfly",
          "gartley",
          "shark",
          "crab",
          "bat",
          "butterfly",
          "bat",
          "crab",
          "butterfly",
          "butterfly",
          "shark",
          "bat",
          "gartley",
          "bat",
          "gartley",
          "shark",
          "butterfly",
          "gartley",
          "shark",
          "crab",
          "shark",
          "crab",
          "crab",
          "crab",
          "crab",
          "crab",
          "crab",
          "bat",
          "crab",
          "crab",
          "crab",
          "crab",
          "crab",
          "crab",
          "crab",
          "bat",
          "gartley",
          "bat",
          "gartley",
          "gartley",
          "butterfly",
          "shark",
          "butterfly",
          "crab",
          "bat",
          "crab",
          "bat",
          "butterfly",
          "shark",
          "crab",
          "butterfly",
          "gartley",
          "shark",
          "crab",
          "gartley",
          "gartley",
          "butterfly",
          "gartley",
          "gartley",
          "shark",
          "butterfly",
          "butterfly",
          "crab",
          "bat",
          "butterfly",
          "crab",
          "crab",
          "crab",
          "bat",
          "crab",
          "butterfly",
          "butterfly",
          "gartley",
          "crab",
          "butterfly",
          "shark",
          "butterfly",
          "butterfly",
          "crab",
          "gartley",
          "shark",
          "crab",
          "butterfly",
          "gartley",
          "shark",
          "crab",
          "bat",
          "bat",
          "bat",
          "crab",
          "crab",
          "shark",
          "gartley",
          "crab",
          "bat",
          "butterfly",
          "crab",
          "bat",
          "crab",
          "butterfly"
        ],
        "all_signals": [
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish"
        ],
        "best_pattern": "bat",
        "best_pattern_quality": "strict",
        "best_quality": "high",
        "best_pattern_score": 0.961,
        "best_completion_status": "forming",
        "nearest_pattern": "gartley",
        "nearest_prz": 59973.78,
        "price_to_prz": -0.08,
        "prz_range": [
          59560.56,
          60387.0
        ],
        "council_relevant_prz_count": 2,
        "directional_influence_prz_count": 2,
        "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.961,
            "ratio_score": 1.0,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 59857.83,
            "prz_range": [
              59615.47,
              60100.2
            ],
            "prz_width_pct": 0.81,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.27,
            "price_to_prz_pct_raw": -0.27,
            "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": 59857.83,
              "a_price": 60557.8,
              "tp1_ad_382": 60125.22,
              "tp2_ad_618": 60290.41,
              "tp3_a_or_structure_liquidity": 60557.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.3854,
              "ABC": 0.3848
            },
            "x_price": 59530.7,
            "x_idx": 242,
            "x_order": 3,
            "a_price": 60557.8,
            "a_idx": 255,
            "a_order": 5,
            "b_price": 60162.0,
            "b_idx": 259,
            "b_order": 3,
            "c_price": 60314.3,
            "c_idx": 274,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "shark",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.91,
            "ratio_score": 0.812,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 59966.71,
            "prz_range": [
              59757.23,
              60176.18
            ],
            "prz_width_pct": 0.699,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.09,
            "price_to_prz_pct_raw": -0.0886,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "shark",
              "d_price": 59966.71,
              "a_price": 60245.0,
              "tp1_ad_382": 60073.01,
              "tp2_ad_618": 60138.69,
              "tp3_a_or_structure_liquidity": 60245.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4231,
              "ABC": 1.4065
            },
            "x_price": 60648.0,
            "x_idx": 203,
            "x_order": 5,
            "a_price": 60245.0,
            "a_idx": 221,
            "a_order": 5,
            "b_price": 60074.5,
            "b_idx": 254,
            "b_order": 3,
            "c_price": 60314.3,
            "c_idx": 274,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.907,
            "ratio_score": 0.846,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 59921.85,
            "prz_range": [
              59743.46,
              60100.24
            ],
            "prz_width_pct": 0.595,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.16,
            "price_to_prz_pct_raw": -0.1634,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 59921.85,
              "a_price": 60557.8,
              "tp1_ad_382": 60164.78,
              "tp2_ad_618": 60314.87,
              "tp3_a_or_structure_liquidity": 60557.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.819,
              "ABC": 0.3848
            },
            "x_price": 60074.5,
            "x_idx": 254,
            "x_order": 3,
            "a_price": 60557.8,
            "a_idx": 255,
            "a_order": 5,
            "b_price": 60162.0,
            "b_idx": 259,
            "b_order": 3,
            "c_price": 60314.3,
            "c_idx": 274,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.878,
            "ratio_score": 0.865,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 60833.81,
            "prz_range": [
              60620.89,
              61046.73
            ],
            "prz_width_pct": 0.7,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.36,
            "price_to_prz_pct_raw": 1.3561,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 60833.81,
              "a_price": 59530.7,
              "tp1_ad_382": 60336.02,
              "tp2_ad_618": 60028.49,
              "tp3_a_or_structure_liquidity": 59530.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5953,
              "ABC": 0.7185
            },
            "x_price": 61256.0,
            "x_idx": 198,
            "x_order": 5,
            "a_price": 59530.7,
            "a_idx": 242,
            "a_order": 3,
            "b_price": 60557.8,
            "b_idx": 255,
            "b_order": 5,
            "c_price": 59819.8,
            "c_idx": 270,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.873,
            "ratio_score": 0.803,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 60538.51,
            "prz_range": [
              60359.54,
              60717.48
            ],
            "prz_width_pct": 0.591,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.86,
            "price_to_prz_pct_raw": 0.8641,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 60538.51,
              "a_price": 59530.7,
              "tp1_ad_382": 60153.53,
              "tp2_ad_618": 59915.68,
              "tp3_a_or_structure_liquidity": 59530.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6512,
              "ABC": 0.7651
            },
            "x_price": 60734.0,
            "x_idx": 231,
            "x_order": 8,
            "a_price": 59530.7,
            "a_idx": 242,
            "a_order": 3,
            "b_price": 60314.3,
            "b_idx": 274,
            "b_order": 3,
            "c_price": 59714.8,
            "c_idx": 277,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.828,
            "ratio_score": 0.777,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 60543.3,
            "prz_range": [
              60359.54,
              60717.48
            ],
            "prz_width_pct": 0.591,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.86,
            "price_to_prz_pct_raw": 0.8641,
            "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",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 1.302,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 60538.51,
              "a_price": 59530.7,
              "tp1_ad_382": 60153.53,
              "tp2_ad_618": 59915.68,
              "tp3_a_or_structure_liquidity": 59530.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6512,
              "ABC": 0.7651,
              "BCD": 1.382,
              "XAD": 0.8415
            },
            "x_price": 60734.0,
            "x_idx": 231,
            "x_order": 8,
            "a_price": 59530.7,
            "a_idx": 242,
            "a_order": 3,
            "b_price": 60314.3,
            "b_idx": 274,
            "b_order": 3,
            "c_price": 59714.8,
            "c_idx": 277,
            "c_order": 8,
            "d_idx": 280
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.943,
            "ratio_score": 1.0,
            "prz_score": 0.93,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 59567.32,
            "prz_range": [
              59218.67,
              59915.97
            ],
            "prz_width_pct": 1.171,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.75,
            "price_to_prz_pct_raw": -0.7541,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 59567.32,
              "a_price": 60734.0,
              "tp1_ad_382": 60012.99,
              "tp2_ad_618": 60288.33,
              "tp3_a_or_structure_liquidity": 60734.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.394,
              "ABC": 0.7108
            },
            "x_price": 59060.0,
            "x_idx": 193,
            "x_order": 8,
            "a_price": 60734.0,
            "a_idx": 231,
            "a_order": 8,
            "b_price": 60074.5,
            "b_idx": 254,
            "b_order": 3,
            "c_price": 60543.3,
            "c_idx": 280,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "shark",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.924,
            "ratio_score": 1.0,
            "prz_score": 0.93,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 60531.07,
            "prz_range": [
              60176.61,
              60885.53
            ],
            "prz_width_pct": 1.171,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.85,
            "price_to_prz_pct_raw": 0.8517,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "shark",
              "d_price": 60531.07,
              "a_price": 59819.8,
              "tp1_ad_382": 60259.37,
              "tp2_ad_618": 60091.51,
              "tp3_a_or_structure_liquidity": 59819.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5409,
              "ABC": 1.2123
            },
            "x_price": 60734.0,
            "x_idx": 231,
            "x_order": 8,
            "a_price": 59819.8,
            "a_idx": 270,
            "a_order": 5,
            "b_price": 60314.3,
            "b_idx": 274,
            "b_order": 3,
            "c_price": 59714.8,
            "c_idx": 277,
            "c_order": 8,
            "d_idx": null
          }
        ],
        "council_relevant_prz": [
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.961,
            "ratio_score": 1.0,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 59857.83,
            "prz_range": [
              59615.47,
              60100.2
            ],
            "prz_width_pct": 0.81,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.27,
            "price_to_prz_pct_raw": -0.27,
            "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": 59857.83,
              "a_price": 60557.8,
              "tp1_ad_382": 60125.22,
              "tp2_ad_618": 60290.41,
              "tp3_a_or_structure_liquidity": 60557.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.3854,
              "ABC": 0.3848
            },
            "x_price": 59530.7,
            "x_idx": 242,
            "x_order": 3,
            "a_price": 60557.8,
            "a_idx": 255,
            "a_order": 5,
            "b_price": 60162.0,
            "b_idx": 259,
            "b_order": 3,
            "c_price": 60314.3,
            "c_idx": 274,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.907,
            "ratio_score": 0.846,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 59921.85,
            "prz_range": [
              59743.46,
              60100.24
            ],
            "prz_width_pct": 0.595,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.16,
            "price_to_prz_pct_raw": -0.1634,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 59921.85,
              "a_price": 60557.8,
              "tp1_ad_382": 60164.78,
              "tp2_ad_618": 60314.87,
              "tp3_a_or_structure_liquidity": 60557.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.819,
              "ABC": 0.3848
            },
            "x_price": 60074.5,
            "x_idx": 254,
            "x_order": 3,
            "a_price": 60557.8,
            "a_idx": 255,
            "a_order": 5,
            "b_price": 60162.0,
            "b_idx": 259,
            "b_order": 3,
            "c_price": 60314.3,
            "c_idx": 274,
            "c_order": 3,
            "d_idx": null
          }
        ],
        "report_detail_candidates": [
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.961,
            "ratio_score": 1.0,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 59857.83,
            "prz_range": [
              59615.47,
              60100.2
            ],
            "prz_width_pct": 0.81,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.27,
            "price_to_prz_pct_raw": -0.27,
            "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": 59857.83,
              "a_price": 60557.8,
              "tp1_ad_382": 60125.22,
              "tp2_ad_618": 60290.41,
              "tp3_a_or_structure_liquidity": 60557.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.3854,
              "ABC": 0.3848
            },
            "x_price": 59530.7,
            "x_idx": 242,
            "x_order": 3,
            "a_price": 60557.8,
            "a_idx": 255,
            "a_order": 5,
            "b_price": 60162.0,
            "b_idx": 259,
            "b_order": 3,
            "c_price": 60314.3,
            "c_idx": 274,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "shark",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.91,
            "ratio_score": 0.812,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 59966.71,
            "prz_range": [
              59757.23,
              60176.18
            ],
            "prz_width_pct": 0.699,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.09,
            "price_to_prz_pct_raw": -0.0886,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "shark",
              "d_price": 59966.71,
              "a_price": 60245.0,
              "tp1_ad_382": 60073.01,
              "tp2_ad_618": 60138.69,
              "tp3_a_or_structure_liquidity": 60245.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4231,
              "ABC": 1.4065
            },
            "x_price": 60648.0,
            "x_idx": 203,
            "x_order": 5,
            "a_price": 60245.0,
            "a_idx": 221,
            "a_order": 5,
            "b_price": 60074.5,
            "b_idx": 254,
            "b_order": 3,
            "c_price": 60314.3,
            "c_idx": 274,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.907,
            "ratio_score": 0.846,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 59921.85,
            "prz_range": [
              59743.46,
              60100.24
            ],
            "prz_width_pct": 0.595,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.16,
            "price_to_prz_pct_raw": -0.1634,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 59921.85,
              "a_price": 60557.8,
              "tp1_ad_382": 60164.78,
              "tp2_ad_618": 60314.87,
              "tp3_a_or_structure_liquidity": 60557.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.819,
              "ABC": 0.3848
            },
            "x_price": 60074.5,
            "x_idx": 254,
            "x_order": 3,
            "a_price": 60557.8,
            "a_idx": 255,
            "a_order": 5,
            "b_price": 60162.0,
            "b_idx": 259,
            "b_order": 3,
            "c_price": 60314.3,
            "c_idx": 274,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.878,
            "ratio_score": 0.865,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 60833.81,
            "prz_range": [
              60620.89,
              61046.73
            ],
            "prz_width_pct": 0.7,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.36,
            "price_to_prz_pct_raw": 1.3561,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 60833.81,
              "a_price": 59530.7,
              "tp1_ad_382": 60336.02,
              "tp2_ad_618": 60028.49,
              "tp3_a_or_structure_liquidity": 59530.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5953,
              "ABC": 0.7185
            },
            "x_price": 61256.0,
            "x_idx": 198,
            "x_order": 5,
            "a_price": 59530.7,
            "a_idx": 242,
            "a_order": 3,
            "b_price": 60557.8,
            "b_idx": 255,
            "b_order": 5,
            "c_price": 59819.8,
            "c_idx": 270,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.873,
            "ratio_score": 0.803,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 60538.51,
            "prz_range": [
              60359.54,
              60717.48
            ],
            "prz_width_pct": 0.591,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.86,
            "price_to_prz_pct_raw": 0.8641,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 60538.51,
              "a_price": 59530.7,
              "tp1_ad_382": 60153.53,
              "tp2_ad_618": 59915.68,
              "tp3_a_or_structure_liquidity": 59530.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6512,
              "ABC": 0.7651
            },
            "x_price": 60734.0,
            "x_idx": 231,
            "x_order": 8,
            "a_price": 59530.7,
            "a_idx": 242,
            "a_order": 3,
            "b_price": 60314.3,
            "b_idx": 274,
            "b_order": 3,
            "c_price": 59714.8,
            "c_idx": 277,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.828,
            "ratio_score": 0.777,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 60543.3,
            "prz_range": [
              60359.54,
              60717.48
            ],
            "prz_width_pct": 0.591,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.86,
            "price_to_prz_pct_raw": 0.8641,
            "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",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 1.302,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 60538.51,
              "a_price": 59530.7,
              "tp1_ad_382": 60153.53,
              "tp2_ad_618": 59915.68,
              "tp3_a_or_structure_liquidity": 59530.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6512,
              "ABC": 0.7651,
              "BCD": 1.382,
              "XAD": 0.8415
            },
            "x_price": 60734.0,
            "x_idx": 231,
            "x_order": 8,
            "a_price": 59530.7,
            "a_idx": 242,
            "a_order": 3,
            "b_price": 60314.3,
            "b_idx": 274,
            "b_order": 3,
            "c_price": 59714.8,
            "c_idx": 277,
            "c_order": 8,
            "d_idx": 280
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.943,
            "ratio_score": 1.0,
            "prz_score": 0.93,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 59567.32,
            "prz_range": [
              59218.67,
              59915.97
            ],
            "prz_width_pct": 1.171,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.75,
            "price_to_prz_pct_raw": -0.7541,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 59567.32,
              "a_price": 60734.0,
              "tp1_ad_382": 60012.99,
              "tp2_ad_618": 60288.33,
              "tp3_a_or_structure_liquidity": 60734.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.394,
              "ABC": 0.7108
            },
            "x_price": 59060.0,
            "x_idx": 193,
            "x_order": 8,
            "a_price": 60734.0,
            "a_idx": 231,
            "a_order": 8,
            "b_price": 60074.5,
            "b_idx": 254,
            "b_order": 3,
            "c_price": 60543.3,
            "c_idx": 280,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "shark",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.924,
            "ratio_score": 1.0,
            "prz_score": 0.93,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 60531.07,
            "prz_range": [
              60176.61,
              60885.53
            ],
            "prz_width_pct": 1.171,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.85,
            "price_to_prz_pct_raw": 0.8517,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "shark",
              "d_price": 60531.07,
              "a_price": 59819.8,
              "tp1_ad_382": 60259.37,
              "tp2_ad_618": 60091.51,
              "tp3_a_or_structure_liquidity": 59819.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5409,
              "ABC": 1.2123
            },
            "x_price": 60734.0,
            "x_idx": 231,
            "x_order": 8,
            "a_price": 59819.8,
            "a_idx": 270,
            "a_order": 5,
            "b_price": 60314.3,
            "b_idx": 274,
            "b_order": 3,
            "c_price": 59714.8,
            "c_idx": 277,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "crab",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.9,
            "ratio_score": 1.0,
            "prz_score": 0.937,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 59180.95,
            "prz_range": [
              58842.54,
              59519.36
            ],
            "prz_width_pct": 1.144,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.4,
            "price_to_prz_pct_raw": -1.3978,
            "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": "crab",
              "d_price": 59180.95,
              "a_price": 60557.8,
              "tp1_ad_382": 59706.91,
              "tp2_ad_618": 60031.84,
              "tp3_a_or_structure_liquidity": 60557.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.3854,
              "ABC": 0.7044
            },
            "x_price": 59530.7,
            "x_idx": 242,
            "x_order": 3,
            "a_price": 60557.8,
            "a_idx": 255,
            "a_order": 5,
            "b_price": 60162.0,
            "b_idx": 259,
            "b_order": 3,
            "c_price": 59883.2,
            "c_idx": 294,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "shark",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.882,
            "ratio_score": 0.912,
            "prz_score": 0.893,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 59262.99,
            "prz_range": [
              58873.95,
              59652.03
            ],
            "prz_width_pct": 1.313,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.26,
            "price_to_prz_pct_raw": -1.2611,
            "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": 59262.99,
              "a_price": 60245.0,
              "tp1_ad_382": 59638.12,
              "tp2_ad_618": 59869.87,
              "tp3_a_or_structure_liquidity": 60245.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6028,
              "ABC": 1.097
            },
            "x_price": 59060.0,
            "x_idx": 193,
            "x_order": 8,
            "a_price": 60245.0,
            "a_idx": 221,
            "a_order": 5,
            "b_price": 59530.7,
            "b_idx": 242,
            "b_order": 3,
            "c_price": 60314.3,
            "c_idx": 274,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.88,
            "ratio_score": 1.0,
            "prz_score": 0.871,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 60891.35,
            "prz_range": [
              60465.52,
              61317.17
            ],
            "prz_width_pct": 1.399,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.45,
            "price_to_prz_pct_raw": 1.4519,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "bat",
              "d_price": 60891.35,
              "a_price": 59530.7,
              "tp1_ad_382": 60371.58,
              "tp2_ad_618": 60050.47,
              "tp3_a_or_structure_liquidity": 59530.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4542,
              "ABC": 0.7651
            },
            "x_price": 61256.0,
            "x_idx": 198,
            "x_order": 5,
            "a_price": 59530.7,
            "a_idx": 242,
            "a_order": 3,
            "b_price": 60314.3,
            "b_idx": 274,
            "b_order": 3,
            "c_price": 59714.8,
            "c_idx": 277,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.862,
            "ratio_score": 0.998,
            "prz_score": 0.883,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 58833.24,
            "prz_range": [
              58435.31,
              59231.17
            ],
            "prz_width_pct": 1.353,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.98,
            "price_to_prz_pct_raw": -1.9771,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 58833.24,
              "a_price": 61256.0,
              "tp1_ad_382": 59758.73,
              "tp2_ad_618": 60330.51,
              "tp3_a_or_structure_liquidity": 61256.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7857,
              "ABC": 0.808
            },
            "x_price": 59060.0,
            "x_idx": 193,
            "x_order": 8,
            "a_price": 61256.0,
            "a_idx": 198,
            "a_order": 5,
            "b_price": 59530.7,
            "b_idx": 242,
            "b_order": 3,
            "c_price": 60924.7,
            "c_idx": 263,
            "c_order": 8,
            "d_idx": null
          }
        ],
        "actionable_patterns_list": [
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.961,
            "prz_proximity": "active",
            "prz_range": [
              59615.47,
              60100.2
            ],
            "prz_reversal_direction": "up",
            "price_to_prz_pct": -0.27,
            "high_confluence_prz": true,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 59857.83,
              "a_price": 60557.8,
              "tp1_ad_382": 60125.22,
              "tp2_ad_618": 60290.41,
              "tp3_a_or_structure_liquidity": 60557.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "BAT FORMING HIGH PRZ $59,615.47-$60,100.20: expected reversal UP if price reacts in zone"
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.907,
            "prz_proximity": "active",
            "prz_range": [
              59743.46,
              60100.24
            ],
            "prz_reversal_direction": "up",
            "price_to_prz_pct": -0.16,
            "high_confluence_prz": true,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 59921.85,
              "a_price": 60557.8,
              "tp1_ad_382": 60164.78,
              "tp2_ad_618": 60314.87,
              "tp3_a_or_structure_liquidity": 60557.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "BUTTERFLY FORMING HIGH PRZ $59,743.46-$60,100.24: expected reversal UP if price reacts in zone"
          }
        ],
        "best_council_prz": {
          "pattern": "bat",
          "signal": "bullish",
          "completion_status": "forming",
          "pattern_quality": "strict",
          "quality": "high",
          "pattern_score": 0.961,
          "ratio_score": 1.0,
          "prz_score": 1.0,
          "prz_proximity": "active",
          "action_status": "active",
          "high_confluence_prz": true,
          "d_price": 59857.83,
          "prz_range": [
            59615.47,
            60100.2
          ],
          "prz_width_pct": 0.81,
          "prz_confluence_count": 3,
          "prz_fib_families": [
            "ABCD",
            "BC_EXT",
            "XAD"
          ],
          "price_to_prz_pct": -0.27,
          "price_to_prz_pct_raw": -0.27,
          "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": 59857.83,
            "a_price": 60557.8,
            "tp1_ad_382": 60125.22,
            "tp2_ad_618": 60290.41,
            "tp3_a_or_structure_liquidity": 60557.8,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          "ratios": {
            "XAB": 0.3854,
            "ABC": 0.3848
          },
          "x_price": 59530.7,
          "x_idx": 242,
          "x_order": 3,
          "a_price": 60557.8,
          "a_idx": 255,
          "a_order": 5,
          "b_price": 60162.0,
          "b_idx": 259,
          "b_order": 3,
          "c_price": 60314.3,
          "c_idx": 274,
          "c_order": 3,
          "d_idx": null
        },
        "best_tp_ladder": {
          "direction": "bullish",
          "source": "bat",
          "d_price": 59857.83,
          "a_price": 60557.8,
          "tp1_ad_382": 60125.22,
          "tp2_ad_618": 60290.41,
          "tp3_a_or_structure_liquidity": 60557.8,
          "note": "Use as strong TP ladder context; not standalone path authority."
        },
        "tp_ladder": [
          {
            "direction": "bullish",
            "source": "bat",
            "d_price": 59857.83,
            "a_price": 60557.8,
            "tp1_ad_382": 60125.22,
            "tp2_ad_618": 60290.41,
            "tp3_a_or_structure_liquidity": 60557.8,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bullish",
            "source": "butterfly",
            "d_price": 59921.85,
            "a_price": 60557.8,
            "tp1_ad_382": 60164.78,
            "tp2_ad_618": 60314.87,
            "tp3_a_or_structure_liquidity": 60557.8,
            "note": "Use as strong TP ladder context; not standalone path authority."
          }
        ],
        "validated_tp_ladder": [],
        "harmonic_governance": {
          "role": "PRZ reaction + TP ladder confluence, not standalone path engine",
          "pre_confirmation_weight_range": [
            0.25,
            0.35
          ],
          "post_confirmation_vote_weight_range": [
            0.5,
            0.6
          ],
          "standalone_path_override_allowed": false,
          "opposes_core_path_policy": "branch/reversal-risk/reaction-zone unless lower-TF structure and derivatives also confirm",
          "aligns_with_core_path_policy": "modest confidence lift plus strong TP ladder influence"
        },
        "execution_readiness": "ready",
        "directional_scores": {
          "bullish": 0.396,
          "bearish": 0
        },
        "directional_score_total": 0.396,
        "directional_dominance": 1.0
      },
      "raw_llm_response": "{\n  \"signal\": \"bullish\",\n  \"confidence\": 0.54,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.62,\n  \"setup_signals\": [\n    \"현재가 $60,019.90가 고품질 strict bullish Bat 활성 PRZ $59,615.47-$60,100.20 내부에 위치\",\n    \"bullish Bat D 후보 $59,857.83 근처에서 XAD·BC_EXT·ABCD 3중 Fib confluence 형성, pattern_score 0.961\",\n    \"고품질 strict bullish Butterfly 활성 PRZ $59,743.46-$60,100.24와 Bat PRZ가 중첩되어 $59,743-$60,100 구간 반등 후보 강화\",\n    \"두 주요 council PRZ 모두 bullish 방향이며 directional_scores bullish 0.396, bearish 0.000으로 harmonic setup 우위\",\n    \"단, confirmed_reaction_prz_count 0 및 활성 PRZ들의 confirmed_reaction=false이므로 아직 MSS/CHoCH 또는 sweep→reclaim 확인 전\"\n  ],\n  \"reasoning\": \"구조 관점에서는 1h 기준 확정 BOS/CHoCH 또는 명확한 구조 전환 데이터가 없으므로 structure_bias는 neutral로 둔다. 다만 실행 setup 관점에서는 현재가 $60,019.90가 strict high bullish Bat PRZ $59,615.47-$60,100.20와 strict high bullish Butterfly PRZ $59,743.46-$60,100.24 안에 있어 반등 후보 구간에 진입해 있다. 특히 Bat는 pattern_score 0.961, ratio_score 1.0, PRZ confluence_count 3(XAD·BC_EXT·ABCD)로 가장 우수하지만, harmonic_vote_state가 pre_confirmation_reversal_candidate이고 confirmed_reaction=false라 단독으로 메인 경로를 뒤집을 수는 없다. 반등 확인 시 Bat TP ladder는 $60,125.22 → $60,290.41 → $60,557.80이며, 반대로 $59,615.47 하단과 X 저점 $59,530.70을 잃으면 bullish PRZ 방어 실패로 해석한다.\",\n  \"key_levels\": {\n    \"support\": [\n      60100.2,\n      59921.85,\n      59857.83,\n      59743.46,\n      59615.47,\n      59530.7,\n      59180.95\n    ],\n    \"resistance\": [\n      60125.22,\n      60290.41,\n      60314.87,\n      60557.8,\n      60717.48,\n      60833.81,\n      61046.73\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$59,530.70 1h 종가 하회\",\n  \"risk_scenario\": \"가격이 $60,100.20 위로 강하게 reclaim하지 못하고 $59,615.47 PRZ 하단을 이탈한 뒤 $59,530.70 아래에서 1h 종가를 만들면 bullish Bat/Butterfly 반등 setup은 실패한다. 이 경우 하단의 medium bullish Crab PRZ $58,842.54-$59,519.36 및 Butterfly watch PRZ $58,435.31-$59,231.17까지 유동성 탐색이 열릴 수 있다. 반대로 $60,359.54-$60,717.48 구간은 bearish Gartley PRZ와 겹치는 저항대라, 반등이 나오더라도 그곳에서 재차 매도 반응이 발생할 위험이 있다.\",\n  \"data_quality\": \"high\"\n}"
    },
    "wyckoff": {
      "agent_id": "wyckoff",
      "display_name": "Wyckoff Expert",
      "signal": "bearish",
      "confidence": 0.78,
      "structure_bias": "bearish",
      "setup_bias": "bearish",
      "setup_score": 0.68,
      "setup_signals": [
        "현재가 $60,019.90는 활성 재분배 범위 EQ 약 $59,293.90 위에 있어 단기 프리미엄 구간에 위치",
        "상단 공급대 $60,543.30~$60,557.80에서 UTAD/UT 실패 이후 LPSY $59,883.20 형성",
        "현재가가 LPSY $59,883.20 부근을 재시험 중이나 AR/UTAD 상단 $60,466.90~$60,557.80을 회복하지 못함",
        "EMA120 $60,594.98 및 EMA240 $61,665.14 아래에 머물러 상위 공급 우위 유지",
        "하방 유동성 목표가 ST 저점 $58,388.00 및 Phase E 저점 $58,030.00에 남아 있음"
      ],
      "reasoning": "1시간 구조는 regime=DIS, regime_state=confirmed_dis, dis_score=100.0으로 확인된 분배/약세 구조이며, 1차 구조는 BC $66,092.50 → AR $64,525.00 → UT $65,597.20 → LPSY $64,247.20 → SOW $61,870.00 → Phase E $58,030.00로 진행되었습니다. 현재 활성 구조는 $58,030.00 저점 이후의 재분배 후보이며, AR $60,466.90, UT $60,557.80, UTAD $60,543.30 이후 LPSY $59,883.20가 확인되어 상단 공급이 여전히 우세합니다. 현재가 $60,019.90는 LPSY 위에 일시적으로 올라와 있으나, $60,466.90~$60,557.80 상단을 회복하지 못하면 이는 강세 전환이 아니라 LPSY/공급 재시험으로 해석됩니다. 따라서 구조적 편향은 명확히 bearish이며, 단기 경로도 $60.5k 부근 거부 시 $58,388.00 및 $58,030.00 재시험 가능성이 더 높습니다.",
      "key_levels": {
        "support": [
          59883.2,
          59530.7,
          58388.0,
          58030.0
        ],
        "resistance": [
          60466.9,
          60543.3,
          60557.8,
          61870.0,
          64247.2,
          64525.0
        ]
      },
      "time_horizon": "short to medium term",
      "invalidation_level": "60557.80",
      "risk_scenario": "$60,557.80 위로 명확히 회복하고 수용되면 활성 재분배의 UT/UTAD 공급 실패 해석이 약화되며, 단기적으로 $61,870.00 SOW 붕괴 구간까지 되돌림이 열릴 수 있습니다. 다만 더 큰 분배 구조의 무효화는 $64,525.00~$66,092.50 메인 분배 범위로 재진입하고 상단 수용이 확인되어야 합니다.",
      "data_quality": "high",
      "metrics": {
        "acc_score": 80.6,
        "dis_score": 100.0,
        "regime": "DIS",
        "regime_state": "confirmed_dis",
        "structure_bias": "bearish",
        "phase_context": "confirmed_dis / distribution / Phase E",
        "phases_detected": [
          "BC",
          "AR",
          "ST",
          "SOW_IN_PHASE_B",
          "UT",
          "LPSY",
          "SOW",
          "Phase E"
        ],
        "last_phase": "Phase E",
        "phase_candidates": [
          {
            "label": "BC",
            "side": "high",
            "idx": 10,
            "price": 66092.5,
            "color": "#ffd166"
          },
          {
            "label": "AR",
            "side": "low",
            "idx": 19,
            "price": 64525.0,
            "color": "#06d6a0"
          },
          {
            "label": "ST",
            "side": "high",
            "idx": 69,
            "price": 63410.3,
            "color": "#118ab2"
          },
          {
            "label": "SOW_IN_PHASE_B",
            "side": "low",
            "idx": 94,
            "price": 63136.2,
            "color": "#ef476f"
          },
          {
            "label": "UT",
            "side": "high",
            "idx": 142,
            "price": 65597.2,
            "color": "#f9844a"
          },
          {
            "label": "LPSY",
            "side": "high",
            "idx": 154,
            "price": 64247.2,
            "color": "#8338ec"
          },
          {
            "label": "SOW",
            "side": "low",
            "idx": 160,
            "price": 61870.0,
            "color": "#ef476f"
          },
          {
            "label": "Phase E",
            "side": "low",
            "idx": 213,
            "price": 58030.0,
            "color": "#7209b7"
          }
        ],
        "phase_structures": [
          {
            "structure_id": "1h_cycle_1",
            "sequence": 1,
            "timeframe": "1h",
            "regime": "distribution",
            "role": "prior_completed_structure",
            "is_active": false,
            "is_completed": true,
            "is_confirmed": true,
            "structure_bias": "bearish",
            "phase_context": "distribution",
            "start_idx": 10,
            "end_idx": 213,
            "phase_count": 8,
            "phases": [
              {
                "label": "BC",
                "side": "high",
                "idx": 10,
                "price": 66092.5,
                "color": "#ffd166",
                "dt": "2026-06-17 11:00:00+09:00"
              },
              {
                "label": "AR",
                "side": "low",
                "idx": 19,
                "price": 64525.0,
                "color": "#06d6a0",
                "dt": "2026-06-17 20:00:00+09:00"
              },
              {
                "label": "ST",
                "side": "high",
                "idx": 69,
                "price": 63410.3,
                "color": "#118ab2",
                "dt": "2026-06-19 22:00:00+09:00"
              },
              {
                "label": "SOW_IN_PHASE_B",
                "side": "low",
                "idx": 94,
                "price": 63136.2,
                "color": "#ef476f",
                "dt": "2026-06-20 23:00:00+09:00"
              },
              {
                "label": "UT",
                "side": "high",
                "idx": 142,
                "price": 65597.2,
                "color": "#f9844a",
                "dt": "2026-06-22 23:00:00+09:00"
              },
              {
                "label": "LPSY",
                "side": "high",
                "idx": 154,
                "price": 64247.2,
                "color": "#8338ec",
                "dt": "2026-06-23 11:00:00+09:00"
              },
              {
                "label": "SOW",
                "side": "low",
                "idx": 160,
                "price": 61870.0,
                "color": "#ef476f",
                "dt": "2026-06-23 17:00:00+09:00"
              },
              {
                "label": "Phase E",
                "side": "low",
                "idx": 213,
                "price": 58030.0,
                "color": "#7209b7",
                "dt": "2026-06-25 22:00:00+09:00"
              }
            ]
          },
          {
            "structure_id": "1h_cycle_2",
            "sequence": 2,
            "timeframe": "1h",
            "regime": "redistribution",
            "role": "current_structure_candidate",
            "is_active": true,
            "is_completed": false,
            "is_confirmed": true,
            "structure_bias": "bearish",
            "phase_context": "redistribution",
            "start_idx": 213,
            "end_idx": 294,
            "phase_count": 7,
            "phases": [
              {
                "label": "SC",
                "side": "low",
                "idx": 213,
                "price": 58030.0,
                "color": "#ffd166",
                "dt": "2026-06-25 22:00:00+09:00"
              },
              {
                "label": "AR",
                "side": "high",
                "idx": 214,
                "price": 60466.9,
                "color": "#06d6a0",
                "dt": "2026-06-25 23:00:00+09:00"
              },
              {
                "label": "ST",
                "side": "low",
                "idx": 237,
                "price": 58388.0,
                "color": "#118ab2",
                "dt": "2026-06-26 22:00:00+09:00"
              },
              {
                "label": "SOW_IN_PHASE_B",
                "side": "low",
                "idx": 242,
                "price": 59530.7,
                "color": "#ef476f",
                "dt": "2026-06-27 03:00:00+09:00"
              },
              {
                "label": "UT",
                "side": "high",
                "idx": 255,
                "price": 60557.8,
                "color": "#f9844a",
                "dt": "2026-06-27 16:00:00+09:00"
              },
              {
                "label": "UTAD",
                "side": "high",
                "idx": 280,
                "price": 60543.3,
                "color": "#f9844a",
                "dt": "2026-06-28 17:00:00+09:00"
              },
              {
                "label": "LPSY",
                "side": "high",
                "idx": 294,
                "price": 59883.2,
                "color": "#8338ec",
                "dt": "2026-06-29 07:00:00+09:00"
              }
            ]
          }
        ],
        "active_structure_id": "1h_cycle_2",
        "primary_structure_id": "1h_cycle_1",
        "structure_count": 2,
        "regime_fitness": 1.0,
        "current_event": "Phase E",
        "major_phase": "E",
        "pos_in_range": 0.5,
        "main_range_low": 64525.0,
        "main_range_high": 66092.5
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.78,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.68,\n  \"setup_signals\": [\n    \"현재가 $60,019.90는 활성 재분배 범위 EQ 약 $59,293.90 위에 있어 단기 프리미엄 구간에 위치\",\n    \"상단 공급대 $60,543.30~$60,557.80에서 UTAD/UT 실패 이후 LPSY $59,883.20 형성\",\n    \"현재가가 LPSY $59,883.20 부근을 재시험 중이나 AR/UTAD 상단 $60,466.90~$60,557.80을 회복하지 못함\",\n    \"EMA120 $60,594.98 및 EMA240 $61,665.14 아래에 머물러 상위 공급 우위 유지\",\n    \"하방 유동성 목표가 ST 저점 $58,388.00 및 Phase E 저점 $58,030.00에 남아 있음\"\n  ],\n  \"reasoning\": \"1시간 구조는 regime=DIS, regime_state=confirmed_dis, dis_score=100.0으로 확인된 분배/약세 구조이며, 1차 구조는 BC $66,092.50 → AR $64,525.00 → UT $65,597.20 → LPSY $64,247.20 → SOW $61,870.00 → Phase E $58,030.00로 진행되었습니다. 현재 활성 구조는 $58,030.00 저점 이후의 재분배 후보이며, AR $60,466.90, UT $60,557.80, UTAD $60,543.30 이후 LPSY $59,883.20가 확인되어 상단 공급이 여전히 우세합니다. 현재가 $60,019.90는 LPSY 위에 일시적으로 올라와 있으나, $60,466.90~$60,557.80 상단을 회복하지 못하면 이는 강세 전환이 아니라 LPSY/공급 재시험으로 해석됩니다. 따라서 구조적 편향은 명확히 bearish이며, 단기 경로도 $60.5k 부근 거부 시 $58,388.00 및 $58,030.00 재시험 가능성이 더 높습니다.\",\n  \"key_levels\": {\n    \"support\": [\n      59883.2,\n      59530.7,\n      58388.0,\n      58030.0\n    ],\n    \"resistance\": [\n      60466.9,\n      60543.3,\n      60557.8,\n      61870.0,\n      64247.2,\n      64525.0\n    ]\n  },\n  \"time_horizon\": \"short to medium term\",\n  \"invalidation_level\": \"60557.80\",\n  \"risk_scenario\": \"$60,557.80 위로 명확히 회복하고 수용되면 활성 재분배의 UT/UTAD 공급 실패 해석이 약화되며, 단기적으로 $61,870.00 SOW 붕괴 구간까지 되돌림이 열릴 수 있습니다. 다만 더 큰 분배 구조의 무효화는 $64,525.00~$66,092.50 메인 분배 범위로 재진입하고 상단 수용이 확인되어야 합니다.\",\n  \"data_quality\": \"high\"\n}"
    }
  },
  "chairman_synthesis": {
    "overall_signal": "bearish",
    "overall_confidence": 0.68,
    "execution_setup": {
      "setup_bias": "bearish",
      "setup_strength": 0.62,
      "active_setups": [
        "약세 실행 조건: 현재가 $60,019.90가 EMA120 $60,594.98 및 EMA240 $61,665.14 아래에 있어 상위 구조 회복이 미확인",
        "약세 실행 조건: 롱 계정 비율 0.699로 롱 쏠림이 강하고, 24시간 OI 증가와 CVD 감소가 동반되어 신규 포지션의 질이 약함",
        "약세 실행 조건: ICT 기준 현재가가 EQ $59,887.35 위 프리미엄에 있으며, 이전 일 저점 $59,714.80이 이미 하향 이탈된 상태",
        "약세 실행 조건: Wyckoff 재분배 구조에서 LPSY $59,883.20 재시험 중이나 AR/UT/UTAD 공급대 $60,466.90~$60,557.80을 회복하지 못함",
        "강세 반응 조건: 현재가가 피보나치 4중 컨플루언스 $60,015.57 및 골든비율 $60,031.29 부근에서 테스트 중",
        "강세 반응 조건: strict bullish Bat PRZ $59,615.47~$60,100.20 및 strict bullish Butterfly PRZ $59,743.46~$60,100.24 내부에 위치",
        "강세 반응 조건: EMA20 $59,754.16 회복 후 고거래량 bullish engulfing이 감지됨"
      ],
      "setup_vs_structure": "구조는 약세가 우세하지만, 현재 가격은 $59,743~$60,100의 피보나치·하모닉 반응 구간에 있어 단기 반등 셋업도 동시에 존재한다. 다만 약세 셋업의 점수와 구조 정렬도가 더 높아, 실행 관점에서는 반등을 구조 전환으로 보기보다 공급 재시험 여부를 확인해야 하는 국면이다."
    },
    "signal_breakdown": {
      "bullish_count": 1,
      "bearish_count": 3,
      "neutral_count": 2
    },
    "key_levels": {
      "support": [
        59892.1,
        59887.35,
        59883.2,
        59754.16,
        59714.8,
        59615.47,
        59530.7,
        59000,
        58850,
        58400,
        58388,
        58030
      ],
      "resistance": [
        60031.29,
        60125.22,
        60129.05,
        60200,
        60219.4,
        60290.41,
        60314.87,
        60466.9,
        60543.3,
        60557.8,
        60594.98,
        60734,
        60800,
        61665.14,
        61813.6,
        61870,
        62272.1,
        63220
      ]
    },
    "confluences": [
      "Wyckoff와 ICT가 $59,883~$59,887 구간을 핵심 기준선으로 제시한다: Wyckoff LPSY $59,883.20, ICT EQ $59,887.35가 거의 동일하다.",
      "Fibonacci와 Harmonic이 $60,015~$60,100 구간을 단기 반응 구간으로 공통 식별한다: 피보나치 4중 컨플루언스 $60,015.57, ret_0.618 $60,031.29, bullish Bat PRZ 상단 $60,100.20, Butterfly PRZ 상단 $60,100.24가 겹친다.",
      "Wyckoff, Fibonacci, Harmonic, Candlestick, Derivatives가 $60,543~$60,600을 핵심 상단 공급·저항으로 본다: Wyckoff UTAD $60,543.30 및 UT $60,557.80, Fib ext_1.0 $60,543.30, Harmonic TP3 $60,557.80, EMA120 $60,594.98, 파생 저항 $60,600이 밀집한다.",
      "ICT, Fibonacci, Wyckoff가 $59,714~$59,715를 구조적 저점·유동성 기준으로 공유한다: 이전 일 저점 $59,714.80, 피보나치 스윙 저점 $59,715, Wyckoff 하위 구조 저점군과 연결된다.",
      "Wyckoff, ICT, Candlestick, Derivatives가 $58,030을 주요 하단 구조 레벨로 공통 제시한다: Wyckoff Phase E 저점, 7일 저점, ICT sell-side liquidity, 파생 하방 유동성 기준이 모두 $58,030에 수렴한다.",
      "Derivatives와 ICT가 상방 $60,200~$60,219를 단기 저항·유동성 구간으로 공통 식별한다: 파생 청산 유동성 $60,200과 London 고점 $60,219.40이 근접한다."
    ],
    "conflicts": [
      "구조와 실행 셋업이 분리되어 있다: Wyckoff, Derivatives, Candlestick은 상위 구조를 약세로 보지만, Fibonacci와 Harmonic은 현재가가 할인·PRZ 반응 구간에 있어 단기 강세 반응 후보를 제시한다.",
      "ICT는 마지막 확인 이벤트를 $60,734.00 상향 BOS로 보아 구조 편향을 bullish로 표기했지만, 실행 관점에서는 가격이 BOS 레벨 아래에 있고 프리미엄 영역에 있어 bearish setup을 강하게 제시한다.",
      "Harmonic의 bullish Bat와 Butterfly는 품질이 높지만 아직 반응 확인이 없는 pre-confirmation 후보이므로, Wyckoff의 확인된 재분배 구조를 단독으로 뒤집을 수 없다.",
      "Candlestick의 고거래량 bullish engulfing은 단기 반전 신호이나, 가격이 EMA120 $60,594.98 및 EMA240 $61,665.14 아래에 있어 구조적 강세 전환으로 확정되지는 않는다.",
      "파생 포지셔닝은 롱 쏠림과 CVD 약화를 이유로 약세를 지지하지만, 상단 $60,200, $60,600, $60,800에는 청산 유동성이 있어 단기 변동성 조건은 양방향으로 열려 있다."
    ],
    "executive_summary": "현재 BTC 1시간 구조의 우세한 해석은 약세이며, 선행 분배가 $58,030.00 Phase E 저점까지 진행된 뒤 현재는 $58,030.00~$60,557.80 범위의 재분배 후보 구조 안에 있다. 현 위치 $60,019.90는 Wyckoff LPSY $59,883.20 위를 재시험하는 구간이지만, $60,466.90~$60,557.80의 AR/UT/UTAD 공급대를 회복하지 못해 구조적 강세 전환은 아직 확인되지 않았다. 동시에 $60,015.57 피보나치 컨플루언스와 $59,743~$60,100 하모닉 PRZ가 겹쳐 단기 반응 조건은 존재하나, 이는 확인 전 반등 후보일 뿐 regime-level 구조를 뒤집는 근거는 아니다. 구조상 핵심 위험은 롱 쏠림, 프리미엄 구간 매도 조건, 그리고 $60,543~$60,600 공급대에서의 실패 신호이며, 약세 구조의 1차 무효화는 $61,870 상향 회복과 수용이다.",
    "raw_llm_response": "{\n  \"overall_signal\": \"bearish\",\n  \"overall_confidence\": 0.68,\n  \"execution_setup\": {\n    \"setup_bias\": \"bearish\",\n    \"setup_strength\": 0.62,\n    \"active_setups\": [\n      \"약세 실행 조건: 현재가 $60,019.90가 EMA120 $60,594.98 및 EMA240 $61,665.14 아래에 있어 상위 구조 회복이 미확인\",\n      \"약세 실행 조건: 롱 계정 비율 0.699로 롱 쏠림이 강하고, 24시간 OI 증가와 CVD 감소가 동반되어 신규 포지션의 질이 약함\",\n      \"약세 실행 조건: ICT 기준 현재가가 EQ $59,887.35 위 프리미엄에 있으며, 이전 일 저점 $59,714.80이 이미 하향 이탈된 상태\",\n      \"약세 실행 조건: Wyckoff 재분배 구조에서 LPSY $59,883.20 재시험 중이나 AR/UT/UTAD 공급대 $60,466.90~$60,557.80을 회복하지 못함\",\n      \"강세 반응 조건: 현재가가 피보나치 4중 컨플루언스 $60,015.57 및 골든비율 $60,031.29 부근에서 테스트 중\",\n      \"강세 반응 조건: strict bullish Bat PRZ $59,615.47~$60,100.20 및 strict bullish Butterfly PRZ $59,743.46~$60,100.24 내부에 위치\",\n      \"강세 반응 조건: EMA20 $59,754.16 회복 후 고거래량 bullish engulfing이 감지됨\"\n    ],\n    \"setup_vs_structure\": \"구조는 약세가 우세하지만, 현재 가격은 $59,743~$60,100의 피보나치·하모닉 반응 구간에 있어 단기 반등 셋업도 동시에 존재한다. 다만 약세 셋업의 점수와 구조 정렬도가 더 높아, 실행 관점에서는 반등을 구조 전환으로 보기보다 공급 재시험 여부를 확인해야 하는 국면이다.\"\n  },\n  \"signal_breakdown\": {\n    \"bullish_count\": 1,\n    \"bearish_count\": 3,\n    \"neutral_count\": 2\n  },\n  \"key_levels\": {\n    \"support\": [\n      59892.1,\n      59887.35,\n      59883.2,\n      59754.16,\n      59714.8,\n      59615.47,\n      59530.7,\n      59000,\n      58850,\n      58400,\n      58388,\n      58030\n    ],\n    \"resistance\": [\n      60031.29,\n      60125.22,\n      60129.05,\n      60200,\n      60219.4,\n      60290.41,\n      60314.87,\n      60466.9,\n      60543.3,\n      60557.8,\n      60594.98,\n      60734,\n      60800,\n      61665.14,\n      61813.6,\n      61870,\n      62272.1,\n      63220\n    ]\n  },\n  \"confluences\": [\n    \"Wyckoff와 ICT가 $59,883~$59,887 구간을 핵심 기준선으로 제시한다: Wyckoff LPSY $59,883.20, ICT EQ $59,887.35가 거의 동일하다.\",\n    \"Fibonacci와 Harmonic이 $60,015~$60,100 구간을 단기 반응 구간으로 공통 식별한다: 피보나치 4중 컨플루언스 $60,015.57, ret_0.618 $60,031.29, bullish Bat PRZ 상단 $60,100.20, Butterfly PRZ 상단 $60,100.24가 겹친다.\",\n    \"Wyckoff, Fibonacci, Harmonic, Candlestick, Derivatives가 $60,543~$60,600을 핵심 상단 공급·저항으로 본다: Wyckoff UTAD $60,543.30 및 UT $60,557.80, Fib ext_1.0 $60,543.30, Harmonic TP3 $60,557.80, EMA120 $60,594.98, 파생 저항 $60,600이 밀집한다.\",\n    \"ICT, Fibonacci, Wyckoff가 $59,714~$59,715를 구조적 저점·유동성 기준으로 공유한다: 이전 일 저점 $59,714.80, 피보나치 스윙 저점 $59,715, Wyckoff 하위 구조 저점군과 연결된다.\",\n    \"Wyckoff, ICT, Candlestick, Derivatives가 $58,030을 주요 하단 구조 레벨로 공통 제시한다: Wyckoff Phase E 저점, 7일 저점, ICT sell-side liquidity, 파생 하방 유동성 기준이 모두 $58,030에 수렴한다.\",\n    \"Derivatives와 ICT가 상방 $60,200~$60,219를 단기 저항·유동성 구간으로 공통 식별한다: 파생 청산 유동성 $60,200과 London 고점 $60,219.40이 근접한다.\"\n  ],\n  \"conflicts\": [\n    \"구조와 실행 셋업이 분리되어 있다: Wyckoff, Derivatives, Candlestick은 상위 구조를 약세로 보지만, Fibonacci와 Harmonic은 현재가가 할인·PRZ 반응 구간에 있어 단기 강세 반응 후보를 제시한다.\",\n    \"ICT는 마지막 확인 이벤트를 $60,734.00 상향 BOS로 보아 구조 편향을 bullish로 표기했지만, 실행 관점에서는 가격이 BOS 레벨 아래에 있고 프리미엄 영역에 있어 bearish setup을 강하게 제시한다.\",\n    \"Harmonic의 bullish Bat와 Butterfly는 품질이 높지만 아직 반응 확인이 없는 pre-confirmation 후보이므로, Wyckoff의 확인된 재분배 구조를 단독으로 뒤집을 수 없다.\",\n    \"Candlestick의 고거래량 bullish engulfing은 단기 반전 신호이나, 가격이 EMA120 $60,594.98 및 EMA240 $61,665.14 아래에 있어 구조적 강세 전환으로 확정되지는 않는다.\",\n    \"파생 포지셔닝은 롱 쏠림과 CVD 약화를 이유로 약세를 지지하지만, 상단 $60,200, $60,600, $60,800에는 청산 유동성이 있어 단기 변동성 조건은 양방향으로 열려 있다.\"\n  ],\n  \"highest_conviction_analyst\": \"Wyckoff Expert — 78% 신뢰도와 확인된 분배/재분배 구조를 제시하며, BC $66,092.50 → AR $64,525.00 → UT $65,597.20 → LPSY $64,247.20 → SOW $61,870.00 → Phase E $58,030.00의 선행 분배 진행과, 현재 재분배 후보의 AR $60,466.90, UT $60,557.80, UTAD $60,543.30, LPSY $59,883.20를 정밀하게 제시했다. 특히 $60,543~$60,600 공급대가 다른 분석가들의 저항·EMA·피보나치 레벨과 강하게 중첩되어 구조 신뢰도가 가장 높다.\",\n  \"invalidation_level\": \"$61,870 상향 회복 및 1시간 종가 기준 수용. 보수적으로는 $62,272.10~$63,220.00 bearish OB/CHoCH 구간까지 회복해야 약세 재분배 구조가 본격적으로 훼손된다.\",\n  \"executive_summary\": \"현재 BTC 1시간 구조의 우세한 해석은 약세이며, 선행 분배가 $58,030.00 Phase E 저점까지 진행된 뒤 현재는 $58,030.00~$60,557.80 범위의 재분배 후보 구조 안에 있다. 현 위치 $60,019.90는 Wyckoff LPSY $59,883.20 위를 재시험하는 구간이지만, $60,466.90~$60,557.80의 AR/UT/UTAD 공급대를 회복하지 못해 구조적 강세 전환은 아직 확인되지 않았다. 동시에 $60,015.57 피보나치 컨플루언스와 $59,743~$60,100 하모닉 PRZ가 겹쳐 단기 반응 조건은 존재하나, 이는 확인 전 반등 후보일 뿐 regime-level 구조를 뒤집는 근거는 아니다. 구조상 핵심 위험은 롱 쏠림, 프리미엄 구간 매도 조건, 그리고 $60,543~$60,600 공급대에서의 실패 신호이며, 약세 구조의 1차 무효화는 $61,870 상향 회복과 수용이다.\"\n}"
  },
  "overall_signal": "bearish",
  "overall_confidence": 0.68,
  "operating_path": {
    "path_type": "complex",
    "confidence": 0.62,
    "waypoints": [
      {
        "seq": 1,
        "price": 60287.29,
        "type": "resistance_test",
        "source": "Fibonacci(컨플루언스 $60,287.29, WP1 후보 0.6), Harmonic(Bat TP2 $60,290.41), Derivatives(상방 청산 유동성 $60,200), ICT(London 고점 $60,219.40), Candlestick(고거래량 bullish engulfing)",
        "description": "현재가 $60,019.90가 피보나치 4중 컨플루언스 $60,015.57 및 strict bullish Bat/Butterfly PRZ($59,743~$60,100) 상단에서 반응. EMA20 $59,754.16 회복 후 감지된 고거래량 bullish engulfing이 프리미엄 재시험을 유도해 $60,200 파생 청산 유동성과 London 고점 $60,219.40을 스윕하며 fib 컨플루언스 $60,287.29 / Bat TP2 $60,290.41까지 상승. 다만 상단 공급대 $60,466.90~$60,557.80(AR/UT/UTAD) 회복에는 실패하는 약세 구조 내 premium retest이며, 이를 '구조 전환'이 아닌 '공급 재시험'으로 해석한다.",
        "est_hours": 3,
        "turning_zone": [
          60287.29,
          60430.0
        ],
        "likely_wick": 60300.0,
        "rejection_confirm": 60200.0,
        "invalid_overshoot": 60466.9,
        "calibration_reasoning": "피보나치 2중 컨플루언스 $60,287.29(웨이포인트)와 Chairman 저항 $60,290.41·$60,314.87 군집을 하단 앵커로 두고, 상단 공급대 $60,466.90 직전까지 0.30×ATR 폭으로 설정했다(하모닉 TP 사다리는 pre-confirmation이라 앵커로 쓰지 않고 Chairman 레벨로만 사용). likely_wick은 컨플루언스/라운드 $60,300에 위치하며, 공급대 $60,466.90 회복 시 '공급 재시험'이 '구조 전환'으로 바뀌어 무효화된다."
      },
      {
        "seq": 2,
        "price": 59883.2,
        "type": "support_test",
        "source": "Wyckoff(LPSY $59,883.20), ICT(EQ $59,887.35)",
        "description": "공급대 회복 실패로 프리미엄 매도가 우세해지며 Wyckoff LPSY $59,883.20와 ICT EQ $59,887.35가 겹치는 핵심 기준선으로 복귀. 롱 계정 비율 0.699 + OI 증가 대비 CVD -3277.78 약화로 반등의 질이 낮아, 이 컨플루언스의 재이탈이 약세 지속의 1차 확인 지점이다.",
        "est_hours": 7,
        "turning_zone": [
          59754.16,
          59892.1
        ],
        "likely_wick": 59857.83,
        "rejection_confirm": 60015.57,
        "invalid_overshoot": 59714.8,
        "calibration_reasoning": "LPSY $59,883.20·ICT EQ $59,887.35·fib 지지 $59,892.10 군집을 상단으로, EMA20 $59,754.16을 하단으로 0.29×ATR 밴드를 구성했다. likely_wick은 군집 직하의 strict Bat PRZ $59,857.83(스톱 스윕 후 반응 후보, base는 이동시키지 않음)이며, 4중 컨플루언스+라운드 $60,015.57 회복이 지지 반등 확인이고 이전 일 저점 $59,714.80 이탈은 지지 실패(WP3 연속)로 무효화한다."
      },
      {
        "seq": 3,
        "price": 59530.7,
        "type": "liquidity_sweep",
        "source": "Wyckoff(지지 $59,530.70), Harmonic(X 저점/지지 $59,530.70), ICT(이전 일 저점 $59,714.80 sell-side)",
        "description": "LPSY 이탈 후 이미 1차 이탈된 이전 일 저점 $59,714.80 sell-side 유동성을 재차 회수하며 Wyckoff·Harmonic 공통 지지 $59,530.70(harmonic X 저점)까지 하락. fragility_score 0.611, 롱 쏠림 환경에서 롱 청산이 가속되는 구간이다.",
        "est_hours": 14,
        "turning_zone": [
          59350.0,
          59530.7
        ],
        "likely_wick": 59450.0,
        "rejection_confirm": 59615.47,
        "invalid_overshoot": 59000.0,
        "calibration_reasoning": "이 웨이포인트는 하방(sell-side) 유동성 스윕이므로 방향 논리에 따라 존을 base 아래로 확장했다(타입 분류상 'above' 그룹이나 약세 시퀀스의 하향 스윕이 실제 방향). 하모닉 X 저점 $59,530.70을 상단으로 0.38×ATR 스윕 밴드를 설정하고($59,530 아래 Chairman 레벨이 $59,000까지 공백), 롱 청산 가속(fragility 0.611)을 반영해 likely_wick을 중간 오버슛 $59,450에 두었다. $59,615.47 회복은 스윕 반전 확인, $59,000 라운드 이탈은 WP4 직행으로 무효."
      },
      {
        "seq": 4,
        "price": 58850.0,
        "type": "swing_low",
        "source": "ICT(London 저점 $58,850.00 sell-side), Derivatives(하방 유동성 $59,000/$58,400), Wyckoff(sub-support $58,388 / Phase E $58,030)",
        "description": "$59,000 라운드 레벨을 통과해 ICT가 지목한 다음 주요 sell-side 유동성 풀인 London 저점 $58,850.00에 도달. Wyckoff sub-support $58,388.00 및 Phase E 저점 $58,030.00로 향하는 약세 경로의 24시간 1차 종착 목표이며, 이 아래는 모멘텀 발생 시에만 도달하는 연장 구간이다.",
        "est_hours": 22,
        "turning_zone": [
          58500.0,
          58850.0
        ],
        "likely_wick": 58800.0,
        "rejection_confirm": 59000.0,
        "invalid_overshoot": 58388.0,
        "calibration_reasoning": "터미널 웨이포인트로 London 저점·ICT sell-side 풀 $58,850.00을 상단으로 0.74×ATR의 넓은 밴드를 적용했다. likely_wick은 풀 직하 라운드 $58,800(스톱 스윕 후 1차 반등 자력 구간)에 라운드 마그넷 바이어스를 적용했고, $59,000 회복 시 24h 종착 반전 확인, Wyckoff sub-support $58,388($58,030 Phase E 경로) 도달 시 모멘텀 연장으로 종착 해석이 무효화된다."
      }
    ],
    "period_extremes": {
      "4h": {
        "expected_high": 60287.29,
        "expected_low": 59980.0,
        "high_first": true
      },
      "8h": {
        "expected_high": 60287.29,
        "expected_low": 59883.2,
        "high_first": true
      },
      "24h": {
        "expected_high": 60287.29,
        "expected_low": 58850.0,
        "high_first": true
      }
    },
    "triggers": {
      "bullish": {
        "price": 60594.98,
        "description": "EMA120 $60,594.98 및 공급대 $60,557.80(UT)/$60,543.30(UTAD)을 상회 수용하면 프리미엄 매도 논리가 무효화되며 강세 가속. 이어 ICT BOS $60,734.00 회복 시 $61,665 EMA240, $61,870 SOW 방향 상승 전환으로 확장된다."
      },
      "bearish": {
        "price": 59714.8,
        "description": "프리미엄 반등 거부 후 이전 일 저점 $59,714.80 하향 이탈·수용 시 롱 청산 캐스케이드로 하락 가속. $59,530.70 → $58,850.00 → $58,388.00 → $58,030.00 순차 sell-side 목표가 열린다."
      }
    },
    "scenario_invalidation": 60734.0,
    "raw_llm_response": "```json\n{\n  \"path_type\": \"complex\",\n  \"confidence\": 0.62,\n  \"waypoints\": [\n    {\n      \"seq\": 1,\n      \"price\": 60287.29,\n      \"type\": \"resistance_test\",\n      \"source\": \"Fibonacci(컨플루언스 $60,287.29, WP1 후보 0.6), Harmonic(Bat TP2 $60,290.41), Derivatives(상방 청산 유동성 $60,200), ICT(London 고점 $60,219.40), Candlestick(고거래량 bullish engulfing)\",\n      \"description\": \"현재가 $60,019.90가 피보나치 4중 컨플루언스 $60,015.57 및 strict bullish Bat/Butterfly PRZ($59,743~$60,100) 상단에서 반응. EMA20 $59,754.16 회복 후 감지된 고거래량 bullish engulfing이 프리미엄 재시험을 유도해 $60,200 파생 청산 유동성과 London 고점 $60,219.40을 스윕하며 fib 컨플루언스 $60,287.29 / Bat TP2 $60,290.41까지 상승. 다만 상단 공급대 $60,466.90~$60,557.80(AR/UT/UTAD) 회복에는 실패하는 약세 구조 내 premium retest이며, 이를 '구조 전환'이 아닌 '공급 재시험'으로 해석한다.\",\n      \"est_hours\": 3\n    },\n    {\n      \"seq\": 2,\n      \"price\": 59883.20,\n      \"type\": \"support_test\",\n      \"source\": \"Wyckoff(LPSY $59,883.20), ICT(EQ $59,887.35)\",\n      \"description\": \"공급대 회복 실패로 프리미엄 매도가 우세해지며 Wyckoff LPSY $59,883.20와 ICT EQ $59,887.35가 겹치는 핵심 기준선으로 복귀. 롱 계정 비율 0.699 + OI 증가 대비 CVD -3277.78 약화로 반등의 질이 낮아, 이 컨플루언스의 재이탈이 약세 지속의 1차 확인 지점이다.\",\n      \"est_hours\": 7\n    },\n    {\n      \"seq\": 3,\n      \"price\": 59530.70,\n      \"type\": \"liquidity_sweep\",\n      \"source\": \"Wyckoff(지지 $59,530.70), Harmonic(X 저점/지지 $59,530.70), ICT(이전 일 저점 $59,714.80 sell-side)\",\n      \"description\": \"LPSY 이탈 후 이미 1차 이탈된 이전 일 저점 $59,714.80 sell-side 유동성을 재차 회수하며 Wyckoff·Harmonic 공통 지지 $59,530.70(harmonic X 저점)까지 하락. fragility_score 0.611, 롱 쏠림 환경에서 롱 청산이 가속되는 구간이다.\",\n      \"est_hours\": 14\n    },\n    {\n      \"seq\": 4,\n      \"price\": 58850.00,\n      \"type\": \"swing_low\",\n      \"source\": \"ICT(London 저점 $58,850.00 sell-side), Derivatives(하방 유동성 $59,000/$58,400), Wyckoff(sub-support $58,388 / Phase E $58,030)\",\n      \"description\": \"$59,000 라운드 레벨을 통과해 ICT가 지목한 다음 주요 sell-side 유동성 풀인 London 저점 $58,850.00에 도달. Wyckoff sub-support $58,388.00 및 Phase E 저점 $58,030.00로 향하는 약세 경로의 24시간 1차 종착 목표이며, 이 아래는 모멘텀 발생 시에만 도달하는 연장 구간이다.\",\n      \"est_hours\": 22\n    }\n  ],\n  \"period_extremes\": {\n    \"4h\":  {\"expected_high\": 60287.29, \"expected_low\": 59980.00, \"high_first\": true},\n    \"8h\":  {\"expected_high\": 60287.29, \"expected_low\": 59883.20, \"high_first\": true},\n    \"24h\": {\"expected_high\": 60287.29, \"expected_low\": 58850.00, \"high_first\": true}\n  },\n  \"triggers\": {\n    \"bullish\": {\"price\": 60594.98, \"description\": \"EMA120 $60,594.98 및 공급대 $60,557.80(UT)/$60,543.30(UTAD)을 상회 수용하면 프리미엄 매도 논리가 무효화되며 강세 가속. 이어 ICT BOS $60,734.00 회복 시 $61,665 EMA240, $61,870 SOW 방향 상승 전환으로 확장된다.\"},\n    \"bearish\": {\"price\": 59714.80, \"description\": \"프리미엄 반등 거부 후 이전 일 저점 $59,714.80 하향 이탈·수용 시 롱 청산 캐스케이드로 하락 가속. $59,530.70 → $58,850.00 → $58,388.00 → $58,030.00 순차 sell-side 목표가 열린다.\"}\n  },\n  \"scenario_invalidation\": 60734.00\n}\n```\n\n**핵심 논리:** 구조(BEARISH 68%)와 실행 셋업(BEARISH 62%)이 일치하므로 경로 방향은 명확히 약세다. 다만 현재가가 fib 4중 컨플루언스·strict harmonic PRZ·고거래량 bullish engulfing이 동시 작동하는 반응 구간 한가운데 있어, 즉각적 첫 움직임(WP1)은 **상방 프리미엄 재시험**으로 설정했다. 이 반등은 구조 전환이 아니라 **매도할 공급 재시험**이며, $60,466~$60,557 공급대 회복 실패가 약세 재개의 트리거다. WP1을 strict급 현재가 레벨이 아닌 후보급 $60,287.29로 잡은 것은 약한 매수 참여(CVD 약화·롱 쏠림)로 반등이 공급대까지 닿지 못하고 캡될 가능성이 높다는 판단이다. 두 방향 신호가 공존해 confidence는 0.62로 보수적으로 책정했다."
  },
  "tp_calibration": {
    "calibrated_waypoints": [
      {
        "seq": 1,
        "base_target": 60287.29,
        "turning_zone": [
          60287.29,
          60430.0
        ],
        "likely_wick": 60300.0,
        "rejection_confirm": 60200.0,
        "invalid_overshoot": 60466.9,
        "calibration_reasoning": "피보나치 2중 컨플루언스 $60,287.29(웨이포인트)와 Chairman 저항 $60,290.41·$60,314.87 군집을 하단 앵커로 두고, 상단 공급대 $60,466.90 직전까지 0.30×ATR 폭으로 설정했다(하모닉 TP 사다리는 pre-confirmation이라 앵커로 쓰지 않고 Chairman 레벨로만 사용). likely_wick은 컨플루언스/라운드 $60,300에 위치하며, 공급대 $60,466.90 회복 시 '공급 재시험'이 '구조 전환'으로 바뀌어 무효화된다."
      },
      {
        "seq": 2,
        "base_target": 59883.2,
        "turning_zone": [
          59754.16,
          59892.1
        ],
        "likely_wick": 59857.83,
        "rejection_confirm": 60015.57,
        "invalid_overshoot": 59714.8,
        "calibration_reasoning": "LPSY $59,883.20·ICT EQ $59,887.35·fib 지지 $59,892.10 군집을 상단으로, EMA20 $59,754.16을 하단으로 0.29×ATR 밴드를 구성했다. likely_wick은 군집 직하의 strict Bat PRZ $59,857.83(스톱 스윕 후 반응 후보, base는 이동시키지 않음)이며, 4중 컨플루언스+라운드 $60,015.57 회복이 지지 반등 확인이고 이전 일 저점 $59,714.80 이탈은 지지 실패(WP3 연속)로 무효화한다."
      },
      {
        "seq": 3,
        "base_target": 59530.7,
        "turning_zone": [
          59350.0,
          59530.7
        ],
        "likely_wick": 59450.0,
        "rejection_confirm": 59615.47,
        "invalid_overshoot": 59000.0,
        "calibration_reasoning": "이 웨이포인트는 하방(sell-side) 유동성 스윕이므로 방향 논리에 따라 존을 base 아래로 확장했다(타입 분류상 'above' 그룹이나 약세 시퀀스의 하향 스윕이 실제 방향). 하모닉 X 저점 $59,530.70을 상단으로 0.38×ATR 스윕 밴드를 설정하고($59,530 아래 Chairman 레벨이 $59,000까지 공백), 롱 청산 가속(fragility 0.611)을 반영해 likely_wick을 중간 오버슛 $59,450에 두었다. $59,615.47 회복은 스윕 반전 확인, $59,000 라운드 이탈은 WP4 직행으로 무효."
      },
      {
        "seq": 4,
        "base_target": 58850.0,
        "turning_zone": [
          58500.0,
          58850.0
        ],
        "likely_wick": 58800.0,
        "rejection_confirm": 59000.0,
        "invalid_overshoot": 58388.0,
        "calibration_reasoning": "터미널 웨이포인트로 London 저점·ICT sell-side 풀 $58,850.00을 상단으로 0.74×ATR의 넓은 밴드를 적용했다. likely_wick은 풀 직하 라운드 $58,800(스톱 스윕 후 1차 반등 자력 구간)에 라운드 마그넷 바이어스를 적용했고, $59,000 회복 시 24h 종착 반전 확인, Wyckoff sub-support $58,388($58,030 Phase E 경로) 도달 시 모멘텀 연장으로 종착 해석이 무효화된다."
      }
    ],
    "raw_llm_response": "```json\n{\n  \"calibrated_waypoints\": [\n    {\n      \"seq\": 1,\n      \"base_target\": 60287.29,\n      \"turning_zone\": [60287.29, 60430.00],\n      \"likely_wick\": 60300.00,\n      \"rejection_confirm\": 60200.00,\n      \"invalid_overshoot\": 60466.90,\n      \"calibration_reasoning\": \"피보나치 2중 컨플루언스 $60,287.29(웨이포인트)와 Chairman 저항 $60,290.41·$60,314.87 군집을 하단 앵커로 두고, 상단 공급대 $60,466.90 직전까지 0.30×ATR 폭으로 설정했다(하모닉 TP 사다리는 pre-confirmation이라 앵커로 쓰지 않고 Chairman 레벨로만 사용). likely_wick은 컨플루언스/라운드 $60,300에 위치하며, 공급대 $60,466.90 회복 시 '공급 재시험'이 '구조 전환'으로 바뀌어 무효화된다.\"\n    },\n    {\n      \"seq\": 2,\n      \"base_target\": 59883.20,\n      \"turning_zone\": [59754.16, 59892.10],\n      \"likely_wick\": 59857.83,\n      \"rejection_confirm\": 60015.57,\n      \"invalid_overshoot\": 59714.80,\n      \"calibration_reasoning\": \"LPSY $59,883.20·ICT EQ $59,887.35·fib 지지 $59,892.10 군집을 상단으로, EMA20 $59,754.16을 하단으로 0.29×ATR 밴드를 구성했다. likely_wick은 군집 직하의 strict Bat PRZ $59,857.83(스톱 스윕 후 반응 후보, base는 이동시키지 않음)이며, 4중 컨플루언스+라운드 $60,015.57 회복이 지지 반등 확인이고 이전 일 저점 $59,714.80 이탈은 지지 실패(WP3 연속)로 무효화한다.\"\n    },\n    {\n      \"seq\": 3,\n      \"base_target\": 59530.70,\n      \"turning_zone\": [59350.00, 59530.70],\n      \"likely_wick\": 59450.00,\n      \"rejection_confirm\": 59615.47,\n      \"invalid_overshoot\": 59000.00,\n      \"calibration_reasoning\": \"이 웨이포인트는 하방(sell-side) 유동성 스윕이므로 방향 논리에 따라 존을 base 아래로 확장했다(타입 분류상 'above' 그룹이나 약세 시퀀스의 하향 스윕이 실제 방향). 하모닉 X 저점 $59,530.70을 상단으로 0.38×ATR 스윕 밴드를 설정하고($59,530 아래 Chairman 레벨이 $59,000까지 공백), 롱 청산 가속(fragility 0.611)을 반영해 likely_wick을 중간 오버슛 $59,450에 두었다. $59,615.47 회복은 스윕 반전 확인, $59,000 라운드 이탈은 WP4 직행으로 무효.\"\n    },\n    {\n      \"seq\": 4,\n      \"base_target\": 58850.00,\n      \"turning_zone\": [58500.00, 58850.00],\n      \"likely_wick\": 58800.00,\n      \"rejection_confirm\": 59000.00,\n      \"invalid_overshoot\": 58388.00,\n      \"calibration_reasoning\": \"터미널 웨이포인트로 London 저점·ICT sell-side 풀 $58,850.00을 상단으로 0.74×ATR의 넓은 밴드를 적용했다. likely_wick은 풀 직하 라운드 $58,800(스톱 스윕 후 1차 반등 자력 구간)에 라운드 마그넷 바이어스를 적용했고, $59,000 회복 시 24h 종착 반전 확인, Wyckoff sub-support $58,388($58,030 Phase E 경로) 도달 시 모멘텀 연장으로 종착 해석이 무효화된다.\"\n    }\n  ]\n}\n```"
  },
  "timing": {
    "stages": {
      "stage1_agents": 54.0,
      "chairman": 102.4,
      "operating_path": 569.0,
      "tp_calibrator": 322.8
    },
    "agents": {},
    "total_s": 1048.6
  }
}