{
  "symbol": "BTC/USDT",
  "timeframe": "15m",
  "timestamp": "2026-06-26 09:00 KST",
  "last_price": 59768.2,
  "num_candles": 300,
  "stage1_analyses": {
    "ict": {
      "agent_id": "ict",
      "display_name": "ICT Trader",
      "signal": "neutral",
      "confidence": 0.58,
      "structure_bias": "bearish",
      "setup_bias": "bullish",
      "setup_score": 0.755,
      "setup_signals": [
        "현재가 $59,768.20가 EQ $59,886.45 아래에 위치하여 discount 구간에서 거래 중",
        "현재가가 단기 범위 저점 $58,030.00 대비 위에 있으나 range high $61,742.90 대비 하단부에 있어 매수 셋업 관찰 구간",
        "London low $59,705.40 근처에서 sell-side liquidity 스윕 가능성이 있으며, 회수 후 반등 시 bullish setup 강화",
        "previous day low $58,030.00이 아직 깨지지 않아 주요 sell-side liquidity 및 bullish invalidation 기준으로 작동",
        "상방 확인 트리거는 CHoCH_bearish 레벨 $60,648.00 회복 및 $61,256.00 bullish BOS 레벨 재탈환"
      ],
      "reasoning": "확정 구조는 bearish로 봅니다. 최근 구조 이벤트가 BOS_bullish → CHoCH_bearish → BOS_bullish → CHoCH_bearish 순서이며, 마지막 확인 이벤트가 $60,648.00의 bearish CHoCH이고 현재가 $59,768.20는 그 아래에서 거래 중입니다. 다만 실행 셋업은 bullish입니다. 가격이 EQ $59,886.45 아래 discount에 있고, previous day low 및 range low인 $58,030.00이 아직 보존되어 있어 하단 유동성 회수 후 반등 셋업이 열려 있습니다. 단, 활성 OB와 미충족 FVG가 모두 0개이고 최근 liquidity sweep도 없어, 현 단계는 확정 매수 신호라기보다 bearish structure 안의 pre-confirmation long setup입니다.",
      "key_levels": {
        "support": [
          59705.4,
          58030.0
        ],
        "resistance": [
          59886.45,
          60180.8,
          60648.0,
          61256.0,
          61742.9,
          61931.1
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$58,030.00",
      "risk_scenario": "만약 $58,030.00 previous day low이 하방 이탈되고 15분봉 기준으로 수용된다면, discount 매수 셋업은 실패로 보고 sell-side liquidity sweep이 아니라 bearish continuation으로 해석해야 합니다. 이 경우 다음 흐름은 $59,705.40 London low 재회복 실패 후 추가 하락이며, $60,648.00 회복 전까지는 구조적 매수 전환을 인정하기 어렵습니다.",
      "data_quality": "medium",
      "metrics": {
        "order_blocks_total": 0,
        "confirmed_bullish_ob": 0,
        "confirmed_bearish_ob": 0,
        "candidate_bullish_ob": 0,
        "candidate_bearish_ob": 0,
        "active_bullish_ob": 0,
        "active_bearish_ob": 0,
        "nearest_bull_ob_range": null,
        "nearest_bear_ob_range": null,
        "active_bullish_ob_list": [],
        "active_bearish_ob_list": [],
        "ob_mitigated_count": 2,
        "unfilled_bull_fvg_count": 0,
        "unfilled_bear_fvg_count": 0,
        "bull_fvg_ranges": [],
        "bear_fvg_ranges": [],
        "fvg_open_count": 0,
        "fvg_mitigated_count": 65,
        "fvg_open_zones": [],
        "bos_choch_events": [
          "BOS_bullish",
          "CHoCH_bearish",
          "BOS_bullish",
          "CHoCH_bearish"
        ],
        "bos_choch_levels": [
          {
            "type": "BOS_bullish",
            "level": 62837.1
          },
          {
            "type": "CHoCH_bearish",
            "level": 62402.8
          },
          {
            "type": "BOS_bullish",
            "level": 61256.0
          },
          {
            "type": "CHoCH_bearish",
            "level": 60648.0
          }
        ],
        "bos_sequence": [
          "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": 59886.45,
        "range_high": 61742.9,
        "range_low": 58030.0,
        "bull_score": 5.0,
        "bear_score": 4.4,
        "setup_bias": "bullish",
        "setup_score": 0.755,
        "setup_signals": [
          "bullish BOS above $62,837.10",
          "bullish BOS above $61,256.00"
        ],
        "retracement_direction": "bearish",
        "current_retracement_pct": 54.7,
        "deepest_retracement_pct": 62.5,
        "previous_day_high": 61931.1,
        "previous_day_low": 58030.0,
        "broken_prev_high": false,
        "broken_prev_low": false,
        "sessions": {
          "London": {
            "active": true,
            "high": 60180.8,
            "low": 59705.4
          },
          "New York": {
            "active": false,
            "high": null,
            "low": null
          },
          "Asian kill zone": {
            "active": false,
            "high": null,
            "low": null
          }
        }
      },
      "raw_llm_response": "{\n  \"signal\": \"neutral\",\n  \"confidence\": 0.58,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.755,\n  \"setup_signals\": [\n    \"현재가 $59,768.20가 EQ $59,886.45 아래에 위치하여 discount 구간에서 거래 중\",\n    \"현재가가 단기 범위 저점 $58,030.00 대비 위에 있으나 range high $61,742.90 대비 하단부에 있어 매수 셋업 관찰 구간\",\n    \"London low $59,705.40 근처에서 sell-side liquidity 스윕 가능성이 있으며, 회수 후 반등 시 bullish setup 강화\",\n    \"previous day low $58,030.00이 아직 깨지지 않아 주요 sell-side liquidity 및 bullish invalidation 기준으로 작동\",\n    \"상방 확인 트리거는 CHoCH_bearish 레벨 $60,648.00 회복 및 $61,256.00 bullish BOS 레벨 재탈환\"\n  ],\n  \"reasoning\": \"확정 구조는 bearish로 봅니다. 최근 구조 이벤트가 BOS_bullish → CHoCH_bearish → BOS_bullish → CHoCH_bearish 순서이며, 마지막 확인 이벤트가 $60,648.00의 bearish CHoCH이고 현재가 $59,768.20는 그 아래에서 거래 중입니다. 다만 실행 셋업은 bullish입니다. 가격이 EQ $59,886.45 아래 discount에 있고, previous day low 및 range low인 $58,030.00이 아직 보존되어 있어 하단 유동성 회수 후 반등 셋업이 열려 있습니다. 단, 활성 OB와 미충족 FVG가 모두 0개이고 최근 liquidity sweep도 없어, 현 단계는 확정 매수 신호라기보다 bearish structure 안의 pre-confirmation long setup입니다.\",\n  \"key_levels\": {\n    \"support\": [\n      59705.4,\n      58030.0\n    ],\n    \"resistance\": [\n      59886.45,\n      60180.8,\n      60648.0,\n      61256.0,\n      61742.9,\n      61931.1\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$58,030.00\",\n  \"risk_scenario\": \"만약 $58,030.00 previous day low이 하방 이탈되고 15분봉 기준으로 수용된다면, discount 매수 셋업은 실패로 보고 sell-side liquidity sweep이 아니라 bearish continuation으로 해석해야 합니다. 이 경우 다음 흐름은 $59,705.40 London low 재회복 실패 후 추가 하락이며, $60,648.00 회복 전까지는 구조적 매수 전환을 인정하기 어렵습니다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "candlestick": {
      "agent_id": "candlestick",
      "display_name": "Candlestick Reader",
      "signal": "bearish",
      "confidence": 0.78,
      "structure_bias": "bearish",
      "setup_bias": "bearish",
      "setup_score": 0.66,
      "setup_signals": [
        "현재가 $59,768.20가 EMA120 $60,508.20 아래에 있어 중기 구조가 약세로 수용된 상태",
        "현재가가 EMA240 $61,273.49 및 7일 EQ $61,245.50 아래에 위치해 상단 회복 실패 구간",
        "292번 캔들에서 고거래량 bearish_engulfing 발생, 패턴 품질 0.801로 최근 패턴 중 가장 강함",
        "294번 캔들의 doji 및 bullish_harami는 품질이 각각 0.355, 0.454로 낮아 강한 반전 확인으로 보기 어려움",
        "현재가 $59,768.20가 EMA20 $59,768.68 바로 아래에서 정체되어 단기 동적 저항 테스트 중"
      ],
      "reasoning": "BTC는 현재 $59,768.20으로 EMA20 $59,768.68에 거의 붙어 있으나 아직 하회하고 있으며, EMA120 $60,508.20과 EMA240 $61,273.49 아래에 있어 구조적으로는 약세 우위입니다. 최근 핵심 캔들 신호는 292번의 고거래량 bearish engulfing이며, 품질 0.801로 doji 0.355 및 bullish harami 0.454보다 신뢰도가 높습니다. 24시간 변동률도 -2.10%로 하방 압력이 유지되고 있고, bear_score 0.850이 bull_score 0.600을 명확히 앞섭니다. 다만 가격이 7일 저점 $58,030.00에 가까운 할인 영역에 있어 즉각적인 추격 매도보다는 EMA20 및 EMA120 회복 여부를 확인하는 접근이 필요합니다.",
      "key_levels": {
        "support": [
          59494.58,
          58030.0
        ],
        "resistance": [
          59768.68,
          60508.2,
          61245.5,
          61273.49,
          64461.0
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$60,508.20 상향 돌파 및 15분봉 종가 안착",
      "risk_scenario": "반대로 가격이 EMA20 $59,768.68을 회복한 뒤 EMA120 $60,508.20 위로 종가 안착하면, bearish engulfing의 하방 지속 신호는 무효화되고 $61,245.50~$61,273.49 구간까지 숏 커버링 반등이 나올 수 있습니다.",
      "data_quality": "medium",
      "metrics": {
        "total_patterns_detected": 120,
        "recent_patterns": 3,
        "pattern_list": [
          "bearish_engulfing@292",
          "doji@294",
          "bullish_harami@294"
        ],
        "atr_value": 273.62,
        "vol_avg_20": 1521.1,
        "high_volume_patterns": [
          "bearish_engulfing"
        ],
        "pattern_candidates": [
          {
            "pattern": "bearish_engulfing",
            "signal": "bearish",
            "pattern_quality": 0.801,
            "tier": "strict",
            "high_volume": true
          },
          {
            "pattern": "bullish_harami",
            "signal": "bullish",
            "pattern_quality": 0.454,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "doji",
            "signal": "neutral",
            "pattern_quality": 0.355,
            "tier": "candidate",
            "high_volume": false
          }
        ],
        "best_pattern_quality": 0.801,
        "bull_score": 0.6,
        "bear_score": 0.85
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.78,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.66,\n  \"setup_signals\": [\n    \"현재가 $59,768.20가 EMA120 $60,508.20 아래에 있어 중기 구조가 약세로 수용된 상태\",\n    \"현재가가 EMA240 $61,273.49 및 7일 EQ $61,245.50 아래에 위치해 상단 회복 실패 구간\",\n    \"292번 캔들에서 고거래량 bearish_engulfing 발생, 패턴 품질 0.801로 최근 패턴 중 가장 강함\",\n    \"294번 캔들의 doji 및 bullish_harami는 품질이 각각 0.355, 0.454로 낮아 강한 반전 확인으로 보기 어려움\",\n    \"현재가 $59,768.20가 EMA20 $59,768.68 바로 아래에서 정체되어 단기 동적 저항 테스트 중\"\n  ],\n  \"reasoning\": \"BTC는 현재 $59,768.20으로 EMA20 $59,768.68에 거의 붙어 있으나 아직 하회하고 있으며, EMA120 $60,508.20과 EMA240 $61,273.49 아래에 있어 구조적으로는 약세 우위입니다. 최근 핵심 캔들 신호는 292번의 고거래량 bearish engulfing이며, 품질 0.801로 doji 0.355 및 bullish harami 0.454보다 신뢰도가 높습니다. 24시간 변동률도 -2.10%로 하방 압력이 유지되고 있고, bear_score 0.850이 bull_score 0.600을 명확히 앞섭니다. 다만 가격이 7일 저점 $58,030.00에 가까운 할인 영역에 있어 즉각적인 추격 매도보다는 EMA20 및 EMA120 회복 여부를 확인하는 접근이 필요합니다.\",\n  \"key_levels\": {\n    \"support\": [\n      59494.58,\n      58030.0\n    ],\n    \"resistance\": [\n      59768.68,\n      60508.2,\n      61245.5,\n      61273.49,\n      64461.0\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$60,508.20 상향 돌파 및 15분봉 종가 안착\",\n  \"risk_scenario\": \"반대로 가격이 EMA20 $59,768.68을 회복한 뒤 EMA120 $60,508.20 위로 종가 안착하면, bearish engulfing의 하방 지속 신호는 무효화되고 $61,245.50~$61,273.49 구간까지 숏 커버링 반등이 나올 수 있습니다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "fibonacci": {
      "agent_id": "fibonacci",
      "display_name": "Fibonacci Analyst",
      "signal": "bearish",
      "confidence": 0.58,
      "structure_bias": "neutral",
      "setup_bias": "bearish",
      "setup_score": 0.62,
      "setup_signals": [
        "현재가 $59,768.20은 스윙 EQ인 0.5 되돌림 $59,698.85 위에 있어 단기 프리미엄 영역에 위치",
        "가격이 가장 가까운 피보나치 저항 ret_0.382 $59,827.74 바로 아래에서 테스트 중이며 거리 0.10%로 매우 근접",
        "상단 confluence zone $59,837.94에 ret_0.5, ret_0.382, ret_0.236 클러스터가 형성되어 단기 공급 저항 가능성",
        "현재가가 EMA120 $60,508.20 및 EMA240 $61,273.49 아래에 있어 상위 평균선 기준 회복 구조는 아직 미확인",
        "골든 비율 ret_0.618 $59,569.96이 하단 핵심 자석/반응 구간으로 남아 있음"
      ],
      "reasoning": "현재 BTC/USDT는 Low $59,153 → High $60,245 상승 스윙 이후 되돌림 구간에 있으며, 가격 $59,768.20은 ret_0.382 $59,827.74 바로 아래에서 테스트 중입니다. 구조적으로는 명확한 BOS나 CHoCH 확인이 제공되지 않았기 때문에 확정 구조는 중립으로 보지만, 세팅 관점에서는 EQ $59,698.85 위 프리미엄 영역에서 ret_0.382 및 $59,837.94 confluence 저항에 막히는 형태라 단기 하방 세팅이 우세합니다. 특히 핵심 골든 비율 ret_0.618 $59,569.96은 cluster_score 0.85의 고품질 지지 구간이며, ret_0.382 회복 실패 시 해당 구간 재테스트 확률이 높습니다. 반대로 $59,987.22의 ret_0.236을 회복하면 단기 매도 세팅은 약화되고 $60,245.00 스윙 고점 및 ext_1.272 $60,542.11까지 반등 여지가 열립니다.",
      "key_levels": {
        "support": [
          59698.85,
          59569.96,
          59386.45
        ],
        "resistance": [
          59827.74,
          59987.22,
          60245.0
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$59,987.22",
      "risk_scenario": "가격이 ret_0.382 $59,827.74를 회복한 뒤 ret_0.236 $59,987.22 위에 안착하면 단기 하방 세팅은 무효화되며, $60,245.00 스윙 고점과 $60,542.11 ext_1.272 방향으로 숏 커버링성 반등이 전개될 수 있습니다.",
      "data_quality": "medium",
      "metrics": {
        "swing_pair": "Low→High: $59,153 → $60,245",
        "direction": "up",
        "nearest_fib": "ret_0.382",
        "nearest_fib_price": 59827.74,
        "nearest_fib_distance": 0.1,
        "golden_ratio_level": 59569.96,
        "fib_ret_382": 59827.74,
        "fib_ret_618": 59569.96,
        "confluence_zones": [
          {
            "price": 59501.38,
            "count": 3,
            "levels": [
              "ret_0.786",
              "ret_0.236",
              "ret_0.618"
            ],
            "cluster_score": 0.85
          },
          {
            "price": 59837.94,
            "count": 3,
            "levels": [
              "ret_0.5",
              "ret_0.382",
              "ret_0.236"
            ],
            "cluster_score": 0.85
          },
          {
            "price": 60424.58,
            "count": 3,
            "levels": [
              "ext_1.0",
              "ret_0.382",
              "ext_1.272"
            ],
            "cluster_score": 0.85
          },
          {
            "price": 60808.63,
            "count": 2,
            "levels": [
              "ext_1.414",
              "ext_1.618"
            ],
            "cluster_score": 0.6
          },
          {
            "price": 61291.4,
            "count": 2,
            "levels": [
              "ret_0.5",
              "ext_2.0"
            ],
            "cluster_score": 0.6
          }
        ],
        "support_levels": [
          59698.85,
          59569.9586,
          59386.4522
        ],
        "resistance_levels": [
          59827.7414,
          59987.2172,
          60245.0
        ],
        "level_candidates": [
          {
            "name": "ret_0.236",
            "price": 59987.22,
            "distance_pct": 0.37,
            "is_support": false,
            "cluster_score": 0.85
          },
          {
            "name": "ret_0.382",
            "price": 59827.74,
            "distance_pct": 0.1,
            "is_support": false,
            "cluster_score": 0.85
          },
          {
            "name": "ret_0.5",
            "price": 59698.85,
            "distance_pct": 0.12,
            "is_support": true,
            "cluster_score": 0.85
          },
          {
            "name": "ret_0.618",
            "price": 59569.96,
            "distance_pct": 0.33,
            "is_support": true,
            "cluster_score": 0.85
          },
          {
            "name": "ret_0.786",
            "price": 59386.45,
            "distance_pct": 0.64,
            "is_support": true,
            "cluster_score": 0.85
          },
          {
            "name": "ext_1.0",
            "price": 60245.0,
            "distance_pct": 0.8,
            "is_support": false,
            "cluster_score": 0.85
          },
          {
            "name": "ext_1.272",
            "price": 60542.11,
            "distance_pct": 1.29,
            "is_support": false,
            "cluster_score": 0.85
          },
          {
            "name": "ext_1.414",
            "price": 60697.21,
            "distance_pct": 1.55,
            "is_support": false,
            "cluster_score": 0.85
          },
          {
            "name": "ext_1.618",
            "price": 60920.04,
            "distance_pct": 1.93,
            "is_support": false,
            "cluster_score": 0.6
          },
          {
            "name": "ext_2.0",
            "price": 61337.3,
            "distance_pct": 2.63,
            "is_support": false,
            "cluster_score": 0.6
          }
        ],
        "confluence_quality": 0.85,
        "fib_reaction_state": "testing",
        "reaction_probability": 0.65
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.58,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.62,\n  \"setup_signals\": [\n    \"현재가 $59,768.20은 스윙 EQ인 0.5 되돌림 $59,698.85 위에 있어 단기 프리미엄 영역에 위치\",\n    \"가격이 가장 가까운 피보나치 저항 ret_0.382 $59,827.74 바로 아래에서 테스트 중이며 거리 0.10%로 매우 근접\",\n    \"상단 confluence zone $59,837.94에 ret_0.5, ret_0.382, ret_0.236 클러스터가 형성되어 단기 공급 저항 가능성\",\n    \"현재가가 EMA120 $60,508.20 및 EMA240 $61,273.49 아래에 있어 상위 평균선 기준 회복 구조는 아직 미확인\",\n    \"골든 비율 ret_0.618 $59,569.96이 하단 핵심 자석/반응 구간으로 남아 있음\"\n  ],\n  \"reasoning\": \"현재 BTC/USDT는 Low $59,153 → High $60,245 상승 스윙 이후 되돌림 구간에 있으며, 가격 $59,768.20은 ret_0.382 $59,827.74 바로 아래에서 테스트 중입니다. 구조적으로는 명확한 BOS나 CHoCH 확인이 제공되지 않았기 때문에 확정 구조는 중립으로 보지만, 세팅 관점에서는 EQ $59,698.85 위 프리미엄 영역에서 ret_0.382 및 $59,837.94 confluence 저항에 막히는 형태라 단기 하방 세팅이 우세합니다. 특히 핵심 골든 비율 ret_0.618 $59,569.96은 cluster_score 0.85의 고품질 지지 구간이며, ret_0.382 회복 실패 시 해당 구간 재테스트 확률이 높습니다. 반대로 $59,987.22의 ret_0.236을 회복하면 단기 매도 세팅은 약화되고 $60,245.00 스윙 고점 및 ext_1.272 $60,542.11까지 반등 여지가 열립니다.\",\n  \"key_levels\": {\n    \"support\": [\n      59698.85,\n      59569.96,\n      59386.45\n    ],\n    \"resistance\": [\n      59827.74,\n      59987.22,\n      60245.0\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$59,987.22\",\n  \"risk_scenario\": \"가격이 ret_0.382 $59,827.74를 회복한 뒤 ret_0.236 $59,987.22 위에 안착하면 단기 하방 세팅은 무효화되며, $60,245.00 스윙 고점과 $60,542.11 ext_1.272 방향으로 숏 커버링성 반등이 전개될 수 있습니다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "derivatives": {
      "agent_id": "derivatives",
      "display_name": "Derivatives Trader",
      "signal": "bearish",
      "confidence": 0.62,
      "structure_bias": "bearish",
      "setup_bias": "bearish",
      "setup_score": 0.72,
      "setup_signals": [
        "가격 $59,768.20이 EMA120 $60,508.20 및 EMA240 $61,273.49 아래에 있어 중기 구조 수용이 약세",
        "24시간 OI +4.493% 증가와 가격 -2.10% 하락이 동반되어 신규 숏 또는 롱 물타기 포지션 증가로 변동성 확대 위험",
        "CVD 변화 -3,085.1120으로 매수 체결 참여가 약하며 가격 회복 대비 델타가 따라오지 못함",
        "롱 계정 비율 70.5%, account_long_crowding 1.000으로 롱 포지셔닝이 과밀하며 반대매매성 하락 압력 존재",
        "가격이 7일 고점 $64,461과 저점 $58,030의 EQ 약 $61,245.50 아래 할인 구간에 있으나, 파생 포지셔닝은 아직 반등 확인보다 하방 청산 유도를 시사",
        "하방 청산 밀집 구간 $57,100, $56,900, $55,900이 열려 있으며, 상방은 $60,600 회복 전까지 저항으로 작용"
      ],
      "reasoning": "현재 BTC는 $59,768.20으로 EMA20 $59,768.68 부근에 붙어 있지만 EMA120 $60,508.20과 EMA240 $61,273.49 아래에 머물러 구조적으로는 약세 수용 상태입니다. OI가 24시간 +4.493% 증가한 반면 가격은 -2.10%, CVD는 -3,085.1120으로 감소해 신규 포지션 유입이 가격을 지지하지 못하고 있으며, 이는 4~8시간 선행 관점에서 추가 하방 압력으로 해석됩니다. 롱 계정 비율이 70.5%이고 account_long_crowding이 1.000인 점은 롱 과밀 신호로, $57,100 및 $56,900 청산 유동성으로 가격이 끌릴 위험이 큽니다. 다만 가격이 7일 EQ $61,245.50 아래 할인 구간에 있어 $60,600을 강하게 회복하면 숏 커버링이 발생할 수 있으므로, 즉시 추격 숏보다는 반등 실패 확인이 유리합니다.",
      "key_levels": {
        "support": [
          58030,
          57100,
          56900,
          55900
        ],
        "resistance": [
          60508.2,
          60600,
          61245.5,
          61600,
          64100
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$60,600 15분 종가 회복 및 유지",
      "risk_scenario": "$60,600 상방 청산 구간을 돌파하면 숏 커버링이 유입되며 EMA120 $60,508.20 회복 후 EQ $61,245.50, 다음 청산 저항 $61,600까지 빠르게 되돌림이 나올 수 있습니다. 이 경우 현재의 롱 과밀 신호보다 하방 추격 숏의 청산 압력이 우세해져 단기 약세 시나리오는 무효화됩니다.",
      "data_quality": "medium",
      "metrics": {
        "cvd_divergence": 0.15,
        "cvd_change": -3085.112,
        "oi_trend": 0.949,
        "oi_change_pct_24h": 4.493,
        "oi_latest": 105318.523,
        "funding_pressure": 0.505,
        "funding_avg": -5.49e-06,
        "funding_change_24h": 3.003e-05,
        "long_account_ratio": 0.697,
        "short_account_ratio": 0.303,
        "long_account_latest": 0.705,
        "short_account_latest": 0.295,
        "long_account_change_24h": -0.0146,
        "short_account_change_24h": 0.0146,
        "account_flow_label": "short_accounts_rising_long_accounts_falling",
        "account_short_crowding": 0.0,
        "account_long_crowding": 1.0,
        "ls_imbalance": 0.0,
        "ls_imbalance_interpretation": "high=short-account crowding / low=long-account crowding",
        "spot_futures_basis_score": 0.49,
        "spot_futures_basis_pct": -0.0398,
        "basis_change_lookback": 0.0018,
        "aggregate_score": 0.419,
        "bull_signals": 1,
        "bear_signals": 2,
        "liq_below": [
          [
            57100,
            5790.014921000001
          ],
          [
            56900,
            5305.489918
          ],
          [
            55900,
            3707.20448
          ]
        ],
        "liq_above": [
          [
            60600,
            6600.109512200001
          ],
          [
            61600,
            3928.9779029999995
          ],
          [
            64100,
            4634.0055999999995
          ]
        ],
        "strongest_liq_level": 65200,
        "fragility_score": 0.797,
        "positioning_extreme": "balanced"
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.62,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.72,\n  \"setup_signals\": [\n    \"가격 $59,768.20이 EMA120 $60,508.20 및 EMA240 $61,273.49 아래에 있어 중기 구조 수용이 약세\",\n    \"24시간 OI +4.493% 증가와 가격 -2.10% 하락이 동반되어 신규 숏 또는 롱 물타기 포지션 증가로 변동성 확대 위험\",\n    \"CVD 변화 -3,085.1120으로 매수 체결 참여가 약하며 가격 회복 대비 델타가 따라오지 못함\",\n    \"롱 계정 비율 70.5%, account_long_crowding 1.000으로 롱 포지셔닝이 과밀하며 반대매매성 하락 압력 존재\",\n    \"가격이 7일 고점 $64,461과 저점 $58,030의 EQ 약 $61,245.50 아래 할인 구간에 있으나, 파생 포지셔닝은 아직 반등 확인보다 하방 청산 유도를 시사\",\n    \"하방 청산 밀집 구간 $57,100, $56,900, $55,900이 열려 있으며, 상방은 $60,600 회복 전까지 저항으로 작용\"\n  ],\n  \"reasoning\": \"현재 BTC는 $59,768.20으로 EMA20 $59,768.68 부근에 붙어 있지만 EMA120 $60,508.20과 EMA240 $61,273.49 아래에 머물러 구조적으로는 약세 수용 상태입니다. OI가 24시간 +4.493% 증가한 반면 가격은 -2.10%, CVD는 -3,085.1120으로 감소해 신규 포지션 유입이 가격을 지지하지 못하고 있으며, 이는 4~8시간 선행 관점에서 추가 하방 압력으로 해석됩니다. 롱 계정 비율이 70.5%이고 account_long_crowding이 1.000인 점은 롱 과밀 신호로, $57,100 및 $56,900 청산 유동성으로 가격이 끌릴 위험이 큽니다. 다만 가격이 7일 EQ $61,245.50 아래 할인 구간에 있어 $60,600을 강하게 회복하면 숏 커버링이 발생할 수 있으므로, 즉시 추격 숏보다는 반등 실패 확인이 유리합니다.\",\n  \"key_levels\": {\n    \"support\": [\n      58030,\n      57100,\n      56900,\n      55900\n    ],\n    \"resistance\": [\n      60508.2,\n      60600,\n      61245.5,\n      61600,\n      64100\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$60,600 15분 종가 회복 및 유지\",\n  \"risk_scenario\": \"$60,600 상방 청산 구간을 돌파하면 숏 커버링이 유입되며 EMA120 $60,508.20 회복 후 EQ $61,245.50, 다음 청산 저항 $61,600까지 빠르게 되돌림이 나올 수 있습니다. 이 경우 현재의 롱 과밀 신호보다 하방 추격 숏의 청산 압력이 우세해져 단기 약세 시나리오는 무효화됩니다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "wyckoff": {
      "agent_id": "wyckoff",
      "display_name": "Wyckoff Expert",
      "signal": "bearish",
      "confidence": 0.78,
      "structure_bias": "bearish",
      "setup_bias": "bearish",
      "setup_score": 0.65,
      "setup_signals": [
        "확정 분배 구조: BC $62,812.20 → AR $62,075.60 → UT $63,209.60 → LPSY $61,931.10 → SOW $61,578.40 → Phase E $58,030.00",
        "현재 활성 재분배 후보에서 UTAD 후보 $60,245.00 형성 후 현재가 $59,768.20으로 하락, 상단 돌파 수용 실패 가능성",
        "단기 상단 $59,713.00~$59,723.50 재진입 구간 위에 있으나 $60,245.00을 회복하지 못하면 공급 재출현 구간",
        "상위 구조상 SOW $61,578.40 및 LPSY $61,931.10 아래에 머물러 있어 반등은 아직 구조 전환이 아닌 약세장 내 되돌림으로 해석"
      ],
      "reasoning": "15분 BTC는 regime=DIS, regime_state=confirmed_dis, dis_score=100.0 및 regime_fitness=1.000으로 확정 분배 구조가 우세합니다. 주요 분배 체인은 BC $62,812.20, AR $62,075.60, ST $63,090.90, UT $63,209.60, LPSY $61,931.10, SOW $61,578.40 이후 Phase E 저점 $58,030.00까지 진행되어 구조적 편향은 명확히 bearish입니다. 다만 현재는 Phase E 이후 $58,030.00 저점에서 반등해 활성 재분배 후보가 형성 중이며, UTAD 후보 $60,245.00 이후 현재가 $59,768.20으로 밀려 상단 수용이 아직 확인되지 않았습니다. 즉 구조는 약세가 확정되어 있지만, 즉각 경로는 $59,713.00~$60,245.00 재분배 상단에서 거부가 지속되는지 확인하는 단계이며, $60,245.00 회복 전까지는 하방 재시험 가능성이 더 높습니다.",
      "key_levels": {
        "support": [
          59152.7,
          59114.4,
          58030.0
        ],
        "resistance": [
          59713.0,
          59723.5,
          60245.0,
          61578.4,
          61931.1,
          62075.6,
          62812.2
        ]
      },
      "time_horizon": "short to medium term",
      "invalidation_level": "$60,245.00 상향 재수용 및 유지 시 단기 bearish setup은 무효화됩니다. 구조적 약세 훼손은 $61,931.10~$62,075.60 회복 수용 시 판단합니다.",
      "risk_scenario": "$60,245.00 UTAD 후보 고점을 회복하고 그 위에서 수용되면 현재 하락 셋업은 실패하며, 가격은 $61,578.40 SOW 및 $61,931.10 LPSY 재시험으로 확장될 수 있습니다. 특히 $62,075.60 이전 AR 저점까지 회복하면 Phase E 이후 단순 약세 지속이 아니라 더 큰 재축적/재분배 판단을 다시 해야 합니다.",
      "data_quality": "high",
      "metrics": {
        "acc_score": 86.9,
        "dis_score": 100.0,
        "regime": "DIS",
        "regime_state": "confirmed_dis",
        "structure_bias": "bearish",
        "phase_context": "confirmed_dis / distribution / Phase E",
        "phases_detected": [
          "BC",
          "AR",
          "ST",
          "SOW_IN_PHASE_B",
          "UT",
          "LPSY",
          "SOW",
          "Phase E"
        ],
        "last_phase": "Phase E",
        "phase_candidates": [
          {
            "label": "BC",
            "side": "high",
            "idx": 76,
            "price": 62812.2,
            "color": "#ffd166"
          },
          {
            "label": "AR",
            "side": "low",
            "idx": 87,
            "price": 62075.6,
            "color": "#06d6a0"
          },
          {
            "label": "ST",
            "side": "high",
            "idx": 114,
            "price": 63090.9,
            "color": "#118ab2"
          },
          {
            "label": "SOW_IN_PHASE_B",
            "side": "low",
            "idx": 152,
            "price": 62272.1,
            "color": "#ef476f"
          },
          {
            "label": "UT",
            "side": "high",
            "idx": 155,
            "price": 63209.6,
            "color": "#f9844a"
          },
          {
            "label": "LPSY",
            "side": "high",
            "idx": 234,
            "price": 61931.1,
            "color": "#8338ec"
          },
          {
            "label": "SOW",
            "side": "low",
            "idx": 241,
            "price": 61578.4,
            "color": "#ef476f"
          },
          {
            "label": "Phase E",
            "side": "low",
            "idx": 259,
            "price": 58030.0,
            "color": "#7209b7"
          }
        ],
        "phase_structures": [
          {
            "structure_id": "15m_cycle_1",
            "sequence": 1,
            "timeframe": "15m",
            "regime": "distribution",
            "role": "prior_completed_structure",
            "is_active": false,
            "is_completed": true,
            "is_confirmed": true,
            "structure_bias": "bearish",
            "phase_context": "distribution",
            "start_idx": 76,
            "end_idx": 259,
            "phase_count": 8,
            "phases": [
              {
                "label": "BC",
                "side": "high",
                "idx": 76,
                "price": 62812.2,
                "color": "#ffd166",
                "dt": "2026-06-24 01:00:00+09:00"
              },
              {
                "label": "AR",
                "side": "low",
                "idx": 87,
                "price": 62075.6,
                "color": "#06d6a0",
                "dt": "2026-06-24 03:45:00+09:00"
              },
              {
                "label": "ST",
                "side": "high",
                "idx": 114,
                "price": 63090.9,
                "color": "#118ab2",
                "dt": "2026-06-24 10:30:00+09:00"
              },
              {
                "label": "SOW_IN_PHASE_B",
                "side": "low",
                "idx": 152,
                "price": 62272.1,
                "color": "#ef476f",
                "dt": "2026-06-24 20:00:00+09:00"
              },
              {
                "label": "UT",
                "side": "high",
                "idx": 155,
                "price": 63209.6,
                "color": "#f9844a",
                "dt": "2026-06-24 20:45:00+09:00"
              },
              {
                "label": "LPSY",
                "side": "high",
                "idx": 234,
                "price": 61931.1,
                "color": "#8338ec",
                "dt": "2026-06-25 16:30:00+09:00"
              },
              {
                "label": "SOW",
                "side": "low",
                "idx": 241,
                "price": 61578.4,
                "color": "#ef476f",
                "dt": "2026-06-25 18:15:00+09:00"
              },
              {
                "label": "Phase E",
                "side": "low",
                "idx": 259,
                "price": 58030.0,
                "color": "#7209b7",
                "dt": "2026-06-25 22:45:00+09:00"
              }
            ]
          },
          {
            "structure_id": "15m_cycle_2",
            "sequence": 2,
            "timeframe": "15m",
            "regime": "redistribution",
            "role": "current_structure_candidate",
            "is_active": true,
            "is_completed": false,
            "is_confirmed": true,
            "structure_bias": "bearish",
            "phase_context": "redistribution",
            "start_idx": 259,
            "end_idx": 291,
            "phase_count": 6,
            "phases": [
              {
                "label": "SC",
                "side": "low",
                "idx": 259,
                "price": 58030.0,
                "color": "#ffd166",
                "dt": "2026-06-25 22:45:00+09:00"
              },
              {
                "label": "AR",
                "side": "high",
                "idx": 260,
                "price": 59713.0,
                "color": "#06d6a0",
                "dt": "2026-06-25 23:00:00+09:00"
              },
              {
                "label": "ST",
                "side": "low",
                "idx": 272,
                "price": 59114.4,
                "color": "#118ab2",
                "dt": "2026-06-26 02:00:00+09:00"
              },
              {
                "label": "SOW_IN_PHASE_B",
                "side": "low",
                "idx": 281,
                "price": 59152.7,
                "color": "#ef476f",
                "dt": "2026-06-26 04:15:00+09:00"
              },
              {
                "label": "UT",
                "side": "high",
                "idx": 284,
                "price": 59723.5,
                "color": "#f9844a",
                "dt": "2026-06-26 05:00:00+09:00"
              },
              {
                "label": "UTAD",
                "side": "high",
                "idx": 291,
                "price": 60245.0,
                "color": "#f9844a",
                "dt": "2026-06-26 06:45:00+09:00"
              }
            ]
          }
        ],
        "active_structure_id": "15m_cycle_2",
        "primary_structure_id": "15m_cycle_1",
        "structure_count": 2,
        "regime_fitness": 1.0,
        "current_event": "Phase E",
        "major_phase": "E",
        "pos_in_range": 0.5,
        "main_range_low": 62075.6,
        "main_range_high": 62812.2
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.78,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.65,\n  \"setup_signals\": [\n    \"확정 분배 구조: BC $62,812.20 → AR $62,075.60 → UT $63,209.60 → LPSY $61,931.10 → SOW $61,578.40 → Phase E $58,030.00\",\n    \"현재 활성 재분배 후보에서 UTAD 후보 $60,245.00 형성 후 현재가 $59,768.20으로 하락, 상단 돌파 수용 실패 가능성\",\n    \"단기 상단 $59,713.00~$59,723.50 재진입 구간 위에 있으나 $60,245.00을 회복하지 못하면 공급 재출현 구간\",\n    \"상위 구조상 SOW $61,578.40 및 LPSY $61,931.10 아래에 머물러 있어 반등은 아직 구조 전환이 아닌 약세장 내 되돌림으로 해석\"\n  ],\n  \"reasoning\": \"15분 BTC는 regime=DIS, regime_state=confirmed_dis, dis_score=100.0 및 regime_fitness=1.000으로 확정 분배 구조가 우세합니다. 주요 분배 체인은 BC $62,812.20, AR $62,075.60, ST $63,090.90, UT $63,209.60, LPSY $61,931.10, SOW $61,578.40 이후 Phase E 저점 $58,030.00까지 진행되어 구조적 편향은 명확히 bearish입니다. 다만 현재는 Phase E 이후 $58,030.00 저점에서 반등해 활성 재분배 후보가 형성 중이며, UTAD 후보 $60,245.00 이후 현재가 $59,768.20으로 밀려 상단 수용이 아직 확인되지 않았습니다. 즉 구조는 약세가 확정되어 있지만, 즉각 경로는 $59,713.00~$60,245.00 재분배 상단에서 거부가 지속되는지 확인하는 단계이며, $60,245.00 회복 전까지는 하방 재시험 가능성이 더 높습니다.\",\n  \"key_levels\": {\n    \"support\": [\n      59152.7,\n      59114.4,\n      58030.0\n    ],\n    \"resistance\": [\n      59713.0,\n      59723.5,\n      60245.0,\n      61578.4,\n      61931.1,\n      62075.6,\n      62812.2\n    ]\n  },\n  \"time_horizon\": \"short to medium term\",\n  \"invalidation_level\": \"$60,245.00 상향 재수용 및 유지 시 단기 bearish setup은 무효화됩니다. 구조적 약세 훼손은 $61,931.10~$62,075.60 회복 수용 시 판단합니다.\",\n  \"risk_scenario\": \"$60,245.00 UTAD 후보 고점을 회복하고 그 위에서 수용되면 현재 하락 셋업은 실패하며, 가격은 $61,578.40 SOW 및 $61,931.10 LPSY 재시험으로 확장될 수 있습니다. 특히 $62,075.60 이전 AR 저점까지 회복하면 Phase E 이후 단순 약세 지속이 아니라 더 큰 재축적/재분배 판단을 다시 해야 합니다.\",\n  \"data_quality\": \"high\"\n}"
    },
    "harmonic": {
      "agent_id": "harmonic",
      "display_name": "Harmonic Specialist",
      "signal": "neutral",
      "confidence": 0.42,
      "structure_bias": "neutral",
      "setup_bias": "bullish",
      "setup_score": 0.35,
      "setup_signals": [
        "고품질 strict bullish Bat 형성 PRZ가 $59,951.97-$60,197.91에 근접, D 예상가 $60,074.94, PRZ confluence 3개: ABCD, BC_EXT, XAD",
        "현재가 $59,768.20은 저품질 bullish Butterfly 활성 PRZ $59,501.96-$60,048.52 내부에 위치하나, PRZ 폭 0.914%로 넓어 단독 실행 신뢰도는 낮음",
        "bullish Bat PRZ 반응 확인 시 TP ladder는 $60,481.37 → $60,732.47 → $61,138.90",
        "현재 가격은 EMA20 $59,768.68 부근에서 정체되어 있으나 EMA120 $60,508.20 및 EMA240 $61,273.49 아래에 있어 구조 전환 확인은 아직 없음"
      ],
      "reasoning": "하모닉 관점의 핵심 actionable 셋업은 strict/high bullish Bat이며 PRZ는 $59,951.97-$60,197.91, D 예상가는 $60,074.94이고 점수는 0.909입니다. 다만 이 패턴은 아직 forming 상태이고 confirmed_reaction=false이므로, 거버넌스상 현재는 약한 반전 후보 구간일 뿐 메인 경로를 뒤집을 수 없습니다. 현재가 $59,768.20은 저품질 bullish Butterfly PRZ $59,501.96-$60,048.52 안에 있지만 quality가 low이고 PRZ 폭이 0.914%로 넓어 방향성 투표에는 제한적입니다. 반대로 과거 completed bearish Bat/Gartley는 $60,063-$60,245 부근에서 반응을 보였고 현재가가 bearish TP1 $59,700.64/$59,586.22 부근까지 내려와 있어, 단기 하락 반응은 이미 상당 부분 진행된 상태입니다. 따라서 구조_bias는 확정 BOS/CHoCH 정보 부재로 neutral, setup_bias는 $59.5k-$60.2k PRZ 방어 여부를 보는 약한 bullish 반응 셋업으로 평가합니다.",
      "key_levels": {
        "support": [
          59501.96,
          59114.4,
          58886.6,
          58835.2,
          58714.42
        ],
        "resistance": [
          59951.97,
          60048.52,
          60197.91,
          60481.37,
          60732.47,
          61138.9
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "58714.42",
      "risk_scenario": "$59,501.96 하단을 이탈하고 특히 $58,714.42 bullish Gartley PRZ 하단까지 방어하지 못하면, 현재의 bullish 반응 셋업은 실패로 보고 $58,835.20 및 7일 저점 $58,030.00 재시험 리스크가 커집니다. 반대로 $60,197.91 상단을 회복하고 15분 또는 1시간 MSS/CHoCH가 확인되면 bullish Bat TP ladder인 $60,481.37, $60,732.47, $61,138.90이 순차 목표가 됩니다.",
      "data_quality": "medium",
      "metrics": {
        "patterns_found": 89,
        "completed_patterns_found": 24,
        "forming_d_prz_found": 65,
        "swing_orders_scanned": [
          3,
          5,
          8
        ],
        "swing_search_window": 34,
        "multiscale_swings_scanned": 58,
        "swing_highs_scanned": 29,
        "swing_lows_scanned": 29,
        "timeframe": "15m",
        "prz_active_threshold_pct": 0.3,
        "prz_nearby_threshold_pct": 0.6,
        "prz_watch_threshold_pct": 1.2,
        "prz_max_width_pct": 0.6,
        "quality_counts": {
          "high": 9,
          "medium": 29,
          "low": 51
        },
        "prz_status_counts": {
          "active": 21,
          "nearby": 2,
          "watch": 16,
          "far": 50,
          "forming": 41
        },
        "high_confluence_prz_count": 33,
        "strict_patterns_found": 37,
        "candidate_patterns_found": 52,
        "active_patterns_at_prz": 21,
        "nearby_patterns": 2,
        "all_patterns": [
          "bat",
          "bat",
          "bat",
          "crab",
          "shark",
          "gartley",
          "butterfly",
          "bat",
          "gartley",
          "crab",
          "shark",
          "crab",
          "bat",
          "gartley",
          "gartley",
          "shark",
          "crab",
          "shark",
          "bat",
          "bat",
          "gartley",
          "gartley",
          "crab",
          "butterfly",
          "bat",
          "gartley",
          "crab",
          "butterfly",
          "shark",
          "shark",
          "crab",
          "bat",
          "crab",
          "crab",
          "crab",
          "crab",
          "crab",
          "butterfly",
          "butterfly",
          "butterfly",
          "bat",
          "crab",
          "gartley",
          "butterfly",
          "crab",
          "shark",
          "gartley",
          "gartley",
          "butterfly",
          "butterfly",
          "gartley",
          "crab",
          "butterfly",
          "gartley",
          "butterfly",
          "gartley",
          "bat",
          "gartley",
          "crab",
          "shark",
          "shark",
          "butterfly",
          "crab",
          "gartley",
          "shark",
          "butterfly",
          "crab",
          "crab",
          "shark",
          "shark",
          "gartley",
          "gartley",
          "shark",
          "bat",
          "crab",
          "crab",
          "shark",
          "shark",
          "shark",
          "bat",
          "crab",
          "butterfly",
          "shark",
          "gartley",
          "shark",
          "crab",
          "bat",
          "butterfly",
          "butterfly"
        ],
        "all_signals": [
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish"
        ],
        "best_pattern": "bat",
        "best_pattern_quality": "strict",
        "best_quality": "high",
        "best_pattern_score": 0.92,
        "best_completion_status": "forming",
        "nearest_pattern": "butterfly",
        "nearest_prz": 59775.24,
        "price_to_prz": 0.01,
        "prz_range": [
          59501.96,
          60048.52
        ],
        "council_relevant_prz_count": 1,
        "directional_influence_prz_count": 1,
        "confirmed_reaction_prz_count": 0,
        "validated_harmonic_tp_count": 0,
        "pattern_candidates": [
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.92,
            "ratio_score": 1.0,
            "prz_score": 0.989,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 60318.91,
            "prz_range": [
              60129.69,
              60508.13
            ],
            "prz_width_pct": 0.627,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.92,
            "price_to_prz_pct_raw": 0.9214,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 60318.91,
              "a_price": 61256.0,
              "tp1_ad_382": 60676.88,
              "tp2_ad_618": 60898.03,
              "tp3_a_or_structure_liquidity": 61256.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4743,
              "ABC": 0.4992
            },
            "x_price": 62500.0,
            "x_idx": 125,
            "x_order": 3,
            "a_price": 61256.0,
            "a_idx": 196,
            "a_order": 8,
            "b_price": 60666.0,
            "b_idx": 207,
            "b_order": 5,
            "c_price": 60960.5,
            "c_idx": 211,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.909,
            "ratio_score": 0.897,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 60074.94,
            "prz_range": [
              59951.97,
              60197.91
            ],
            "prz_width_pct": 0.409,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.51,
            "price_to_prz_pct_raw": 0.5132,
            "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": 60074.94,
              "a_price": 61138.9,
              "tp1_ad_382": 60481.37,
              "tp2_ad_618": 60732.47,
              "tp3_a_or_structure_liquidity": 61138.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4332,
              "ABC": 0.3689
            },
            "x_price": 62272.1,
            "x_idx": 152,
            "x_order": 5,
            "a_price": 61138.9,
            "a_idx": 204,
            "a_order": 5,
            "b_price": 60648.0,
            "b_idx": 217,
            "b_order": 8,
            "c_price": 60466.9,
            "c_idx": 262,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.871,
            "ratio_score": 0.751,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 60007.74,
            "prz_range": [
              59831.9,
              60183.58
            ],
            "prz_width_pct": 0.586,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.4,
            "price_to_prz_pct_raw": 0.4008,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 60007.74,
              "a_price": 58835.2,
              "tp1_ad_382": 59559.83,
              "tp2_ad_618": 59283.11,
              "tp3_a_or_structure_liquidity": 58835.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.576,
              "ABC": 0.6622
            },
            "x_price": 60466.9,
            "x_idx": 262,
            "x_order": 3,
            "a_price": 58835.2,
            "a_idx": 265,
            "a_order": 3,
            "b_price": 59775.0,
            "b_idx": 276,
            "b_order": 5,
            "c_price": 59152.7,
            "c_idx": 281,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.843,
            "ratio_score": 0.877,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 58886.6,
            "prz_range": [
              58714.42,
              59058.77
            ],
            "prz_width_pct": 0.585,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.48,
            "price_to_prz_pct_raw": -1.475,
            "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": 58886.6,
              "a_price": 60035.7,
              "tp1_ad_382": 59325.55,
              "tp2_ad_618": 59596.74,
              "tp3_a_or_structure_liquidity": 60035.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5972,
              "ABC": 0.6611
            },
            "x_price": 61578.4,
            "x_idx": 241,
            "x_order": 3,
            "a_price": 60035.7,
            "a_idx": 268,
            "a_order": 5,
            "b_price": 59114.4,
            "b_idx": 272,
            "b_order": 5,
            "c_price": 59723.5,
            "c_idx": 284,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.823,
            "ratio_score": 0.778,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 60499.11,
            "prz_range": [
              60346.3,
              60651.91
            ],
            "prz_width_pct": 0.505,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.22,
            "price_to_prz_pct_raw": 1.2229,
            "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": 60499.11,
              "a_price": 61256.0,
              "tp1_ad_382": 60788.24,
              "tp2_ad_618": 60966.87,
              "tp3_a_or_structure_liquidity": 61256.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5807,
              "ABC": 0.4992
            },
            "x_price": 62272.1,
            "x_idx": 152,
            "x_order": 5,
            "a_price": 61256.0,
            "a_idx": 196,
            "a_order": 8,
            "b_price": 60666.0,
            "b_idx": 207,
            "b_order": 5,
            "c_price": 60960.5,
            "c_idx": 211,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.852,
            "ratio_score": 0.828,
            "prz_score": 0.878,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 59775.24,
            "prz_range": [
              59501.96,
              60048.52
            ],
            "prz_width_pct": 0.914,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.01,
            "price_to_prz_pct_raw": 0.0118,
            "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": 59775.24,
              "a_price": 61931.1,
              "tp1_ad_382": 60598.78,
              "tp2_ad_618": 61107.56,
              "tp3_a_or_structure_liquidity": 61931.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.749,
              "ABC": 0.659
            },
            "x_price": 60752.8,
            "x_idx": 198,
            "x_order": 3,
            "a_price": 61931.1,
            "a_idx": 234,
            "a_order": 8,
            "b_price": 61048.5,
            "b_idx": 253,
            "b_order": 3,
            "c_price": 60466.9,
            "c_idx": 262,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "low",
            "pattern_score": 0.849,
            "ratio_score": 0.81,
            "prz_score": 0.879,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 60063.01,
            "prz_range": [
              59789.27,
              60336.74
            ],
            "prz_width_pct": 0.911,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.49,
            "price_to_prz_pct_raw": 0.4933,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "bat",
              "d_price": 60063.01,
              "a_price": 59114.4,
              "tp1_ad_382": 59700.64,
              "tp2_ad_618": 59476.77,
              "tp3_a_or_structure_liquidity": 59114.4,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4884,
              "ABC": 0.942
            },
            "x_price": 60466.9,
            "x_idx": 262,
            "x_order": 3,
            "a_price": 59114.4,
            "a_idx": 272,
            "a_order": 5,
            "b_price": 59775.0,
            "b_idx": 276,
            "b_order": 5,
            "c_price": 59152.7,
            "c_idx": 281,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "low",
            "pattern_score": 0.827,
            "ratio_score": 0.815,
            "prz_score": 0.879,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 60245.0,
            "prz_range": [
              59789.27,
              60336.74
            ],
            "prz_width_pct": 0.911,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.49,
            "price_to_prz_pct_raw": 0.4933,
            "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",
                "post_D_close_progress"
              ],
              "reaction_score": 0.9,
              "reaction_detail": {
                "reaction_score": 0.9,
                "reaction_move_ratio_ad": 0.477,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 8,
                "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": "bearish",
              "source": "bat",
              "d_price": 60063.01,
              "a_price": 59114.4,
              "tp1_ad_382": 59700.64,
              "tp2_ad_618": 59476.77,
              "tp3_a_or_structure_liquidity": 59114.4,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4884,
              "ABC": 0.942,
              "BCD": 1.7553,
              "XAD": 0.8359
            },
            "x_price": 60466.9,
            "x_idx": 262,
            "x_order": 3,
            "a_price": 59114.4,
            "a_idx": 272,
            "a_order": 5,
            "b_price": 59775.0,
            "b_idx": 276,
            "b_order": 5,
            "c_price": 59152.7,
            "c_idx": 281,
            "c_order": 8,
            "d_idx": 291
          }
        ],
        "council_relevant_prz": [
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.909,
            "ratio_score": 0.897,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 60074.94,
            "prz_range": [
              59951.97,
              60197.91
            ],
            "prz_width_pct": 0.409,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.51,
            "price_to_prz_pct_raw": 0.5132,
            "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": 60074.94,
              "a_price": 61138.9,
              "tp1_ad_382": 60481.37,
              "tp2_ad_618": 60732.47,
              "tp3_a_or_structure_liquidity": 61138.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4332,
              "ABC": 0.3689
            },
            "x_price": 62272.1,
            "x_idx": 152,
            "x_order": 5,
            "a_price": 61138.9,
            "a_idx": 204,
            "a_order": 5,
            "b_price": 60648.0,
            "b_idx": 217,
            "b_order": 8,
            "c_price": 60466.9,
            "c_idx": 262,
            "c_order": 3,
            "d_idx": null
          }
        ],
        "report_detail_candidates": [
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.92,
            "ratio_score": 1.0,
            "prz_score": 0.989,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 60318.91,
            "prz_range": [
              60129.69,
              60508.13
            ],
            "prz_width_pct": 0.627,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.92,
            "price_to_prz_pct_raw": 0.9214,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 60318.91,
              "a_price": 61256.0,
              "tp1_ad_382": 60676.88,
              "tp2_ad_618": 60898.03,
              "tp3_a_or_structure_liquidity": 61256.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4743,
              "ABC": 0.4992
            },
            "x_price": 62500.0,
            "x_idx": 125,
            "x_order": 3,
            "a_price": 61256.0,
            "a_idx": 196,
            "a_order": 8,
            "b_price": 60666.0,
            "b_idx": 207,
            "b_order": 5,
            "c_price": 60960.5,
            "c_idx": 211,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.909,
            "ratio_score": 0.897,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 60074.94,
            "prz_range": [
              59951.97,
              60197.91
            ],
            "prz_width_pct": 0.409,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.51,
            "price_to_prz_pct_raw": 0.5132,
            "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": 60074.94,
              "a_price": 61138.9,
              "tp1_ad_382": 60481.37,
              "tp2_ad_618": 60732.47,
              "tp3_a_or_structure_liquidity": 61138.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4332,
              "ABC": 0.3689
            },
            "x_price": 62272.1,
            "x_idx": 152,
            "x_order": 5,
            "a_price": 61138.9,
            "a_idx": 204,
            "a_order": 5,
            "b_price": 60648.0,
            "b_idx": 217,
            "b_order": 8,
            "c_price": 60466.9,
            "c_idx": 262,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.871,
            "ratio_score": 0.751,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 60007.74,
            "prz_range": [
              59831.9,
              60183.58
            ],
            "prz_width_pct": 0.586,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.4,
            "price_to_prz_pct_raw": 0.4008,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 60007.74,
              "a_price": 58835.2,
              "tp1_ad_382": 59559.83,
              "tp2_ad_618": 59283.11,
              "tp3_a_or_structure_liquidity": 58835.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.576,
              "ABC": 0.6622
            },
            "x_price": 60466.9,
            "x_idx": 262,
            "x_order": 3,
            "a_price": 58835.2,
            "a_idx": 265,
            "a_order": 3,
            "b_price": 59775.0,
            "b_idx": 276,
            "b_order": 5,
            "c_price": 59152.7,
            "c_idx": 281,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.843,
            "ratio_score": 0.877,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 58886.6,
            "prz_range": [
              58714.42,
              59058.77
            ],
            "prz_width_pct": 0.585,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.48,
            "price_to_prz_pct_raw": -1.475,
            "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": 58886.6,
              "a_price": 60035.7,
              "tp1_ad_382": 59325.55,
              "tp2_ad_618": 59596.74,
              "tp3_a_or_structure_liquidity": 60035.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5972,
              "ABC": 0.6611
            },
            "x_price": 61578.4,
            "x_idx": 241,
            "x_order": 3,
            "a_price": 60035.7,
            "a_idx": 268,
            "a_order": 5,
            "b_price": 59114.4,
            "b_idx": 272,
            "b_order": 5,
            "c_price": 59723.5,
            "c_idx": 284,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.823,
            "ratio_score": 0.778,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 60499.11,
            "prz_range": [
              60346.3,
              60651.91
            ],
            "prz_width_pct": 0.505,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.22,
            "price_to_prz_pct_raw": 1.2229,
            "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": 60499.11,
              "a_price": 61256.0,
              "tp1_ad_382": 60788.24,
              "tp2_ad_618": 60966.87,
              "tp3_a_or_structure_liquidity": 61256.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5807,
              "ABC": 0.4992
            },
            "x_price": 62272.1,
            "x_idx": 152,
            "x_order": 5,
            "a_price": 61256.0,
            "a_idx": 196,
            "a_order": 8,
            "b_price": 60666.0,
            "b_idx": 207,
            "b_order": 5,
            "c_price": 60960.5,
            "c_idx": 211,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.852,
            "ratio_score": 0.828,
            "prz_score": 0.878,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 59775.24,
            "prz_range": [
              59501.96,
              60048.52
            ],
            "prz_width_pct": 0.914,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.01,
            "price_to_prz_pct_raw": 0.0118,
            "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": 59775.24,
              "a_price": 61931.1,
              "tp1_ad_382": 60598.78,
              "tp2_ad_618": 61107.56,
              "tp3_a_or_structure_liquidity": 61931.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.749,
              "ABC": 0.659
            },
            "x_price": 60752.8,
            "x_idx": 198,
            "x_order": 3,
            "a_price": 61931.1,
            "a_idx": 234,
            "a_order": 8,
            "b_price": 61048.5,
            "b_idx": 253,
            "b_order": 3,
            "c_price": 60466.9,
            "c_idx": 262,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "low",
            "pattern_score": 0.849,
            "ratio_score": 0.81,
            "prz_score": 0.879,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 60063.01,
            "prz_range": [
              59789.27,
              60336.74
            ],
            "prz_width_pct": 0.911,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.49,
            "price_to_prz_pct_raw": 0.4933,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "bat",
              "d_price": 60063.01,
              "a_price": 59114.4,
              "tp1_ad_382": 59700.64,
              "tp2_ad_618": 59476.77,
              "tp3_a_or_structure_liquidity": 59114.4,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4884,
              "ABC": 0.942
            },
            "x_price": 60466.9,
            "x_idx": 262,
            "x_order": 3,
            "a_price": 59114.4,
            "a_idx": 272,
            "a_order": 5,
            "b_price": 59775.0,
            "b_idx": 276,
            "b_order": 5,
            "c_price": 59152.7,
            "c_idx": 281,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "low",
            "pattern_score": 0.827,
            "ratio_score": 0.815,
            "prz_score": 0.879,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 60245.0,
            "prz_range": [
              59789.27,
              60336.74
            ],
            "prz_width_pct": 0.911,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.49,
            "price_to_prz_pct_raw": 0.4933,
            "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",
                "post_D_close_progress"
              ],
              "reaction_score": 0.9,
              "reaction_detail": {
                "reaction_score": 0.9,
                "reaction_move_ratio_ad": 0.477,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 8,
                "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": "bearish",
              "source": "bat",
              "d_price": 60063.01,
              "a_price": 59114.4,
              "tp1_ad_382": 59700.64,
              "tp2_ad_618": 59476.77,
              "tp3_a_or_structure_liquidity": 59114.4,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4884,
              "ABC": 0.942,
              "BCD": 1.7553,
              "XAD": 0.8359
            },
            "x_price": 60466.9,
            "x_idx": 262,
            "x_order": 3,
            "a_price": 59114.4,
            "a_idx": 272,
            "a_order": 5,
            "b_price": 59775.0,
            "b_idx": 276,
            "b_order": 5,
            "c_price": 59152.7,
            "c_idx": 281,
            "c_order": 8,
            "d_idx": 291
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "low",
            "pattern_score": 0.74,
            "ratio_score": 0.632,
            "prz_score": 0.878,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 59114.4,
            "prz_range": [
              59501.96,
              60048.52
            ],
            "prz_width_pct": 0.914,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.01,
            "price_to_prz_pct_raw": 0.0118,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "initial_PRZ_reaction",
                "post_D_close_progress"
              ],
              "reaction_score": 0.35,
              "reaction_detail": {
                "reaction_score": 0.35,
                "reaction_move_ratio_ad": 0.235,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "initial_PRZ_reaction",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 59775.24,
              "a_price": 61931.1,
              "tp1_ad_382": 60598.78,
              "tp2_ad_618": 61107.56,
              "tp3_a_or_structure_liquidity": 61931.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.749,
              "ABC": 0.659,
              "BCD": 2.3255,
              "XAD": 2.3905
            },
            "x_price": 60752.8,
            "x_idx": 198,
            "x_order": 3,
            "a_price": 61931.1,
            "a_idx": 234,
            "a_order": 8,
            "b_price": 61048.5,
            "b_idx": 253,
            "b_order": 3,
            "c_price": 60466.9,
            "c_idx": 262,
            "c_order": 3,
            "d_idx": 272
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.715,
            "ratio_score": 0.532,
            "prz_score": 0.95,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 60245.0,
            "prz_range": [
              59831.88,
              60269.02
            ],
            "prz_width_pct": 0.728,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.47,
            "price_to_prz_pct_raw": 0.4722,
            "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",
                "post_D_close_progress"
              ],
              "reaction_score": 0.9,
              "reaction_detail": {
                "reaction_score": 0.9,
                "reaction_move_ratio_ad": 0.383,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 8,
                "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": "bearish",
              "source": "gartley",
              "d_price": 60050.45,
              "a_price": 58835.2,
              "tp1_ad_382": 59586.22,
              "tp2_ad_618": 59299.43,
              "tp3_a_or_structure_liquidity": 58835.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.576,
              "ABC": 0.6622,
              "BCD": 1.7553,
              "XAD": 0.864
            },
            "x_price": 60466.9,
            "x_idx": 262,
            "x_order": 3,
            "a_price": 58835.2,
            "a_idx": 265,
            "a_order": 3,
            "b_price": 59775.0,
            "b_idx": 276,
            "b_order": 5,
            "c_price": 59152.7,
            "c_idx": 281,
            "c_order": 8,
            "d_idx": 291
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.694,
            "ratio_score": 0.568,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 60648.0,
            "prz_range": [
              60331.53,
              60672.2
            ],
            "prz_width_pct": 0.563,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.23,
            "price_to_prz_pct_raw": 1.2275,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 1.895,
                "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": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 60501.87,
              "a_price": 61256.0,
              "tp1_ad_382": 60789.95,
              "tp2_ad_618": 60967.92,
              "tp3_a_or_structure_liquidity": 61256.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4952,
              "ABC": 0.4128,
              "BCD": 1.5046,
              "XAD": 0.5984
            },
            "x_price": 62272.1,
            "x_idx": 152,
            "x_order": 5,
            "a_price": 61256.0,
            "a_idx": 196,
            "a_order": 8,
            "b_price": 60752.8,
            "b_idx": 198,
            "b_order": 3,
            "c_price": 60960.5,
            "c_idx": 211,
            "c_order": 3,
            "d_idx": 217
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.658,
            "ratio_score": 0.492,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 60648.0,
            "prz_range": [
              60346.3,
              60672.2
            ],
            "prz_width_pct": 0.539,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.24,
            "price_to_prz_pct_raw": 1.2399,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 1.895,
                "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": "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": 60509.25,
              "a_price": 61256.0,
              "tp1_ad_382": 60794.51,
              "tp2_ad_618": 60970.74,
              "tp3_a_or_structure_liquidity": 61256.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5807,
              "ABC": 0.4992,
              "BCD": 1.0611,
              "XAD": 0.5984
            },
            "x_price": 62272.1,
            "x_idx": 152,
            "x_order": 5,
            "a_price": 61256.0,
            "a_idx": 196,
            "a_order": 8,
            "b_price": 60666.0,
            "b_idx": 207,
            "b_order": 5,
            "c_price": 60960.5,
            "c_idx": 211,
            "c_order": 3,
            "d_idx": 217
          }
        ],
        "actionable_patterns_list": [
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.909,
            "prz_proximity": "nearby",
            "prz_range": [
              59951.97,
              60197.91
            ],
            "prz_reversal_direction": "up",
            "price_to_prz_pct": 0.51,
            "high_confluence_prz": true,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 60074.94,
              "a_price": 61138.9,
              "tp1_ad_382": 60481.37,
              "tp2_ad_618": 60732.47,
              "tp3_a_or_structure_liquidity": 61138.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "BAT FORMING HIGH PRZ $59,951.97-$60,197.91: expected reversal UP if price reacts in zone"
          }
        ],
        "best_council_prz": {
          "pattern": "bat",
          "signal": "bullish",
          "completion_status": "forming",
          "pattern_quality": "strict",
          "quality": "high",
          "pattern_score": 0.909,
          "ratio_score": 0.897,
          "prz_score": 1.0,
          "prz_proximity": "nearby",
          "action_status": "nearby",
          "high_confluence_prz": true,
          "d_price": 60074.94,
          "prz_range": [
            59951.97,
            60197.91
          ],
          "prz_width_pct": 0.409,
          "prz_confluence_count": 3,
          "prz_fib_families": [
            "ABCD",
            "BC_EXT",
            "XAD"
          ],
          "price_to_prz_pct": 0.51,
          "price_to_prz_pct_raw": 0.5132,
          "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": 60074.94,
            "a_price": 61138.9,
            "tp1_ad_382": 60481.37,
            "tp2_ad_618": 60732.47,
            "tp3_a_or_structure_liquidity": 61138.9,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          "ratios": {
            "XAB": 0.4332,
            "ABC": 0.3689
          },
          "x_price": 62272.1,
          "x_idx": 152,
          "x_order": 5,
          "a_price": 61138.9,
          "a_idx": 204,
          "a_order": 5,
          "b_price": 60648.0,
          "b_idx": 217,
          "b_order": 8,
          "c_price": 60466.9,
          "c_idx": 262,
          "c_order": 3,
          "d_idx": null
        },
        "best_tp_ladder": {
          "direction": "bullish",
          "source": "bat",
          "d_price": 60074.94,
          "a_price": 61138.9,
          "tp1_ad_382": 60481.37,
          "tp2_ad_618": 60732.47,
          "tp3_a_or_structure_liquidity": 61138.9,
          "note": "Use as strong TP ladder context; not standalone path authority."
        },
        "tp_ladder": [
          {
            "direction": "bullish",
            "source": "bat",
            "d_price": 60074.94,
            "a_price": 61138.9,
            "tp1_ad_382": 60481.37,
            "tp2_ad_618": 60732.47,
            "tp3_a_or_structure_liquidity": 61138.9,
            "note": "Use as strong TP ladder context; not standalone path authority."
          }
        ],
        "validated_tp_ladder": [],
        "harmonic_governance": {
          "role": "PRZ reaction + TP ladder confluence, not standalone path engine",
          "pre_confirmation_weight_range": [
            0.25,
            0.35
          ],
          "post_confirmation_vote_weight_range": [
            0.5,
            0.6
          ],
          "standalone_path_override_allowed": false,
          "opposes_core_path_policy": "branch/reversal-risk/reaction-zone unless lower-TF structure and derivatives also confirm",
          "aligns_with_core_path_policy": "modest confidence lift plus strong TP ladder influence"
        },
        "execution_readiness": "watch",
        "directional_scores": {
          "bullish": 0.135,
          "bearish": 0
        },
        "directional_score_total": 0.135,
        "directional_dominance": 1.0
      },
      "raw_llm_response": "{\n  \"signal\": \"neutral\",\n  \"confidence\": 0.42,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.35,\n  \"setup_signals\": [\n    \"고품질 strict bullish Bat 형성 PRZ가 $59,951.97-$60,197.91에 근접, D 예상가 $60,074.94, PRZ confluence 3개: ABCD, BC_EXT, XAD\",\n    \"현재가 $59,768.20은 저품질 bullish Butterfly 활성 PRZ $59,501.96-$60,048.52 내부에 위치하나, PRZ 폭 0.914%로 넓어 단독 실행 신뢰도는 낮음\",\n    \"bullish Bat PRZ 반응 확인 시 TP ladder는 $60,481.37 → $60,732.47 → $61,138.90\",\n    \"현재 가격은 EMA20 $59,768.68 부근에서 정체되어 있으나 EMA120 $60,508.20 및 EMA240 $61,273.49 아래에 있어 구조 전환 확인은 아직 없음\"\n  ],\n  \"reasoning\": \"하모닉 관점의 핵심 actionable 셋업은 strict/high bullish Bat이며 PRZ는 $59,951.97-$60,197.91, D 예상가는 $60,074.94이고 점수는 0.909입니다. 다만 이 패턴은 아직 forming 상태이고 confirmed_reaction=false이므로, 거버넌스상 현재는 약한 반전 후보 구간일 뿐 메인 경로를 뒤집을 수 없습니다. 현재가 $59,768.20은 저품질 bullish Butterfly PRZ $59,501.96-$60,048.52 안에 있지만 quality가 low이고 PRZ 폭이 0.914%로 넓어 방향성 투표에는 제한적입니다. 반대로 과거 completed bearish Bat/Gartley는 $60,063-$60,245 부근에서 반응을 보였고 현재가가 bearish TP1 $59,700.64/$59,586.22 부근까지 내려와 있어, 단기 하락 반응은 이미 상당 부분 진행된 상태입니다. 따라서 구조_bias는 확정 BOS/CHoCH 정보 부재로 neutral, setup_bias는 $59.5k-$60.2k PRZ 방어 여부를 보는 약한 bullish 반응 셋업으로 평가합니다.\",\n  \"key_levels\": {\n    \"support\": [\n      59501.96,\n      59114.4,\n      58886.6,\n      58835.2,\n      58714.42\n    ],\n    \"resistance\": [\n      59951.97,\n      60048.52,\n      60197.91,\n      60481.37,\n      60732.47,\n      61138.9\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"58714.42\",\n  \"risk_scenario\": \"$59,501.96 하단을 이탈하고 특히 $58,714.42 bullish Gartley PRZ 하단까지 방어하지 못하면, 현재의 bullish 반응 셋업은 실패로 보고 $58,835.20 및 7일 저점 $58,030.00 재시험 리스크가 커집니다. 반대로 $60,197.91 상단을 회복하고 15분 또는 1시간 MSS/CHoCH가 확인되면 bullish Bat TP ladder인 $60,481.37, $60,732.47, $61,138.90이 순차 목표가 됩니다.\",\n  \"data_quality\": \"medium\"\n}"
    }
  },
  "chairman_synthesis": {
    "overall_signal": "bearish",
    "overall_confidence": 0.72,
    "execution_setup": {
      "setup_bias": "bearish",
      "setup_strength": 0.69,
      "active_setups": [
        "가격 $59,768.20이 EMA120 $60,508.20 및 EMA240 $61,273.49 아래에 있어 중기 약세 구조가 유지됨",
        "피보나치 ret_0.382 $59,827.74 및 상단 클러스터 $59,837.94 바로 아래에서 저항 테스트 중",
        "Wyckoff 재분배 후보에서 UTAD 후보 $60,245.00 형성 후 가격이 $59,768.20으로 밀려 상단 수용 실패 조건",
        "고거래량 bearish engulfing이 품질 0.801로 확인되어 단기 공급 우위 신호",
        "OI 24시간 +4.493%, 가격 24시간 -2.10%, CVD -3,085.1120 조합으로 신규 포지션 유입이 가격 회복을 지지하지 못함",
        "롱 계정 비율 70.5%로 롱 과밀 상태이며 하방 청산 유동성 $57,100 및 $56,900이 구조적 리스크로 존재"
      ],
      "setup_vs_structure": "구조적 편향과 실행 셋업은 대체로 모두 bearish로 정렬되어 있다. 다만 ICT의 discount long 관찰 구간과 하모닉 bullish PRZ가 $59,501.96-$60,197.91에 겹쳐 있어, 약세 구조 내부의 반등/스윕 리스크는 별도로 관리해야 한다."
    },
    "signal_breakdown": {
      "bullish_count": 0,
      "bearish_count": 4,
      "neutral_count": 2
    },
    "key_levels": {
      "support": [
        59705.4,
        59698.85,
        59569.96,
        59494.58,
        59152.7,
        59114.4,
        58030.0,
        57100.0,
        56900.0
      ],
      "resistance": [
        59827.74,
        59886.45,
        59951.97,
        60180.8,
        60245.0,
        60508.2,
        60648.0,
        61245.5,
        61256.0,
        61931.1
      ]
    },
    "confluences": [
      "Wyckoff와 ICT 모두 $58,030.00을 핵심 하단 구조 저점으로 제시하며, 이는 previous day low이자 Phase E 저점으로 중대한 구조 지지다.",
      "Candlestick과 Derivatives 모두 EMA120 $60,508.20, EMA240 $61,273.49 아래 거래를 중기 약세 구조 수용으로 해석한다.",
      "Wyckoff의 UTAD 후보 $60,245.00과 Fibonacci의 스윙 고점 저항 $60,245.00이 정확히 일치해 단기 상단 수용 여부의 핵심 구조 레벨이다.",
      "ICT의 bearish CHoCH $60,648.00, Derivatives의 $60,600 상단 청산/회복 레벨, Harmonic의 $60,481.37-$60,732.47 TP/PRZ 관련 레벨이 $60.5k-$60.7k 저항 밴드로 겹친다.",
      "Fibonacci의 ret_0.382 $59,827.74, ICT EQ $59,886.45, Harmonic PRZ 하단 $59,951.97이 $59.83k-$59.95k 단기 공급/균형 회복 구간으로 밀집한다.",
      "Candlestick의 근접 EMA20 $59,768.68과 현재가 $59,768.20이 거의 동일하며, Harmonic의 nearest PRZ $59,775.24도 같은 가격대에 있어 현재 위치가 단기 반응 구간임을 확인한다.",
      "Wyckoff, Candlestick, Derivatives는 모두 구조적 약세를 지지하며, Wyckoff는 확정 분배 및 활성 재분배 후보, Candlestick은 고거래량 bearish engulfing, Derivatives는 OI 증가와 CVD 약화를 근거로 제시한다."
    ],
    "conflicts": [
      "ICT는 구조적으로 bearish라고 보지만 실행 셋업은 discount 구간 기반 bullish로 평가한다. 이는 구조 하락장 안에서 하단 유동성 회수 후 반등을 노리는 전술적 관점이지, 구조 반전 신호는 아니다.",
      "Harmonic은 $59,951.97-$60,197.91의 strict bullish Bat PRZ를 제시하지만 아직 forming 상태이고 confirmed reaction이 없어 구조 판단을 뒤집을 권한은 낮다.",
      "Fibonacci는 구조 bias를 neutral로 두면서도 setup은 bearish로 본다. 즉 명확한 BOS/CHoCH 구조 확정은 없지만, $59,827.74-$59,987.22 저항 테스트 실패 조건은 단기 약세 세팅으로 해석된다.",
      "현재가가 $59,768.20으로 ICT EQ $59,886.45 아래 discount에 있어 추격 매도에는 불리한 위치라는 점이, Wyckoff/Derivatives/Candlestick의 구조적 약세와 전술적으로 충돌한다."
    ],
    "executive_summary": "BTC/USDT 15분 구조는 현재 확정 분배 이후 Phase E 저점 $58,030.00을 만들고, 그 반등 위에서 재분배 후보가 진행되는 bearish regime으로 진단된다. 현재 위치 $59,768.20은 $59,827.74-$59,951.97 단기 저항/PRZ와 $59,698.85-$59,705.40 단기 지지 사이에 놓인 균형권이지만, 상위 구조는 EMA120 $60,508.20 및 EMA240 $61,273.49 아래에서 약세 수용 상태다. Wyckoff의 UTAD 후보 $60,245.00, ICT bearish CHoCH $60,648.00, Derivatives의 $60,600 회복 기준이 모두 $60.2k-$60.7k를 구조 회복 검증 구간으로 만든다. 반면 $58,030.00은 prior Phase E 저점이자 previous day low로, 이 레벨 보존 여부가 현 재분배 후보의 하단 구조 안정성을 결정한다. 구조적 bearish 판단은 $61,256.00 상향 수용 시 훼손되며, $61,578.40-$61,931.10 회복 시 분배/재분배 해석 자체가 재평가되어야 한다.",
    "raw_llm_response": "{\n  \"overall_signal\": \"bearish\",\n  \"overall_confidence\": 0.72,\n  \"execution_setup\": {\n    \"setup_bias\": \"bearish\",\n    \"setup_strength\": 0.69,\n    \"active_setups\": [\n      \"가격 $59,768.20이 EMA120 $60,508.20 및 EMA240 $61,273.49 아래에 있어 중기 약세 구조가 유지됨\",\n      \"피보나치 ret_0.382 $59,827.74 및 상단 클러스터 $59,837.94 바로 아래에서 저항 테스트 중\",\n      \"Wyckoff 재분배 후보에서 UTAD 후보 $60,245.00 형성 후 가격이 $59,768.20으로 밀려 상단 수용 실패 조건\",\n      \"고거래량 bearish engulfing이 품질 0.801로 확인되어 단기 공급 우위 신호\",\n      \"OI 24시간 +4.493%, 가격 24시간 -2.10%, CVD -3,085.1120 조합으로 신규 포지션 유입이 가격 회복을 지지하지 못함\",\n      \"롱 계정 비율 70.5%로 롱 과밀 상태이며 하방 청산 유동성 $57,100 및 $56,900이 구조적 리스크로 존재\"\n    ],\n    \"setup_vs_structure\": \"구조적 편향과 실행 셋업은 대체로 모두 bearish로 정렬되어 있다. 다만 ICT의 discount long 관찰 구간과 하모닉 bullish PRZ가 $59,501.96-$60,197.91에 겹쳐 있어, 약세 구조 내부의 반등/스윕 리스크는 별도로 관리해야 한다.\"\n  },\n  \"signal_breakdown\": {\n    \"bullish_count\": 0,\n    \"bearish_count\": 4,\n    \"neutral_count\": 2\n  },\n  \"key_levels\": {\n    \"support\": [\n      59705.4,\n      59698.85,\n      59569.96,\n      59494.58,\n      59152.7,\n      59114.4,\n      58030.0,\n      57100.0,\n      56900.0\n    ],\n    \"resistance\": [\n      59827.74,\n      59886.45,\n      59951.97,\n      60180.8,\n      60245.0,\n      60508.2,\n      60648.0,\n      61245.5,\n      61256.0,\n      61931.1\n    ]\n  },\n  \"confluences\": [\n    \"Wyckoff와 ICT 모두 $58,030.00을 핵심 하단 구조 저점으로 제시하며, 이는 previous day low이자 Phase E 저점으로 중대한 구조 지지다.\",\n    \"Candlestick과 Derivatives 모두 EMA120 $60,508.20, EMA240 $61,273.49 아래 거래를 중기 약세 구조 수용으로 해석한다.\",\n    \"Wyckoff의 UTAD 후보 $60,245.00과 Fibonacci의 스윙 고점 저항 $60,245.00이 정확히 일치해 단기 상단 수용 여부의 핵심 구조 레벨이다.\",\n    \"ICT의 bearish CHoCH $60,648.00, Derivatives의 $60,600 상단 청산/회복 레벨, Harmonic의 $60,481.37-$60,732.47 TP/PRZ 관련 레벨이 $60.5k-$60.7k 저항 밴드로 겹친다.\",\n    \"Fibonacci의 ret_0.382 $59,827.74, ICT EQ $59,886.45, Harmonic PRZ 하단 $59,951.97이 $59.83k-$59.95k 단기 공급/균형 회복 구간으로 밀집한다.\",\n    \"Candlestick의 근접 EMA20 $59,768.68과 현재가 $59,768.20이 거의 동일하며, Harmonic의 nearest PRZ $59,775.24도 같은 가격대에 있어 현재 위치가 단기 반응 구간임을 확인한다.\",\n    \"Wyckoff, Candlestick, Derivatives는 모두 구조적 약세를 지지하며, Wyckoff는 확정 분배 및 활성 재분배 후보, Candlestick은 고거래량 bearish engulfing, Derivatives는 OI 증가와 CVD 약화를 근거로 제시한다.\"\n  ],\n  \"conflicts\": [\n    \"ICT는 구조적으로 bearish라고 보지만 실행 셋업은 discount 구간 기반 bullish로 평가한다. 이는 구조 하락장 안에서 하단 유동성 회수 후 반등을 노리는 전술적 관점이지, 구조 반전 신호는 아니다.\",\n    \"Harmonic은 $59,951.97-$60,197.91의 strict bullish Bat PRZ를 제시하지만 아직 forming 상태이고 confirmed reaction이 없어 구조 판단을 뒤집을 권한은 낮다.\",\n    \"Fibonacci는 구조 bias를 neutral로 두면서도 setup은 bearish로 본다. 즉 명확한 BOS/CHoCH 구조 확정은 없지만, $59,827.74-$59,987.22 저항 테스트 실패 조건은 단기 약세 세팅으로 해석된다.\",\n    \"현재가가 $59,768.20으로 ICT EQ $59,886.45 아래 discount에 있어 추격 매도에는 불리한 위치라는 점이, Wyckoff/Derivatives/Candlestick의 구조적 약세와 전술적으로 충돌한다.\"\n  ],\n  \"highest_conviction_analyst\": \"Wyckoff Expert — 확정 분배 구조를 BC $62,812.20 → AR $62,075.60 → UT $63,209.60 → LPSY $61,931.10 → SOW $61,578.40 → Phase E $58,030.00으로 구체적으로 제시했고, 현재도 $58,030.00 이후 활성 재분배 후보에서 UTAD 후보 $60,245.00이 형성된 상태로 평가한다. regime fitness 1.000 및 분배 점수 100으로 구조 신호의 일관성과 가격 레벨 정밀도가 가장 높다.\",\n  \"invalidation_level\": \"$61,256.00 상향 수용 시 현재 bearish 구조 판단은 중대하게 훼손된다. 특히 $61,578.40-$61,931.10까지 회복하면 Wyckoff 재분배/분배 해석도 약화된다.\",\n  \"executive_summary\": \"BTC/USDT 15분 구조는 현재 확정 분배 이후 Phase E 저점 $58,030.00을 만들고, 그 반등 위에서 재분배 후보가 진행되는 bearish regime으로 진단된다. 현재 위치 $59,768.20은 $59,827.74-$59,951.97 단기 저항/PRZ와 $59,698.85-$59,705.40 단기 지지 사이에 놓인 균형권이지만, 상위 구조는 EMA120 $60,508.20 및 EMA240 $61,273.49 아래에서 약세 수용 상태다. Wyckoff의 UTAD 후보 $60,245.00, ICT bearish CHoCH $60,648.00, Derivatives의 $60,600 회복 기준이 모두 $60.2k-$60.7k를 구조 회복 검증 구간으로 만든다. 반면 $58,030.00은 prior Phase E 저점이자 previous day low로, 이 레벨 보존 여부가 현 재분배 후보의 하단 구조 안정성을 결정한다. 구조적 bearish 판단은 $61,256.00 상향 수용 시 훼손되며, $61,578.40-$61,931.10 회복 시 분배/재분배 해석 자체가 재평가되어야 한다.\"\n}"
  },
  "overall_signal": "bearish",
  "overall_confidence": 0.72,
  "operating_path": {
    "path_type": "complex",
    "confidence": 0.66,
    "waypoints": [
      {
        "seq": 1,
        "price": 59837.94,
        "type": "resistance_test",
        "source": "Fibonacci (ret_0.382 $59,827.74 + confluence $59,837.94), WP1 후보표 (fib_confluence strict 0.85), Candlestick (EMA20 $59,768.68)",
        "description": "현재가 $59,768.20에서 단기 반등하여 ret_0.382 $59,827.74와 fib confluence $59,837.94(strict 0.85, EQ $59,886.45 직하) 저항을 테스트. 현재 위치가 discount 구간이라 추격 숏이 불리하다는 다수 에이전트 지적과, setup 신호 '저항 테스트 중', Wyckoff UTAD $60,245 하 상단 수용 실패 조건이 정합되어 가장 신뢰도 높은 숏 진입 거부 구간.",
        "est_hours": 2,
        "turning_zone": [
          59837.94,
          59951.97
        ],
        "likely_wick": 59886.45,
        "rejection_confirm": 59698.85,
        "invalid_overshoot": 60074.94,
        "calibration_reasoning": "피보나치 컨플루언스 $59,837.94(ret_0.5/0.382/0.236)와 챔피언 저항 클러스터 $59,827.74·$59,886.45(EQ)·$59,951.97로 존을 설정했으며 폭 $114(0.42 ATR). UTAD 상단 수용 실패 특성상 EQ $59,886.45까지 윅 후 거부가 가장 유력하고, 사전확정(PRE_CONFIRMATION) 하모닉 PRZ $60,074.94는 웨이포인트를 이동시키지 않되 수용 시 무효 기준으로만 사용."
      },
      {
        "seq": 2,
        "price": 59501.38,
        "type": "swing_low",
        "source": "Fibonacci (ret_0.618 $59,569.96 cluster 0.85, fib confluence $59,501.38 strict 0.85), Candlestick (support $59,494.58), ICT (London low $59,705.40 sell-side sweep)",
        "description": "저항 거부 후 London low/EQ $59,698.85-$59,705.40 sell-side 유동성을 스윕하며 $59,494.58-$59,569.96 지지 클러스터(핵심 fib confluence $59,501.38)까지 하락. ICT discount 반등 및 하모닉 bullish PRZ 리스크가 상주하는 구간이므로 일시 반응(데드캣) 예상되나, 약세 정렬상 지속 우위.",
        "est_hours": 7,
        "turning_zone": [
          59386.45,
          59501.38
        ],
        "likely_wick": 59494.58,
        "rejection_confirm": 59569.96,
        "invalid_overshoot": 59300.0,
        "calibration_reasoning": "핵심 3중 컨플루언스 $59,501.38과 지지 클러스터 $59,494.58~$59,569.96를 상단, 피보 지지 $59,386.45를 하단으로 폭 $115(0.42 ATR) 설정. 셀사이드 스윕은 챔피언 클러스터 저점 $59,494.58을 타격 후 ICT discount 데드캣 반등(0.618 $59,569.96 재탈환이 확인), $59,386.45 종가 이탈 시 약세 가속으로 무효."
      },
      {
        "seq": 3,
        "price": 59114.4,
        "type": "support_test",
        "source": "Wyckoff (support $59,152.70/$59,114.40), Harmonic (support $59,114.40), Chairman support 리스트",
        "description": "지지 클러스터 종가 이탈로 약세 가속 확인 시, Phase E 저점 직전 마지막 구조 지지인 Wyckoff $59,114.40-$59,152.70 테스트. EMA120 $60,508.20/EMA240 $61,273.49 하 약세 수용 구조와 일관.",
        "est_hours": 14,
        "turning_zone": [
          58977.59,
          59114.4
        ],
        "likely_wick": 59000.0,
        "rejection_confirm": 59152.7,
        "invalid_overshoot": 58900.0,
        "calibration_reasoning": "Wyckoff Phase E 직전 구조 지지 $59,114.40~$59,152.70 클러스터 기준, 하단을 base−0.5 ATR로 잡아 폭 $137(0.50 ATR). 라운드넘버 $59,000 유동성 자석 효과로 윅을 그쪽으로 바이어스했고, $59,152.70 재탈환이 반응 확인·$58,900 이탈 시 $58,030로 가속해 무효."
      },
      {
        "seq": 4,
        "price": 58030.0,
        "type": "swing_low",
        "source": "Wyckoff (Phase E 저점 $58,030), ICT (range low/previous day low $58,030), Derivatives (롱 청산 유동성 $57,100/$56,900), Chairman confluence",
        "description": "주 하방 목표 — Phase E 저점이자 previous day low $58,030, Wyckoff·ICT 공통 핵심 하단 구조. 롱 과밀 70.5% + OI +4.493%/CVD -3,085 다이버전스 + $57,100/$56,900 청산 유동성이 가격을 끌어내리는 구조. 이 레벨 보존/이탈 여부가 추가 하락 지속을 결정하는 분기점.",
        "est_hours": 21,
        "turning_zone": [
          57811.1,
          58030.0
        ],
        "likely_wick": 58000.0,
        "rejection_confirm": 58300.0,
        "invalid_overshoot": 57100.0,
        "calibration_reasoning": "터미널 웨이포인트로 폭 $219(0.80 ATR) 적용. Phase E 저점·전일저점(PDL) $58,030 직하 라운드넘버 $58,000이 PDL 스톱+자석으로 가장 유력한 윅. 청산 유동성 $57,100/$56,900가 하방 자석이지만 3.4 ATR 떨어져 존에는 미포함하고, $57,100 도달 시 $58,030 보존 실패·더 깊은 반전으로 무효 처리."
      }
    ],
    "period_extremes": {
      "4h": {
        "expected_high": 59886.45,
        "expected_low": 59698.85,
        "high_first": true
      },
      "8h": {
        "expected_high": 59886.45,
        "expected_low": 59501.38,
        "high_first": true
      },
      "24h": {
        "expected_high": 59886.45,
        "expected_low": 58030.0,
        "high_first": true
      }
    },
    "triggers": {
      "bullish": {
        "price": 60245.0,
        "description": "Wyckoff UTAD 후보/Fib 스윙 고점 $60,245.00 회복 시 상단 수용 성공으로 재분배 숏 논리 약화. EMA120 $60,508.20 동반 회복 시 하방 경로 무효화 시작, 반등 연장으로 전환."
      },
      "bearish": {
        "price": 59494.58,
        "description": "London low 스윕 이후 ret_0.618/fib confluence 지지 클러스터 $59,494.58 종가 이탈 시 ICT discount 반등 시나리오 무효화, Wyckoff $59,114.40 및 Phase E $58,030 향 약세 가속 확정."
      }
    },
    "scenario_invalidation": 60648.0,
    "raw_llm_response": "```json\n{\n  \"path_type\": \"complex\",\n  \"confidence\": 0.66,\n  \"waypoints\": [\n    {\n      \"seq\": 1,\n      \"price\": 59837.94,\n      \"type\": \"resistance_test\",\n      \"source\": \"Fibonacci (ret_0.382 $59,827.74 + confluence $59,837.94), WP1 후보표 (fib_confluence strict 0.85), Candlestick (EMA20 $59,768.68)\",\n      \"description\": \"현재가 $59,768.20에서 단기 반등하여 ret_0.382 $59,827.74와 fib confluence $59,837.94(strict 0.85, EQ $59,886.45 직하) 저항을 테스트. 현재 위치가 discount 구간이라 추격 숏이 불리하다는 다수 에이전트 지적과, setup 신호 '저항 테스트 중', Wyckoff UTAD $60,245 하 상단 수용 실패 조건이 정합되어 가장 신뢰도 높은 숏 진입 거부 구간.\",\n      \"est_hours\": 2\n    },\n    {\n      \"seq\": 2,\n      \"price\": 59501.38,\n      \"type\": \"swing_low\",\n      \"source\": \"Fibonacci (ret_0.618 $59,569.96 cluster 0.85, fib confluence $59,501.38 strict 0.85), Candlestick (support $59,494.58), ICT (London low $59,705.40 sell-side sweep)\",\n      \"description\": \"저항 거부 후 London low/EQ $59,698.85-$59,705.40 sell-side 유동성을 스윕하며 $59,494.58-$59,569.96 지지 클러스터(핵심 fib confluence $59,501.38)까지 하락. ICT discount 반등 및 하모닉 bullish PRZ 리스크가 상주하는 구간이므로 일시 반응(데드캣) 예상되나, 약세 정렬상 지속 우위.\",\n      \"est_hours\": 7\n    },\n    {\n      \"seq\": 3,\n      \"price\": 59114.40,\n      \"type\": \"support_test\",\n      \"source\": \"Wyckoff (support $59,152.70/$59,114.40), Harmonic (support $59,114.40), Chairman support 리스트\",\n      \"description\": \"지지 클러스터 종가 이탈로 약세 가속 확인 시, Phase E 저점 직전 마지막 구조 지지인 Wyckoff $59,114.40-$59,152.70 테스트. EMA120 $60,508.20/EMA240 $61,273.49 하 약세 수용 구조와 일관.\",\n      \"est_hours\": 14\n    },\n    {\n      \"seq\": 4,\n      \"price\": 58030.00,\n      \"type\": \"swing_low\",\n      \"source\": \"Wyckoff (Phase E 저점 $58,030), ICT (range low/previous day low $58,030), Derivatives (롱 청산 유동성 $57,100/$56,900), Chairman confluence\",\n      \"description\": \"주 하방 목표 — Phase E 저점이자 previous day low $58,030, Wyckoff·ICT 공통 핵심 하단 구조. 롱 과밀 70.5% + OI +4.493%/CVD -3,085 다이버전스 + $57,100/$56,900 청산 유동성이 가격을 끌어내리는 구조. 이 레벨 보존/이탈 여부가 추가 하락 지속을 결정하는 분기점.\",\n      \"est_hours\": 21\n    }\n  ],\n  \"period_extremes\": {\n    \"4h\":  {\"expected_high\": 59886.45, \"expected_low\": 59698.85, \"high_first\": true},\n    \"8h\":  {\"expected_high\": 59886.45, \"expected_low\": 59501.38, \"high_first\": true},\n    \"24h\": {\"expected_high\": 59886.45, \"expected_low\": 58030.00, \"high_first\": true}\n  },\n  \"triggers\": {\n    \"bullish\": {\n      \"price\": 60245.00,\n      \"description\": \"Wyckoff UTAD 후보/Fib 스윙 고점 $60,245.00 회복 시 상단 수용 성공으로 재분배 숏 논리 약화. EMA120 $60,508.20 동반 회복 시 하방 경로 무효화 시작, 반등 연장으로 전환.\"\n    },\n    \"bearish\": {\n      \"price\": 59494.58,\n      \"description\": \"London low 스윕 이후 ret_0.618/fib confluence 지지 클러스터 $59,494.58 종가 이탈 시 ICT discount 반등 시나리오 무효화, Wyckoff $59,114.40 및 Phase E $58,030 향 약세 가속 확정.\"\n    }\n  },\n  \"scenario_invalidation\": 60648.00\n}\n```"
  },
  "tp_calibration": {
    "calibrated_waypoints": [
      {
        "seq": 1,
        "base_target": 59837.94,
        "turning_zone": [
          59837.94,
          59951.97
        ],
        "likely_wick": 59886.45,
        "rejection_confirm": 59698.85,
        "invalid_overshoot": 60074.94,
        "calibration_reasoning": "피보나치 컨플루언스 $59,837.94(ret_0.5/0.382/0.236)와 챔피언 저항 클러스터 $59,827.74·$59,886.45(EQ)·$59,951.97로 존을 설정했으며 폭 $114(0.42 ATR). UTAD 상단 수용 실패 특성상 EQ $59,886.45까지 윅 후 거부가 가장 유력하고, 사전확정(PRE_CONFIRMATION) 하모닉 PRZ $60,074.94는 웨이포인트를 이동시키지 않되 수용 시 무효 기준으로만 사용."
      },
      {
        "seq": 2,
        "base_target": 59501.38,
        "turning_zone": [
          59386.45,
          59501.38
        ],
        "likely_wick": 59494.58,
        "rejection_confirm": 59569.96,
        "invalid_overshoot": 59300.0,
        "calibration_reasoning": "핵심 3중 컨플루언스 $59,501.38과 지지 클러스터 $59,494.58~$59,569.96를 상단, 피보 지지 $59,386.45를 하단으로 폭 $115(0.42 ATR) 설정. 셀사이드 스윕은 챔피언 클러스터 저점 $59,494.58을 타격 후 ICT discount 데드캣 반등(0.618 $59,569.96 재탈환이 확인), $59,386.45 종가 이탈 시 약세 가속으로 무효."
      },
      {
        "seq": 3,
        "base_target": 59114.4,
        "turning_zone": [
          58977.59,
          59114.4
        ],
        "likely_wick": 59000.0,
        "rejection_confirm": 59152.7,
        "invalid_overshoot": 58900.0,
        "calibration_reasoning": "Wyckoff Phase E 직전 구조 지지 $59,114.40~$59,152.70 클러스터 기준, 하단을 base−0.5 ATR로 잡아 폭 $137(0.50 ATR). 라운드넘버 $59,000 유동성 자석 효과로 윅을 그쪽으로 바이어스했고, $59,152.70 재탈환이 반응 확인·$58,900 이탈 시 $58,030로 가속해 무효."
      },
      {
        "seq": 4,
        "base_target": 58030.0,
        "turning_zone": [
          57811.1,
          58030.0
        ],
        "likely_wick": 58000.0,
        "rejection_confirm": 58300.0,
        "invalid_overshoot": 57100.0,
        "calibration_reasoning": "터미널 웨이포인트로 폭 $219(0.80 ATR) 적용. Phase E 저점·전일저점(PDL) $58,030 직하 라운드넘버 $58,000이 PDL 스톱+자석으로 가장 유력한 윅. 청산 유동성 $57,100/$56,900가 하방 자석이지만 3.4 ATR 떨어져 존에는 미포함하고, $57,100 도달 시 $58,030 보존 실패·더 깊은 반전으로 무효 처리."
      }
    ],
    "raw_llm_response": "```json\n{\n  \"calibrated_waypoints\": [\n    {\n      \"seq\": 1,\n      \"base_target\": 59837.94,\n      \"turning_zone\": [59837.94, 59951.97],\n      \"likely_wick\": 59886.45,\n      \"rejection_confirm\": 59698.85,\n      \"invalid_overshoot\": 60074.94,\n      \"calibration_reasoning\": \"피보나치 컨플루언스 $59,837.94(ret_0.5/0.382/0.236)와 챔피언 저항 클러스터 $59,827.74·$59,886.45(EQ)·$59,951.97로 존을 설정했으며 폭 $114(0.42 ATR). UTAD 상단 수용 실패 특성상 EQ $59,886.45까지 윅 후 거부가 가장 유력하고, 사전확정(PRE_CONFIRMATION) 하모닉 PRZ $60,074.94는 웨이포인트를 이동시키지 않되 수용 시 무효 기준으로만 사용.\"\n    },\n    {\n      \"seq\": 2,\n      \"base_target\": 59501.38,\n      \"turning_zone\": [59386.45, 59501.38],\n      \"likely_wick\": 59494.58,\n      \"rejection_confirm\": 59569.96,\n      \"invalid_overshoot\": 59300.00,\n      \"calibration_reasoning\": \"핵심 3중 컨플루언스 $59,501.38과 지지 클러스터 $59,494.58~$59,569.96를 상단, 피보 지지 $59,386.45를 하단으로 폭 $115(0.42 ATR) 설정. 셀사이드 스윕은 챔피언 클러스터 저점 $59,494.58을 타격 후 ICT discount 데드캣 반등(0.618 $59,569.96 재탈환이 확인), $59,386.45 종가 이탈 시 약세 가속으로 무효.\"\n    },\n    {\n      \"seq\": 3,\n      \"base_target\": 59114.40,\n      \"turning_zone\": [58977.59, 59114.40],\n      \"likely_wick\": 59000.00,\n      \"rejection_confirm\": 59152.70,\n      \"invalid_overshoot\": 58900.00,\n      \"calibration_reasoning\": \"Wyckoff Phase E 직전 구조 지지 $59,114.40~$59,152.70 클러스터 기준, 하단을 base−0.5 ATR로 잡아 폭 $137(0.50 ATR). 라운드넘버 $59,000 유동성 자석 효과로 윅을 그쪽으로 바이어스했고, $59,152.70 재탈환이 반응 확인·$58,900 이탈 시 $58,030로 가속해 무효.\"\n    },\n    {\n      \"seq\": 4,\n      \"base_target\": 58030.00,\n      \"turning_zone\": [57811.10, 58030.00],\n      \"likely_wick\": 58000.00,\n      \"rejection_confirm\": 58300.00,\n      \"invalid_overshoot\": 57100.00,\n      \"calibration_reasoning\": \"터미널 웨이포인트로 폭 $219(0.80 ATR) 적용. Phase E 저점·전일저점(PDL) $58,030 직하 라운드넘버 $58,000이 PDL 스톱+자석으로 가장 유력한 윅. 청산 유동성 $57,100/$56,900가 하방 자석이지만 3.4 ATR 떨어져 존에는 미포함하고, $57,100 도달 시 $58,030 보존 실패·더 깊은 반전으로 무효 처리.\"\n    }\n  ]\n}\n```"
  },
  "timing": {
    "stages": {
      "stage1_agents": 51.4,
      "chairman": 82.5,
      "operating_path": 282.3,
      "tp_calibrator": 221.7
    },
    "agents": {},
    "total_s": 638.0
  }
}