{
  "symbol": "BTC/USDT",
  "timeframe": "1d",
  "timestamp": "2026-06-22 21:00 KST",
  "last_price": 64624.3,
  "num_candles": 300,
  "stage1_analyses": {
    "fibonacci": {
      "agent_id": "fibonacci",
      "display_name": "Fibonacci Analyst",
      "signal": "neutral",
      "confidence": 0.46,
      "structure_bias": "neutral",
      "setup_bias": "bearish",
      "setup_score": 0.48,
      "setup_signals": [
        "현재가 $64,624.30은 스윙 EQ인 0.5 되돌림 $63,167.70 위에 있어 아직 프리미엄 영역에 위치",
        "가격이 EMA20 $65,377.49 및 0.236 되돌림 저항 $65,326.01 아래에 있어 단기 상방 수용이 확인되지 않음",
        "가장 가까운 피보나치 레벨은 0.382 되돌림 $64,132.40이며 현재가와의 거리는 0.76%로 단기 지지 테스트 구간에 접근 중",
        "스윙 고점 $67,255.40 돌파가 확인되지 않았고, confluence_quality가 0으로 피보나치 클러스터 지지는 약함"
      ],
      "reasoning": "현재 BTC는 $59,080 → $67,255 상승 스윙의 조정 구간에 있으며, 가장 가까운 핵심 레벨은 0.382 되돌림 $64,132.40입니다. 가격 $64,624.30은 0.382 지지 위에 있지만 EMA20 $65,377.49와 0.236 되돌림 $65,326.01 아래에 있어 단기적으로는 상방 확정 구조보다 저항 압력이 더 큽니다. 구조적으로는 $67,255.40 고점 돌파나 $62,203.00의 0.618 골든비율 이탈 같은 명확한 BOS/CHoCH가 없어 중립으로 판단합니다. 다만 셋업 관점에서는 가격이 EQ $63,167.70 위의 프리미엄 영역에 있고, 상단 저항을 회복하지 못한 상태라 $64,132.40 재테스트 또는 $63,167.70까지의 하방 압력이 우세합니다.",
      "key_levels": {
        "support": [
          64132.4,
          63167.7,
          62203.0,
          60829.54
        ],
        "resistance": [
          65326.01,
          67255.4,
          69479.11,
          70640.02,
          72307.8,
          75430.8
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$65,377.49 상향 회복 및 일봉 종가 수용",
      "risk_scenario": "반대로 매수세가 EMA20 $65,377.49와 0.236 되돌림 $65,326.01을 회복하면 단기 약세 셋업은 무효화되며, $67,255.40 스윙 고점 재테스트가 열립니다. 이후 $67,255.40을 돌파하면 확장 목표는 $69,479.11, $70,640.02, $72,307.80 순서로 활성화됩니다.",
      "data_quality": "medium",
      "metrics": {
        "swing_pair": "Low→High: $59,080 → $67,255",
        "direction": "up",
        "nearest_fib": "ret_0.382",
        "nearest_fib_price": 64132.4,
        "nearest_fib_distance": 0.76,
        "golden_ratio_level": 62203.0,
        "fib_ret_382": 64132.4,
        "fib_ret_618": 62203.0,
        "confluence_zones": [],
        "support_levels": [
          64132.3972,
          63167.7,
          62203.002799999995
        ],
        "resistance_levels": [
          65326.0056,
          67255.4,
          69479.10879999999
        ],
        "level_candidates": [
          {
            "name": "ret_0.236",
            "price": 65326.01,
            "distance_pct": 1.09,
            "is_support": false,
            "cluster_score": 0.0
          },
          {
            "name": "ret_0.382",
            "price": 64132.4,
            "distance_pct": 0.76,
            "is_support": true,
            "cluster_score": 0.0
          },
          {
            "name": "ret_0.5",
            "price": 63167.7,
            "distance_pct": 2.25,
            "is_support": true,
            "cluster_score": 0.0
          },
          {
            "name": "ret_0.618",
            "price": 62203.0,
            "distance_pct": 3.75,
            "is_support": true,
            "cluster_score": 0.0
          },
          {
            "name": "ret_0.786",
            "price": 60829.54,
            "distance_pct": 5.87,
            "is_support": true,
            "cluster_score": 0.0
          },
          {
            "name": "ext_1.0",
            "price": 67255.4,
            "distance_pct": 4.07,
            "is_support": false,
            "cluster_score": 0.0
          },
          {
            "name": "ext_1.272",
            "price": 69479.11,
            "distance_pct": 7.51,
            "is_support": false,
            "cluster_score": 0.0
          },
          {
            "name": "ext_1.414",
            "price": 70640.02,
            "distance_pct": 9.31,
            "is_support": false,
            "cluster_score": 0.0
          },
          {
            "name": "ext_1.618",
            "price": 72307.8,
            "distance_pct": 11.89,
            "is_support": false,
            "cluster_score": 0.0
          },
          {
            "name": "ext_2.0",
            "price": 75430.8,
            "distance_pct": 16.72,
            "is_support": false,
            "cluster_score": 0.0
          }
        ],
        "confluence_quality": 0,
        "fib_reaction_state": "approaching",
        "reaction_probability": 0.45
      },
      "raw_llm_response": "{\n  \"signal\": \"neutral\",\n  \"confidence\": 0.46,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.48,\n  \"setup_signals\": [\n    \"현재가 $64,624.30은 스윙 EQ인 0.5 되돌림 $63,167.70 위에 있어 아직 프리미엄 영역에 위치\",\n    \"가격이 EMA20 $65,377.49 및 0.236 되돌림 저항 $65,326.01 아래에 있어 단기 상방 수용이 확인되지 않음\",\n    \"가장 가까운 피보나치 레벨은 0.382 되돌림 $64,132.40이며 현재가와의 거리는 0.76%로 단기 지지 테스트 구간에 접근 중\",\n    \"스윙 고점 $67,255.40 돌파가 확인되지 않았고, confluence_quality가 0으로 피보나치 클러스터 지지는 약함\"\n  ],\n  \"reasoning\": \"현재 BTC는 $59,080 → $67,255 상승 스윙의 조정 구간에 있으며, 가장 가까운 핵심 레벨은 0.382 되돌림 $64,132.40입니다. 가격 $64,624.30은 0.382 지지 위에 있지만 EMA20 $65,377.49와 0.236 되돌림 $65,326.01 아래에 있어 단기적으로는 상방 확정 구조보다 저항 압력이 더 큽니다. 구조적으로는 $67,255.40 고점 돌파나 $62,203.00의 0.618 골든비율 이탈 같은 명확한 BOS/CHoCH가 없어 중립으로 판단합니다. 다만 셋업 관점에서는 가격이 EQ $63,167.70 위의 프리미엄 영역에 있고, 상단 저항을 회복하지 못한 상태라 $64,132.40 재테스트 또는 $63,167.70까지의 하방 압력이 우세합니다.\",\n  \"key_levels\": {\n    \"support\": [\n      64132.4,\n      63167.7,\n      62203.0,\n      60829.54\n    ],\n    \"resistance\": [\n      65326.01,\n      67255.4,\n      69479.11,\n      70640.02,\n      72307.8,\n      75430.8\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$65,377.49 상향 회복 및 일봉 종가 수용\",\n  \"risk_scenario\": \"반대로 매수세가 EMA20 $65,377.49와 0.236 되돌림 $65,326.01을 회복하면 단기 약세 셋업은 무효화되며, $67,255.40 스윙 고점 재테스트가 열립니다. 이후 $67,255.40을 돌파하면 확장 목표는 $69,479.11, $70,640.02, $72,307.80 순서로 활성화됩니다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "derivatives": {
      "agent_id": "derivatives",
      "display_name": "Derivatives Trader",
      "signal": "bullish",
      "confidence": 0.58,
      "structure_bias": "bearish",
      "setup_bias": "bullish",
      "setup_score": 0.67,
      "setup_signals": [
        "가격 $64,624.30이 EMA20 $65,377.49 아래에 있어 구조는 약하지만, 단기 할인 구간에서 CVD divergence 0.850과 CVD change +$1,896.93이 발생",
        "OI가 24시간 +2.7950% 증가해 신규 포지션 유입이 확인되며, 가격 반등 +2.11%와 동행",
        "롱 계정 비율은 여전히 0.613으로 과밀하지만 24시간 -0.0157 감소, 숏 계정은 +0.016 증가해 단기 숏 스퀴즈 조건 형성",
        "상방 청산 밀집 구간 $65,400, $66,100, $67,100 중 $66,100이 가장 강한 유동성 레벨",
        "spot-futures basis가 -0.0460%로 음수라 선물 디스카운트가 남아 있어, 상방 돌파 전까지는 숏 압력이 완전히 해소되지 않음"
      ],
      "reasoning": "확정 구조는 여전히 약세입니다. 현재가 $64,624.30은 EMA20 $65,377.49보다 1.2% 낮고, EMA120 $73,236.30 및 EMA240 $80,336.40 아래에 있어 중기 하락 구조가 유지됩니다. 다만 세팅 관점에서는 CVD divergence 0.850, OI 24시간 +2.7950%, CVD change +$1,896.93이 동시에 나타나며 가격 하방 추격보다는 상방 유동성 회수 가능성이 더 큽니다. 특히 $65,400과 $66,100 상방 청산 레벨이 가깝고, 최강 청산 레벨이 $66,100에 있어 단기적으로는 이 구간을 테스트할 확률이 높습니다. 단, 롱 계정 비율 0.613은 여전히 롱 과밀이므로 $66,100~$67,100 도달 시 추격 매수보다 반응 확인이 필요합니다.",
      "key_levels": {
        "support": [
          64200,
          63500,
          62300
        ],
        "resistance": [
          65400,
          66100,
          67100,
          65377.49
        ]
      },
      "time_horizon": "short term, 파생 포지셔닝 기준 4-8시간 우위",
      "invalidation_level": "$63,500",
      "risk_scenario": "$64,200 하방 유동성을 먼저 소모한 뒤 $63,500까지 이탈하면, OI 증가는 신규 롱 유입이 아니라 하방 추세 추격 포지션으로 해석이 바뀝니다. 이 경우 $62,300 청산 구간까지 빠르게 열리며, 현재의 단기 상방 세팅은 실패로 봐야 합니다.",
      "data_quality": "medium",
      "metrics": {
        "cvd_divergence": 0.85,
        "cvd_change": 1896.929,
        "oi_trend": 0.779,
        "oi_change_pct_24h": 2.795,
        "oi_latest": 100266.126,
        "funding_pressure": 0.468,
        "funding_avg": 3.217e-05,
        "funding_change_24h": 7.36e-06,
        "long_account_ratio": 0.621,
        "short_account_ratio": 0.379,
        "long_account_latest": 0.613,
        "short_account_latest": 0.387,
        "long_account_change_24h": -0.0157,
        "short_account_change_24h": 0.0157,
        "account_flow_label": "short_accounts_rising_long_accounts_falling",
        "account_short_crowding": 0.0,
        "account_long_crowding": 1.0,
        "ls_imbalance": 0.0,
        "ls_imbalance_interpretation": "high=short-account crowding / low=long-account crowding",
        "spot_futures_basis_score": 0.489,
        "spot_futures_basis_pct": -0.046,
        "basis_change_lookback": -0.0086,
        "aggregate_score": 0.517,
        "bull_signals": 2,
        "bear_signals": 1,
        "liq_below": [
          [
            64200,
            96412.91634879999
          ],
          [
            63500,
            97921.47282540001
          ],
          [
            62300,
            85437.20695169999
          ]
        ],
        "liq_above": [
          [
            65400,
            105035.2745185
          ],
          [
            66100,
            131113.600957
          ],
          [
            67100,
            125962.61639625
          ]
        ],
        "strongest_liq_level": 66100,
        "fragility_score": 0.957,
        "positioning_extreme": "balanced"
      },
      "raw_llm_response": "{\n  \"signal\": \"bullish\",\n  \"confidence\": 0.58,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.67,\n  \"setup_signals\": [\n    \"가격 $64,624.30이 EMA20 $65,377.49 아래에 있어 구조는 약하지만, 단기 할인 구간에서 CVD divergence 0.850과 CVD change +$1,896.93이 발생\",\n    \"OI가 24시간 +2.7950% 증가해 신규 포지션 유입이 확인되며, 가격 반등 +2.11%와 동행\",\n    \"롱 계정 비율은 여전히 0.613으로 과밀하지만 24시간 -0.0157 감소, 숏 계정은 +0.016 증가해 단기 숏 스퀴즈 조건 형성\",\n    \"상방 청산 밀집 구간 $65,400, $66,100, $67,100 중 $66,100이 가장 강한 유동성 레벨\",\n    \"spot-futures basis가 -0.0460%로 음수라 선물 디스카운트가 남아 있어, 상방 돌파 전까지는 숏 압력이 완전히 해소되지 않음\"\n  ],\n  \"reasoning\": \"확정 구조는 여전히 약세입니다. 현재가 $64,624.30은 EMA20 $65,377.49보다 1.2% 낮고, EMA120 $73,236.30 및 EMA240 $80,336.40 아래에 있어 중기 하락 구조가 유지됩니다. 다만 세팅 관점에서는 CVD divergence 0.850, OI 24시간 +2.7950%, CVD change +$1,896.93이 동시에 나타나며 가격 하방 추격보다는 상방 유동성 회수 가능성이 더 큽니다. 특히 $65,400과 $66,100 상방 청산 레벨이 가깝고, 최강 청산 레벨이 $66,100에 있어 단기적으로는 이 구간을 테스트할 확률이 높습니다. 단, 롱 계정 비율 0.613은 여전히 롱 과밀이므로 $66,100~$67,100 도달 시 추격 매수보다 반응 확인이 필요합니다.\",\n  \"key_levels\": {\n    \"support\": [\n      64200,\n      63500,\n      62300\n    ],\n    \"resistance\": [\n      65400,\n      66100,\n      67100,\n      65377.49\n    ]\n  },\n  \"time_horizon\": \"short term, 파생 포지셔닝 기준 4-8시간 우위\",\n  \"invalidation_level\": \"$63,500\",\n  \"risk_scenario\": \"$64,200 하방 유동성을 먼저 소모한 뒤 $63,500까지 이탈하면, OI 증가는 신규 롱 유입이 아니라 하방 추세 추격 포지션으로 해석이 바뀝니다. 이 경우 $62,300 청산 구간까지 빠르게 열리며, 현재의 단기 상방 세팅은 실패로 봐야 합니다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "candlestick": {
      "agent_id": "candlestick",
      "display_name": "Candlestick Reader",
      "signal": "bearish",
      "confidence": 0.62,
      "structure_bias": "bearish",
      "setup_bias": "bearish",
      "setup_score": 0.56,
      "setup_signals": [
        "현재가 $64,624.30가 EMA20 $65,377.49 아래에 위치하여 단기 반등이 아직 구조적 회복으로 확인되지 않음",
        "현재가가 EMA120 $73,236.30 대비 -11.8%, EMA240 $80,336.40 대비 -19.6% 아래에 있어 중장기 하락 구조가 유지됨",
        "최근 패턴에서 bearish_engulfing@298이 감지되었고 품질 0.648로 가장 높은 후보이며, 고거래량 확인은 없지만 단기 매도 압력 신호로 작동",
        "7일 범위 EQ 약 $64,594.40 바로 위에서 거래 중이며, $65,377.49 EMA20 저항을 회복하지 못하면 프리미엄 진입 실패형 하락 셋업 가능",
        "7일 고점 $66,956.70 돌파 전까지는 최근 반등이 저항권 내 되돌림으로 해석됨"
      ],
      "reasoning": "BTC는 현재 $64,624.30으로 EMA20 $65,377.49 아래에 있으며, EMA120 $73,236.30 및 EMA240 $80,336.40보다도 크게 낮아 확인된 구조_bias는 bearish입니다. 최근 5개 캔들은 혼조지만 마지막 캔들이 +2.1% 반등했음에도, 최근 감지된 bearish_engulfing@298의 품질이 0.648로 가장 높고 bear_score 1.5000이 bull_score 0.750보다 우세합니다. 다만 7일 저점 $62,232.10에서 반등 중이고 현재가가 7일 EQ 약 $64,594.40 근처에 있어 즉각적인 추격 매도보다는 EMA20 $65,377.49 및 7일 고점 $66,956.70에서의 거부 여부가 중요합니다. 고거래량 패턴이 없고 최근 패턴들이 모두 candidate 등급이므로 확신도는 중간 수준으로 제한됩니다.",
      "key_levels": {
        "support": [
          62232.1,
          62554.08,
          64594.4
        ],
        "resistance": [
          65377.49,
          66956.7,
          73236.3,
          80336.4
        ]
      },
      "time_horizon": "short/medium term",
      "invalidation_level": "$66,956.70",
      "risk_scenario": "반대 시나리오로 BTC가 EMA20 $65,377.49를 회복한 뒤 7일 고점 $66,956.70 위에서 일봉 종가를 형성하면, bearish engulfing 기반의 단기 매도 셋업은 무효화되고 $73,236.30 EMA120까지 숏커버링 반등이 열릴 수 있습니다.",
      "data_quality": "medium",
      "metrics": {
        "total_patterns_detected": 134,
        "recent_patterns": 3,
        "pattern_list": [
          "bullish_engulfing@290",
          "bearish_engulfing@293",
          "bearish_engulfing@298"
        ],
        "atr_value": 2070.22,
        "vol_avg_20": 189487.98,
        "high_volume_patterns": [],
        "pattern_candidates": [
          {
            "pattern": "bearish_engulfing",
            "signal": "bearish",
            "pattern_quality": 0.648,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "bearish_engulfing",
            "signal": "bearish",
            "pattern_quality": 0.55,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "bullish_engulfing",
            "signal": "bullish",
            "pattern_quality": 0.503,
            "tier": "candidate",
            "high_volume": false
          }
        ],
        "best_pattern_quality": 0.648,
        "bull_score": 0.75,
        "bear_score": 1.5
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.62,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.56,\n  \"setup_signals\": [\n    \"현재가 $64,624.30가 EMA20 $65,377.49 아래에 위치하여 단기 반등이 아직 구조적 회복으로 확인되지 않음\",\n    \"현재가가 EMA120 $73,236.30 대비 -11.8%, EMA240 $80,336.40 대비 -19.6% 아래에 있어 중장기 하락 구조가 유지됨\",\n    \"최근 패턴에서 bearish_engulfing@298이 감지되었고 품질 0.648로 가장 높은 후보이며, 고거래량 확인은 없지만 단기 매도 압력 신호로 작동\",\n    \"7일 범위 EQ 약 $64,594.40 바로 위에서 거래 중이며, $65,377.49 EMA20 저항을 회복하지 못하면 프리미엄 진입 실패형 하락 셋업 가능\",\n    \"7일 고점 $66,956.70 돌파 전까지는 최근 반등이 저항권 내 되돌림으로 해석됨\"\n  ],\n  \"reasoning\": \"BTC는 현재 $64,624.30으로 EMA20 $65,377.49 아래에 있으며, EMA120 $73,236.30 및 EMA240 $80,336.40보다도 크게 낮아 확인된 구조_bias는 bearish입니다. 최근 5개 캔들은 혼조지만 마지막 캔들이 +2.1% 반등했음에도, 최근 감지된 bearish_engulfing@298의 품질이 0.648로 가장 높고 bear_score 1.5000이 bull_score 0.750보다 우세합니다. 다만 7일 저점 $62,232.10에서 반등 중이고 현재가가 7일 EQ 약 $64,594.40 근처에 있어 즉각적인 추격 매도보다는 EMA20 $65,377.49 및 7일 고점 $66,956.70에서의 거부 여부가 중요합니다. 고거래량 패턴이 없고 최근 패턴들이 모두 candidate 등급이므로 확신도는 중간 수준으로 제한됩니다.\",\n  \"key_levels\": {\n    \"support\": [\n      62232.1,\n      62554.08,\n      64594.4\n    ],\n    \"resistance\": [\n      65377.49,\n      66956.7,\n      73236.3,\n      80336.4\n    ]\n  },\n  \"time_horizon\": \"short/medium term\",\n  \"invalidation_level\": \"$66,956.70\",\n  \"risk_scenario\": \"반대 시나리오로 BTC가 EMA20 $65,377.49를 회복한 뒤 7일 고점 $66,956.70 위에서 일봉 종가를 형성하면, bearish engulfing 기반의 단기 매도 셋업은 무효화되고 $73,236.30 EMA120까지 숏커버링 반등이 열릴 수 있습니다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "wyckoff": {
      "agent_id": "wyckoff",
      "display_name": "Wyckoff Expert",
      "signal": "bullish",
      "confidence": 0.64,
      "structure_bias": "bullish",
      "setup_bias": "bullish",
      "setup_score": 0.56,
      "setup_signals": [
        "가격이 메인 레인지 EQ $65,745.00 아래의 할인 구간에 위치: 현재가 $64,624.30",
        "Spring 저점 $59,080.00 이후 SOS $67,255.40 형성, 이후 LPS 후보 저점 $62,232.10 방어",
        "현재가는 LPS $62,232.10 위에 있으나 EMA20 $65,377.49 및 EQ $65,745.00 재확보 전이라 실행 신호는 아직 중간 강도",
        "상단 확인 레벨은 SOS $67,255.40 재돌파, 실패 시 레인지 내부 재테스트 가능"
      ],
      "reasoning": "현재 1일 구조는 ACC regime이며, 감지된 이벤트 체인은 SC $59,800.00 → AR $71,690.00 → ST $64,918.20 → Spring $59,080.00 → SOS $67,255.40 → LPS $62,232.10으로 Phase D 축적 후보에 해당한다. 구조적으로는 Spring 이후 SOS와 LPS가 형성되어 bullish 편향이지만, 현재가 $64,624.30은 레인지 EQ $65,745.00 및 EMA20 $65,377.49 아래에 있어 아직 상단 수용이나 포스트-레인지 확정은 아니다. 즉 구조_bias는 bullish이나, setup_bias는 LPS 방어 이후 EQ/SOS 재시험을 노리는 중간 강도의 bullish setup이며, $67,255.40 재확보 전까지는 레인지 내부 반등 성격으로 보는 것이 타당하다. $62,232.10 LPS가 깨지면 단기 Phase D 해석이 약화되고, $59,080.00 Spring 저점 이탈 시 현재 축적 구조 해석은 무효화된다.",
      "key_levels": {
        "support": [
          62232.1,
          59800.0,
          59080.0
        ],
        "resistance": [
          65377.49,
          65745.0,
          67255.4,
          71690.0
        ]
      },
      "time_horizon": "medium term",
      "invalidation_level": "59080.00",
      "risk_scenario": "$65,377.49~$65,745.00 구간에서 재차 거부되거나 $62,232.10 LPS가 하향 이탈되면, 현재 Phase D/LPS 해석은 약화되고 Spring 저점 $59,080.00 재시험 가능성이 커진다. 특히 $59,080.00 아래로 내려가면 Spring 실패로 간주되어 축적 구조가 무효화되고 레인지 하단 이탈 리스크를 우선해야 한다.",
      "data_quality": "high",
      "metrics": {
        "acc_score": 89.6,
        "dis_score": 85.0,
        "regime": "ACC",
        "regime_state": "acc_candidate",
        "structure_bias": "bullish",
        "phase_context": "acc_candidate / accumulation / Phase D",
        "phases_detected": [
          "SC",
          "AR",
          "ST",
          "Spring",
          "SOS",
          "LPS"
        ],
        "last_phase": "LPS",
        "phase_candidates": [
          {
            "label": "SC",
            "side": "low",
            "idx": 163,
            "price": 59800.0,
            "color": "#ffd166"
          },
          {
            "label": "AR",
            "side": "high",
            "idx": 164,
            "price": 71690.0,
            "color": "#06d6a0"
          },
          {
            "label": "ST",
            "side": "low",
            "idx": 214,
            "price": 64918.2,
            "color": "#118ab2"
          },
          {
            "label": "Spring",
            "side": "low",
            "idx": 282,
            "price": 59080.0,
            "color": "#f9844a"
          },
          {
            "label": "SOS",
            "side": "high",
            "idx": 292,
            "price": 67255.4,
            "color": "#06d6a0"
          },
          {
            "label": "LPS",
            "side": "low",
            "idx": 295,
            "price": 62232.1,
            "color": "#8338ec"
          }
        ],
        "phase_structures": [
          {
            "structure_id": "1d_cycle_1",
            "sequence": 1,
            "timeframe": "1d",
            "regime": "accumulation",
            "role": "current_structure_candidate",
            "is_active": true,
            "is_completed": false,
            "is_confirmed": true,
            "structure_bias": "bullish",
            "phase_context": "accumulation",
            "start_idx": 163,
            "end_idx": 295,
            "phase_count": 6,
            "phases": [
              {
                "label": "SC",
                "side": "low",
                "idx": 163,
                "price": 59800.0,
                "color": "#ffd166",
                "dt": "2026-02-06 09:00:00+09:00"
              },
              {
                "label": "AR",
                "side": "high",
                "idx": 164,
                "price": 71690.0,
                "color": "#06d6a0",
                "dt": "2026-02-07 09:00:00+09:00"
              },
              {
                "label": "ST",
                "side": "low",
                "idx": 214,
                "price": 64918.2,
                "color": "#118ab2",
                "dt": "2026-03-29 09:00:00+09:00"
              },
              {
                "label": "Spring",
                "side": "low",
                "idx": 282,
                "price": 59080.0,
                "color": "#f9844a",
                "dt": "2026-06-05 09:00:00+09:00"
              },
              {
                "label": "SOS",
                "side": "high",
                "idx": 292,
                "price": 67255.4,
                "color": "#06d6a0",
                "dt": "2026-06-15 09:00:00+09:00"
              },
              {
                "label": "LPS",
                "side": "low",
                "idx": 295,
                "price": 62232.1,
                "color": "#8338ec",
                "dt": "2026-06-18 09:00:00+09:00"
              }
            ]
          }
        ],
        "active_structure_id": "1d_cycle_1",
        "primary_structure_id": "1d_cycle_1",
        "structure_count": 1,
        "regime_fitness": 0.8957357859531772,
        "current_event": "LPS",
        "major_phase": "D",
        "pos_in_range": 0.5,
        "main_range_low": 59800.0,
        "main_range_high": 71690.0
      },
      "raw_llm_response": "{\n  \"signal\": \"bullish\",\n  \"confidence\": 0.64,\n  \"structure_bias\": \"bullish\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.56,\n  \"setup_signals\": [\n    \"가격이 메인 레인지 EQ $65,745.00 아래의 할인 구간에 위치: 현재가 $64,624.30\",\n    \"Spring 저점 $59,080.00 이후 SOS $67,255.40 형성, 이후 LPS 후보 저점 $62,232.10 방어\",\n    \"현재가는 LPS $62,232.10 위에 있으나 EMA20 $65,377.49 및 EQ $65,745.00 재확보 전이라 실행 신호는 아직 중간 강도\",\n    \"상단 확인 레벨은 SOS $67,255.40 재돌파, 실패 시 레인지 내부 재테스트 가능\"\n  ],\n  \"reasoning\": \"현재 1일 구조는 ACC regime이며, 감지된 이벤트 체인은 SC $59,800.00 → AR $71,690.00 → ST $64,918.20 → Spring $59,080.00 → SOS $67,255.40 → LPS $62,232.10으로 Phase D 축적 후보에 해당한다. 구조적으로는 Spring 이후 SOS와 LPS가 형성되어 bullish 편향이지만, 현재가 $64,624.30은 레인지 EQ $65,745.00 및 EMA20 $65,377.49 아래에 있어 아직 상단 수용이나 포스트-레인지 확정은 아니다. 즉 구조_bias는 bullish이나, setup_bias는 LPS 방어 이후 EQ/SOS 재시험을 노리는 중간 강도의 bullish setup이며, $67,255.40 재확보 전까지는 레인지 내부 반등 성격으로 보는 것이 타당하다. $62,232.10 LPS가 깨지면 단기 Phase D 해석이 약화되고, $59,080.00 Spring 저점 이탈 시 현재 축적 구조 해석은 무효화된다.\",\n  \"key_levels\": {\n    \"support\": [\n      62232.1,\n      59800.0,\n      59080.0\n    ],\n    \"resistance\": [\n      65377.49,\n      65745.0,\n      67255.4,\n      71690.0\n    ]\n  },\n  \"time_horizon\": \"medium term\",\n  \"invalidation_level\": \"59080.00\",\n  \"risk_scenario\": \"$65,377.49~$65,745.00 구간에서 재차 거부되거나 $62,232.10 LPS가 하향 이탈되면, 현재 Phase D/LPS 해석은 약화되고 Spring 저점 $59,080.00 재시험 가능성이 커진다. 특히 $59,080.00 아래로 내려가면 Spring 실패로 간주되어 축적 구조가 무효화되고 레인지 하단 이탈 리스크를 우선해야 한다.\",\n  \"data_quality\": \"high\"\n}"
    },
    "ict": {
      "agent_id": "ict",
      "display_name": "ICT Trader",
      "signal": "bearish",
      "confidence": 0.78,
      "structure_bias": "bearish",
      "setup_bias": "bearish",
      "setup_score": 0.854,
      "setup_signals": [
        "현재가 $64,624.30가 최근 bearish CHoCH 레벨 $64,918.20 아래에 있어 하락 구조 재확인 구간",
        "현재가가 EMA20 $65,377.49 아래에 있으며, 단기 반등이 아직 구조적 수용으로 전환되지 않음",
        "이전일 고가 $64,568.00를 상향 돌파했지만 $64,918.20 CHoCH 레벨 위로 확장하지 못해 단기 buy-side liquidity raid 후 실패 가능성",
        "EQ $70,954.35 아래 discount 구간에 있으나, 활성 bullish OB와 미충족 bullish FVG가 없어 즉각적인 기관 매수 근거가 약함",
        "상단 $80,651.20-$82,828.70에 candidate bearish OB가 존재하며, 중장기 공급 구간으로 작용 가능"
      ],
      "reasoning": "확정 구조는 bearish로 판단한다. 최근 구조 이벤트가 $64,918.20 하방 bearish CHoCH이며, 현재가 $64,624.30는 해당 레벨 아래에 있어 시장이 아직 하락 구조를 무효화하지 못했다. 가격은 EMA20 $65,377.49, EMA120 $73,236.30, EMA240 $80,336.40 아래에 위치해 있고, EQ $70,954.35보다 낮은 discount 구간임에도 활성 bullish OB와 미충족 FVG가 전혀 없어 반등의 제도권 매수 근거가 부족하다. 단기적으로 이전일 고가 $64,568.00를 돌파했지만 $64,918.20 이상에서 수용되지 못하면 이는 buy-side liquidity를 건드린 뒤 재하락하는 bearish setup으로 해석된다.",
      "key_levels": {
        "support": [
          63220.0,
          62232.1,
          59080.0
        ],
        "resistance": [
          64918.2,
          65377.49,
          66956.7,
          70954.35,
          80651.2,
          82828.7
        ]
      },
      "time_horizon": "short/medium term",
      "invalidation_level": "$66,956.70",
      "risk_scenario": "반대 시나리오는 가격이 $64,918.20 bearish CHoCH 레벨을 회복하고 EMA20 $65,377.49 위에서 수용된 뒤 7일 고가 $66,956.70까지 돌파하는 경우이다. 이 경우 단기 하락 셋업은 실패하며, $70,954.35 EQ까지의 mean reversion 상승이 열릴 수 있다.",
      "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": 80651.2,
          "top": 82828.7,
          "quality": "candidate",
          "score": 0.519
        },
        "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": 70,
        "fvg_open_zones": [],
        "bos_choch_events": [
          "CHoCH_bearish",
          "BOS_bearish",
          "BOS_bullish",
          "CHoCH_bearish",
          "BOS_bullish",
          "CHoCH_bearish"
        ],
        "bos_choch_levels": [
          {
            "type": "CHoCH_bearish",
            "level": 108566.0
          },
          {
            "type": "BOS_bearish",
            "level": 101516.5
          },
          {
            "type": "BOS_bullish",
            "level": 94555.0
          },
          {
            "type": "CHoCH_bearish",
            "level": 84408.6
          },
          {
            "type": "BOS_bullish",
            "level": 75998.9
          },
          {
            "type": "CHoCH_bearish",
            "level": 64918.2
          }
        ],
        "bos_sequence": [
          "CHoCH_bullish",
          "CHoCH_bearish",
          "BOS_bearish",
          "BOS_bullish",
          "CHoCH_bearish",
          "BOS_bullish",
          "CHoCH_bearish"
        ],
        "consecutive_bull_bos": 0,
        "consecutive_bear_bos": 0,
        "recent_liq_sweeps": [],
        "recent_sweep_levels": [],
        "liquidity_resting": [],
        "current_zone": "discount",
        "eq_level": 70954.35,
        "range_high": 82828.7,
        "range_low": 59080.0,
        "bull_score": 5.8,
        "bear_score": 9.6,
        "setup_bias": "bearish",
        "setup_score": 0.854,
        "setup_signals": [
          "bearish CHoCH below $108,566.00",
          "bearish BOS below $101,516.50",
          "bearish CHoCH below $84,408.60",
          "bearish CHoCH below $64,918.20"
        ],
        "retracement_direction": "bearish",
        "current_retracement_pct": 23.1,
        "deepest_retracement_pct": 34.4,
        "previous_day_high": 64568.0,
        "previous_day_low": 63220.0,
        "broken_prev_high": true,
        "broken_prev_low": false,
        "sessions": {}
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.78,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.854,\n  \"setup_signals\": [\n    \"현재가 $64,624.30가 최근 bearish CHoCH 레벨 $64,918.20 아래에 있어 하락 구조 재확인 구간\",\n    \"현재가가 EMA20 $65,377.49 아래에 있으며, 단기 반등이 아직 구조적 수용으로 전환되지 않음\",\n    \"이전일 고가 $64,568.00를 상향 돌파했지만 $64,918.20 CHoCH 레벨 위로 확장하지 못해 단기 buy-side liquidity raid 후 실패 가능성\",\n    \"EQ $70,954.35 아래 discount 구간에 있으나, 활성 bullish OB와 미충족 bullish FVG가 없어 즉각적인 기관 매수 근거가 약함\",\n    \"상단 $80,651.20-$82,828.70에 candidate bearish OB가 존재하며, 중장기 공급 구간으로 작용 가능\"\n  ],\n  \"reasoning\": \"확정 구조는 bearish로 판단한다. 최근 구조 이벤트가 $64,918.20 하방 bearish CHoCH이며, 현재가 $64,624.30는 해당 레벨 아래에 있어 시장이 아직 하락 구조를 무효화하지 못했다. 가격은 EMA20 $65,377.49, EMA120 $73,236.30, EMA240 $80,336.40 아래에 위치해 있고, EQ $70,954.35보다 낮은 discount 구간임에도 활성 bullish OB와 미충족 FVG가 전혀 없어 반등의 제도권 매수 근거가 부족하다. 단기적으로 이전일 고가 $64,568.00를 돌파했지만 $64,918.20 이상에서 수용되지 못하면 이는 buy-side liquidity를 건드린 뒤 재하락하는 bearish setup으로 해석된다.\",\n  \"key_levels\": {\n    \"support\": [\n      63220.0,\n      62232.1,\n      59080.0\n    ],\n    \"resistance\": [\n      64918.2,\n      65377.49,\n      66956.7,\n      70954.35,\n      80651.2,\n      82828.7\n    ]\n  },\n  \"time_horizon\": \"short/medium term\",\n  \"invalidation_level\": \"$66,956.70\",\n  \"risk_scenario\": \"반대 시나리오는 가격이 $64,918.20 bearish CHoCH 레벨을 회복하고 EMA20 $65,377.49 위에서 수용된 뒤 7일 고가 $66,956.70까지 돌파하는 경우이다. 이 경우 단기 하락 셋업은 실패하며, $70,954.35 EQ까지의 mean reversion 상승이 열릴 수 있다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "harmonic": {
      "agent_id": "harmonic",
      "display_name": "Harmonic Specialist",
      "signal": "neutral",
      "confidence": 0.42,
      "structure_bias": "neutral",
      "setup_bias": "bullish",
      "setup_score": 0.46,
      "setup_signals": [
        "현재가 $64,624.30가 최근 핵심 PRZ 중심 $64,533.33와 거의 동일하며, price_to_prz가 -0.14%로 PRZ 내부/근접 상태",
        "가장 가까운 PRZ 범위 $63,231.30-$65,835.35 안에서 가격이 거래 중이지만, directional_influence_prz_count=0 및 confirmed_reaction_prz_count=0으로 구조 전환 확인은 없음",
        "엄격 등급 고점수 bullish forming Gartley: D 예상가 $66,556.49, PRZ $65,999.53-$67,113.44, score 0.900, XAB 0.6129로 Gartley 0.618 조건에 근접, ABCD/BC_EXT/XAD 3중 컨플루언스",
        "현재 활성권에는 bullish Butterfly/Gartley 후보 PRZ가 $62,684.52-$64,464.12, $63,244.56-$65,322.83, $64,324.68-$66,759.80에 중첩되어 단기 반등 후보 영역 형성",
        "다만 주요 활성 패턴 상당수가 low quality 또는 candidate-tier이고 PRZ 폭이 2.799%-3.715%로 넓어, 사전 확인 단계에서는 약한 반전 후보에 그침"
      ],
      "reasoning": "하모닉 관점에서 BTC는 현재 $64,624.30로 nearest PRZ $64,533.33 및 PRZ 범위 $63,231.30-$65,835.35 안에 있어 bullish 반응 후보 구간에 위치한다. 가장 좋은 패턴은 bullish forming Gartley이며 score 0.900, high quality, strict 등급이고 PRZ $65,999.53-$67,113.44는 ABCD/BC_EXT/XAD 3개 Fib family가 겹치는 고컨플루언스 구간이다. 그러나 해당 패턴은 아직 forming이고 confirmed_reaction=false이며, 전체 지표에서도 council_relevant_prz_count=0, directional_influence_prz_count=0, actionable_patterns_list=[]로 표시되어 하모닉만으로 방향을 확정할 수 없다. 따라서 구조_bias는 중립으로 유지하되, 현재가가 여러 bullish PRZ 클러스터 안에 있는 점 때문에 setup_bias는 제한적 bullish로 본다. 반등이 확인될 경우 TP 후보는 Gartley 기준 $67,749-$67,871, $68,608-$68,684, 그리고 $69,999 구조 유동성으로 설정할 수 있다.",
      "key_levels": {
        "support": [
          64533.33,
          63231.3,
          62684.52,
          62232.1,
          60477.7
        ],
        "resistance": [
          65377.49,
          65835.35,
          65999.53,
          66956.7,
          67113.44,
          67871.53,
          68683.96,
          69999.0
        ]
      },
      "time_horizon": "medium term",
      "invalidation_level": "$62,232.10",
      "risk_scenario": "반대 시나리오는 $64,533 부근 PRZ 방어 실패 후 $63,231.30 하단을 이탈하고 7일 저점 $62,232.10까지 밀리는 경우이다. 이 경우 현재의 bullish PRZ 반응 셋업은 실패로 간주되며, 다음 하모닉 반응 후보는 Butterfly watch PRZ $60,477.70-$62,283.95 및 D 예상가 $61,380.83로 내려간다. 반대로 $65,835.35와 $67,113.44를 회복·안착하면 forming Gartley PRZ가 반응 확인 단계로 전환될 수 있고, $67,871-$68,684 TP 구간이 유효해진다.",
      "data_quality": "medium",
      "metrics": {
        "patterns_found": 184,
        "completed_patterns_found": 73,
        "forming_d_prz_found": 111,
        "swing_orders_scanned": [
          3,
          5,
          8
        ],
        "swing_search_window": 30,
        "multiscale_swings_scanned": 61,
        "swing_highs_scanned": 29,
        "swing_lows_scanned": 32,
        "timeframe": "1d",
        "prz_active_threshold_pct": 1.0,
        "prz_nearby_threshold_pct": 2.0,
        "prz_watch_threshold_pct": 4.0,
        "prz_max_width_pct": 1.8,
        "quality_counts": {
          "high": 3,
          "medium": 42,
          "low": 139
        },
        "prz_status_counts": {
          "active": 22,
          "nearby": 4,
          "watch": 11,
          "far": 147,
          "forming": 89
        },
        "high_confluence_prz_count": 20,
        "strict_patterns_found": 43,
        "candidate_patterns_found": 141,
        "active_patterns_at_prz": 22,
        "nearby_patterns": 4,
        "all_patterns": [
          "gartley",
          "butterfly",
          "butterfly",
          "crab",
          "gartley",
          "butterfly",
          "butterfly",
          "gartley",
          "gartley",
          "gartley",
          "butterfly",
          "butterfly",
          "butterfly",
          "gartley",
          "bat",
          "gartley",
          "shark",
          "shark",
          "shark",
          "shark",
          "bat",
          "bat",
          "crab",
          "crab",
          "crab",
          "bat",
          "crab",
          "gartley",
          "shark",
          "bat",
          "butterfly",
          "bat",
          "shark",
          "bat",
          "gartley",
          "shark",
          "crab",
          "gartley",
          "butterfly",
          "butterfly",
          "bat",
          "butterfly",
          "bat",
          "shark",
          "shark",
          "gartley",
          "crab",
          "butterfly",
          "crab",
          "bat",
          "butterfly",
          "bat",
          "butterfly",
          "butterfly",
          "crab",
          "butterfly",
          "shark",
          "crab",
          "crab",
          "crab",
          "crab",
          "shark",
          "crab",
          "bat",
          "butterfly",
          "crab",
          "crab",
          "shark",
          "crab",
          "gartley",
          "butterfly",
          "butterfly",
          "butterfly",
          "crab",
          "shark",
          "shark",
          "crab",
          "shark",
          "crab",
          "shark",
          "shark",
          "crab",
          "crab",
          "butterfly",
          "crab",
          "crab",
          "bat",
          "butterfly",
          "shark",
          "bat",
          "butterfly",
          "crab",
          "shark",
          "bat",
          "butterfly",
          "gartley",
          "crab",
          "crab",
          "crab",
          "shark",
          "butterfly",
          "bat",
          "shark",
          "crab",
          "crab",
          "shark",
          "butterfly",
          "shark",
          "butterfly",
          "gartley",
          "shark",
          "crab",
          "crab",
          "shark",
          "butterfly",
          "bat",
          "crab",
          "crab",
          "crab",
          "butterfly",
          "butterfly",
          "butterfly",
          "bat",
          "bat",
          "butterfly",
          "butterfly",
          "bat",
          "butterfly",
          "crab",
          "shark",
          "butterfly",
          "shark",
          "gartley",
          "gartley",
          "crab",
          "crab",
          "shark",
          "bat",
          "shark",
          "bat",
          "crab",
          "gartley",
          "crab",
          "butterfly",
          "shark",
          "crab",
          "butterfly",
          "crab",
          "crab",
          "crab",
          "crab",
          "butterfly",
          "butterfly",
          "crab",
          "bat",
          "gartley",
          "crab",
          "crab",
          "crab",
          "butterfly",
          "bat",
          "crab",
          "bat",
          "butterfly",
          "bat",
          "butterfly",
          "butterfly",
          "gartley",
          "shark",
          "shark",
          "shark",
          "crab",
          "butterfly",
          "crab",
          "crab",
          "crab",
          "shark",
          "gartley",
          "crab",
          "butterfly",
          "shark",
          "shark",
          "crab",
          "crab"
        ],
        "all_signals": [
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish"
        ],
        "best_pattern": "gartley",
        "best_pattern_quality": "strict",
        "best_quality": "high",
        "best_pattern_score": 0.9,
        "best_completion_status": "forming",
        "nearest_pattern": "gartley",
        "nearest_prz": 64533.33,
        "price_to_prz": -0.14,
        "prz_range": [
          63231.3,
          65835.35
        ],
        "council_relevant_prz_count": 0,
        "directional_influence_prz_count": 0,
        "confirmed_reaction_prz_count": 0,
        "validated_harmonic_tp_count": 0,
        "pattern_candidates": [
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.9,
            "ratio_score": 0.97,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 66556.49,
            "prz_range": [
              65999.53,
              67113.44
            ],
            "prz_width_pct": 1.674,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 2.99,
            "price_to_prz_pct_raw": 2.9899,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 66556.49,
              "a_price": 69999.0,
              "tp1_ad_382": 67871.53,
              "tp2_ad_618": 68683.96,
              "tp3_a_or_structure_liquidity": 69999.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6129,
              "ABC": 0.7366
            },
            "x_price": 65595.7,
            "x_idx": 176,
            "x_order": 3,
            "a_price": 69999.0,
            "a_idx": 182,
            "a_order": 3,
            "b_price": 67300.0,
            "b_idx": 207,
            "b_order": 3,
            "c_price": 69288.0,
            "c_idx": 217,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "low",
            "pattern_score": 0.828,
            "ratio_score": 0.776,
            "prz_score": 0.87,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63574.32,
            "prz_range": [
              62684.52,
              64464.12
            ],
            "prz_width_pct": 2.799,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.62,
            "price_to_prz_pct_raw": -1.6247,
            "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": 63574.32,
              "a_price": 75998.9,
              "tp1_ad_382": 68320.51,
              "tp2_ad_618": 71252.71,
              "tp3_a_or_structure_liquidity": 75998.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.8341,
              "ABC": 0.5403
            },
            "x_price": 65569.2,
            "x_idx": 193,
            "x_order": 5,
            "a_price": 75998.9,
            "a_idx": 202,
            "a_order": 8,
            "b_price": 67300.0,
            "b_idx": 207,
            "b_order": 3,
            "c_price": 71999.9,
            "c_idx": 210,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.643,
            "ratio_score": 0.452,
            "prz_score": 0.939,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 65676.1,
            "prz_range": [
              65604.43,
              67113.23
            ],
            "prz_width_pct": 2.274,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 2.68,
            "price_to_prz_pct_raw": 2.684,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "post_D_close_progress"
              ],
              "reaction_score": 0.9,
              "reaction_detail": {
                "reaction_score": 0.9,
                "reaction_move_ratio_ad": 2.39,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 66358.83,
              "a_price": 69999.0,
              "tp1_ad_382": 67749.37,
              "tp2_ad_618": 68608.46,
              "tp3_a_or_structure_liquidity": 69999.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6129,
              "ABC": 0.7366,
              "BCD": 1.8169,
              "XAD": 0.9817
            },
            "x_price": 65595.7,
            "x_idx": 176,
            "x_order": 3,
            "a_price": 69999.0,
            "a_idx": 182,
            "a_order": 3,
            "b_price": 67300.0,
            "b_idx": 207,
            "b_order": 3,
            "c_price": 69288.0,
            "c_idx": 217,
            "c_order": 3,
            "d_idx": 218
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.865,
            "ratio_score": 0.942,
            "prz_score": 0.814,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 64283.69,
            "prz_range": [
              63244.56,
              65322.83
            ],
            "prz_width_pct": 3.233,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.53,
            "price_to_prz_pct_raw": -0.5271,
            "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": 64283.69,
              "a_price": 74046.5,
              "tp1_ad_382": 68013.08,
              "tp2_ad_618": 70317.11,
              "tp3_a_or_structure_liquidity": 74046.5,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7983,
              "ABC": 0.6966
            },
            "x_price": 65595.7,
            "x_idx": 176,
            "x_order": 3,
            "a_price": 74046.5,
            "a_idx": 189,
            "a_order": 8,
            "b_price": 67300.0,
            "b_idx": 207,
            "b_order": 3,
            "c_price": 71999.9,
            "c_idx": 210,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.841,
            "ratio_score": 0.95,
            "prz_score": 0.752,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 65542.24,
            "prz_range": [
              64324.68,
              66759.8
            ],
            "prz_width_pct": 3.715,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.42,
            "price_to_prz_pct_raw": 1.4204,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 65542.24,
              "a_price": 74046.5,
              "tp1_ad_382": 68790.87,
              "tp2_ad_618": 70797.87,
              "tp3_a_or_structure_liquidity": 74046.5,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6096,
              "ABC": 0.6966
            },
            "x_price": 62979.5,
            "x_idx": 185,
            "x_order": 3,
            "a_price": 74046.5,
            "a_idx": 189,
            "a_order": 8,
            "b_price": 67300.0,
            "b_idx": 207,
            "b_order": 3,
            "c_price": 71999.9,
            "c_idx": 210,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.834,
            "ratio_score": 0.871,
            "prz_score": 0.8,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 64306.25,
            "prz_range": [
              63231.55,
              65380.95
            ],
            "prz_width_pct": 3.342,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.49,
            "price_to_prz_pct_raw": -0.4922,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 64306.25,
              "a_price": 75998.9,
              "tp1_ad_382": 68772.84,
              "tp2_ad_618": 71532.31,
              "tp3_a_or_structure_liquidity": 75998.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6398,
              "ABC": 0.5403
            },
            "x_price": 62401.7,
            "x_idx": 181,
            "x_order": 8,
            "a_price": 75998.9,
            "a_idx": 202,
            "a_order": 8,
            "b_price": 67300.0,
            "b_idx": 207,
            "b_order": 3,
            "c_price": 71999.9,
            "c_idx": 210,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.828,
            "ratio_score": 0.996,
            "prz_score": 0.852,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": false,
            "d_price": 61380.83,
            "prz_range": [
              60477.7,
              62283.95
            ],
            "prz_width_pct": 2.943,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -5.02,
            "price_to_prz_pct_raw": -5.019,
            "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": 61380.83,
              "a_price": 71999.9,
              "tp1_ad_382": 65437.31,
              "tp2_ad_618": 67943.41,
              "tp3_a_or_structure_liquidity": 71999.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7851,
              "ABC": 0.6171
            },
            "x_price": 62979.5,
            "x_idx": 185,
            "x_order": 3,
            "a_price": 71999.9,
            "a_idx": 210,
            "a_order": 5,
            "b_price": 64918.2,
            "b_idx": 214,
            "b_order": 8,
            "c_price": 69288.0,
            "c_idx": 217,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.819,
            "ratio_score": 0.873,
            "prz_score": 0.8,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 64918.2,
            "prz_range": [
              63231.55,
              65380.95
            ],
            "prz_width_pct": 3.342,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.49,
            "price_to_prz_pct_raw": -0.4922,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 0.77,
                "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": "bullish",
              "source": "gartley",
              "d_price": 64306.25,
              "a_price": 75998.9,
              "tp1_ad_382": 68772.84,
              "tp2_ad_618": 71532.31,
              "tp3_a_or_structure_liquidity": 75998.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6398,
              "ABC": 0.5403,
              "BCD": 1.5068,
              "XAD": 0.8149
            },
            "x_price": 62401.7,
            "x_idx": 181,
            "x_order": 8,
            "a_price": 75998.9,
            "a_idx": 202,
            "a_order": 8,
            "b_price": 67300.0,
            "b_idx": 207,
            "b_order": 3,
            "c_price": 71999.9,
            "c_idx": 210,
            "c_order": 5,
            "d_idx": 214
          }
        ],
        "council_relevant_prz": [],
        "report_detail_candidates": [
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.9,
            "ratio_score": 0.97,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 66556.49,
            "prz_range": [
              65999.53,
              67113.44
            ],
            "prz_width_pct": 1.674,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 2.99,
            "price_to_prz_pct_raw": 2.9899,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 66556.49,
              "a_price": 69999.0,
              "tp1_ad_382": 67871.53,
              "tp2_ad_618": 68683.96,
              "tp3_a_or_structure_liquidity": 69999.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6129,
              "ABC": 0.7366
            },
            "x_price": 65595.7,
            "x_idx": 176,
            "x_order": 3,
            "a_price": 69999.0,
            "a_idx": 182,
            "a_order": 3,
            "b_price": 67300.0,
            "b_idx": 207,
            "b_order": 3,
            "c_price": 69288.0,
            "c_idx": 217,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "low",
            "pattern_score": 0.828,
            "ratio_score": 0.776,
            "prz_score": 0.87,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63574.32,
            "prz_range": [
              62684.52,
              64464.12
            ],
            "prz_width_pct": 2.799,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.62,
            "price_to_prz_pct_raw": -1.6247,
            "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": 63574.32,
              "a_price": 75998.9,
              "tp1_ad_382": 68320.51,
              "tp2_ad_618": 71252.71,
              "tp3_a_or_structure_liquidity": 75998.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.8341,
              "ABC": 0.5403
            },
            "x_price": 65569.2,
            "x_idx": 193,
            "x_order": 5,
            "a_price": 75998.9,
            "a_idx": 202,
            "a_order": 8,
            "b_price": 67300.0,
            "b_idx": 207,
            "b_order": 3,
            "c_price": 71999.9,
            "c_idx": 210,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.643,
            "ratio_score": 0.452,
            "prz_score": 0.939,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 65676.1,
            "prz_range": [
              65604.43,
              67113.23
            ],
            "prz_width_pct": 2.274,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 2.68,
            "price_to_prz_pct_raw": 2.684,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "post_D_close_progress"
              ],
              "reaction_score": 0.9,
              "reaction_detail": {
                "reaction_score": 0.9,
                "reaction_move_ratio_ad": 2.39,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 66358.83,
              "a_price": 69999.0,
              "tp1_ad_382": 67749.37,
              "tp2_ad_618": 68608.46,
              "tp3_a_or_structure_liquidity": 69999.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6129,
              "ABC": 0.7366,
              "BCD": 1.8169,
              "XAD": 0.9817
            },
            "x_price": 65595.7,
            "x_idx": 176,
            "x_order": 3,
            "a_price": 69999.0,
            "a_idx": 182,
            "a_order": 3,
            "b_price": 67300.0,
            "b_idx": 207,
            "b_order": 3,
            "c_price": 69288.0,
            "c_idx": 217,
            "c_order": 3,
            "d_idx": 218
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.865,
            "ratio_score": 0.942,
            "prz_score": 0.814,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 64283.69,
            "prz_range": [
              63244.56,
              65322.83
            ],
            "prz_width_pct": 3.233,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.53,
            "price_to_prz_pct_raw": -0.5271,
            "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": 64283.69,
              "a_price": 74046.5,
              "tp1_ad_382": 68013.08,
              "tp2_ad_618": 70317.11,
              "tp3_a_or_structure_liquidity": 74046.5,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7983,
              "ABC": 0.6966
            },
            "x_price": 65595.7,
            "x_idx": 176,
            "x_order": 3,
            "a_price": 74046.5,
            "a_idx": 189,
            "a_order": 8,
            "b_price": 67300.0,
            "b_idx": 207,
            "b_order": 3,
            "c_price": 71999.9,
            "c_idx": 210,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.841,
            "ratio_score": 0.95,
            "prz_score": 0.752,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 65542.24,
            "prz_range": [
              64324.68,
              66759.8
            ],
            "prz_width_pct": 3.715,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.42,
            "price_to_prz_pct_raw": 1.4204,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 65542.24,
              "a_price": 74046.5,
              "tp1_ad_382": 68790.87,
              "tp2_ad_618": 70797.87,
              "tp3_a_or_structure_liquidity": 74046.5,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6096,
              "ABC": 0.6966
            },
            "x_price": 62979.5,
            "x_idx": 185,
            "x_order": 3,
            "a_price": 74046.5,
            "a_idx": 189,
            "a_order": 8,
            "b_price": 67300.0,
            "b_idx": 207,
            "b_order": 3,
            "c_price": 71999.9,
            "c_idx": 210,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.834,
            "ratio_score": 0.871,
            "prz_score": 0.8,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 64306.25,
            "prz_range": [
              63231.55,
              65380.95
            ],
            "prz_width_pct": 3.342,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.49,
            "price_to_prz_pct_raw": -0.4922,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 64306.25,
              "a_price": 75998.9,
              "tp1_ad_382": 68772.84,
              "tp2_ad_618": 71532.31,
              "tp3_a_or_structure_liquidity": 75998.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6398,
              "ABC": 0.5403
            },
            "x_price": 62401.7,
            "x_idx": 181,
            "x_order": 8,
            "a_price": 75998.9,
            "a_idx": 202,
            "a_order": 8,
            "b_price": 67300.0,
            "b_idx": 207,
            "b_order": 3,
            "c_price": 71999.9,
            "c_idx": 210,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.828,
            "ratio_score": 0.996,
            "prz_score": 0.852,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": false,
            "d_price": 61380.83,
            "prz_range": [
              60477.7,
              62283.95
            ],
            "prz_width_pct": 2.943,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -5.02,
            "price_to_prz_pct_raw": -5.019,
            "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": 61380.83,
              "a_price": 71999.9,
              "tp1_ad_382": 65437.31,
              "tp2_ad_618": 67943.41,
              "tp3_a_or_structure_liquidity": 71999.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7851,
              "ABC": 0.6171
            },
            "x_price": 62979.5,
            "x_idx": 185,
            "x_order": 3,
            "a_price": 71999.9,
            "a_idx": 210,
            "a_order": 5,
            "b_price": 64918.2,
            "b_idx": 214,
            "b_order": 8,
            "c_price": 69288.0,
            "c_idx": 217,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.819,
            "ratio_score": 0.873,
            "prz_score": 0.8,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 64918.2,
            "prz_range": [
              63231.55,
              65380.95
            ],
            "prz_width_pct": 3.342,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.49,
            "price_to_prz_pct_raw": -0.4922,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 0.77,
                "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": "bullish",
              "source": "gartley",
              "d_price": 64306.25,
              "a_price": 75998.9,
              "tp1_ad_382": 68772.84,
              "tp2_ad_618": 71532.31,
              "tp3_a_or_structure_liquidity": 75998.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6398,
              "ABC": 0.5403,
              "BCD": 1.5068,
              "XAD": 0.8149
            },
            "x_price": 62401.7,
            "x_idx": 181,
            "x_order": 8,
            "a_price": 75998.9,
            "a_idx": 202,
            "a_order": 8,
            "b_price": 67300.0,
            "b_idx": 207,
            "b_order": 3,
            "c_price": 71999.9,
            "c_idx": 210,
            "c_order": 5,
            "d_idx": 214
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.816,
            "ratio_score": 0.905,
            "prz_score": 0.752,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 65676.1,
            "prz_range": [
              64324.68,
              66759.8
            ],
            "prz_width_pct": 3.715,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.42,
            "price_to_prz_pct_raw": 1.4204,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 1.234,
                "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": "bullish",
              "source": "gartley",
              "d_price": 65542.24,
              "a_price": 74046.5,
              "tp1_ad_382": 68790.87,
              "tp2_ad_618": 70797.87,
              "tp3_a_or_structure_liquidity": 74046.5,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6096,
              "ABC": 0.6966,
              "BCD": 1.3455,
              "XAD": 0.7563
            },
            "x_price": 62979.5,
            "x_idx": 185,
            "x_order": 3,
            "a_price": 74046.5,
            "a_idx": 189,
            "a_order": 8,
            "b_price": 67300.0,
            "b_idx": 207,
            "b_order": 3,
            "c_price": 71999.9,
            "c_idx": 210,
            "c_order": 5,
            "d_idx": 218
          },
          {
            "pattern": "shark",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.804,
            "ratio_score": 0.977,
            "prz_score": 0.664,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 65055.57,
            "prz_range": [
              64170.88,
              65940.26
            ],
            "prz_width_pct": 2.72,
            "prz_confluence_count": 2,
            "prz_fib_families": [
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.67,
            "price_to_prz_pct_raw": 0.6673,
            "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": 65055.57,
              "a_price": 74046.5,
              "tp1_ad_382": 68490.1,
              "tp2_ad_618": 70611.96,
              "tp3_a_or_structure_liquidity": 74046.5,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6096,
              "ABC": 1.6305
            },
            "x_price": 62979.5,
            "x_idx": 185,
            "x_order": 3,
            "a_price": 74046.5,
            "a_idx": 189,
            "a_order": 8,
            "b_price": 67300.0,
            "b_idx": 207,
            "b_order": 3,
            "c_price": 78300.0,
            "c_idx": 233,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "shark",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.799,
            "ratio_score": 1.0,
            "prz_score": 0.678,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 66547.42,
            "prz_range": [
              65121.96,
              67972.87
            ],
            "prz_width_pct": 4.284,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 2.98,
            "price_to_prz_pct_raw": 2.9758,
            "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": 66547.42,
              "a_price": 68687.0,
              "tp1_ad_382": 67364.74,
              "tp2_ad_618": 67869.68,
              "tp3_a_or_structure_liquidity": 68687.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4487,
              "ABC": 1.4333
            },
            "x_price": 65595.7,
            "x_idx": 176,
            "x_order": 3,
            "a_price": 68687.0,
            "a_idx": 178,
            "a_order": 3,
            "b_price": 67300.0,
            "b_idx": 207,
            "b_order": 3,
            "c_price": 69288.0,
            "c_idx": 217,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.78,
            "ratio_score": 1.0,
            "prz_score": 0.732,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": false,
            "d_price": 68206.0,
            "prz_range": [
              66886.33,
              69525.66
            ],
            "prz_width_pct": 3.87,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 5.54,
            "price_to_prz_pct_raw": 5.5423,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 68206.0,
              "a_price": 82828.7,
              "tp1_ad_382": 73791.87,
              "tp2_ad_618": 77242.83,
              "tp3_a_or_structure_liquidity": 82828.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4816,
              "ABC": 0.4491
            },
            "x_price": 64918.2,
            "x_idx": 214,
            "x_order": 8,
            "a_price": 82828.7,
            "a_idx": 252,
            "a_order": 8,
            "b_price": 74203.6,
            "b_idx": 269,
            "b_order": 3,
            "c_price": 78077.1,
            "c_idx": 272,
            "c_order": 3,
            "d_idx": null
          }
        ],
        "actionable_patterns_list": [],
        "tp_ladder": [],
        "validated_tp_ladder": [],
        "harmonic_governance": {
          "role": "PRZ reaction + TP ladder confluence, not standalone path engine",
          "pre_confirmation_weight_range": [
            0.25,
            0.35
          ],
          "post_confirmation_vote_weight_range": [
            0.5,
            0.6
          ],
          "standalone_path_override_allowed": false,
          "opposes_core_path_policy": "branch/reversal-risk/reaction-zone unless lower-TF structure and derivatives also confirm",
          "aligns_with_core_path_policy": "modest confidence lift plus strong TP ladder influence"
        },
        "execution_readiness": "early"
      },
      "raw_llm_response": "{\n  \"signal\": \"neutral\",\n  \"confidence\": 0.42,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.46,\n  \"setup_signals\": [\n    \"현재가 $64,624.30가 최근 핵심 PRZ 중심 $64,533.33와 거의 동일하며, price_to_prz가 -0.14%로 PRZ 내부/근접 상태\",\n    \"가장 가까운 PRZ 범위 $63,231.30-$65,835.35 안에서 가격이 거래 중이지만, directional_influence_prz_count=0 및 confirmed_reaction_prz_count=0으로 구조 전환 확인은 없음\",\n    \"엄격 등급 고점수 bullish forming Gartley: D 예상가 $66,556.49, PRZ $65,999.53-$67,113.44, score 0.900, XAB 0.6129로 Gartley 0.618 조건에 근접, ABCD/BC_EXT/XAD 3중 컨플루언스\",\n    \"현재 활성권에는 bullish Butterfly/Gartley 후보 PRZ가 $62,684.52-$64,464.12, $63,244.56-$65,322.83, $64,324.68-$66,759.80에 중첩되어 단기 반등 후보 영역 형성\",\n    \"다만 주요 활성 패턴 상당수가 low quality 또는 candidate-tier이고 PRZ 폭이 2.799%-3.715%로 넓어, 사전 확인 단계에서는 약한 반전 후보에 그침\"\n  ],\n  \"reasoning\": \"하모닉 관점에서 BTC는 현재 $64,624.30로 nearest PRZ $64,533.33 및 PRZ 범위 $63,231.30-$65,835.35 안에 있어 bullish 반응 후보 구간에 위치한다. 가장 좋은 패턴은 bullish forming Gartley이며 score 0.900, high quality, strict 등급이고 PRZ $65,999.53-$67,113.44는 ABCD/BC_EXT/XAD 3개 Fib family가 겹치는 고컨플루언스 구간이다. 그러나 해당 패턴은 아직 forming이고 confirmed_reaction=false이며, 전체 지표에서도 council_relevant_prz_count=0, directional_influence_prz_count=0, actionable_patterns_list=[]로 표시되어 하모닉만으로 방향을 확정할 수 없다. 따라서 구조_bias는 중립으로 유지하되, 현재가가 여러 bullish PRZ 클러스터 안에 있는 점 때문에 setup_bias는 제한적 bullish로 본다. 반등이 확인될 경우 TP 후보는 Gartley 기준 $67,749-$67,871, $68,608-$68,684, 그리고 $69,999 구조 유동성으로 설정할 수 있다.\",\n  \"key_levels\": {\n    \"support\": [\n      64533.33,\n      63231.3,\n      62684.52,\n      62232.1,\n      60477.7\n    ],\n    \"resistance\": [\n      65377.49,\n      65835.35,\n      65999.53,\n      66956.7,\n      67113.44,\n      67871.53,\n      68683.96,\n      69999.0\n    ]\n  },\n  \"time_horizon\": \"medium term\",\n  \"invalidation_level\": \"$62,232.10\",\n  \"risk_scenario\": \"반대 시나리오는 $64,533 부근 PRZ 방어 실패 후 $63,231.30 하단을 이탈하고 7일 저점 $62,232.10까지 밀리는 경우이다. 이 경우 현재의 bullish PRZ 반응 셋업은 실패로 간주되며, 다음 하모닉 반응 후보는 Butterfly watch PRZ $60,477.70-$62,283.95 및 D 예상가 $61,380.83로 내려간다. 반대로 $65,835.35와 $67,113.44를 회복·안착하면 forming Gartley PRZ가 반응 확인 단계로 전환될 수 있고, $67,871-$68,684 TP 구간이 유효해진다.\",\n  \"data_quality\": \"medium\"\n}"
    }
  },
  "chairman_synthesis": {
    "overall_signal": "neutral",
    "overall_confidence": 0.56,
    "execution_setup": {
      "setup_bias": "bearish",
      "setup_strength": 0.57,
      "active_setups": [
        "현재가 $64,624.30이 최근 bearish CHoCH 레벨 $64,918.20 아래에 있어 단기 구조 회복이 아직 확인되지 않음",
        "현재가가 EMA20 $65,377.49 아래에 있으며, Fibonacci 0.236 저항 $65,326.01과도 겹쳐 $65.3k-$65.4k가 단기 수용 확인 구간",
        "이전일 고가 $64,568.00을 상향 돌파했지만 $64,918.20 위로 확장하지 못해 buy-side liquidity raid 후 실패 조건이 존재",
        "Fibonacci 기준 현재가는 0.382 되돌림 $64,132.40 위에 있으나 EQ $63,167.70 위의 프리미엄 영역에 있어 추가 지지 테스트 리스크가 남아 있음",
        "반대편으로는 CVD divergence 0.850, CVD change +$1,896.93, OI 24시간 +2.7950%가 동반되어 $65,400-$66,100 상방 청산 유동성 회수 조건도 존재",
        "Wyckoff 기준 Spring $59,080.00 이후 SOS $67,255.40, LPS 후보 $62,232.10 방어 구조가 유지되고 있어 하락 셋업은 축적 구조 내부의 단기 압력으로 해석해야 함"
      ],
      "setup_vs_structure": "구조 레벨에서는 Wyckoff 축적 Phase D 후보와 ICT/캔들/파생의 단기 bearish 구조가 충돌해 전체 구조 신호는 중립이다. 다만 실행 셋업은 $64,918.20-$65,377.49 회복 전까지 bearish 쪽이 약간 우세하며, 이는 레짐 전환 확정이 아니라 축적 후보 내부의 단기 실패·재테스트 리스크로 본다."
    },
    "signal_breakdown": {
      "bullish_count": 2,
      "bearish_count": 2,
      "neutral_count": 2
    },
    "key_levels": {
      "support": [
        64132.4,
        63220.0,
        62232.1,
        59080.0
      ],
      "resistance": [
        64918.2,
        65377.49,
        65745.0,
        67255.4,
        71690.0
      ]
    },
    "confluences": [
      "EMA20 $65,377.49는 Fibonacci, Derivatives, Candlestick, Wyckoff, ICT, Harmonic 모두가 단기 핵심 저항 또는 수용 확인선으로 언급한 최상위 공통 레벨이다.",
      "ICT의 최근 bearish CHoCH $64,918.20은 Wyckoff의 과거 ST $64,918.20 및 Harmonic completed Gartley D $64,918.20과 겹쳐 단기 구조 판정선으로 중요도가 높다.",
      "Wyckoff LPS 후보 $62,232.10은 Candlestick 7일 저점 $62,232.10, ICT 주요 지지 $62,232.10, Harmonic 지지군과 일치해 축적 후보 방어선으로 강한 공통 지지를 형성한다.",
      "Fibonacci 0.382 지지 $64,132.40은 Harmonic active PRZ 하단권 $63,231-$65,835 및 $64,170-$65,940대 PRZ 후보와 겹쳐 현재가 주변이 반응 구간임을 시사한다.",
      "Wyckoff SOS $67,255.40은 Fibonacci 스윙 고점·확장 기준 $67,255.40과 동일하며, Derivatives 상방 청산 레벨 $67,100과도 근접해 상단 구조 확인 구간으로 중첩된다.",
      "Spring 저점 $59,080.00은 Wyckoff Spring, ICT range low, Fibonacci 스윙 저점으로 동시에 식별되어 현재 축적 후보의 최종 구조 무효화 레벨이다."
    ],
    "conflicts": [
      "Wyckoff는 SC $59,800 → AR $71,690 → ST $64,918.20 → Spring $59,080 → SOS $67,255.40 → LPS $62,232.10의 Phase D 축적 후보를 근거로 구조를 bullish로 본다.",
      "반면 ICT는 최근 bearish CHoCH $64,918.20 아래에 가격이 머물고 있고 활성 bullish OB·미충족 bullish FVG가 없다는 점을 근거로 구조를 bearish로 판정한다.",
      "Candlestick과 Derivatives의 구조 해석은 EMA20 $65,377.49, EMA120 $73,236.30, EMA240 $80,336.40 아래라는 점에서 bearish이나, Derivatives의 실행 셋업은 CVD/OI와 상방 청산 유동성 때문에 bullish로 갈라진다.",
      "Harmonic은 현재가가 PRZ $63,231.30-$65,835.35 내부에 있어 반응 후보라고 보지만, council-relevant actionable pattern이 없어 단독으로 구조 방향을 뒤집을 수 없다.",
      "Fibonacci는 구조적으로는 중립이나, 현재가가 EQ $63,167.70 위의 프리미엄 영역이면서 $65,326.01-$65,377.49 회복에 실패한 상태라 실행 관점에서는 약한 bearish 압력을 제시한다."
    ],
    "executive_summary": "BTC 1일 구조는 단일 방향으로 확정되기보다, Wyckoff의 축적 Phase D 후보와 ICT·캔들 기반의 단기 bearish 구조가 충돌하는 중립 레짐으로 진단된다. 현재 위치는 Spring $59,080.00 이후 SOS $67,255.40을 만들고 LPS 후보 $62,232.10을 방어한 상태이나, 가격이 아직 bearish CHoCH $64,918.20, EMA20 $65,377.49, Wyckoff EQ $65,745.00을 회복하지 못해 축적 구조의 상단 수용은 미확인이다. 핵심 구조 지지 confluence는 $62,232.10이며, 핵심 저항 confluence는 $64,918.20-$65,377.49와 $67,255.40이다. 구조 리스크는 $64,918.20 위 수용 실패 시 buy-side liquidity raid 후 실패 조건, $62,232.10 이탈 시 LPS 실패 조건, $59,080.00 이탈 시 Spring 기반 축적 해석 무효화로 정리된다.",
    "raw_llm_response": "{\n  \"overall_signal\": \"neutral\",\n  \"overall_confidence\": 0.56,\n  \"execution_setup\": {\n    \"setup_bias\": \"bearish\",\n    \"setup_strength\": 0.57,\n    \"active_setups\": [\n      \"현재가 $64,624.30이 최근 bearish CHoCH 레벨 $64,918.20 아래에 있어 단기 구조 회복이 아직 확인되지 않음\",\n      \"현재가가 EMA20 $65,377.49 아래에 있으며, Fibonacci 0.236 저항 $65,326.01과도 겹쳐 $65.3k-$65.4k가 단기 수용 확인 구간\",\n      \"이전일 고가 $64,568.00을 상향 돌파했지만 $64,918.20 위로 확장하지 못해 buy-side liquidity raid 후 실패 조건이 존재\",\n      \"Fibonacci 기준 현재가는 0.382 되돌림 $64,132.40 위에 있으나 EQ $63,167.70 위의 프리미엄 영역에 있어 추가 지지 테스트 리스크가 남아 있음\",\n      \"반대편으로는 CVD divergence 0.850, CVD change +$1,896.93, OI 24시간 +2.7950%가 동반되어 $65,400-$66,100 상방 청산 유동성 회수 조건도 존재\",\n      \"Wyckoff 기준 Spring $59,080.00 이후 SOS $67,255.40, LPS 후보 $62,232.10 방어 구조가 유지되고 있어 하락 셋업은 축적 구조 내부의 단기 압력으로 해석해야 함\"\n    ],\n    \"setup_vs_structure\": \"구조 레벨에서는 Wyckoff 축적 Phase D 후보와 ICT/캔들/파생의 단기 bearish 구조가 충돌해 전체 구조 신호는 중립이다. 다만 실행 셋업은 $64,918.20-$65,377.49 회복 전까지 bearish 쪽이 약간 우세하며, 이는 레짐 전환 확정이 아니라 축적 후보 내부의 단기 실패·재테스트 리스크로 본다.\"\n  },\n  \"signal_breakdown\": {\n    \"bullish_count\": 2,\n    \"bearish_count\": 2,\n    \"neutral_count\": 2\n  },\n  \"key_levels\": {\n    \"support\": [\n      64132.4,\n      63220.0,\n      62232.1,\n      59080.0\n    ],\n    \"resistance\": [\n      64918.2,\n      65377.49,\n      65745.0,\n      67255.4,\n      71690.0\n    ]\n  },\n  \"confluences\": [\n    \"EMA20 $65,377.49는 Fibonacci, Derivatives, Candlestick, Wyckoff, ICT, Harmonic 모두가 단기 핵심 저항 또는 수용 확인선으로 언급한 최상위 공통 레벨이다.\",\n    \"ICT의 최근 bearish CHoCH $64,918.20은 Wyckoff의 과거 ST $64,918.20 및 Harmonic completed Gartley D $64,918.20과 겹쳐 단기 구조 판정선으로 중요도가 높다.\",\n    \"Wyckoff LPS 후보 $62,232.10은 Candlestick 7일 저점 $62,232.10, ICT 주요 지지 $62,232.10, Harmonic 지지군과 일치해 축적 후보 방어선으로 강한 공통 지지를 형성한다.\",\n    \"Fibonacci 0.382 지지 $64,132.40은 Harmonic active PRZ 하단권 $63,231-$65,835 및 $64,170-$65,940대 PRZ 후보와 겹쳐 현재가 주변이 반응 구간임을 시사한다.\",\n    \"Wyckoff SOS $67,255.40은 Fibonacci 스윙 고점·확장 기준 $67,255.40과 동일하며, Derivatives 상방 청산 레벨 $67,100과도 근접해 상단 구조 확인 구간으로 중첩된다.\",\n    \"Spring 저점 $59,080.00은 Wyckoff Spring, ICT range low, Fibonacci 스윙 저점으로 동시에 식별되어 현재 축적 후보의 최종 구조 무효화 레벨이다.\"\n  ],\n  \"conflicts\": [\n    \"Wyckoff는 SC $59,800 → AR $71,690 → ST $64,918.20 → Spring $59,080 → SOS $67,255.40 → LPS $62,232.10의 Phase D 축적 후보를 근거로 구조를 bullish로 본다.\",\n    \"반면 ICT는 최근 bearish CHoCH $64,918.20 아래에 가격이 머물고 있고 활성 bullish OB·미충족 bullish FVG가 없다는 점을 근거로 구조를 bearish로 판정한다.\",\n    \"Candlestick과 Derivatives의 구조 해석은 EMA20 $65,377.49, EMA120 $73,236.30, EMA240 $80,336.40 아래라는 점에서 bearish이나, Derivatives의 실행 셋업은 CVD/OI와 상방 청산 유동성 때문에 bullish로 갈라진다.\",\n    \"Harmonic은 현재가가 PRZ $63,231.30-$65,835.35 내부에 있어 반응 후보라고 보지만, council-relevant actionable pattern이 없어 단독으로 구조 방향을 뒤집을 수 없다.\",\n    \"Fibonacci는 구조적으로는 중립이나, 현재가가 EQ $63,167.70 위의 프리미엄 영역이면서 $65,326.01-$65,377.49 회복에 실패한 상태라 실행 관점에서는 약한 bearish 압력을 제시한다.\"\n  ],\n  \"highest_conviction_analyst\": \"ICT Trader — 신뢰도 78%로 가장 높고, 최근 bearish CHoCH $64,918.20, EMA20 $65,377.49 하회, 이전일 고가 $64,568.00 돌파 후 확장 실패 조건을 구체적 가격으로 제시했다. 또한 활성 bullish OB와 미충족 FVG가 없다는 점까지 포함해 단기 구조 실패 조건을 가장 명확히 정의했다.\",\n  \"invalidation_level\": \"중립 구조의 양방향 무효화 경계는 상단 $67,255.40 종가 회복과 하단 $62,232.10 이탈이다. $67,255.40 회복은 최근 bearish CHoCH 우위를 약화시키고 SOS 재확인을 의미하며, $62,232.10 이탈은 Wyckoff LPS 방어 실패로 축적 Phase D 해석을 훼손한다. 최종 축적 구조 무효화는 Spring 저점 $59,080.00 이탈이다.\",\n  \"executive_summary\": \"BTC 1일 구조는 단일 방향으로 확정되기보다, Wyckoff의 축적 Phase D 후보와 ICT·캔들 기반의 단기 bearish 구조가 충돌하는 중립 레짐으로 진단된다. 현재 위치는 Spring $59,080.00 이후 SOS $67,255.40을 만들고 LPS 후보 $62,232.10을 방어한 상태이나, 가격이 아직 bearish CHoCH $64,918.20, EMA20 $65,377.49, Wyckoff EQ $65,745.00을 회복하지 못해 축적 구조의 상단 수용은 미확인이다. 핵심 구조 지지 confluence는 $62,232.10이며, 핵심 저항 confluence는 $64,918.20-$65,377.49와 $67,255.40이다. 구조 리스크는 $64,918.20 위 수용 실패 시 buy-side liquidity raid 후 실패 조건, $62,232.10 이탈 시 LPS 실패 조건, $59,080.00 이탈 시 Spring 기반 축적 해석 무효화로 정리된다.\"\n}"
  },
  "overall_signal": "neutral",
  "overall_confidence": 0.56,
  "operating_path": {
    "path_type": "complex",
    "confidence": 0.46,
    "waypoints": [
      {
        "seq": 1,
        "price": 63167.7,
        "type": "support_test",
        "source": "ICT(지지 $63,220, setup 85%), Fibonacci(EQ $63,167.70 / 0.382 $64,132.40 경유), Candlestick(bearish_engulfing)",
        "description": "셋업 bias(BEARISH 57%)를 따라 첫 웨이포인트는 하방 테스트. 현재가 $64,624.30이 bearish CHoCH $64,918.20·EMA20 $65,377.49 아래 프리미엄에서 거부된 상태로, ICT(setup 85%)의 'buy-side liquidity raid 후 실패'와 캔들 bearish_engulfing이 매도압력을 지지한다. 1차 하방 목표는 Fibonacci EQ(0.5) $63,167.70 + ICT 지지 $63,220 클러스터(스윙 프리미엄/디스카운트 경계). 가장 가까운 0.382 $64,132.40은 통과 구간으로 단독 웨이포인트화하기엔 0.5*ATR 미만이라 제외.",
        "est_hours": 5.0,
        "turning_zone": [
          62400.0,
          63220.0
        ],
        "likely_wick": 63050.0,
        "rejection_confirm": 63650.0,
        "invalid_overshoot": 62150.0,
        "calibration_reasoning": "fib EQ(0.5) $63,167.70 + ICT/Chairman 지지 $63,220 클러스터를 존 상단으로, 하단은 약 0.4×ATR 아래($62,400)로 설정해 fib 0.618 $62,203·Wyckoff LPS $62,232 직전까지 커버. $63,000 라운드넘버 유동성 흡수를 반영해 likely_wick을 fib EQ 살짝 아래로 편향했고, LPS 하향 이탈($62,150)이 반등 시나리오를 무효화."
      },
      {
        "seq": 2,
        "price": 65377.49,
        "type": "resistance_test",
        "source": "전 에이전트 공통 EMA20 $65,377.49, Derivatives(상방 청산 $65,400-$66,100), Wyckoff(EQ $65,745/SOS $67,255 재시험)",
        "description": "EQ/지지 클러스터 방어 후 구조적 bullish 축(Wyckoff Phase D·LPS $62,232.10 방어)과 Derivatives 셋업(CVD divergence 0.850, CVD +$1,896.93, OI 24h +2.795%, 상방 청산 $65,400-$66,100)이 결합해 반등. 전 에이전트가 최상위 공통 저항으로 지목한 EMA20 $65,377.49(=Derivatives 상방 청산 $65,400, Wyckoff EQ $65,745 직하) 재테스트. 핵심 저항 confluence라 1차 거부 확률이 높은 자리.",
        "est_hours": 14.0,
        "turning_zone": [
          65377.49,
          66050.0
        ],
        "likely_wick": 65750.0,
        "rejection_confirm": 64918.2,
        "invalid_overshoot": 66400.0,
        "calibration_reasoning": "EMA20/Chairman/fib 저항 $65,326-$65,400 밀집대를 존 하단(=base)으로, Wyckoff EQ $65,745와 상방 청산 클러스터($65,400-$66,100)를 반영해 상단을 $66,050으로 확장(폭 ~0.33×ATR). likely_wick은 EQ $65,745 유동성 자석에 정렬. bearish CHoCH $64,918.20 하향 이탈이 거부 확정, 청산 클러스터 상단 돌파($66,400)가 저항 테스트 무효화."
      },
      {
        "seq": 3,
        "price": 64132.4,
        "type": "support_test",
        "source": "Fibonacci(0.382 $64,132.40), Harmonic(PRZ $63,231.30-$65,835.35)",
        "description": "중립 레짐의 우세 시나리오 — EMA20/CHoCH 저항 confluence($64,918.20-$65,377.49) 수용 실패. Fibonacci 0.382 $64,132.40 + Harmonic PRZ 하단($63,231-$65,835)으로 되돌림하며 WP1($63,167.70)보다 높은 저점(higher-low)을 형성, 레인지/축적 지속 형태로 24h 마감. 순변동 ≈ flat으로 Chairman NEUTRAL(56%) 진단과 정합한다.",
        "est_hours": 21.0,
        "turning_zone": [
          63220.0,
          64132.4
        ],
        "likely_wick": 63880.0,
        "rejection_confirm": 64550.0,
        "invalid_overshoot": 63100.0,
        "calibration_reasoning": "fib 0.382 $64,132.40/Chairman 지지를 존 상단(=base), 하단은 harmonic gartley PRZ 하단 $63,231·ICT 지지 $63,220으로 막아 WP1($63,167.70) 위 higher-low를 유지(터미널이나 구조 제약으로 폭 ~0.44×ATR). $64,000 라운드넘버 하단 유동성 흡수를 반영해 likely_wick $63,880. unconfirmed PRZ는 방향을 바꾸지 못해 base 미이동, fib EQ $63,167.70 하향 이탈($63,100)이 higher-low·NEUTRAL 축적 시나리오 전체를 무효화."
      }
    ],
    "period_extremes": {
      "4h": {
        "expected_high": 64900.0,
        "expected_low": 63400.0,
        "high_first": true
      },
      "8h": {
        "expected_high": 64900.0,
        "expected_low": 63167.7,
        "high_first": true
      },
      "24h": {
        "expected_high": 65400.0,
        "expected_low": 63000.0,
        "high_first": false
      }
    },
    "triggers": {
      "bullish": {
        "price": 64918.2,
        "description": "bearish CHoCH $64,918.20 위 '수용'(+EMA20 $65,377.49 돌파) 시 단기 구조 bullish 전환. WP1 하방 테스트를 생략하고 $66,100(Derivatives 최강 청산)·$67,255.40(Wyckoff SOS) 방향으로 가속."
      },
      "bearish": {
        "price": 62232.1,
        "description": "LPS 후보 $62,232.10 이탈 시 Wyckoff 축적 방어 실패, WP2 반등 시나리오 무력화. $59,080.00 Spring 저점 방향으로 하락 가속."
      }
    },
    "scenario_invalidation": 65745.0,
    "raw_llm_response": "```json\n{\n  \"path_type\": \"complex\",\n  \"confidence\": 0.46,\n  \"waypoints\": [\n    {\n      \"seq\": 1,\n      \"price\": 63167.7,\n      \"type\": \"support_test\",\n      \"source\": \"ICT(지지 $63,220, setup 85%), Fibonacci(EQ $63,167.70 / 0.382 $64,132.40 경유), Candlestick(bearish_engulfing)\",\n      \"description\": \"셋업 bias(BEARISH 57%)를 따라 첫 웨이포인트는 하방 테스트. 현재가 $64,624.30이 bearish CHoCH $64,918.20·EMA20 $65,377.49 아래 프리미엄에서 거부된 상태로, ICT(setup 85%)의 'buy-side liquidity raid 후 실패'와 캔들 bearish_engulfing이 매도압력을 지지한다. 1차 하방 목표는 Fibonacci EQ(0.5) $63,167.70 + ICT 지지 $63,220 클러스터(스윙 프리미엄/디스카운트 경계). 가장 가까운 0.382 $64,132.40은 통과 구간으로 단독 웨이포인트화하기엔 0.5*ATR 미만이라 제외.\",\n      \"est_hours\": 5.0\n    },\n    {\n      \"seq\": 2,\n      \"price\": 65377.49,\n      \"type\": \"resistance_test\",\n      \"source\": \"전 에이전트 공통 EMA20 $65,377.49, Derivatives(상방 청산 $65,400-$66,100), Wyckoff(EQ $65,745/SOS $67,255 재시험)\",\n      \"description\": \"EQ/지지 클러스터 방어 후 구조적 bullish 축(Wyckoff Phase D·LPS $62,232.10 방어)과 Derivatives 셋업(CVD divergence 0.850, CVD +$1,896.93, OI 24h +2.795%, 상방 청산 $65,400-$66,100)이 결합해 반등. 전 에이전트가 최상위 공통 저항으로 지목한 EMA20 $65,377.49(=Derivatives 상방 청산 $65,400, Wyckoff EQ $65,745 직하) 재테스트. 핵심 저항 confluence라 1차 거부 확률이 높은 자리.\",\n      \"est_hours\": 14.0\n    },\n    {\n      \"seq\": 3,\n      \"price\": 64132.4,\n      \"type\": \"support_test\",\n      \"source\": \"Fibonacci(0.382 $64,132.40), Harmonic(PRZ $63,231.30-$65,835.35)\",\n      \"description\": \"중립 레짐의 우세 시나리오 — EMA20/CHoCH 저항 confluence($64,918.20-$65,377.49) 수용 실패. Fibonacci 0.382 $64,132.40 + Harmonic PRZ 하단($63,231-$65,835)으로 되돌림하며 WP1($63,167.70)보다 높은 저점(higher-low)을 형성, 레인지/축적 지속 형태로 24h 마감. 순변동 ≈ flat으로 Chairman NEUTRAL(56%) 진단과 정합한다.\",\n      \"est_hours\": 21.0\n    }\n  ],\n  \"period_extremes\": {\n    \"4h\":  {\"expected_high\": 64900.0, \"expected_low\": 63400.0, \"high_first\": true},\n    \"8h\":  {\"expected_high\": 64900.0, \"expected_low\": 63167.7, \"high_first\": true},\n    \"24h\": {\"expected_high\": 65400.0, \"expected_low\": 63000.0, \"high_first\": false}\n  },\n  \"triggers\": {\n    \"bullish\": {\"price\": 64918.2, \"description\": \"bearish CHoCH $64,918.20 위 '수용'(+EMA20 $65,377.49 돌파) 시 단기 구조 bullish 전환. WP1 하방 테스트를 생략하고 $66,100(Derivatives 최강 청산)·$67,255.40(Wyckoff SOS) 방향으로 가속.\"},\n    \"bearish\": {\"price\": 62232.1, \"description\": \"LPS 후보 $62,232.10 이탈 시 Wyckoff 축적 방어 실패, WP2 반등 시나리오 무력화. $59,080.00 Spring 저점 방향으로 하락 가속.\"}\n  },\n  \"scenario_invalidation\": 65745.0\n}\n```"
  },
  "tp_calibration": {
    "calibrated_waypoints": [
      {
        "seq": 1,
        "base_target": 63167.7,
        "turning_zone": [
          62400.0,
          63220.0
        ],
        "likely_wick": 63050.0,
        "rejection_confirm": 63650.0,
        "invalid_overshoot": 62150.0,
        "calibration_reasoning": "fib EQ(0.5) $63,167.70 + ICT/Chairman 지지 $63,220 클러스터를 존 상단으로, 하단은 약 0.4×ATR 아래($62,400)로 설정해 fib 0.618 $62,203·Wyckoff LPS $62,232 직전까지 커버. $63,000 라운드넘버 유동성 흡수를 반영해 likely_wick을 fib EQ 살짝 아래로 편향했고, LPS 하향 이탈($62,150)이 반등 시나리오를 무효화."
      },
      {
        "seq": 2,
        "base_target": 65377.49,
        "turning_zone": [
          65377.49,
          66050.0
        ],
        "likely_wick": 65750.0,
        "rejection_confirm": 64918.2,
        "invalid_overshoot": 66400.0,
        "calibration_reasoning": "EMA20/Chairman/fib 저항 $65,326-$65,400 밀집대를 존 하단(=base)으로, Wyckoff EQ $65,745와 상방 청산 클러스터($65,400-$66,100)를 반영해 상단을 $66,050으로 확장(폭 ~0.33×ATR). likely_wick은 EQ $65,745 유동성 자석에 정렬. bearish CHoCH $64,918.20 하향 이탈이 거부 확정, 청산 클러스터 상단 돌파($66,400)가 저항 테스트 무효화."
      },
      {
        "seq": 3,
        "base_target": 64132.4,
        "turning_zone": [
          63220.0,
          64132.4
        ],
        "likely_wick": 63880.0,
        "rejection_confirm": 64550.0,
        "invalid_overshoot": 63100.0,
        "calibration_reasoning": "fib 0.382 $64,132.40/Chairman 지지를 존 상단(=base), 하단은 harmonic gartley PRZ 하단 $63,231·ICT 지지 $63,220으로 막아 WP1($63,167.70) 위 higher-low를 유지(터미널이나 구조 제약으로 폭 ~0.44×ATR). $64,000 라운드넘버 하단 유동성 흡수를 반영해 likely_wick $63,880. unconfirmed PRZ는 방향을 바꾸지 못해 base 미이동, fib EQ $63,167.70 하향 이탈($63,100)이 higher-low·NEUTRAL 축적 시나리오 전체를 무효화."
      }
    ],
    "executive_summary": "3개 웨이포인트 모두 fib 클러스터를 앵커로 ATR의 0.33-0.44배 폭으로 캘리브레이션. WP1은 fib EQ+ICT $63,220 지지와 $63,000 라운드넘버 흡수, WP2는 EMA20/Wyckoff EQ 밀집 저항+상방 청산 클러스터, WP3(터미널)는 fib 0.382 위 higher-low를 harmonic PRZ 하단에서 방어하는 구조. Harmonic gartley는 unconfirmed/report-only라 base를 이동시키지 않고 조건부 반응존으로만 사용.",
    "key_insight": "WP3 터미널 존은 통상 0.5-0.8×ATR로 넓히는 것이 원칙이나, WP1($63,167.70) 위 higher-low를 지켜야 하는 구조적 제약 때문에 harmonic PRZ 하단/ICT $63,220에서 바닥을 막아 폭을 ~0.44×ATR로 의도적으로 좁혔다. $63,167.70 하향 이탈은 단일 웨이포인트가 아니라 NEUTRAL 축적 경로 전체를 무효화하는 핵심 분기점.",
    "raw_llm_response": "```json\n{\n  \"calibrated_waypoints\": [\n    {\n      \"seq\": 1,\n      \"base_target\": 63167.70,\n      \"turning_zone\": [62400.00, 63220.00],\n      \"likely_wick\": 63050.00,\n      \"rejection_confirm\": 63650.00,\n      \"invalid_overshoot\": 62150.00,\n      \"calibration_reasoning\": \"fib EQ(0.5) $63,167.70 + ICT/Chairman 지지 $63,220 클러스터를 존 상단으로, 하단은 약 0.4×ATR 아래($62,400)로 설정해 fib 0.618 $62,203·Wyckoff LPS $62,232 직전까지 커버. $63,000 라운드넘버 유동성 흡수를 반영해 likely_wick을 fib EQ 살짝 아래로 편향했고, LPS 하향 이탈($62,150)이 반등 시나리오를 무효화.\"\n    },\n    {\n      \"seq\": 2,\n      \"base_target\": 65377.49,\n      \"turning_zone\": [65377.49, 66050.00],\n      \"likely_wick\": 65750.00,\n      \"rejection_confirm\": 64918.20,\n      \"invalid_overshoot\": 66400.00,\n      \"calibration_reasoning\": \"EMA20/Chairman/fib 저항 $65,326-$65,400 밀집대를 존 하단(=base)으로, Wyckoff EQ $65,745와 상방 청산 클러스터($65,400-$66,100)를 반영해 상단을 $66,050으로 확장(폭 ~0.33×ATR). likely_wick은 EQ $65,745 유동성 자석에 정렬. bearish CHoCH $64,918.20 하향 이탈이 거부 확정, 청산 클러스터 상단 돌파($66,400)가 저항 테스트 무효화.\"\n    },\n    {\n      \"seq\": 3,\n      \"base_target\": 64132.40,\n      \"turning_zone\": [63220.00, 64132.40],\n      \"likely_wick\": 63880.00,\n      \"rejection_confirm\": 64550.00,\n      \"invalid_overshoot\": 63100.00,\n      \"calibration_reasoning\": \"fib 0.382 $64,132.40/Chairman 지지를 존 상단(=base), 하단은 harmonic gartley PRZ 하단 $63,231·ICT 지지 $63,220으로 막아 WP1($63,167.70) 위 higher-low를 유지(터미널이나 구조 제약으로 폭 ~0.44×ATR). $64,000 라운드넘버 하단 유동성 흡수를 반영해 likely_wick $63,880. unconfirmed PRZ는 방향을 바꾸지 못해 base 미이동, fib EQ $63,167.70 하향 이탈($63,100)이 higher-low·NEUTRAL 축적 시나리오 전체를 무효화.\"\n    }\n  ],\n  \"executive_summary\": \"3개 웨이포인트 모두 fib 클러스터를 앵커로 ATR의 0.33-0.44배 폭으로 캘리브레이션. WP1은 fib EQ+ICT $63,220 지지와 $63,000 라운드넘버 흡수, WP2는 EMA20/Wyckoff EQ 밀집 저항+상방 청산 클러스터, WP3(터미널)는 fib 0.382 위 higher-low를 harmonic PRZ 하단에서 방어하는 구조. Harmonic gartley는 unconfirmed/report-only라 base를 이동시키지 않고 조건부 반응존으로만 사용.\",\n  \"key_insight\": \"WP3 터미널 존은 통상 0.5-0.8×ATR로 넓히는 것이 원칙이나, WP1($63,167.70) 위 higher-low를 지켜야 하는 구조적 제약 때문에 harmonic PRZ 하단/ICT $63,220에서 바닥을 막아 폭을 ~0.44×ATR로 의도적으로 좁혔다. $63,167.70 하향 이탈은 단일 웨이포인트가 아니라 NEUTRAL 축적 경로 전체를 무효화하는 핵심 분기점.\"\n}\n```"
  },
  "timing": {
    "stages": {
      "stage1_agents": 60.1,
      "chairman": 90.0,
      "operating_path": 377.6,
      "tp_calibrator": 214.7
    },
    "agents": {},
    "total_s": 742.4
  }
}