{
  "symbol": "BTC/USDT",
  "timeframe": "4h",
  "timestamp": "2026-06-27 09:00 KST",
  "last_price": 60071.9,
  "num_candles": 300,
  "stage1_analyses": {
    "derivatives": {
      "agent_id": "derivatives",
      "display_name": "Derivatives Trader",
      "signal": "bearish",
      "confidence": 0.66,
      "structure_bias": "bearish",
      "setup_bias": "bearish",
      "setup_score": 0.72,
      "setup_signals": [
        "가격 $60,071.90가 EMA20 $60,841.40 아래에서 거래되며 단기 약세 수용 지속",
        "EMA120 $64,001.72 및 EMA240 $67,252.62 아래에 위치해 중기 구조가 여전히 하방",
        "24시간 OI -2.6060% 감소로 신규 롱 추격보다 포지션 언와인딩 성격이 강함",
        "CVD 변화 -3413.3670 및 cvd_divergence 0.150으로 반등 캔들 대비 매수 참여가 약함",
        "롱 계정 비율 0.675, account_long_crowding 1.000으로 롱 포지셔닝이 혼잡한 contrarian 리스크",
        "상단 청산 밀집 $60,700 / $60,900 / $61,500은 단기 흡수 후 재하락 가능한 저항·유동성 구간",
        "하단 청산 유동성 $58,300 / $57,200이 열려 있어 가격 자석 역할 가능"
      ],
      "reasoning": "현재 BTC는 $60,071.90로 EMA20 $60,841.40 아래에 있으며, EMA120 $64,001.72와 EMA240 $67,252.62 대비 각각 -6.1%, -10.7% 낮아 구조적으로는 약세 국면이 확인된 상태입니다. 파생 포지셔닝은 aggregate_score 0.263, bull_signals 0개, bear_signals 4개로 하방 우위이며, 24시간 OI가 -2.6060% 감소해 반등보다 포지션 축소와 수요 약화를 시사합니다. CVD도 -3413.3670으로 악화되어 최근 +0.6% 반등 캔들의 질이 좋지 않고, 롱 계정 비율 0.675 및 account_long_crowding 1.000은 롱 혼잡에 따른 하방 청산 리스크를 키웁니다. 단기적으로 $60,700~$61,500의 상단 청산을 먼저 터치할 수는 있으나, 이 구간을 구조적으로 수용하지 못하면 $58,300 및 $57,200 하단 유동성으로 밀릴 가능성이 더 높습니다.",
      "key_levels": {
        "support": [
          58300,
          57200,
          53600
        ],
        "resistance": [
          60700,
          60900,
          61500,
          64001.72,
          65500
        ]
      },
      "time_horizon": "short term, 향후 4-8시간",
      "invalidation_level": "61500",
      "risk_scenario": "$61,500 상단 청산 구간을 강하게 돌파하고 그 위에서 4시간봉 종가 수용이 나오면 약세 셋업은 무효화되며, 숏 커버링이 EMA120 $64,001.72 및 7일 고점 $65,597.20 방향으로 확장될 수 있습니다.",
      "data_quality": "medium",
      "metrics": {
        "cvd_divergence": 0.15,
        "cvd_change": -3413.367,
        "oi_trend": 0.239,
        "oi_change_pct_24h": -2.606,
        "oi_latest": 103934.941,
        "funding_pressure": 0.438,
        "funding_avg": 6.17e-05,
        "funding_change_24h": 2.01e-05,
        "long_account_ratio": 0.686,
        "short_account_ratio": 0.314,
        "long_account_latest": 0.675,
        "short_account_latest": 0.325,
        "long_account_change_24h": -0.0312,
        "short_account_change_24h": 0.0312,
        "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.0422,
        "basis_change_lookback": 0.0016,
        "aggregate_score": 0.263,
        "bull_signals": 0,
        "bear_signals": 4,
        "liq_below": [
          [
            58300,
            29899.603394499998
          ],
          [
            57200,
            30502.439661
          ],
          [
            53600,
            36766.99972
          ]
        ],
        "liq_above": [
          [
            60700,
            25981.651932
          ],
          [
            60900,
            25742.951622
          ],
          [
            61500,
            31295.354567100003
          ]
        ],
        "strongest_liq_level": 65500,
        "fragility_score": 0.409,
        "positioning_extreme": "balanced"
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.66,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.72,\n  \"setup_signals\": [\n    \"가격 $60,071.90가 EMA20 $60,841.40 아래에서 거래되며 단기 약세 수용 지속\",\n    \"EMA120 $64,001.72 및 EMA240 $67,252.62 아래에 위치해 중기 구조가 여전히 하방\",\n    \"24시간 OI -2.6060% 감소로 신규 롱 추격보다 포지션 언와인딩 성격이 강함\",\n    \"CVD 변화 -3413.3670 및 cvd_divergence 0.150으로 반등 캔들 대비 매수 참여가 약함\",\n    \"롱 계정 비율 0.675, account_long_crowding 1.000으로 롱 포지셔닝이 혼잡한 contrarian 리스크\",\n    \"상단 청산 밀집 $60,700 / $60,900 / $61,500은 단기 흡수 후 재하락 가능한 저항·유동성 구간\",\n    \"하단 청산 유동성 $58,300 / $57,200이 열려 있어 가격 자석 역할 가능\"\n  ],\n  \"reasoning\": \"현재 BTC는 $60,071.90로 EMA20 $60,841.40 아래에 있으며, EMA120 $64,001.72와 EMA240 $67,252.62 대비 각각 -6.1%, -10.7% 낮아 구조적으로는 약세 국면이 확인된 상태입니다. 파생 포지셔닝은 aggregate_score 0.263, bull_signals 0개, bear_signals 4개로 하방 우위이며, 24시간 OI가 -2.6060% 감소해 반등보다 포지션 축소와 수요 약화를 시사합니다. CVD도 -3413.3670으로 악화되어 최근 +0.6% 반등 캔들의 질이 좋지 않고, 롱 계정 비율 0.675 및 account_long_crowding 1.000은 롱 혼잡에 따른 하방 청산 리스크를 키웁니다. 단기적으로 $60,700~$61,500의 상단 청산을 먼저 터치할 수는 있으나, 이 구간을 구조적으로 수용하지 못하면 $58,300 및 $57,200 하단 유동성으로 밀릴 가능성이 더 높습니다.\",\n  \"key_levels\": {\n    \"support\": [\n      58300,\n      57200,\n      53600\n    ],\n    \"resistance\": [\n      60700,\n      60900,\n      61500,\n      64001.72,\n      65500\n    ]\n  },\n  \"time_horizon\": \"short term, 향후 4-8시간\",\n  \"invalidation_level\": \"61500\",\n  \"risk_scenario\": \"$61,500 상단 청산 구간을 강하게 돌파하고 그 위에서 4시간봉 종가 수용이 나오면 약세 셋업은 무효화되며, 숏 커버링이 EMA120 $64,001.72 및 7일 고점 $65,597.20 방향으로 확장될 수 있습니다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "wyckoff": {
      "agent_id": "wyckoff",
      "display_name": "Wyckoff Expert",
      "signal": "neutral",
      "confidence": 0.61,
      "structure_bias": "bullish",
      "setup_bias": "bullish",
      "setup_score": 0.62,
      "setup_signals": [
        "Spring 발생: $58,288.00에서 메인 range low $59,080.00 하단을 일시 이탈한 뒤 현재가 $60,071.90로 range 내부 재진입",
        "현재가 $60,071.90는 range EQ 약 $61,665.00 하단의 discount 구간에 위치",
        "Phase C Spring 후보 이후 아직 SOS/LPS가 미검출되어 상승 구조는 선행 셋업 단계이며 확정 후속 수요 확인은 부족",
        "단기 저항: EMA20 $60,841.40 및 range EQ $61,665.00 회복 여부가 Spring 성공 테스트의 1차 관문"
      ],
      "reasoning": "지표상 regime은 ACC이며 acc_score 80.4, regime_fitness 0.804로 축적 구조가 우세하지만, regime_state는 acc_candidate이고 현재 이벤트는 Phase C의 Spring으로 아직 SOS/LPS가 확인되지 않았습니다. 주요 range anchor는 SC $59,080.00와 AR $64,250.00이며, Spring은 $58,288.00에서 발생한 뒤 현재가 $60,071.90로 range low를 재진입한 상태입니다. 구조적 편향은 bullish이지만, 즉시 경로는 $60,841.40 EMA20과 EQ $61,665.00 회복 전까지 $59,080.00 재테스트 또는 Spring test 가능성을 열어둔 중립적 range-bound 해석이 적절합니다. $61,665.00 이상 안착 후 $64,250.00 AR 방향의 반응이 나와야 SOS 후보를 논할 수 있으며, $58,288.00 이탈은 Spring 실패로 해석됩니다.",
      "key_levels": {
        "support": [
          59080.0,
          58288.0,
          58030.0
        ],
        "resistance": [
          60841.4,
          61665.0,
          64250.0,
          65597.2
        ]
      },
      "time_horizon": "medium term",
      "invalidation_level": "$58,288.00",
      "risk_scenario": "$58,288.00 Spring 저점을 하방 이탈하면 Phase C Spring은 실패로 전환되며, $59,080.00 SC/range low 재진입도 무효화됩니다. 이 경우 현재 ACC 후보 구조는 약화되고, $58,030.00 7일 저점 및 그 하단 유동성 재탐색 가능성이 커집니다.",
      "data_quality": "high",
      "metrics": {
        "acc_score": 80.4,
        "dis_score": 77.5,
        "regime": "ACC",
        "regime_state": "acc_candidate",
        "structure_bias": "bullish",
        "phase_context": "acc_candidate / accumulation / Phase C",
        "phases_detected": [
          "SC",
          "AR",
          "ST",
          "Spring"
        ],
        "last_phase": "Spring",
        "phase_candidates": [
          {
            "label": "SC",
            "side": "low",
            "idx": 172,
            "price": 59080.0,
            "color": "#ffd166"
          },
          {
            "label": "AR",
            "side": "high",
            "idx": 185,
            "price": 64250.0,
            "color": "#06d6a0"
          },
          {
            "label": "ST",
            "side": "low",
            "idx": 226,
            "price": 63650.0,
            "color": "#118ab2"
          },
          {
            "label": "Spring",
            "side": "low",
            "idx": 294,
            "price": 58288.0,
            "color": "#f9844a"
          }
        ],
        "phase_structures": [
          {
            "structure_id": "4h_cycle_1",
            "sequence": 1,
            "timeframe": "4h",
            "regime": "accumulation",
            "role": "current_structure_candidate",
            "is_active": true,
            "is_completed": false,
            "is_confirmed": true,
            "structure_bias": "bullish",
            "phase_context": "accumulation",
            "start_idx": 172,
            "end_idx": 294,
            "phase_count": 4,
            "phases": [
              {
                "label": "SC",
                "side": "low",
                "idx": 172,
                "price": 59080.0,
                "color": "#ffd166",
                "dt": "2026-06-06 01:00:00+09:00"
              },
              {
                "label": "AR",
                "side": "high",
                "idx": 185,
                "price": 64250.0,
                "color": "#06d6a0",
                "dt": "2026-06-08 05:00:00+09:00"
              },
              {
                "label": "ST",
                "side": "low",
                "idx": 226,
                "price": 63650.0,
                "color": "#118ab2",
                "dt": "2026-06-15 01:00:00+09:00"
              },
              {
                "label": "Spring",
                "side": "low",
                "idx": 294,
                "price": 58288.0,
                "color": "#f9844a",
                "dt": "2026-06-26 09:00:00+09:00"
              }
            ]
          }
        ],
        "active_structure_id": "4h_cycle_1",
        "primary_structure_id": "4h_cycle_1",
        "structure_count": 1,
        "regime_fitness": 0.8040133779264214,
        "current_event": "Spring",
        "major_phase": "C",
        "pos_in_range": 0.5,
        "main_range_low": 59080.0,
        "main_range_high": 64250.0
      },
      "raw_llm_response": "{\n  \"signal\": \"neutral\",\n  \"confidence\": 0.61,\n  \"structure_bias\": \"bullish\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.62,\n  \"setup_signals\": [\n    \"Spring 발생: $58,288.00에서 메인 range low $59,080.00 하단을 일시 이탈한 뒤 현재가 $60,071.90로 range 내부 재진입\",\n    \"현재가 $60,071.90는 range EQ 약 $61,665.00 하단의 discount 구간에 위치\",\n    \"Phase C Spring 후보 이후 아직 SOS/LPS가 미검출되어 상승 구조는 선행 셋업 단계이며 확정 후속 수요 확인은 부족\",\n    \"단기 저항: EMA20 $60,841.40 및 range EQ $61,665.00 회복 여부가 Spring 성공 테스트의 1차 관문\"\n  ],\n  \"reasoning\": \"지표상 regime은 ACC이며 acc_score 80.4, regime_fitness 0.804로 축적 구조가 우세하지만, regime_state는 acc_candidate이고 현재 이벤트는 Phase C의 Spring으로 아직 SOS/LPS가 확인되지 않았습니다. 주요 range anchor는 SC $59,080.00와 AR $64,250.00이며, Spring은 $58,288.00에서 발생한 뒤 현재가 $60,071.90로 range low를 재진입한 상태입니다. 구조적 편향은 bullish이지만, 즉시 경로는 $60,841.40 EMA20과 EQ $61,665.00 회복 전까지 $59,080.00 재테스트 또는 Spring test 가능성을 열어둔 중립적 range-bound 해석이 적절합니다. $61,665.00 이상 안착 후 $64,250.00 AR 방향의 반응이 나와야 SOS 후보를 논할 수 있으며, $58,288.00 이탈은 Spring 실패로 해석됩니다.\",\n  \"key_levels\": {\n    \"support\": [\n      59080.0,\n      58288.0,\n      58030.0\n    ],\n    \"resistance\": [\n      60841.4,\n      61665.0,\n      64250.0,\n      65597.2\n    ]\n  },\n  \"time_horizon\": \"medium term\",\n  \"invalidation_level\": \"$58,288.00\",\n  \"risk_scenario\": \"$58,288.00 Spring 저점을 하방 이탈하면 Phase C Spring은 실패로 전환되며, $59,080.00 SC/range low 재진입도 무효화됩니다. 이 경우 현재 ACC 후보 구조는 약화되고, $58,030.00 7일 저점 및 그 하단 유동성 재탐색 가능성이 커집니다.\",\n  \"data_quality\": \"high\"\n}"
    },
    "candlestick": {
      "agent_id": "candlestick",
      "display_name": "Candlestick Reader",
      "signal": "bearish",
      "confidence": 0.58,
      "structure_bias": "bearish",
      "setup_bias": "bearish",
      "setup_score": 0.46,
      "setup_signals": [
        "현재가 $60,071.90가 EMA20 $60,841.40 아래에 있어 단기 반등이 아직 평균선 위로 수용되지 못함",
        "7일 범위 EQ $61,813.60 아래의 할인 구간에 있으나, 반등이 EQ와 EMA20을 회복하지 못해 약한 매수 반응으로 해석",
        "최근 패턴 후보가 bearish_engulfing@296 및 dark_cloud_cover@290로 모두 약세이며, bear_score 1.45 대비 bull_score 0",
        "패턴 품질은 dark_cloud_cover 0.568, bearish_engulfing 0.467로 후보 수준이며 고거래량 확인은 없음"
      ],
      "reasoning": "BTC는 현재 $60,071.90으로 EMA20 $60,841.40보다 1.3% 낮고, EMA120 $64,001.72 및 EMA240 $67,252.62 아래에 있어 확인된 구조는 여전히 약세 우위입니다. 최근 감지된 패턴은 dark_cloud_cover@290와 bearish_engulfing@296이며, bull_score 0 대비 bear_score 1.45로 캔들 신호도 매도 쪽에 기울어 있습니다. 다만 7일 저점 $58,030.00에 가까운 할인 구간이고 고거래량 패턴이 없어, 하락 추세 추종 신호의 신뢰도는 중간 수준입니다. 단기적으로 $60,841.40 EMA20과 7일 EQ $61,813.60을 회복하지 못하면 $58,030.00 재시험 가능성이 우세합니다.",
      "key_levels": {
        "support": [
          58887.24,
          58030.0
        ],
        "resistance": [
          60841.4,
          61813.6,
          64001.72,
          65597.2
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$61,813.60",
      "risk_scenario": "반대로 가격이 EMA20 $60,841.40을 회복한 뒤 7일 EQ $61,813.60 위에서 4시간봉 종가 수용을 만들면, 최근 약세 캔들 패턴은 실패 신호가 되고 숏 커버링이 발생해 EMA120 $64,001.72 및 7일 고점 $65,597.20까지 반등 위험이 커집니다.",
      "data_quality": "medium",
      "metrics": {
        "total_patterns_detected": 131,
        "recent_patterns": 2,
        "pattern_list": [
          "bearish_engulfing@296",
          "dark_cloud_cover@290"
        ],
        "atr_value": 1184.66,
        "vol_avg_20": 44509.19,
        "high_volume_patterns": [],
        "pattern_candidates": [
          {
            "pattern": "dark_cloud_cover",
            "signal": "bearish",
            "pattern_quality": 0.568,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "bearish_engulfing",
            "signal": "bearish",
            "pattern_quality": 0.467,
            "tier": "candidate",
            "high_volume": false
          }
        ],
        "best_pattern_quality": 0.568,
        "bull_score": 0,
        "bear_score": 1.45
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.58,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.46,\n  \"setup_signals\": [\n    \"현재가 $60,071.90가 EMA20 $60,841.40 아래에 있어 단기 반등이 아직 평균선 위로 수용되지 못함\",\n    \"7일 범위 EQ $61,813.60 아래의 할인 구간에 있으나, 반등이 EQ와 EMA20을 회복하지 못해 약한 매수 반응으로 해석\",\n    \"최근 패턴 후보가 bearish_engulfing@296 및 dark_cloud_cover@290로 모두 약세이며, bear_score 1.45 대비 bull_score 0\",\n    \"패턴 품질은 dark_cloud_cover 0.568, bearish_engulfing 0.467로 후보 수준이며 고거래량 확인은 없음\"\n  ],\n  \"reasoning\": \"BTC는 현재 $60,071.90으로 EMA20 $60,841.40보다 1.3% 낮고, EMA120 $64,001.72 및 EMA240 $67,252.62 아래에 있어 확인된 구조는 여전히 약세 우위입니다. 최근 감지된 패턴은 dark_cloud_cover@290와 bearish_engulfing@296이며, bull_score 0 대비 bear_score 1.45로 캔들 신호도 매도 쪽에 기울어 있습니다. 다만 7일 저점 $58,030.00에 가까운 할인 구간이고 고거래량 패턴이 없어, 하락 추세 추종 신호의 신뢰도는 중간 수준입니다. 단기적으로 $60,841.40 EMA20과 7일 EQ $61,813.60을 회복하지 못하면 $58,030.00 재시험 가능성이 우세합니다.\",\n  \"key_levels\": {\n    \"support\": [\n      58887.24,\n      58030.0\n    ],\n    \"resistance\": [\n      60841.4,\n      61813.6,\n      64001.72,\n      65597.2\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$61,813.60\",\n  \"risk_scenario\": \"반대로 가격이 EMA20 $60,841.40을 회복한 뒤 7일 EQ $61,813.60 위에서 4시간봉 종가 수용을 만들면, 최근 약세 캔들 패턴은 실패 신호가 되고 숏 커버링이 발생해 EMA120 $64,001.72 및 7일 고점 $65,597.20까지 반등 위험이 커집니다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "ict": {
      "agent_id": "ict",
      "display_name": "ICT Trader",
      "signal": "bearish",
      "confidence": 0.78,
      "structure_bias": "bearish",
      "setup_bias": "bearish",
      "setup_score": 0.92,
      "setup_signals": [
        "현재가 $60,071.90가 EQ $61,813.60 아래의 디스카운트 구간에 있으나, $62,232.10 bearish BOS를 회복하지 못해 반등은 아직 구조 전환이 아닌 되돌림으로 해석됨",
        "현재가가 EMA20 $60,841.40 아래에 위치해 단기 평균 재수용 실패 상태이며, EMA120 $64,001.72 및 EMA240 $67,252.62도 상방 저항으로 남아 있음",
        "직전 고점 $60,734.00과 EMA20 $60,841.40 부근이 가까운 단기 매도 반응 구간이며, 이 구간 돌파 실패 시 하방 재개 가능성이 높음",
        "확인된 bullish OB와 미충족 bullish FVG가 없고, active bullish OB도 0개라서 현재 가격 아래에서 기관성 매수 방어 근거가 약함",
        "최근 구조 이벤트가 CHoCH bearish $78,713.80 이후 BOS bearish $76,014.20, $74,203.60, $72,436.00, 최종 BOS bearish $62,232.10으로 이어져 하락 구조가 우세함"
      ],
      "reasoning": "확인된 구조는 bearish입니다. CHoCH bearish가 $78,713.80에서 발생한 뒤 $76,014.20, $74,203.60, $72,436.00, 그리고 최근 $62,232.10에서 bearish BOS가 추가되어 하락 구조가 유지되고 있습니다. 현재가 $60,071.90는 EQ $61,813.60 아래의 디스카운트 구간이지만, 이는 매수 확정 신호가 아니라 $62,232.10 BOS 레벨 아래에서 진행 중인 약한 되돌림으로 보는 것이 타당합니다. 또한 confirmed bullish OB, active bullish OB, unfilled bullish FVG가 모두 0개라 하방에서 명확한 기관성 매수 배열이 보이지 않으며, 단기적으로 $60,734.00~$60,841.40 저항을 회복하지 못하면 $58,288.00 및 $58,030.00 유동성 재공격 가능성이 큽니다.",
      "key_levels": {
        "support": [
          58288.0,
          58030.0
        ],
        "resistance": [
          60734.0,
          60841.4,
          61813.6,
          62232.1,
          64250.0,
          65597.2,
          76234.7,
          78077.1,
          78128.55
        ]
      },
      "time_horizon": "단기~중기",
      "invalidation_level": "$62,232.10 4시간봉 종가 회복",
      "risk_scenario": "반대 시나리오는 가격이 $60,734.00 직전 고점과 EMA20 $60,841.40을 회복한 뒤 $62,232.10 bearish BOS 레벨 위로 4시간봉 종가 안착하는 경우입니다. 이 경우 현재 하락 셋업은 무효화되고, $64,001.72 EMA120 및 $64,250.00 bullish BOS 레벨까지 숏 커버링성 반등이 확대될 수 있습니다. 이후 $65,597.20 7일 고점까지 회복하면 단기 구조는 중립 또는 약한 bullish 재평가가 필요합니다.",
      "data_quality": "medium",
      "metrics": {
        "order_blocks_total": 2,
        "confirmed_bullish_ob": 0,
        "confirmed_bearish_ob": 0,
        "candidate_bullish_ob": 0,
        "candidate_bearish_ob": 2,
        "active_bullish_ob": 0,
        "active_bearish_ob": 0,
        "nearest_bull_ob_range": null,
        "nearest_bear_ob_range": {
          "bottom": 76234.7,
          "top": 78077.1,
          "quality": "candidate",
          "score": 0.56
        },
        "active_bullish_ob_list": [],
        "active_bearish_ob_list": [],
        "ob_mitigated_count": 0,
        "unfilled_bull_fvg_count": 0,
        "unfilled_bear_fvg_count": 0,
        "bull_fvg_ranges": [],
        "bear_fvg_ranges": [],
        "fvg_open_count": 0,
        "fvg_mitigated_count": 57,
        "fvg_open_zones": [],
        "bos_choch_events": [
          "CHoCH_bearish",
          "BOS_bearish",
          "BOS_bearish",
          "BOS_bearish",
          "BOS_bullish",
          "BOS_bearish"
        ],
        "bos_choch_levels": [
          {
            "type": "CHoCH_bearish",
            "level": 78713.8
          },
          {
            "type": "BOS_bearish",
            "level": 76014.2
          },
          {
            "type": "BOS_bearish",
            "level": 74203.6
          },
          {
            "type": "BOS_bearish",
            "level": 72436.0
          },
          {
            "type": "BOS_bullish",
            "level": 64250.0
          },
          {
            "type": "BOS_bearish",
            "level": 62232.1
          }
        ],
        "bos_sequence": [
          "CHoCH_bearish",
          "BOS_bearish",
          "BOS_bearish",
          "BOS_bearish",
          "BOS_bullish",
          "BOS_bearish"
        ],
        "consecutive_bull_bos": 0,
        "consecutive_bear_bos": 1,
        "recent_liq_sweeps": [],
        "recent_sweep_levels": [],
        "liquidity_resting": [
          {
            "type": "BSL",
            "level": 78128.55
          }
        ],
        "current_zone": "discount",
        "eq_level": 61813.6,
        "range_high": 65597.2,
        "range_low": 58030.0,
        "bull_score": 4.5,
        "bear_score": 12.2,
        "setup_bias": "bearish",
        "setup_score": 0.92,
        "setup_signals": [
          "bearish CHoCH below $78,713.80",
          "bearish BOS below $76,014.20",
          "bearish BOS below $74,203.60",
          "bearish BOS below $72,436.00",
          "bearish BOS below $62,232.10"
        ],
        "retracement_direction": "bullish",
        "current_retracement_pct": 180.3,
        "deepest_retracement_pct": 224.9,
        "previous_day_high": 60734.0,
        "previous_day_low": 58288.0,
        "broken_prev_high": false,
        "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.92,\n  \"setup_signals\": [\n    \"현재가 $60,071.90가 EQ $61,813.60 아래의 디스카운트 구간에 있으나, $62,232.10 bearish BOS를 회복하지 못해 반등은 아직 구조 전환이 아닌 되돌림으로 해석됨\",\n    \"현재가가 EMA20 $60,841.40 아래에 위치해 단기 평균 재수용 실패 상태이며, EMA120 $64,001.72 및 EMA240 $67,252.62도 상방 저항으로 남아 있음\",\n    \"직전 고점 $60,734.00과 EMA20 $60,841.40 부근이 가까운 단기 매도 반응 구간이며, 이 구간 돌파 실패 시 하방 재개 가능성이 높음\",\n    \"확인된 bullish OB와 미충족 bullish FVG가 없고, active bullish OB도 0개라서 현재 가격 아래에서 기관성 매수 방어 근거가 약함\",\n    \"최근 구조 이벤트가 CHoCH bearish $78,713.80 이후 BOS bearish $76,014.20, $74,203.60, $72,436.00, 최종 BOS bearish $62,232.10으로 이어져 하락 구조가 우세함\"\n  ],\n  \"reasoning\": \"확인된 구조는 bearish입니다. CHoCH bearish가 $78,713.80에서 발생한 뒤 $76,014.20, $74,203.60, $72,436.00, 그리고 최근 $62,232.10에서 bearish BOS가 추가되어 하락 구조가 유지되고 있습니다. 현재가 $60,071.90는 EQ $61,813.60 아래의 디스카운트 구간이지만, 이는 매수 확정 신호가 아니라 $62,232.10 BOS 레벨 아래에서 진행 중인 약한 되돌림으로 보는 것이 타당합니다. 또한 confirmed bullish OB, active bullish OB, unfilled bullish FVG가 모두 0개라 하방에서 명확한 기관성 매수 배열이 보이지 않으며, 단기적으로 $60,734.00~$60,841.40 저항을 회복하지 못하면 $58,288.00 및 $58,030.00 유동성 재공격 가능성이 큽니다.\",\n  \"key_levels\": {\n    \"support\": [\n      58288.0,\n      58030.0\n    ],\n    \"resistance\": [\n      60734.0,\n      60841.4,\n      61813.6,\n      62232.1,\n      64250.0,\n      65597.2,\n      76234.7,\n      78077.1,\n      78128.55\n    ]\n  },\n  \"time_horizon\": \"단기~중기\",\n  \"invalidation_level\": \"$62,232.10 4시간봉 종가 회복\",\n  \"risk_scenario\": \"반대 시나리오는 가격이 $60,734.00 직전 고점과 EMA20 $60,841.40을 회복한 뒤 $62,232.10 bearish BOS 레벨 위로 4시간봉 종가 안착하는 경우입니다. 이 경우 현재 하락 셋업은 무효화되고, $64,001.72 EMA120 및 $64,250.00 bullish BOS 레벨까지 숏 커버링성 반등이 확대될 수 있습니다. 이후 $65,597.20 7일 고점까지 회복하면 단기 구조는 중립 또는 약한 bullish 재평가가 필요합니다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "fibonacci": {
      "agent_id": "fibonacci",
      "display_name": "Fibonacci Analyst",
      "signal": "neutral",
      "confidence": 0.57,
      "structure_bias": "bearish",
      "setup_bias": "bullish",
      "setup_score": 0.62,
      "setup_signals": [
        "현재가 $60,071.90가 스윙 EQ/0.5 되돌림 $60,619.80 아래에 있어 할인 구간에 위치",
        "0.382 되돌림 $60,008.61을 현재가가 +0.11% 거리에서 테스트 중",
        "최근 하락 스윙 $63,210 → $58,030 이후 0.382 지지 반응 구간 진입",
        "7일 저점 $58,030.00이 ext_1.0 중복 컨플루언스 구간으로 확인됨, cluster_score 0.6",
        "상방 회복 시 0.5 $60,619.80 및 골든비율 0.618 $61,230.99가 1차/핵심 반등 목표"
      ],
      "reasoning": "확정 구조 관점에서는 스윙이 $63,210 고점에서 $58,030 저점으로 하락했고, 현재가 $60,071.90가 EMA20 $60,841.40, EMA120 $64,001.72, EMA240 $67,252.62 아래에 있어 구조_bias는 bearish로 판단된다. 다만 셋업 관점에서는 가격이 EQ인 0.5 되돌림 $60,619.80 아래의 할인 구간에서 0.382 되돌림 $60,008.61을 테스트하고 있어 단기 반등 셋업이 활성화되어 있다. 특히 현재가는 가장 가까운 피보나치 레벨인 $60,008.61과 0.11% 거리이며, 반응 확률 0.65로 단기 지지 반응 가능성이 있다. 상방에서는 $60,619.80 회복 후 골든비율 0.618인 $61,230.99가 가장 중요한 저항이며, 이 구간을 수용하지 못하면 하락 구조 내 되돌림에 그칠 가능성이 높다.",
      "key_levels": {
        "support": [
          60008.61,
          59252.39,
          58030.0,
          56621.15,
          54829.01
        ],
        "resistance": [
          60619.8,
          61230.99,
          62101.17,
          63210.0
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$58,030.00",
      "risk_scenario": "$60,008.61 지지가 무너지면 $59,252.39까지 밀릴 수 있으며, $58,030.00 이탈 시 단기 반등 셋업은 실패하고 ext_1.272 $56,621.15, ext_1.414 $55,885.65, ext_1.618 $54,829.01 순으로 하락 확장 목표가 열릴 수 있다. 반대로 $61,230.99 골든비율 저항을 강하게 돌파·안착하면 하락 구조의 되돌림이 깊어지며 $62,101.17 및 $63,210 재시험 가능성이 커진다.",
      "data_quality": "medium",
      "metrics": {
        "swing_pair": "High→Low: $63,210 → $58,030",
        "direction": "down",
        "nearest_fib": "ret_0.382",
        "nearest_fib_price": 60008.61,
        "nearest_fib_distance": 0.11,
        "golden_ratio_level": 61230.99,
        "fib_ret_382": 60008.61,
        "fib_ret_618": 61230.99,
        "confluence_zones": [
          {
            "price": 58030.0,
            "count": 2,
            "levels": [
              "ext_1.0",
              "ext_1.0"
            ],
            "cluster_score": 0.6
          }
        ],
        "support_levels": [
          60008.6072,
          59252.3856,
          58030.0
        ],
        "resistance_levels": [
          60619.8,
          61230.9928,
          62101.1656
        ],
        "level_candidates": [
          {
            "name": "ret_0.236",
            "price": 59252.39,
            "distance_pct": 1.36,
            "is_support": true,
            "cluster_score": 0.0
          },
          {
            "name": "ret_0.382",
            "price": 60008.61,
            "distance_pct": 0.11,
            "is_support": true,
            "cluster_score": 0.0
          },
          {
            "name": "ret_0.5",
            "price": 60619.8,
            "distance_pct": 0.91,
            "is_support": false,
            "cluster_score": 0.0
          },
          {
            "name": "ret_0.618",
            "price": 61230.99,
            "distance_pct": 1.93,
            "is_support": false,
            "cluster_score": 0.0
          },
          {
            "name": "ret_0.786",
            "price": 62101.17,
            "distance_pct": 3.38,
            "is_support": false,
            "cluster_score": 0.0
          },
          {
            "name": "ext_1.0",
            "price": 58030.0,
            "distance_pct": 3.4,
            "is_support": true,
            "cluster_score": 0.6
          },
          {
            "name": "ext_1.272",
            "price": 56621.15,
            "distance_pct": 5.74,
            "is_support": true,
            "cluster_score": 0.0
          },
          {
            "name": "ext_1.414",
            "price": 55885.65,
            "distance_pct": 6.97,
            "is_support": true,
            "cluster_score": 0.0
          },
          {
            "name": "ext_1.618",
            "price": 54829.01,
            "distance_pct": 8.73,
            "is_support": true,
            "cluster_score": 0.0
          },
          {
            "name": "ext_2.0",
            "price": 52850.4,
            "distance_pct": 12.02,
            "is_support": true,
            "cluster_score": 0.0
          }
        ],
        "confluence_quality": 0.6,
        "fib_reaction_state": "testing",
        "reaction_probability": 0.65
      },
      "raw_llm_response": "{\n  \"signal\": \"neutral\",\n  \"confidence\": 0.57,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.62,\n  \"setup_signals\": [\n    \"현재가 $60,071.90가 스윙 EQ/0.5 되돌림 $60,619.80 아래에 있어 할인 구간에 위치\",\n    \"0.382 되돌림 $60,008.61을 현재가가 +0.11% 거리에서 테스트 중\",\n    \"최근 하락 스윙 $63,210 → $58,030 이후 0.382 지지 반응 구간 진입\",\n    \"7일 저점 $58,030.00이 ext_1.0 중복 컨플루언스 구간으로 확인됨, cluster_score 0.6\",\n    \"상방 회복 시 0.5 $60,619.80 및 골든비율 0.618 $61,230.99가 1차/핵심 반등 목표\"\n  ],\n  \"reasoning\": \"확정 구조 관점에서는 스윙이 $63,210 고점에서 $58,030 저점으로 하락했고, 현재가 $60,071.90가 EMA20 $60,841.40, EMA120 $64,001.72, EMA240 $67,252.62 아래에 있어 구조_bias는 bearish로 판단된다. 다만 셋업 관점에서는 가격이 EQ인 0.5 되돌림 $60,619.80 아래의 할인 구간에서 0.382 되돌림 $60,008.61을 테스트하고 있어 단기 반등 셋업이 활성화되어 있다. 특히 현재가는 가장 가까운 피보나치 레벨인 $60,008.61과 0.11% 거리이며, 반응 확률 0.65로 단기 지지 반응 가능성이 있다. 상방에서는 $60,619.80 회복 후 골든비율 0.618인 $61,230.99가 가장 중요한 저항이며, 이 구간을 수용하지 못하면 하락 구조 내 되돌림에 그칠 가능성이 높다.\",\n  \"key_levels\": {\n    \"support\": [\n      60008.61,\n      59252.39,\n      58030.0,\n      56621.15,\n      54829.01\n    ],\n    \"resistance\": [\n      60619.8,\n      61230.99,\n      62101.17,\n      63210.0\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$58,030.00\",\n  \"risk_scenario\": \"$60,008.61 지지가 무너지면 $59,252.39까지 밀릴 수 있으며, $58,030.00 이탈 시 단기 반등 셋업은 실패하고 ext_1.272 $56,621.15, ext_1.414 $55,885.65, ext_1.618 $54,829.01 순으로 하락 확장 목표가 열릴 수 있다. 반대로 $61,230.99 골든비율 저항을 강하게 돌파·안착하면 하락 구조의 되돌림이 깊어지며 $62,101.17 및 $63,210 재시험 가능성이 커진다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "harmonic": {
      "agent_id": "harmonic",
      "display_name": "Harmonic Specialist",
      "signal": "neutral",
      "confidence": 0.43,
      "structure_bias": "neutral",
      "setup_bias": "bullish",
      "setup_score": 0.45,
      "setup_signals": [
        "현재가 $60,071.90은 최근접 bullish crab PRZ 중심 $60,024.63 부근에 위치하며, PRZ 범위는 $59,184.86-$60,864.41",
        "active bullish bat 형성 PRZ가 $59,934.01-$61,200.40에 걸쳐 있으며 D 예상가는 $60,567.20이나 quality는 low이고 confirmed_reaction=false",
        "active bullish crab 형성 PRZ가 $58,886.43-$60,375.81에 걸쳐 있으며 D 예상가는 $59,631.12이나 quality는 low이고 confirmed_reaction=false",
        "완성된 bullish butterfly는 D $59,060.00 이후 반응 확인됨: reaction_score 0.75, AD 0.236 반응 도달 및 PRZ 방어 확인, 다만 strict/low 또는 candidate/high 혼재로 단독 방향성 권한은 제한",
        "상단에는 high-confluence bullish Gartley 형성 PRZ $61,478.18-$62,153.24가 watch 상태로 존재하며, 현재가 대비 약 +2.90% 위에 있어 즉시 실행권은 낮음"
      ],
      "reasoning": "하모닉 관점에서는 124개 패턴 중 완성 49개, 형성 D-PRZ 75개가 포착되었지만 council_relevant_prz_count와 directional_influence_prz_count가 모두 0이므로 현재 방향 투표에 넣을 엄격한 actionable PRZ는 없습니다. 현재가 $60,071.90은 최근접 crab PRZ 중심 $60,024.63 및 active bat/crab 저가 반전 후보군 안에 있어 단기적으로는 bullish 반응 setup이 존재하지만, 해당 active PRZ들은 low quality이고 폭도 $59,934.01-$61,200.40, $58,886.43-$60,375.81로 넓어 신뢰도는 제한됩니다. 구조적으로는 EMA20 $60,841.40, EMA120 $64,001.72, EMA240 $67,252.62 아래에 있어 강세 구조 확정으로 보기 어렵고, 하모닉 자체도 BOS/CHoCH를 제공하지 않으므로 structure_bias는 neutral로 둡니다. 확인된 bullish butterfly의 TP 맥락은 $62,152.73-$63,573.85 1차, $64,101.32-$64,979.75 2차까지 열어두지만, 이는 PRZ 반응 후 TP 참고용이지 독립적인 상승 경로 엔진은 아닙니다.",
      "key_levels": {
        "support": [
          60024.63,
          59934.01,
          59184.86,
          58886.43,
          58406.59,
          58030.0
        ],
        "resistance": [
          60841.4,
          61200.4,
          61675.69,
          62153.24,
          64001.72,
          67252.62
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$58,030.00 4h 종가 하향 이탈",
      "risk_scenario": "반대 시나리오는 $58,886.43-$60,375.81 crab PRZ와 $59,934.01-$61,200.40 bat PRZ가 방어되지 못하고 $58,030.00 7일 저점을 하향 이탈하는 경우입니다. 이 경우 현재의 bullish setup은 실패로 간주되며, completed butterfly의 D 방어 논리도 무효화되어 $58,000 아래 유동성 확장 및 추가 하락 PRZ 탐색 국면으로 전환될 수 있습니다. 반대로 $60,864.41 상단을 회복하고 EMA20 $60,841.40 위에서 4h 수용이 나오면 $61,478.18-$62,153.24 Gartley PRZ 및 $62,152.73-$63,573.85 TP 구간으로의 반등 가능성이 커집니다.",
      "data_quality": "medium",
      "metrics": {
        "patterns_found": 124,
        "completed_patterns_found": 49,
        "forming_d_prz_found": 75,
        "swing_orders_scanned": [
          3,
          5,
          8
        ],
        "swing_search_window": 30,
        "multiscale_swings_scanned": 58,
        "swing_highs_scanned": 29,
        "swing_lows_scanned": 29,
        "timeframe": "4h",
        "prz_active_threshold_pct": 0.75,
        "prz_nearby_threshold_pct": 1.5,
        "prz_watch_threshold_pct": 3.0,
        "prz_max_width_pct": 1.3,
        "quality_counts": {
          "high": 3,
          "medium": 32,
          "low": 89
        },
        "prz_status_counts": {
          "active": 20,
          "nearby": 21,
          "watch": 19,
          "far": 64,
          "forming": 41
        },
        "high_confluence_prz_count": 18,
        "strict_patterns_found": 45,
        "candidate_patterns_found": 79,
        "active_patterns_at_prz": 20,
        "nearby_patterns": 21,
        "all_patterns": [
          "bat",
          "shark",
          "gartley",
          "crab",
          "butterfly",
          "bat",
          "butterfly",
          "shark",
          "butterfly",
          "gartley",
          "butterfly",
          "shark",
          "bat",
          "butterfly",
          "butterfly",
          "butterfly",
          "gartley",
          "bat",
          "crab",
          "shark",
          "crab",
          "shark",
          "bat",
          "crab",
          "butterfly",
          "shark",
          "shark",
          "crab",
          "bat",
          "crab",
          "bat",
          "bat",
          "bat",
          "bat",
          "gartley",
          "crab",
          "crab",
          "shark",
          "gartley",
          "crab",
          "crab",
          "butterfly",
          "butterfly",
          "gartley",
          "butterfly",
          "shark",
          "crab",
          "crab",
          "crab",
          "bat",
          "gartley",
          "gartley",
          "butterfly",
          "crab",
          "butterfly",
          "crab",
          "shark",
          "gartley",
          "gartley",
          "shark",
          "gartley",
          "bat",
          "crab",
          "butterfly",
          "shark",
          "crab",
          "crab",
          "crab",
          "crab",
          "crab",
          "crab",
          "gartley",
          "shark",
          "shark",
          "crab",
          "bat",
          "shark",
          "shark",
          "shark",
          "crab",
          "crab",
          "bat",
          "crab",
          "shark",
          "bat",
          "butterfly",
          "crab",
          "bat",
          "crab",
          "crab",
          "crab",
          "crab",
          "shark",
          "crab",
          "crab",
          "butterfly",
          "butterfly",
          "crab",
          "crab",
          "bat",
          "shark",
          "crab",
          "crab",
          "gartley",
          "crab",
          "bat",
          "gartley",
          "butterfly",
          "bat",
          "bat",
          "bat",
          "crab",
          "bat",
          "bat",
          "crab",
          "gartley",
          "shark",
          "shark",
          "crab",
          "bat",
          "butterfly",
          "shark",
          "gartley",
          "bat"
        ],
        "all_signals": [
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish"
        ],
        "best_pattern": "bat",
        "best_pattern_quality": "strict",
        "best_quality": "low",
        "best_pattern_score": 0.915,
        "best_completion_status": "forming",
        "nearest_pattern": "crab",
        "nearest_prz": 60024.63,
        "price_to_prz": -0.08,
        "prz_range": [
          59184.86,
          60864.41
        ],
        "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.898,
            "ratio_score": 0.945,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 61815.71,
            "prz_range": [
              61478.18,
              62153.24
            ],
            "prz_width_pct": 1.092,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 2.9,
            "price_to_prz_pct_raw": 2.9029,
            "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": 61815.71,
              "a_price": 63915.3,
              "tp1_ad_382": 62617.75,
              "tp2_ad_618": 63113.26,
              "tp3_a_or_structure_liquidity": 63915.3,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6087,
              "ABC": 0.5807
            },
            "x_price": 61150.2,
            "x_idx": 184,
            "x_order": 3,
            "a_price": 63915.3,
            "a_idx": 208,
            "a_order": 3,
            "b_price": 62232.1,
            "b_idx": 249,
            "b_order": 8,
            "c_price": 63209.6,
            "c_idx": 284,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.842,
            "ratio_score": 0.826,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 59060.0,
            "prz_range": [
              60933.28,
              61663.11
            ],
            "prz_width_pct": 1.191,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 2.04,
            "price_to_prz_pct_raw": 2.0414,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.236_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "post_D_close_progress"
              ],
              "reaction_score": 0.75,
              "reaction_detail": {
                "reaction_score": 0.75,
                "reaction_move_ratio_ad": 0.35,
                "adverse_move_ratio_ad": 0.126,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.236_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": "butterfly",
              "d_price": 61298.2,
              "a_price": 67255.4,
              "tp1_ad_382": 63573.85,
              "tp2_ad_618": 64979.75,
              "tp3_a_or_structure_liquidity": 67255.4,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.8338,
              "ABC": 0.5974,
              "BCD": 2.6563,
              "XAD": 1.6589
            },
            "x_price": 62315.0,
            "x_idx": 208,
            "x_order": 3,
            "a_price": 67255.4,
            "a_idx": 231,
            "a_order": 8,
            "b_price": 63136.2,
            "b_idx": 261,
            "b_order": 3,
            "c_price": 65597.2,
            "c_idx": 273,
            "c_order": 8,
            "d_idx": 286
          },
          {
            "pattern": "shark",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.911,
            "ratio_score": 1.0,
            "prz_score": 0.918,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 61305.5,
            "prz_range": [
              60767.09,
              61843.92
            ],
            "prz_width_pct": 1.757,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 2.05,
            "price_to_prz_pct_raw": 2.0535,
            "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": 61305.5,
              "a_price": 63915.3,
              "tp1_ad_382": 62302.44,
              "tp2_ad_618": 62918.36,
              "tp3_a_or_structure_liquidity": 63915.3,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5499,
              "ABC": 1.4993
            },
            "x_price": 61344.8,
            "x_idx": 162,
            "x_order": 5,
            "a_price": 63915.3,
            "a_idx": 208,
            "a_order": 3,
            "b_price": 65328.8,
            "b_idx": 237,
            "b_order": 3,
            "c_price": 63209.6,
            "c_idx": 284,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.88,
            "ratio_score": 0.911,
            "prz_score": 0.972,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 61461.12,
            "prz_range": [
              61013.8,
              61908.44
            ],
            "prz_width_pct": 1.456,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 2.31,
            "price_to_prz_pct_raw": 2.3126,
            "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": 61461.12,
              "a_price": 66956.7,
              "tp1_ad_382": 63560.43,
              "tp2_ad_618": 64857.39,
              "tp3_a_or_structure_liquidity": 66956.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.805,
              "ABC": 0.6362
            },
            "x_price": 62315.0,
            "x_idx": 208,
            "x_order": 3,
            "a_price": 66956.7,
            "a_idx": 236,
            "a_order": 3,
            "b_price": 63220.0,
            "b_idx": 269,
            "b_order": 5,
            "c_price": 65597.2,
            "c_idx": 273,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.876,
            "ratio_score": 0.938,
            "prz_score": 0.873,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 58998.66,
            "prz_range": [
              58406.59,
              59590.72
            ],
            "prz_width_pct": 2.007,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.79,
            "price_to_prz_pct_raw": -1.7866,
            "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": 58998.66,
              "a_price": 67255.4,
              "tp1_ad_382": 62152.73,
              "tp2_ad_618": 64101.32,
              "tp3_a_or_structure_liquidity": 67255.4,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7728,
              "ABC": 0.465
            },
            "x_price": 60755.0,
            "x_idx": 196,
            "x_order": 3,
            "a_price": 67255.4,
            "a_idx": 231,
            "a_order": 8,
            "b_price": 62232.1,
            "b_idx": 249,
            "b_order": 8,
            "c_price": 64568.0,
            "c_idx": 265,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.875,
            "ratio_score": 0.959,
            "prz_score": 0.873,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 59060.0,
            "prz_range": [
              58406.59,
              59590.72
            ],
            "prz_width_pct": 2.007,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.79,
            "price_to_prz_pct_raw": -1.7866,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.236_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "post_D_close_progress"
              ],
              "reaction_score": 0.75,
              "reaction_detail": {
                "reaction_score": 0.75,
                "reaction_move_ratio_ad": 0.35,
                "adverse_move_ratio_ad": 0.126,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.236_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": "butterfly",
              "d_price": 58998.66,
              "a_price": 67255.4,
              "tp1_ad_382": 62152.73,
              "tp2_ad_618": 64101.32,
              "tp3_a_or_structure_liquidity": 67255.4,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7728,
              "ABC": 0.465,
              "BCD": 2.358,
              "XAD": 1.2608
            },
            "x_price": 60755.0,
            "x_idx": 196,
            "x_order": 3,
            "a_price": 67255.4,
            "a_idx": 231,
            "a_order": 8,
            "b_price": 62232.1,
            "b_idx": 249,
            "b_order": 8,
            "c_price": 64568.0,
            "c_idx": 265,
            "c_order": 3,
            "d_idx": 286
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.85,
            "ratio_score": 0.837,
            "prz_score": 0.918,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 61139.25,
            "prz_range": [
              60602.82,
              61675.69
            ],
            "prz_width_pct": 1.755,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.78,
            "price_to_prz_pct_raw": 1.7768,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 61139.25,
              "a_price": 63915.3,
              "tp1_ad_382": 62199.7,
              "tp2_ad_618": 62854.85,
              "tp3_a_or_structure_liquidity": 63915.3,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5222,
              "ABC": 0.5807
            },
            "x_price": 60691.9,
            "x_idx": 200,
            "x_order": 8,
            "a_price": 63915.3,
            "a_idx": 208,
            "a_order": 3,
            "b_price": 62232.1,
            "b_idx": 249,
            "b_order": 8,
            "c_price": 63209.6,
            "c_idx": 284,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.846,
            "ratio_score": 0.935,
            "prz_score": 0.884,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 61760.53,
            "prz_range": [
              61158.69,
              62362.37
            ],
            "prz_width_pct": 1.949,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 2.81,
            "price_to_prz_pct_raw": 2.811,
            "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": 61760.53,
              "a_price": 66419.2,
              "tp1_ad_382": 63540.14,
              "tp2_ad_618": 64639.59,
              "tp3_a_or_structure_liquidity": 66419.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7999,
              "ABC": 0.7496
            },
            "x_price": 62315.0,
            "x_idx": 208,
            "x_order": 3,
            "a_price": 66419.2,
            "a_idx": 244,
            "a_order": 5,
            "b_price": 63136.2,
            "b_idx": 261,
            "b_order": 3,
            "c_price": 65597.2,
            "c_idx": 273,
            "c_order": 8,
            "d_idx": null
          }
        ],
        "council_relevant_prz": [],
        "report_detail_candidates": [
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.898,
            "ratio_score": 0.945,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 61815.71,
            "prz_range": [
              61478.18,
              62153.24
            ],
            "prz_width_pct": 1.092,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 2.9,
            "price_to_prz_pct_raw": 2.9029,
            "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": 61815.71,
              "a_price": 63915.3,
              "tp1_ad_382": 62617.75,
              "tp2_ad_618": 63113.26,
              "tp3_a_or_structure_liquidity": 63915.3,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6087,
              "ABC": 0.5807
            },
            "x_price": 61150.2,
            "x_idx": 184,
            "x_order": 3,
            "a_price": 63915.3,
            "a_idx": 208,
            "a_order": 3,
            "b_price": 62232.1,
            "b_idx": 249,
            "b_order": 8,
            "c_price": 63209.6,
            "c_idx": 284,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.842,
            "ratio_score": 0.826,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 59060.0,
            "prz_range": [
              60933.28,
              61663.11
            ],
            "prz_width_pct": 1.191,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 2.04,
            "price_to_prz_pct_raw": 2.0414,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.236_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "post_D_close_progress"
              ],
              "reaction_score": 0.75,
              "reaction_detail": {
                "reaction_score": 0.75,
                "reaction_move_ratio_ad": 0.35,
                "adverse_move_ratio_ad": 0.126,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.236_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": "butterfly",
              "d_price": 61298.2,
              "a_price": 67255.4,
              "tp1_ad_382": 63573.85,
              "tp2_ad_618": 64979.75,
              "tp3_a_or_structure_liquidity": 67255.4,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.8338,
              "ABC": 0.5974,
              "BCD": 2.6563,
              "XAD": 1.6589
            },
            "x_price": 62315.0,
            "x_idx": 208,
            "x_order": 3,
            "a_price": 67255.4,
            "a_idx": 231,
            "a_order": 8,
            "b_price": 63136.2,
            "b_idx": 261,
            "b_order": 3,
            "c_price": 65597.2,
            "c_idx": 273,
            "c_order": 8,
            "d_idx": 286
          },
          {
            "pattern": "shark",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.911,
            "ratio_score": 1.0,
            "prz_score": 0.918,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 61305.5,
            "prz_range": [
              60767.09,
              61843.92
            ],
            "prz_width_pct": 1.757,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 2.05,
            "price_to_prz_pct_raw": 2.0535,
            "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": 61305.5,
              "a_price": 63915.3,
              "tp1_ad_382": 62302.44,
              "tp2_ad_618": 62918.36,
              "tp3_a_or_structure_liquidity": 63915.3,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5499,
              "ABC": 1.4993
            },
            "x_price": 61344.8,
            "x_idx": 162,
            "x_order": 5,
            "a_price": 63915.3,
            "a_idx": 208,
            "a_order": 3,
            "b_price": 65328.8,
            "b_idx": 237,
            "b_order": 3,
            "c_price": 63209.6,
            "c_idx": 284,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.88,
            "ratio_score": 0.911,
            "prz_score": 0.972,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 61461.12,
            "prz_range": [
              61013.8,
              61908.44
            ],
            "prz_width_pct": 1.456,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 2.31,
            "price_to_prz_pct_raw": 2.3126,
            "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": 61461.12,
              "a_price": 66956.7,
              "tp1_ad_382": 63560.43,
              "tp2_ad_618": 64857.39,
              "tp3_a_or_structure_liquidity": 66956.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.805,
              "ABC": 0.6362
            },
            "x_price": 62315.0,
            "x_idx": 208,
            "x_order": 3,
            "a_price": 66956.7,
            "a_idx": 236,
            "a_order": 3,
            "b_price": 63220.0,
            "b_idx": 269,
            "b_order": 5,
            "c_price": 65597.2,
            "c_idx": 273,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.876,
            "ratio_score": 0.938,
            "prz_score": 0.873,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 58998.66,
            "prz_range": [
              58406.59,
              59590.72
            ],
            "prz_width_pct": 2.007,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.79,
            "price_to_prz_pct_raw": -1.7866,
            "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": 58998.66,
              "a_price": 67255.4,
              "tp1_ad_382": 62152.73,
              "tp2_ad_618": 64101.32,
              "tp3_a_or_structure_liquidity": 67255.4,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7728,
              "ABC": 0.465
            },
            "x_price": 60755.0,
            "x_idx": 196,
            "x_order": 3,
            "a_price": 67255.4,
            "a_idx": 231,
            "a_order": 8,
            "b_price": 62232.1,
            "b_idx": 249,
            "b_order": 8,
            "c_price": 64568.0,
            "c_idx": 265,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.875,
            "ratio_score": 0.959,
            "prz_score": 0.873,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 59060.0,
            "prz_range": [
              58406.59,
              59590.72
            ],
            "prz_width_pct": 2.007,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.79,
            "price_to_prz_pct_raw": -1.7866,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.236_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "post_D_close_progress"
              ],
              "reaction_score": 0.75,
              "reaction_detail": {
                "reaction_score": 0.75,
                "reaction_move_ratio_ad": 0.35,
                "adverse_move_ratio_ad": 0.126,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.236_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": "butterfly",
              "d_price": 58998.66,
              "a_price": 67255.4,
              "tp1_ad_382": 62152.73,
              "tp2_ad_618": 64101.32,
              "tp3_a_or_structure_liquidity": 67255.4,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7728,
              "ABC": 0.465,
              "BCD": 2.358,
              "XAD": 1.2608
            },
            "x_price": 60755.0,
            "x_idx": 196,
            "x_order": 3,
            "a_price": 67255.4,
            "a_idx": 231,
            "a_order": 8,
            "b_price": 62232.1,
            "b_idx": 249,
            "b_order": 8,
            "c_price": 64568.0,
            "c_idx": 265,
            "c_order": 3,
            "d_idx": 286
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.85,
            "ratio_score": 0.837,
            "prz_score": 0.918,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 61139.25,
            "prz_range": [
              60602.82,
              61675.69
            ],
            "prz_width_pct": 1.755,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.78,
            "price_to_prz_pct_raw": 1.7768,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 61139.25,
              "a_price": 63915.3,
              "tp1_ad_382": 62199.7,
              "tp2_ad_618": 62854.85,
              "tp3_a_or_structure_liquidity": 63915.3,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5222,
              "ABC": 0.5807
            },
            "x_price": 60691.9,
            "x_idx": 200,
            "x_order": 8,
            "a_price": 63915.3,
            "a_idx": 208,
            "a_order": 3,
            "b_price": 62232.1,
            "b_idx": 249,
            "b_order": 8,
            "c_price": 63209.6,
            "c_idx": 284,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.846,
            "ratio_score": 0.935,
            "prz_score": 0.884,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 61760.53,
            "prz_range": [
              61158.69,
              62362.37
            ],
            "prz_width_pct": 1.949,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 2.81,
            "price_to_prz_pct_raw": 2.811,
            "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": 61760.53,
              "a_price": 66419.2,
              "tp1_ad_382": 63540.14,
              "tp2_ad_618": 64639.59,
              "tp3_a_or_structure_liquidity": 66419.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7999,
              "ABC": 0.7496
            },
            "x_price": 62315.0,
            "x_idx": 208,
            "x_order": 3,
            "a_price": 66419.2,
            "a_idx": 244,
            "a_order": 5,
            "b_price": 63136.2,
            "b_idx": 261,
            "b_order": 3,
            "c_price": 65597.2,
            "c_idx": 273,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.741,
            "ratio_score": 0.731,
            "prz_score": 0.884,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 59060.0,
            "prz_range": [
              61158.69,
              62362.37
            ],
            "prz_width_pct": 1.949,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 2.81,
            "price_to_prz_pct_raw": 2.811,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "post_D_close_progress"
              ],
              "reaction_score": 0.9,
              "reaction_detail": {
                "reaction_score": 0.9,
                "reaction_move_ratio_ad": 0.39,
                "adverse_move_ratio_ad": 0.14,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "post_D_close_progress"
                ]
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 61760.53,
              "a_price": 66419.2,
              "tp1_ad_382": 63540.14,
              "tp2_ad_618": 64639.59,
              "tp3_a_or_structure_liquidity": 66419.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7999,
              "ABC": 0.7496,
              "BCD": 2.6563,
              "XAD": 1.7931
            },
            "x_price": 62315.0,
            "x_idx": 208,
            "x_order": 3,
            "a_price": 66419.2,
            "a_idx": 244,
            "a_order": 5,
            "b_price": 63136.2,
            "b_idx": 261,
            "b_order": 3,
            "c_price": 65597.2,
            "c_idx": 273,
            "c_order": 8,
            "d_idx": 286
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.915,
            "ratio_score": 1.0,
            "prz_score": 0.858,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 60567.2,
            "prz_range": [
              59934.01,
              61200.4
            ],
            "prz_width_pct": 2.091,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.82,
            "price_to_prz_pct_raw": 0.8245,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 60567.2,
              "a_price": 64738.0,
              "tp1_ad_382": 62160.45,
              "tp2_ad_618": 63144.76,
              "tp3_a_or_structure_liquidity": 64738.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.3959,
              "ABC": 0.7523
            },
            "x_price": 60691.9,
            "x_idx": 200,
            "x_order": 8,
            "a_price": 64738.0,
            "a_idx": 221,
            "a_order": 5,
            "b_price": 63136.2,
            "b_idx": 261,
            "b_order": 3,
            "c_price": 61931.1,
            "c_idx": 289,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "crab",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.885,
            "ratio_score": 1.0,
            "prz_score": 0.785,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 59631.12,
            "prz_range": [
              58886.43,
              60375.81
            ],
            "prz_width_pct": 2.498,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.73,
            "price_to_prz_pct_raw": -0.7338,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "crab",
              "d_price": 59631.12,
              "a_price": 64738.0,
              "tp1_ad_382": 61581.95,
              "tp2_ad_618": 62787.17,
              "tp3_a_or_structure_liquidity": 64738.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4465,
              "ABC": 0.7523
            },
            "x_price": 61150.2,
            "x_idx": 184,
            "x_order": 3,
            "a_price": 64738.0,
            "a_idx": 221,
            "a_order": 5,
            "b_price": 63136.2,
            "b_idx": 261,
            "b_order": 3,
            "c_price": 61931.1,
            "c_idx": 289,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.864,
            "ratio_score": 0.992,
            "prz_score": 0.796,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": false,
            "d_price": 61404.36,
            "prz_range": [
              60655.8,
              62152.92
            ],
            "prz_width_pct": 2.438,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 2.22,
            "price_to_prz_pct_raw": 2.2181,
            "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": 61404.36,
              "a_price": 64738.0,
              "tp1_ad_382": 62677.81,
              "tp2_ad_618": 63464.55,
              "tp3_a_or_structure_liquidity": 64738.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6193,
              "ABC": 0.3901
            },
            "x_price": 60691.9,
            "x_idx": 200,
            "x_order": 8,
            "a_price": 64738.0,
            "a_idx": 221,
            "a_order": 5,
            "b_price": 62232.1,
            "b_idx": 249,
            "b_order": 8,
            "c_price": 63209.6,
            "c_idx": 284,
            "c_order": 5,
            "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.43,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.45,\n  \"setup_signals\": [\n    \"현재가 $60,071.90은 최근접 bullish crab PRZ 중심 $60,024.63 부근에 위치하며, PRZ 범위는 $59,184.86-$60,864.41\",\n    \"active bullish bat 형성 PRZ가 $59,934.01-$61,200.40에 걸쳐 있으며 D 예상가는 $60,567.20이나 quality는 low이고 confirmed_reaction=false\",\n    \"active bullish crab 형성 PRZ가 $58,886.43-$60,375.81에 걸쳐 있으며 D 예상가는 $59,631.12이나 quality는 low이고 confirmed_reaction=false\",\n    \"완성된 bullish butterfly는 D $59,060.00 이후 반응 확인됨: reaction_score 0.75, AD 0.236 반응 도달 및 PRZ 방어 확인, 다만 strict/low 또는 candidate/high 혼재로 단독 방향성 권한은 제한\",\n    \"상단에는 high-confluence bullish Gartley 형성 PRZ $61,478.18-$62,153.24가 watch 상태로 존재하며, 현재가 대비 약 +2.90% 위에 있어 즉시 실행권은 낮음\"\n  ],\n  \"reasoning\": \"하모닉 관점에서는 124개 패턴 중 완성 49개, 형성 D-PRZ 75개가 포착되었지만 council_relevant_prz_count와 directional_influence_prz_count가 모두 0이므로 현재 방향 투표에 넣을 엄격한 actionable PRZ는 없습니다. 현재가 $60,071.90은 최근접 crab PRZ 중심 $60,024.63 및 active bat/crab 저가 반전 후보군 안에 있어 단기적으로는 bullish 반응 setup이 존재하지만, 해당 active PRZ들은 low quality이고 폭도 $59,934.01-$61,200.40, $58,886.43-$60,375.81로 넓어 신뢰도는 제한됩니다. 구조적으로는 EMA20 $60,841.40, EMA120 $64,001.72, EMA240 $67,252.62 아래에 있어 강세 구조 확정으로 보기 어렵고, 하모닉 자체도 BOS/CHoCH를 제공하지 않으므로 structure_bias는 neutral로 둡니다. 확인된 bullish butterfly의 TP 맥락은 $62,152.73-$63,573.85 1차, $64,101.32-$64,979.75 2차까지 열어두지만, 이는 PRZ 반응 후 TP 참고용이지 독립적인 상승 경로 엔진은 아닙니다.\",\n  \"key_levels\": {\n    \"support\": [\n      60024.63,\n      59934.01,\n      59184.86,\n      58886.43,\n      58406.59,\n      58030.0\n    ],\n    \"resistance\": [\n      60841.4,\n      61200.4,\n      61675.69,\n      62153.24,\n      64001.72,\n      67252.62\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$58,030.00 4h 종가 하향 이탈\",\n  \"risk_scenario\": \"반대 시나리오는 $58,886.43-$60,375.81 crab PRZ와 $59,934.01-$61,200.40 bat PRZ가 방어되지 못하고 $58,030.00 7일 저점을 하향 이탈하는 경우입니다. 이 경우 현재의 bullish setup은 실패로 간주되며, completed butterfly의 D 방어 논리도 무효화되어 $58,000 아래 유동성 확장 및 추가 하락 PRZ 탐색 국면으로 전환될 수 있습니다. 반대로 $60,864.41 상단을 회복하고 EMA20 $60,841.40 위에서 4h 수용이 나오면 $61,478.18-$62,153.24 Gartley PRZ 및 $62,152.73-$63,573.85 TP 구간으로의 반등 가능성이 커집니다.\",\n  \"data_quality\": \"medium\"\n}"
    }
  },
  "chairman_synthesis": {
    "overall_signal": "bearish",
    "overall_confidence": 0.66,
    "execution_setup": {
      "setup_bias": "bearish",
      "setup_strength": 0.64,
      "active_setups": [
        "가격 $60,071.90가 EMA20 $60,841.40 아래에 머물며 단기 평균선 재수용 실패",
        "ICT 기준 최근 bearish BOS $62,232.10 아래에서 구조 전환 미확인",
        "파생 포지셔닝에서 24시간 OI -2.6060%, CVD -3413.3670으로 반등 수요의 질이 약함",
        "롱 계정 비율 0.675 및 롱 혼잡 신호로 하방 청산 취약성 존재",
        "피보나치 $60,008.61 0.382 되돌림 및 하모닉 $60,024.63 PRZ 부근에서 단기 반등 후보는 있으나, 구조 확정 신호는 부족",
        "Wyckoff Spring 후보가 $58,288.00에서 발생했으나 SOS/LPS가 아직 확인되지 않음"
      ],
      "setup_vs_structure": "구조적 판정은 bearish이고, 실행 셋업도 ICT·파생·캔들 쪽에서 bearish로 기울어 있어 현재는 구조와 셋업이 대체로 정렬되어 있다. 다만 Wyckoff Spring 후보와 피보나치·하모닉 저가 반전 구간이 겹쳐 있어, 하방 구조 안의 반등/재축적 조건은 별도 리스크로 관리해야 한다."
    },
    "signal_breakdown": {
      "bullish_count": 0,
      "bearish_count": 3,
      "neutral_count": 3
    },
    "key_levels": {
      "support": [
        60008.61,
        59252.39,
        59080.0,
        58288.0,
        58030.0,
        57200.0,
        53600.0
      ],
      "resistance": [
        60700.0,
        60841.4,
        61230.99,
        61500.0,
        61665.0,
        61813.6,
        62232.1,
        64001.72,
        64250.0,
        65597.2
      ]
    },
    "confluences": [
      "Derivatives, Candlestick, ICT, Fibonacci 모두 현재가 $60,071.90가 EMA20 $60,841.40 아래에 있다고 보며 단기 구조 수용 실패를 공통으로 지적한다.",
      "ICT의 bearish BOS $62,232.10, Fibonacci의 $62,101.17, Harmonic 후보 PRZ 상단 $62,153.24가 $62.1k~$62.2k 저항 클러스터를 형성한다.",
      "Wyckoff의 Spring 저점 $58,288.00, ICT의 전일 저점 $58,288.00, Candlestick·Fibonacci의 7일/스윙 저점 $58,030.00이 $58.0k~$58.3k 구조적 하단 유동성 구간으로 중첩된다.",
      "Derivatives의 하단 청산 레벨 $58,300 및 $57,200은 Wyckoff Spring 실패 기준 $58,288.00 및 ICT/Candlestick 지지 $58,030.00과 근접해 하단 유동성 밀집을 확인한다.",
      "Wyckoff의 range EQ $61,665.00, Candlestick·ICT의 EQ $61,813.60, Fibonacci의 0.618 $61,230.99, Harmonic PRZ $61,200.40~$61,675.69가 $61.2k~$61.8k 상단 수용 확인 구간으로 겹친다.",
      "EMA120 $64,001.72와 Wyckoff AR $64,250.00이 중기 구조 회복 여부를 판단할 상위 저항대로 일치한다."
    ],
    "conflicts": [
      "Wyckoff는 $58,288.00 Spring 이후 range 내부 재진입을 근거로 축적 후보 구조를 제시하지만, ICT는 $62,232.10 bearish BOS 아래에서 하락 구조가 유지된다고 판단한다.",
      "Fibonacci와 Harmonic은 $60,008.61~$60,024.63 부근에서 단기 bullish 반응 셋업을 제시하지만, 두 분석 모두 구조 확정 신호보다는 저가 반응 후보에 가깝다.",
      "파생 데이터는 CVD 악화와 OI 감소로 수요 약화를 말하지만, Wyckoff 해석상으로는 하단 이탈 후 재진입이 Spring 조건에 해당해 같은 저가 구간을 다르게 해석한다.",
      "Candlestick은 최근 bearish_engulfing 및 dark_cloud_cover를 근거로 약세를 보지만, 고거래량 확인 패턴이 없어 신뢰도는 중간 수준에 머문다."
    ],
    "executive_summary": "현재 BTC 4시간 구조는 다수 분석 기준으로 bearish가 우세하다. 가격은 $60,071.90로 EMA20 $60,841.40, EMA120 $64,001.72, EMA240 $67,252.62 아래에 있으며, ICT 구조상 최근 $62,232.10 bearish BOS가 유지되고 있어 하락 구조가 아직 무효화되지 않았다. 다만 Wyckoff 관점에서는 $58,288.00에서 Spring 후보가 발생한 뒤 range low $59,080.00 위로 재진입했기 때문에, 현재 위치는 하락 구조 내부의 잠재적 Phase C Spring 테스트 구간으로 해석된다. 핵심 구조 조건은 $61,665.00~$61,813.60 EQ 및 $62,232.10 BOS 회복 여부이며, $58,288.00 및 $58,030.00 이탈은 Spring 실패와 하단 구조 훼손 리스크를 강화한다. bearish 구조의 상위 무효화는 $64,250.00 AR 이상 수용이다.",
    "raw_llm_response": "{\n  \"overall_signal\": \"bearish\",\n  \"overall_confidence\": 0.66,\n  \"execution_setup\": {\n    \"setup_bias\": \"bearish\",\n    \"setup_strength\": 0.64,\n    \"active_setups\": [\n      \"가격 $60,071.90가 EMA20 $60,841.40 아래에 머물며 단기 평균선 재수용 실패\",\n      \"ICT 기준 최근 bearish BOS $62,232.10 아래에서 구조 전환 미확인\",\n      \"파생 포지셔닝에서 24시간 OI -2.6060%, CVD -3413.3670으로 반등 수요의 질이 약함\",\n      \"롱 계정 비율 0.675 및 롱 혼잡 신호로 하방 청산 취약성 존재\",\n      \"피보나치 $60,008.61 0.382 되돌림 및 하모닉 $60,024.63 PRZ 부근에서 단기 반등 후보는 있으나, 구조 확정 신호는 부족\",\n      \"Wyckoff Spring 후보가 $58,288.00에서 발생했으나 SOS/LPS가 아직 확인되지 않음\"\n    ],\n    \"setup_vs_structure\": \"구조적 판정은 bearish이고, 실행 셋업도 ICT·파생·캔들 쪽에서 bearish로 기울어 있어 현재는 구조와 셋업이 대체로 정렬되어 있다. 다만 Wyckoff Spring 후보와 피보나치·하모닉 저가 반전 구간이 겹쳐 있어, 하방 구조 안의 반등/재축적 조건은 별도 리스크로 관리해야 한다.\"\n  },\n  \"signal_breakdown\": {\n    \"bullish_count\": 0,\n    \"bearish_count\": 3,\n    \"neutral_count\": 3\n  },\n  \"key_levels\": {\n    \"support\": [\n      60008.61,\n      59252.39,\n      59080.0,\n      58288.0,\n      58030.0,\n      57200.0,\n      53600.0\n    ],\n    \"resistance\": [\n      60700.0,\n      60841.4,\n      61230.99,\n      61500.0,\n      61665.0,\n      61813.6,\n      62232.1,\n      64001.72,\n      64250.0,\n      65597.2\n    ]\n  },\n  \"confluences\": [\n    \"Derivatives, Candlestick, ICT, Fibonacci 모두 현재가 $60,071.90가 EMA20 $60,841.40 아래에 있다고 보며 단기 구조 수용 실패를 공통으로 지적한다.\",\n    \"ICT의 bearish BOS $62,232.10, Fibonacci의 $62,101.17, Harmonic 후보 PRZ 상단 $62,153.24가 $62.1k~$62.2k 저항 클러스터를 형성한다.\",\n    \"Wyckoff의 Spring 저점 $58,288.00, ICT의 전일 저점 $58,288.00, Candlestick·Fibonacci의 7일/스윙 저점 $58,030.00이 $58.0k~$58.3k 구조적 하단 유동성 구간으로 중첩된다.\",\n    \"Derivatives의 하단 청산 레벨 $58,300 및 $57,200은 Wyckoff Spring 실패 기준 $58,288.00 및 ICT/Candlestick 지지 $58,030.00과 근접해 하단 유동성 밀집을 확인한다.\",\n    \"Wyckoff의 range EQ $61,665.00, Candlestick·ICT의 EQ $61,813.60, Fibonacci의 0.618 $61,230.99, Harmonic PRZ $61,200.40~$61,675.69가 $61.2k~$61.8k 상단 수용 확인 구간으로 겹친다.\",\n    \"EMA120 $64,001.72와 Wyckoff AR $64,250.00이 중기 구조 회복 여부를 판단할 상위 저항대로 일치한다.\"\n  ],\n  \"conflicts\": [\n    \"Wyckoff는 $58,288.00 Spring 이후 range 내부 재진입을 근거로 축적 후보 구조를 제시하지만, ICT는 $62,232.10 bearish BOS 아래에서 하락 구조가 유지된다고 판단한다.\",\n    \"Fibonacci와 Harmonic은 $60,008.61~$60,024.63 부근에서 단기 bullish 반응 셋업을 제시하지만, 두 분석 모두 구조 확정 신호보다는 저가 반응 후보에 가깝다.\",\n    \"파생 데이터는 CVD 악화와 OI 감소로 수요 약화를 말하지만, Wyckoff 해석상으로는 하단 이탈 후 재진입이 Spring 조건에 해당해 같은 저가 구간을 다르게 해석한다.\",\n    \"Candlestick은 최근 bearish_engulfing 및 dark_cloud_cover를 근거로 약세를 보지만, 고거래량 확인 패턴이 없어 신뢰도는 중간 수준에 머문다.\"\n  ],\n  \"highest_conviction_analyst\": \"ICT Trader — 신뢰도 78%로 가장 높고, $78,713.80 CHoCH bearish 이후 $76,014.20, $74,203.60, $72,436.00, 최근 $62,232.10 bearish BOS까지 구조적 하락 시퀀스를 구체적으로 제시한다. 또한 confirmed bullish OB, active bullish OB, unfilled bullish FVG가 모두 부재해 하단에서 확정된 기관성 매수 구조가 없다는 점이 bearish 구조 판정의 핵심 근거다.\",\n  \"invalidation_level\": \"$64,250.00 이상 4시간봉 기준 수용. 이는 Wyckoff AR이자 최근 상위 구조 회복 기준이며, 그 전 단계로는 $62,232.10 bearish BOS 회복 여부를 조기 경고선으로 본다.\",\n  \"executive_summary\": \"현재 BTC 4시간 구조는 다수 분석 기준으로 bearish가 우세하다. 가격은 $60,071.90로 EMA20 $60,841.40, EMA120 $64,001.72, EMA240 $67,252.62 아래에 있으며, ICT 구조상 최근 $62,232.10 bearish BOS가 유지되고 있어 하락 구조가 아직 무효화되지 않았다. 다만 Wyckoff 관점에서는 $58,288.00에서 Spring 후보가 발생한 뒤 range low $59,080.00 위로 재진입했기 때문에, 현재 위치는 하락 구조 내부의 잠재적 Phase C Spring 테스트 구간으로 해석된다. 핵심 구조 조건은 $61,665.00~$61,813.60 EQ 및 $62,232.10 BOS 회복 여부이며, $58,288.00 및 $58,030.00 이탈은 Spring 실패와 하단 구조 훼손 리스크를 강화한다. bearish 구조의 상위 무효화는 $64,250.00 AR 이상 수용이다.\"\n}"
  },
  "overall_signal": "bearish",
  "overall_confidence": 0.66,
  "operating_path": {
    "path_type": "complex",
    "confidence": 0.62,
    "waypoints": [
      {
        "seq": 1,
        "price": 60841.4,
        "type": "resistance_test",
        "source": "ict, derivatives, candlestick, fibonacci, wyckoff",
        "description": "현재가 $60,071.90가 0.382 피보 $60,008.61·하모닉 crab PRZ $60,024.63 디스카운트 지지에서 반등을 시도하나, ICT가 지목한 직전 고점 $60,734.00 buy-side 유동성을 쓸어담고 EMA20 $60,841.40 저항을 테스트하는 매도 반응 구간. Derivatives의 상단 청산 $60,700~$61,500, 캔들·피보의 EMA20 재수용 실패와 중첩되어 숏 재진입(sell-the-rip) 자리로 해석.",
        "est_hours": 4.0,
        "turning_zone": [
          60841.4,
          61230.99
        ],
        "likely_wick": 61000.0,
        "rejection_confirm": 60600.0,
        "invalid_overshoot": 61500.0,
        "calibration_reasoning": "EMA20 저항 $60,841.40을 zone 하단, 피보 0.618 골든비율 $61,230.99(의장 저항 중첩)을 상단으로 설정(폭 약 0.33 ATR). 직전 고점 $60,734 buy-side 유동성 스윕 후 라운드넘버 $61,000 자석으로 likely_wick 편향했고, $60,620 피보 저항(=$60,600) 회복 실패 시 거부 확인, $61,500(의장·파생 청산 상단) 종가 돌파 시 무효."
      },
      {
        "seq": 2,
        "price": 59080.0,
        "type": "support_test",
        "source": "wyckoff, fibonacci, ict, derivatives",
        "description": "EMA20 거부 후 Wyckoff 메인 range low/SC $59,080.00 재테스트. 피보 $59,252.39 지지 및 ICT·Derivatives 지지 구간과 인접한 중간 하락 목표로, 이 구간을 수용 회복하지 못하면 하단 유동성 클러스터로 연장되는 분기점.",
        "est_hours": 11.0,
        "turning_zone": [
          58700.0,
          59080.0
        ],
        "likely_wick": 59000.0,
        "rejection_confirm": 59252.39,
        "invalid_overshoot": 58500.0,
        "calibration_reasoning": "Wyckoff SC/range low $59,080을 zone 상단, 0.32 ATR 아래 $58,700까지 지지 테스트 밴드 설정. 라운드넘버 $59,000 자석과 서브-SC 스톱 스윕으로 likely_wick 결정. 피보 $59,252.39(의장 지지) 재탈환 시 반등 확인, $58,500 이탈 시 하단 유동성 클러스터(WP3)로 연장되어 분기점 무효."
      },
      {
        "seq": 3,
        "price": 58030.0,
        "type": "liquidity_sweep",
        "source": "fibonacci, candlestick, ict, wyckoff, derivatives",
        "description": "$58,030.00 7일·스윙 저점(fib_confluence WP 후보)과 Wyckoff Spring 저점 $58,288.00, ICT 전일 저점이 중첩된 $58.0k~$58.3k 하단 유동성 클러스터를 sell-side로 청소. 롱 혼잡(account_long_crowding 1.000)과 Derivatives 청산 레벨 $58,300이 겹쳐 하방 유동성 흡수 지점. 단, Wyckoff Spring 반응 가능 구간이므로 도달 후 반전 반응에 주의(candidate-tier, 넓은 반전 존으로 취급).",
        "est_hours": 19.0,
        "turning_zone": [
          57400.0,
          58030.0
        ],
        "likely_wick": 57900.0,
        "rejection_confirm": 58288.0,
        "invalid_overshoot": 57200.0,
        "calibration_reasoning": "경로상 sell-side 스윕이므로 base 아래로 zone 확장(터미널 0.53 ATR). 피보 ext_1.0 confluence $58,030을 상단, 라운드넘버 $58,000 강력 자석으로 likely_wick $57,900(스윙 저점 하단 스톱 스윕)에 편향. Wyckoff Spring/클러스터 상단 $58,288 재탈환이 반전 확인이며, 의장 지지 $57,200($53,600까지 큰 갭) 종가 이탈 시 스윕→붕괴 전환으로 무효."
      }
    ],
    "period_extremes": {
      "4h": {
        "expected_high": 60841.4,
        "expected_low": 59950.0,
        "high_first": true
      },
      "8h": {
        "expected_high": 60841.4,
        "expected_low": 58900.0,
        "high_first": true
      },
      "24h": {
        "expected_high": 60900.0,
        "expected_low": 58030.0,
        "high_first": true
      }
    },
    "triggers": {
      "bullish": {
        "price": 61813.6,
        "description": "EQ 클러스터 $61,665.00~$61,813.60 위로 종가 수용 시 디스카운트 매도 우위가 약화되고, 연이어 $62,232.10 ICT BOS 재돌파 시 강세 가속 — 본 하락 경로 약화 신호."
      },
      "bearish": {
        "price": 58030.0,
        "description": "Spring 저점 $58,288.00 이탈에 이어 7일 저점 $58,030.00 종가 이탈 시 Wyckoff Spring 실패 확정, $57,200·$53,600 하방 유동성으로 가속."
      }
    },
    "scenario_invalidation": 62232.1,
    "raw_llm_response": "```json\n{\n  \"path_type\": \"complex\",\n  \"confidence\": 0.62,\n  \"waypoints\": [\n    {\n      \"seq\": 1,\n      \"price\": 60841.40,\n      \"type\": \"resistance_test\",\n      \"source\": \"ict, derivatives, candlestick, fibonacci, wyckoff\",\n      \"description\": \"현재가 $60,071.90가 0.382 피보 $60,008.61·하모닉 crab PRZ $60,024.63 디스카운트 지지에서 반등을 시도하나, ICT가 지목한 직전 고점 $60,734.00 buy-side 유동성을 쓸어담고 EMA20 $60,841.40 저항을 테스트하는 매도 반응 구간. Derivatives의 상단 청산 $60,700~$61,500, 캔들·피보의 EMA20 재수용 실패와 중첩되어 숏 재진입(sell-the-rip) 자리로 해석.\",\n      \"est_hours\": 4.0\n    },\n    {\n      \"seq\": 2,\n      \"price\": 59080.00,\n      \"type\": \"support_test\",\n      \"source\": \"wyckoff, fibonacci, ict, derivatives\",\n      \"description\": \"EMA20 거부 후 Wyckoff 메인 range low/SC $59,080.00 재테스트. 피보 $59,252.39 지지 및 ICT·Derivatives 지지 구간과 인접한 중간 하락 목표로, 이 구간을 수용 회복하지 못하면 하단 유동성 클러스터로 연장되는 분기점.\",\n      \"est_hours\": 11.0\n    },\n    {\n      \"seq\": 3,\n      \"price\": 58030.00,\n      \"type\": \"liquidity_sweep\",\n      \"source\": \"fibonacci, candlestick, ict, wyckoff, derivatives\",\n      \"description\": \"$58,030.00 7일·스윙 저점(fib_confluence WP 후보)과 Wyckoff Spring 저점 $58,288.00, ICT 전일 저점이 중첩된 $58.0k~$58.3k 하단 유동성 클러스터를 sell-side로 청소. 롱 혼잡(account_long_crowding 1.000)과 Derivatives 청산 레벨 $58,300이 겹쳐 하방 유동성 흡수 지점. 단, Wyckoff Spring 반응 가능 구간이므로 도달 후 반전 반응에 주의(candidate-tier, 넓은 반전 존으로 취급).\",\n      \"est_hours\": 19.0\n    }\n  ],\n  \"period_extremes\": {\n    \"4h\":  {\"expected_high\": 60841.40, \"expected_low\": 59950.00, \"high_first\": true},\n    \"8h\":  {\"expected_high\": 60841.40, \"expected_low\": 58900.00, \"high_first\": true},\n    \"24h\": {\"expected_high\": 60900.00, \"expected_low\": 58030.00, \"high_first\": true}\n  },\n  \"triggers\": {\n    \"bullish\": {\n      \"price\": 61813.60,\n      \"description\": \"EQ 클러스터 $61,665.00~$61,813.60 위로 종가 수용 시 디스카운트 매도 우위가 약화되고, 연이어 $62,232.10 ICT BOS 재돌파 시 강세 가속 — 본 하락 경로 약화 신호.\"\n    },\n    \"bearish\": {\n      \"price\": 58030.00,\n      \"description\": \"Spring 저점 $58,288.00 이탈에 이어 7일 저점 $58,030.00 종가 이탈 시 Wyckoff Spring 실패 확정, $57,200·$53,600 하방 유동성으로 가속.\"\n    }\n  },\n  \"scenario_invalidation\": 62232.10\n}\n```"
  },
  "tp_calibration": {
    "executive_summary": "하락 추세 경로의 3개 웨이포인트를 피보 클러스터·의장 레벨·라운드넘버 자석으로 앵커링하고 ATR(1,184.66)로 폭을 산정해 캘리브레이션함. WP1은 EMA20~골든비율 구간의 sell-the-rip 저항 반응($61,000 라운드넘버 자석), WP2는 Wyckoff SC $59,080의 얕은 언더컷 지지 테스트(분기점), WP3은 터미널 sell-side 유동성 스윕으로 $58,000 라운드넘버 하단을 청소 후 Wyckoff Spring 반전 가능 구간. WP3은 sell-side 스윕이라 base 아래로 zone을 확장함(경로 방향 우선).",
    "calibrated_waypoints": [
      {
        "seq": 1,
        "base_target": 60841.4,
        "turning_zone": [
          60841.4,
          61230.99
        ],
        "likely_wick": 61000.0,
        "rejection_confirm": 60600.0,
        "invalid_overshoot": 61500.0,
        "calibration_reasoning": "EMA20 저항 $60,841.40을 zone 하단, 피보 0.618 골든비율 $61,230.99(의장 저항 중첩)을 상단으로 설정(폭 약 0.33 ATR). 직전 고점 $60,734 buy-side 유동성 스윕 후 라운드넘버 $61,000 자석으로 likely_wick 편향했고, $60,620 피보 저항(=$60,600) 회복 실패 시 거부 확인, $61,500(의장·파생 청산 상단) 종가 돌파 시 무효."
      },
      {
        "seq": 2,
        "base_target": 59080.0,
        "turning_zone": [
          58700.0,
          59080.0
        ],
        "likely_wick": 59000.0,
        "rejection_confirm": 59252.39,
        "invalid_overshoot": 58500.0,
        "calibration_reasoning": "Wyckoff SC/range low $59,080을 zone 상단, 0.32 ATR 아래 $58,700까지 지지 테스트 밴드 설정. 라운드넘버 $59,000 자석과 서브-SC 스톱 스윕으로 likely_wick 결정. 피보 $59,252.39(의장 지지) 재탈환 시 반등 확인, $58,500 이탈 시 하단 유동성 클러스터(WP3)로 연장되어 분기점 무효."
      },
      {
        "seq": 3,
        "base_target": 58030.0,
        "turning_zone": [
          57400.0,
          58030.0
        ],
        "likely_wick": 57900.0,
        "rejection_confirm": 58288.0,
        "invalid_overshoot": 57200.0,
        "calibration_reasoning": "경로상 sell-side 스윕이므로 base 아래로 zone 확장(터미널 0.53 ATR). 피보 ext_1.0 confluence $58,030을 상단, 라운드넘버 $58,000 강력 자석으로 likely_wick $57,900(스윙 저점 하단 스톱 스윕)에 편향. Wyckoff Spring/클러스터 상단 $58,288 재탈환이 반전 확인이며, 의장 지지 $57,200($53,600까지 큰 갭) 종가 이탈 시 스윕→붕괴 전환으로 무효."
      }
    ],
    "raw_llm_response": "```json\n{\n  \"executive_summary\": \"하락 추세 경로의 3개 웨이포인트를 피보 클러스터·의장 레벨·라운드넘버 자석으로 앵커링하고 ATR(1,184.66)로 폭을 산정해 캘리브레이션함. WP1은 EMA20~골든비율 구간의 sell-the-rip 저항 반응($61,000 라운드넘버 자석), WP2는 Wyckoff SC $59,080의 얕은 언더컷 지지 테스트(분기점), WP3은 터미널 sell-side 유동성 스윕으로 $58,000 라운드넘버 하단을 청소 후 Wyckoff Spring 반전 가능 구간. WP3은 sell-side 스윕이라 base 아래로 zone을 확장함(경로 방향 우선).\",\n  \"calibrated_waypoints\": [\n    {\n      \"seq\": 1,\n      \"base_target\": 60841.40,\n      \"turning_zone\": [60841.40, 61230.99],\n      \"likely_wick\": 61000.00,\n      \"rejection_confirm\": 60600.00,\n      \"invalid_overshoot\": 61500.00,\n      \"calibration_reasoning\": \"EMA20 저항 $60,841.40을 zone 하단, 피보 0.618 골든비율 $61,230.99(의장 저항 중첩)을 상단으로 설정(폭 약 0.33 ATR). 직전 고점 $60,734 buy-side 유동성 스윕 후 라운드넘버 $61,000 자석으로 likely_wick 편향했고, $60,620 피보 저항(=$60,600) 회복 실패 시 거부 확인, $61,500(의장·파생 청산 상단) 종가 돌파 시 무효.\"\n    },\n    {\n      \"seq\": 2,\n      \"base_target\": 59080.00,\n      \"turning_zone\": [58700.00, 59080.00],\n      \"likely_wick\": 59000.00,\n      \"rejection_confirm\": 59252.39,\n      \"invalid_overshoot\": 58500.00,\n      \"calibration_reasoning\": \"Wyckoff SC/range low $59,080을 zone 상단, 0.32 ATR 아래 $58,700까지 지지 테스트 밴드 설정. 라운드넘버 $59,000 자석과 서브-SC 스톱 스윕으로 likely_wick 결정. 피보 $59,252.39(의장 지지) 재탈환 시 반등 확인, $58,500 이탈 시 하단 유동성 클러스터(WP3)로 연장되어 분기점 무효.\"\n    },\n    {\n      \"seq\": 3,\n      \"base_target\": 58030.00,\n      \"turning_zone\": [57400.00, 58030.00],\n      \"likely_wick\": 57900.00,\n      \"rejection_confirm\": 58288.00,\n      \"invalid_overshoot\": 57200.00,\n      \"calibration_reasoning\": \"경로상 sell-side 스윕이므로 base 아래로 zone 확장(터미널 0.53 ATR). 피보 ext_1.0 confluence $58,030을 상단, 라운드넘버 $58,000 강력 자석으로 likely_wick $57,900(스윙 저점 하단 스톱 스윕)에 편향. Wyckoff Spring/클러스터 상단 $58,288 재탈환이 반전 확인이며, 의장 지지 $57,200($53,600까지 큰 갭) 종가 이탈 시 스윕→붕괴 전환으로 무효.\"\n    }\n  ]\n}\n```"
  },
  "timing": {
    "stages": {
      "stage1_agents": 56.2,
      "chairman": 76.6,
      "operating_path": 219.8,
      "tp_calibrator": 226.9
    },
    "agents": {},
    "total_s": 579.7
  }
}