{
  "symbol": "BTC/USDT",
  "timeframe": "15m",
  "timestamp": "2026-06-09 09:00 KST",
  "last_price": 63060.2,
  "num_candles": 300,
  "stage1_analyses": {
    "fibonacci": {
      "agent_id": "fibonacci",
      "display_name": "Fibonacci Analyst",
      "signal": "bearish",
      "confidence": 0.62,
      "structure_bias": "neutral",
      "setup_bias": "bearish",
      "setup_score": 0.68,
      "setup_signals": [
        "현재가 $63,060.20가 스윙 저점 $63,120 아래에 위치하여 Low→High 피보나치 되돌림 구조가 훼손된 상태",
        "0.786 되돌림 $63,272.79가 가장 가까운 저항이며 현재가와의 거리 0.34로 즉시 테스트 구간",
        "골든 비율 0.618 레벨 $63,392.42가 현재가 위에 있어 반등 시 핵심 매도/저항 후보",
        "EQ에 해당하는 0.5 되돌림 $63,476.45 아래에 있어 단기적으로 할인 구간이지만, 회복 실패 시 약세 지속 setup",
        "상단 confluence zone $63,260.91에 ret_0.236, ret_0.786, ret_0.618 3개 레벨이 밀집되어 단기 공급 구간으로 작동 가능"
      ],
      "reasoning": "확정 구조 관점에서는 명확한 BOS/CHoCH 확인 데이터가 부족하므로 structure_bias는 neutral로 판단한다. 다만 현재가 $63,060.20는 Low→High 스윙 기준 저점 $63,120 아래에 있으며, 0.786 되돌림 $63,272.79와 골든 비율 $63,392.42를 모두 하회해 피보나치 반등 구조가 약화되었다. 특히 $63,260.91 confluence zone과 $63,567.12 confluence zone이 모두 현재가 위에 있어 반등 시 저항 밀도가 높다. 0.618 골든 레벨 $63,392.42 회복 전까지는 단기 setup_bias를 bearish로 본다.",
      "key_levels": {
        "support": [
          63120.0,
          59451.3
        ],
        "resistance": [
          63272.79,
          63392.42,
          63476.45,
          63560.48,
          63832.5,
          64026.19,
          64272.58
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$63,392.42",
      "risk_scenario": "가격이 $63,272.79의 0.786 되돌림을 회복한 뒤 골든 비율 $63,392.42 위로 안착하면 현재의 약세 setup은 무효화된다. 이 경우 $63,476.45의 0.5 레벨과 $63,560.48의 0.382 레벨까지 숏 커버성 반등이 열릴 수 있으며, 추가 돌파 시 $63,832.50 및 확장 목표 $64,026.19를 재시험할 가능성이 커진다.",
      "data_quality": "medium",
      "metrics": {
        "swing_pair": "Low→High: $63,120 → $63,832",
        "direction": "up",
        "nearest_fib": "ret_0.786",
        "nearest_fib_price": 63272.79,
        "nearest_fib_distance": 0.34,
        "golden_ratio_level": 63392.42,
        "fib_ret_382": 63560.48,
        "fib_ret_618": 63392.42,
        "confluence_zones": [
          {
            "price": 63260.91,
            "count": 3,
            "levels": [
              "ret_0.236",
              "ret_0.786",
              "ret_0.618"
            ],
            "cluster_score": 0.85
          },
          {
            "price": 63567.12,
            "count": 3,
            "levels": [
              "ret_0.5",
              "ret_0.382",
              "ret_0.236"
            ],
            "cluster_score": 0.85
          },
          {
            "price": 63995.33,
            "count": 3,
            "levels": [
              "ext_1.0",
              "ext_1.272",
              "ext_1.414"
            ],
            "cluster_score": 0.85
          },
          {
            "price": 64355.73,
            "count": 3,
            "levels": [
              "ext_1.0",
              "ext_1.618",
              "ext_2.0"
            ],
            "cluster_score": 0.85
          }
        ],
        "support_levels": [],
        "resistance_levels": [
          63272.7894,
          63392.4222,
          63476.45
        ],
        "level_candidates": [
          {
            "name": "ret_0.236",
            "price": 63664.44,
            "distance_pct": 0.96,
            "is_support": false,
            "cluster_score": 0.85
          },
          {
            "name": "ret_0.382",
            "price": 63560.48,
            "distance_pct": 0.79,
            "is_support": false,
            "cluster_score": 0.85
          },
          {
            "name": "ret_0.5",
            "price": 63476.45,
            "distance_pct": 0.66,
            "is_support": false,
            "cluster_score": 0.85
          },
          {
            "name": "ret_0.618",
            "price": 63392.42,
            "distance_pct": 0.53,
            "is_support": false,
            "cluster_score": 0.85
          },
          {
            "name": "ret_0.786",
            "price": 63272.79,
            "distance_pct": 0.34,
            "is_support": false,
            "cluster_score": 0.85
          },
          {
            "name": "ext_1.0",
            "price": 63832.5,
            "distance_pct": 1.22,
            "is_support": false,
            "cluster_score": 0.85
          },
          {
            "name": "ext_1.272",
            "price": 64026.19,
            "distance_pct": 1.53,
            "is_support": false,
            "cluster_score": 0.85
          },
          {
            "name": "ext_1.414",
            "price": 64127.31,
            "distance_pct": 1.69,
            "is_support": false,
            "cluster_score": 0.85
          },
          {
            "name": "ext_1.618",
            "price": 64272.58,
            "distance_pct": 1.92,
            "is_support": false,
            "cluster_score": 0.85
          },
          {
            "name": "ext_2.0",
            "price": 64544.6,
            "distance_pct": 2.35,
            "is_support": false,
            "cluster_score": 0.85
          }
        ],
        "confluence_quality": 0.85,
        "fib_reaction_state": "testing",
        "reaction_probability": 0.65
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.62,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.68,\n  \"setup_signals\": [\n    \"현재가 $63,060.20가 스윙 저점 $63,120 아래에 위치하여 Low→High 피보나치 되돌림 구조가 훼손된 상태\",\n    \"0.786 되돌림 $63,272.79가 가장 가까운 저항이며 현재가와의 거리 0.34로 즉시 테스트 구간\",\n    \"골든 비율 0.618 레벨 $63,392.42가 현재가 위에 있어 반등 시 핵심 매도/저항 후보\",\n    \"EQ에 해당하는 0.5 되돌림 $63,476.45 아래에 있어 단기적으로 할인 구간이지만, 회복 실패 시 약세 지속 setup\",\n    \"상단 confluence zone $63,260.91에 ret_0.236, ret_0.786, ret_0.618 3개 레벨이 밀집되어 단기 공급 구간으로 작동 가능\"\n  ],\n  \"reasoning\": \"확정 구조 관점에서는 명확한 BOS/CHoCH 확인 데이터가 부족하므로 structure_bias는 neutral로 판단한다. 다만 현재가 $63,060.20는 Low→High 스윙 기준 저점 $63,120 아래에 있으며, 0.786 되돌림 $63,272.79와 골든 비율 $63,392.42를 모두 하회해 피보나치 반등 구조가 약화되었다. 특히 $63,260.91 confluence zone과 $63,567.12 confluence zone이 모두 현재가 위에 있어 반등 시 저항 밀도가 높다. 0.618 골든 레벨 $63,392.42 회복 전까지는 단기 setup_bias를 bearish로 본다.\",\n  \"key_levels\": {\n    \"support\": [\n      63120.0,\n      59451.3\n    ],\n    \"resistance\": [\n      63272.79,\n      63392.42,\n      63476.45,\n      63560.48,\n      63832.5,\n      64026.19,\n      64272.58\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$63,392.42\",\n  \"risk_scenario\": \"가격이 $63,272.79의 0.786 되돌림을 회복한 뒤 골든 비율 $63,392.42 위로 안착하면 현재의 약세 setup은 무효화된다. 이 경우 $63,476.45의 0.5 레벨과 $63,560.48의 0.382 레벨까지 숏 커버성 반등이 열릴 수 있으며, 추가 돌파 시 $63,832.50 및 확장 목표 $64,026.19를 재시험할 가능성이 커진다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "ict": {
      "agent_id": "ict",
      "display_name": "ICT Trader",
      "signal": "neutral",
      "confidence": 0.48,
      "structure_bias": "bullish",
      "setup_bias": "neutral",
      "setup_score": 0.35,
      "setup_signals": [
        "현재가 $63,060.20은 EQ $63,418.95 아래의 discount 영역에 위치",
        "최근 확정 구조 이벤트는 bullish CHoCH $62,327.00 상방 유지",
        "상단에 candidate bearish OB $63,600.00-$63,832.50 존재, 중간값 $63,716.25",
        "bearish OB 내부/인접 FVG 흔적 $63,418.40-$63,690.70은 이미 완전 미체결 FVG로 남아 있지 않음",
        "미체결 bullish/bearish FVG 0개로 즉각적인 FVG 자석 효과는 약함",
        "최근 liquidity sweep 없음, 하단 resting SSL은 $60,371.70"
      ],
      "reasoning": "구조적으로는 $60,969.20 bullish BOS 이후 $61,509.10 bearish BOS가 있었지만, 최근 $62,327.00 상방 CHoCH가 발생했고 현재가 $63,060.20이 이를 유지하고 있어 구조_bias는 약한 bullish로 본다. 다만 현재가는 EQ $63,418.95 아래 discount에 있어 매도 프리미엄 위치는 아니며, 동시에 $63,600.00-$63,832.50 candidate bearish OB가 바로 위에 있어 추격 매수도 불리하다. 미체결 FVG가 0개이고 최근 buy-side/sell-side sweep도 없어 기관 유동성 사냥 이후의 명확한 변위 확인이 부족하다. 따라서 실행 관점의 setup_bias는 neutral이며, $63,600-$63,832.50 공급대 반응 또는 $62,327.00 이탈 여부를 기다리는 구간이다.",
      "key_levels": {
        "support": [
          62658.4,
          62327.0,
          61509.1,
          61150.2,
          60371.7
        ],
        "resistance": [
          63418.95,
          63600.0,
          63716.25,
          63832.5,
          64179.5,
          64250.0
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$62,327.00 하향 이탈 시 최근 bullish CHoCH 기반의 구조 해석은 무효화됨",
      "risk_scenario": "$63,600.00-$63,832.50 bearish OB를 강하게 상향 돌파하고 15분봉 기준 수용되면, 매도 공급대가 무효화되며 $64,179.50 range high 및 전일 고점 $64,250.00의 buy-side liquidity를 노리는 bullish 확장 시나리오가 우세해진다. 반대로 $62,327.00을 이탈하면 bearish BOS $61,509.10 및 전일 저점 $61,150.20, 더 아래 resting SSL $60,371.70까지 유동성 회수 가능성이 커진다.",
      "data_quality": "medium",
      "metrics": {
        "order_blocks_total": 1,
        "confirmed_bullish_ob": 0,
        "confirmed_bearish_ob": 0,
        "candidate_bullish_ob": 0,
        "candidate_bearish_ob": 1,
        "active_bullish_ob": 0,
        "active_bearish_ob": 1,
        "nearest_bull_ob_range": null,
        "nearest_bear_ob_range": {
          "bottom": 63600.0,
          "top": 63832.5,
          "quality": "candidate",
          "score": 0.512
        },
        "active_bullish_ob_list": [],
        "active_bearish_ob_list": [
          {
            "type": "bearish_ob",
            "idx": 290,
            "top": 63832.5,
            "bottom": 63600.0,
            "mid": 63716.25,
            "quality": "candidate",
            "score": 0.512,
            "displacement_score": 0.333,
            "has_fvg": true,
            "has_sweep_context": false,
            "fvg_range": {
              "bottom": 63418.4,
              "top": 63690.7
            },
            "swept_level": null,
            "source_move_idx": 290,
            "proximity": "nearby"
          }
        ],
        "ob_mitigated_count": 1,
        "unfilled_bull_fvg_count": 0,
        "unfilled_bear_fvg_count": 0,
        "bull_fvg_ranges": [],
        "bear_fvg_ranges": [],
        "fvg_open_count": 0,
        "fvg_mitigated_count": 59,
        "fvg_open_zones": [],
        "bos_choch_events": [
          "BOS_bullish",
          "BOS_bearish",
          "CHoCH_bullish"
        ],
        "bos_choch_levels": [
          {
            "type": "BOS_bullish",
            "level": 60969.2
          },
          {
            "type": "BOS_bearish",
            "level": 61509.1
          },
          {
            "type": "CHoCH_bullish",
            "level": 62327.0
          }
        ],
        "bos_sequence": [
          "BOS_bullish",
          "BOS_bearish",
          "CHoCH_bullish"
        ],
        "consecutive_bull_bos": 0,
        "consecutive_bear_bos": 0,
        "recent_liq_sweeps": [],
        "recent_sweep_levels": [],
        "liquidity_resting": [
          {
            "type": "SSL",
            "level": 60371.7
          }
        ],
        "current_zone": "discount",
        "eq_level": 63418.95,
        "range_high": 64179.5,
        "range_low": 62658.4,
        "bull_score": 4.7,
        "bear_score": 4.607,
        "setup_bias": "neutral",
        "setup_score": 0.35,
        "setup_signals": [
          "bullish BOS above $60,969.20",
          "bullish CHoCH above $62,327.00",
          "bearish BOS below $61,509.10",
          "bearish OB candidate $63,600.00-$63,832.50 (nearby, score=0.51)"
        ],
        "retracement_direction": "bearish",
        "current_retracement_pct": 4.7,
        "deepest_retracement_pct": 67.2,
        "previous_day_high": 64250.0,
        "previous_day_low": 61150.2,
        "broken_prev_high": false,
        "broken_prev_low": false,
        "sessions": {
          "London": {
            "active": true,
            "high": 63690.7,
            "low": 62939.7
          },
          "New York": {
            "active": false,
            "high": null,
            "low": null
          },
          "Asian kill zone": {
            "active": false,
            "high": null,
            "low": null
          }
        }
      },
      "raw_llm_response": "{\n  \"signal\": \"neutral\",\n  \"confidence\": 0.48,\n  \"structure_bias\": \"bullish\",\n  \"setup_bias\": \"neutral\",\n  \"setup_score\": 0.35,\n  \"setup_signals\": [\n    \"현재가 $63,060.20은 EQ $63,418.95 아래의 discount 영역에 위치\",\n    \"최근 확정 구조 이벤트는 bullish CHoCH $62,327.00 상방 유지\",\n    \"상단에 candidate bearish OB $63,600.00-$63,832.50 존재, 중간값 $63,716.25\",\n    \"bearish OB 내부/인접 FVG 흔적 $63,418.40-$63,690.70은 이미 완전 미체결 FVG로 남아 있지 않음\",\n    \"미체결 bullish/bearish FVG 0개로 즉각적인 FVG 자석 효과는 약함\",\n    \"최근 liquidity sweep 없음, 하단 resting SSL은 $60,371.70\"\n  ],\n  \"reasoning\": \"구조적으로는 $60,969.20 bullish BOS 이후 $61,509.10 bearish BOS가 있었지만, 최근 $62,327.00 상방 CHoCH가 발생했고 현재가 $63,060.20이 이를 유지하고 있어 구조_bias는 약한 bullish로 본다. 다만 현재가는 EQ $63,418.95 아래 discount에 있어 매도 프리미엄 위치는 아니며, 동시에 $63,600.00-$63,832.50 candidate bearish OB가 바로 위에 있어 추격 매수도 불리하다. 미체결 FVG가 0개이고 최근 buy-side/sell-side sweep도 없어 기관 유동성 사냥 이후의 명확한 변위 확인이 부족하다. 따라서 실행 관점의 setup_bias는 neutral이며, $63,600-$63,832.50 공급대 반응 또는 $62,327.00 이탈 여부를 기다리는 구간이다.\",\n  \"key_levels\": {\n    \"support\": [\n      62658.4,\n      62327.0,\n      61509.1,\n      61150.2,\n      60371.7\n    ],\n    \"resistance\": [\n      63418.95,\n      63600.0,\n      63716.25,\n      63832.5,\n      64179.5,\n      64250.0\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$62,327.00 하향 이탈 시 최근 bullish CHoCH 기반의 구조 해석은 무효화됨\",\n  \"risk_scenario\": \"$63,600.00-$63,832.50 bearish OB를 강하게 상향 돌파하고 15분봉 기준 수용되면, 매도 공급대가 무효화되며 $64,179.50 range high 및 전일 고점 $64,250.00의 buy-side liquidity를 노리는 bullish 확장 시나리오가 우세해진다. 반대로 $62,327.00을 이탈하면 bearish BOS $61,509.10 및 전일 저점 $61,150.20, 더 아래 resting SSL $60,371.70까지 유동성 회수 가능성이 커진다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "candlestick": {
      "agent_id": "candlestick",
      "display_name": "Candlestick Reader",
      "signal": "bullish",
      "confidence": 0.61,
      "structure_bias": "neutral",
      "setup_bias": "bullish",
      "setup_score": 0.64,
      "setup_signals": [
        "최근 5개 패턴 중 bullish_harami@293이 strict 등급이며 고거래량 동반, 패턴 품질 0.697로 가장 강함",
        "hammer@299가 현재가 $63,060.20 부근에서 출현하여 단기 매도 압력 둔화 가능성",
        "bullish_engulfing@290 및 bullish_engulfing@295가 연속적으로 확인되어 하락 후 매수 반응이 반복됨",
        "현재가 $63,060.20이 EMA120 $63,085.33 바로 아래에 위치해 구조 전환 전 지지 재확인 구간",
        "현재가가 EMA240 $62,607.83 위에 있어 중기 지지선은 아직 훼손되지 않음",
        "7일 고가 $64,250.00와 저가 $59,451.30의 EQ는 약 $61,850.65이며, 현재가는 EQ 위 프리미엄 영역에 있어 추격 매수는 제한적"
      ],
      "reasoning": "최근 감지된 패턴은 bullish_harami, hammer, bullish_engulfing 2회, doji로 구성되어 있으며 bull_score 2.85 대 bear_score 0으로 단기 캔들 신호는 매수 우위입니다. 다만 현재가 $63,060.20은 EMA20 $63,375.77 아래에 있고 EMA120 $63,085.33 부근에서 확실한 상방 수용이 아직 확인되지 않아 구조적 상승 전환으로 보기는 이릅니다. 7일 기준 EQ 약 $61,850.65보다 높은 프리미엄 구간에 있으므로 setup은 bullish지만, 구조_bias는 confirmed BOS나 CHoCH가 없는 neutral로 판단합니다. 상방 확인은 EMA20 $63,375.77 회복 및 $64,250.00 저항 재시험이 필요하며, 하방으로는 EMA240 $62,607.83 이탈 시 최근 bullish reversal setup이 약화됩니다.",
      "key_levels": {
        "support": [
          63085.33,
          62607.83,
          61850.65,
          59451.3
        ],
        "resistance": [
          63375.77,
          64250.0
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$62,607.83",
      "risk_scenario": "반대 시나리오는 현재의 bullish harami와 hammer가 단순 반등 실패 신호로 끝나는 경우입니다. BTC가 EMA120 $63,085.33을 회복하지 못하고 EMA240 $62,607.83 아래로 15분봉 종가 이탈하면, 매수 setup은 무효화되며 7일 EQ $61,850.65 및 더 아래 $59,451.30까지 유동성 탐색이 열릴 수 있습니다.",
      "data_quality": "medium",
      "metrics": {
        "total_patterns_detected": 146,
        "recent_patterns": 5,
        "pattern_list": [
          "hammer@299",
          "bullish_engulfing@290",
          "bullish_engulfing@295",
          "doji@298",
          "bullish_harami@293"
        ],
        "atr_value": 244.04,
        "vol_avg_20": 1157.11,
        "high_volume_patterns": [
          "bullish_harami"
        ],
        "pattern_candidates": [
          {
            "pattern": "bullish_harami",
            "signal": "bullish",
            "pattern_quality": 0.697,
            "tier": "strict",
            "high_volume": true
          },
          {
            "pattern": "hammer",
            "signal": "bullish",
            "pattern_quality": 0.628,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "bullish_engulfing",
            "signal": "bullish",
            "pattern_quality": 0.542,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "bullish_engulfing",
            "signal": "bullish",
            "pattern_quality": 0.387,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "doji",
            "signal": "neutral",
            "pattern_quality": 0.355,
            "tier": "candidate",
            "high_volume": false
          }
        ],
        "best_pattern_quality": 0.697,
        "bull_score": 2.85,
        "bear_score": 0
      },
      "raw_llm_response": "{\n  \"signal\": \"bullish\",\n  \"confidence\": 0.61,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.64,\n  \"setup_signals\": [\n    \"최근 5개 패턴 중 bullish_harami@293이 strict 등급이며 고거래량 동반, 패턴 품질 0.697로 가장 강함\",\n    \"hammer@299가 현재가 $63,060.20 부근에서 출현하여 단기 매도 압력 둔화 가능성\",\n    \"bullish_engulfing@290 및 bullish_engulfing@295가 연속적으로 확인되어 하락 후 매수 반응이 반복됨\",\n    \"현재가 $63,060.20이 EMA120 $63,085.33 바로 아래에 위치해 구조 전환 전 지지 재확인 구간\",\n    \"현재가가 EMA240 $62,607.83 위에 있어 중기 지지선은 아직 훼손되지 않음\",\n    \"7일 고가 $64,250.00와 저가 $59,451.30의 EQ는 약 $61,850.65이며, 현재가는 EQ 위 프리미엄 영역에 있어 추격 매수는 제한적\"\n  ],\n  \"reasoning\": \"최근 감지된 패턴은 bullish_harami, hammer, bullish_engulfing 2회, doji로 구성되어 있으며 bull_score 2.85 대 bear_score 0으로 단기 캔들 신호는 매수 우위입니다. 다만 현재가 $63,060.20은 EMA20 $63,375.77 아래에 있고 EMA120 $63,085.33 부근에서 확실한 상방 수용이 아직 확인되지 않아 구조적 상승 전환으로 보기는 이릅니다. 7일 기준 EQ 약 $61,850.65보다 높은 프리미엄 구간에 있으므로 setup은 bullish지만, 구조_bias는 confirmed BOS나 CHoCH가 없는 neutral로 판단합니다. 상방 확인은 EMA20 $63,375.77 회복 및 $64,250.00 저항 재시험이 필요하며, 하방으로는 EMA240 $62,607.83 이탈 시 최근 bullish reversal setup이 약화됩니다.\",\n  \"key_levels\": {\n    \"support\": [\n      63085.33,\n      62607.83,\n      61850.65,\n      59451.3\n    ],\n    \"resistance\": [\n      63375.77,\n      64250.0\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$62,607.83\",\n  \"risk_scenario\": \"반대 시나리오는 현재의 bullish harami와 hammer가 단순 반등 실패 신호로 끝나는 경우입니다. BTC가 EMA120 $63,085.33을 회복하지 못하고 EMA240 $62,607.83 아래로 15분봉 종가 이탈하면, 매수 setup은 무효화되며 7일 EQ $61,850.65 및 더 아래 $59,451.30까지 유동성 탐색이 열릴 수 있습니다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "derivatives": {
      "agent_id": "derivatives",
      "display_name": "Derivatives Trader",
      "signal": "bearish",
      "confidence": 0.57,
      "structure_bias": "neutral",
      "setup_bias": "bearish",
      "setup_score": 0.68,
      "setup_signals": [
        "가격 $63,060.20이 EMA20 $63,375.77 아래에 머물며 단기 수급 저항 확인",
        "CVD 변화 +$2,446.00에도 가격 24h -0.38%로 하락해 매수 체결이 가격 상승으로 연결되지 않는 약세형 CVD divergence 0.850",
        "롱 계정 비율 0.648로 여전히 롱 쏠림이며 account_long_crowding 1.000, 반대매매 관점에서 하방 리스크 우위",
        "OI 24h -1.50%로 신규 추세 베팅보다 포지션 언와인딩 성격, 상승 추격 신뢰도 낮음",
        "가까운 하방 청산 유동성 $62,100 및 $61,100이 현재가와 근접해 단기 유동성 사냥 후보"
      ],
      "reasoning": "현재 BTC는 $63,060.20으로 EMA120 $63,085.33 부근에 붙어 있어 구조적으로는 명확한 BOS나 CHoCH가 확인되지 않은 중립 구간이다. 다만 CVD가 +$2,446.00 증가했음에도 가격은 24시간 -0.38% 하락했고, 이는 공격적 매수가 흡수되는 약세 다이버전스로 해석된다. 롱 계정 비율은 0.648로 여전히 높고 account_long_crowding이 1.000인 반면, 롱 계정은 24h -0.0272 감소하고 숏 계정은 +0.027 증가해 포지셔닝 전환 압력이 생기고 있다. OI도 24h -1.50% 감소해 강한 신규 숏 구축보다는 언와인딩 장세지만, 가까운 하방 청산 구간 $62,100, $61,100이 상방 청산 $65,900보다 훨씬 가까워 단기적으로 하방 유동성 테스트 가능성이 높다.",
      "key_levels": {
        "support": [
          62607.83,
          62100,
          61100,
          57500
        ],
        "resistance": [
          63085.33,
          63375.77,
          64250,
          65900
        ]
      },
      "time_horizon": "short term, 약 4-8시간",
      "invalidation_level": "$64,250.00",
      "risk_scenario": "반대로 가격이 EMA20 $63,375.77을 회복하고 7일 고점 $64,250.00 위에서 수용되면, 현재의 약세 CVD 흡수 해석은 무효화되고 $65,900 상방 청산 유동성까지 숏 스퀴즈가 발생할 수 있다.",
      "data_quality": "medium",
      "metrics": {
        "cvd_divergence": 0.85,
        "cvd_change": 2445.998,
        "oi_trend": 0.499,
        "oi_change_pct_24h": -0.015,
        "oi_latest": 98597.737,
        "funding_pressure": 0.476,
        "funding_avg": 2.37e-05,
        "funding_change_24h": -3.411e-05,
        "long_account_ratio": 0.653,
        "short_account_ratio": 0.347,
        "long_account_latest": 0.648,
        "short_account_latest": 0.352,
        "long_account_change_24h": -0.0272,
        "short_account_change_24h": 0.0272,
        "account_flow_label": "short_accounts_rising_long_accounts_falling",
        "account_short_crowding": 0.0,
        "account_long_crowding": 1.0,
        "ls_imbalance": 0.0,
        "ls_imbalance_interpretation": "high=short-account crowding / low=long-account crowding",
        "spot_futures_basis_score": 0.49,
        "spot_futures_basis_pct": -0.0409,
        "basis_change_lookback": 0.0029,
        "aggregate_score": 0.463,
        "bull_signals": 1,
        "bear_signals": 1,
        "liq_below": [
          [
            62100,
            1522.39898925
          ],
          [
            61100,
            1512.7513230000002
          ],
          [
            57500,
            1941.8657787500001
          ]
        ],
        "liq_above": [
          [
            65900,
            1536.2432350000001
          ],
          [
            69700,
            1920.3040437500003
          ],
          [
            70100,
            1930.7390375
          ]
        ],
        "strongest_liq_level": 57500,
        "fragility_score": 0.907,
        "positioning_extreme": "balanced"
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.57,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.68,\n  \"setup_signals\": [\n    \"가격 $63,060.20이 EMA20 $63,375.77 아래에 머물며 단기 수급 저항 확인\",\n    \"CVD 변화 +$2,446.00에도 가격 24h -0.38%로 하락해 매수 체결이 가격 상승으로 연결되지 않는 약세형 CVD divergence 0.850\",\n    \"롱 계정 비율 0.648로 여전히 롱 쏠림이며 account_long_crowding 1.000, 반대매매 관점에서 하방 리스크 우위\",\n    \"OI 24h -1.50%로 신규 추세 베팅보다 포지션 언와인딩 성격, 상승 추격 신뢰도 낮음\",\n    \"가까운 하방 청산 유동성 $62,100 및 $61,100이 현재가와 근접해 단기 유동성 사냥 후보\"\n  ],\n  \"reasoning\": \"현재 BTC는 $63,060.20으로 EMA120 $63,085.33 부근에 붙어 있어 구조적으로는 명확한 BOS나 CHoCH가 확인되지 않은 중립 구간이다. 다만 CVD가 +$2,446.00 증가했음에도 가격은 24시간 -0.38% 하락했고, 이는 공격적 매수가 흡수되는 약세 다이버전스로 해석된다. 롱 계정 비율은 0.648로 여전히 높고 account_long_crowding이 1.000인 반면, 롱 계정은 24h -0.0272 감소하고 숏 계정은 +0.027 증가해 포지셔닝 전환 압력이 생기고 있다. OI도 24h -1.50% 감소해 강한 신규 숏 구축보다는 언와인딩 장세지만, 가까운 하방 청산 구간 $62,100, $61,100이 상방 청산 $65,900보다 훨씬 가까워 단기적으로 하방 유동성 테스트 가능성이 높다.\",\n  \"key_levels\": {\n    \"support\": [\n      62607.83,\n      62100,\n      61100,\n      57500\n    ],\n    \"resistance\": [\n      63085.33,\n      63375.77,\n      64250,\n      65900\n    ]\n  },\n  \"time_horizon\": \"short term, 약 4-8시간\",\n  \"invalidation_level\": \"$64,250.00\",\n  \"risk_scenario\": \"반대로 가격이 EMA20 $63,375.77을 회복하고 7일 고점 $64,250.00 위에서 수용되면, 현재의 약세 CVD 흡수 해석은 무효화되고 $65,900 상방 청산 유동성까지 숏 스퀴즈가 발생할 수 있다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "wyckoff": {
      "agent_id": "wyckoff",
      "display_name": "Wyckoff Expert",
      "signal": "neutral",
      "confidence": 0.64,
      "structure_bias": "bullish",
      "setup_bias": "bearish",
      "setup_score": 0.62,
      "setup_signals": [
        "현재가 $63,060.20이 LPS $63,305.00 아래로 재진입하여 Phase E/BU 이후 수요 유지가 아직 확인되지 않음",
        "SOS 고점 $63,948.20 및 BU $63,920.00 돌파 후 상단 수용 실패, 단기 공급 반응 우세",
        "현재가가 EMA20 $63,375.77 아래에 위치해 단기 평균 회복 전까지 즉시 경로는 AR 상단 $62,942.40 재시험 가능성",
        "주요 ACC range high/AR $62,942.40 부근을 이탈하면 Terminal Spring $62,658.40 및 Spring $62,779.00 재시험 위험 증가"
      ],
      "reasoning": "상위 regime은 ACC이며 acc_score 95.3, regime_fitness 0.953으로 SC $61,573.50 → AR $62,942.40 → ST $61,150.20 → Spring/Terminal Spring $62,779.00/$62,658.40 → SOS $63,948.20 → LPS $63,305.00의 누적 구조가 우선입니다. 다만 현재가 $63,060.20은 LPS $63,305.00 아래에 있어 Phase E/BU가 확정적 상방 수용으로 이어졌다고 보기 어렵고, $63,920~$63,948 상단 반응 이후 단기적으로는 AR $62,942.40 재시험 압력이 남아 있습니다. 구조적 편향은 누적 기반의 bullish이나, 실행 관점의 setup_bias는 LPS 이탈과 EMA20 $63,375.77 미회복 때문에 bearish입니다. $63,305 회복 후 유지가 1차 개선 조건이고, $63,920~$63,948 재돌파 및 수용이 확인되어야 ACC 후반 구조의 신뢰도가 다시 높아집니다.",
      "key_levels": {
        "support": [
          62942.4,
          62779.0,
          62658.4,
          61573.5,
          61150.2
        ],
        "resistance": [
          63305.0,
          63375.77,
          63920.0,
          63948.2
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "62658.40",
      "risk_scenario": "$63,305.00 LPS를 빠르게 회복하지 못하고 AR $62,942.40 아래에서 15분봉 종가 수용이 발생하면, Terminal Spring $62,658.40 및 Spring $62,779.00 구간까지 재시험이 열립니다. 특히 $62,658.40을 명확히 이탈하면 현재 ACC Phase E/BU 해석은 훼손되고, $61,573.50 SC 및 $61,150.20 ST 저점 재검증으로 구조가 다시 range-bound 또는 실패한 누적 후보로 약화될 수 있습니다.",
      "data_quality": "medium",
      "metrics": {
        "acc_score": 95.3,
        "dis_score": 93.8,
        "regime": "ACC",
        "regime_state": "acc_candidate",
        "structure_bias": "bullish",
        "phase_context": "acc_candidate / accumulation / Phase E",
        "phases_detected": [
          "SC",
          "AR",
          "ST",
          "Spring",
          "TERMINAL_SPRING",
          "SOS",
          "LPS",
          "BU"
        ],
        "last_phase": "BU",
        "phase_candidates": [
          {
            "label": "SC",
            "side": "low",
            "idx": 132,
            "price": 61573.5,
            "color": "#ffd166"
          },
          {
            "label": "AR",
            "side": "high",
            "idx": 143,
            "price": 62942.4,
            "color": "#06d6a0"
          },
          {
            "label": "ST",
            "side": "low",
            "idx": 187,
            "price": 61150.2,
            "color": "#118ab2"
          },
          {
            "label": "Spring",
            "side": "low",
            "idx": 232,
            "price": 62779.0,
            "color": "#f9844a"
          },
          {
            "label": "TERMINAL_SPRING",
            "side": "low",
            "idx": 252,
            "price": 62658.4,
            "color": "#f3722c"
          },
          {
            "label": "SOS",
            "side": "high",
            "idx": 255,
            "price": 63948.2,
            "color": "#06d6a0"
          },
          {
            "label": "LPS",
            "side": "low",
            "idx": 279,
            "price": 63305.0,
            "color": "#8338ec"
          },
          {
            "label": "BU",
            "side": "high",
            "idx": 256,
            "price": 63920.0,
            "color": "#7209b7"
          }
        ],
        "phase_structures": [
          {
            "structure_id": "15m_cycle_1",
            "sequence": 1,
            "timeframe": "15m",
            "regime": "accumulation",
            "role": "prior_completed_structure",
            "is_active": false,
            "is_completed": true,
            "is_confirmed": true,
            "structure_bias": "bullish",
            "phase_context": "accumulation",
            "start_idx": 132,
            "end_idx": 279,
            "phase_count": 8,
            "phases": [
              {
                "label": "SC",
                "side": "low",
                "idx": 132,
                "price": 61573.5,
                "color": "#ffd166",
                "dt": "2026-06-07 15:00:00+09:00"
              },
              {
                "label": "AR",
                "side": "high",
                "idx": 143,
                "price": 62942.4,
                "color": "#06d6a0",
                "dt": "2026-06-07 17:45:00+09:00"
              },
              {
                "label": "ST",
                "side": "low",
                "idx": 187,
                "price": 61150.2,
                "color": "#118ab2",
                "dt": "2026-06-08 04:45:00+09:00"
              },
              {
                "label": "Spring",
                "side": "low",
                "idx": 232,
                "price": 62779.0,
                "color": "#f9844a",
                "dt": "2026-06-08 16:00:00+09:00"
              },
              {
                "label": "TERMINAL_SPRING",
                "side": "low",
                "idx": 252,
                "price": 62658.4,
                "color": "#f3722c",
                "dt": "2026-06-08 21:00:00+09:00"
              },
              {
                "label": "SOS",
                "side": "high",
                "idx": 255,
                "price": 63948.2,
                "color": "#06d6a0",
                "dt": "2026-06-08 21:45:00+09:00"
              },
              {
                "label": "LPS",
                "side": "low",
                "idx": 279,
                "price": 63305.0,
                "color": "#8338ec",
                "dt": "2026-06-09 03:45:00+09:00"
              },
              {
                "label": "BU",
                "side": "high",
                "idx": 256,
                "price": 63920.0,
                "color": "#7209b7",
                "dt": "2026-06-08 22:00:00+09:00"
              }
            ]
          },
          {
            "structure_id": "15m_cycle_2",
            "sequence": 2,
            "timeframe": "15m",
            "regime": "distribution",
            "role": "current_structure_candidate",
            "is_active": true,
            "is_completed": false,
            "is_confirmed": true,
            "structure_bias": "bearish",
            "phase_context": "distribution",
            "start_idx": 265,
            "end_idx": 299,
            "phase_count": 7,
            "phases": [
              {
                "label": "BC",
                "side": "high",
                "idx": 265,
                "price": 64179.5,
                "color": "#ffd166",
                "dt": "2026-06-09 00:15:00+09:00"
              },
              {
                "label": "AR",
                "side": "low",
                "idx": 274,
                "price": 63209.6,
                "color": "#06d6a0",
                "dt": "2026-06-09 02:30:00+09:00"
              },
              {
                "label": "ST",
                "side": "high",
                "idx": 290,
                "price": 63832.5,
                "color": "#118ab2",
                "dt": "2026-06-09 06:30:00+09:00"
              },
              {
                "label": "SOW_IN_PHASE_B",
                "side": "low",
                "idx": 293,
                "price": 63171.2,
                "color": "#ef476f",
                "dt": "2026-06-09 07:15:00+09:00"
              },
              {
                "label": "UT",
                "side": "high",
                "idx": 297,
                "price": 63567.6,
                "color": "#f9844a",
                "dt": "2026-06-09 08:15:00+09:00"
              },
              {
                "label": "SOW",
                "side": "low",
                "idx": 298,
                "price": 62979.7,
                "color": "#ef476f",
                "dt": "2026-06-09 08:30:00+09:00"
              },
              {
                "label": "Phase E",
                "side": "low",
                "idx": 299,
                "price": 62939.7,
                "color": "#7209b7",
                "dt": "2026-06-09 08:45:00+09:00"
              }
            ]
          }
        ],
        "active_structure_id": "15m_cycle_2",
        "primary_structure_id": "15m_cycle_1",
        "structure_count": 2,
        "regime_fitness": 0.9529622551361682,
        "current_event": "BU",
        "major_phase": "E",
        "pos_in_range": 0.5,
        "main_range_low": 61573.5,
        "main_range_high": 62942.4
      },
      "raw_llm_response": "{\n  \"signal\": \"neutral\",\n  \"confidence\": 0.64,\n  \"structure_bias\": \"bullish\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.62,\n  \"setup_signals\": [\n    \"현재가 $63,060.20이 LPS $63,305.00 아래로 재진입하여 Phase E/BU 이후 수요 유지가 아직 확인되지 않음\",\n    \"SOS 고점 $63,948.20 및 BU $63,920.00 돌파 후 상단 수용 실패, 단기 공급 반응 우세\",\n    \"현재가가 EMA20 $63,375.77 아래에 위치해 단기 평균 회복 전까지 즉시 경로는 AR 상단 $62,942.40 재시험 가능성\",\n    \"주요 ACC range high/AR $62,942.40 부근을 이탈하면 Terminal Spring $62,658.40 및 Spring $62,779.00 재시험 위험 증가\"\n  ],\n  \"reasoning\": \"상위 regime은 ACC이며 acc_score 95.3, regime_fitness 0.953으로 SC $61,573.50 → AR $62,942.40 → ST $61,150.20 → Spring/Terminal Spring $62,779.00/$62,658.40 → SOS $63,948.20 → LPS $63,305.00의 누적 구조가 우선입니다. 다만 현재가 $63,060.20은 LPS $63,305.00 아래에 있어 Phase E/BU가 확정적 상방 수용으로 이어졌다고 보기 어렵고, $63,920~$63,948 상단 반응 이후 단기적으로는 AR $62,942.40 재시험 압력이 남아 있습니다. 구조적 편향은 누적 기반의 bullish이나, 실행 관점의 setup_bias는 LPS 이탈과 EMA20 $63,375.77 미회복 때문에 bearish입니다. $63,305 회복 후 유지가 1차 개선 조건이고, $63,920~$63,948 재돌파 및 수용이 확인되어야 ACC 후반 구조의 신뢰도가 다시 높아집니다.\",\n  \"key_levels\": {\n    \"support\": [\n      62942.4,\n      62779.0,\n      62658.4,\n      61573.5,\n      61150.2\n    ],\n    \"resistance\": [\n      63305.0,\n      63375.77,\n      63920.0,\n      63948.2\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"62658.40\",\n  \"risk_scenario\": \"$63,305.00 LPS를 빠르게 회복하지 못하고 AR $62,942.40 아래에서 15분봉 종가 수용이 발생하면, Terminal Spring $62,658.40 및 Spring $62,779.00 구간까지 재시험이 열립니다. 특히 $62,658.40을 명확히 이탈하면 현재 ACC Phase E/BU 해석은 훼손되고, $61,573.50 SC 및 $61,150.20 ST 저점 재검증으로 구조가 다시 range-bound 또는 실패한 누적 후보로 약화될 수 있습니다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "harmonic": {
      "agent_id": "harmonic",
      "display_name": "Harmonic Specialist",
      "signal": "neutral",
      "confidence": 0.52,
      "structure_bias": "neutral",
      "setup_bias": "bullish",
      "setup_score": 0.62,
      "setup_signals": [
        "현재가 $63,060.20가 고컨플루언스 활성 bullish PRZ 클러스터 안에 위치: Bat $62,773.38-$63,152.45, Gartley $62,799.46-$63,153.81, Butterfly $62,847.61-$63,243.22",
        "완성된 strict/high bullish Gartley PRZ $62,994.85-$63,290.38에서 PRZ 터치·방어 및 AD 0.382 반응 도달 확인, reaction_score 0.80",
        "최근접 PRZ는 bullish Butterfly 중심 $63,045.42이며 현재가와의 괴리 price_to_prz -0.02%로 사실상 PRZ 내부 반응 구간",
        "상방 반응 시 검증된 bullish Gartley TP 후보가 $63,450.35, $63,640.47, $63,948.20에 형성",
        "반대로 $63,347.79-$63,741.23 및 $63,433.55-$63,833.21에는 nearby bearish Bat/Butterfly PRZ가 있어 상승 시 즉시 공급·반전 리스크 구간"
      ],
      "reasoning": "하모닉 기준으로 현재 BTC는 $63,060.20에서 다수의 bullish 활성 PRZ 내부에 있으며, 특히 best council PRZ는 strict/high bullish Bat $62,773.38-$63,152.45, 점수 0.965입니다. 다만 이 Bat, Butterfly, Gartley 다수는 아직 forming 상태라 confirmed reaction이 없고, 하모닉 거버넌스상 단독으로 구조 방향을 뒤집을 수 없습니다. 확인된 패턴만 보면 bullish Gartley $62,994.85-$63,290.38은 reaction_score 0.80으로 유효하지만, 위쪽 $63,433.55-$63,833.21에는 이미 반응 확인된 bearish Butterfly/Bat PRZ가 남아 있어 방향 점수도 bullish 1.407 vs bearish 1.457로 거의 동률입니다. 따라서 구조는 중립으로 두고, 실행 셋업은 현재 PRZ 방어가 유지되는 동안만 단기 bullish 반응 후보로 평가합니다.",
      "key_levels": {
        "support": [
          62994.85,
          62847.61,
          62799.46,
          62773.38,
          62658.4
        ],
        "resistance": [
          63243.22,
          63339.29,
          63450.35,
          63571.82,
          63640.47,
          63948.2
        ]
      },
      "time_horizon": "단기, 15분봉 기준 수 개 캔들에서 수 시간",
      "invalidation_level": "$62,773.38 하향 이탈 및 PRZ 재진입 실패",
      "risk_scenario": "$62,773.38 아래로 밀리면 현재 bullish PRZ 클러스터의 방어 실패로 해석되며, $62,658.40 및 $62,676.80 부근 저점 유동성 테스트가 열릴 수 있습니다. 반대로 $63,450-$63,640까지 반등하더라도 $63,433.55-$63,833.21의 bearish PRZ에서 재차 거부되면 상승은 TP성 반등으로 끝나고 $63,000 재하락 리스크가 커집니다.",
      "data_quality": "high",
      "metrics": {
        "patterns_found": 94,
        "completed_patterns_found": 39,
        "forming_d_prz_found": 55,
        "swing_orders_scanned": [
          3,
          5,
          8
        ],
        "swing_search_window": 34,
        "multiscale_swings_scanned": 68,
        "swing_highs_scanned": 33,
        "swing_lows_scanned": 35,
        "timeframe": "15m",
        "prz_active_threshold_pct": 0.3,
        "prz_nearby_threshold_pct": 0.6,
        "prz_watch_threshold_pct": 1.2,
        "prz_max_width_pct": 0.6,
        "quality_counts": {
          "high": 14,
          "medium": 36,
          "low": 44
        },
        "prz_status_counts": {
          "active": 26,
          "nearby": 10,
          "watch": 25,
          "far": 33,
          "forming": 23
        },
        "high_confluence_prz_count": 39,
        "strict_patterns_found": 46,
        "candidate_patterns_found": 48,
        "active_patterns_at_prz": 26,
        "nearby_patterns": 10,
        "all_patterns": [
          "bat",
          "butterfly",
          "gartley",
          "gartley",
          "shark",
          "bat",
          "gartley",
          "shark",
          "gartley",
          "butterfly",
          "bat",
          "butterfly",
          "butterfly",
          "butterfly",
          "shark",
          "bat",
          "crab",
          "bat",
          "gartley",
          "shark",
          "gartley",
          "gartley",
          "butterfly",
          "gartley",
          "bat",
          "shark",
          "bat",
          "bat",
          "butterfly",
          "crab",
          "gartley",
          "butterfly",
          "crab",
          "crab",
          "shark",
          "shark",
          "crab",
          "crab",
          "shark",
          "crab",
          "crab",
          "gartley",
          "butterfly",
          "crab",
          "shark",
          "bat",
          "crab",
          "shark",
          "butterfly",
          "gartley",
          "crab",
          "butterfly",
          "crab",
          "butterfly",
          "crab",
          "butterfly",
          "shark",
          "butterfly",
          "butterfly",
          "crab",
          "bat",
          "bat",
          "shark",
          "bat",
          "butterfly",
          "gartley",
          "butterfly",
          "crab",
          "crab",
          "gartley",
          "shark",
          "crab",
          "gartley",
          "crab",
          "crab",
          "butterfly",
          "butterfly",
          "shark",
          "shark",
          "crab",
          "crab",
          "shark",
          "bat",
          "gartley",
          "butterfly",
          "crab",
          "crab",
          "crab",
          "butterfly",
          "butterfly",
          "crab",
          "butterfly",
          "crab",
          "butterfly"
        ],
        "all_signals": [
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish"
        ],
        "best_pattern": "bat",
        "best_pattern_quality": "strict",
        "best_quality": "high",
        "best_pattern_score": 0.965,
        "best_completion_status": "forming",
        "nearest_pattern": "butterfly",
        "nearest_prz": 63045.42,
        "price_to_prz": -0.02,
        "prz_range": [
          62847.61,
          63243.22
        ],
        "council_relevant_prz_count": 10,
        "directional_influence_prz_count": 10,
        "confirmed_reaction_prz_count": 4,
        "validated_harmonic_tp_count": 4,
        "pattern_candidates": [
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.965,
            "ratio_score": 1.0,
            "prz_score": 0.999,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 62962.91,
            "prz_range": [
              62773.38,
              63152.45
            ],
            "prz_width_pct": 0.602,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.15,
            "price_to_prz_pct_raw": -0.1543,
            "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": 62962.91,
              "a_price": 63948.2,
              "tp1_ad_382": 63339.29,
              "tp2_ad_618": 63571.82,
              "tp3_a_or_structure_liquidity": 63948.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.479,
              "ABC": 0.532
            },
            "x_price": 62658.4,
            "x_idx": 252,
            "x_order": 8,
            "a_price": 63948.2,
            "a_idx": 255,
            "a_order": 5,
            "b_price": 63330.4,
            "b_idx": 258,
            "b_order": 3,
            "c_price": 63659.1,
            "c_idx": 278,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.958,
            "ratio_score": 0.992,
            "prz_score": 0.989,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63045.42,
            "prz_range": [
              62847.61,
              63243.22
            ],
            "prz_width_pct": 0.627,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.02,
            "price_to_prz_pct_raw": -0.0234,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 63045.42,
              "a_price": 63659.1,
              "tp1_ad_382": 63279.84,
              "tp2_ad_618": 63424.67,
              "tp3_a_or_structure_liquidity": 63659.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7878,
              "ABC": 0.7543
            },
            "x_price": 63209.6,
            "x_idx": 274,
            "x_order": 8,
            "a_price": 63659.1,
            "a_idx": 278,
            "a_order": 5,
            "b_price": 63305.0,
            "b_idx": 279,
            "b_order": 3,
            "c_price": 63572.1,
            "c_idx": 282,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.956,
            "ratio_score": 0.919,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 62976.64,
            "prz_range": [
              62799.46,
              63153.81
            ],
            "prz_width_pct": 0.563,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.13,
            "price_to_prz_pct_raw": -0.1325,
            "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": 62976.64,
              "a_price": 63948.2,
              "tp1_ad_382": 63347.77,
              "tp2_ad_618": 63577.06,
              "tp3_a_or_structure_liquidity": 63948.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6317,
              "ABC": 0.8434
            },
            "x_price": 62779.0,
            "x_idx": 232,
            "x_order": 3,
            "a_price": 63948.2,
            "a_idx": 255,
            "a_order": 5,
            "b_price": 63209.6,
            "b_idx": 274,
            "b_order": 8,
            "c_price": 63832.5,
            "c_idx": 290,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.942,
            "ratio_score": 0.981,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63171.2,
            "prz_range": [
              62994.85,
              63290.38
            ],
            "prz_width_pct": 0.468,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.13,
            "price_to_prz_pct_raw": 0.1307,
            "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"
              ],
              "reaction_score": 0.8,
              "reaction_detail": {
                "reaction_score": 0.8,
                "reaction_move_ratio_ad": 0.51,
                "adverse_move_ratio_ad": 0.298,
                "bars_after_d": 6,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "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": "bullish",
              "source": "gartley",
              "d_price": 63142.61,
              "a_price": 63948.2,
              "tp1_ad_382": 63450.35,
              "tp2_ad_618": 63640.47,
              "tp3_a_or_structure_liquidity": 63948.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6225,
              "ABC": 0.8127,
              "BCD": 1.3171,
              "XAD": 0.7829
            },
            "x_price": 62955.7,
            "x_idx": 237,
            "x_order": 3,
            "a_price": 63948.2,
            "a_idx": 255,
            "a_order": 5,
            "b_price": 63330.4,
            "b_idx": 258,
            "b_order": 3,
            "c_price": 63832.5,
            "c_idx": 290,
            "c_order": 8,
            "d_idx": 293
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.931,
            "ratio_score": 1.0,
            "prz_score": 0.993,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 63544.51,
            "prz_range": [
              63347.79,
              63741.23
            ],
            "prz_width_pct": 0.619,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.77,
            "price_to_prz_pct_raw": 0.768,
            "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": 63544.51,
              "a_price": 62676.8,
              "tp1_ad_382": 63213.05,
              "tp2_ad_618": 63008.27,
              "tp3_a_or_structure_liquidity": 62676.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4788,
              "ABC": 0.3888
            },
            "x_price": 63849.5,
            "x_idx": 206,
            "x_order": 8,
            "a_price": 62676.8,
            "a_idx": 210,
            "a_order": 8,
            "b_price": 63238.3,
            "b_idx": 212,
            "b_order": 3,
            "c_price": 63020.0,
            "c_idx": 248,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.929,
            "ratio_score": 0.923,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63207.47,
            "prz_range": [
              63101.98,
              63312.95
            ],
            "prz_width_pct": 0.334,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.23,
            "price_to_prz_pct_raw": 0.2335,
            "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": 63207.47,
              "a_price": 63861.3,
              "tp1_ad_382": 63457.23,
              "tp2_ad_618": 63611.54,
              "tp3_a_or_structure_liquidity": 63861.3,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.631,
              "ABC": 0.6191
            },
            "x_price": 63020.0,
            "x_idx": 248,
            "x_order": 3,
            "a_price": 63861.3,
            "a_idx": 250,
            "a_order": 3,
            "b_price": 63330.4,
            "b_idx": 258,
            "b_order": 3,
            "c_price": 63659.1,
            "c_idx": 278,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.915,
            "ratio_score": 0.993,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 63594.61,
            "prz_range": [
              63467.13,
              63722.09
            ],
            "prz_width_pct": 0.401,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.85,
            "price_to_prz_pct_raw": 0.8475,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 63594.61,
              "a_price": 62881.9,
              "tp1_ad_382": 63322.35,
              "tp2_ad_618": 63154.15,
              "tp3_a_or_structure_liquidity": 62881.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6168,
              "ABC": 0.7518
            },
            "x_price": 61980.0,
            "x_idx": 192,
            "x_order": 3,
            "a_price": 62881.9,
            "a_idx": 214,
            "a_order": 3,
            "b_price": 63438.2,
            "b_idx": 216,
            "b_order": 5,
            "c_price": 63020.0,
            "c_idx": 248,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.902,
            "ratio_score": 0.95,
            "prz_score": 0.989,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 63633.38,
            "prz_range": [
              63433.55,
              63833.21
            ],
            "prz_width_pct": 0.628,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.91,
            "price_to_prz_pct_raw": 0.9089,
            "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": 63633.38,
              "a_price": 62881.9,
              "tp1_ad_382": 63346.31,
              "tp2_ad_618": 63168.96,
              "tp3_a_or_structure_liquidity": 62881.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7752,
              "ABC": 0.6854
            },
            "x_price": 62315.6,
            "x_idx": 178,
            "x_order": 3,
            "a_price": 62881.9,
            "a_idx": 214,
            "a_order": 3,
            "b_price": 63320.9,
            "b_idx": 235,
            "b_order": 5,
            "c_price": 63020.0,
            "c_idx": 248,
            "c_order": 3,
            "d_idx": null
          }
        ],
        "council_relevant_prz": [
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.942,
            "ratio_score": 0.981,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63171.2,
            "prz_range": [
              62994.85,
              63290.38
            ],
            "prz_width_pct": 0.468,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.13,
            "price_to_prz_pct_raw": 0.1307,
            "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"
              ],
              "reaction_score": 0.8,
              "reaction_detail": {
                "reaction_score": 0.8,
                "reaction_move_ratio_ad": 0.51,
                "adverse_move_ratio_ad": 0.298,
                "bars_after_d": 6,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "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": "bullish",
              "source": "gartley",
              "d_price": 63142.61,
              "a_price": 63948.2,
              "tp1_ad_382": 63450.35,
              "tp2_ad_618": 63640.47,
              "tp3_a_or_structure_liquidity": 63948.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6225,
              "ABC": 0.8127,
              "BCD": 1.3171,
              "XAD": 0.7829
            },
            "x_price": 62955.7,
            "x_idx": 237,
            "x_order": 3,
            "a_price": 63948.2,
            "a_idx": 255,
            "a_order": 5,
            "b_price": 63330.4,
            "b_idx": 258,
            "b_order": 3,
            "c_price": 63832.5,
            "c_idx": 290,
            "c_order": 8,
            "d_idx": 293
          },
          {
            "pattern": "butterfly",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.9,
            "ratio_score": 0.978,
            "prz_score": 0.989,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 63659.1,
            "prz_range": [
              63433.55,
              63833.21
            ],
            "prz_width_pct": 0.628,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.91,
            "price_to_prz_pct_raw": 0.9089,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected"
              ],
              "reaction_score": 0.8,
              "reaction_detail": {
                "reaction_score": 0.8,
                "reaction_move_ratio_ad": 0.693,
                "adverse_move_ratio_ad": 0.223,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "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": "butterfly",
              "d_price": 63633.38,
              "a_price": 62881.9,
              "tp1_ad_382": 63346.31,
              "tp2_ad_618": 63168.96,
              "tp3_a_or_structure_liquidity": 62881.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7752,
              "ABC": 0.6854,
              "BCD": 2.124,
              "XAD": 1.3724
            },
            "x_price": 62315.6,
            "x_idx": 178,
            "x_order": 3,
            "a_price": 62881.9,
            "a_idx": 214,
            "a_order": 3,
            "b_price": 63320.9,
            "b_idx": 235,
            "b_order": 5,
            "c_price": 63020.0,
            "c_idx": 248,
            "c_order": 3,
            "d_idx": 278
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.891,
            "ratio_score": 0.946,
            "prz_score": 0.989,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 63659.1,
            "prz_range": [
              63433.55,
              63833.21
            ],
            "prz_width_pct": 0.628,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.91,
            "price_to_prz_pct_raw": 0.9089,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected"
              ],
              "reaction_score": 0.8,
              "reaction_detail": {
                "reaction_score": 0.8,
                "reaction_move_ratio_ad": 0.693,
                "adverse_move_ratio_ad": 0.223,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "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": 63633.38,
              "a_price": 62881.9,
              "tp1_ad_382": 63346.31,
              "tp2_ad_618": 63168.96,
              "tp3_a_or_structure_liquidity": 62881.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4868,
              "ABC": 0.6854,
              "BCD": 2.124,
              "XAD": 0.8617
            },
            "x_price": 61980.0,
            "x_idx": 192,
            "x_order": 3,
            "a_price": 62881.9,
            "a_idx": 214,
            "a_order": 3,
            "b_price": 63320.9,
            "b_idx": 235,
            "b_order": 5,
            "c_price": 63020.0,
            "c_idx": 248,
            "c_order": 3,
            "d_idx": 278
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.862,
            "ratio_score": 0.878,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 63572.1,
            "prz_range": [
              63381.6,
              63755.75
            ],
            "prz_width_pct": 0.589,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.81,
            "price_to_prz_pct_raw": 0.8063,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.236_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "post_D_close_progress"
              ],
              "reaction_score": 0.75,
              "reaction_detail": {
                "reaction_score": 0.75,
                "reaction_move_ratio_ad": 0.378,
                "adverse_move_ratio_ad": 0.218,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.236_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 63568.68,
              "a_price": 62377.0,
              "tp1_ad_382": 63113.46,
              "tp2_ad_618": 62832.22,
              "tp3_a_or_structure_liquidity": 62377.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.641,
              "ABC": 0.7019,
              "BCD": 1.3792,
              "XAD": 0.8116
            },
            "x_price": 63849.5,
            "x_idx": 206,
            "x_order": 8,
            "a_price": 62377.0,
            "a_idx": 226,
            "a_order": 8,
            "b_price": 63320.9,
            "b_idx": 235,
            "b_order": 5,
            "c_price": 62658.4,
            "c_idx": 252,
            "c_order": 8,
            "d_idx": 282
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.965,
            "ratio_score": 1.0,
            "prz_score": 0.999,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 62962.91,
            "prz_range": [
              62773.38,
              63152.45
            ],
            "prz_width_pct": 0.602,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.15,
            "price_to_prz_pct_raw": -0.1543,
            "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": 62962.91,
              "a_price": 63948.2,
              "tp1_ad_382": 63339.29,
              "tp2_ad_618": 63571.82,
              "tp3_a_or_structure_liquidity": 63948.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.479,
              "ABC": 0.532
            },
            "x_price": 62658.4,
            "x_idx": 252,
            "x_order": 8,
            "a_price": 63948.2,
            "a_idx": 255,
            "a_order": 5,
            "b_price": 63330.4,
            "b_idx": 258,
            "b_order": 3,
            "c_price": 63659.1,
            "c_idx": 278,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.958,
            "ratio_score": 0.992,
            "prz_score": 0.989,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63045.42,
            "prz_range": [
              62847.61,
              63243.22
            ],
            "prz_width_pct": 0.627,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.02,
            "price_to_prz_pct_raw": -0.0234,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 63045.42,
              "a_price": 63659.1,
              "tp1_ad_382": 63279.84,
              "tp2_ad_618": 63424.67,
              "tp3_a_or_structure_liquidity": 63659.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7878,
              "ABC": 0.7543
            },
            "x_price": 63209.6,
            "x_idx": 274,
            "x_order": 8,
            "a_price": 63659.1,
            "a_idx": 278,
            "a_order": 5,
            "b_price": 63305.0,
            "b_idx": 279,
            "b_order": 3,
            "c_price": 63572.1,
            "c_idx": 282,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.956,
            "ratio_score": 0.919,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 62976.64,
            "prz_range": [
              62799.46,
              63153.81
            ],
            "prz_width_pct": 0.563,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.13,
            "price_to_prz_pct_raw": -0.1325,
            "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": 62976.64,
              "a_price": 63948.2,
              "tp1_ad_382": 63347.77,
              "tp2_ad_618": 63577.06,
              "tp3_a_or_structure_liquidity": 63948.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6317,
              "ABC": 0.8434
            },
            "x_price": 62779.0,
            "x_idx": 232,
            "x_order": 3,
            "a_price": 63948.2,
            "a_idx": 255,
            "a_order": 5,
            "b_price": 63209.6,
            "b_idx": 274,
            "b_order": 8,
            "c_price": 63832.5,
            "c_idx": 290,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.931,
            "ratio_score": 1.0,
            "prz_score": 0.993,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 63544.51,
            "prz_range": [
              63347.79,
              63741.23
            ],
            "prz_width_pct": 0.619,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.77,
            "price_to_prz_pct_raw": 0.768,
            "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": 63544.51,
              "a_price": 62676.8,
              "tp1_ad_382": 63213.05,
              "tp2_ad_618": 63008.27,
              "tp3_a_or_structure_liquidity": 62676.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4788,
              "ABC": 0.3888
            },
            "x_price": 63849.5,
            "x_idx": 206,
            "x_order": 8,
            "a_price": 62676.8,
            "a_idx": 210,
            "a_order": 8,
            "b_price": 63238.3,
            "b_idx": 212,
            "b_order": 3,
            "c_price": 63020.0,
            "c_idx": 248,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.929,
            "ratio_score": 0.923,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63207.47,
            "prz_range": [
              63101.98,
              63312.95
            ],
            "prz_width_pct": 0.334,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.23,
            "price_to_prz_pct_raw": 0.2335,
            "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": 63207.47,
              "a_price": 63861.3,
              "tp1_ad_382": 63457.23,
              "tp2_ad_618": 63611.54,
              "tp3_a_or_structure_liquidity": 63861.3,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.631,
              "ABC": 0.6191
            },
            "x_price": 63020.0,
            "x_idx": 248,
            "x_order": 3,
            "a_price": 63861.3,
            "a_idx": 250,
            "a_order": 3,
            "b_price": 63330.4,
            "b_idx": 258,
            "b_order": 3,
            "c_price": 63659.1,
            "c_idx": 278,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.902,
            "ratio_score": 0.95,
            "prz_score": 0.989,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 63633.38,
            "prz_range": [
              63433.55,
              63833.21
            ],
            "prz_width_pct": 0.628,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.91,
            "price_to_prz_pct_raw": 0.9089,
            "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": 63633.38,
              "a_price": 62881.9,
              "tp1_ad_382": 63346.31,
              "tp2_ad_618": 63168.96,
              "tp3_a_or_structure_liquidity": 62881.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7752,
              "ABC": 0.6854
            },
            "x_price": 62315.6,
            "x_idx": 178,
            "x_order": 3,
            "a_price": 62881.9,
            "a_idx": 214,
            "a_order": 3,
            "b_price": 63320.9,
            "b_idx": 235,
            "b_order": 5,
            "c_price": 63020.0,
            "c_idx": 248,
            "c_order": 3,
            "d_idx": null
          }
        ],
        "report_detail_candidates": [
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.965,
            "ratio_score": 1.0,
            "prz_score": 0.999,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 62962.91,
            "prz_range": [
              62773.38,
              63152.45
            ],
            "prz_width_pct": 0.602,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.15,
            "price_to_prz_pct_raw": -0.1543,
            "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": 62962.91,
              "a_price": 63948.2,
              "tp1_ad_382": 63339.29,
              "tp2_ad_618": 63571.82,
              "tp3_a_or_structure_liquidity": 63948.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.479,
              "ABC": 0.532
            },
            "x_price": 62658.4,
            "x_idx": 252,
            "x_order": 8,
            "a_price": 63948.2,
            "a_idx": 255,
            "a_order": 5,
            "b_price": 63330.4,
            "b_idx": 258,
            "b_order": 3,
            "c_price": 63659.1,
            "c_idx": 278,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.958,
            "ratio_score": 0.992,
            "prz_score": 0.989,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63045.42,
            "prz_range": [
              62847.61,
              63243.22
            ],
            "prz_width_pct": 0.627,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.02,
            "price_to_prz_pct_raw": -0.0234,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 63045.42,
              "a_price": 63659.1,
              "tp1_ad_382": 63279.84,
              "tp2_ad_618": 63424.67,
              "tp3_a_or_structure_liquidity": 63659.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7878,
              "ABC": 0.7543
            },
            "x_price": 63209.6,
            "x_idx": 274,
            "x_order": 8,
            "a_price": 63659.1,
            "a_idx": 278,
            "a_order": 5,
            "b_price": 63305.0,
            "b_idx": 279,
            "b_order": 3,
            "c_price": 63572.1,
            "c_idx": 282,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.956,
            "ratio_score": 0.919,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 62976.64,
            "prz_range": [
              62799.46,
              63153.81
            ],
            "prz_width_pct": 0.563,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.13,
            "price_to_prz_pct_raw": -0.1325,
            "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": 62976.64,
              "a_price": 63948.2,
              "tp1_ad_382": 63347.77,
              "tp2_ad_618": 63577.06,
              "tp3_a_or_structure_liquidity": 63948.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6317,
              "ABC": 0.8434
            },
            "x_price": 62779.0,
            "x_idx": 232,
            "x_order": 3,
            "a_price": 63948.2,
            "a_idx": 255,
            "a_order": 5,
            "b_price": 63209.6,
            "b_idx": 274,
            "b_order": 8,
            "c_price": 63832.5,
            "c_idx": 290,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.942,
            "ratio_score": 0.981,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63171.2,
            "prz_range": [
              62994.85,
              63290.38
            ],
            "prz_width_pct": 0.468,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.13,
            "price_to_prz_pct_raw": 0.1307,
            "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"
              ],
              "reaction_score": 0.8,
              "reaction_detail": {
                "reaction_score": 0.8,
                "reaction_move_ratio_ad": 0.51,
                "adverse_move_ratio_ad": 0.298,
                "bars_after_d": 6,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "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": "bullish",
              "source": "gartley",
              "d_price": 63142.61,
              "a_price": 63948.2,
              "tp1_ad_382": 63450.35,
              "tp2_ad_618": 63640.47,
              "tp3_a_or_structure_liquidity": 63948.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6225,
              "ABC": 0.8127,
              "BCD": 1.3171,
              "XAD": 0.7829
            },
            "x_price": 62955.7,
            "x_idx": 237,
            "x_order": 3,
            "a_price": 63948.2,
            "a_idx": 255,
            "a_order": 5,
            "b_price": 63330.4,
            "b_idx": 258,
            "b_order": 3,
            "c_price": 63832.5,
            "c_idx": 290,
            "c_order": 8,
            "d_idx": 293
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.931,
            "ratio_score": 1.0,
            "prz_score": 0.993,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 63544.51,
            "prz_range": [
              63347.79,
              63741.23
            ],
            "prz_width_pct": 0.619,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.77,
            "price_to_prz_pct_raw": 0.768,
            "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": 63544.51,
              "a_price": 62676.8,
              "tp1_ad_382": 63213.05,
              "tp2_ad_618": 63008.27,
              "tp3_a_or_structure_liquidity": 62676.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4788,
              "ABC": 0.3888
            },
            "x_price": 63849.5,
            "x_idx": 206,
            "x_order": 8,
            "a_price": 62676.8,
            "a_idx": 210,
            "a_order": 8,
            "b_price": 63238.3,
            "b_idx": 212,
            "b_order": 3,
            "c_price": 63020.0,
            "c_idx": 248,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.929,
            "ratio_score": 0.923,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63207.47,
            "prz_range": [
              63101.98,
              63312.95
            ],
            "prz_width_pct": 0.334,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.23,
            "price_to_prz_pct_raw": 0.2335,
            "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": 63207.47,
              "a_price": 63861.3,
              "tp1_ad_382": 63457.23,
              "tp2_ad_618": 63611.54,
              "tp3_a_or_structure_liquidity": 63861.3,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.631,
              "ABC": 0.6191
            },
            "x_price": 63020.0,
            "x_idx": 248,
            "x_order": 3,
            "a_price": 63861.3,
            "a_idx": 250,
            "a_order": 3,
            "b_price": 63330.4,
            "b_idx": 258,
            "b_order": 3,
            "c_price": 63659.1,
            "c_idx": 278,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.915,
            "ratio_score": 0.993,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 63594.61,
            "prz_range": [
              63467.13,
              63722.09
            ],
            "prz_width_pct": 0.401,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.85,
            "price_to_prz_pct_raw": 0.8475,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 63594.61,
              "a_price": 62881.9,
              "tp1_ad_382": 63322.35,
              "tp2_ad_618": 63154.15,
              "tp3_a_or_structure_liquidity": 62881.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6168,
              "ABC": 0.7518
            },
            "x_price": 61980.0,
            "x_idx": 192,
            "x_order": 3,
            "a_price": 62881.9,
            "a_idx": 214,
            "a_order": 3,
            "b_price": 63438.2,
            "b_idx": 216,
            "b_order": 5,
            "c_price": 63020.0,
            "c_idx": 248,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.902,
            "ratio_score": 0.95,
            "prz_score": 0.989,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 63633.38,
            "prz_range": [
              63433.55,
              63833.21
            ],
            "prz_width_pct": 0.628,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.91,
            "price_to_prz_pct_raw": 0.9089,
            "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": 63633.38,
              "a_price": 62881.9,
              "tp1_ad_382": 63346.31,
              "tp2_ad_618": 63168.96,
              "tp3_a_or_structure_liquidity": 62881.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7752,
              "ABC": 0.6854
            },
            "x_price": 62315.6,
            "x_idx": 178,
            "x_order": 3,
            "a_price": 62881.9,
            "a_idx": 214,
            "a_order": 3,
            "b_price": 63320.9,
            "b_idx": 235,
            "b_order": 5,
            "c_price": 63020.0,
            "c_idx": 248,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.9,
            "ratio_score": 1.0,
            "prz_score": 0.992,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 63940.52,
            "prz_range": [
              63742.4,
              64138.65
            ],
            "prz_width_pct": 0.62,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.4,
            "price_to_prz_pct_raw": 1.396,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "bat",
              "d_price": 63940.52,
              "a_price": 62881.9,
              "tp1_ad_382": 63536.13,
              "tp2_ad_618": 63286.29,
              "tp3_a_or_structure_liquidity": 62881.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4918,
              "ABC": 0.5129
            },
            "x_price": 64250.0,
            "x_idx": 197,
            "x_order": 8,
            "a_price": 62881.9,
            "a_idx": 214,
            "a_order": 3,
            "b_price": 63554.7,
            "b_idx": 241,
            "b_order": 5,
            "c_price": 63209.6,
            "c_idx": 274,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.9,
            "ratio_score": 0.978,
            "prz_score": 0.989,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 63659.1,
            "prz_range": [
              63433.55,
              63833.21
            ],
            "prz_width_pct": 0.628,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.91,
            "price_to_prz_pct_raw": 0.9089,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected"
              ],
              "reaction_score": 0.8,
              "reaction_detail": {
                "reaction_score": 0.8,
                "reaction_move_ratio_ad": 0.693,
                "adverse_move_ratio_ad": 0.223,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "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": "butterfly",
              "d_price": 63633.38,
              "a_price": 62881.9,
              "tp1_ad_382": 63346.31,
              "tp2_ad_618": 63168.96,
              "tp3_a_or_structure_liquidity": 62881.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7752,
              "ABC": 0.6854,
              "BCD": 2.124,
              "XAD": 1.3724
            },
            "x_price": 62315.6,
            "x_idx": 178,
            "x_order": 3,
            "a_price": 62881.9,
            "a_idx": 214,
            "a_order": 3,
            "b_price": 63320.9,
            "b_idx": 235,
            "b_order": 5,
            "c_price": 63020.0,
            "c_idx": 248,
            "c_order": 3,
            "d_idx": 278
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.896,
            "ratio_score": 0.886,
            "prz_score": 0.989,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63120.4,
            "prz_range": [
              62847.61,
              63243.22
            ],
            "prz_width_pct": 0.627,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.02,
            "price_to_prz_pct_raw": -0.0234,
            "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"
              ],
              "reaction_score": 0.8,
              "reaction_detail": {
                "reaction_score": 0.8,
                "reaction_move_ratio_ad": 1.322,
                "adverse_move_ratio_ad": 0.148,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "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": "bullish",
              "source": "butterfly",
              "d_price": 63045.42,
              "a_price": 63659.1,
              "tp1_ad_382": 63279.84,
              "tp2_ad_618": 63424.67,
              "tp3_a_or_structure_liquidity": 63659.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7878,
              "ABC": 0.7543,
              "BCD": 1.6911,
              "XAD": 1.1984
            },
            "x_price": 63209.6,
            "x_idx": 274,
            "x_order": 8,
            "a_price": 63659.1,
            "a_idx": 278,
            "a_order": 5,
            "b_price": 63305.0,
            "b_idx": 279,
            "b_order": 3,
            "c_price": 63572.1,
            "c_idx": 282,
            "c_order": 3,
            "d_idx": 285
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.891,
            "ratio_score": 0.946,
            "prz_score": 0.989,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 63659.1,
            "prz_range": [
              63433.55,
              63833.21
            ],
            "prz_width_pct": 0.628,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.91,
            "price_to_prz_pct_raw": 0.9089,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected"
              ],
              "reaction_score": 0.8,
              "reaction_detail": {
                "reaction_score": 0.8,
                "reaction_move_ratio_ad": 0.693,
                "adverse_move_ratio_ad": 0.223,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "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": 63633.38,
              "a_price": 62881.9,
              "tp1_ad_382": 63346.31,
              "tp2_ad_618": 63168.96,
              "tp3_a_or_structure_liquidity": 62881.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4868,
              "ABC": 0.6854,
              "BCD": 2.124,
              "XAD": 0.8617
            },
            "x_price": 61980.0,
            "x_idx": 192,
            "x_order": 3,
            "a_price": 62881.9,
            "a_idx": 214,
            "a_order": 3,
            "b_price": 63320.9,
            "b_idx": 235,
            "b_order": 5,
            "c_price": 63020.0,
            "c_idx": 248,
            "c_order": 3,
            "d_idx": 278
          }
        ],
        "actionable_patterns_list": [
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.965,
            "prz_proximity": "active",
            "prz_range": [
              62773.38,
              63152.45
            ],
            "prz_reversal_direction": "up",
            "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": "bullish",
              "source": "bat",
              "d_price": 62962.91,
              "a_price": 63948.2,
              "tp1_ad_382": 63339.29,
              "tp2_ad_618": 63571.82,
              "tp3_a_or_structure_liquidity": 63948.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "BAT FORMING HIGH PRZ $62,773.38-$63,152.45: expected reversal UP if price reacts in zone"
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.958,
            "prz_proximity": "active",
            "prz_range": [
              62847.61,
              63243.22
            ],
            "prz_reversal_direction": "up",
            "price_to_prz_pct": -0.02,
            "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": "butterfly",
              "d_price": 63045.42,
              "a_price": 63659.1,
              "tp1_ad_382": 63279.84,
              "tp2_ad_618": 63424.67,
              "tp3_a_or_structure_liquidity": 63659.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "BUTTERFLY FORMING HIGH PRZ $62,847.61-$63,243.22: expected reversal UP if price reacts in zone"
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.956,
            "prz_proximity": "active",
            "prz_range": [
              62799.46,
              63153.81
            ],
            "prz_reversal_direction": "up",
            "price_to_prz_pct": -0.13,
            "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": "gartley",
              "d_price": 62976.64,
              "a_price": 63948.2,
              "tp1_ad_382": 63347.77,
              "tp2_ad_618": 63577.06,
              "tp3_a_or_structure_liquidity": 63948.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "GARTLEY FORMING HIGH PRZ $62,799.46-$63,153.81: expected reversal UP if price reacts in zone"
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.942,
            "prz_proximity": "active",
            "prz_range": [
              62994.85,
              63290.38
            ],
            "prz_reversal_direction": "up",
            "price_to_prz_pct": 0.13,
            "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"
              ],
              "reaction_score": 0.8,
              "reaction_detail": {
                "reaction_score": 0.8,
                "reaction_move_ratio_ad": 0.51,
                "adverse_move_ratio_ad": 0.298,
                "bars_after_d": 6,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "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": "bullish",
              "source": "gartley",
              "d_price": 63142.61,
              "a_price": 63948.2,
              "tp1_ad_382": 63450.35,
              "tp2_ad_618": 63640.47,
              "tp3_a_or_structure_liquidity": 63948.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "GARTLEY COMPLETED HIGH PRZ $62,994.85-$63,290.38: expected reversal UP if price reacts in zone"
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.931,
            "prz_proximity": "nearby",
            "prz_range": [
              63347.79,
              63741.23
            ],
            "prz_reversal_direction": "down",
            "price_to_prz_pct": 0.77,
            "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": 63544.51,
              "a_price": 62676.8,
              "tp1_ad_382": 63213.05,
              "tp2_ad_618": 63008.27,
              "tp3_a_or_structure_liquidity": 62676.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "BAT FORMING HIGH PRZ $63,347.79-$63,741.23: expected reversal DOWN if price reacts in zone"
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.929,
            "prz_proximity": "active",
            "prz_range": [
              63101.98,
              63312.95
            ],
            "prz_reversal_direction": "up",
            "price_to_prz_pct": 0.23,
            "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": "gartley",
              "d_price": 63207.47,
              "a_price": 63861.3,
              "tp1_ad_382": 63457.23,
              "tp2_ad_618": 63611.54,
              "tp3_a_or_structure_liquidity": 63861.3,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "GARTLEY FORMING HIGH PRZ $63,101.98-$63,312.95: expected reversal UP if price reacts in zone"
          }
        ],
        "best_council_prz": {
          "pattern": "bat",
          "signal": "bullish",
          "completion_status": "forming",
          "pattern_quality": "strict",
          "quality": "high",
          "pattern_score": 0.965,
          "ratio_score": 1.0,
          "prz_score": 0.999,
          "prz_proximity": "active",
          "action_status": "active",
          "high_confluence_prz": true,
          "d_price": 62962.91,
          "prz_range": [
            62773.38,
            63152.45
          ],
          "prz_width_pct": 0.602,
          "prz_confluence_count": 3,
          "prz_fib_families": [
            "ABCD",
            "BC_EXT",
            "XAD"
          ],
          "price_to_prz_pct": -0.15,
          "price_to_prz_pct_raw": -0.1543,
          "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": 62962.91,
            "a_price": 63948.2,
            "tp1_ad_382": 63339.29,
            "tp2_ad_618": 63571.82,
            "tp3_a_or_structure_liquidity": 63948.2,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          "ratios": {
            "XAB": 0.479,
            "ABC": 0.532
          },
          "x_price": 62658.4,
          "x_idx": 252,
          "x_order": 8,
          "a_price": 63948.2,
          "a_idx": 255,
          "a_order": 5,
          "b_price": 63330.4,
          "b_idx": 258,
          "b_order": 3,
          "c_price": 63659.1,
          "c_idx": 278,
          "c_order": 5,
          "d_idx": null
        },
        "best_tp_ladder": {
          "direction": "bullish",
          "source": "bat",
          "d_price": 62962.91,
          "a_price": 63948.2,
          "tp1_ad_382": 63339.29,
          "tp2_ad_618": 63571.82,
          "tp3_a_or_structure_liquidity": 63948.2,
          "note": "Use as strong TP ladder context; not standalone path authority."
        },
        "best_confirmed_tp_ladder": {
          "direction": "bullish",
          "source": "gartley",
          "d_price": 63142.61,
          "a_price": 63948.2,
          "tp1_ad_382": 63450.35,
          "tp2_ad_618": 63640.47,
          "tp3_a_or_structure_liquidity": 63948.2,
          "note": "Use as strong TP ladder context; not standalone path authority."
        },
        "tp_ladder": [
          {
            "direction": "bullish",
            "source": "bat",
            "d_price": 62962.91,
            "a_price": 63948.2,
            "tp1_ad_382": 63339.29,
            "tp2_ad_618": 63571.82,
            "tp3_a_or_structure_liquidity": 63948.2,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bullish",
            "source": "butterfly",
            "d_price": 63045.42,
            "a_price": 63659.1,
            "tp1_ad_382": 63279.84,
            "tp2_ad_618": 63424.67,
            "tp3_a_or_structure_liquidity": 63659.1,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bullish",
            "source": "gartley",
            "d_price": 62976.64,
            "a_price": 63948.2,
            "tp1_ad_382": 63347.77,
            "tp2_ad_618": 63577.06,
            "tp3_a_or_structure_liquidity": 63948.2,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bullish",
            "source": "gartley",
            "d_price": 63142.61,
            "a_price": 63948.2,
            "tp1_ad_382": 63450.35,
            "tp2_ad_618": 63640.47,
            "tp3_a_or_structure_liquidity": 63948.2,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bearish",
            "source": "bat",
            "d_price": 63544.51,
            "a_price": 62676.8,
            "tp1_ad_382": 63213.05,
            "tp2_ad_618": 63008.27,
            "tp3_a_or_structure_liquidity": 62676.8,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bullish",
            "source": "gartley",
            "d_price": 63207.47,
            "a_price": 63861.3,
            "tp1_ad_382": 63457.23,
            "tp2_ad_618": 63611.54,
            "tp3_a_or_structure_liquidity": 63861.3,
            "note": "Use as strong TP ladder context; not standalone path authority."
          }
        ],
        "validated_tp_ladder": [
          {
            "direction": "bullish",
            "source": "gartley",
            "d_price": 63142.61,
            "a_price": 63948.2,
            "tp1_ad_382": 63450.35,
            "tp2_ad_618": 63640.47,
            "tp3_a_or_structure_liquidity": 63948.2,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bearish",
            "source": "butterfly",
            "d_price": 63633.38,
            "a_price": 62881.9,
            "tp1_ad_382": 63346.31,
            "tp2_ad_618": 63168.96,
            "tp3_a_or_structure_liquidity": 62881.9,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bearish",
            "source": "bat",
            "d_price": 63633.38,
            "a_price": 62881.9,
            "tp1_ad_382": 63346.31,
            "tp2_ad_618": 63168.96,
            "tp3_a_or_structure_liquidity": 62881.9,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bearish",
            "source": "gartley",
            "d_price": 63568.68,
            "a_price": 62377.0,
            "tp1_ad_382": 63113.46,
            "tp2_ad_618": 62832.22,
            "tp3_a_or_structure_liquidity": 62377.0,
            "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": 1.407,
          "bearish": 1.457
        },
        "directional_score_total": 2.864,
        "directional_dominance": 0.017
      },
      "raw_llm_response": "{\n  \"signal\": \"neutral\",\n  \"confidence\": 0.52,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.62,\n  \"setup_signals\": [\n    \"현재가 $63,060.20가 고컨플루언스 활성 bullish PRZ 클러스터 안에 위치: Bat $62,773.38-$63,152.45, Gartley $62,799.46-$63,153.81, Butterfly $62,847.61-$63,243.22\",\n    \"완성된 strict/high bullish Gartley PRZ $62,994.85-$63,290.38에서 PRZ 터치·방어 및 AD 0.382 반응 도달 확인, reaction_score 0.80\",\n    \"최근접 PRZ는 bullish Butterfly 중심 $63,045.42이며 현재가와의 괴리 price_to_prz -0.02%로 사실상 PRZ 내부 반응 구간\",\n    \"상방 반응 시 검증된 bullish Gartley TP 후보가 $63,450.35, $63,640.47, $63,948.20에 형성\",\n    \"반대로 $63,347.79-$63,741.23 및 $63,433.55-$63,833.21에는 nearby bearish Bat/Butterfly PRZ가 있어 상승 시 즉시 공급·반전 리스크 구간\"\n  ],\n  \"reasoning\": \"하모닉 기준으로 현재 BTC는 $63,060.20에서 다수의 bullish 활성 PRZ 내부에 있으며, 특히 best council PRZ는 strict/high bullish Bat $62,773.38-$63,152.45, 점수 0.965입니다. 다만 이 Bat, Butterfly, Gartley 다수는 아직 forming 상태라 confirmed reaction이 없고, 하모닉 거버넌스상 단독으로 구조 방향을 뒤집을 수 없습니다. 확인된 패턴만 보면 bullish Gartley $62,994.85-$63,290.38은 reaction_score 0.80으로 유효하지만, 위쪽 $63,433.55-$63,833.21에는 이미 반응 확인된 bearish Butterfly/Bat PRZ가 남아 있어 방향 점수도 bullish 1.407 vs bearish 1.457로 거의 동률입니다. 따라서 구조는 중립으로 두고, 실행 셋업은 현재 PRZ 방어가 유지되는 동안만 단기 bullish 반응 후보로 평가합니다.\",\n  \"key_levels\": {\n    \"support\": [\n      62994.85,\n      62847.61,\n      62799.46,\n      62773.38,\n      62658.4\n    ],\n    \"resistance\": [\n      63243.22,\n      63339.29,\n      63450.35,\n      63571.82,\n      63640.47,\n      63948.2\n    ]\n  },\n  \"time_horizon\": \"단기, 15분봉 기준 수 개 캔들에서 수 시간\",\n  \"invalidation_level\": \"$62,773.38 하향 이탈 및 PRZ 재진입 실패\",\n  \"risk_scenario\": \"$62,773.38 아래로 밀리면 현재 bullish PRZ 클러스터의 방어 실패로 해석되며, $62,658.40 및 $62,676.80 부근 저점 유동성 테스트가 열릴 수 있습니다. 반대로 $63,450-$63,640까지 반등하더라도 $63,433.55-$63,833.21의 bearish PRZ에서 재차 거부되면 상승은 TP성 반등으로 끝나고 $63,000 재하락 리스크가 커집니다.\",\n  \"data_quality\": \"high\"\n}"
    }
  },
  "chairman_synthesis": {
    "overall_signal": "bullish",
    "overall_confidence": 0.56,
    "execution_setup": {
      "setup_bias": "bearish",
      "setup_strength": 0.63,
      "active_setups": [
        "가격 $63,060.20이 Wyckoff LPS $63,305.00 및 EMA20 $63,375.77 아래로 재진입하여 Phase E/BU 이후 수요 유지가 미확인",
        "Fibonacci 기준 스윙 저점 $63,120.00 하회 및 0.786 $63,272.79, 0.618 $63,392.42가 모두 상단 저항으로 전환",
        "Derivatives 기준 CVD +$2,446 증가에도 가격이 24h -0.38% 하락하여 매수 체결 흡수형 약세 다이버전스가 발생",
        "롱 계정 비율 0.648로 롱 쏠림이 남아 있고, 하방 청산 밀집 구간 $62,100 / $61,100이 상방 $65,900보다 가까움",
        "ICT 기준 가격은 EQ $63,418.95 아래 discount이나, 바로 위 $63,600.00-$63,832.50에 candidate bearish OB가 존재",
        "반대편으로는 Harmonic bullish PRZ $62,773.38-$63,152.45 및 $62,847.61-$63,243.22 내부에서 단기 반등 후보가 유지됨"
      ],
      "setup_vs_structure": "구조는 아직 $62,327.00 상방 CHoCH와 Wyckoff 누적 기반을 유지해 약한 bullish로 분류되지만, 실행 셋업은 3명 이상의 전문가가 bearish 조건을 제시해 구조와 단기 수급이 불일치한다. 즉, 현 구간은 상승 구조 내부의 재분배/수요검증 구간으로 해석하는 것이 적절하다."
    },
    "signal_breakdown": {
      "bullish_count": 1,
      "bearish_count": 2,
      "neutral_count": 3
    },
    "key_levels": {
      "support": [
        63020.0,
        62994.85,
        62942.4,
        62847.61,
        62773.38,
        62658.4,
        62607.83,
        62327.0,
        62100.0,
        61150.2
      ],
      "resistance": [
        63085.33,
        63272.79,
        63305.0,
        63375.77,
        63392.42,
        63418.95,
        63600.0,
        63832.5,
        63948.2,
        64250.0
      ]
    },
    "confluences": [
      "EMA20 $63,375.77은 Candlestick, Derivatives, Wyckoff가 모두 단기 회복 기준 또는 저항으로 언급한 핵심 구조선이다.",
      "상단 $63,600.00-$63,832.50은 ICT의 bearish OB, Fibonacci의 확장/저항 $63,832.50, Harmonic의 bearish PRZ $63,433.55-$63,833.21, Wyckoff ST $63,832.50이 겹치는 공급 밀집 구간이다.",
      "$62,658.40은 ICT support, Wyckoff Terminal Spring, Harmonic PRZ 하단 계열이 겹치는 구조적 방어 기준이다.",
      "$63,305.00 부근은 Wyckoff LPS이며 Harmonic active PRZ $63,101.98-$63,312.95와 겹쳐 현재 구조의 수요 재확인 여부를 판단하는 중간 기준이다.",
      "$62,939.70-$62,942.40은 London 저점 및 Wyckoff AR 상단이 겹치는 단기 하단 반응 구간이다.",
      "$64,250.00은 ICT previous day high, Candlestick 저항, Derivatives 상단 기준으로 반복 확인되는 상위 저항이다."
    ],
    "conflicts": [
      "ICT와 Wyckoff는 구조적으로 $62,327.00 상방 CHoCH 및 누적 구조를 근거로 bullish를 유지하지만, Fibonacci와 Derivatives는 현재가가 주요 되돌림 및 EMA20 아래에 있어 실행상 bearish로 본다.",
      "Candlestick과 Harmonic은 $63,000 부근에서 hammer, bullish harami, bullish PRZ 반응을 근거로 단기 bullish setup을 제시하지만, Derivatives는 CVD 상승에도 가격이 밀린 점을 매수 흡수로 해석한다.",
      "Wyckoff 상위 해석은 SC $61,573.50 → ST $61,150.20 → Spring/Terminal Spring $62,779.00/$62,658.40 → SOS $63,948.20 → LPS $63,305.00의 누적 구조이나, 최근 세부 구조에서는 BC $64,179.50, ST $63,832.50, SOW $62,979.70, Phase E $62,939.70로 분배성 징후가 나타난다.",
      "ICT는 현재가가 EQ $63,418.95 아래 discount라 추격 매도 위치가 좋지 않다고 보지만, 같은 ICT 분석 내에서도 $63,600.00-$63,832.50 공급대가 상단에 남아 있어 추격 매수 역시 불리하다."
    ],
    "executive_summary": "현재 15분 BTC 구조는 $62,327.00 상방 CHoCH와 Wyckoff 누적 시퀀스를 유지하고 있어 전체 구조 편향은 약한 bullish로 분류한다. 다만 가격은 LPS $63,305.00, EMA20 $63,375.77, ICT EQ $63,418.95 아래에 있어 Phase E/BU 이후의 상방 수용이 아직 확인되지 않았고, 최근 세부 구조에는 $64,179.50 BC 이후 $63,832.50 ST와 $62,979.70 SOW가 나타나 분배성 리스크가 존재한다. $63,600.00-$63,832.50은 ICT OB, Fibonacci 저항, Harmonic bearish PRZ, Wyckoff ST가 겹치는 상단 공급대이며, 하단에서는 $62,658.40-$62,773.38 구간이 Terminal Spring 및 Harmonic PRZ로 구조 방어 기준을 형성한다. 구조적 무효화는 우선 $62,327.00 이탈이며, 더 깊게는 $61,150.20 하회 시 누적 구조의 신뢰도가 크게 훼손된다.",
    "raw_llm_response": "{\n  \"overall_signal\": \"bullish\",\n  \"overall_confidence\": 0.56,\n  \"execution_setup\": {\n    \"setup_bias\": \"bearish\",\n    \"setup_strength\": 0.63,\n    \"active_setups\": [\n      \"가격 $63,060.20이 Wyckoff LPS $63,305.00 및 EMA20 $63,375.77 아래로 재진입하여 Phase E/BU 이후 수요 유지가 미확인\",\n      \"Fibonacci 기준 스윙 저점 $63,120.00 하회 및 0.786 $63,272.79, 0.618 $63,392.42가 모두 상단 저항으로 전환\",\n      \"Derivatives 기준 CVD +$2,446 증가에도 가격이 24h -0.38% 하락하여 매수 체결 흡수형 약세 다이버전스가 발생\",\n      \"롱 계정 비율 0.648로 롱 쏠림이 남아 있고, 하방 청산 밀집 구간 $62,100 / $61,100이 상방 $65,900보다 가까움\",\n      \"ICT 기준 가격은 EQ $63,418.95 아래 discount이나, 바로 위 $63,600.00-$63,832.50에 candidate bearish OB가 존재\",\n      \"반대편으로는 Harmonic bullish PRZ $62,773.38-$63,152.45 및 $62,847.61-$63,243.22 내부에서 단기 반등 후보가 유지됨\"\n    ],\n    \"setup_vs_structure\": \"구조는 아직 $62,327.00 상방 CHoCH와 Wyckoff 누적 기반을 유지해 약한 bullish로 분류되지만, 실행 셋업은 3명 이상의 전문가가 bearish 조건을 제시해 구조와 단기 수급이 불일치한다. 즉, 현 구간은 상승 구조 내부의 재분배/수요검증 구간으로 해석하는 것이 적절하다.\"\n  },\n  \"signal_breakdown\": {\n    \"bullish_count\": 1,\n    \"bearish_count\": 2,\n    \"neutral_count\": 3\n  },\n  \"key_levels\": {\n    \"support\": [\n      63020.0,\n      62994.85,\n      62942.4,\n      62847.61,\n      62773.38,\n      62658.4,\n      62607.83,\n      62327.0,\n      62100.0,\n      61150.2\n    ],\n    \"resistance\": [\n      63085.33,\n      63272.79,\n      63305.0,\n      63375.77,\n      63392.42,\n      63418.95,\n      63600.0,\n      63832.5,\n      63948.2,\n      64250.0\n    ]\n  },\n  \"confluences\": [\n    \"EMA20 $63,375.77은 Candlestick, Derivatives, Wyckoff가 모두 단기 회복 기준 또는 저항으로 언급한 핵심 구조선이다.\",\n    \"상단 $63,600.00-$63,832.50은 ICT의 bearish OB, Fibonacci의 확장/저항 $63,832.50, Harmonic의 bearish PRZ $63,433.55-$63,833.21, Wyckoff ST $63,832.50이 겹치는 공급 밀집 구간이다.\",\n    \"$62,658.40은 ICT support, Wyckoff Terminal Spring, Harmonic PRZ 하단 계열이 겹치는 구조적 방어 기준이다.\",\n    \"$63,305.00 부근은 Wyckoff LPS이며 Harmonic active PRZ $63,101.98-$63,312.95와 겹쳐 현재 구조의 수요 재확인 여부를 판단하는 중간 기준이다.\",\n    \"$62,939.70-$62,942.40은 London 저점 및 Wyckoff AR 상단이 겹치는 단기 하단 반응 구간이다.\",\n    \"$64,250.00은 ICT previous day high, Candlestick 저항, Derivatives 상단 기준으로 반복 확인되는 상위 저항이다.\"\n  ],\n  \"conflicts\": [\n    \"ICT와 Wyckoff는 구조적으로 $62,327.00 상방 CHoCH 및 누적 구조를 근거로 bullish를 유지하지만, Fibonacci와 Derivatives는 현재가가 주요 되돌림 및 EMA20 아래에 있어 실행상 bearish로 본다.\",\n    \"Candlestick과 Harmonic은 $63,000 부근에서 hammer, bullish harami, bullish PRZ 반응을 근거로 단기 bullish setup을 제시하지만, Derivatives는 CVD 상승에도 가격이 밀린 점을 매수 흡수로 해석한다.\",\n    \"Wyckoff 상위 해석은 SC $61,573.50 → ST $61,150.20 → Spring/Terminal Spring $62,779.00/$62,658.40 → SOS $63,948.20 → LPS $63,305.00의 누적 구조이나, 최근 세부 구조에서는 BC $64,179.50, ST $63,832.50, SOW $62,979.70, Phase E $62,939.70로 분배성 징후가 나타난다.\",\n    \"ICT는 현재가가 EQ $63,418.95 아래 discount라 추격 매도 위치가 좋지 않다고 보지만, 같은 ICT 분석 내에서도 $63,600.00-$63,832.50 공급대가 상단에 남아 있어 추격 매수 역시 불리하다.\"\n  ],\n  \"highest_conviction_analyst\": \"Wyckoff Expert — regime fitness 0.953 및 acc_score 95.3으로 가장 구체적인 구조 지도를 제공하며, SC $61,573.50, ST $61,150.20, Terminal Spring $62,658.40, SOS $63,948.20, LPS $63,305.00 등 명확한 누적 단계와 동시에 최근 분배성 후보 구조까지 구분해 제시했기 때문이다.\",\n  \"invalidation_level\": \"$62,327.00 하회 시 현재 bullish CHoCH 기반 구조 해석이 훼손되며, $61,150.20 하회 시 누적 구조 자체의 방어 논리가 크게 약화된다.\",\n  \"executive_summary\": \"현재 15분 BTC 구조는 $62,327.00 상방 CHoCH와 Wyckoff 누적 시퀀스를 유지하고 있어 전체 구조 편향은 약한 bullish로 분류한다. 다만 가격은 LPS $63,305.00, EMA20 $63,375.77, ICT EQ $63,418.95 아래에 있어 Phase E/BU 이후의 상방 수용이 아직 확인되지 않았고, 최근 세부 구조에는 $64,179.50 BC 이후 $63,832.50 ST와 $62,979.70 SOW가 나타나 분배성 리스크가 존재한다. $63,600.00-$63,832.50은 ICT OB, Fibonacci 저항, Harmonic bearish PRZ, Wyckoff ST가 겹치는 상단 공급대이며, 하단에서는 $62,658.40-$62,773.38 구간이 Terminal Spring 및 Harmonic PRZ로 구조 방어 기준을 형성한다. 구조적 무효화는 우선 $62,327.00 이탈이며, 더 깊게는 $61,150.20 하회 시 누적 구조의 신뢰도가 크게 훼손된다.\"\n}"
  },
  "overall_signal": "bullish",
  "overall_confidence": 0.56,
  "operating_path": {
    "path_type": "complex",
    "confidence": 0.5,
    "waypoints": [
      {
        "seq": 1,
        "price": 62773.38,
        "type": "liquidity_sweep",
        "source": "Derivatives(롱 쏠림 0.648, 근접 하방청산 $62,100), Wyckoff(AR 상단 $62,942.40 재시험), Harmonic(best-council Bat PRZ $62,773.38 score 0.965), ICT/Wyckoff(Terminal Spring $62,779.00)",
        "description": "실행 셋업이 bearish(63%, strength 0.63)로 구조와 불일치하므로 첫 경로는 하방 테스트다. EMA20 $63,375.77 미회복과 CVD 약세 다이버전스, 롱 계정 0.648 쏠림을 배경으로 가격이 London 저점·Wyckoff AR 상단 $62,942.40을 하향 스윕하며 유동성을 회수한다. 1차 방어 기준은 Harmonic Bat PRZ $62,773.38(score 0.965)와 Wyckoff Terminal Spring $62,779.00이 겹치는 수요대이며, 이 구간에서 매수 반응이 나올 확률이 높다.",
        "est_hours": 4.0,
        "turning_zone": [
          62658.4,
          62779.0
        ],
        "likely_wick": 62720.0,
        "rejection_confirm": 62942.4,
        "invalid_overshoot": 62607.83,
        "calibration_reasoning": "Bat PRZ $62,773.38와 Wyckoff Terminal Spring $62,779.00이 수요대 상단을, 최근접 유동성 풀인 Chairman 지지 $62,658.40이 존 하단을 형성한다(폭 0.49 ATR). 하향 스윕 특성상 PRZ를 소폭 관통하는 $62,720 윅 후 반등이 유력하며, AR 상단 $62,942.40 회복이 전환 확인이고 $62,607.83(다음 지지) 상실 시 수요 방어 실패로 무효화된다."
      },
      {
        "seq": 2,
        "price": 63392.42,
        "type": "resistance_test",
        "source": "Fibonacci(0.618 골든 $63,392.42, fib_confluence $63,260.91 strict), Wyckoff(LPS $63,305.00 1차 개선 조건), Candlestick/Derivatives(EMA20 $63,375.77), ICT(EQ $63,418.95)",
        "description": "수요대 방어 이후 약한 bullish 구조가 재차 우위를 회복하는 구간. Harmonic 활성 bullish PRZ 클러스터(Gartley $62,994.85-$63,290.38, reaction 0.80) 방어가 유지되면 가격은 fib_confluence $63,260.91(strict 0.85)·0.786 $63,272.79·LPS $63,305.00을 차례로 회복하며 EMA20 $63,375.77/0.618 $63,392.42/EQ $63,418.95 핵심 회복대를 재시험한다. 이 구간 회복·유지가 Wyckoff 1차 개선 조건이자 Fibonacci setup 반전 기준이다.",
        "est_hours": 13.0,
        "turning_zone": [
          63392.42,
          63476.45
        ],
        "likely_wick": 63450.35,
        "rejection_confirm": 63305.0,
        "invalid_overshoot": 63567.12,
        "calibration_reasoning": "EMA20 $63,375.77·0.618 $63,392.42·EQ $63,418.95 회복 클러스터에 검증된(CONFIRMED) Gartley TP1 AD0.382 $63,450.35과 fib 저항 $63,476.45이 더해져 저항 시험 존(폭 0.34 ATR)을 형성한다. 유력 윅은 Gartley TP1 $63,450.35이며, LPS $63,305 하향 이탈이 국소 반락 확인, fib 컨플루언스 $63,567.12 상향 돌파 시 전환 없이 WP3로 진행되어 무효화된다."
      },
      {
        "seq": 3,
        "price": 63600.0,
        "type": "resistance_test",
        "source": "ICT(bearish OB $63,600-$63,832.50), Fibonacci(fib_confluence $63,567.12 strict, 저항 $63,832.50), Harmonic(bearish PRZ $63,433.55-$63,833.21), Wyckoff(ST $63,832.50)",
        "description": "구조적 bullish 연장의 상단 목표. 가격이 fib_confluence $63,567.12(strict)를 통과해 $63,600.00-$63,832.50 공급 밀집대 하단을 시험한다. ICT bearish OB·Fibonacci 저항·Harmonic bearish PRZ·Wyckoff ST가 겹치는 최대 공급 confluence로 재분배 리스크상 거부 반응이 나올 가능성이 높은 회전 구간이다.",
        "est_hours": 20.0,
        "turning_zone": [
          63600.0,
          63760.0
        ],
        "likely_wick": 63660.0,
        "rejection_confirm": 63567.12,
        "invalid_overshoot": 63832.5,
        "calibration_reasoning": "$63,600 Chairman 저항·검증된 Gartley TP2 AD0.618 $63,640.47·Butterfly/Bat bearish PRZ $63,659.1·ICT bearish OB가 겹치는 최대 공급대로, 터미널 존을 0.66 ATR로 확장해 PRZ 상단 유동성까지 포함했다. 유력 윅은 공급 컨플루언스 $63,660, fib $63,567.12 하향 회복이 거부 확인, Chairman $63,832.50 상향 돌파 시 공급 실패로 Gartley TP3 $63,948을 향하며 무효화된다."
      }
    ],
    "period_extremes": {
      "4h": {
        "expected_high": 63120.0,
        "expected_low": 62773.38,
        "high_first": false
      },
      "8h": {
        "expected_high": 63300.0,
        "expected_low": 62773.38,
        "high_first": false
      },
      "24h": {
        "expected_high": 63600.0,
        "expected_low": 62773.38,
        "high_first": false
      }
    },
    "triggers": {
      "bullish": {
        "price": 63832.5,
        "description": "공급 밀집대 $63,600.00-$63,832.50 상단을 종가로 돌파·수용하면 Wyckoff SOS $63,948.20 및 ICT 전일고점 $64,250.00을 향한 bullish 가속. EMA20/EQ($63,375-$63,418) 회복 유지는 그 전의 1차 개선 신호."
      },
      "bearish": {
        "price": 62658.4,
        "description": "ICT support·Wyckoff Terminal Spring·Harmonic PRZ가 겹치는 $62,658.40을 하향 이탈하면 수요 방어 실패로 회복 경로가 약화되고 $62,327.00 CHoCH 무효화 및 청산 밀집 $62,100을 향한 bearish 가속."
      }
    },
    "scenario_invalidation": 62327.0,
    "raw_llm_response": "```json\n{\n  \"path_type\": \"complex\",\n  \"confidence\": 0.5,\n  \"waypoints\": [\n    {\n      \"seq\": 1,\n      \"price\": 62773.38,\n      \"type\": \"liquidity_sweep\",\n      \"source\": \"Derivatives(롱 쏠림 0.648, 근접 하방청산 $62,100), Wyckoff(AR 상단 $62,942.40 재시험), Harmonic(best-council Bat PRZ $62,773.38 score 0.965), ICT/Wyckoff(Terminal Spring $62,779.00)\",\n      \"description\": \"실행 셋업이 bearish(63%, strength 0.63)로 구조와 불일치하므로 첫 경로는 하방 테스트다. EMA20 $63,375.77 미회복과 CVD 약세 다이버전스, 롱 계정 0.648 쏠림을 배경으로 가격이 London 저점·Wyckoff AR 상단 $62,942.40을 하향 스윕하며 유동성을 회수한다. 1차 방어 기준은 Harmonic Bat PRZ $62,773.38(score 0.965)와 Wyckoff Terminal Spring $62,779.00이 겹치는 수요대이며, 이 구간에서 매수 반응이 나올 확률이 높다.\",\n      \"est_hours\": 4.0\n    },\n    {\n      \"seq\": 2,\n      \"price\": 63392.42,\n      \"type\": \"resistance_test\",\n      \"source\": \"Fibonacci(0.618 골든 $63,392.42, fib_confluence $63,260.91 strict), Wyckoff(LPS $63,305.00 1차 개선 조건), Candlestick/Derivatives(EMA20 $63,375.77), ICT(EQ $63,418.95)\",\n      \"description\": \"수요대 방어 이후 약한 bullish 구조가 재차 우위를 회복하는 구간. Harmonic 활성 bullish PRZ 클러스터(Gartley $62,994.85-$63,290.38, reaction 0.80) 방어가 유지되면 가격은 fib_confluence $63,260.91(strict 0.85)·0.786 $63,272.79·LPS $63,305.00을 차례로 회복하며 EMA20 $63,375.77/0.618 $63,392.42/EQ $63,418.95 핵심 회복대를 재시험한다. 이 구간 회복·유지가 Wyckoff 1차 개선 조건이자 Fibonacci setup 반전 기준이다.\",\n      \"est_hours\": 13.0\n    },\n    {\n      \"seq\": 3,\n      \"price\": 63600.0,\n      \"type\": \"resistance_test\",\n      \"source\": \"ICT(bearish OB $63,600-$63,832.50), Fibonacci(fib_confluence $63,567.12 strict, 저항 $63,832.50), Harmonic(bearish PRZ $63,433.55-$63,833.21), Wyckoff(ST $63,832.50)\",\n      \"description\": \"구조적 bullish 연장의 상단 목표. 가격이 fib_confluence $63,567.12(strict)를 통과해 $63,600.00-$63,832.50 공급 밀집대 하단을 시험한다. ICT bearish OB·Fibonacci 저항·Harmonic bearish PRZ·Wyckoff ST가 겹치는 최대 공급 confluence로 재분배 리스크상 거부 반응이 나올 가능성이 높은 회전 구간이다.\",\n      \"est_hours\": 20.0\n    }\n  ],\n  \"period_extremes\": {\n    \"4h\":  {\"expected_high\": 63120.0, \"expected_low\": 62773.38, \"high_first\": false},\n    \"8h\":  {\"expected_high\": 63300.0, \"expected_low\": 62773.38, \"high_first\": false},\n    \"24h\": {\"expected_high\": 63600.0, \"expected_low\": 62773.38, \"high_first\": false}\n  },\n  \"triggers\": {\n    \"bullish\": {\"price\": 63832.5, \"description\": \"공급 밀집대 $63,600.00-$63,832.50 상단을 종가로 돌파·수용하면 Wyckoff SOS $63,948.20 및 ICT 전일고점 $64,250.00을 향한 bullish 가속. EMA20/EQ($63,375-$63,418) 회복 유지는 그 전의 1차 개선 신호.\"},\n    \"bearish\": {\"price\": 62658.4, \"description\": \"ICT support·Wyckoff Terminal Spring·Harmonic PRZ가 겹치는 $62,658.40을 하향 이탈하면 수요 방어 실패로 회복 경로가 약화되고 $62,327.00 CHoCH 무효화 및 청산 밀집 $62,100을 향한 bearish 가속.\"}\n  },\n  \"scenario_invalidation\": 62327.0\n}\n```"
  },
  "tp_calibration": {
    "calibrated_waypoints": [
      {
        "seq": 1,
        "base_target": 62773.38,
        "turning_zone": [
          62658.4,
          62779.0
        ],
        "likely_wick": 62720.0,
        "rejection_confirm": 62942.4,
        "invalid_overshoot": 62607.83,
        "calibration_reasoning": "Bat PRZ $62,773.38와 Wyckoff Terminal Spring $62,779.00이 수요대 상단을, 최근접 유동성 풀인 Chairman 지지 $62,658.40이 존 하단을 형성한다(폭 0.49 ATR). 하향 스윕 특성상 PRZ를 소폭 관통하는 $62,720 윅 후 반등이 유력하며, AR 상단 $62,942.40 회복이 전환 확인이고 $62,607.83(다음 지지) 상실 시 수요 방어 실패로 무효화된다."
      },
      {
        "seq": 2,
        "base_target": 63392.42,
        "turning_zone": [
          63392.42,
          63476.45
        ],
        "likely_wick": 63450.35,
        "rejection_confirm": 63305.0,
        "invalid_overshoot": 63567.12,
        "calibration_reasoning": "EMA20 $63,375.77·0.618 $63,392.42·EQ $63,418.95 회복 클러스터에 검증된(CONFIRMED) Gartley TP1 AD0.382 $63,450.35과 fib 저항 $63,476.45이 더해져 저항 시험 존(폭 0.34 ATR)을 형성한다. 유력 윅은 Gartley TP1 $63,450.35이며, LPS $63,305 하향 이탈이 국소 반락 확인, fib 컨플루언스 $63,567.12 상향 돌파 시 전환 없이 WP3로 진행되어 무효화된다."
      },
      {
        "seq": 3,
        "base_target": 63600.0,
        "turning_zone": [
          63600.0,
          63760.0
        ],
        "likely_wick": 63660.0,
        "rejection_confirm": 63567.12,
        "invalid_overshoot": 63832.5,
        "calibration_reasoning": "$63,600 Chairman 저항·검증된 Gartley TP2 AD0.618 $63,640.47·Butterfly/Bat bearish PRZ $63,659.1·ICT bearish OB가 겹치는 최대 공급대로, 터미널 존을 0.66 ATR로 확장해 PRZ 상단 유동성까지 포함했다. 유력 윅은 공급 컨플루언스 $63,660, fib $63,567.12 하향 회복이 거부 확인, Chairman $63,832.50 상향 돌파 시 공급 실패로 Gartley TP3 $63,948을 향하며 무효화된다."
      }
    ],
    "raw_llm_response": "```json\n{\n  \"calibrated_waypoints\": [\n    {\n      \"seq\": 1,\n      \"base_target\": 62773.38,\n      \"turning_zone\": [62658.40, 62779.00],\n      \"likely_wick\": 62720.00,\n      \"rejection_confirm\": 62942.40,\n      \"invalid_overshoot\": 62607.83,\n      \"calibration_reasoning\": \"Bat PRZ $62,773.38와 Wyckoff Terminal Spring $62,779.00이 수요대 상단을, 최근접 유동성 풀인 Chairman 지지 $62,658.40이 존 하단을 형성한다(폭 0.49 ATR). 하향 스윕 특성상 PRZ를 소폭 관통하는 $62,720 윅 후 반등이 유력하며, AR 상단 $62,942.40 회복이 전환 확인이고 $62,607.83(다음 지지) 상실 시 수요 방어 실패로 무효화된다.\"\n    },\n    {\n      \"seq\": 2,\n      \"base_target\": 63392.42,\n      \"turning_zone\": [63392.42, 63476.45],\n      \"likely_wick\": 63450.35,\n      \"rejection_confirm\": 63305.00,\n      \"invalid_overshoot\": 63567.12,\n      \"calibration_reasoning\": \"EMA20 $63,375.77·0.618 $63,392.42·EQ $63,418.95 회복 클러스터에 검증된(CONFIRMED) Gartley TP1 AD0.382 $63,450.35과 fib 저항 $63,476.45이 더해져 저항 시험 존(폭 0.34 ATR)을 형성한다. 유력 윅은 Gartley TP1 $63,450.35이며, LPS $63,305 하향 이탈이 국소 반락 확인, fib 컨플루언스 $63,567.12 상향 돌파 시 전환 없이 WP3로 진행되어 무효화된다.\"\n    },\n    {\n      \"seq\": 3,\n      \"base_target\": 63600.00,\n      \"turning_zone\": [63600.00, 63760.00],\n      \"likely_wick\": 63660.00,\n      \"rejection_confirm\": 63567.12,\n      \"invalid_overshoot\": 63832.50,\n      \"calibration_reasoning\": \"$63,600 Chairman 저항·검증된 Gartley TP2 AD0.618 $63,640.47·Butterfly/Bat bearish PRZ $63,659.1·ICT bearish OB가 겹치는 최대 공급대로, 터미널 존을 0.66 ATR로 확장해 PRZ 상단 유동성까지 포함했다. 유력 윅은 공급 컨플루언스 $63,660, fib $63,567.12 하향 회복이 거부 확인, Chairman $63,832.50 상향 돌파 시 공급 실패로 Gartley TP3 $63,948을 향하며 무효화된다.\"\n    }\n  ]\n}\n```"
  },
  "timing": {
    "stages": {
      "stage1_agents": 28.2,
      "chairman": 45.9,
      "operating_path": 230.8,
      "tp_calibrator": 257.6
    },
    "agents": {},
    "total_s": 562.7
  }
}