{
  "symbol": "BTC/USDT",
  "timeframe": "1h",
  "timestamp": "2026-06-22 17:00 KST",
  "last_price": 64187.9,
  "num_candles": 300,
  "stage1_analyses": {
    "candlestick": {
      "agent_id": "candlestick",
      "display_name": "Candlestick Reader",
      "signal": "neutral",
      "confidence": 0.46,
      "structure_bias": "neutral",
      "setup_bias": "bullish",
      "setup_score": 0.42,
      "setup_signals": [
        "현재가 $64,187.90는 7일 고점 $67,255.40과 저점 $62,232.10의 EQ $64,743.75 아래에 있어 할인 구간(discount zone)에 위치",
        "EMA20 $64,053.73, EMA120 $64,002.22, EMA240 $63,936.60 위에서 거래되며 단기 지지 반응이 유지됨",
        "최근 piercing_pattern@299가 출현했으나 pattern_quality 0.484로 후보 수준이며 거래량 확인은 없음",
        "bear_score 1.3500과 bull_score 1.3000이 거의 동일해 구조 전환 전의 약한 bullish setup만 존재"
      ],
      "reasoning": "현재 BTC/USDT는 $64,187.90으로 EMA20 $64,053.73, EMA120 $64,002.22, EMA240 $63,936.60 바로 위에 위치해 단기 지지권 위에서 버티고 있지만, 7일 EQ $64,743.75 아래라 아직 강한 상승 구조로 보기 어렵습니다. 최근 패턴은 bearish_engulfing@298, bearish_harami@294와 piercing_pattern@299, bullish_harami@296이 혼재되어 있으며 최고 pattern_quality도 0.540에 그쳐 신뢰도는 후보 수준입니다. bull_score 1.3000 대비 bear_score 1.3500으로 약한 매도 우위지만 차이가 작고, 고거래량 패턴이 없어 확정적인 반전 신호는 아닙니다. 따라서 확인된 structure_bias는 중립이며, 다만 EMA 클러스터 위 지지와 할인 구간 위치 때문에 setup_bias는 약한 bullish로 평가합니다.",
      "key_levels": {
        "support": [
          64053.73,
          64002.22,
          63936.6,
          62232.1
        ],
        "resistance": [
          64743.75,
          67255.4
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$63,936.60 1시간봉 종가 하향 이탈",
      "risk_scenario": "가격이 EMA240 $63,936.60 아래로 종가 이탈하면 현재의 약한 bullish setup은 무효화되고, bearish_engulfing 및 bearish_harami 후보가 재평가되며 $62,232.10 7일 저점 재테스트 가능성이 커집니다. 반대로 $64,743.75 EQ를 강하게 회복하고 안착하면 중립 구조가 상방으로 기울며 $67,255.40 저항 재시험이 열립니다.",
      "data_quality": "medium",
      "metrics": {
        "total_patterns_detected": 153,
        "recent_patterns": 5,
        "pattern_list": [
          "bearish_engulfing@298",
          "doji@290",
          "bearish_harami@294",
          "bullish_harami@296",
          "piercing_pattern@299"
        ],
        "atr_value": 382.73,
        "vol_avg_20": 4868.96,
        "high_volume_patterns": [],
        "pattern_candidates": [
          {
            "pattern": "bearish_engulfing",
            "signal": "bearish",
            "pattern_quality": 0.54,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "bearish_harami",
            "signal": "bearish",
            "pattern_quality": 0.525,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "piercing_pattern",
            "signal": "bullish",
            "pattern_quality": 0.484,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "bullish_harami",
            "signal": "bullish",
            "pattern_quality": 0.462,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "doji",
            "signal": "neutral",
            "pattern_quality": 0.355,
            "tier": "candidate",
            "high_volume": false
          }
        ],
        "best_pattern_quality": 0.54,
        "bull_score": 1.3,
        "bear_score": 1.35
      },
      "raw_llm_response": "{\n  \"signal\": \"neutral\",\n  \"confidence\": 0.46,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.42,\n  \"setup_signals\": [\n    \"현재가 $64,187.90는 7일 고점 $67,255.40과 저점 $62,232.10의 EQ $64,743.75 아래에 있어 할인 구간(discount zone)에 위치\",\n    \"EMA20 $64,053.73, EMA120 $64,002.22, EMA240 $63,936.60 위에서 거래되며 단기 지지 반응이 유지됨\",\n    \"최근 piercing_pattern@299가 출현했으나 pattern_quality 0.484로 후보 수준이며 거래량 확인은 없음\",\n    \"bear_score 1.3500과 bull_score 1.3000이 거의 동일해 구조 전환 전의 약한 bullish setup만 존재\"\n  ],\n  \"reasoning\": \"현재 BTC/USDT는 $64,187.90으로 EMA20 $64,053.73, EMA120 $64,002.22, EMA240 $63,936.60 바로 위에 위치해 단기 지지권 위에서 버티고 있지만, 7일 EQ $64,743.75 아래라 아직 강한 상승 구조로 보기 어렵습니다. 최근 패턴은 bearish_engulfing@298, bearish_harami@294와 piercing_pattern@299, bullish_harami@296이 혼재되어 있으며 최고 pattern_quality도 0.540에 그쳐 신뢰도는 후보 수준입니다. bull_score 1.3000 대비 bear_score 1.3500으로 약한 매도 우위지만 차이가 작고, 고거래량 패턴이 없어 확정적인 반전 신호는 아닙니다. 따라서 확인된 structure_bias는 중립이며, 다만 EMA 클러스터 위 지지와 할인 구간 위치 때문에 setup_bias는 약한 bullish로 평가합니다.\",\n  \"key_levels\": {\n    \"support\": [\n      64053.73,\n      64002.22,\n      63936.6,\n      62232.1\n    ],\n    \"resistance\": [\n      64743.75,\n      67255.4\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$63,936.60 1시간봉 종가 하향 이탈\",\n  \"risk_scenario\": \"가격이 EMA240 $63,936.60 아래로 종가 이탈하면 현재의 약한 bullish setup은 무효화되고, bearish_engulfing 및 bearish_harami 후보가 재평가되며 $62,232.10 7일 저점 재테스트 가능성이 커집니다. 반대로 $64,743.75 EQ를 강하게 회복하고 안착하면 중립 구조가 상방으로 기울며 $67,255.40 저항 재시험이 열립니다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "ict": {
      "agent_id": "ict",
      "display_name": "ICT Trader",
      "signal": "bullish",
      "confidence": 0.62,
      "structure_bias": "bearish",
      "setup_bias": "bullish",
      "setup_score": 0.842,
      "setup_signals": [
        "활성 bullish OB 후보가 $63,220.00-$63,775.30에 존재하며 현재가 $64,187.90 대비 근접 구간",
        "bullish CHoCH가 $62,840.20 상방에서 발생",
        "bullish BOS가 $63,915.30 및 $64,738.00 상방에서 발생",
        "이전 일봉 고가 $64,568.00을 상방 돌파하여 단기 매수 유동성 확보",
        "현재가 $64,187.90가 EQ $63,962.10 위 프리미엄에 위치해 있어 즉시 추격보다 할인/OB 되돌림 대기 조건"
      ],
      "reasoning": "확정 구조 관점에서는 최근 구조 이벤트가 BOS_bearish $65,607.10, BOS_bearish $65,328.80로 연속 2회 bearish BOS가 발생했기 때문에 structure_bias는 bearish로 판단한다. 다만 실행 셋업 관점에서는 $63,220.00-$63,775.30 bullish OB 후보가 아직 활성 상태이고, 이전 bullish CHoCH $62,840.20 및 bullish BOS $63,915.30/$64,738.00의 기반이 남아 있어 setup_bias는 bullish다. 현재가 $64,187.90는 EQ $63,962.10 위의 프리미엄에 있어 즉시 롱 진입보다는 $63,775.30-$63,220.00 OB 재방문 후 반응을 확인하는 것이 ICT 관점에서 더 유리하다. $64,568.00 이전 일봉 고가가 이미 돌파되어 단기 buy-side liquidity를 건드렸으므로, $64,788.00 range high 재돌파 전에는 되돌림 리스크가 남아 있다.",
      "key_levels": {
        "support": [
          63962.1,
          63775.3,
          63497.65,
          63220.0,
          63136.2
        ],
        "resistance": [
          64568.0,
          64738.0,
          64788.0,
          65328.8,
          65607.1,
          67255.4
        ]
      },
      "time_horizon": "short to medium term",
      "invalidation_level": "$63,220.00",
      "risk_scenario": "$63,220.00 bullish OB 하단이 1시간봉 기준 명확히 이탈되면 해당 수요 구간은 실패로 간주되며, $63,136.20 range low 및 7일 저점 $62,232.10까지 sell-side liquidity를 재공격할 가능성이 커진다. 반대로 $64,788.00 range high를 강하게 회복하고 $65,328.80 bearish BOS 레벨 위에서 수용되면 bearish 구조 압력이 약화되고 bullish continuation 가능성이 커진다.",
      "data_quality": "medium",
      "metrics": {
        "order_blocks_total": 2,
        "confirmed_bullish_ob": 0,
        "confirmed_bearish_ob": 0,
        "candidate_bullish_ob": 2,
        "candidate_bearish_ob": 0,
        "active_bullish_ob": 1,
        "active_bearish_ob": 0,
        "nearest_bull_ob_range": {
          "bottom": 63220.0,
          "top": 63775.3,
          "quality": "candidate",
          "score": 0.561
        },
        "nearest_bear_ob_range": null,
        "active_bullish_ob_list": [
          {
            "type": "bullish_ob",
            "idx": 291,
            "top": 63775.3,
            "bottom": 63220.0,
            "mid": 63497.65,
            "quality": "candidate",
            "score": 0.561,
            "displacement_score": 0.331,
            "has_fvg": true,
            "has_sweep_context": false,
            "fvg_range": {
              "bottom": 63775.3,
              "top": 63818.0
            },
            "swept_level": null,
            "source_move_idx": 291,
            "proximity": "nearby"
          }
        ],
        "active_bearish_ob_list": [],
        "ob_mitigated_count": 0,
        "unfilled_bull_fvg_count": 0,
        "unfilled_bear_fvg_count": 0,
        "bull_fvg_ranges": [],
        "bear_fvg_ranges": [],
        "fvg_open_count": 0,
        "fvg_mitigated_count": 55,
        "fvg_open_zones": [],
        "bos_choch_events": [
          "CHoCH_bullish",
          "BOS_bullish",
          "BOS_bullish",
          "BOS_bearish",
          "BOS_bearish"
        ],
        "bos_choch_levels": [
          {
            "type": "CHoCH_bullish",
            "level": 62840.2
          },
          {
            "type": "BOS_bullish",
            "level": 63915.3
          },
          {
            "type": "BOS_bullish",
            "level": 64738.0
          },
          {
            "type": "BOS_bearish",
            "level": 65607.1
          },
          {
            "type": "BOS_bearish",
            "level": 65328.8
          }
        ],
        "bos_sequence": [
          "CHoCH_bullish",
          "BOS_bullish",
          "BOS_bullish",
          "BOS_bearish",
          "BOS_bearish"
        ],
        "consecutive_bull_bos": 0,
        "consecutive_bear_bos": 2,
        "recent_liq_sweeps": [],
        "recent_sweep_levels": [],
        "liquidity_resting": [],
        "current_zone": "premium",
        "eq_level": 63962.1,
        "range_high": 64788.0,
        "range_low": 63136.2,
        "bull_score": 9.137,
        "bear_score": 5.8,
        "setup_bias": "bullish",
        "setup_score": 0.842,
        "setup_signals": [
          "bullish CHoCH above $62,840.20",
          "bullish BOS above $63,915.30",
          "bullish BOS above $64,738.00",
          "bullish OB candidate $63,220.00-$63,775.30 (nearby, score=0.56)",
          "broken previous day high $64,568.00"
        ],
        "retracement_direction": "bearish",
        "current_retracement_pct": 61.4,
        "deepest_retracement_pct": 131.6,
        "previous_day_high": 64568.0,
        "previous_day_low": 63661.9,
        "broken_prev_high": true,
        "broken_prev_low": true,
        "sessions": {
          "London": {
            "active": true,
            "high": 64788.0,
            "low": 63220.0
          },
          "New York": {
            "active": true,
            "high": 64384.3,
            "low": 63833.4
          },
          "Asian kill zone": {
            "active": false,
            "high": null,
            "low": null
          }
        }
      },
      "raw_llm_response": "{\n  \"signal\": \"bullish\",\n  \"confidence\": 0.62,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.842,\n  \"setup_signals\": [\n    \"활성 bullish OB 후보가 $63,220.00-$63,775.30에 존재하며 현재가 $64,187.90 대비 근접 구간\",\n    \"bullish CHoCH가 $62,840.20 상방에서 발생\",\n    \"bullish BOS가 $63,915.30 및 $64,738.00 상방에서 발생\",\n    \"이전 일봉 고가 $64,568.00을 상방 돌파하여 단기 매수 유동성 확보\",\n    \"현재가 $64,187.90가 EQ $63,962.10 위 프리미엄에 위치해 있어 즉시 추격보다 할인/OB 되돌림 대기 조건\"\n  ],\n  \"reasoning\": \"확정 구조 관점에서는 최근 구조 이벤트가 BOS_bearish $65,607.10, BOS_bearish $65,328.80로 연속 2회 bearish BOS가 발생했기 때문에 structure_bias는 bearish로 판단한다. 다만 실행 셋업 관점에서는 $63,220.00-$63,775.30 bullish OB 후보가 아직 활성 상태이고, 이전 bullish CHoCH $62,840.20 및 bullish BOS $63,915.30/$64,738.00의 기반이 남아 있어 setup_bias는 bullish다. 현재가 $64,187.90는 EQ $63,962.10 위의 프리미엄에 있어 즉시 롱 진입보다는 $63,775.30-$63,220.00 OB 재방문 후 반응을 확인하는 것이 ICT 관점에서 더 유리하다. $64,568.00 이전 일봉 고가가 이미 돌파되어 단기 buy-side liquidity를 건드렸으므로, $64,788.00 range high 재돌파 전에는 되돌림 리스크가 남아 있다.\",\n  \"key_levels\": {\n    \"support\": [\n      63962.1,\n      63775.3,\n      63497.65,\n      63220.0,\n      63136.2\n    ],\n    \"resistance\": [\n      64568.0,\n      64738.0,\n      64788.0,\n      65328.8,\n      65607.1,\n      67255.4\n    ]\n  },\n  \"time_horizon\": \"short to medium term\",\n  \"invalidation_level\": \"$63,220.00\",\n  \"risk_scenario\": \"$63,220.00 bullish OB 하단이 1시간봉 기준 명확히 이탈되면 해당 수요 구간은 실패로 간주되며, $63,136.20 range low 및 7일 저점 $62,232.10까지 sell-side liquidity를 재공격할 가능성이 커진다. 반대로 $64,788.00 range high를 강하게 회복하고 $65,328.80 bearish BOS 레벨 위에서 수용되면 bearish 구조 압력이 약화되고 bullish continuation 가능성이 커진다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "fibonacci": {
      "agent_id": "fibonacci",
      "display_name": "Fibonacci Analyst",
      "signal": "bullish",
      "confidence": 0.58,
      "structure_bias": "neutral",
      "setup_bias": "bullish",
      "setup_score": 0.62,
      "setup_signals": [
        "현재가 $64,187.90가 0.382 되돌림 $64,189.02를 거의 정확히 테스트 중이며, 반응 확률 0.65로 단기 피보나치 반응 구간에 위치",
        "가격이 스윙 EQ/0.5 되돌림 $64,004.00 위에 있어 단기 상승 스윙의 하단 붕괴는 아직 확인되지 않음",
        "0.5 되돌림 클러스터 $64,055.56 부근에 count 3, cluster_score 0.85의 강한 피보나치 지지 컨플루언스 존재",
        "골든비율 0.618 되돌림 $63,818.98이 핵심 2차 지지로 남아 있으며, 해당 레벨 위에서는 상승 재개 셋업이 유지됨",
        "EMA20 $64,053.73, EMA120 $64,002.22, EMA240 $63,936.60이 모두 현재가 아래에 위치해 단기 평균선 지지 구조가 유지됨"
      ],
      "reasoning": "확정 구조 관점에서는 $63,220 → $64,788 상승 스윙 이후 현재가가 0.382 되돌림 $64,189.02를 테스트하는 단계일 뿐, 명확한 BOS나 CHoCH가 확인되지 않아 structure_bias는 neutral로 판단한다. 다만 setup 관점에서는 가격이 EQ/0.5 되돌림 $64,004.00 위에 있고, $64,055.56 컨플루언스 구간의 cluster_score가 0.85로 높아 단기적으로는 상승 재개 셋업이 우세하다. 핵심은 현재 $64,189.02의 0.382 레벨을 회복·안착하느냐이며, 성공 시 $64,417.95, $64,788.00, 이후 $65,214.50까지 확장 가능성이 열린다. 반대로 $64,004.00을 이탈하면 골든비율 $63,818.98 재테스트 가능성이 커지고, 이 레벨마저 깨지면 셋업은 약화된다.",
      "key_levels": {
        "support": [
          64004.0,
          63818.98,
          63555.55
        ],
        "resistance": [
          64189.02,
          64417.95,
          64788.0,
          65214.5,
          65437.15,
          65757.02
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "63818.98",
      "risk_scenario": "$64,189.02의 0.382 되돌림에서 재차 거부되고 $64,004.00 EQ 지지를 이탈하면, 상승 재개 셋업은 실패로 전환되며 $63,818.98 골든비율과 $63,555.55 0.786 되돌림까지 하방 유동성 탐색이 진행될 수 있다.",
      "data_quality": "high",
      "metrics": {
        "swing_pair": "Low→High: $63,220 → $64,788",
        "direction": "up",
        "nearest_fib": "ret_0.382",
        "nearest_fib_price": 64189.02,
        "nearest_fib_distance": 0.0,
        "golden_ratio_level": 63818.98,
        "fib_ret_382": 64189.02,
        "fib_ret_618": 63818.98,
        "confluence_zones": [
          {
            "price": 64055.56,
            "count": 3,
            "levels": [
              "ret_0.5",
              "ret_0.5",
              "ret_0.382"
            ],
            "cluster_score": 0.85
          },
          {
            "price": 63687.26,
            "count": 2,
            "levels": [
              "ret_0.786",
              "ret_0.618"
            ],
            "cluster_score": 0.6
          },
          {
            "price": 64768.07,
            "count": 2,
            "levels": [
              "ret_0.382",
              "ext_1.0"
            ],
            "cluster_score": 0.6
          },
          {
            "price": 65325.82,
            "count": 2,
            "levels": [
              "ext_1.272",
              "ext_1.414"
            ],
            "cluster_score": 0.6
          },
          {
            "price": 65731.72,
            "count": 2,
            "levels": [
              "ret_0.236",
              "ext_1.618"
            ],
            "cluster_score": 0.6
          }
        ],
        "support_levels": [
          64004.0,
          63818.976,
          63555.552
        ],
        "resistance_levels": [
          64189.024,
          64417.952,
          64788.0
        ],
        "level_candidates": [
          {
            "name": "ret_0.236",
            "price": 64417.95,
            "distance_pct": 0.36,
            "is_support": false,
            "cluster_score": 0.0
          },
          {
            "name": "ret_0.382",
            "price": 64189.02,
            "distance_pct": 0.0,
            "is_support": false,
            "cluster_score": 0.85
          },
          {
            "name": "ret_0.5",
            "price": 64004.0,
            "distance_pct": 0.29,
            "is_support": true,
            "cluster_score": 0.85
          },
          {
            "name": "ret_0.618",
            "price": 63818.98,
            "distance_pct": 0.57,
            "is_support": true,
            "cluster_score": 0.85
          },
          {
            "name": "ret_0.786",
            "price": 63555.55,
            "distance_pct": 0.99,
            "is_support": true,
            "cluster_score": 0.6
          },
          {
            "name": "ext_1.0",
            "price": 64788.0,
            "distance_pct": 0.93,
            "is_support": false,
            "cluster_score": 0.6
          },
          {
            "name": "ext_1.272",
            "price": 65214.5,
            "distance_pct": 1.6,
            "is_support": false,
            "cluster_score": 0.6
          },
          {
            "name": "ext_1.414",
            "price": 65437.15,
            "distance_pct": 1.95,
            "is_support": false,
            "cluster_score": 0.6
          },
          {
            "name": "ext_1.618",
            "price": 65757.02,
            "distance_pct": 2.44,
            "is_support": false,
            "cluster_score": 0.6
          },
          {
            "name": "ext_2.0",
            "price": 66356.0,
            "distance_pct": 3.38,
            "is_support": false,
            "cluster_score": 0.0
          }
        ],
        "confluence_quality": 0.85,
        "fib_reaction_state": "testing",
        "reaction_probability": 0.65
      },
      "raw_llm_response": "{\n  \"signal\": \"bullish\",\n  \"confidence\": 0.58,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.62,\n  \"setup_signals\": [\n    \"현재가 $64,187.90가 0.382 되돌림 $64,189.02를 거의 정확히 테스트 중이며, 반응 확률 0.65로 단기 피보나치 반응 구간에 위치\",\n    \"가격이 스윙 EQ/0.5 되돌림 $64,004.00 위에 있어 단기 상승 스윙의 하단 붕괴는 아직 확인되지 않음\",\n    \"0.5 되돌림 클러스터 $64,055.56 부근에 count 3, cluster_score 0.85의 강한 피보나치 지지 컨플루언스 존재\",\n    \"골든비율 0.618 되돌림 $63,818.98이 핵심 2차 지지로 남아 있으며, 해당 레벨 위에서는 상승 재개 셋업이 유지됨\",\n    \"EMA20 $64,053.73, EMA120 $64,002.22, EMA240 $63,936.60이 모두 현재가 아래에 위치해 단기 평균선 지지 구조가 유지됨\"\n  ],\n  \"reasoning\": \"확정 구조 관점에서는 $63,220 → $64,788 상승 스윙 이후 현재가가 0.382 되돌림 $64,189.02를 테스트하는 단계일 뿐, 명확한 BOS나 CHoCH가 확인되지 않아 structure_bias는 neutral로 판단한다. 다만 setup 관점에서는 가격이 EQ/0.5 되돌림 $64,004.00 위에 있고, $64,055.56 컨플루언스 구간의 cluster_score가 0.85로 높아 단기적으로는 상승 재개 셋업이 우세하다. 핵심은 현재 $64,189.02의 0.382 레벨을 회복·안착하느냐이며, 성공 시 $64,417.95, $64,788.00, 이후 $65,214.50까지 확장 가능성이 열린다. 반대로 $64,004.00을 이탈하면 골든비율 $63,818.98 재테스트 가능성이 커지고, 이 레벨마저 깨지면 셋업은 약화된다.\",\n  \"key_levels\": {\n    \"support\": [\n      64004.0,\n      63818.98,\n      63555.55\n    ],\n    \"resistance\": [\n      64189.02,\n      64417.95,\n      64788.0,\n      65214.5,\n      65437.15,\n      65757.02\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"63818.98\",\n  \"risk_scenario\": \"$64,189.02의 0.382 되돌림에서 재차 거부되고 $64,004.00 EQ 지지를 이탈하면, 상승 재개 셋업은 실패로 전환되며 $63,818.98 골든비율과 $63,555.55 0.786 되돌림까지 하방 유동성 탐색이 진행될 수 있다.\",\n  \"data_quality\": \"high\"\n}"
    },
    "wyckoff": {
      "agent_id": "wyckoff",
      "display_name": "Wyckoff Expert",
      "signal": "bullish",
      "confidence": 0.66,
      "structure_bias": "bullish",
      "setup_bias": "bullish",
      "setup_score": 0.55,
      "setup_signals": [
        "가격이 메인 레인지 EQ 약 $64,823.40 아래의 디스카운트 구간에 위치",
        "LPS 후보 저점 $63,833.40 위에서 현재가 $64,187.90이 유지 중",
        "Spring $63,283.50 및 TERMINAL_SPRING $63,136.20 이후 SOS $64,568.00이 형성된 누적 Phase D 구조",
        "단기 확인 레벨은 SOS 고점 $64,568.00 및 EQ $64,823.40 재탈환"
      ],
      "reasoning": "현재 Wyckoff regime은 ACC이며 regime_fitness 0.963, acc_score 96.2로 누적 구조가 우세하지만 dis_score도 92.5로 높아 과도한 확정 해석은 피해야 한다. 주요 앵커는 SC $63,650.00, AR $65,996.80이며, 이후 Spring $63,283.50 → TERMINAL_SPRING $63,136.20 → SOS $64,568.00 → LPS $63,833.40 순서가 감지되어 Phase D 누적 후보로 읽힌다. 구조적 bias는 bullish이나, 현재가 $64,187.90은 SOS $64,568.00 및 레인지 EQ 약 $64,823.40 아래에 있어 아직 상단 수용이나 확정적 상승 전환으로 보기는 이르다. 즉각 경로는 LPS $63,833.40 방어 여부를 먼저 확인한 뒤 $64,568.00 재탈환, 이후 $64,823.40 이상 안착을 테스트하는 흐름이 가장 중요하다.",
      "key_levels": {
        "support": [
          63833.4,
          63650.0,
          63283.5,
          63136.2
        ],
        "resistance": [
          64568.0,
          64823.4,
          65996.8,
          67255.4
        ]
      },
      "time_horizon": "short/medium term",
      "invalidation_level": "$63,136.20",
      "risk_scenario": "가격이 LPS $63,833.40을 이탈하면 Phase D LPS 신뢰도가 약화되고, SC $63,650.00 및 Spring $63,283.50 재검사가 열릴 수 있다. 특히 TERMINAL_SPRING $63,136.20 아래로 수용되면 현재 ACC Phase D 해석은 실패로 간주되며, 레인지 하단 이탈 또는 재분배 가능성을 다시 평가해야 한다.",
      "data_quality": "medium",
      "metrics": {
        "acc_score": 96.2,
        "dis_score": 92.5,
        "regime": "ACC",
        "regime_state": "acc_candidate",
        "structure_bias": "bullish",
        "phase_context": "acc_candidate / accumulation / Phase D",
        "phases_detected": [
          "SC",
          "AR",
          "ST",
          "Spring",
          "TERMINAL_SPRING",
          "SOS",
          "LPS"
        ],
        "last_phase": "LPS",
        "phase_candidates": [
          {
            "label": "SC",
            "side": "low",
            "idx": 117,
            "price": 63650.0,
            "color": "#ffd166"
          },
          {
            "label": "AR",
            "side": "high",
            "idx": 127,
            "price": 65996.8,
            "color": "#06d6a0"
          },
          {
            "label": "ST",
            "side": "low",
            "idx": 162,
            "price": 65328.8,
            "color": "#118ab2"
          },
          {
            "label": "Spring",
            "side": "low",
            "idx": 247,
            "price": 63283.5,
            "color": "#f9844a"
          },
          {
            "label": "TERMINAL_SPRING",
            "side": "low",
            "idx": 258,
            "price": 63136.2,
            "color": "#f3722c"
          },
          {
            "label": "SOS",
            "side": "high",
            "idx": 272,
            "price": 64568.0,
            "color": "#06d6a0"
          },
          {
            "label": "LPS",
            "side": "low",
            "idx": 296,
            "price": 63833.4,
            "color": "#8338ec"
          }
        ],
        "phase_structures": [
          {
            "structure_id": "1h_cycle_1",
            "sequence": 1,
            "timeframe": "1h",
            "regime": "accumulation",
            "role": "current_structure_candidate",
            "is_active": true,
            "is_completed": false,
            "is_confirmed": true,
            "structure_bias": "bullish",
            "phase_context": "accumulation",
            "start_idx": 117,
            "end_idx": 296,
            "phase_count": 7,
            "phases": [
              {
                "label": "SC",
                "side": "low",
                "idx": 117,
                "price": 63650.0,
                "color": "#ffd166",
                "dt": "2026-06-15 02:00:00+09:00"
              },
              {
                "label": "AR",
                "side": "high",
                "idx": 127,
                "price": 65996.8,
                "color": "#06d6a0",
                "dt": "2026-06-15 12:00:00+09:00"
              },
              {
                "label": "ST",
                "side": "low",
                "idx": 162,
                "price": 65328.8,
                "color": "#118ab2",
                "dt": "2026-06-16 23:00:00+09:00"
              },
              {
                "label": "Spring",
                "side": "low",
                "idx": 247,
                "price": 63283.5,
                "color": "#f9844a",
                "dt": "2026-06-20 12:00:00+09:00"
              },
              {
                "label": "TERMINAL_SPRING",
                "side": "low",
                "idx": 258,
                "price": 63136.2,
                "color": "#f3722c",
                "dt": "2026-06-20 23:00:00+09:00"
              },
              {
                "label": "SOS",
                "side": "high",
                "idx": 272,
                "price": 64568.0,
                "color": "#06d6a0",
                "dt": "2026-06-21 13:00:00+09:00"
              },
              {
                "label": "LPS",
                "side": "low",
                "idx": 296,
                "price": 63833.4,
                "color": "#8338ec",
                "dt": "2026-06-22 13:00:00+09:00"
              }
            ]
          }
        ],
        "active_structure_id": "1h_cycle_1",
        "primary_structure_id": "1h_cycle_1",
        "structure_count": 1,
        "regime_fitness": 0.9625,
        "current_event": "LPS",
        "major_phase": "D",
        "pos_in_range": 0.5,
        "main_range_low": 63650.0,
        "main_range_high": 65996.8
      },
      "raw_llm_response": "{\n  \"signal\": \"bullish\",\n  \"confidence\": 0.66,\n  \"structure_bias\": \"bullish\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.55,\n  \"setup_signals\": [\n    \"가격이 메인 레인지 EQ 약 $64,823.40 아래의 디스카운트 구간에 위치\",\n    \"LPS 후보 저점 $63,833.40 위에서 현재가 $64,187.90이 유지 중\",\n    \"Spring $63,283.50 및 TERMINAL_SPRING $63,136.20 이후 SOS $64,568.00이 형성된 누적 Phase D 구조\",\n    \"단기 확인 레벨은 SOS 고점 $64,568.00 및 EQ $64,823.40 재탈환\"\n  ],\n  \"reasoning\": \"현재 Wyckoff regime은 ACC이며 regime_fitness 0.963, acc_score 96.2로 누적 구조가 우세하지만 dis_score도 92.5로 높아 과도한 확정 해석은 피해야 한다. 주요 앵커는 SC $63,650.00, AR $65,996.80이며, 이후 Spring $63,283.50 → TERMINAL_SPRING $63,136.20 → SOS $64,568.00 → LPS $63,833.40 순서가 감지되어 Phase D 누적 후보로 읽힌다. 구조적 bias는 bullish이나, 현재가 $64,187.90은 SOS $64,568.00 및 레인지 EQ 약 $64,823.40 아래에 있어 아직 상단 수용이나 확정적 상승 전환으로 보기는 이르다. 즉각 경로는 LPS $63,833.40 방어 여부를 먼저 확인한 뒤 $64,568.00 재탈환, 이후 $64,823.40 이상 안착을 테스트하는 흐름이 가장 중요하다.\",\n  \"key_levels\": {\n    \"support\": [\n      63833.4,\n      63650.0,\n      63283.5,\n      63136.2\n    ],\n    \"resistance\": [\n      64568.0,\n      64823.4,\n      65996.8,\n      67255.4\n    ]\n  },\n  \"time_horizon\": \"short/medium term\",\n  \"invalidation_level\": \"$63,136.20\",\n  \"risk_scenario\": \"가격이 LPS $63,833.40을 이탈하면 Phase D LPS 신뢰도가 약화되고, SC $63,650.00 및 Spring $63,283.50 재검사가 열릴 수 있다. 특히 TERMINAL_SPRING $63,136.20 아래로 수용되면 현재 ACC Phase D 해석은 실패로 간주되며, 레인지 하단 이탈 또는 재분배 가능성을 다시 평가해야 한다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "derivatives": {
      "agent_id": "derivatives",
      "display_name": "Derivatives Trader",
      "signal": "bearish",
      "confidence": 0.58,
      "structure_bias": "neutral",
      "setup_bias": "bearish",
      "setup_score": 0.68,
      "setup_signals": [
        "CVD divergence 0.850: CVD가 +$1,967.15 증가했지만 가격은 24h +0.03%로 정체되어 공격적 매수 흡수 가능성",
        "OI 24h +1.117% 및 oi_trend 0.612: $64,000 부근에서 신규 포지션 유입, 방향성 확정 전 레버리지 축적",
        "롱 계정 비율 0.625 및 account_long_crowding 0.959: 롱 포지셔닝 과밀로 단기 contrarian 하방 리스크",
        "현물-선물 basis -0.0363%: 선물이 현물 대비 할인되어 파생시장 수요가 강하지 않음",
        "현재가 $64,187.90은 7일 range EQ 약 $64,743.75 아래에 위치하며, $64,744 회복 실패 시 $63,300 / $62,900 하방 유동성으로 끌릴 수 있음"
      ],
      "reasoning": "확정 구조는 7일 고점 $67,255.40과 저점 $62,232.10 사이의 박스권이며, 현재가 $64,187.90은 EMA20 $64,053.73, EMA120 $64,002.22, EMA240 $63,936.60 바로 위에 있어 명확한 BOS나 CHoCH가 확인되지 않았으므로 structure_bias는 neutral이다. 다만 세팅 관점에서는 CVD divergence 0.850과 CVD +$1,967.15에도 가격이 24시간 +0.03%에 그쳐 매수 주도권이 가격 상승으로 연결되지 않는 흡수 신호가 강하다. OI가 24시간 +1.117% 증가했고 롱 계정 비율이 0.625, account_long_crowding이 0.959로 높아 신규 롱이 쌓인 상태라 $63,300, $62,900, $61,600 하방 청산 클러스터가 단기 자석이 될 수 있다. 반대로 $65,500 위로 수용되면 상방 청산 $66,800 및 $70,300/$70,600까지 숏 스퀴즈 리스크가 커진다.",
      "key_levels": {
        "support": [
          64053.73,
          64002.22,
          63300,
          62900,
          61600,
          62232.1
        ],
        "resistance": [
          64743.75,
          65500,
          66800,
          67255.4,
          70300,
          70600
        ]
      },
      "time_horizon": "short term, 4-8시간",
      "invalidation_level": "$65,500 상방 수용 및 유지",
      "risk_scenario": "$65,500을 돌파해 상방 청산을 건드리면 하방 세팅은 무효화되고, $66,800 및 7일 고점 $67,255.40까지 숏 커버링이 발생할 수 있다. fragility_score가 0.953으로 매우 높기 때문에 한쪽 유동성 터치 후 반대 방향으로 급격한 변동성이 나올 위험도 크다.",
      "data_quality": "medium",
      "metrics": {
        "cvd_divergence": 0.85,
        "cvd_change": 1967.153,
        "oi_trend": 0.612,
        "oi_change_pct_24h": 1.117,
        "oi_latest": 99844.785,
        "funding_pressure": 0.454,
        "funding_avg": 4.598e-05,
        "funding_change_24h": 3.538e-05,
        "long_account_ratio": 0.615,
        "short_account_ratio": 0.385,
        "long_account_latest": 0.625,
        "short_account_latest": 0.375,
        "long_account_change_24h": 0.0023,
        "short_account_change_24h": -0.0023,
        "account_flow_label": "stable",
        "account_short_crowding": 0.0,
        "account_long_crowding": 0.959,
        "ls_imbalance": 0.0,
        "ls_imbalance_interpretation": "high=short-account crowding / low=long-account crowding",
        "spot_futures_basis_score": 0.491,
        "spot_futures_basis_pct": -0.0363,
        "basis_change_lookback": 0.0045,
        "aggregate_score": 0.481,
        "bull_signals": 2,
        "bear_signals": 1,
        "liq_below": [
          [
            63300,
            4895.6441552999995
          ],
          [
            62900,
            5601.628224000001
          ],
          [
            61600,
            6352.000387000002
          ]
        ],
        "liq_above": [
          [
            65500,
            4735.719347249999
          ],
          [
            66800,
            5716.188604000001
          ],
          [
            70300,
            5719.55934125
          ]
        ],
        "strongest_liq_level": 70600,
        "fragility_score": 0.953,
        "positioning_extreme": "balanced"
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.58,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.68,\n  \"setup_signals\": [\n    \"CVD divergence 0.850: CVD가 +$1,967.15 증가했지만 가격은 24h +0.03%로 정체되어 공격적 매수 흡수 가능성\",\n    \"OI 24h +1.117% 및 oi_trend 0.612: $64,000 부근에서 신규 포지션 유입, 방향성 확정 전 레버리지 축적\",\n    \"롱 계정 비율 0.625 및 account_long_crowding 0.959: 롱 포지셔닝 과밀로 단기 contrarian 하방 리스크\",\n    \"현물-선물 basis -0.0363%: 선물이 현물 대비 할인되어 파생시장 수요가 강하지 않음\",\n    \"현재가 $64,187.90은 7일 range EQ 약 $64,743.75 아래에 위치하며, $64,744 회복 실패 시 $63,300 / $62,900 하방 유동성으로 끌릴 수 있음\"\n  ],\n  \"reasoning\": \"확정 구조는 7일 고점 $67,255.40과 저점 $62,232.10 사이의 박스권이며, 현재가 $64,187.90은 EMA20 $64,053.73, EMA120 $64,002.22, EMA240 $63,936.60 바로 위에 있어 명확한 BOS나 CHoCH가 확인되지 않았으므로 structure_bias는 neutral이다. 다만 세팅 관점에서는 CVD divergence 0.850과 CVD +$1,967.15에도 가격이 24시간 +0.03%에 그쳐 매수 주도권이 가격 상승으로 연결되지 않는 흡수 신호가 강하다. OI가 24시간 +1.117% 증가했고 롱 계정 비율이 0.625, account_long_crowding이 0.959로 높아 신규 롱이 쌓인 상태라 $63,300, $62,900, $61,600 하방 청산 클러스터가 단기 자석이 될 수 있다. 반대로 $65,500 위로 수용되면 상방 청산 $66,800 및 $70,300/$70,600까지 숏 스퀴즈 리스크가 커진다.\",\n  \"key_levels\": {\n    \"support\": [\n      64053.73,\n      64002.22,\n      63300,\n      62900,\n      61600,\n      62232.1\n    ],\n    \"resistance\": [\n      64743.75,\n      65500,\n      66800,\n      67255.4,\n      70300,\n      70600\n    ]\n  },\n  \"time_horizon\": \"short term, 4-8시간\",\n  \"invalidation_level\": \"$65,500 상방 수용 및 유지\",\n  \"risk_scenario\": \"$65,500을 돌파해 상방 청산을 건드리면 하방 세팅은 무효화되고, $66,800 및 7일 고점 $67,255.40까지 숏 커버링이 발생할 수 있다. fragility_score가 0.953으로 매우 높기 때문에 한쪽 유동성 터치 후 반대 방향으로 급격한 변동성이 나올 위험도 크다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "harmonic": {
      "agent_id": "harmonic",
      "display_name": "Harmonic Specialist",
      "signal": "bearish",
      "confidence": 0.66,
      "structure_bias": "neutral",
      "setup_bias": "bearish",
      "setup_score": 0.74,
      "setup_signals": [
        "현재가 $64,187.90가 완료형 bearish Gartley 고컨플루언스 PRZ $63,957.86-$64,396.98 내부에 있으며, D값 $64,177.42와 거의 동일한 구간에서 반응 중",
        "완료형 bearish Bat 고컨플루언스 PRZ $64,015.23-$64,558.36에서 PRZ 터치·방어·AD 0.382 반응 도달이 확인됨, reaction_score 1.0",
        "완료형 bearish Gartley는 XAD 0.8069, BCD 1.5158, PRZ confluence 3개(ABCD·BC_EXT·XAD)로 구성되며 reaction_score 0.9",
        "검증된 bearish TP ladder가 $63,732.82, $63,665.23, $63,390.58, $63,348.79로 겹쳐 단기 하방 자석 구간 형성",
        "harmonic directional score가 bullish 0.14 대비 bearish 2.045로 우세하며 directional_dominance 0.872"
      ],
      "reasoning": "구조 관점에서는 BOS/CHoCH/명확한 구조적 수용 데이터가 없으므로 structure_bias는 중립으로 둔다. 다만 셋업 관점에서는 현재가 $64,187.90가 bearish Gartley PRZ $63,957.86-$64,396.98 및 bearish Bat PRZ $64,015.23-$64,558.36에 겹쳐 있고, 두 완료 패턴 모두 PRZ 진입 후 거부 반응이 확인되어 하방 반응 셋업이 우세하다. 특히 완료형 Bat는 reaction_score 1.0, 완료형 Gartley는 reaction_score 0.9이며, 검증된 하방 TP가 $63,732.82-$63,665.23 1차, $63,390.58-$63,348.79 2차로 정렬된다. 단, harmonic governance상 이는 독립적인 추세 전환 엔진이 아니므로 $64,558.36-$64,655.68 상단을 회복·수용하면 bearish PRZ 방어 실패로 해석해야 한다.",
      "key_levels": {
        "support": [
          63732.82,
          63665.23,
          63390.58,
          63348.79,
          62836.6,
          62232.1
        ],
        "resistance": [
          64396.98,
          64558.36,
          64655.68,
          64568.0
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$64,655.68",
      "risk_scenario": "가격이 $64,558.36 상단을 돌파하고 특히 $64,655.68 위에서 1시간봉 수용을 만들면 bearish Bat/Gartley PRZ 방어가 실패한 것으로 보며, 이 경우 $64,568.00-$64,655.68 재시험 후 상방 유동성 탐색으로 전환될 수 있다. 반대로 $63,957.86 아래로 이탈하면 하방 TP ladder인 $63,732.82, $63,390.58, $62,836.60 순으로 반응을 추적한다.",
      "data_quality": "high",
      "metrics": {
        "patterns_found": 75,
        "completed_patterns_found": 29,
        "forming_d_prz_found": 46,
        "swing_orders_scanned": [
          3,
          5,
          8
        ],
        "swing_search_window": 34,
        "multiscale_swings_scanned": 70,
        "swing_highs_scanned": 37,
        "swing_lows_scanned": 33,
        "timeframe": "1h",
        "prz_active_threshold_pct": 0.5,
        "prz_nearby_threshold_pct": 1.0,
        "prz_watch_threshold_pct": 2.0,
        "prz_max_width_pct": 0.9,
        "quality_counts": {
          "high": 8,
          "medium": 24,
          "low": 43
        },
        "prz_status_counts": {
          "active": 43,
          "nearby": 15,
          "watch": 12,
          "far": 5,
          "forming": 5
        },
        "high_confluence_prz_count": 26,
        "strict_patterns_found": 32,
        "candidate_patterns_found": 43,
        "active_patterns_at_prz": 43,
        "nearby_patterns": 15,
        "all_patterns": [
          "bat",
          "bat",
          "bat",
          "bat",
          "bat",
          "bat",
          "shark",
          "gartley",
          "gartley",
          "shark",
          "crab",
          "crab",
          "butterfly",
          "bat",
          "bat",
          "butterfly",
          "gartley",
          "crab",
          "crab",
          "crab",
          "crab",
          "crab",
          "gartley",
          "crab",
          "gartley",
          "bat",
          "bat",
          "butterfly",
          "butterfly",
          "shark",
          "crab",
          "shark",
          "shark",
          "crab",
          "butterfly",
          "gartley",
          "gartley",
          "gartley",
          "shark",
          "butterfly",
          "shark",
          "gartley",
          "butterfly",
          "crab",
          "butterfly",
          "shark",
          "butterfly",
          "gartley",
          "crab",
          "crab",
          "shark",
          "gartley",
          "bat",
          "butterfly",
          "crab",
          "butterfly",
          "butterfly",
          "crab",
          "shark",
          "gartley",
          "butterfly",
          "crab",
          "bat",
          "crab",
          "shark",
          "crab",
          "shark",
          "crab",
          "shark",
          "gartley",
          "butterfly",
          "crab",
          "butterfly",
          "shark",
          "shark"
        ],
        "all_signals": [
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish"
        ],
        "best_pattern": "bat",
        "best_pattern_quality": "strict",
        "best_quality": "medium",
        "best_pattern_score": 0.95,
        "best_completion_status": "forming",
        "nearest_pattern": "gartley",
        "nearest_prz": 64177.42,
        "price_to_prz": -0.02,
        "prz_range": [
          63957.86,
          64396.98
        ],
        "council_relevant_prz_count": 7,
        "directional_influence_prz_count": 7,
        "confirmed_reaction_prz_count": 3,
        "validated_harmonic_tp_count": 3,
        "pattern_candidates": [
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.946,
            "ratio_score": 1.0,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 63493.72,
            "prz_range": [
              63265.14,
              63722.31
            ],
            "prz_width_pct": 0.72,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.08,
            "price_to_prz_pct_raw": -1.0815,
            "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": 63493.72,
              "a_price": 64568.0,
              "tp1_ad_382": 63904.1,
              "tp2_ad_618": 64157.63,
              "tp3_a_or_structure_liquidity": 64568.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4554,
              "ABC": 0.5658
            },
            "x_price": 63136.2,
            "x_idx": 258,
            "x_order": 8,
            "a_price": 64568.0,
            "a_idx": 272,
            "a_order": 8,
            "b_price": 63916.0,
            "b_idx": 280,
            "b_order": 3,
            "c_price": 64284.9,
            "c_idx": 287,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.925,
            "ratio_score": 0.905,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 64286.8,
            "prz_range": [
              64015.23,
              64558.36
            ],
            "prz_width_pct": 0.845,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.15,
            "price_to_prz_pct_raw": 0.1541,
            "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": 64286.8,
              "a_price": 62836.6,
              "tp1_ad_382": 63732.82,
              "tp2_ad_618": 63390.58,
              "tp3_a_or_structure_liquidity": 62836.6,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5129,
              "ABC": 0.5146
            },
            "x_price": 64631.5,
            "x_idx": 204,
            "x_order": 3,
            "a_price": 62836.6,
            "a_idx": 237,
            "a_order": 3,
            "b_price": 63757.2,
            "b_idx": 244,
            "b_order": 3,
            "c_price": 63283.5,
            "c_idx": 247,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.915,
            "ratio_score": 0.927,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 64453.3,
            "prz_range": [
              64015.23,
              64558.36
            ],
            "prz_width_pct": 0.845,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.15,
            "price_to_prz_pct_raw": 0.1541,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 0.763,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "bat",
              "d_price": 64286.8,
              "a_price": 62836.6,
              "tp1_ad_382": 63732.82,
              "tp2_ad_618": 63390.58,
              "tp3_a_or_structure_liquidity": 62836.6,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5129,
              "ABC": 0.5146,
              "BCD": 2.4695,
              "XAD": 0.9007
            },
            "x_price": 64631.5,
            "x_idx": 204,
            "x_order": 3,
            "a_price": 62836.6,
            "a_idx": 237,
            "a_order": 3,
            "b_price": 63757.2,
            "b_idx": 244,
            "b_order": 3,
            "c_price": 63283.5,
            "c_idx": 247,
            "c_order": 3,
            "d_idx": 279
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.895,
            "ratio_score": 0.875,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 64284.9,
            "prz_range": [
              63957.86,
              64396.98
            ],
            "prz_width_pct": 0.684,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.02,
            "price_to_prz_pct_raw": -0.0163,
            "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.735,
                "adverse_move_ratio_ad": 0.347,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 64177.42,
              "a_price": 62836.6,
              "tp1_ad_382": 63665.23,
              "tp2_ad_618": 63348.79,
              "tp3_a_or_structure_liquidity": 62836.6,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5891,
              "ABC": 0.7167,
              "BCD": 1.5158,
              "XAD": 0.8069
            },
            "x_price": 64631.5,
            "x_idx": 204,
            "x_order": 3,
            "a_price": 62836.6,
            "a_idx": 237,
            "a_order": 3,
            "b_price": 63894.0,
            "b_idx": 249,
            "b_order": 8,
            "c_price": 63136.2,
            "c_idx": 258,
            "c_order": 8,
            "d_idx": 287
          },
          {
            "pattern": "butterfly",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.873,
            "ratio_score": 0.8,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 63556.76,
            "prz_range": [
              63283.4,
              63830.12
            ],
            "prz_width_pct": 0.86,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.98,
            "price_to_prz_pct_raw": -0.9833,
            "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": "butterfly",
              "d_price": 63556.76,
              "a_price": 62237.2,
              "tp1_ad_382": 63052.69,
              "tp2_ad_618": 62741.27,
              "tp3_a_or_structure_liquidity": 62237.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7753,
              "ABC": 0.3629
            },
            "x_price": 63088.0,
            "x_idx": 222,
            "x_order": 3,
            "a_price": 62237.2,
            "a_idx": 223,
            "a_order": 8,
            "b_price": 62896.8,
            "b_idx": 227,
            "b_order": 3,
            "c_price": 63136.2,
            "c_idx": 258,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.858,
            "ratio_score": 0.755,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 63697.02,
            "prz_range": [
              63548.92,
              63845.12
            ],
            "prz_width_pct": 0.465,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.76,
            "price_to_prz_pct_raw": -0.7648,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 63697.02,
              "a_price": 64568.0,
              "tp1_ad_382": 64029.73,
              "tp2_ad_618": 64235.28,
              "tp3_a_or_structure_liquidity": 64568.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5767,
              "ABC": 0.6689
            },
            "x_price": 63360.0,
            "x_idx": 252,
            "x_order": 3,
            "a_price": 64568.0,
            "a_idx": 272,
            "a_order": 8,
            "b_price": 63871.3,
            "b_idx": 276,
            "b_order": 8,
            "c_price": 64337.3,
            "c_idx": 283,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "crab",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.856,
            "ratio_score": 0.716,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63837.4,
            "prz_range": [
              63637.98,
              64036.82
            ],
            "prz_width_pct": 0.625,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.55,
            "price_to_prz_pct_raw": -0.546,
            "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": "crab",
              "d_price": 63837.4,
              "a_price": 62237.2,
              "tp1_ad_382": 63226.13,
              "tp2_ad_618": 62848.48,
              "tp3_a_or_structure_liquidity": 62237.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6406,
              "ABC": 0.3629
            },
            "x_price": 63266.8,
            "x_idx": 216,
            "x_order": 3,
            "a_price": 62237.2,
            "a_idx": 223,
            "a_order": 8,
            "b_price": 62896.8,
            "b_idx": 227,
            "b_order": 3,
            "c_price": 63136.2,
            "c_idx": 258,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.95,
            "ratio_score": 1.0,
            "prz_score": 0.965,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 64061.41,
            "prz_range": [
              63730.25,
              64392.56
            ],
            "prz_width_pct": 1.034,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.2,
            "price_to_prz_pct_raw": -0.1971,
            "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": 64061.41,
              "a_price": 62232.1,
              "tp1_ad_382": 63362.61,
              "tp2_ad_618": 62930.9,
              "tp3_a_or_structure_liquidity": 62232.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.491,
              "ABC": 0.4869
            },
            "x_price": 64631.5,
            "x_idx": 204,
            "x_order": 3,
            "a_price": 62232.1,
            "a_idx": 211,
            "a_order": 8,
            "b_price": 63410.3,
            "b_idx": 233,
            "b_order": 8,
            "c_price": 62836.6,
            "c_idx": 237,
            "c_order": 3,
            "d_idx": null
          }
        ],
        "council_relevant_prz": [
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.925,
            "ratio_score": 0.971,
            "prz_score": 0.965,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 64326.0,
            "prz_range": [
              63730.25,
              64392.56
            ],
            "prz_width_pct": 1.034,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.2,
            "price_to_prz_pct_raw": -0.1971,
            "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",
                "initial_PRZ_reaction",
                "PRZ_center_reclaimed_or_rejected"
              ],
              "reaction_score": 0.5,
              "reaction_detail": {
                "reaction_score": 0.5,
                "reaction_move_ratio_ad": 0.217,
                "adverse_move_ratio_ad": 0.116,
                "bars_after_d": 12,
                "reasons": [
                  "initial_PRZ_reaction",
                  "PRZ_center_reclaimed_or_rejected"
                ]
              },
              "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": 64061.41,
              "a_price": 62232.1,
              "tp1_ad_382": 63362.61,
              "tp2_ad_618": 62930.9,
              "tp3_a_or_structure_liquidity": 62232.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.491,
              "ABC": 0.4869,
              "BCD": 2.5961,
              "XAD": 0.8727
            },
            "x_price": 64631.5,
            "x_idx": 204,
            "x_order": 3,
            "a_price": 62232.1,
            "a_idx": 211,
            "a_order": 8,
            "b_price": 63410.3,
            "b_idx": 233,
            "b_order": 8,
            "c_price": 62836.6,
            "c_idx": 237,
            "c_order": 3,
            "d_idx": 266
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.915,
            "ratio_score": 0.927,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 64453.3,
            "prz_range": [
              64015.23,
              64558.36
            ],
            "prz_width_pct": 0.845,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.15,
            "price_to_prz_pct_raw": 0.1541,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 0.763,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "bat",
              "d_price": 64286.8,
              "a_price": 62836.6,
              "tp1_ad_382": 63732.82,
              "tp2_ad_618": 63390.58,
              "tp3_a_or_structure_liquidity": 62836.6,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5129,
              "ABC": 0.5146,
              "BCD": 2.4695,
              "XAD": 0.9007
            },
            "x_price": 64631.5,
            "x_idx": 204,
            "x_order": 3,
            "a_price": 62836.6,
            "a_idx": 237,
            "a_order": 3,
            "b_price": 63757.2,
            "b_idx": 244,
            "b_order": 3,
            "c_price": 63283.5,
            "c_idx": 247,
            "c_order": 3,
            "d_idx": 279
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.895,
            "ratio_score": 0.875,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 64284.9,
            "prz_range": [
              63957.86,
              64396.98
            ],
            "prz_width_pct": 0.684,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.02,
            "price_to_prz_pct_raw": -0.0163,
            "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.735,
                "adverse_move_ratio_ad": 0.347,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 64177.42,
              "a_price": 62836.6,
              "tp1_ad_382": 63665.23,
              "tp2_ad_618": 63348.79,
              "tp3_a_or_structure_liquidity": 62836.6,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5891,
              "ABC": 0.7167,
              "BCD": 1.5158,
              "XAD": 0.8069
            },
            "x_price": 64631.5,
            "x_idx": 204,
            "x_order": 3,
            "a_price": 62836.6,
            "a_idx": 237,
            "a_order": 3,
            "b_price": 63894.0,
            "b_idx": 249,
            "b_order": 8,
            "c_price": 63136.2,
            "c_idx": 258,
            "c_order": 8,
            "d_idx": 287
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.946,
            "ratio_score": 1.0,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 63493.72,
            "prz_range": [
              63265.14,
              63722.31
            ],
            "prz_width_pct": 0.72,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.08,
            "price_to_prz_pct_raw": -1.0815,
            "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": 63493.72,
              "a_price": 64568.0,
              "tp1_ad_382": 63904.1,
              "tp2_ad_618": 64157.63,
              "tp3_a_or_structure_liquidity": 64568.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4554,
              "ABC": 0.5658
            },
            "x_price": 63136.2,
            "x_idx": 258,
            "x_order": 8,
            "a_price": 64568.0,
            "a_idx": 272,
            "a_order": 8,
            "b_price": 63916.0,
            "b_idx": 280,
            "b_order": 3,
            "c_price": 64284.9,
            "c_idx": 287,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.925,
            "ratio_score": 0.905,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 64286.8,
            "prz_range": [
              64015.23,
              64558.36
            ],
            "prz_width_pct": 0.845,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.15,
            "price_to_prz_pct_raw": 0.1541,
            "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": 64286.8,
              "a_price": 62836.6,
              "tp1_ad_382": 63732.82,
              "tp2_ad_618": 63390.58,
              "tp3_a_or_structure_liquidity": 62836.6,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5129,
              "ABC": 0.5146
            },
            "x_price": 64631.5,
            "x_idx": 204,
            "x_order": 3,
            "a_price": 62836.6,
            "a_idx": 237,
            "a_order": 3,
            "b_price": 63757.2,
            "b_idx": 244,
            "b_order": 3,
            "c_price": 63283.5,
            "c_idx": 247,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.873,
            "ratio_score": 0.8,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 63556.76,
            "prz_range": [
              63283.4,
              63830.12
            ],
            "prz_width_pct": 0.86,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.98,
            "price_to_prz_pct_raw": -0.9833,
            "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": "butterfly",
              "d_price": 63556.76,
              "a_price": 62237.2,
              "tp1_ad_382": 63052.69,
              "tp2_ad_618": 62741.27,
              "tp3_a_or_structure_liquidity": 62237.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7753,
              "ABC": 0.3629
            },
            "x_price": 63088.0,
            "x_idx": 222,
            "x_order": 3,
            "a_price": 62237.2,
            "a_idx": 223,
            "a_order": 8,
            "b_price": 62896.8,
            "b_idx": 227,
            "b_order": 3,
            "c_price": 63136.2,
            "c_idx": 258,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "crab",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.856,
            "ratio_score": 0.716,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63837.4,
            "prz_range": [
              63637.98,
              64036.82
            ],
            "prz_width_pct": 0.625,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.55,
            "price_to_prz_pct_raw": -0.546,
            "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": "crab",
              "d_price": 63837.4,
              "a_price": 62237.2,
              "tp1_ad_382": 63226.13,
              "tp2_ad_618": 62848.48,
              "tp3_a_or_structure_liquidity": 62237.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6406,
              "ABC": 0.3629
            },
            "x_price": 63266.8,
            "x_idx": 216,
            "x_order": 3,
            "a_price": 62237.2,
            "a_idx": 223,
            "a_order": 8,
            "b_price": 62896.8,
            "b_idx": 227,
            "b_order": 3,
            "c_price": 63136.2,
            "c_idx": 258,
            "c_order": 8,
            "d_idx": null
          }
        ],
        "report_detail_candidates": [
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.946,
            "ratio_score": 1.0,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 63493.72,
            "prz_range": [
              63265.14,
              63722.31
            ],
            "prz_width_pct": 0.72,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.08,
            "price_to_prz_pct_raw": -1.0815,
            "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": 63493.72,
              "a_price": 64568.0,
              "tp1_ad_382": 63904.1,
              "tp2_ad_618": 64157.63,
              "tp3_a_or_structure_liquidity": 64568.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4554,
              "ABC": 0.5658
            },
            "x_price": 63136.2,
            "x_idx": 258,
            "x_order": 8,
            "a_price": 64568.0,
            "a_idx": 272,
            "a_order": 8,
            "b_price": 63916.0,
            "b_idx": 280,
            "b_order": 3,
            "c_price": 64284.9,
            "c_idx": 287,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.925,
            "ratio_score": 0.905,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 64286.8,
            "prz_range": [
              64015.23,
              64558.36
            ],
            "prz_width_pct": 0.845,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.15,
            "price_to_prz_pct_raw": 0.1541,
            "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": 64286.8,
              "a_price": 62836.6,
              "tp1_ad_382": 63732.82,
              "tp2_ad_618": 63390.58,
              "tp3_a_or_structure_liquidity": 62836.6,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5129,
              "ABC": 0.5146
            },
            "x_price": 64631.5,
            "x_idx": 204,
            "x_order": 3,
            "a_price": 62836.6,
            "a_idx": 237,
            "a_order": 3,
            "b_price": 63757.2,
            "b_idx": 244,
            "b_order": 3,
            "c_price": 63283.5,
            "c_idx": 247,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.915,
            "ratio_score": 0.927,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 64453.3,
            "prz_range": [
              64015.23,
              64558.36
            ],
            "prz_width_pct": 0.845,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.15,
            "price_to_prz_pct_raw": 0.1541,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 0.763,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "bat",
              "d_price": 64286.8,
              "a_price": 62836.6,
              "tp1_ad_382": 63732.82,
              "tp2_ad_618": 63390.58,
              "tp3_a_or_structure_liquidity": 62836.6,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5129,
              "ABC": 0.5146,
              "BCD": 2.4695,
              "XAD": 0.9007
            },
            "x_price": 64631.5,
            "x_idx": 204,
            "x_order": 3,
            "a_price": 62836.6,
            "a_idx": 237,
            "a_order": 3,
            "b_price": 63757.2,
            "b_idx": 244,
            "b_order": 3,
            "c_price": 63283.5,
            "c_idx": 247,
            "c_order": 3,
            "d_idx": 279
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.895,
            "ratio_score": 0.875,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 64284.9,
            "prz_range": [
              63957.86,
              64396.98
            ],
            "prz_width_pct": 0.684,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.02,
            "price_to_prz_pct_raw": -0.0163,
            "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.735,
                "adverse_move_ratio_ad": 0.347,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 64177.42,
              "a_price": 62836.6,
              "tp1_ad_382": 63665.23,
              "tp2_ad_618": 63348.79,
              "tp3_a_or_structure_liquidity": 62836.6,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5891,
              "ABC": 0.7167,
              "BCD": 1.5158,
              "XAD": 0.8069
            },
            "x_price": 64631.5,
            "x_idx": 204,
            "x_order": 3,
            "a_price": 62836.6,
            "a_idx": 237,
            "a_order": 3,
            "b_price": 63894.0,
            "b_idx": 249,
            "b_order": 8,
            "c_price": 63136.2,
            "c_idx": 258,
            "c_order": 8,
            "d_idx": 287
          },
          {
            "pattern": "butterfly",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.873,
            "ratio_score": 0.8,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 63556.76,
            "prz_range": [
              63283.4,
              63830.12
            ],
            "prz_width_pct": 0.86,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.98,
            "price_to_prz_pct_raw": -0.9833,
            "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": "butterfly",
              "d_price": 63556.76,
              "a_price": 62237.2,
              "tp1_ad_382": 63052.69,
              "tp2_ad_618": 62741.27,
              "tp3_a_or_structure_liquidity": 62237.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7753,
              "ABC": 0.3629
            },
            "x_price": 63088.0,
            "x_idx": 222,
            "x_order": 3,
            "a_price": 62237.2,
            "a_idx": 223,
            "a_order": 8,
            "b_price": 62896.8,
            "b_idx": 227,
            "b_order": 3,
            "c_price": 63136.2,
            "c_idx": 258,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.858,
            "ratio_score": 0.755,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 63697.02,
            "prz_range": [
              63548.92,
              63845.12
            ],
            "prz_width_pct": 0.465,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.76,
            "price_to_prz_pct_raw": -0.7648,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 63697.02,
              "a_price": 64568.0,
              "tp1_ad_382": 64029.73,
              "tp2_ad_618": 64235.28,
              "tp3_a_or_structure_liquidity": 64568.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5767,
              "ABC": 0.6689
            },
            "x_price": 63360.0,
            "x_idx": 252,
            "x_order": 3,
            "a_price": 64568.0,
            "a_idx": 272,
            "a_order": 8,
            "b_price": 63871.3,
            "b_idx": 276,
            "b_order": 8,
            "c_price": 64337.3,
            "c_idx": 283,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "crab",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.856,
            "ratio_score": 0.716,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63837.4,
            "prz_range": [
              63637.98,
              64036.82
            ],
            "prz_width_pct": 0.625,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.55,
            "price_to_prz_pct_raw": -0.546,
            "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": "crab",
              "d_price": 63837.4,
              "a_price": 62237.2,
              "tp1_ad_382": 63226.13,
              "tp2_ad_618": 62848.48,
              "tp3_a_or_structure_liquidity": 62237.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6406,
              "ABC": 0.3629
            },
            "x_price": 63266.8,
            "x_idx": 216,
            "x_order": 3,
            "a_price": 62237.2,
            "a_idx": 223,
            "a_order": 8,
            "b_price": 62896.8,
            "b_idx": 227,
            "b_order": 3,
            "c_price": 63136.2,
            "c_idx": 258,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.95,
            "ratio_score": 1.0,
            "prz_score": 0.965,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 64061.41,
            "prz_range": [
              63730.25,
              64392.56
            ],
            "prz_width_pct": 1.034,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.2,
            "price_to_prz_pct_raw": -0.1971,
            "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": 64061.41,
              "a_price": 62232.1,
              "tp1_ad_382": 63362.61,
              "tp2_ad_618": 62930.9,
              "tp3_a_or_structure_liquidity": 62232.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.491,
              "ABC": 0.4869
            },
            "x_price": 64631.5,
            "x_idx": 204,
            "x_order": 3,
            "a_price": 62232.1,
            "a_idx": 211,
            "a_order": 8,
            "b_price": 63410.3,
            "b_idx": 233,
            "b_order": 8,
            "c_price": 62836.6,
            "c_idx": 237,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.925,
            "ratio_score": 0.971,
            "prz_score": 0.965,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 64326.0,
            "prz_range": [
              63730.25,
              64392.56
            ],
            "prz_width_pct": 1.034,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.2,
            "price_to_prz_pct_raw": -0.1971,
            "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",
                "initial_PRZ_reaction",
                "PRZ_center_reclaimed_or_rejected"
              ],
              "reaction_score": 0.5,
              "reaction_detail": {
                "reaction_score": 0.5,
                "reaction_move_ratio_ad": 0.217,
                "adverse_move_ratio_ad": 0.116,
                "bars_after_d": 12,
                "reasons": [
                  "initial_PRZ_reaction",
                  "PRZ_center_reclaimed_or_rejected"
                ]
              },
              "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": 64061.41,
              "a_price": 62232.1,
              "tp1_ad_382": 63362.61,
              "tp2_ad_618": 62930.9,
              "tp3_a_or_structure_liquidity": 62232.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.491,
              "ABC": 0.4869,
              "BCD": 2.5961,
              "XAD": 0.8727
            },
            "x_price": 64631.5,
            "x_idx": 204,
            "x_order": 3,
            "a_price": 62232.1,
            "a_idx": 211,
            "a_order": 8,
            "b_price": 63410.3,
            "b_idx": 233,
            "b_order": 8,
            "c_price": 62836.6,
            "c_idx": 237,
            "c_order": 3,
            "d_idx": 266
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.918,
            "ratio_score": 1.0,
            "prz_score": 0.896,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63733.31,
            "prz_range": [
              63318.68,
              64147.95
            ],
            "prz_width_pct": 1.301,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.71,
            "price_to_prz_pct_raw": -0.7082,
            "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": 63733.31,
              "a_price": 63894.0,
              "tp1_ad_382": 63794.7,
              "tp2_ad_618": 63832.62,
              "tp3_a_or_structure_liquidity": 63894.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4996,
              "ABC": 0.4534
            },
            "x_price": 63283.5,
            "x_idx": 247,
            "x_order": 3,
            "a_price": 63894.0,
            "a_idx": 249,
            "a_order": 8,
            "b_price": 64199.0,
            "b_idx": 270,
            "b_order": 3,
            "c_price": 64337.3,
            "c_idx": 283,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "shark",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.914,
            "ratio_score": 1.0,
            "prz_score": 0.91,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63591.14,
            "prz_range": [
              63194.24,
              63988.04
            ],
            "prz_width_pct": 1.248,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.93,
            "price_to_prz_pct_raw": -0.9297,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "shark",
              "d_price": 63591.14,
              "a_price": 64370.9,
              "tp1_ad_382": 63889.01,
              "tp2_ad_618": 64073.03,
              "tp3_a_or_structure_liquidity": 64370.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4942,
              "ABC": 1.1649
            },
            "x_price": 63360.0,
            "x_idx": 252,
            "x_order": 3,
            "a_price": 64370.9,
            "a_idx": 259,
            "a_order": 8,
            "b_price": 63871.3,
            "b_idx": 276,
            "b_order": 8,
            "c_price": 64453.3,
            "c_idx": 279,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.907,
            "ratio_score": 0.932,
            "prz_score": 0.889,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 64229.46,
            "prz_range": [
              63803.25,
              64655.68
            ],
            "prz_width_pct": 1.327,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.06,
            "price_to_prz_pct_raw": 0.0648,
            "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": 64229.46,
              "a_price": 62272.4,
              "tp1_ad_382": 63481.87,
              "tp2_ad_618": 63020.0,
              "tp3_a_or_structure_liquidity": 62272.4,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6294,
              "ABC": 0.4182
            },
            "x_price": 64631.5,
            "x_idx": 204,
            "x_order": 3,
            "a_price": 62272.4,
            "a_idx": 229,
            "a_order": 5,
            "b_price": 63757.2,
            "b_idx": 244,
            "b_order": 3,
            "c_price": 63136.2,
            "c_idx": 258,
            "c_order": 8,
            "d_idx": null
          }
        ],
        "actionable_patterns_list": [
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.946,
            "prz_proximity": "nearby",
            "prz_range": [
              63265.14,
              63722.31
            ],
            "prz_reversal_direction": "up",
            "price_to_prz_pct": -1.08,
            "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": 63493.72,
              "a_price": 64568.0,
              "tp1_ad_382": 63904.1,
              "tp2_ad_618": 64157.63,
              "tp3_a_or_structure_liquidity": 64568.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "BAT FORMING HIGH PRZ $63,265.14-$63,722.31: expected reversal UP if price reacts in zone"
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.925,
            "prz_proximity": "active",
            "prz_range": [
              63730.25,
              64392.56
            ],
            "prz_reversal_direction": "down",
            "price_to_prz_pct": -0.2,
            "high_confluence_prz": true,
            "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",
                "initial_PRZ_reaction",
                "PRZ_center_reclaimed_or_rejected"
              ],
              "reaction_score": 0.5,
              "reaction_detail": {
                "reaction_score": 0.5,
                "reaction_move_ratio_ad": 0.217,
                "adverse_move_ratio_ad": 0.116,
                "bars_after_d": 12,
                "reasons": [
                  "initial_PRZ_reaction",
                  "PRZ_center_reclaimed_or_rejected"
                ]
              },
              "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": 64061.41,
              "a_price": 62232.1,
              "tp1_ad_382": 63362.61,
              "tp2_ad_618": 62930.9,
              "tp3_a_or_structure_liquidity": 62232.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "BAT COMPLETED MEDIUM PRZ $63,730.25-$64,392.56: expected reversal DOWN if price reacts in zone"
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.925,
            "prz_proximity": "active",
            "prz_range": [
              64015.23,
              64558.36
            ],
            "prz_reversal_direction": "down",
            "price_to_prz_pct": 0.15,
            "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": "bearish",
              "source": "bat",
              "d_price": 64286.8,
              "a_price": 62836.6,
              "tp1_ad_382": 63732.82,
              "tp2_ad_618": 63390.58,
              "tp3_a_or_structure_liquidity": 62836.6,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "BAT FORMING HIGH PRZ $64,015.23-$64,558.36: expected reversal DOWN if price reacts in zone"
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.915,
            "prz_proximity": "active",
            "prz_range": [
              64015.23,
              64558.36
            ],
            "prz_reversal_direction": "down",
            "price_to_prz_pct": 0.15,
            "high_confluence_prz": true,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 0.763,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "bat",
              "d_price": 64286.8,
              "a_price": 62836.6,
              "tp1_ad_382": 63732.82,
              "tp2_ad_618": 63390.58,
              "tp3_a_or_structure_liquidity": 62836.6,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "BAT COMPLETED HIGH PRZ $64,015.23-$64,558.36: expected reversal DOWN if price reacts in zone"
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.895,
            "prz_proximity": "active",
            "prz_range": [
              63957.86,
              64396.98
            ],
            "prz_reversal_direction": "down",
            "price_to_prz_pct": -0.02,
            "high_confluence_prz": true,
            "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.735,
                "adverse_move_ratio_ad": 0.347,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 64177.42,
              "a_price": 62836.6,
              "tp1_ad_382": 63665.23,
              "tp2_ad_618": 63348.79,
              "tp3_a_or_structure_liquidity": 62836.6,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "GARTLEY COMPLETED HIGH PRZ $63,957.86-$64,396.98: expected reversal DOWN if price reacts in zone"
          },
          {
            "pattern": "butterfly",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.873,
            "prz_proximity": "nearby",
            "prz_range": [
              63283.4,
              63830.12
            ],
            "prz_reversal_direction": "down",
            "price_to_prz_pct": -0.98,
            "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": "bearish",
              "source": "butterfly",
              "d_price": 63556.76,
              "a_price": 62237.2,
              "tp1_ad_382": 63052.69,
              "tp2_ad_618": 62741.27,
              "tp3_a_or_structure_liquidity": 62237.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "BUTTERFLY FORMING HIGH PRZ $63,283.40-$63,830.12: expected reversal DOWN if price reacts in zone"
          }
        ],
        "best_council_prz": {
          "pattern": "bat",
          "signal": "bullish",
          "completion_status": "forming",
          "pattern_quality": "strict",
          "quality": "high",
          "pattern_score": 0.946,
          "ratio_score": 1.0,
          "prz_score": 1.0,
          "prz_proximity": "nearby",
          "action_status": "nearby",
          "high_confluence_prz": true,
          "d_price": 63493.72,
          "prz_range": [
            63265.14,
            63722.31
          ],
          "prz_width_pct": 0.72,
          "prz_confluence_count": 3,
          "prz_fib_families": [
            "ABCD",
            "BC_EXT",
            "XAD"
          ],
          "price_to_prz_pct": -1.08,
          "price_to_prz_pct_raw": -1.0815,
          "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": 63493.72,
            "a_price": 64568.0,
            "tp1_ad_382": 63904.1,
            "tp2_ad_618": 64157.63,
            "tp3_a_or_structure_liquidity": 64568.0,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          "ratios": {
            "XAB": 0.4554,
            "ABC": 0.5658
          },
          "x_price": 63136.2,
          "x_idx": 258,
          "x_order": 8,
          "a_price": 64568.0,
          "a_idx": 272,
          "a_order": 8,
          "b_price": 63916.0,
          "b_idx": 280,
          "b_order": 3,
          "c_price": 64284.9,
          "c_idx": 287,
          "c_order": 3,
          "d_idx": null
        },
        "best_tp_ladder": {
          "direction": "bullish",
          "source": "bat",
          "d_price": 63493.72,
          "a_price": 64568.0,
          "tp1_ad_382": 63904.1,
          "tp2_ad_618": 64157.63,
          "tp3_a_or_structure_liquidity": 64568.0,
          "note": "Use as strong TP ladder context; not standalone path authority."
        },
        "best_confirmed_tp_ladder": {
          "direction": "bearish",
          "source": "bat",
          "d_price": 64286.8,
          "a_price": 62836.6,
          "tp1_ad_382": 63732.82,
          "tp2_ad_618": 63390.58,
          "tp3_a_or_structure_liquidity": 62836.6,
          "note": "Use as strong TP ladder context; not standalone path authority."
        },
        "tp_ladder": [
          {
            "direction": "bullish",
            "source": "bat",
            "d_price": 63493.72,
            "a_price": 64568.0,
            "tp1_ad_382": 63904.1,
            "tp2_ad_618": 64157.63,
            "tp3_a_or_structure_liquidity": 64568.0,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bearish",
            "source": "bat",
            "d_price": 64061.41,
            "a_price": 62232.1,
            "tp1_ad_382": 63362.61,
            "tp2_ad_618": 62930.9,
            "tp3_a_or_structure_liquidity": 62232.1,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bearish",
            "source": "bat",
            "d_price": 64286.8,
            "a_price": 62836.6,
            "tp1_ad_382": 63732.82,
            "tp2_ad_618": 63390.58,
            "tp3_a_or_structure_liquidity": 62836.6,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bearish",
            "source": "bat",
            "d_price": 64286.8,
            "a_price": 62836.6,
            "tp1_ad_382": 63732.82,
            "tp2_ad_618": 63390.58,
            "tp3_a_or_structure_liquidity": 62836.6,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bearish",
            "source": "gartley",
            "d_price": 64177.42,
            "a_price": 62836.6,
            "tp1_ad_382": 63665.23,
            "tp2_ad_618": 63348.79,
            "tp3_a_or_structure_liquidity": 62836.6,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bearish",
            "source": "butterfly",
            "d_price": 63556.76,
            "a_price": 62237.2,
            "tp1_ad_382": 63052.69,
            "tp2_ad_618": 62741.27,
            "tp3_a_or_structure_liquidity": 62237.2,
            "note": "Use as strong TP ladder context; not standalone path authority."
          }
        ],
        "validated_tp_ladder": [
          {
            "direction": "bearish",
            "source": "bat",
            "d_price": 64061.41,
            "a_price": 62232.1,
            "tp1_ad_382": 63362.61,
            "tp2_ad_618": 62930.9,
            "tp3_a_or_structure_liquidity": 62232.1,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bearish",
            "source": "bat",
            "d_price": 64286.8,
            "a_price": 62836.6,
            "tp1_ad_382": 63732.82,
            "tp2_ad_618": 63390.58,
            "tp3_a_or_structure_liquidity": 62836.6,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bearish",
            "source": "gartley",
            "d_price": 64177.42,
            "a_price": 62836.6,
            "tp1_ad_382": 63665.23,
            "tp2_ad_618": 63348.79,
            "tp3_a_or_structure_liquidity": 62836.6,
            "note": "Use as strong TP ladder context; not standalone path authority."
          }
        ],
        "harmonic_governance": {
          "role": "PRZ reaction + TP ladder confluence, not standalone path engine",
          "pre_confirmation_weight_range": [
            0.25,
            0.35
          ],
          "post_confirmation_vote_weight_range": [
            0.5,
            0.6
          ],
          "standalone_path_override_allowed": false,
          "opposes_core_path_policy": "branch/reversal-risk/reaction-zone unless lower-TF structure and derivatives also confirm",
          "aligns_with_core_path_policy": "modest confidence lift plus strong TP ladder influence"
        },
        "execution_readiness": "ready",
        "directional_scores": {
          "bullish": 0.14,
          "bearish": 2.045
        },
        "directional_score_total": 2.185,
        "directional_dominance": 0.872
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.66,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.74,\n  \"setup_signals\": [\n    \"현재가 $64,187.90가 완료형 bearish Gartley 고컨플루언스 PRZ $63,957.86-$64,396.98 내부에 있으며, D값 $64,177.42와 거의 동일한 구간에서 반응 중\",\n    \"완료형 bearish Bat 고컨플루언스 PRZ $64,015.23-$64,558.36에서 PRZ 터치·방어·AD 0.382 반응 도달이 확인됨, reaction_score 1.0\",\n    \"완료형 bearish Gartley는 XAD 0.8069, BCD 1.5158, PRZ confluence 3개(ABCD·BC_EXT·XAD)로 구성되며 reaction_score 0.9\",\n    \"검증된 bearish TP ladder가 $63,732.82, $63,665.23, $63,390.58, $63,348.79로 겹쳐 단기 하방 자석 구간 형성\",\n    \"harmonic directional score가 bullish 0.14 대비 bearish 2.045로 우세하며 directional_dominance 0.872\"\n  ],\n  \"reasoning\": \"구조 관점에서는 BOS/CHoCH/명확한 구조적 수용 데이터가 없으므로 structure_bias는 중립으로 둔다. 다만 셋업 관점에서는 현재가 $64,187.90가 bearish Gartley PRZ $63,957.86-$64,396.98 및 bearish Bat PRZ $64,015.23-$64,558.36에 겹쳐 있고, 두 완료 패턴 모두 PRZ 진입 후 거부 반응이 확인되어 하방 반응 셋업이 우세하다. 특히 완료형 Bat는 reaction_score 1.0, 완료형 Gartley는 reaction_score 0.9이며, 검증된 하방 TP가 $63,732.82-$63,665.23 1차, $63,390.58-$63,348.79 2차로 정렬된다. 단, harmonic governance상 이는 독립적인 추세 전환 엔진이 아니므로 $64,558.36-$64,655.68 상단을 회복·수용하면 bearish PRZ 방어 실패로 해석해야 한다.\",\n  \"key_levels\": {\n    \"support\": [\n      63732.82,\n      63665.23,\n      63390.58,\n      63348.79,\n      62836.6,\n      62232.1\n    ],\n    \"resistance\": [\n      64396.98,\n      64558.36,\n      64655.68,\n      64568.0\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$64,655.68\",\n  \"risk_scenario\": \"가격이 $64,558.36 상단을 돌파하고 특히 $64,655.68 위에서 1시간봉 수용을 만들면 bearish Bat/Gartley PRZ 방어가 실패한 것으로 보며, 이 경우 $64,568.00-$64,655.68 재시험 후 상방 유동성 탐색으로 전환될 수 있다. 반대로 $63,957.86 아래로 이탈하면 하방 TP ladder인 $63,732.82, $63,390.58, $62,836.60 순으로 반응을 추적한다.\",\n  \"data_quality\": \"high\"\n}"
    }
  },
  "chairman_synthesis": {
    "overall_signal": "bullish",
    "overall_confidence": 0.56,
    "execution_setup": {
      "setup_bias": "bullish",
      "setup_strength": 0.62,
      "active_setups": [
        "ICT bullish OB 후보 $63,220.00-$63,775.30가 활성 상태이며, Wyckoff LPS $63,833.40와 근접",
        "Fibonacci 0.5 되돌림 $64,004.00 및 피보나치 클러스터 $64,055.56이 EMA20 $64,053.73, EMA120 $64,002.22와 중첩",
        "현재가 $64,187.90는 Fibonacci 0.382 $64,189.02를 거의 정확히 테스트 중이며, 단기 반응 구간에 위치",
        "Wyckoff 구조상 Spring $63,283.50 및 Terminal Spring $63,136.20 이후 SOS $64,568.00, LPS $63,833.40가 형성된 Phase D 누적 후보",
        "반대 조건: Harmonic bearish Gartley PRZ $63,957.86-$64,396.98 및 bearish Bat PRZ $64,015.23-$64,558.36 내부에서 확인된 하방 반응",
        "반대 조건: Derivatives에서 CVD 증가 +$1,967.15 대비 가격 정체, 롱 계정 비율 0.625 및 롱 과밀 신호가 존재"
      ],
      "setup_vs_structure": "구조적 해석은 Wyckoff 누적 Phase D를 중심으로 약한 bullish이나, 실행 구간은 양방향 압력이 겹친 상태다. ICT·Fibonacci·Wyckoff의 눌림 매수 셋업이 3개 이상 확인되지만, 현재 가격대는 harmonic bearish PRZ와 파생시장 롱 과밀 조건도 동시에 포함한다."
    },
    "signal_breakdown": {
      "bullish_count": 1,
      "bearish_count": 1,
      "neutral_count": 4
    },
    "key_levels": {
      "support": [
        64055.56,
        64053.73,
        64004.0,
        63962.1,
        63833.4,
        63818.98,
        63775.3,
        63220.0,
        63136.2,
        62232.1
      ],
      "resistance": [
        64396.98,
        64558.36,
        64568.0,
        64738.0,
        64743.75,
        64788.0,
        64823.4,
        65328.8,
        65607.1,
        65996.8,
        67255.4
      ]
    },
    "confluences": [
      "EMA20 $64,053.73, EMA120 $64,002.22, Fibonacci 0.5 $64,004.00, 피보나치 클러스터 $64,055.56가 $64,000-$64,055 지지권으로 중첩된다.",
      "ICT EQ $63,962.10, Fibonacci 0.5 $64,004.00, Harmonic bearish Gartley PRZ 하단 $63,957.86가 $63,960-$64,005 부근의 구조적 분기선으로 겹친다.",
      "Wyckoff LPS $63,833.40, Fibonacci 0.618 $63,818.98, ICT bullish OB 상단 $63,775.30이 $63,775-$63,833 지지·반응 구간으로 수렴한다.",
      "ICT bullish OB $63,220.00-$63,775.30와 Wyckoff Spring $63,283.50, Terminal Spring $63,136.20가 $63,136-$63,283 구조 저점 구간에서 강한 하단 기준을 형성한다.",
      "Wyckoff SOS $64,568.00, ICT previous day high $64,568.00, Harmonic bearish Bat PRZ 상단 $64,558.36가 $64,558-$64,568 저항·검증 구간으로 일치한다.",
      "Fibonacci $64,788.00, ICT range high $64,788.00, Candlestick 7일 EQ 인근 저항 $64,743.75가 $64,744-$64,788 상단 수용 여부의 핵심 구간으로 중첩된다."
    ],
    "conflicts": [
      "Wyckoff는 Spring $63,283.50 및 Terminal Spring $63,136.20 이후 SOS $64,568.00, LPS $63,833.40가 형성된 누적 Phase D 구조로 bullish를 제시하지만, ICT는 최근 BOS_bearish $65,607.10 및 $65,328.80 연속 발생으로 구조 bias를 bearish로 둔다.",
      "Fibonacci와 ICT는 $64,000-$63,775 구간의 눌림 지지 셋업을 강조하지만, Harmonic은 현재가 $64,187.90가 bearish Gartley/Bat PRZ 내부이며 확인된 하방 반응이 있다고 평가한다.",
      "Wyckoff의 누적 regime 적합도는 높지만, Derivatives는 CVD 상승 대비 가격 정체와 롱 과밀을 근거로 단기 흡수 및 레버리지 취약성을 경고한다.",
      "Candlestick은 EMA 클러스터 위 지지는 인정하지만 최근 패턴 품질이 후보 수준이고 고거래량 확인이 없어 구조 확정에는 중립적이다."
    ],
    "executive_summary": "현재 BTC/USDT 1시간 구조는 Wyckoff 기준으로 SC $63,650.00, AR $65,996.80 이후 Spring $63,283.50 및 Terminal Spring $63,136.20을 거친 누적 Phase D 후보이며, 최근 LPS $63,833.40 위에서 가격이 유지되고 있어 구조적 bias는 약한 bullish로 평가한다. 다만 현재가 $64,187.90는 SOS $64,568.00 및 메인 레인지 EQ $64,823.40 아래에 있어 Phase D 내부의 검증 구간이지, 아직 상단 수용이 완료된 구조는 아니다. $64,000-$64,055는 EMA와 Fibonacci가 겹친 핵심 중간 지지이며, $64,558-$64,568 및 $64,744-$64,788은 SOS·range high·피보나치 저항이 겹친 상단 구조 검증대다. 구조 리스크는 ICT의 연속 bearish BOS $65,607.10/$65,328.80, Harmonic bearish PRZ $63,957.86-$64,558.36, 파생시장 롱 과밀 및 CVD 흡수 조건으로 요약된다. 구조적 무효화는 $63,136.20 하방 수용이며, $62,232.10 이탈은 누적 해석의 중대한 실패 조건이다.",
    "raw_llm_response": "{\n  \"overall_signal\": \"bullish\",\n  \"overall_confidence\": 0.56,\n  \"execution_setup\": {\n    \"setup_bias\": \"bullish\",\n    \"setup_strength\": 0.62,\n    \"active_setups\": [\n      \"ICT bullish OB 후보 $63,220.00-$63,775.30가 활성 상태이며, Wyckoff LPS $63,833.40와 근접\",\n      \"Fibonacci 0.5 되돌림 $64,004.00 및 피보나치 클러스터 $64,055.56이 EMA20 $64,053.73, EMA120 $64,002.22와 중첩\",\n      \"현재가 $64,187.90는 Fibonacci 0.382 $64,189.02를 거의 정확히 테스트 중이며, 단기 반응 구간에 위치\",\n      \"Wyckoff 구조상 Spring $63,283.50 및 Terminal Spring $63,136.20 이후 SOS $64,568.00, LPS $63,833.40가 형성된 Phase D 누적 후보\",\n      \"반대 조건: Harmonic bearish Gartley PRZ $63,957.86-$64,396.98 및 bearish Bat PRZ $64,015.23-$64,558.36 내부에서 확인된 하방 반응\",\n      \"반대 조건: Derivatives에서 CVD 증가 +$1,967.15 대비 가격 정체, 롱 계정 비율 0.625 및 롱 과밀 신호가 존재\"\n    ],\n    \"setup_vs_structure\": \"구조적 해석은 Wyckoff 누적 Phase D를 중심으로 약한 bullish이나, 실행 구간은 양방향 압력이 겹친 상태다. ICT·Fibonacci·Wyckoff의 눌림 매수 셋업이 3개 이상 확인되지만, 현재 가격대는 harmonic bearish PRZ와 파생시장 롱 과밀 조건도 동시에 포함한다.\"\n  },\n  \"signal_breakdown\": {\n    \"bullish_count\": 1,\n    \"bearish_count\": 1,\n    \"neutral_count\": 4\n  },\n  \"key_levels\": {\n    \"support\": [\n      64055.56,\n      64053.73,\n      64004.0,\n      63962.1,\n      63833.4,\n      63818.98,\n      63775.3,\n      63220.0,\n      63136.2,\n      62232.1\n    ],\n    \"resistance\": [\n      64396.98,\n      64558.36,\n      64568.0,\n      64738.0,\n      64743.75,\n      64788.0,\n      64823.4,\n      65328.8,\n      65607.1,\n      65996.8,\n      67255.4\n    ]\n  },\n  \"confluences\": [\n    \"EMA20 $64,053.73, EMA120 $64,002.22, Fibonacci 0.5 $64,004.00, 피보나치 클러스터 $64,055.56가 $64,000-$64,055 지지권으로 중첩된다.\",\n    \"ICT EQ $63,962.10, Fibonacci 0.5 $64,004.00, Harmonic bearish Gartley PRZ 하단 $63,957.86가 $63,960-$64,005 부근의 구조적 분기선으로 겹친다.\",\n    \"Wyckoff LPS $63,833.40, Fibonacci 0.618 $63,818.98, ICT bullish OB 상단 $63,775.30이 $63,775-$63,833 지지·반응 구간으로 수렴한다.\",\n    \"ICT bullish OB $63,220.00-$63,775.30와 Wyckoff Spring $63,283.50, Terminal Spring $63,136.20가 $63,136-$63,283 구조 저점 구간에서 강한 하단 기준을 형성한다.\",\n    \"Wyckoff SOS $64,568.00, ICT previous day high $64,568.00, Harmonic bearish Bat PRZ 상단 $64,558.36가 $64,558-$64,568 저항·검증 구간으로 일치한다.\",\n    \"Fibonacci $64,788.00, ICT range high $64,788.00, Candlestick 7일 EQ 인근 저항 $64,743.75가 $64,744-$64,788 상단 수용 여부의 핵심 구간으로 중첩된다.\"\n  ],\n  \"conflicts\": [\n    \"Wyckoff는 Spring $63,283.50 및 Terminal Spring $63,136.20 이후 SOS $64,568.00, LPS $63,833.40가 형성된 누적 Phase D 구조로 bullish를 제시하지만, ICT는 최근 BOS_bearish $65,607.10 및 $65,328.80 연속 발생으로 구조 bias를 bearish로 둔다.\",\n    \"Fibonacci와 ICT는 $64,000-$63,775 구간의 눌림 지지 셋업을 강조하지만, Harmonic은 현재가 $64,187.90가 bearish Gartley/Bat PRZ 내부이며 확인된 하방 반응이 있다고 평가한다.\",\n    \"Wyckoff의 누적 regime 적합도는 높지만, Derivatives는 CVD 상승 대비 가격 정체와 롱 과밀을 근거로 단기 흡수 및 레버리지 취약성을 경고한다.\",\n    \"Candlestick은 EMA 클러스터 위 지지는 인정하지만 최근 패턴 품질이 후보 수준이고 고거래량 확인이 없어 구조 확정에는 중립적이다.\"\n  ],\n  \"highest_conviction_analyst\": \"Wyckoff Expert — regime_fitness 0.963, acc_score 96.2로 누적 구조 판정의 정량 강도가 가장 높고, SC $63,650.00 → AR $65,996.80 → Spring $63,283.50 → Terminal Spring $63,136.20 → SOS $64,568.00 → LPS $63,833.40의 단계적 구조를 제시한다. 단, distribution 점수도 높아 과도한 확정 해석보다는 '누적 우위의 Phase D 후보'로 제한해 해석해야 한다.\",\n  \"invalidation_level\": \"$63,136.20 아래에서 1시간봉 수용이 발생하면 Wyckoff Terminal Spring 및 ICT range low가 훼손되어 현재 bullish 구조 해석이 약화된다. 더 깊게는 7일 저점 $62,232.10 이탈 시 누적 구조 실패로 본다.\",\n  \"executive_summary\": \"현재 BTC/USDT 1시간 구조는 Wyckoff 기준으로 SC $63,650.00, AR $65,996.80 이후 Spring $63,283.50 및 Terminal Spring $63,136.20을 거친 누적 Phase D 후보이며, 최근 LPS $63,833.40 위에서 가격이 유지되고 있어 구조적 bias는 약한 bullish로 평가한다. 다만 현재가 $64,187.90는 SOS $64,568.00 및 메인 레인지 EQ $64,823.40 아래에 있어 Phase D 내부의 검증 구간이지, 아직 상단 수용이 완료된 구조는 아니다. $64,000-$64,055는 EMA와 Fibonacci가 겹친 핵심 중간 지지이며, $64,558-$64,568 및 $64,744-$64,788은 SOS·range high·피보나치 저항이 겹친 상단 구조 검증대다. 구조 리스크는 ICT의 연속 bearish BOS $65,607.10/$65,328.80, Harmonic bearish PRZ $63,957.86-$64,558.36, 파생시장 롱 과밀 및 CVD 흡수 조건으로 요약된다. 구조적 무효화는 $63,136.20 하방 수용이며, $62,232.10 이탈은 누적 해석의 중대한 실패 조건이다.\"\n}"
  },
  "overall_signal": "bullish",
  "overall_confidence": 0.56,
  "operating_path": {
    "path_type": "complex",
    "confidence": 0.55,
    "waypoints": [
      {
        "seq": 1,
        "price": 64055.56,
        "type": "support_test",
        "source": "Fibonacci (strict 0.5 클러스터 score 0.85), Candlestick (EMA20 $64,053.73 / EMA120 $64,002.22), Chairman 핵심 중간 지지, WP1 후보표 1순위",
        "description": "현재가 $64,187.90는 Fibonacci 0.382 $64,189.02와 거의 일치하고 harmonic bearish Gartley($63,957.86-$64,396.98)·Bat($64,015.23-$64,558.36) PRZ 하단에서 확정 거부 반응(reaction_score 1.0)이 진행 중이다. 즉각 경로는 EMA20 $64,053.73·EMA120 $64,002.22·Fibonacci 0.5 $64,004.00·피보나치 클러스터 $64,055.56가 중첩된 strict 등급(0.85) 핵심 지지로의 눌림이다. 후보표상 가장 가깝고(0.21%) 품질이 가장 높은 1차 반응 지지로 작동한다.",
        "est_hours": 2,
        "turning_zone": [
          63940.0,
          64055.56
        ],
        "likely_wick": 64000.0,
        "rejection_confirm": 64189.02,
        "invalid_overshoot": 63833.4,
        "calibration_reasoning": "EMA20·피보나치 클러스터 $64,055.56(ret_0.5×2, ret_0.382) 상단을 base로, 바로 아래 EMA120 $64,002.22·Fib0.5 $64,004·라운드 $64,000 합류대를 likely_wick로 잡고, Chairman 지지 $63,962.1을 소폭 하회하는 $63,940까지(0.30×ATR)를 zone으로 설정했다. 1차 반등 확인은 Fib0.382/현재가 $64,189 재탈환, 무효화는 Wyckoff LPS $63,833.40 이탈(→2번 스윕 진행)이다."
      },
      {
        "seq": 2,
        "price": 63732.0,
        "type": "liquidity_sweep",
        "source": "Harmonic (확정 1차 TP $63,732.82, reaction_score 1.0), ICT (bullish OB 상단 $63,775.30 매수 선호 존), Wyckoff (LPS $63,833.40), Fibonacci (0.618 $63,818.98), Derivatives (롱 과밀 0.959 청산 자석)",
        "description": "파생 롱 계정 과밀(account_long_crowding 0.959)과 CVD 흡수(divergence 0.85, 가격 정체)로 $64,055 지지가 일시 이탈되며, ICT bullish OB 상단 $63,775.30·Wyckoff LPS $63,833.40·Fibonacci 0.618 $63,818.98 클러스터 하단의 롱 손절 유동성을 sweep한다. 도달점 $63,732는 harmonic 확정 하방 TP1 $63,732.82(reaction_score 1.0, 파생 청산 방향과 일치)와 정렬된다. ICT가 명시적으로 선호하는 OB 재방문 매수 존이자 경로의 저점이며, 핵심 롱 진입 구간이다.",
        "est_hours": 8,
        "turning_zone": [
          63665.23,
          63775.3
        ],
        "likely_wick": 63700.0,
        "rejection_confirm": 63833.4,
        "invalid_overshoot": 63555.55,
        "calibration_reasoning": "harmonic 확정 TP1 AD0.382 $63,732.82(CONFIRMED_REACTION·경로 하방과 정렬)를 base로, ICT bullish OB 상단 $63,775.30을 zone 상단, gartley 확정 TP1 $63,665.23·Fib 합류 $63,687.26을 zone 하단(스윕 오버슈트)으로 두었다. 롱 손절 유동성을 grab하는 라운드 $63,700을 likely_wick, 스윕 반전 확인은 Fib0.618/LPS $63,833.40 재탈환, 무효화는 Fib 지지 $63,555.55 이탈(harmonic TP2 $63,390 방향)이다."
      },
      {
        "seq": 3,
        "price": 64568.0,
        "type": "resistance_test",
        "source": "Wyckoff (SOS $64,568.00 재탈환 목표), ICT (이전 일봉 고가 $64,568.00), Harmonic (Bat PRZ 상단 $64,558.36 — 재확보 시 bearish 방어 실패)",
        "description": "buy zone 강세 반응으로 Wyckoff SOS $64,568.00·ICT 이전 일봉 고가 $64,568.00·harmonic Bat PRZ 상단 $64,558.36이 겹친 상단 검증대를 재테스트한다. 재확보 시 harmonic bearish PRZ 방어 실패이자 Wyckoff Phase D 누적 진행 확인을 의미한다. 다만 레인지 EQ $64,823.40 및 range high $64,788 아래라 상단 수용은 미검증이며, 본 경로의 24시간 상단 한계로 본다.",
        "est_hours": 19,
        "turning_zone": [
          64568.0,
          64788.0
        ],
        "likely_wick": 64600.0,
        "rejection_confirm": 64396.98,
        "invalid_overshoot": 64823.4,
        "calibration_reasoning": "Wyckoff SOS·ICT 이전 일봉 고가·Bat PRZ 상단 $64,558.36 삼중 합류 $64,568을 base로, 터미널 waypoint라 range high $64,788(Fib 저항)까지 0.57×ATR 폭의 넓은 zone을 설정했다. 이전 일봉 고가 위 유동성을 grab하는 라운드 $64,600을 likely_wick, 거부 확인은 harmonic bearish Gartley PRZ $64,396.98 이탈, 무효화는 range EQ $64,823.40 상방 수용(상단 한계 돌파)이다."
      }
    ],
    "period_extremes": {
      "4h": {
        "expected_high": 64210.0,
        "expected_low": 63940.0,
        "high_first": true
      },
      "8h": {
        "expected_high": 64210.0,
        "expected_low": 63732.0,
        "high_first": true
      },
      "24h": {
        "expected_high": 64600.0,
        "expected_low": 63732.0,
        "high_first": false
      }
    },
    "triggers": {
      "bullish": {
        "price": 64788.0,
        "description": "범위 고가 $64,788(Fibonacci·ICT range high)·7일 EQ $64,743.75 위로 수용(1시간 종가) 시 harmonic bearish PRZ 무효화 및 Wyckoff 상단 돌파로 해석되어 $65,214.50 → $65,328.80 확장이 개방된다."
      },
      "bearish": {
        "price": 63650.0,
        "description": "Wyckoff SC $63,650.00 하방 수용(1시간 종가) 시 $63,732-$63,833 buy zone 및 harmonic TP1 sweep 매수가 실패 확정되어 Wyckoff Spring $63,283.50 → Terminal Spring $63,136.20로의 하방 가속이 열린다."
      }
    },
    "scenario_invalidation": 63136.2,
    "raw_llm_response": "```json\n{\n  \"path_type\": \"complex\",\n  \"confidence\": 0.55,\n  \"waypoints\": [\n    {\n      \"seq\": 1,\n      \"price\": 64055.56,\n      \"type\": \"support_test\",\n      \"source\": \"Fibonacci (strict 0.5 클러스터 score 0.85), Candlestick (EMA20 $64,053.73 / EMA120 $64,002.22), Chairman 핵심 중간 지지, WP1 후보표 1순위\",\n      \"description\": \"현재가 $64,187.90는 Fibonacci 0.382 $64,189.02와 거의 일치하고 harmonic bearish Gartley($63,957.86-$64,396.98)·Bat($64,015.23-$64,558.36) PRZ 하단에서 확정 거부 반응(reaction_score 1.0)이 진행 중이다. 즉각 경로는 EMA20 $64,053.73·EMA120 $64,002.22·Fibonacci 0.5 $64,004.00·피보나치 클러스터 $64,055.56가 중첩된 strict 등급(0.85) 핵심 지지로의 눌림이다. 후보표상 가장 가깝고(0.21%) 품질이 가장 높은 1차 반응 지지로 작동한다.\",\n      \"est_hours\": 2\n    },\n    {\n      \"seq\": 2,\n      \"price\": 63732.0,\n      \"type\": \"liquidity_sweep\",\n      \"source\": \"Harmonic (확정 1차 TP $63,732.82, reaction_score 1.0), ICT (bullish OB 상단 $63,775.30 매수 선호 존), Wyckoff (LPS $63,833.40), Fibonacci (0.618 $63,818.98), Derivatives (롱 과밀 0.959 청산 자석)\",\n      \"description\": \"파생 롱 계정 과밀(account_long_crowding 0.959)과 CVD 흡수(divergence 0.85, 가격 정체)로 $64,055 지지가 일시 이탈되며, ICT bullish OB 상단 $63,775.30·Wyckoff LPS $63,833.40·Fibonacci 0.618 $63,818.98 클러스터 하단의 롱 손절 유동성을 sweep한다. 도달점 $63,732는 harmonic 확정 하방 TP1 $63,732.82(reaction_score 1.0, 파생 청산 방향과 일치)와 정렬된다. ICT가 명시적으로 선호하는 OB 재방문 매수 존이자 경로의 저점이며, 핵심 롱 진입 구간이다.\",\n      \"est_hours\": 8\n    },\n    {\n      \"seq\": 3,\n      \"price\": 64568.0,\n      \"type\": \"resistance_test\",\n      \"source\": \"Wyckoff (SOS $64,568.00 재탈환 목표), ICT (이전 일봉 고가 $64,568.00), Harmonic (Bat PRZ 상단 $64,558.36 — 재확보 시 bearish 방어 실패)\",\n      \"description\": \"buy zone 강세 반응으로 Wyckoff SOS $64,568.00·ICT 이전 일봉 고가 $64,568.00·harmonic Bat PRZ 상단 $64,558.36이 겹친 상단 검증대를 재테스트한다. 재확보 시 harmonic bearish PRZ 방어 실패이자 Wyckoff Phase D 누적 진행 확인을 의미한다. 다만 레인지 EQ $64,823.40 및 range high $64,788 아래라 상단 수용은 미검증이며, 본 경로의 24시간 상단 한계로 본다.\",\n      \"est_hours\": 19\n    }\n  ],\n  \"period_extremes\": {\n    \"4h\":  {\"expected_high\": 64210.0, \"expected_low\": 63940.0, \"high_first\": true},\n    \"8h\":  {\"expected_high\": 64210.0, \"expected_low\": 63732.0, \"high_first\": true},\n    \"24h\": {\"expected_high\": 64600.0, \"expected_low\": 63732.0, \"high_first\": false}\n  },\n  \"triggers\": {\n    \"bullish\": {\"price\": 64788.0, \"description\": \"범위 고가 $64,788(Fibonacci·ICT range high)·7일 EQ $64,743.75 위로 수용(1시간 종가) 시 harmonic bearish PRZ 무효화 및 Wyckoff 상단 돌파로 해석되어 $65,214.50 → $65,328.80 확장이 개방된다.\"},\n    \"bearish\": {\"price\": 63650.0, \"description\": \"Wyckoff SC $63,650.00 하방 수용(1시간 종가) 시 $63,732-$63,833 buy zone 및 harmonic TP1 sweep 매수가 실패 확정되어 Wyckoff Spring $63,283.50 → Terminal Spring $63,136.20로의 하방 가속이 열린다.\"}\n  },\n  \"scenario_invalidation\": 63136.2\n}\n```"
  },
  "tp_calibration": {
    "calibrated_waypoints": [
      {
        "seq": 1,
        "base_target": 64055.56,
        "turning_zone": [
          63940.0,
          64055.56
        ],
        "likely_wick": 64000.0,
        "rejection_confirm": 64189.02,
        "invalid_overshoot": 63833.4,
        "calibration_reasoning": "EMA20·피보나치 클러스터 $64,055.56(ret_0.5×2, ret_0.382) 상단을 base로, 바로 아래 EMA120 $64,002.22·Fib0.5 $64,004·라운드 $64,000 합류대를 likely_wick로 잡고, Chairman 지지 $63,962.1을 소폭 하회하는 $63,940까지(0.30×ATR)를 zone으로 설정했다. 1차 반등 확인은 Fib0.382/현재가 $64,189 재탈환, 무효화는 Wyckoff LPS $63,833.40 이탈(→2번 스윕 진행)이다."
      },
      {
        "seq": 2,
        "base_target": 63732.0,
        "turning_zone": [
          63665.23,
          63775.3
        ],
        "likely_wick": 63700.0,
        "rejection_confirm": 63833.4,
        "invalid_overshoot": 63555.55,
        "calibration_reasoning": "harmonic 확정 TP1 AD0.382 $63,732.82(CONFIRMED_REACTION·경로 하방과 정렬)를 base로, ICT bullish OB 상단 $63,775.30을 zone 상단, gartley 확정 TP1 $63,665.23·Fib 합류 $63,687.26을 zone 하단(스윕 오버슈트)으로 두었다. 롱 손절 유동성을 grab하는 라운드 $63,700을 likely_wick, 스윕 반전 확인은 Fib0.618/LPS $63,833.40 재탈환, 무효화는 Fib 지지 $63,555.55 이탈(harmonic TP2 $63,390 방향)이다."
      },
      {
        "seq": 3,
        "base_target": 64568.0,
        "turning_zone": [
          64568.0,
          64788.0
        ],
        "likely_wick": 64600.0,
        "rejection_confirm": 64396.98,
        "invalid_overshoot": 64823.4,
        "calibration_reasoning": "Wyckoff SOS·ICT 이전 일봉 고가·Bat PRZ 상단 $64,558.36 삼중 합류 $64,568을 base로, 터미널 waypoint라 range high $64,788(Fib 저항)까지 0.57×ATR 폭의 넓은 zone을 설정했다. 이전 일봉 고가 위 유동성을 grab하는 라운드 $64,600을 likely_wick, 거부 확인은 harmonic bearish Gartley PRZ $64,396.98 이탈, 무효화는 range EQ $64,823.40 상방 수용(상단 한계 돌파)이다."
      }
    ],
    "raw_llm_response": "```json\n{\n  \"calibrated_waypoints\": [\n    {\n      \"seq\": 1,\n      \"base_target\": 64055.56,\n      \"turning_zone\": [63940.00, 64055.56],\n      \"likely_wick\": 64000.00,\n      \"rejection_confirm\": 64189.02,\n      \"invalid_overshoot\": 63833.40,\n      \"calibration_reasoning\": \"EMA20·피보나치 클러스터 $64,055.56(ret_0.5×2, ret_0.382) 상단을 base로, 바로 아래 EMA120 $64,002.22·Fib0.5 $64,004·라운드 $64,000 합류대를 likely_wick로 잡고, Chairman 지지 $63,962.1을 소폭 하회하는 $63,940까지(0.30×ATR)를 zone으로 설정했다. 1차 반등 확인은 Fib0.382/현재가 $64,189 재탈환, 무효화는 Wyckoff LPS $63,833.40 이탈(→2번 스윕 진행)이다.\"\n    },\n    {\n      \"seq\": 2,\n      \"base_target\": 63732.00,\n      \"turning_zone\": [63665.23, 63775.30],\n      \"likely_wick\": 63700.00,\n      \"rejection_confirm\": 63833.40,\n      \"invalid_overshoot\": 63555.55,\n      \"calibration_reasoning\": \"harmonic 확정 TP1 AD0.382 $63,732.82(CONFIRMED_REACTION·경로 하방과 정렬)를 base로, ICT bullish OB 상단 $63,775.30을 zone 상단, gartley 확정 TP1 $63,665.23·Fib 합류 $63,687.26을 zone 하단(스윕 오버슈트)으로 두었다. 롱 손절 유동성을 grab하는 라운드 $63,700을 likely_wick, 스윕 반전 확인은 Fib0.618/LPS $63,833.40 재탈환, 무효화는 Fib 지지 $63,555.55 이탈(harmonic TP2 $63,390 방향)이다.\"\n    },\n    {\n      \"seq\": 3,\n      \"base_target\": 64568.00,\n      \"turning_zone\": [64568.00, 64788.00],\n      \"likely_wick\": 64600.00,\n      \"rejection_confirm\": 64396.98,\n      \"invalid_overshoot\": 64823.40,\n      \"calibration_reasoning\": \"Wyckoff SOS·ICT 이전 일봉 고가·Bat PRZ 상단 $64,558.36 삼중 합류 $64,568을 base로, 터미널 waypoint라 range high $64,788(Fib 저항)까지 0.57×ATR 폭의 넓은 zone을 설정했다. 이전 일봉 고가 위 유동성을 grab하는 라운드 $64,600을 likely_wick, 거부 확인은 harmonic bearish Gartley PRZ $64,396.98 이탈, 무효화는 range EQ $64,823.40 상방 수용(상단 한계 돌파)이다.\"\n    }\n  ]\n}\n```"
  },
  "timing": {
    "stages": {
      "stage1_agents": 48.1,
      "chairman": 87.7,
      "operating_path": 469.5,
      "tp_calibrator": 277.7
    },
    "agents": {},
    "total_s": 883.0
  }
}