{
  "symbol": "BTC/USDT",
  "timeframe": "1d",
  "timestamp": "2026-06-14 13:00 KST",
  "last_price": 64514.9,
  "num_candles": 300,
  "stage1_analyses": {
    "derivatives": {
      "agent_id": "derivatives",
      "display_name": "Derivatives Trader",
      "signal": "bullish",
      "confidence": 0.58,
      "structure_bias": "bearish",
      "setup_bias": "bullish",
      "setup_score": 0.68,
      "setup_signals": [
        "현재가 $64,514.90가 EMA20 $66,648.83 대비 -3.2%, EMA120 $74,496.67 대비 -13.4% 아래에 있어 구조는 약세이나 단기적으로 할인 구간 반등 셋업",
        "CVD divergence 0.700 및 CVD change +435.3090으로 가격 대비 매수 체결 누적이 개선되는 상승 다이버전스",
        "OI 24h +2.40% 상승으로 신규 포지션 유입 중이며, funding_avg 0.000 및 funding_change_24h -0.0001로 과열 롱 펀딩이 아님",
        "short accounts rising / long accounts falling: long_account_latest 0.593에서 24h -0.0169, short_account 24h +0.017로 단기 숏 증가가 숏스퀴즈 연료가 될 수 있음",
        "가장 강한 상단 청산 유동성 $66,100, 추가 상단 유동성 $67,100 및 $69,400이 열려 있어 4-8시간 내 유동성 흡수 가능성"
      ],
      "reasoning": "확정 구조는 가격이 EMA20 $66,648.83, EMA120 $74,496.67, EMA240 $81,573.56 모두 아래에 머물러 있어 아직 bearish이며, $66,648 이상 구조적 수용 전까지 추세 전환은 확인되지 않았다. 다만 셋업 관점에서는 CVD divergence 0.700, CVD change +435.3090, OI +2.40%가 동시에 나타나며 신규 포지션 유입 속 매수 체결이 개선되고 있어 단기 반등 조건이 형성되어 있다. funding은 0.000 수준으로 롱 과열은 제한적이고, 롱 계정 비중은 0.593으로 여전히 높지만 24시간 -0.0169 감소, 숏 계정은 +0.017 증가해 $66,100 상단 청산 클러스터로의 숏스퀴즈 가능성이 있다. 핵심은 $63,500 하방 청산 레벨을 지키는지이며, 이를 이탈하면 $61,600 및 7일 저점 $60,691.90까지 빠르게 되돌릴 수 있다.",
      "key_levels": {
        "support": [
          63500,
          61600,
          60691.9,
          57500
        ],
        "resistance": [
          66100,
          66648.83,
          67100,
          69400
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$63,500",
      "risk_scenario": "$63,500 하방 청산 레벨이 무너지면 현재의 CVD 개선은 흡수 실패로 해석되며, OI 증가분이 롱 청산으로 전환되어 $61,600, 이후 7일 저점 $60,691.90까지 하락 가속이 발생할 수 있다.",
      "data_quality": "medium",
      "metrics": {
        "cvd_divergence": 0.7,
        "cvd_change": 435.309,
        "oi_trend": 0.74,
        "oi_change_pct_24h": 2.4,
        "oi_latest": 100142.273,
        "funding_pressure": 0.495,
        "funding_avg": 4.61e-06,
        "funding_change_24h": -9.867e-05,
        "long_account_ratio": 0.601,
        "short_account_ratio": 0.399,
        "long_account_latest": 0.593,
        "short_account_latest": 0.407,
        "long_account_change_24h": -0.0169,
        "short_account_change_24h": 0.0169,
        "account_flow_label": "short_accounts_rising_long_accounts_falling",
        "account_short_crowding": 0.0,
        "account_long_crowding": 0.845,
        "ls_imbalance": 0.0,
        "ls_imbalance_interpretation": "high=short-account crowding / low=long-account crowding",
        "spot_futures_basis_score": 0.488,
        "spot_futures_basis_pct": -0.0471,
        "basis_change_lookback": -0.0121,
        "aggregate_score": 0.485,
        "bull_signals": 2,
        "bear_signals": 1,
        "liq_below": [
          [
            63500,
            113874.34021260001
          ],
          [
            61600,
            101553.760509
          ],
          [
            57500,
            91624.6048375
          ]
        ],
        "liq_above": [
          [
            66100,
            127208.7336788
          ],
          [
            67100,
            105400.08183125
          ],
          [
            69400,
            98819.4924855
          ]
        ],
        "strongest_liq_level": 66100,
        "fragility_score": 0.962,
        "positioning_extreme": "balanced"
      },
      "raw_llm_response": "{\n  \"signal\": \"bullish\",\n  \"confidence\": 0.58,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.68,\n  \"setup_signals\": [\n    \"현재가 $64,514.90가 EMA20 $66,648.83 대비 -3.2%, EMA120 $74,496.67 대비 -13.4% 아래에 있어 구조는 약세이나 단기적으로 할인 구간 반등 셋업\",\n    \"CVD divergence 0.700 및 CVD change +435.3090으로 가격 대비 매수 체결 누적이 개선되는 상승 다이버전스\",\n    \"OI 24h +2.40% 상승으로 신규 포지션 유입 중이며, funding_avg 0.000 및 funding_change_24h -0.0001로 과열 롱 펀딩이 아님\",\n    \"short accounts rising / long accounts falling: long_account_latest 0.593에서 24h -0.0169, short_account 24h +0.017로 단기 숏 증가가 숏스퀴즈 연료가 될 수 있음\",\n    \"가장 강한 상단 청산 유동성 $66,100, 추가 상단 유동성 $67,100 및 $69,400이 열려 있어 4-8시간 내 유동성 흡수 가능성\"\n  ],\n  \"reasoning\": \"확정 구조는 가격이 EMA20 $66,648.83, EMA120 $74,496.67, EMA240 $81,573.56 모두 아래에 머물러 있어 아직 bearish이며, $66,648 이상 구조적 수용 전까지 추세 전환은 확인되지 않았다. 다만 셋업 관점에서는 CVD divergence 0.700, CVD change +435.3090, OI +2.40%가 동시에 나타나며 신규 포지션 유입 속 매수 체결이 개선되고 있어 단기 반등 조건이 형성되어 있다. funding은 0.000 수준으로 롱 과열은 제한적이고, 롱 계정 비중은 0.593으로 여전히 높지만 24시간 -0.0169 감소, 숏 계정은 +0.017 증가해 $66,100 상단 청산 클러스터로의 숏스퀴즈 가능성이 있다. 핵심은 $63,500 하방 청산 레벨을 지키는지이며, 이를 이탈하면 $61,600 및 7일 저점 $60,691.90까지 빠르게 되돌릴 수 있다.\",\n  \"key_levels\": {\n    \"support\": [\n      63500,\n      61600,\n      60691.9,\n      57500\n    ],\n    \"resistance\": [\n      66100,\n      66648.83,\n      67100,\n      69400\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$63,500\",\n  \"risk_scenario\": \"$63,500 하방 청산 레벨이 무너지면 현재의 CVD 개선은 흡수 실패로 해석되며, OI 증가분이 롱 청산으로 전환되어 $61,600, 이후 7일 저점 $60,691.90까지 하락 가속이 발생할 수 있다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "fibonacci": {
      "agent_id": "fibonacci",
      "display_name": "Fibonacci Analyst",
      "signal": "bearish",
      "confidence": 0.62,
      "structure_bias": "bearish",
      "setup_bias": "bearish",
      "setup_score": 0.55,
      "setup_signals": [
        "현재가 $64,514.90가 하락 스윙 $82,829→$59,080의 0.236 되돌림 저항 $64,684.69를 0.26% 거리에서 테스트 중",
        "가격이 EQ인 0.5 되돌림 $70,954.35 아래에 있어 구조적으로는 여전히 하락 스윙의 할인 구간이나, 회복 확인 전에는 약한 반등 구간",
        "0.382 되돌림 $68,152.00 및 0.618 황금비율 $73,756.70을 회복하지 못한 상태로, 주요 피보나치 저항들이 상방에 밀집",
        "현재가가 EMA20 $66,648.83보다 3.2%, EMA120 $74,496.67보다 13.4%, EMA240 $81,573.56보다 20.9% 낮아 중기 추세 저항 우위"
      ],
      "reasoning": "확정 구조는 $82,829 고점에서 $59,080 저점까지의 하락 스윙이 기준이며, 현재가는 첫 되돌림 저항인 0.236 레벨 $64,684.69 바로 아래에서 테스트 중입니다. 0.382 저항 $68,152.00, 0.5 EQ $70,954.35, 핵심 0.618 황금비율 $73,756.70이 모두 현재가 위에 있어 아직 구조적 반전보다는 하락 추세 내 약한 되돌림으로 해석됩니다. 단기적으로 $64,684.69를 명확히 돌파하지 못하면 $59,080.00 재시험 가능성이 열리며, 해당 레벨은 confluence count 2 및 cluster_score 0.6의 핵심 지지 구간입니다. 반대로 $68,152.00 위로 수용되면 단기 하락 셋업은 약화되고 $70,954.35까지 되돌림 확장이 가능해집니다.",
      "key_levels": {
        "support": [
          59080.0,
          52620.35,
          49248.04
        ],
        "resistance": [
          64684.69,
          68152.0,
          70954.35,
          73756.7
        ]
      },
      "time_horizon": "short/medium term",
      "invalidation_level": "$68,152.00",
      "risk_scenario": "$64,684.69를 상향 돌파하고 $68,152.00 위에서 일봉 수용이 확인되면 하락 반응 실패로 판단되며, 이후 $70,954.35의 EQ와 $73,756.70의 0.618 황금비율까지 숏 커버성 되돌림이 확장될 수 있습니다.",
      "data_quality": "medium",
      "metrics": {
        "swing_pair": "High→Low: $82,829 → $59,080",
        "direction": "down",
        "nearest_fib": "ret_0.236",
        "nearest_fib_price": 64684.69,
        "nearest_fib_distance": 0.26,
        "golden_ratio_level": 73756.7,
        "fib_ret_382": 68152.0,
        "fib_ret_618": 73756.7,
        "confluence_zones": [
          {
            "price": 59080.0,
            "count": 2,
            "levels": [
              "ext_1.0",
              "ext_1.0"
            ],
            "cluster_score": 0.6
          }
        ],
        "support_levels": [
          59080.0,
          52620.3536,
          49248.0382
        ],
        "resistance_levels": [
          64684.6932,
          68152.0034,
          70954.35
        ],
        "level_candidates": [
          {
            "name": "ret_0.236",
            "price": 64684.69,
            "distance_pct": 0.26,
            "is_support": false,
            "cluster_score": 0.0
          },
          {
            "name": "ret_0.382",
            "price": 68152.0,
            "distance_pct": 5.64,
            "is_support": false,
            "cluster_score": 0.0
          },
          {
            "name": "ret_0.5",
            "price": 70954.35,
            "distance_pct": 9.98,
            "is_support": false,
            "cluster_score": 0.0
          },
          {
            "name": "ret_0.618",
            "price": 73756.7,
            "distance_pct": 14.33,
            "is_support": false,
            "cluster_score": 0.0
          },
          {
            "name": "ret_0.786",
            "price": 77746.48,
            "distance_pct": 20.51,
            "is_support": false,
            "cluster_score": 0.0
          },
          {
            "name": "ext_1.0",
            "price": 59080.0,
            "distance_pct": 8.42,
            "is_support": true,
            "cluster_score": 0.6
          },
          {
            "name": "ext_1.272",
            "price": 52620.35,
            "distance_pct": 18.44,
            "is_support": true,
            "cluster_score": 0.0
          },
          {
            "name": "ext_1.414",
            "price": 49248.04,
            "distance_pct": 23.66,
            "is_support": true,
            "cluster_score": 0.0
          },
          {
            "name": "ext_1.618",
            "price": 44403.3,
            "distance_pct": 31.17,
            "is_support": true,
            "cluster_score": 0.0
          },
          {
            "name": "ext_2.0",
            "price": 35331.3,
            "distance_pct": 45.24,
            "is_support": true,
            "cluster_score": 0.0
          }
        ],
        "confluence_quality": 0.6,
        "fib_reaction_state": "testing",
        "reaction_probability": 0.65
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.62,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.55,\n  \"setup_signals\": [\n    \"현재가 $64,514.90가 하락 스윙 $82,829→$59,080의 0.236 되돌림 저항 $64,684.69를 0.26% 거리에서 테스트 중\",\n    \"가격이 EQ인 0.5 되돌림 $70,954.35 아래에 있어 구조적으로는 여전히 하락 스윙의 할인 구간이나, 회복 확인 전에는 약한 반등 구간\",\n    \"0.382 되돌림 $68,152.00 및 0.618 황금비율 $73,756.70을 회복하지 못한 상태로, 주요 피보나치 저항들이 상방에 밀집\",\n    \"현재가가 EMA20 $66,648.83보다 3.2%, EMA120 $74,496.67보다 13.4%, EMA240 $81,573.56보다 20.9% 낮아 중기 추세 저항 우위\"\n  ],\n  \"reasoning\": \"확정 구조는 $82,829 고점에서 $59,080 저점까지의 하락 스윙이 기준이며, 현재가는 첫 되돌림 저항인 0.236 레벨 $64,684.69 바로 아래에서 테스트 중입니다. 0.382 저항 $68,152.00, 0.5 EQ $70,954.35, 핵심 0.618 황금비율 $73,756.70이 모두 현재가 위에 있어 아직 구조적 반전보다는 하락 추세 내 약한 되돌림으로 해석됩니다. 단기적으로 $64,684.69를 명확히 돌파하지 못하면 $59,080.00 재시험 가능성이 열리며, 해당 레벨은 confluence count 2 및 cluster_score 0.6의 핵심 지지 구간입니다. 반대로 $68,152.00 위로 수용되면 단기 하락 셋업은 약화되고 $70,954.35까지 되돌림 확장이 가능해집니다.\",\n  \"key_levels\": {\n    \"support\": [\n      59080.0,\n      52620.35,\n      49248.04\n    ],\n    \"resistance\": [\n      64684.69,\n      68152.0,\n      70954.35,\n      73756.7\n    ]\n  },\n  \"time_horizon\": \"short/medium term\",\n  \"invalidation_level\": \"$68,152.00\",\n  \"risk_scenario\": \"$64,684.69를 상향 돌파하고 $68,152.00 위에서 일봉 수용이 확인되면 하락 반응 실패로 판단되며, 이후 $70,954.35의 EQ와 $73,756.70의 0.618 황금비율까지 숏 커버성 되돌림이 확장될 수 있습니다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "ict": {
      "agent_id": "ict",
      "display_name": "ICT Trader",
      "signal": "bearish",
      "confidence": 0.74,
      "structure_bias": "bearish",
      "setup_bias": "bearish",
      "setup_score": 0.815,
      "setup_signals": [
        "가격이 최근 bearish CHoCH 레벨 $64,918.20 아래인 $64,514.90에 위치해 단기 구조 회복 실패",
        "EMA20 $66,648.83, EMA120 $74,496.67, EMA240 $81,573.56 모두 현재가 위에 있어 상방 저항 배열 우세",
        "EQ $70,954.35 아래 discount 구간이지만, 미체결 bullish FVG와 활성 bullish OB가 없어 즉각적인 기관 매수 배열 확인 부족",
        "후보 bearish OB가 $80,651.20~$82,828.70에 남아 있어 중기 상방 되돌림 시 공급 구간으로 작동 가능",
        "전일 고가 $64,738.00을 돌파하지 못했고, 전일 저가 $63,360.00도 아직 미이탈 상태로 단기 유동성 압축 구간"
      ],
      "reasoning": "확정 구조는 bearish로 판단한다. 최근 구조 이벤트가 CHoCH_bearish $64,918.20에서 발생했고 현재가 $64,514.90는 그 아래에 있어 시장이 아직 bearish regime을 회복하지 못했다. 현재 가격은 range high $82,828.70와 range low $59,080.00 기준 EQ $70,954.35 아래 discount에 있으므로 추격 숏의 기대값은 다소 낮지만, 활성 bullish OB와 미체결 bullish FVG가 전혀 없어 반등을 지지할 기관 매수 배열도 부족하다. 단기적으로는 전일 저가 $63,360.00 및 7일 저가 $60,691.90 쪽 sell-side liquidity가 다음 목표이며, $64,918.20을 회복하면 현재 bearish setup은 약화된다.",
      "key_levels": {
        "support": [
          63360.0,
          60691.9,
          59080.0
        ],
        "resistance": [
          64738.0,
          64918.2,
          66648.83,
          70954.35,
          80651.2,
          82828.7
        ]
      },
      "time_horizon": "short/medium term",
      "invalidation_level": "$64,918.20",
      "risk_scenario": "가격이 $64,918.20을 회복하고 전일 고가 $64,738.00 위에서 수용되면 최근 bearish CHoCH 하단 이탈이 실패 신호가 될 수 있다. 이 경우 숏 포지션은 단기 숏커버링에 노출되며, 다음 저항은 EMA20 $66,648.83과 EQ $70,954.35로 열린다.",
      "data_quality": "medium",
      "metrics": {
        "order_blocks_total": 1,
        "confirmed_bullish_ob": 0,
        "confirmed_bearish_ob": 0,
        "candidate_bullish_ob": 0,
        "candidate_bearish_ob": 1,
        "active_bullish_ob": 0,
        "active_bearish_ob": 0,
        "nearest_bull_ob_range": null,
        "nearest_bear_ob_range": {
          "bottom": 80651.2,
          "top": 82828.7,
          "quality": "candidate",
          "score": 0.511
        },
        "active_bullish_ob_list": [],
        "active_bearish_ob_list": [],
        "ob_mitigated_count": 2,
        "unfilled_bull_fvg_count": 0,
        "unfilled_bear_fvg_count": 0,
        "bull_fvg_ranges": [],
        "bear_fvg_ranges": [],
        "fvg_open_count": 0,
        "fvg_mitigated_count": 68,
        "fvg_open_zones": [],
        "bos_choch_events": [
          "CHoCH_bearish",
          "BOS_bearish",
          "BOS_bullish",
          "CHoCH_bearish",
          "BOS_bullish",
          "CHoCH_bearish"
        ],
        "bos_choch_levels": [
          {
            "type": "CHoCH_bearish",
            "level": 108566.0
          },
          {
            "type": "BOS_bearish",
            "level": 101516.5
          },
          {
            "type": "BOS_bullish",
            "level": 94555.0
          },
          {
            "type": "CHoCH_bearish",
            "level": 84408.6
          },
          {
            "type": "BOS_bullish",
            "level": 75998.9
          },
          {
            "type": "CHoCH_bearish",
            "level": 64918.2
          }
        ],
        "bos_sequence": [
          "CHoCH_bullish",
          "CHoCH_bearish",
          "BOS_bearish",
          "BOS_bullish",
          "CHoCH_bearish",
          "BOS_bullish",
          "CHoCH_bearish"
        ],
        "consecutive_bull_bos": 0,
        "consecutive_bear_bos": 0,
        "recent_liq_sweeps": [],
        "recent_sweep_levels": [],
        "liquidity_resting": [],
        "current_zone": "discount",
        "eq_level": 70954.35,
        "range_high": 82828.7,
        "range_low": 59080.0,
        "bull_score": 6.5,
        "bear_score": 9.1,
        "setup_bias": "bearish",
        "setup_score": 0.815,
        "setup_signals": [
          "bearish CHoCH below $108,566.00",
          "bearish BOS below $101,516.50",
          "bearish CHoCH below $84,408.60",
          "bearish CHoCH below $64,918.20"
        ],
        "retracement_direction": "bullish",
        "current_retracement_pct": 108.7,
        "deepest_retracement_pct": 132.6,
        "previous_day_high": 64738.0,
        "previous_day_low": 63360.0,
        "broken_prev_high": false,
        "broken_prev_low": false,
        "sessions": {}
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.74,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.815,\n  \"setup_signals\": [\n    \"가격이 최근 bearish CHoCH 레벨 $64,918.20 아래인 $64,514.90에 위치해 단기 구조 회복 실패\",\n    \"EMA20 $66,648.83, EMA120 $74,496.67, EMA240 $81,573.56 모두 현재가 위에 있어 상방 저항 배열 우세\",\n    \"EQ $70,954.35 아래 discount 구간이지만, 미체결 bullish FVG와 활성 bullish OB가 없어 즉각적인 기관 매수 배열 확인 부족\",\n    \"후보 bearish OB가 $80,651.20~$82,828.70에 남아 있어 중기 상방 되돌림 시 공급 구간으로 작동 가능\",\n    \"전일 고가 $64,738.00을 돌파하지 못했고, 전일 저가 $63,360.00도 아직 미이탈 상태로 단기 유동성 압축 구간\"\n  ],\n  \"reasoning\": \"확정 구조는 bearish로 판단한다. 최근 구조 이벤트가 CHoCH_bearish $64,918.20에서 발생했고 현재가 $64,514.90는 그 아래에 있어 시장이 아직 bearish regime을 회복하지 못했다. 현재 가격은 range high $82,828.70와 range low $59,080.00 기준 EQ $70,954.35 아래 discount에 있으므로 추격 숏의 기대값은 다소 낮지만, 활성 bullish OB와 미체결 bullish FVG가 전혀 없어 반등을 지지할 기관 매수 배열도 부족하다. 단기적으로는 전일 저가 $63,360.00 및 7일 저가 $60,691.90 쪽 sell-side liquidity가 다음 목표이며, $64,918.20을 회복하면 현재 bearish setup은 약화된다.\",\n  \"key_levels\": {\n    \"support\": [\n      63360.0,\n      60691.9,\n      59080.0\n    ],\n    \"resistance\": [\n      64738.0,\n      64918.2,\n      66648.83,\n      70954.35,\n      80651.2,\n      82828.7\n    ]\n  },\n  \"time_horizon\": \"short/medium term\",\n  \"invalidation_level\": \"$64,918.20\",\n  \"risk_scenario\": \"가격이 $64,918.20을 회복하고 전일 고가 $64,738.00 위에서 수용되면 최근 bearish CHoCH 하단 이탈이 실패 신호가 될 수 있다. 이 경우 숏 포지션은 단기 숏커버링에 노출되며, 다음 저항은 EMA20 $66,648.83과 EQ $70,954.35로 열린다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "candlestick": {
      "agent_id": "candlestick",
      "display_name": "Candlestick Reader",
      "signal": "bullish",
      "confidence": 0.58,
      "structure_bias": "bearish",
      "setup_bias": "bullish",
      "setup_score": 0.62,
      "setup_signals": [
        "현재가 $64,514.90가 EMA20 $66,648.83 아래 -3.2%에 위치하여 단기 평균회귀성 반등 셋업 존재",
        "현재가가 EMA120 $74,496.67 아래 -13.4%, EMA240 $81,573.56 아래 -20.9%에 있어 구조는 아직 약세이나 할인 구간 반등 후보",
        "최근 7일 저점 $60,691.90 방어 이후 bullish_engulfing@292, @296, @298 및 morning_star@292가 반복 출현",
        "최근 패턴 bull_score 3.0500 대 bear_score 0.800으로 단기 캔들 모멘텀은 매수 우위",
        "best_pattern_quality 0.672의 morning_star가 strict tier로 감지되었으나 high_volume_patterns가 없어 확정 강도는 제한적"
      ],
      "reasoning": "BTC는 현재 $64,514.90에서 거래 중이며 EMA20 $66,648.83, EMA120 $74,496.67, EMA240 $81,573.56을 모두 하회하고 있어 확인된 구조_bias는 아직 bearish입니다. 다만 최근 5개 일봉이 ▼-0.3%, ▲+3.4%, ▼-0.1%, ▲+1.4%, ▲+0.1%로 저점권에서 매수 반응을 보였고, bullish engulfing 3회와 strict morning star가 감지되어 setup_bias는 bullish로 평가됩니다. 특히 7일 저점 $60,691.90을 방어한 뒤 현재가가 7일 고점 $64,738.00 바로 아래에 있어, $64,738 돌파 및 EMA20 $66,648.83 회복 여부가 단기 반등 확인의 핵심입니다. 다만 high_volume_patterns가 없고 evening_star@294도 후보로 존재하므로, 이는 구조 전환 확정이 아니라 약세 구조 내 반등 셋업으로 해석해야 합니다.",
      "key_levels": {
        "support": [
          60691.9,
          64514.9
        ],
        "resistance": [
          64738,
          66648.83,
          74496.67,
          81573.56
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$60,691.90",
      "risk_scenario": "만약 $60,691.90을 일봉 종가 기준으로 이탈하면 최근 bullish engulfing 및 morning star 기반의 반등 셋업은 실패로 간주되며, EMA20 $66,648.83 회복 전까지 하락 추세가 재개될 가능성이 커집니다. 반대로 $64,738.00 돌파에 실패하고 윗꼬리 반전이 나오면 evening star 후보가 강화되어 다시 $60,691.90 지지 테스트로 이어질 수 있습니다.",
      "data_quality": "medium",
      "metrics": {
        "total_patterns_detected": 135,
        "recent_patterns": 8,
        "pattern_list": [
          "bullish_engulfing@292",
          "bullish_engulfing@296",
          "bullish_engulfing@298",
          "morning_star@292",
          "evening_star@294",
          "doji@291",
          "doji@295",
          "doji@297"
        ],
        "atr_value": 2223.67,
        "vol_avg_20": 197171.86,
        "high_volume_patterns": [],
        "pattern_candidates": [
          {
            "pattern": "morning_star",
            "signal": "bullish",
            "pattern_quality": 0.672,
            "tier": "strict",
            "high_volume": false
          },
          {
            "pattern": "bullish_engulfing",
            "signal": "bullish",
            "pattern_quality": 0.647,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "bullish_engulfing",
            "signal": "bullish",
            "pattern_quality": 0.642,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "bullish_engulfing",
            "signal": "bullish",
            "pattern_quality": 0.627,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "evening_star",
            "signal": "bearish",
            "pattern_quality": 0.448,
            "tier": "candidate",
            "high_volume": false
          }
        ],
        "best_pattern_quality": 0.672,
        "bull_score": 3.05,
        "bear_score": 0.8
      },
      "raw_llm_response": "{\n  \"signal\": \"bullish\",\n  \"confidence\": 0.58,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.62,\n  \"setup_signals\": [\n    \"현재가 $64,514.90가 EMA20 $66,648.83 아래 -3.2%에 위치하여 단기 평균회귀성 반등 셋업 존재\",\n    \"현재가가 EMA120 $74,496.67 아래 -13.4%, EMA240 $81,573.56 아래 -20.9%에 있어 구조는 아직 약세이나 할인 구간 반등 후보\",\n    \"최근 7일 저점 $60,691.90 방어 이후 bullish_engulfing@292, @296, @298 및 morning_star@292가 반복 출현\",\n    \"최근 패턴 bull_score 3.0500 대 bear_score 0.800으로 단기 캔들 모멘텀은 매수 우위\",\n    \"best_pattern_quality 0.672의 morning_star가 strict tier로 감지되었으나 high_volume_patterns가 없어 확정 강도는 제한적\"\n  ],\n  \"reasoning\": \"BTC는 현재 $64,514.90에서 거래 중이며 EMA20 $66,648.83, EMA120 $74,496.67, EMA240 $81,573.56을 모두 하회하고 있어 확인된 구조_bias는 아직 bearish입니다. 다만 최근 5개 일봉이 ▼-0.3%, ▲+3.4%, ▼-0.1%, ▲+1.4%, ▲+0.1%로 저점권에서 매수 반응을 보였고, bullish engulfing 3회와 strict morning star가 감지되어 setup_bias는 bullish로 평가됩니다. 특히 7일 저점 $60,691.90을 방어한 뒤 현재가가 7일 고점 $64,738.00 바로 아래에 있어, $64,738 돌파 및 EMA20 $66,648.83 회복 여부가 단기 반등 확인의 핵심입니다. 다만 high_volume_patterns가 없고 evening_star@294도 후보로 존재하므로, 이는 구조 전환 확정이 아니라 약세 구조 내 반등 셋업으로 해석해야 합니다.\",\n  \"key_levels\": {\n    \"support\": [\n      60691.9,\n      64514.9\n    ],\n    \"resistance\": [\n      64738,\n      66648.83,\n      74496.67,\n      81573.56\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$60,691.90\",\n  \"risk_scenario\": \"만약 $60,691.90을 일봉 종가 기준으로 이탈하면 최근 bullish engulfing 및 morning star 기반의 반등 셋업은 실패로 간주되며, EMA20 $66,648.83 회복 전까지 하락 추세가 재개될 가능성이 커집니다. 반대로 $64,738.00 돌파에 실패하고 윗꼬리 반전이 나오면 evening star 후보가 강화되어 다시 $60,691.90 지지 테스트로 이어질 수 있습니다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "harmonic": {
      "agent_id": "harmonic",
      "display_name": "Harmonic Specialist",
      "signal": "neutral",
      "confidence": 0.46,
      "structure_bias": "bearish",
      "setup_bias": "bullish",
      "setup_score": 0.56,
      "setup_signals": [
        "현재가 $64,514.90가 strict medium bullish Bat 형성 PRZ $64,325.45-$65,323.41 내부에 위치, D 예상가 $64,824.43",
        "bullish Butterfly/Gartley 저점 반응 후보군이 $63,231.30-$65,835.35 부근에 밀집, nearest PRZ $64,533.33와 현재가 괴리 약 0.03%",
        "strict medium bullish Bat 추가 PRZ $63,202.30-$63,987.38가 하단 방어 후보로 대기, D 예상가 $63,594.84",
        "완료된 bullish Gartley 후보는 PRZ $65,604.43-$67,113.23에서 반응 확인 점수 0.90을 기록했으나 candidate/medium이며 council_relevant_prz_count=0으로 방향 전환 권한은 제한적",
        "최고 품질 패턴은 strict high bullish Gartley이나 아직 forming/watch 상태이며 PRZ $65,999.53-$67,113.44, 현재가 대비 +3.16%로 즉시 실행 구간은 아님"
      ],
      "reasoning": "하모닉 관점에서는 현재가 $64,514.90가 여러 bullish PRZ 클러스터 안에 있어 단기 반등 셋업은 존재하지만, actionable_patterns_list가 비어 있고 council_relevant_prz_count와 directional_influence_prz_count가 모두 0이므로 독립적인 방향 신호로 격상할 수 없다. 특히 strict medium bullish Bat의 PRZ $64,325.45-$65,323.41는 현재 활성 구간이지만 confirmed_reaction=false라서 아직은 약한 반전 후보에 불과하다. 구조적으로는 가격이 EMA20 $66,648.83 아래 -3.2%, EMA120 $74,496.67 아래 -13.4%, EMA240 $81,573.56 아래 -20.9%에 있어 일봉 기준 상위 추세 압력은 여전히 bearish로 해석된다. 따라서 구조는 bearish, 셋업은 bullish 반등 후보로 분리하며, $65,323-$67,113 상단 PRZ/EMA20 회복 전까지 메인 시그널은 neutral로 유지한다.",
      "key_levels": {
        "support": [
          64325.45,
          63231.3,
          63202.3,
          62684.52,
          60691.9
        ],
        "resistance": [
          65323.41,
          65835.35,
          65999.53,
          66648.83,
          67113.44,
          67749.37,
          68608.46
        ]
      },
      "time_horizon": "medium term",
      "invalidation_level": "$63,202.30",
      "risk_scenario": "$63,202.30 하단 Bat PRZ가 종가 기준으로 방어되지 못하면 현재의 bullish harmonic 반등 셋업은 실패로 간주되며, $62,684.52-$62,779.86 및 7일 저점 $60,691.90 재테스트로 하방 유동성 탐색이 열릴 수 있다. 반대로 $65,323.41 상단을 회복하고 $65,999.53-$67,113.44의 high-confluence Gartley PRZ를 지지로 전환하면 $67,749.37, $68,608.46, $69,999.00 순서의 TP 래더가 유효해진다.",
      "data_quality": "medium",
      "metrics": {
        "patterns_found": 208,
        "completed_patterns_found": 81,
        "forming_d_prz_found": 127,
        "swing_orders_scanned": [
          3,
          5,
          8
        ],
        "swing_search_window": 30,
        "multiscale_swings_scanned": 60,
        "swing_highs_scanned": 29,
        "swing_lows_scanned": 31,
        "timeframe": "1d",
        "prz_active_threshold_pct": 1.0,
        "prz_nearby_threshold_pct": 2.0,
        "prz_watch_threshold_pct": 4.0,
        "prz_max_width_pct": 1.8,
        "quality_counts": {
          "high": 3,
          "medium": 51,
          "low": 154
        },
        "prz_status_counts": {
          "active": 33,
          "nearby": 8,
          "watch": 14,
          "far": 153,
          "forming": 93
        },
        "high_confluence_prz_count": 20,
        "strict_patterns_found": 58,
        "candidate_patterns_found": 150,
        "active_patterns_at_prz": 33,
        "nearby_patterns": 8,
        "all_patterns": [
          "gartley",
          "bat",
          "butterfly",
          "butterfly",
          "bat",
          "crab",
          "gartley",
          "gartley",
          "butterfly",
          "butterfly",
          "gartley",
          "gartley",
          "butterfly",
          "butterfly",
          "gartley",
          "butterfly",
          "gartley",
          "bat",
          "gartley",
          "shark",
          "shark",
          "shark",
          "bat",
          "shark",
          "shark",
          "shark",
          "bat",
          "crab",
          "crab",
          "crab",
          "crab",
          "crab",
          "crab",
          "crab",
          "gartley",
          "bat",
          "shark",
          "bat",
          "butterfly",
          "butterfly",
          "bat",
          "bat",
          "shark",
          "gartley",
          "shark",
          "bat",
          "crab",
          "gartley",
          "butterfly",
          "bat",
          "shark",
          "gartley",
          "butterfly",
          "bat",
          "butterfly",
          "bat",
          "shark",
          "shark",
          "crab",
          "gartley",
          "crab",
          "shark",
          "butterfly",
          "shark",
          "crab",
          "bat",
          "butterfly",
          "gartley",
          "butterfly",
          "shark",
          "bat",
          "butterfly",
          "crab",
          "butterfly",
          "bat",
          "crab",
          "shark",
          "crab",
          "crab",
          "crab",
          "shark",
          "butterfly",
          "crab",
          "crab",
          "gartley",
          "crab",
          "shark",
          "bat",
          "crab",
          "crab",
          "crab",
          "gartley",
          "shark",
          "bat",
          "butterfly",
          "butterfly",
          "butterfly",
          "shark",
          "bat",
          "crab",
          "shark",
          "shark",
          "butterfly",
          "crab",
          "shark",
          "shark",
          "crab",
          "shark",
          "butterfly",
          "crab",
          "bat",
          "butterfly",
          "shark",
          "butterfly",
          "crab",
          "shark",
          "butterfly",
          "bat",
          "gartley",
          "crab",
          "crab",
          "butterfly",
          "shark",
          "shark",
          "bat",
          "shark",
          "crab",
          "crab",
          "butterfly",
          "shark",
          "butterfly",
          "butterfly",
          "gartley",
          "crab",
          "crab",
          "shark",
          "shark",
          "butterfly",
          "bat",
          "crab",
          "crab",
          "crab",
          "butterfly",
          "butterfly",
          "butterfly",
          "butterfly",
          "crab",
          "bat",
          "butterfly",
          "bat",
          "butterfly",
          "crab",
          "shark",
          "butterfly",
          "shark",
          "gartley",
          "shark",
          "gartley",
          "crab",
          "crab",
          "shark",
          "bat",
          "shark",
          "bat",
          "crab",
          "gartley",
          "crab",
          "butterfly",
          "shark",
          "crab",
          "butterfly",
          "crab",
          "crab",
          "shark",
          "shark",
          "crab",
          "gartley",
          "butterfly",
          "butterfly",
          "crab",
          "bat",
          "gartley",
          "crab",
          "crab",
          "crab",
          "butterfly",
          "bat",
          "bat",
          "butterfly",
          "bat",
          "butterfly",
          "butterfly",
          "gartley",
          "shark",
          "shark",
          "shark",
          "crab",
          "butterfly",
          "crab",
          "crab",
          "crab",
          "shark",
          "gartley",
          "crab",
          "butterfly",
          "crab",
          "shark",
          "crab"
        ],
        "all_signals": [
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish"
        ],
        "best_pattern": "gartley",
        "best_pattern_quality": "strict",
        "best_quality": "high",
        "best_pattern_score": 0.896,
        "best_completion_status": "forming",
        "nearest_pattern": "gartley",
        "nearest_prz": 64533.33,
        "price_to_prz": 0.03,
        "prz_range": [
          63231.3,
          65835.35
        ],
        "council_relevant_prz_count": 0,
        "directional_influence_prz_count": 0,
        "confirmed_reaction_prz_count": 0,
        "validated_harmonic_tp_count": 0,
        "pattern_candidates": [
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.896,
            "ratio_score": 0.97,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 66556.49,
            "prz_range": [
              65999.53,
              67113.44
            ],
            "prz_width_pct": 1.674,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 3.16,
            "price_to_prz_pct_raw": 3.1645,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 66556.49,
              "a_price": 69999.0,
              "tp1_ad_382": 67871.53,
              "tp2_ad_618": 68683.96,
              "tp3_a_or_structure_liquidity": 69999.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6129,
              "ABC": 0.7366
            },
            "x_price": 65595.7,
            "x_idx": 184,
            "x_order": 3,
            "a_price": 69999.0,
            "a_idx": 190,
            "a_order": 3,
            "b_price": 67300.0,
            "b_idx": 215,
            "b_order": 3,
            "c_price": 69288.0,
            "c_idx": 225,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "low",
            "pattern_score": 0.831,
            "ratio_score": 0.776,
            "prz_score": 0.87,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63574.32,
            "prz_range": [
              62684.52,
              64464.12
            ],
            "prz_width_pct": 2.799,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.46,
            "price_to_prz_pct_raw": -1.4579,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 63574.32,
              "a_price": 75998.9,
              "tp1_ad_382": 68320.51,
              "tp2_ad_618": 71252.71,
              "tp3_a_or_structure_liquidity": 75998.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.8341,
              "ABC": 0.5403
            },
            "x_price": 65569.2,
            "x_idx": 201,
            "x_order": 5,
            "a_price": 75998.9,
            "a_idx": 210,
            "a_order": 8,
            "b_price": 67300.0,
            "b_idx": 215,
            "b_order": 3,
            "c_price": 71999.9,
            "c_idx": 218,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.639,
            "ratio_score": 0.452,
            "prz_score": 0.939,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 65676.1,
            "prz_range": [
              65604.43,
              67113.23
            ],
            "prz_width_pct": 2.274,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 2.86,
            "price_to_prz_pct_raw": 2.8581,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "post_D_close_progress"
              ],
              "reaction_score": 0.9,
              "reaction_detail": {
                "reaction_score": 0.9,
                "reaction_move_ratio_ad": 2.39,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 66358.83,
              "a_price": 69999.0,
              "tp1_ad_382": 67749.37,
              "tp2_ad_618": 68608.46,
              "tp3_a_or_structure_liquidity": 69999.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6129,
              "ABC": 0.7366,
              "BCD": 1.8169,
              "XAD": 0.9817
            },
            "x_price": 65595.7,
            "x_idx": 184,
            "x_order": 3,
            "a_price": 69999.0,
            "a_idx": 190,
            "a_order": 3,
            "b_price": 67300.0,
            "b_idx": 215,
            "b_order": 3,
            "c_price": 69288.0,
            "c_idx": 225,
            "c_order": 3,
            "d_idx": 226
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.865,
            "ratio_score": 1.0,
            "prz_score": 0.783,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 64824.43,
            "prz_range": [
              64325.45,
              65323.41
            ],
            "prz_width_pct": 1.539,
            "prz_confluence_count": 2,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT"
            ],
            "price_to_prz_pct": 0.48,
            "price_to_prz_pct_raw": 0.4798,
            "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": 64824.43,
              "a_price": 74046.5,
              "tp1_ad_382": 68347.26,
              "tp2_ad_618": 70523.67,
              "tp3_a_or_structure_liquidity": 74046.5,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4736,
              "ABC": 0.6966
            },
            "x_price": 59800.0,
            "x_idx": 171,
            "x_order": 8,
            "a_price": 74046.5,
            "a_idx": 197,
            "a_order": 8,
            "b_price": 67300.0,
            "b_idx": 215,
            "b_order": 3,
            "c_price": 71999.9,
            "c_idx": 218,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.865,
            "ratio_score": 0.942,
            "prz_score": 0.814,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 64283.69,
            "prz_range": [
              63244.56,
              65322.83
            ],
            "prz_width_pct": 3.233,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.36,
            "price_to_prz_pct_raw": -0.3584,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 64283.69,
              "a_price": 74046.5,
              "tp1_ad_382": 68013.08,
              "tp2_ad_618": 70317.11,
              "tp3_a_or_structure_liquidity": 74046.5,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7983,
              "ABC": 0.6966
            },
            "x_price": 65595.7,
            "x_idx": 184,
            "x_order": 3,
            "a_price": 74046.5,
            "a_idx": 197,
            "a_order": 8,
            "b_price": 67300.0,
            "b_idx": 215,
            "b_order": 3,
            "c_price": 71999.9,
            "c_idx": 218,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.852,
            "ratio_score": 1.0,
            "prz_score": 0.783,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 63594.84,
            "prz_range": [
              63202.3,
              63987.38
            ],
            "prz_width_pct": 1.235,
            "prz_confluence_count": 2,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT"
            ],
            "price_to_prz_pct": -1.43,
            "price_to_prz_pct_raw": -1.4261,
            "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": 63594.84,
              "a_price": 70938.5,
              "tp1_ad_382": 66400.12,
              "tp2_ad_618": 68133.22,
              "tp3_a_or_structure_liquidity": 70938.5,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.482,
              "ABC": 0.6926
            },
            "x_price": 59800.0,
            "x_idx": 171,
            "x_order": 8,
            "a_price": 70938.5,
            "a_idx": 180,
            "a_order": 5,
            "b_price": 65569.2,
            "b_idx": 201,
            "b_order": 5,
            "c_price": 69288.0,
            "c_idx": 225,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.841,
            "ratio_score": 0.864,
            "prz_score": 0.822,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 63790.98,
            "prz_range": [
              62779.86,
              64802.1
            ],
            "prz_width_pct": 3.17,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.12,
            "price_to_prz_pct_raw": -1.1221,
            "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": 63790.98,
              "a_price": 74046.5,
              "tp1_ad_382": 67708.59,
              "tp2_ad_618": 70128.89,
              "tp3_a_or_structure_liquidity": 74046.5,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.595,
              "ABC": 0.7586
            },
            "x_price": 59800.0,
            "x_idx": 171,
            "x_order": 8,
            "a_price": 74046.5,
            "a_idx": 197,
            "a_order": 8,
            "b_price": 65569.2,
            "b_idx": 201,
            "b_order": 5,
            "c_price": 71999.9,
            "c_idx": 218,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.841,
            "ratio_score": 0.95,
            "prz_score": 0.752,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 65542.24,
            "prz_range": [
              64324.68,
              66759.8
            ],
            "prz_width_pct": 3.715,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.59,
            "price_to_prz_pct_raw": 1.5924,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 65542.24,
              "a_price": 74046.5,
              "tp1_ad_382": 68790.87,
              "tp2_ad_618": 70797.87,
              "tp3_a_or_structure_liquidity": 74046.5,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6096,
              "ABC": 0.6966
            },
            "x_price": 62979.5,
            "x_idx": 193,
            "x_order": 3,
            "a_price": 74046.5,
            "a_idx": 197,
            "a_order": 8,
            "b_price": 67300.0,
            "b_idx": 215,
            "b_order": 3,
            "c_price": 71999.9,
            "c_idx": 218,
            "c_order": 5,
            "d_idx": null
          }
        ],
        "council_relevant_prz": [],
        "report_detail_candidates": [
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.896,
            "ratio_score": 0.97,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 66556.49,
            "prz_range": [
              65999.53,
              67113.44
            ],
            "prz_width_pct": 1.674,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 3.16,
            "price_to_prz_pct_raw": 3.1645,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 66556.49,
              "a_price": 69999.0,
              "tp1_ad_382": 67871.53,
              "tp2_ad_618": 68683.96,
              "tp3_a_or_structure_liquidity": 69999.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6129,
              "ABC": 0.7366
            },
            "x_price": 65595.7,
            "x_idx": 184,
            "x_order": 3,
            "a_price": 69999.0,
            "a_idx": 190,
            "a_order": 3,
            "b_price": 67300.0,
            "b_idx": 215,
            "b_order": 3,
            "c_price": 69288.0,
            "c_idx": 225,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "low",
            "pattern_score": 0.831,
            "ratio_score": 0.776,
            "prz_score": 0.87,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63574.32,
            "prz_range": [
              62684.52,
              64464.12
            ],
            "prz_width_pct": 2.799,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.46,
            "price_to_prz_pct_raw": -1.4579,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 63574.32,
              "a_price": 75998.9,
              "tp1_ad_382": 68320.51,
              "tp2_ad_618": 71252.71,
              "tp3_a_or_structure_liquidity": 75998.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.8341,
              "ABC": 0.5403
            },
            "x_price": 65569.2,
            "x_idx": 201,
            "x_order": 5,
            "a_price": 75998.9,
            "a_idx": 210,
            "a_order": 8,
            "b_price": 67300.0,
            "b_idx": 215,
            "b_order": 3,
            "c_price": 71999.9,
            "c_idx": 218,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.639,
            "ratio_score": 0.452,
            "prz_score": 0.939,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 65676.1,
            "prz_range": [
              65604.43,
              67113.23
            ],
            "prz_width_pct": 2.274,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 2.86,
            "price_to_prz_pct_raw": 2.8581,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "post_D_close_progress"
              ],
              "reaction_score": 0.9,
              "reaction_detail": {
                "reaction_score": 0.9,
                "reaction_move_ratio_ad": 2.39,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 66358.83,
              "a_price": 69999.0,
              "tp1_ad_382": 67749.37,
              "tp2_ad_618": 68608.46,
              "tp3_a_or_structure_liquidity": 69999.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6129,
              "ABC": 0.7366,
              "BCD": 1.8169,
              "XAD": 0.9817
            },
            "x_price": 65595.7,
            "x_idx": 184,
            "x_order": 3,
            "a_price": 69999.0,
            "a_idx": 190,
            "a_order": 3,
            "b_price": 67300.0,
            "b_idx": 215,
            "b_order": 3,
            "c_price": 69288.0,
            "c_idx": 225,
            "c_order": 3,
            "d_idx": 226
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.865,
            "ratio_score": 1.0,
            "prz_score": 0.783,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 64824.43,
            "prz_range": [
              64325.45,
              65323.41
            ],
            "prz_width_pct": 1.539,
            "prz_confluence_count": 2,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT"
            ],
            "price_to_prz_pct": 0.48,
            "price_to_prz_pct_raw": 0.4798,
            "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": 64824.43,
              "a_price": 74046.5,
              "tp1_ad_382": 68347.26,
              "tp2_ad_618": 70523.67,
              "tp3_a_or_structure_liquidity": 74046.5,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4736,
              "ABC": 0.6966
            },
            "x_price": 59800.0,
            "x_idx": 171,
            "x_order": 8,
            "a_price": 74046.5,
            "a_idx": 197,
            "a_order": 8,
            "b_price": 67300.0,
            "b_idx": 215,
            "b_order": 3,
            "c_price": 71999.9,
            "c_idx": 218,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.865,
            "ratio_score": 0.942,
            "prz_score": 0.814,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 64283.69,
            "prz_range": [
              63244.56,
              65322.83
            ],
            "prz_width_pct": 3.233,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.36,
            "price_to_prz_pct_raw": -0.3584,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 64283.69,
              "a_price": 74046.5,
              "tp1_ad_382": 68013.08,
              "tp2_ad_618": 70317.11,
              "tp3_a_or_structure_liquidity": 74046.5,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7983,
              "ABC": 0.6966
            },
            "x_price": 65595.7,
            "x_idx": 184,
            "x_order": 3,
            "a_price": 74046.5,
            "a_idx": 197,
            "a_order": 8,
            "b_price": 67300.0,
            "b_idx": 215,
            "b_order": 3,
            "c_price": 71999.9,
            "c_idx": 218,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.852,
            "ratio_score": 1.0,
            "prz_score": 0.783,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 63594.84,
            "prz_range": [
              63202.3,
              63987.38
            ],
            "prz_width_pct": 1.235,
            "prz_confluence_count": 2,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT"
            ],
            "price_to_prz_pct": -1.43,
            "price_to_prz_pct_raw": -1.4261,
            "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": 63594.84,
              "a_price": 70938.5,
              "tp1_ad_382": 66400.12,
              "tp2_ad_618": 68133.22,
              "tp3_a_or_structure_liquidity": 70938.5,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.482,
              "ABC": 0.6926
            },
            "x_price": 59800.0,
            "x_idx": 171,
            "x_order": 8,
            "a_price": 70938.5,
            "a_idx": 180,
            "a_order": 5,
            "b_price": 65569.2,
            "b_idx": 201,
            "b_order": 5,
            "c_price": 69288.0,
            "c_idx": 225,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.841,
            "ratio_score": 0.864,
            "prz_score": 0.822,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 63790.98,
            "prz_range": [
              62779.86,
              64802.1
            ],
            "prz_width_pct": 3.17,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.12,
            "price_to_prz_pct_raw": -1.1221,
            "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": 63790.98,
              "a_price": 74046.5,
              "tp1_ad_382": 67708.59,
              "tp2_ad_618": 70128.89,
              "tp3_a_or_structure_liquidity": 74046.5,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.595,
              "ABC": 0.7586
            },
            "x_price": 59800.0,
            "x_idx": 171,
            "x_order": 8,
            "a_price": 74046.5,
            "a_idx": 197,
            "a_order": 8,
            "b_price": 65569.2,
            "b_idx": 201,
            "b_order": 5,
            "c_price": 71999.9,
            "c_idx": 218,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.841,
            "ratio_score": 0.95,
            "prz_score": 0.752,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 65542.24,
            "prz_range": [
              64324.68,
              66759.8
            ],
            "prz_width_pct": 3.715,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.59,
            "price_to_prz_pct_raw": 1.5924,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 65542.24,
              "a_price": 74046.5,
              "tp1_ad_382": 68790.87,
              "tp2_ad_618": 70797.87,
              "tp3_a_or_structure_liquidity": 74046.5,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6096,
              "ABC": 0.6966
            },
            "x_price": 62979.5,
            "x_idx": 193,
            "x_order": 3,
            "a_price": 74046.5,
            "a_idx": 197,
            "a_order": 8,
            "b_price": 67300.0,
            "b_idx": 215,
            "b_order": 3,
            "c_price": 71999.9,
            "c_idx": 218,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.834,
            "ratio_score": 0.871,
            "prz_score": 0.8,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 64306.25,
            "prz_range": [
              63231.55,
              65380.95
            ],
            "prz_width_pct": 3.342,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.32,
            "price_to_prz_pct_raw": -0.3234,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 64306.25,
              "a_price": 75998.9,
              "tp1_ad_382": 68772.84,
              "tp2_ad_618": 71532.31,
              "tp3_a_or_structure_liquidity": 75998.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6398,
              "ABC": 0.5403
            },
            "x_price": 62401.7,
            "x_idx": 189,
            "x_order": 8,
            "a_price": 75998.9,
            "a_idx": 210,
            "a_order": 8,
            "b_price": 67300.0,
            "b_idx": 215,
            "b_order": 3,
            "c_price": 71999.9,
            "c_idx": 218,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.831,
            "ratio_score": 0.996,
            "prz_score": 0.852,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": false,
            "d_price": 61380.83,
            "prz_range": [
              60477.7,
              62283.95
            ],
            "prz_width_pct": 2.943,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -4.86,
            "price_to_prz_pct_raw": -4.8579,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 61380.83,
              "a_price": 71999.9,
              "tp1_ad_382": 65437.31,
              "tp2_ad_618": 67943.41,
              "tp3_a_or_structure_liquidity": 71999.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7851,
              "ABC": 0.6171
            },
            "x_price": 62979.5,
            "x_idx": 193,
            "x_order": 3,
            "a_price": 71999.9,
            "a_idx": 218,
            "a_order": 5,
            "b_price": 64918.2,
            "b_idx": 222,
            "b_order": 8,
            "c_price": 69288.0,
            "c_idx": 225,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.819,
            "ratio_score": 0.873,
            "prz_score": 0.8,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 64918.2,
            "prz_range": [
              63231.55,
              65380.95
            ],
            "prz_width_pct": 3.342,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.32,
            "price_to_prz_pct_raw": -0.3234,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 0.77,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 64306.25,
              "a_price": 75998.9,
              "tp1_ad_382": 68772.84,
              "tp2_ad_618": 71532.31,
              "tp3_a_or_structure_liquidity": 75998.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6398,
              "ABC": 0.5403,
              "BCD": 1.5068,
              "XAD": 0.8149
            },
            "x_price": 62401.7,
            "x_idx": 189,
            "x_order": 8,
            "a_price": 75998.9,
            "a_idx": 210,
            "a_order": 8,
            "b_price": 67300.0,
            "b_idx": 215,
            "b_order": 3,
            "c_price": 71999.9,
            "c_idx": 218,
            "c_order": 5,
            "d_idx": 222
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.816,
            "ratio_score": 0.905,
            "prz_score": 0.752,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 65676.1,
            "prz_range": [
              64324.68,
              66759.8
            ],
            "prz_width_pct": 3.715,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.59,
            "price_to_prz_pct_raw": 1.5924,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 1.234,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 65542.24,
              "a_price": 74046.5,
              "tp1_ad_382": 68790.87,
              "tp2_ad_618": 70797.87,
              "tp3_a_or_structure_liquidity": 74046.5,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6096,
              "ABC": 0.6966,
              "BCD": 1.3455,
              "XAD": 0.7563
            },
            "x_price": 62979.5,
            "x_idx": 193,
            "x_order": 3,
            "a_price": 74046.5,
            "a_idx": 197,
            "a_order": 8,
            "b_price": 67300.0,
            "b_idx": 215,
            "b_order": 3,
            "c_price": 71999.9,
            "c_idx": 218,
            "c_order": 5,
            "d_idx": 226
          }
        ],
        "actionable_patterns_list": [],
        "tp_ladder": [],
        "validated_tp_ladder": [],
        "harmonic_governance": {
          "role": "PRZ reaction + TP ladder confluence, not standalone path engine",
          "pre_confirmation_weight_range": [
            0.25,
            0.35
          ],
          "post_confirmation_vote_weight_range": [
            0.5,
            0.6
          ],
          "standalone_path_override_allowed": false,
          "opposes_core_path_policy": "branch/reversal-risk/reaction-zone unless lower-TF structure and derivatives also confirm",
          "aligns_with_core_path_policy": "modest confidence lift plus strong TP ladder influence"
        },
        "execution_readiness": "early"
      },
      "raw_llm_response": "{\n  \"signal\": \"neutral\",\n  \"confidence\": 0.46,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.56,\n  \"setup_signals\": [\n    \"현재가 $64,514.90가 strict medium bullish Bat 형성 PRZ $64,325.45-$65,323.41 내부에 위치, D 예상가 $64,824.43\",\n    \"bullish Butterfly/Gartley 저점 반응 후보군이 $63,231.30-$65,835.35 부근에 밀집, nearest PRZ $64,533.33와 현재가 괴리 약 0.03%\",\n    \"strict medium bullish Bat 추가 PRZ $63,202.30-$63,987.38가 하단 방어 후보로 대기, D 예상가 $63,594.84\",\n    \"완료된 bullish Gartley 후보는 PRZ $65,604.43-$67,113.23에서 반응 확인 점수 0.90을 기록했으나 candidate/medium이며 council_relevant_prz_count=0으로 방향 전환 권한은 제한적\",\n    \"최고 품질 패턴은 strict high bullish Gartley이나 아직 forming/watch 상태이며 PRZ $65,999.53-$67,113.44, 현재가 대비 +3.16%로 즉시 실행 구간은 아님\"\n  ],\n  \"reasoning\": \"하모닉 관점에서는 현재가 $64,514.90가 여러 bullish PRZ 클러스터 안에 있어 단기 반등 셋업은 존재하지만, actionable_patterns_list가 비어 있고 council_relevant_prz_count와 directional_influence_prz_count가 모두 0이므로 독립적인 방향 신호로 격상할 수 없다. 특히 strict medium bullish Bat의 PRZ $64,325.45-$65,323.41는 현재 활성 구간이지만 confirmed_reaction=false라서 아직은 약한 반전 후보에 불과하다. 구조적으로는 가격이 EMA20 $66,648.83 아래 -3.2%, EMA120 $74,496.67 아래 -13.4%, EMA240 $81,573.56 아래 -20.9%에 있어 일봉 기준 상위 추세 압력은 여전히 bearish로 해석된다. 따라서 구조는 bearish, 셋업은 bullish 반등 후보로 분리하며, $65,323-$67,113 상단 PRZ/EMA20 회복 전까지 메인 시그널은 neutral로 유지한다.\",\n  \"key_levels\": {\n    \"support\": [\n      64325.45,\n      63231.3,\n      63202.3,\n      62684.52,\n      60691.9\n    ],\n    \"resistance\": [\n      65323.41,\n      65835.35,\n      65999.53,\n      66648.83,\n      67113.44,\n      67749.37,\n      68608.46\n    ]\n  },\n  \"time_horizon\": \"medium term\",\n  \"invalidation_level\": \"$63,202.30\",\n  \"risk_scenario\": \"$63,202.30 하단 Bat PRZ가 종가 기준으로 방어되지 못하면 현재의 bullish harmonic 반등 셋업은 실패로 간주되며, $62,684.52-$62,779.86 및 7일 저점 $60,691.90 재테스트로 하방 유동성 탐색이 열릴 수 있다. 반대로 $65,323.41 상단을 회복하고 $65,999.53-$67,113.44의 high-confluence Gartley PRZ를 지지로 전환하면 $67,749.37, $68,608.46, $69,999.00 순서의 TP 래더가 유효해진다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "wyckoff": {
      "agent_id": "wyckoff",
      "display_name": "Wyckoff Expert",
      "signal": "bearish",
      "confidence": 0.62,
      "structure_bias": "bullish",
      "setup_bias": "bearish",
      "setup_score": 0.74,
      "setup_signals": [
        "현재가 $64,514.90가 ACC 핵심 Spring $65,595.70 아래에 위치하여 Spring 회복 실패 상태",
        "현재가가 메인 ACC range low $80,600.00 및 SOS $82,828.70 아래에 있어 Phase D 강세 수용이 확인되지 않음",
        "최근 7일 고점 $64,738.00 부근에서 정체되어 $65,595.70 reclaim 전까지 단기 공급 우위",
        "EMA20 $66,648.83 아래 -3.2%, EMA120 $74,496.67 아래 -13.4%로 일봉 반등 수용 부족",
        "하방 미확인 테스트 레벨로 $60,691.90 및 $59,080.00이 열려 있음"
      ],
      "reasoning": "metrics상 공식 regime은 ACC이며 acc_score 92.5, 주요 축은 SC $80,600.00 → AR $93,080.00 → ST $84,408.60 → Spring $65,595.70 → TERMINAL_SPRING $74,868.00 → SOS $82,828.70로 읽힌다. 따라서 구조적 해석은 아직 ACC 기반의 bullish prior지만, 현재가 $64,514.90는 Spring $65,595.70 아래에 있어 Phase D/SOS 이후의 강세 수용이 확인되지 않았고 ‘markup confirmed’로 볼 수 없다. 단기 setup은 $65,595.70 reclaim 실패와 $64,738.00 부근 정체 때문에 bearish이며, 다음 테스트는 $60,691.90 또는 $59,080.00 지지 확인 가능성이 더 높다. 다만 acc_score 92.5와 dis_score 85.0이 모두 높고 active/current 구조 후보와 primary ACC 구조가 충돌하므로, 이는 확정적 구조 전환보다는 ACC 구조가 압박받는 구간으로 평가한다.",
      "key_levels": {
        "support": [
          60691.9,
          59080.0,
          65595.7
        ],
        "resistance": [
          64738.0,
          65595.7,
          66648.83,
          74868.0,
          80600.0,
          82828.7,
          93080.0
        ]
      },
      "time_horizon": "short/medium term",
      "invalidation_level": "$65,595.70 일봉 종가 회복",
      "risk_scenario": "$65,595.70을 일봉 종가로 회복하면 현재 bearish setup은 무효화되고, $66,648.83 EMA20 및 $74,868.00 TERMINAL_SPRING 재테스트로 반등 경로가 열릴 수 있다. 반대로 $59,080.00이 이탈되면 ACC Spring 기반 해석 자체가 크게 훼손되어 구조 재분류가 필요하다.",
      "data_quality": "medium",
      "metrics": {
        "acc_score": 92.5,
        "dis_score": 85.0,
        "regime": "ACC",
        "regime_state": "acc_candidate",
        "structure_bias": "bullish",
        "phase_context": "acc_candidate / accumulation / Phase D",
        "phases_detected": [
          "SC",
          "AR",
          "ST",
          "Spring",
          "TERMINAL_SPRING",
          "SOS"
        ],
        "last_phase": "SOS",
        "phase_candidates": [
          {
            "label": "SC",
            "side": "low",
            "idx": 94,
            "price": 80600.0,
            "color": "#ffd166"
          },
          {
            "label": "AR",
            "side": "high",
            "idx": 101,
            "price": 93080.0,
            "color": "#06d6a0"
          },
          {
            "label": "ST",
            "side": "low",
            "idx": 121,
            "price": 84408.6,
            "color": "#118ab2"
          },
          {
            "label": "Spring",
            "side": "low",
            "idx": 184,
            "price": 65595.7,
            "color": "#f9844a"
          },
          {
            "label": "TERMINAL_SPRING",
            "side": "low",
            "idx": 253,
            "price": 74868.0,
            "color": "#f3722c"
          },
          {
            "label": "SOS",
            "side": "high",
            "idx": 260,
            "price": 82828.7,
            "color": "#06d6a0"
          }
        ],
        "phase_structures": [
          {
            "structure_id": "1d_cycle_1",
            "sequence": 1,
            "timeframe": "1d",
            "regime": "accumulation",
            "role": "prior_completed_structure",
            "is_active": false,
            "is_completed": true,
            "is_confirmed": true,
            "structure_bias": "bullish",
            "phase_context": "accumulation",
            "start_idx": 94,
            "end_idx": 260,
            "phase_count": 6,
            "phases": [
              {
                "label": "SC",
                "side": "low",
                "idx": 94,
                "price": 80600.0,
                "color": "#ffd166",
                "dt": "2025-11-21 09:00:00+09:00"
              },
              {
                "label": "AR",
                "side": "high",
                "idx": 101,
                "price": 93080.0,
                "color": "#06d6a0",
                "dt": "2025-11-28 09:00:00+09:00"
              },
              {
                "label": "ST",
                "side": "low",
                "idx": 121,
                "price": 84408.6,
                "color": "#118ab2",
                "dt": "2025-12-18 09:00:00+09:00"
              },
              {
                "label": "Spring",
                "side": "low",
                "idx": 184,
                "price": 65595.7,
                "color": "#f9844a",
                "dt": "2026-02-19 09:00:00+09:00"
              },
              {
                "label": "TERMINAL_SPRING",
                "side": "low",
                "idx": 253,
                "price": 74868.0,
                "color": "#f3722c",
                "dt": "2026-04-29 09:00:00+09:00"
              },
              {
                "label": "SOS",
                "side": "high",
                "idx": 260,
                "price": 82828.7,
                "color": "#06d6a0",
                "dt": "2026-05-06 09:00:00+09:00"
              }
            ]
          },
          {
            "structure_id": "1d_cycle_2",
            "sequence": 2,
            "timeframe": "1d",
            "regime": "distribution",
            "role": "current_structure_candidate",
            "is_active": true,
            "is_completed": false,
            "is_confirmed": true,
            "structure_bias": "bearish",
            "phase_context": "distribution",
            "start_idx": 268,
            "end_idx": 298,
            "phase_count": 3,
            "phases": [
              {
                "label": "BC",
                "side": "high",
                "idx": 268,
                "price": 81999.0,
                "color": "#ffd166",
                "dt": "2026-05-14 09:00:00+09:00"
              },
              {
                "label": "AR",
                "side": "low",
                "idx": 290,
                "price": 59080.0,
                "color": "#06d6a0",
                "dt": "2026-06-05 09:00:00+09:00"
              },
              {
                "label": "ST",
                "side": "high",
                "idx": 298,
                "price": 64738.0,
                "color": "#118ab2",
                "dt": "2026-06-13 09:00:00+09:00"
              }
            ]
          }
        ],
        "active_structure_id": "1d_cycle_2",
        "primary_structure_id": "1d_cycle_1",
        "structure_count": 2,
        "regime_fitness": 0.9249999999999999,
        "current_event": "SOS",
        "major_phase": "D",
        "pos_in_range": 0.5,
        "main_range_low": 80600.0,
        "main_range_high": 93080.0
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.62,\n  \"structure_bias\": \"bullish\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.74,\n  \"setup_signals\": [\n    \"현재가 $64,514.90가 ACC 핵심 Spring $65,595.70 아래에 위치하여 Spring 회복 실패 상태\",\n    \"현재가가 메인 ACC range low $80,600.00 및 SOS $82,828.70 아래에 있어 Phase D 강세 수용이 확인되지 않음\",\n    \"최근 7일 고점 $64,738.00 부근에서 정체되어 $65,595.70 reclaim 전까지 단기 공급 우위\",\n    \"EMA20 $66,648.83 아래 -3.2%, EMA120 $74,496.67 아래 -13.4%로 일봉 반등 수용 부족\",\n    \"하방 미확인 테스트 레벨로 $60,691.90 및 $59,080.00이 열려 있음\"\n  ],\n  \"reasoning\": \"metrics상 공식 regime은 ACC이며 acc_score 92.5, 주요 축은 SC $80,600.00 → AR $93,080.00 → ST $84,408.60 → Spring $65,595.70 → TERMINAL_SPRING $74,868.00 → SOS $82,828.70로 읽힌다. 따라서 구조적 해석은 아직 ACC 기반의 bullish prior지만, 현재가 $64,514.90는 Spring $65,595.70 아래에 있어 Phase D/SOS 이후의 강세 수용이 확인되지 않았고 ‘markup confirmed’로 볼 수 없다. 단기 setup은 $65,595.70 reclaim 실패와 $64,738.00 부근 정체 때문에 bearish이며, 다음 테스트는 $60,691.90 또는 $59,080.00 지지 확인 가능성이 더 높다. 다만 acc_score 92.5와 dis_score 85.0이 모두 높고 active/current 구조 후보와 primary ACC 구조가 충돌하므로, 이는 확정적 구조 전환보다는 ACC 구조가 압박받는 구간으로 평가한다.\",\n  \"key_levels\": {\n    \"support\": [\n      60691.9,\n      59080.0,\n      65595.7\n    ],\n    \"resistance\": [\n      64738.0,\n      65595.7,\n      66648.83,\n      74868.0,\n      80600.0,\n      82828.7,\n      93080.0\n    ]\n  },\n  \"time_horizon\": \"short/medium term\",\n  \"invalidation_level\": \"$65,595.70 일봉 종가 회복\",\n  \"risk_scenario\": \"$65,595.70을 일봉 종가로 회복하면 현재 bearish setup은 무효화되고, $66,648.83 EMA20 및 $74,868.00 TERMINAL_SPRING 재테스트로 반등 경로가 열릴 수 있다. 반대로 $59,080.00이 이탈되면 ACC Spring 기반 해석 자체가 크게 훼손되어 구조 재분류가 필요하다.\",\n  \"data_quality\": \"medium\"\n}"
    }
  },
  "chairman_synthesis": {
    "overall_signal": "bearish",
    "overall_confidence": 0.68,
    "execution_setup": {
      "setup_bias": "bearish",
      "setup_strength": 0.64,
      "active_setups": [
        "가격이 최근 ICT bearish CHoCH $64,918.20 아래에 있어 단기 구조 회복이 아직 확인되지 않음",
        "하락 스윙 $82,829 → $59,080의 0.236 되돌림 저항 $64,684.69를 바로 아래에서 테스트 중이며, 해당 레벨 위 수용 전까지 반등은 제한적",
        "Wyckoff 관점에서 ACC Spring 기준 $65,595.70 아래에 머물러 Spring 회복 실패 상태",
        "EMA20 $66,648.83, EMA120 $74,496.67, EMA240 $81,573.56이 모두 현재가 위에 있어 일봉 추세 배열은 하방 우위",
        "반대편으로는 CVD divergence 0.700, CVD change +435.3090, OI 24h +2.40% 증가가 있어 약세 구조 내 숏스퀴즈성 반등 리스크 존재",
        "현재가가 bullish harmonic PRZ $64,325.45-$65,323.41 내부에 있어 반등 후보 구간이나, 확정 반응은 부족"
      ],
      "setup_vs_structure": "구조와 실행 셋업은 대체로 약세 쪽으로 정렬되어 있으나, 파생 CVD 개선과 캔들·하모닉 PRZ가 단기 반등 리스크를 만든다. 따라서 운영상 핵심은 $64,918-$65,595 회복 여부이며, 회복 전에는 반등 셋업보다 미확인 약세 구조가 우선한다."
    },
    "signal_breakdown": {
      "bullish_count": 2,
      "bearish_count": 3,
      "neutral_count": 1
    },
    "key_levels": {
      "support": [
        63500,
        63360,
        63202.3,
        60691.9,
        59080,
        57500
      ],
      "resistance": [
        64684.69,
        64738,
        64918.2,
        65595.7,
        66100,
        66648.83,
        68152,
        70954.35
      ]
    },
    "confluences": [
      "ICT의 bearish CHoCH $64,918.20, Fibonacci 0.236 저항 $64,684.69, 전일 고점 $64,738.00이 모두 $64.7k-$64.9k 구간에 밀집해 즉각적인 구조 회복 관문을 형성한다.",
      "Derivatives의 상단 청산 클러스터 $66,100, EMA20 $66,648.83, Harmonic 상단 PRZ $65,323.41-$67,113.44가 $65.3k-$66.6k 부근에서 2차 저항대를 이룬다.",
      "ICT 전일 저가 $63,360.00, Derivatives 하방 청산 레벨 $63,500, Harmonic PRZ 하단 $63,202.30-$63,231.30이 $63.2k-$63.5k 지지·유동성 구간으로 중첩된다.",
      "ICT, Candlestick, Derivatives가 모두 7일 저점 $60,691.90을 핵심 하방 기준으로 제시하며, Fibonacci와 Wyckoff는 $59,080.00을 더 큰 구조 지지로 공유한다.",
      "EMA20 $66,648.83은 Derivatives, ICT, Candlestick, Harmonic, Wyckoff가 공통으로 언급한 일봉 구조 회복의 핵심 저항이다.",
      "Fibonacci EQ $70,954.35와 ICT EQ $70,954.35가 동일하며, 현 가격이 이 EQ 아래 discount 구간에 있다는 점은 구조적 약세 속에서도 추격 숏의 효율이 낮아지는 조건으로 합의된다."
    ],
    "conflicts": [
      "Wyckoff는 과거 완성된 ACC 구조를 근거로 상위 구조의 bullish prior를 유지하지만, ICT·Fibonacci·Derivatives·Candlestick·Harmonic은 현재가가 주요 EMA와 CHoCH, Fib 회복선 아래에 있어 현 구조를 bearish로 본다.",
      "Derivatives와 Candlestick은 CVD 개선, OI 증가, bullish engulfing 및 morning star 반복을 근거로 단기 bullish setup을 제시하지만, ICT와 Wyckoff는 $64,918.20 및 $65,595.70 회복 실패를 근거로 bearish setup을 더 강하게 본다.",
      "Harmonic은 $64.3k-$65.3k에 bullish PRZ가 밀집되어 있다고 보지만, actionable 패턴과 확정 반응이 부족하므로 독립적인 구조 전환 신호로는 인정하기 어렵다.",
      "Fibonacci는 $64,684.69를 첫 되돌림 저항으로 보며 회복 전 약세를 유지하지만, 파생 포지셔닝은 $66,100 상단 청산 클러스터로의 숏스퀴즈 리스크를 동시에 시사한다."
    ],
    "executive_summary": "BTC/USDT 1일 구조는 현재 $64,514.90 기준으로 bearish로 판정한다. 과거 Wyckoff ACC 구조는 bullish prior를 남기지만, 현재 활성 구간은 $64,918.20 bearish CHoCH 아래, $65,595.70 Spring 기준 아래, EMA20 $66,648.83 아래에 있어 회복 실패 상태가 더 중요하다. 현 위치는 $82,829 → $59,080 하락 스윙의 0.236 저항 $64,684.69 바로 아래이며, $64.7k-$65.6k 구간이 구조 회복 여부를 가르는 압축 저항대로 작동한다. 단기 실행 조건은 ICT·Wyckoff·Fibonacci가 약세를 지지하지만, CVD 개선과 $64.3k-$65.3k bullish PRZ, 반복된 bullish candlestick은 약세 구조 안의 반등 리스크로 관리해야 한다. 구조적 약세 판단은 $66,648.83 상방 수용 시 약화되며, $68,152.00 회복 시 하락 스윙 내 단순 반등이 아닌 구조 재평가가 필요하다.",
    "raw_llm_response": "{\n  \"overall_signal\": \"bearish\",\n  \"overall_confidence\": 0.68,\n  \"execution_setup\": {\n    \"setup_bias\": \"bearish\",\n    \"setup_strength\": 0.64,\n    \"active_setups\": [\n      \"가격이 최근 ICT bearish CHoCH $64,918.20 아래에 있어 단기 구조 회복이 아직 확인되지 않음\",\n      \"하락 스윙 $82,829 → $59,080의 0.236 되돌림 저항 $64,684.69를 바로 아래에서 테스트 중이며, 해당 레벨 위 수용 전까지 반등은 제한적\",\n      \"Wyckoff 관점에서 ACC Spring 기준 $65,595.70 아래에 머물러 Spring 회복 실패 상태\",\n      \"EMA20 $66,648.83, EMA120 $74,496.67, EMA240 $81,573.56이 모두 현재가 위에 있어 일봉 추세 배열은 하방 우위\",\n      \"반대편으로는 CVD divergence 0.700, CVD change +435.3090, OI 24h +2.40% 증가가 있어 약세 구조 내 숏스퀴즈성 반등 리스크 존재\",\n      \"현재가가 bullish harmonic PRZ $64,325.45-$65,323.41 내부에 있어 반등 후보 구간이나, 확정 반응은 부족\"\n    ],\n    \"setup_vs_structure\": \"구조와 실행 셋업은 대체로 약세 쪽으로 정렬되어 있으나, 파생 CVD 개선과 캔들·하모닉 PRZ가 단기 반등 리스크를 만든다. 따라서 운영상 핵심은 $64,918-$65,595 회복 여부이며, 회복 전에는 반등 셋업보다 미확인 약세 구조가 우선한다.\"\n  },\n  \"signal_breakdown\": {\n    \"bullish_count\": 2,\n    \"bearish_count\": 3,\n    \"neutral_count\": 1\n  },\n  \"key_levels\": {\n    \"support\": [\n      63500,\n      63360,\n      63202.3,\n      60691.9,\n      59080,\n      57500\n    ],\n    \"resistance\": [\n      64684.69,\n      64738,\n      64918.2,\n      65595.7,\n      66100,\n      66648.83,\n      68152,\n      70954.35\n    ]\n  },\n  \"confluences\": [\n    \"ICT의 bearish CHoCH $64,918.20, Fibonacci 0.236 저항 $64,684.69, 전일 고점 $64,738.00이 모두 $64.7k-$64.9k 구간에 밀집해 즉각적인 구조 회복 관문을 형성한다.\",\n    \"Derivatives의 상단 청산 클러스터 $66,100, EMA20 $66,648.83, Harmonic 상단 PRZ $65,323.41-$67,113.44가 $65.3k-$66.6k 부근에서 2차 저항대를 이룬다.\",\n    \"ICT 전일 저가 $63,360.00, Derivatives 하방 청산 레벨 $63,500, Harmonic PRZ 하단 $63,202.30-$63,231.30이 $63.2k-$63.5k 지지·유동성 구간으로 중첩된다.\",\n    \"ICT, Candlestick, Derivatives가 모두 7일 저점 $60,691.90을 핵심 하방 기준으로 제시하며, Fibonacci와 Wyckoff는 $59,080.00을 더 큰 구조 지지로 공유한다.\",\n    \"EMA20 $66,648.83은 Derivatives, ICT, Candlestick, Harmonic, Wyckoff가 공통으로 언급한 일봉 구조 회복의 핵심 저항이다.\",\n    \"Fibonacci EQ $70,954.35와 ICT EQ $70,954.35가 동일하며, 현 가격이 이 EQ 아래 discount 구간에 있다는 점은 구조적 약세 속에서도 추격 숏의 효율이 낮아지는 조건으로 합의된다.\"\n  ],\n  \"conflicts\": [\n    \"Wyckoff는 과거 완성된 ACC 구조를 근거로 상위 구조의 bullish prior를 유지하지만, ICT·Fibonacci·Derivatives·Candlestick·Harmonic은 현재가가 주요 EMA와 CHoCH, Fib 회복선 아래에 있어 현 구조를 bearish로 본다.\",\n    \"Derivatives와 Candlestick은 CVD 개선, OI 증가, bullish engulfing 및 morning star 반복을 근거로 단기 bullish setup을 제시하지만, ICT와 Wyckoff는 $64,918.20 및 $65,595.70 회복 실패를 근거로 bearish setup을 더 강하게 본다.\",\n    \"Harmonic은 $64.3k-$65.3k에 bullish PRZ가 밀집되어 있다고 보지만, actionable 패턴과 확정 반응이 부족하므로 독립적인 구조 전환 신호로는 인정하기 어렵다.\",\n    \"Fibonacci는 $64,684.69를 첫 되돌림 저항으로 보며 회복 전 약세를 유지하지만, 파생 포지셔닝은 $66,100 상단 청산 클러스터로의 숏스퀴즈 리스크를 동시에 시사한다.\"\n  ],\n  \"highest_conviction_analyst\": \"ICT Trader — 최근 bearish CHoCH $64,918.20, EQ $70,954.35, EMA20 $66,648.83, 전일 고저 $64,738/$63,360을 모두 사용해 현재 구조가 회복되지 않았음을 가장 명확하게 제시했으며, 신호 신뢰도 74%와 bearish setup score 0.815로 가장 강한 구조적 약세 판단을 제공한다.\",\n  \"invalidation_level\": \"$66,648.83 일봉 EMA20 상방 수용. 보수적으로는 $68,152.00 Fibonacci 0.382 회복 시 현재 bearish 구조 판단은 크게 약화된다.\",\n  \"executive_summary\": \"BTC/USDT 1일 구조는 현재 $64,514.90 기준으로 bearish로 판정한다. 과거 Wyckoff ACC 구조는 bullish prior를 남기지만, 현재 활성 구간은 $64,918.20 bearish CHoCH 아래, $65,595.70 Spring 기준 아래, EMA20 $66,648.83 아래에 있어 회복 실패 상태가 더 중요하다. 현 위치는 $82,829 → $59,080 하락 스윙의 0.236 저항 $64,684.69 바로 아래이며, $64.7k-$65.6k 구간이 구조 회복 여부를 가르는 압축 저항대로 작동한다. 단기 실행 조건은 ICT·Wyckoff·Fibonacci가 약세를 지지하지만, CVD 개선과 $64.3k-$65.3k bullish PRZ, 반복된 bullish candlestick은 약세 구조 안의 반등 리스크로 관리해야 한다. 구조적 약세 판단은 $66,648.83 상방 수용 시 약화되며, $68,152.00 회복 시 하락 스윙 내 단순 반등이 아닌 구조 재평가가 필요하다.\"\n}"
  },
  "overall_signal": "bearish",
  "overall_confidence": 0.68,
  "operating_path": {
    "path_type": "trending",
    "confidence": 0.6,
    "waypoints": [
      {
        "seq": 1,
        "price": 63360.0,
        "type": "support_test",
        "source": "ICT (전일 저가 $63,360 sell-side liquidity), Derivatives (하방 청산 $63,500), Harmonic (PRZ 하단 $63,202.30-$63,231.30), Chairman ($63.2k-$63.5k 지지·유동성 중첩)",
        "description": "현재가 $64,514.90가 0.236 되돌림 $64,684.69 · 전일 고점 $64,738 · bearish CHoCH $64,918.20 저항 클러스터 아래에서 회복에 실패한 상태. 약세 구조가 우선하는 만큼 첫 유의미한 하방 목표는 ICT 전일 저가 $63,360을 중심으로 Derivatives 청산 $63,500, Harmonic PRZ 하단 $63,202-$63,231이 중첩되는 $63.2k-$63.5k 지지·sell-side liquidity 구간. 이 구간 방어 여부가 단순 되돌림인지 추가 하락인지를 가른다.",
        "est_hours": 8.0,
        "turning_zone": [
          62850.0,
          63500.0
        ],
        "likely_wick": 63202.3,
        "rejection_confirm": 63700.0,
        "invalid_overshoot": 62700.0,
        "calibration_reasoning": "Derivatives 청산 클러스터 $63,500부터 챔피언 지지 $63,202.3까지 밀집된 지지대를 turning_zone(폭 $650 ≈ 0.29 ATR, 타이트한 지지 스택 반영)으로 설정했고, likely_wick은 전일 저가 $63,360 하단 sell-side 유동성을 스윕하는 PRZ/챔피언 지지 $63,202.3로 잡았다. $63,500 재탈환 시 반등 확정, $62,700 명확 이탈 시 WP2로의 연속 하락 트리거다(harmonic gartley PRZ $64,533은 현재가 상단·미확정이라 본 하방 waypoint에 미반영)."
      },
      {
        "seq": 2,
        "price": 60691.9,
        "type": "swing_low",
        "source": "ICT·Candlestick·Derivatives·Wyckoff 공통 7일 저점 $60,691.90, Fibonacci 하위 구조 지지 맥락",
        "description": "$63,360 이탈이 확인되면 ICT·Candlestick·Derivatives·Wyckoff가 모두 핵심 하방 기준으로 제시하는 7일 저점 $60,691.90까지 sell-side liquidity 확장. 도중 Derivatives 중간 지지 $61,600을 경유한다. 약세 구조의 주 목표 지지이며, $60,691.90은 -5.9% 수준으로 24시간 기준 공격적 목표이므로 $63,360 명확 이탈(약세 트리거)이 전제다.",
        "est_hours": 22.0,
        "turning_zone": [
          59080.0,
          60691.9
        ],
        "likely_wick": 60000.0,
        "rejection_confirm": 61600.0,
        "invalid_overshoot": 58800.0,
        "calibration_reasoning": "터미널 waypoint이므로 0.72 ATR의 넓은 zone을 적용: 상단은 7일 저점·다지표 합류 $60,691.90, 하단은 Fib 합류(ext_1.0 ×2)·챔피언 지지 $59,080이며 둘 사이에 구조적 지지가 없다. likely_wick은 7일 저점 하단 유동성을 스윕한 뒤 라운드넘버 자석 $60,000으로 편향했고, $61,600 Derivatives 중간지지 재탈환 시 반등 확정·$59,080 명확 이탈 시 $57,500 방향 추가 하락이다."
      }
    ],
    "period_extremes": {
      "4h": {
        "expected_high": 64950.0,
        "expected_low": 64000.0,
        "high_first": true
      },
      "8h": {
        "expected_high": 64950.0,
        "expected_low": 63360.0,
        "high_first": true
      },
      "24h": {
        "expected_high": 65100.0,
        "expected_low": 60691.9,
        "high_first": true
      }
    },
    "triggers": {
      "bullish": {
        "price": 64918.2,
        "description": "ICT bearish CHoCH $64,918.20 회복·수용 시 단기 약세 셋업 약화. CVD divergence 0.700, OI +2.40%를 연료로 Derivatives 상단 청산 클러스터 $66,100 / EMA20 $66,648.83 방향 숏스퀴즈 경로가 열린다. 더 확실한 확인은 Wyckoff Spring $65,595.70 reclaim."
      },
      "bearish": {
        "price": 63360.0,
        "description": "전일 저가 $63,360 / Derivatives 청산 $63,500 동반 이탈 시 약세 가속. $63.2k-$63.5k 지지 클러스터가 무너지면 Derivatives 중간 지지 $61,600을 거쳐 7일 저점 $60,691.90, 추가로 Fibonacci 구조 지지 $59,080까지 경로가 개방된다."
      }
    },
    "scenario_invalidation": 65595.7,
    "raw_llm_response": "```json\n{\n  \"path_type\": \"trending\",\n  \"confidence\": 0.6,\n  \"waypoints\": [\n    {\n      \"seq\": 1,\n      \"price\": 63360.0,\n      \"type\": \"support_test\",\n      \"source\": \"ICT (전일 저가 $63,360 sell-side liquidity), Derivatives (하방 청산 $63,500), Harmonic (PRZ 하단 $63,202.30-$63,231.30), Chairman ($63.2k-$63.5k 지지·유동성 중첩)\",\n      \"description\": \"현재가 $64,514.90가 0.236 되돌림 $64,684.69 · 전일 고점 $64,738 · bearish CHoCH $64,918.20 저항 클러스터 아래에서 회복에 실패한 상태. 약세 구조가 우선하는 만큼 첫 유의미한 하방 목표는 ICT 전일 저가 $63,360을 중심으로 Derivatives 청산 $63,500, Harmonic PRZ 하단 $63,202-$63,231이 중첩되는 $63.2k-$63.5k 지지·sell-side liquidity 구간. 이 구간 방어 여부가 단순 되돌림인지 추가 하락인지를 가른다.\",\n      \"est_hours\": 8.0\n    },\n    {\n      \"seq\": 2,\n      \"price\": 60691.9,\n      \"type\": \"swing_low\",\n      \"source\": \"ICT·Candlestick·Derivatives·Wyckoff 공통 7일 저점 $60,691.90, Fibonacci 하위 구조 지지 맥락\",\n      \"description\": \"$63,360 이탈이 확인되면 ICT·Candlestick·Derivatives·Wyckoff가 모두 핵심 하방 기준으로 제시하는 7일 저점 $60,691.90까지 sell-side liquidity 확장. 도중 Derivatives 중간 지지 $61,600을 경유한다. 약세 구조의 주 목표 지지이며, $60,691.90은 -5.9% 수준으로 24시간 기준 공격적 목표이므로 $63,360 명확 이탈(약세 트리거)이 전제다.\",\n      \"est_hours\": 22.0\n    }\n  ],\n  \"period_extremes\": {\n    \"4h\":  {\"expected_high\": 64950.0, \"expected_low\": 64000.0, \"high_first\": true},\n    \"8h\":  {\"expected_high\": 64950.0, \"expected_low\": 63360.0, \"high_first\": true},\n    \"24h\": {\"expected_high\": 65100.0, \"expected_low\": 60691.9, \"high_first\": true}\n  },\n  \"triggers\": {\n    \"bullish\": {\n      \"price\": 64918.2,\n      \"description\": \"ICT bearish CHoCH $64,918.20 회복·수용 시 단기 약세 셋업 약화. CVD divergence 0.700, OI +2.40%를 연료로 Derivatives 상단 청산 클러스터 $66,100 / EMA20 $66,648.83 방향 숏스퀴즈 경로가 열린다. 더 확실한 확인은 Wyckoff Spring $65,595.70 reclaim.\"\n    },\n    \"bearish\": {\n      \"price\": 63360.0,\n      \"description\": \"전일 저가 $63,360 / Derivatives 청산 $63,500 동반 이탈 시 약세 가속. $63.2k-$63.5k 지지 클러스터가 무너지면 Derivatives 중간 지지 $61,600을 거쳐 7일 저점 $60,691.90, 추가로 Fibonacci 구조 지지 $59,080까지 경로가 개방된다.\"\n    }\n  },\n  \"scenario_invalidation\": 65595.7\n}\n```"
  },
  "tp_calibration": {
    "calibrated_waypoints": [
      {
        "seq": 1,
        "base_target": 63360.0,
        "turning_zone": [
          62850.0,
          63500.0
        ],
        "likely_wick": 63202.3,
        "rejection_confirm": 63700.0,
        "invalid_overshoot": 62700.0,
        "calibration_reasoning": "Derivatives 청산 클러스터 $63,500부터 챔피언 지지 $63,202.3까지 밀집된 지지대를 turning_zone(폭 $650 ≈ 0.29 ATR, 타이트한 지지 스택 반영)으로 설정했고, likely_wick은 전일 저가 $63,360 하단 sell-side 유동성을 스윕하는 PRZ/챔피언 지지 $63,202.3로 잡았다. $63,500 재탈환 시 반등 확정, $62,700 명확 이탈 시 WP2로의 연속 하락 트리거다(harmonic gartley PRZ $64,533은 현재가 상단·미확정이라 본 하방 waypoint에 미반영)."
      },
      {
        "seq": 2,
        "base_target": 60691.9,
        "turning_zone": [
          59080.0,
          60691.9
        ],
        "likely_wick": 60000.0,
        "rejection_confirm": 61600.0,
        "invalid_overshoot": 58800.0,
        "calibration_reasoning": "터미널 waypoint이므로 0.72 ATR의 넓은 zone을 적용: 상단은 7일 저점·다지표 합류 $60,691.90, 하단은 Fib 합류(ext_1.0 ×2)·챔피언 지지 $59,080이며 둘 사이에 구조적 지지가 없다. likely_wick은 7일 저점 하단 유동성을 스윕한 뒤 라운드넘버 자석 $60,000으로 편향했고, $61,600 Derivatives 중간지지 재탈환 시 반등 확정·$59,080 명확 이탈 시 $57,500 방향 추가 하락이다."
      }
    ],
    "raw_llm_response": "```json\n{\n  \"calibrated_waypoints\": [\n    {\n      \"seq\": 1,\n      \"base_target\": 63360.00,\n      \"turning_zone\": [62850.00, 63500.00],\n      \"likely_wick\": 63202.30,\n      \"rejection_confirm\": 63700.00,\n      \"invalid_overshoot\": 62700.00,\n      \"calibration_reasoning\": \"Derivatives 청산 클러스터 $63,500부터 챔피언 지지 $63,202.3까지 밀집된 지지대를 turning_zone(폭 $650 ≈ 0.29 ATR, 타이트한 지지 스택 반영)으로 설정했고, likely_wick은 전일 저가 $63,360 하단 sell-side 유동성을 스윕하는 PRZ/챔피언 지지 $63,202.3로 잡았다. $63,500 재탈환 시 반등 확정, $62,700 명확 이탈 시 WP2로의 연속 하락 트리거다(harmonic gartley PRZ $64,533은 현재가 상단·미확정이라 본 하방 waypoint에 미반영).\"\n    },\n    {\n      \"seq\": 2,\n      \"base_target\": 60691.90,\n      \"turning_zone\": [59080.00, 60691.90],\n      \"likely_wick\": 60000.00,\n      \"rejection_confirm\": 61600.00,\n      \"invalid_overshoot\": 58800.00,\n      \"calibration_reasoning\": \"터미널 waypoint이므로 0.72 ATR의 넓은 zone을 적용: 상단은 7일 저점·다지표 합류 $60,691.90, 하단은 Fib 합류(ext_1.0 ×2)·챔피언 지지 $59,080이며 둘 사이에 구조적 지지가 없다. likely_wick은 7일 저점 하단 유동성을 스윕한 뒤 라운드넘버 자석 $60,000으로 편향했고, $61,600 Derivatives 중간지지 재탈환 시 반등 확정·$59,080 명확 이탈 시 $57,500 방향 추가 하락이다.\"\n    }\n  ]\n}\n```"
  },
  "timing": {
    "stages": {
      "stage1_agents": 34.1,
      "chairman": 39.7,
      "operating_path": 285.4,
      "tp_calibrator": 226.5
    },
    "agents": {},
    "total_s": 585.7
  }
}