{
  "symbol": "BTC/USDT",
  "timeframe": "15m",
  "timestamp": "2026-06-09 17:00 KST",
  "last_price": 63167.0,
  "num_candles": 300,
  "stage1_analyses": {
    "wyckoff": {
      "agent_id": "wyckoff",
      "display_name": "Wyckoff Expert",
      "signal": "bearish",
      "confidence": 0.74,
      "structure_bias": "bearish",
      "setup_bias": "bearish",
      "setup_score": 0.56,
      "setup_signals": [
        "가격 $63,167가 메인 분배 레인지 EQ 약 $62,225.75 위의 프리미엄 구간에 위치",
        "현재가가 LPSY $62,945.8 및 BC/상단 앵커 $62,942.4 위에 있으나, UTAD $63,567.6 아래에 머물며 상단 공급대 재진입 상태",
        "Phase D 분배 후보에서 UTAD $63,567.6 이후 LPSY $62,945.8가 형성되어 반등이 약한 공급 테스트로 해석될 수 있음",
        "하방 확인은 $62,942.4~$62,945.8 재이탈 및 $62,377.0 SOW_IN_PHASE_B 재시험에서 강화"
      ],
      "reasoning": "15분 구조는 regime=DIS, dis_score 96.2, regime_fitness 0.963으로 분배 구조 우위이며, 이벤트 체인은 BC $62,942.4 → AR $61,509.1 → ST $63,849.5 → SOW_IN_PHASE_B $62,377.0 → UT $63,554.7 → UTAD $63,567.6 → LPSY $62,945.8로 Phase D 분배 해석이 우세하다. 구조적 편향은 bearish지만, 현재가 $63,167는 LPSY/BC 상단 $62,942~$62,946 위에 있어 즉시 하락 확정이라기보다 상단부 재테스트 구간이며, $63,567.6 UTAD와 $63,849.5 ST 저항을 회복하지 못하는지가 핵심이다. 즉각 경로는 $62,942.4~$62,945.8 이탈 시 $62,377.0 SOW_IN_PHASE_B, 이후 AR 저점 $61,509.1 재시험 가능성이 높아진다. 반대로 $63,567.6을 회복하고 특히 $63,849.5 위에서 수용되면 LPSY 실패 및 분배 Phase D 약세 해석은 훼손된다.",
      "key_levels": {
        "support": [
          62945.8,
          62942.4,
          62377.0,
          61509.1
        ],
        "resistance": [
          63567.6,
          63849.5,
          64250.0
        ]
      },
      "time_horizon": "short to medium term",
      "invalidation_level": "$63,849.50",
      "risk_scenario": "$63,567.6 UTAD 레벨을 회복한 뒤 $63,849.5 ST 위에서 15분 종가 수용이 반복되면 LPSY 공급 테스트가 실패로 바뀌며, 분배 Phase D 하방 시나리오는 중립 또는 재축적/상단 확장 해석으로 재평가해야 한다.",
      "data_quality": "high",
      "metrics": {
        "acc_score": 91.2,
        "dis_score": 96.2,
        "regime": "DIS",
        "regime_state": "dis_candidate",
        "structure_bias": "bearish",
        "phase_context": "dis_candidate / distribution / Phase D",
        "phases_detected": [
          "BC",
          "AR",
          "ST",
          "SOW_IN_PHASE_B",
          "UT",
          "UTAD",
          "LPSY"
        ],
        "last_phase": "LPSY",
        "phase_candidates": [
          {
            "label": "BC",
            "side": "high",
            "idx": 111,
            "price": 62942.4,
            "color": "#ffd166"
          },
          {
            "label": "AR",
            "side": "low",
            "idx": 126,
            "price": 61509.1,
            "color": "#06d6a0"
          },
          {
            "label": "ST",
            "side": "high",
            "idx": 174,
            "price": 63849.5,
            "color": "#118ab2"
          },
          {
            "label": "SOW_IN_PHASE_B",
            "side": "low",
            "idx": 194,
            "price": 62377.0,
            "color": "#ef476f"
          },
          {
            "label": "UT",
            "side": "high",
            "idx": 209,
            "price": 63554.7,
            "color": "#f9844a"
          },
          {
            "label": "UTAD",
            "side": "high",
            "idx": 265,
            "price": 63567.6,
            "color": "#f9844a"
          },
          {
            "label": "LPSY",
            "side": "high",
            "idx": 281,
            "price": 62945.8,
            "color": "#8338ec"
          }
        ],
        "phase_structures": [
          {
            "structure_id": "15m_cycle_1",
            "sequence": 1,
            "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": 111,
            "end_idx": 281,
            "phase_count": 7,
            "phases": [
              {
                "label": "BC",
                "side": "high",
                "idx": 111,
                "price": 62942.4,
                "color": "#ffd166",
                "dt": "2026-06-07 17:45:00+09:00"
              },
              {
                "label": "AR",
                "side": "low",
                "idx": 126,
                "price": 61509.1,
                "color": "#06d6a0",
                "dt": "2026-06-07 21:30:00+09:00"
              },
              {
                "label": "ST",
                "side": "high",
                "idx": 174,
                "price": 63849.5,
                "color": "#118ab2",
                "dt": "2026-06-08 09:30:00+09:00"
              },
              {
                "label": "SOW_IN_PHASE_B",
                "side": "low",
                "idx": 194,
                "price": 62377.0,
                "color": "#ef476f",
                "dt": "2026-06-08 14:30:00+09:00"
              },
              {
                "label": "UT",
                "side": "high",
                "idx": 209,
                "price": 63554.7,
                "color": "#f9844a",
                "dt": "2026-06-08 18:15:00+09:00"
              },
              {
                "label": "UTAD",
                "side": "high",
                "idx": 265,
                "price": 63567.6,
                "color": "#f9844a",
                "dt": "2026-06-09 08:15:00+09:00"
              },
              {
                "label": "LPSY",
                "side": "high",
                "idx": 281,
                "price": 62945.8,
                "color": "#8338ec",
                "dt": "2026-06-09 12:15:00+09:00"
              }
            ]
          }
        ],
        "active_structure_id": "15m_cycle_1",
        "primary_structure_id": "15m_cycle_1",
        "structure_count": 1,
        "regime_fitness": 0.9625,
        "current_event": "LPSY",
        "major_phase": "D",
        "pos_in_range": 0.5,
        "main_range_low": 61509.1,
        "main_range_high": 62942.4
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.74,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.56,\n  \"setup_signals\": [\n    \"가격 $63,167가 메인 분배 레인지 EQ 약 $62,225.75 위의 프리미엄 구간에 위치\",\n    \"현재가가 LPSY $62,945.8 및 BC/상단 앵커 $62,942.4 위에 있으나, UTAD $63,567.6 아래에 머물며 상단 공급대 재진입 상태\",\n    \"Phase D 분배 후보에서 UTAD $63,567.6 이후 LPSY $62,945.8가 형성되어 반등이 약한 공급 테스트로 해석될 수 있음\",\n    \"하방 확인은 $62,942.4~$62,945.8 재이탈 및 $62,377.0 SOW_IN_PHASE_B 재시험에서 강화\"\n  ],\n  \"reasoning\": \"15분 구조는 regime=DIS, dis_score 96.2, regime_fitness 0.963으로 분배 구조 우위이며, 이벤트 체인은 BC $62,942.4 → AR $61,509.1 → ST $63,849.5 → SOW_IN_PHASE_B $62,377.0 → UT $63,554.7 → UTAD $63,567.6 → LPSY $62,945.8로 Phase D 분배 해석이 우세하다. 구조적 편향은 bearish지만, 현재가 $63,167는 LPSY/BC 상단 $62,942~$62,946 위에 있어 즉시 하락 확정이라기보다 상단부 재테스트 구간이며, $63,567.6 UTAD와 $63,849.5 ST 저항을 회복하지 못하는지가 핵심이다. 즉각 경로는 $62,942.4~$62,945.8 이탈 시 $62,377.0 SOW_IN_PHASE_B, 이후 AR 저점 $61,509.1 재시험 가능성이 높아진다. 반대로 $63,567.6을 회복하고 특히 $63,849.5 위에서 수용되면 LPSY 실패 및 분배 Phase D 약세 해석은 훼손된다.\",\n  \"key_levels\": {\n    \"support\": [\n      62945.8,\n      62942.4,\n      62377.0,\n      61509.1\n    ],\n    \"resistance\": [\n      63567.6,\n      63849.5,\n      64250.0\n    ]\n  },\n  \"time_horizon\": \"short to medium term\",\n  \"invalidation_level\": \"$63,849.50\",\n  \"risk_scenario\": \"$63,567.6 UTAD 레벨을 회복한 뒤 $63,849.5 ST 위에서 15분 종가 수용이 반복되면 LPSY 공급 테스트가 실패로 바뀌며, 분배 Phase D 하방 시나리오는 중립 또는 재축적/상단 확장 해석으로 재평가해야 한다.\",\n  \"data_quality\": \"high\"\n}"
    },
    "derivatives": {
      "agent_id": "derivatives",
      "display_name": "Derivatives Trader",
      "signal": "bearish",
      "confidence": 0.64,
      "structure_bias": "neutral",
      "setup_bias": "bearish",
      "setup_score": 0.72,
      "setup_signals": [
        "가격 $63,167은 7일 범위 EQ $61,914 위의 프리미엄 구간에 위치",
        "CVD divergence 0.850: CVD는 +$1,263 증가했지만 가격 24h 변화는 -0.15%로 매수 체결이 가격 상승으로 연결되지 않음",
        "롱 계정 비율 0.650, account_long_crowding 1.000: 롱 포지셔닝이 혼잡한 상태",
        "OI 24h -0.527%: 신규 추세 포지션 유입보다 포지션 언와인딩 성격이 강함",
        "선물 basis -0.0498%: 선물이 현물 대비 할인되어 파생시장 수요가 약함",
        "하방 청산 유동성 $62,100, $61,900, $60,700에 밀집"
      ],
      "reasoning": "현재 BTC는 $63,167로 EMA20 $63,147과 거의 동일하고 EMA120 $63,041 위에 있어 단기 구조는 명확한 하락 전환보다는 중립에 가깝지만, $64,250 7일 고점을 돌파한 확인된 BOS는 없다. 셋업 관점에서는 가격이 7일 범위 EQ $61,914 위 프리미엄 구간에 있고, CVD가 +$1,263 증가했음에도 가격이 24시간 -0.15%로 눌린 점은 매수 흡수 또는 약한 참여를 시사한다. 롱 계정 비율이 0.650이고 account_long_crowding이 1.000인 반면, OI는 24시간 -0.527% 감소해 상승 추세를 지지하는 신규 레버리지 유입이 부족하다. 따라서 구조는 아직 중립이지만, 파생 포지셔닝과 CVD/OI 조합은 $62,100-$61,900 하방 유동성 테스트 가능성을 더 높게 본다.",
      "key_levels": {
        "support": [
          63147.62,
          63041.21,
          62100,
          61900,
          60700,
          59578.8
        ],
        "resistance": [
          64000,
          64250,
          69000,
          69500
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$64,250",
      "risk_scenario": "$64,250 위로 15분봉 기준 명확히 안착하면 롱 혼잡에도 불구하고 숏 커버링이 붙으며 $69,000-$69,500 상방 청산 구간까지 빠르게 확장될 수 있다.",
      "data_quality": "medium",
      "metrics": {
        "cvd_divergence": 0.85,
        "cvd_change": 1263.426,
        "oi_trend": 0.447,
        "oi_change_pct_24h": -0.527,
        "oi_latest": 97632.795,
        "funding_pressure": 0.493,
        "funding_avg": 6.7e-06,
        "funding_change_24h": -5.019e-05,
        "long_account_ratio": 0.649,
        "short_account_ratio": 0.351,
        "long_account_latest": 0.65,
        "short_account_latest": 0.35,
        "long_account_change_24h": -0.0146,
        "short_account_change_24h": 0.0146,
        "account_flow_label": "short_accounts_rising_long_accounts_falling",
        "account_short_crowding": 0.0,
        "account_long_crowding": 1.0,
        "ls_imbalance": 0.0,
        "ls_imbalance_interpretation": "high=short-account crowding / low=long-account crowding",
        "spot_futures_basis_score": 0.488,
        "spot_futures_basis_pct": -0.0498,
        "basis_change_lookback": 0.011,
        "aggregate_score": 0.456,
        "bull_signals": 1,
        "bear_signals": 2,
        "liq_below": [
          [
            62100,
            2448.37365195
          ],
          [
            61900,
            1854.1950465
          ],
          [
            60700,
            2235.779041
          ]
        ],
        "liq_above": [
          [
            64000,
            2154.32182995
          ],
          [
            69000,
            1889.7468575
          ],
          [
            69500,
            2685.4103175
          ]
        ],
        "strongest_liq_level": 56900,
        "fragility_score": 0.889,
        "positioning_extreme": "balanced"
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.64,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.72,\n  \"setup_signals\": [\n    \"가격 $63,167은 7일 범위 EQ $61,914 위의 프리미엄 구간에 위치\",\n    \"CVD divergence 0.850: CVD는 +$1,263 증가했지만 가격 24h 변화는 -0.15%로 매수 체결이 가격 상승으로 연결되지 않음\",\n    \"롱 계정 비율 0.650, account_long_crowding 1.000: 롱 포지셔닝이 혼잡한 상태\",\n    \"OI 24h -0.527%: 신규 추세 포지션 유입보다 포지션 언와인딩 성격이 강함\",\n    \"선물 basis -0.0498%: 선물이 현물 대비 할인되어 파생시장 수요가 약함\",\n    \"하방 청산 유동성 $62,100, $61,900, $60,700에 밀집\"\n  ],\n  \"reasoning\": \"현재 BTC는 $63,167로 EMA20 $63,147과 거의 동일하고 EMA120 $63,041 위에 있어 단기 구조는 명확한 하락 전환보다는 중립에 가깝지만, $64,250 7일 고점을 돌파한 확인된 BOS는 없다. 셋업 관점에서는 가격이 7일 범위 EQ $61,914 위 프리미엄 구간에 있고, CVD가 +$1,263 증가했음에도 가격이 24시간 -0.15%로 눌린 점은 매수 흡수 또는 약한 참여를 시사한다. 롱 계정 비율이 0.650이고 account_long_crowding이 1.000인 반면, OI는 24시간 -0.527% 감소해 상승 추세를 지지하는 신규 레버리지 유입이 부족하다. 따라서 구조는 아직 중립이지만, 파생 포지셔닝과 CVD/OI 조합은 $62,100-$61,900 하방 유동성 테스트 가능성을 더 높게 본다.\",\n  \"key_levels\": {\n    \"support\": [\n      63147.62,\n      63041.21,\n      62100,\n      61900,\n      60700,\n      59578.8\n    ],\n    \"resistance\": [\n      64000,\n      64250,\n      69000,\n      69500\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$64,250\",\n  \"risk_scenario\": \"$64,250 위로 15분봉 기준 명확히 안착하면 롱 혼잡에도 불구하고 숏 커버링이 붙으며 $69,000-$69,500 상방 청산 구간까지 빠르게 확장될 수 있다.\",\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.58,
      "setup_signals": [
        "현재가 $63,167가 완료·확인된 bullish Gartley 활성 PRZ $62,994.85-$63,290.38 내부에 위치하며, PRZ 터치/방어 및 AD 0.382 반응 도달로 reaction_score 0.80",
        "형성 중인 고품질 bullish Bat PRZ $62,773.38-$63,153.39가 현재가 바로 아래에 있으며 pattern_score 0.964, XAB 0.4905로 Bat 기준에 근접",
        "형성 중인 고품질 bullish Butterfly PRZ $62,906.59-$63,209.78와 bullish Gartley PRZ $62,803.80-$63,188.26이 겹쳐 $62,900-$63,200대에 3중 Fib confluence 클러스터 형성",
        "상방 반등 시 harmonic TP 밀집 구간은 $63,287.73-$63,359.76, 그 다음 $63,429.55-$63,584.47로 확인됨",
        "단, 바로 위 $63,347.79-$63,741.23에는 형성 중인 bearish Bat PRZ가 있어 반등이 나오더라도 $63,350 이상에서는 매도 반응 리스크가 큼"
      ],
      "reasoning": "구조 관점에서는 확정 BOS/CHoCH 또는 상위 구조 수용 데이터가 없고, harmonic directional_scores도 bullish 1.721 대 bearish 1.673으로 dominance가 0.014에 불과해 확정 구조 편향은 중립이다. 세팅 관점에서는 현재가 $63,167가 완료·확인된 bullish Gartley PRZ $62,994.85-$63,290.38 안에 있고 reaction_score 0.80, 방향 가중치 0.58로 단기 반등 후보는 유효하다. 또한 forming bullish Bat $62,773.38-$63,153.39, Butterfly $62,906.59-$63,209.78, Gartley $62,803.80-$63,188.26이 모두 활성 고컨플루언스 PRZ라 $62,800-$63,200대는 강한 반응 구간이다. 다만 $63,347.79-$63,741.23 및 $63,467.13-$63,722.09에 bearish PRZ가 겹쳐 있어, harmonic 단독으로는 추세 전환을 주장할 수 없고 신호는 중립으로 유지한다.",
      "key_levels": {
        "support": [
          63153.39,
          62994.85,
          62906.59,
          62803.8,
          62773.38,
          62506.8
        ],
        "resistance": [
          63290.38,
          63347.79,
          63450.35,
          63544.51,
          63640.47,
          63741.23,
          63948.2
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$62,773.38 하향 이탈 및 15분 종가 수용 시 현재 bullish PRZ 반등 세팅은 무효화",
      "risk_scenario": "반등이 $63,347.79-$63,741.23 bearish Bat/Gartley PRZ에서 거절되면 $63,213-$63,008, 심하면 $62,881.90-$62,676.80 방향으로 되밀릴 수 있다. 반대로 $63,741.23을 강하게 돌파·수용하면 상단 유동성 $63,948.20 및 7일 고점 $64,250까지 확장될 수 있다.",
      "data_quality": "high",
      "metrics": {
        "patterns_found": 82,
        "completed_patterns_found": 33,
        "forming_d_prz_found": 49,
        "swing_orders_scanned": [
          3,
          5,
          8
        ],
        "swing_search_window": 34,
        "multiscale_swings_scanned": 66,
        "swing_highs_scanned": 33,
        "swing_lows_scanned": 33,
        "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": 13,
          "medium": 28,
          "low": 41
        },
        "prz_status_counts": {
          "active": 24,
          "nearby": 15,
          "watch": 18,
          "far": 25,
          "forming": 21
        },
        "high_confluence_prz_count": 32,
        "strict_patterns_found": 48,
        "candidate_patterns_found": 34,
        "active_patterns_at_prz": 24,
        "nearby_patterns": 15,
        "all_patterns": [
          "bat",
          "butterfly",
          "gartley",
          "bat",
          "gartley",
          "bat",
          "shark",
          "gartley",
          "shark",
          "butterfly",
          "crab",
          "bat",
          "butterfly",
          "butterfly",
          "shark",
          "bat",
          "butterfly",
          "crab",
          "butterfly",
          "gartley",
          "bat",
          "gartley",
          "bat",
          "crab",
          "bat",
          "shark",
          "bat",
          "crab",
          "gartley",
          "bat",
          "bat",
          "butterfly",
          "butterfly",
          "crab",
          "crab",
          "crab",
          "butterfly",
          "shark",
          "shark",
          "gartley",
          "gartley",
          "bat",
          "crab",
          "crab",
          "crab",
          "crab",
          "shark",
          "crab",
          "butterfly",
          "butterfly",
          "crab",
          "crab",
          "shark",
          "bat",
          "butterfly",
          "butterfly",
          "crab",
          "butterfly",
          "bat",
          "shark",
          "shark",
          "butterfly",
          "crab",
          "gartley",
          "butterfly",
          "crab",
          "bat",
          "butterfly",
          "crab",
          "shark",
          "butterfly",
          "crab",
          "gartley",
          "crab",
          "shark",
          "crab",
          "bat",
          "shark",
          "crab",
          "crab",
          "butterfly",
          "crab"
        ],
        "all_signals": [
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish"
        ],
        "best_pattern": "bat",
        "best_pattern_quality": "strict",
        "best_quality": "high",
        "best_pattern_score": 0.964,
        "best_completion_status": "forming",
        "nearest_pattern": "butterfly",
        "nearest_prz": 63180.8,
        "price_to_prz": 0.02,
        "prz_range": [
          62939.93,
          63421.67
        ],
        "council_relevant_prz_count": 12,
        "directional_influence_prz_count": 12,
        "confirmed_reaction_prz_count": 6,
        "validated_harmonic_tp_count": 6,
        "pattern_candidates": [
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.964,
            "ratio_score": 1.0,
            "prz_score": 0.999,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 62963.38,
            "prz_range": [
              62773.38,
              63153.39
            ],
            "prz_width_pct": 0.604,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.32,
            "price_to_prz_pct_raw": -0.3223,
            "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": 62963.38,
              "a_price": 63861.3,
              "tp1_ad_382": 63306.39,
              "tp2_ad_618": 63518.3,
              "tp3_a_or_structure_liquidity": 63861.3,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4905,
              "ABC": 0.6191
            },
            "x_price": 62779.0,
            "x_idx": 200,
            "x_order": 3,
            "a_price": 63861.3,
            "a_idx": 218,
            "a_order": 3,
            "b_price": 63330.4,
            "b_idx": 226,
            "b_order": 3,
            "c_price": 63659.1,
            "c_idx": 246,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.962,
            "ratio_score": 0.992,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63058.18,
            "prz_range": [
              62906.59,
              63209.78
            ],
            "prz_width_pct": 0.481,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.17,
            "price_to_prz_pct_raw": -0.1723,
            "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": 63058.18,
              "a_price": 63659.1,
              "tp1_ad_382": 63287.73,
              "tp2_ad_618": 63429.55,
              "tp3_a_or_structure_liquidity": 63659.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7878,
              "ABC": 0.5504
            },
            "x_price": 63209.6,
            "x_idx": 242,
            "x_order": 8,
            "a_price": 63659.1,
            "a_idx": 246,
            "a_order": 5,
            "b_price": 63305.0,
            "b_idx": 247,
            "b_order": 3,
            "c_price": 63499.9,
            "c_idx": 290,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.961,
            "ratio_score": 0.919,
            "prz_score": 0.996,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 62996.03,
            "prz_range": [
              62803.8,
              63188.26
            ],
            "prz_width_pct": 0.61,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.27,
            "price_to_prz_pct_raw": -0.2707,
            "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": 62996.03,
              "a_price": 63948.2,
              "tp1_ad_382": 63359.76,
              "tp2_ad_618": 63584.47,
              "tp3_a_or_structure_liquidity": 63948.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6317,
              "ABC": 0.4847
            },
            "x_price": 62779.0,
            "x_idx": 200,
            "x_order": 3,
            "a_price": 63948.2,
            "a_idx": 223,
            "a_order": 5,
            "b_price": 63209.6,
            "b_idx": 242,
            "b_order": 8,
            "c_price": 63567.6,
            "c_idx": 265,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.943,
            "ratio_score": 1.0,
            "prz_score": 0.993,
            "prz_proximity": "active",
            "action_status": "active",
            "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.6,
            "price_to_prz_pct_raw": 0.5976,
            "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": 174,
            "x_order": 8,
            "a_price": 62676.8,
            "a_idx": 178,
            "a_order": 8,
            "b_price": 63238.3,
            "b_idx": 180,
            "b_order": 3,
            "c_price": 63020.0,
            "c_idx": 216,
            "c_order": 3,
            "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.04,
            "price_to_prz_pct_raw": -0.0386,
            "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": 1.017,
                "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": "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": 205,
            "x_order": 3,
            "a_price": 63948.2,
            "a_idx": 223,
            "a_order": 5,
            "b_price": 63330.4,
            "b_idx": 226,
            "b_order": 3,
            "c_price": 63832.5,
            "c_idx": 258,
            "c_order": 8,
            "d_idx": 261
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.927,
            "ratio_score": 0.993,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "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.68,
            "price_to_prz_pct_raw": 0.6769,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 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": 160,
            "x_order": 3,
            "a_price": 62881.9,
            "a_idx": 182,
            "a_order": 3,
            "b_price": 63438.2,
            "b_idx": 184,
            "b_order": 5,
            "c_price": 63020.0,
            "c_idx": 216,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.914,
            "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.74,
            "price_to_prz_pct_raw": 0.7383,
            "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": 146,
            "x_order": 3,
            "a_price": 62881.9,
            "a_idx": 182,
            "a_order": 3,
            "b_price": 63320.9,
            "b_idx": 203,
            "b_order": 5,
            "c_price": 63020.0,
            "c_idx": 216,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.912,
            "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.22,
            "price_to_prz_pct_raw": 1.2246,
            "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": 165,
            "x_order": 8,
            "a_price": 62881.9,
            "a_idx": 182,
            "a_order": 3,
            "b_price": 63554.7,
            "b_idx": 209,
            "b_order": 5,
            "c_price": 63209.6,
            "c_idx": 242,
            "c_order": 8,
            "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.04,
            "price_to_prz_pct_raw": -0.0386,
            "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": 1.017,
                "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": "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": 205,
            "x_order": 3,
            "a_price": 63948.2,
            "a_idx": 223,
            "a_order": 5,
            "b_price": 63330.4,
            "b_idx": 226,
            "b_order": 3,
            "c_price": 63832.5,
            "c_idx": 258,
            "c_order": 8,
            "d_idx": 261
          },
          {
            "pattern": "butterfly",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.912,
            "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.74,
            "price_to_prz_pct_raw": 0.7383,
            "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": 146,
            "x_order": 3,
            "a_price": 62881.9,
            "a_idx": 182,
            "a_order": 3,
            "b_price": 63320.9,
            "b_idx": 203,
            "b_order": 5,
            "c_price": 63020.0,
            "c_idx": 216,
            "c_order": 3,
            "d_idx": 246
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.902,
            "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.74,
            "price_to_prz_pct_raw": 0.7383,
            "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": 160,
            "x_order": 3,
            "a_price": 62881.9,
            "a_idx": 182,
            "a_order": 3,
            "b_price": 63320.9,
            "b_idx": 203,
            "b_order": 5,
            "c_price": 63020.0,
            "c_idx": 216,
            "c_order": 3,
            "d_idx": 246
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.883,
            "ratio_score": 0.981,
            "prz_score": 0.901,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 62506.8,
            "prz_range": [
              62421.3,
              62956.88
            ],
            "prz_width_pct": 0.854,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.76,
            "price_to_prz_pct_raw": -0.7566,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "post_D_close_progress"
              ],
              "reaction_score": 0.9,
              "reaction_detail": {
                "reaction_score": 0.9,
                "reaction_move_ratio_ad": 0.689,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 62689.09,
              "a_price": 63948.2,
              "tp1_ad_382": 63170.07,
              "tp2_ad_618": 63467.22,
              "tp3_a_or_structure_liquidity": 63948.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7957,
              "ABC": 0.6086,
              "BCD": 2.5635,
              "XAD": 1.5529
            },
            "x_price": 63020.0,
            "x_idx": 216,
            "x_order": 3,
            "a_price": 63948.2,
            "a_idx": 223,
            "a_order": 5,
            "b_price": 63209.6,
            "b_idx": 242,
            "b_order": 8,
            "c_price": 63659.1,
            "c_idx": 246,
            "c_order": 5,
            "d_idx": 278
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.873,
            "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.64,
            "price_to_prz_pct_raw": 0.6359,
            "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": 174,
            "x_order": 8,
            "a_price": 62377.0,
            "a_idx": 194,
            "a_order": 8,
            "b_price": 63320.9,
            "b_idx": 203,
            "b_order": 5,
            "c_price": 62658.4,
            "c_idx": 220,
            "c_order": 8,
            "d_idx": 250
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.869,
            "ratio_score": 0.931,
            "prz_score": 0.923,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 62506.8,
            "prz_range": [
              62457.23,
              62956.89
            ],
            "prz_width_pct": 0.797,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.73,
            "price_to_prz_pct_raw": -0.7281,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "post_D_close_progress"
              ],
              "reaction_score": 0.9,
              "reaction_detail": {
                "reaction_score": 0.9,
                "reaction_move_ratio_ad": 0.689,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 62707.06,
              "a_price": 63948.2,
              "tp1_ad_382": 63181.17,
              "tp2_ad_618": 63474.08,
              "tp3_a_or_structure_liquidity": 63948.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4701,
              "ABC": 0.6086,
              "BCD": 2.5635,
              "XAD": 0.9174
            },
            "x_price": 62377.0,
            "x_idx": 194,
            "x_order": 8,
            "a_price": 63948.2,
            "a_idx": 223,
            "a_order": 5,
            "b_price": 63209.6,
            "b_idx": 242,
            "b_order": 8,
            "c_price": 63659.1,
            "c_idx": 246,
            "c_order": 5,
            "d_idx": 278
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.964,
            "ratio_score": 1.0,
            "prz_score": 0.999,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 62963.38,
            "prz_range": [
              62773.38,
              63153.39
            ],
            "prz_width_pct": 0.604,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.32,
            "price_to_prz_pct_raw": -0.3223,
            "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": 62963.38,
              "a_price": 63861.3,
              "tp1_ad_382": 63306.39,
              "tp2_ad_618": 63518.3,
              "tp3_a_or_structure_liquidity": 63861.3,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4905,
              "ABC": 0.6191
            },
            "x_price": 62779.0,
            "x_idx": 200,
            "x_order": 3,
            "a_price": 63861.3,
            "a_idx": 218,
            "a_order": 3,
            "b_price": 63330.4,
            "b_idx": 226,
            "b_order": 3,
            "c_price": 63659.1,
            "c_idx": 246,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.962,
            "ratio_score": 0.992,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63058.18,
            "prz_range": [
              62906.59,
              63209.78
            ],
            "prz_width_pct": 0.481,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.17,
            "price_to_prz_pct_raw": -0.1723,
            "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": 63058.18,
              "a_price": 63659.1,
              "tp1_ad_382": 63287.73,
              "tp2_ad_618": 63429.55,
              "tp3_a_or_structure_liquidity": 63659.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7878,
              "ABC": 0.5504
            },
            "x_price": 63209.6,
            "x_idx": 242,
            "x_order": 8,
            "a_price": 63659.1,
            "a_idx": 246,
            "a_order": 5,
            "b_price": 63305.0,
            "b_idx": 247,
            "b_order": 3,
            "c_price": 63499.9,
            "c_idx": 290,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.961,
            "ratio_score": 0.919,
            "prz_score": 0.996,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 62996.03,
            "prz_range": [
              62803.8,
              63188.26
            ],
            "prz_width_pct": 0.61,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.27,
            "price_to_prz_pct_raw": -0.2707,
            "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": 62996.03,
              "a_price": 63948.2,
              "tp1_ad_382": 63359.76,
              "tp2_ad_618": 63584.47,
              "tp3_a_or_structure_liquidity": 63948.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6317,
              "ABC": 0.4847
            },
            "x_price": 62779.0,
            "x_idx": 200,
            "x_order": 3,
            "a_price": 63948.2,
            "a_idx": 223,
            "a_order": 5,
            "b_price": 63209.6,
            "b_idx": 242,
            "b_order": 8,
            "c_price": 63567.6,
            "c_idx": 265,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.943,
            "ratio_score": 1.0,
            "prz_score": 0.993,
            "prz_proximity": "active",
            "action_status": "active",
            "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.6,
            "price_to_prz_pct_raw": 0.5976,
            "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": 174,
            "x_order": 8,
            "a_price": 62676.8,
            "a_idx": 178,
            "a_order": 8,
            "b_price": 63238.3,
            "b_idx": 180,
            "b_order": 3,
            "c_price": 63020.0,
            "c_idx": 216,
            "c_order": 3,
            "d_idx": null
          }
        ],
        "report_detail_candidates": [
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.964,
            "ratio_score": 1.0,
            "prz_score": 0.999,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 62963.38,
            "prz_range": [
              62773.38,
              63153.39
            ],
            "prz_width_pct": 0.604,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.32,
            "price_to_prz_pct_raw": -0.3223,
            "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": 62963.38,
              "a_price": 63861.3,
              "tp1_ad_382": 63306.39,
              "tp2_ad_618": 63518.3,
              "tp3_a_or_structure_liquidity": 63861.3,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4905,
              "ABC": 0.6191
            },
            "x_price": 62779.0,
            "x_idx": 200,
            "x_order": 3,
            "a_price": 63861.3,
            "a_idx": 218,
            "a_order": 3,
            "b_price": 63330.4,
            "b_idx": 226,
            "b_order": 3,
            "c_price": 63659.1,
            "c_idx": 246,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.962,
            "ratio_score": 0.992,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63058.18,
            "prz_range": [
              62906.59,
              63209.78
            ],
            "prz_width_pct": 0.481,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.17,
            "price_to_prz_pct_raw": -0.1723,
            "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": 63058.18,
              "a_price": 63659.1,
              "tp1_ad_382": 63287.73,
              "tp2_ad_618": 63429.55,
              "tp3_a_or_structure_liquidity": 63659.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7878,
              "ABC": 0.5504
            },
            "x_price": 63209.6,
            "x_idx": 242,
            "x_order": 8,
            "a_price": 63659.1,
            "a_idx": 246,
            "a_order": 5,
            "b_price": 63305.0,
            "b_idx": 247,
            "b_order": 3,
            "c_price": 63499.9,
            "c_idx": 290,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.961,
            "ratio_score": 0.919,
            "prz_score": 0.996,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 62996.03,
            "prz_range": [
              62803.8,
              63188.26
            ],
            "prz_width_pct": 0.61,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.27,
            "price_to_prz_pct_raw": -0.2707,
            "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": 62996.03,
              "a_price": 63948.2,
              "tp1_ad_382": 63359.76,
              "tp2_ad_618": 63584.47,
              "tp3_a_or_structure_liquidity": 63948.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6317,
              "ABC": 0.4847
            },
            "x_price": 62779.0,
            "x_idx": 200,
            "x_order": 3,
            "a_price": 63948.2,
            "a_idx": 223,
            "a_order": 5,
            "b_price": 63209.6,
            "b_idx": 242,
            "b_order": 8,
            "c_price": 63567.6,
            "c_idx": 265,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.943,
            "ratio_score": 1.0,
            "prz_score": 0.993,
            "prz_proximity": "active",
            "action_status": "active",
            "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.6,
            "price_to_prz_pct_raw": 0.5976,
            "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": 174,
            "x_order": 8,
            "a_price": 62676.8,
            "a_idx": 178,
            "a_order": 8,
            "b_price": 63238.3,
            "b_idx": 180,
            "b_order": 3,
            "c_price": 63020.0,
            "c_idx": 216,
            "c_order": 3,
            "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.04,
            "price_to_prz_pct_raw": -0.0386,
            "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": 1.017,
                "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": "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": 205,
            "x_order": 3,
            "a_price": 63948.2,
            "a_idx": 223,
            "a_order": 5,
            "b_price": 63330.4,
            "b_idx": 226,
            "b_order": 3,
            "c_price": 63832.5,
            "c_idx": 258,
            "c_order": 8,
            "d_idx": 261
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.927,
            "ratio_score": 0.993,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "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.68,
            "price_to_prz_pct_raw": 0.6769,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 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": 160,
            "x_order": 3,
            "a_price": 62881.9,
            "a_idx": 182,
            "a_order": 3,
            "b_price": 63438.2,
            "b_idx": 184,
            "b_order": 5,
            "c_price": 63020.0,
            "c_idx": 216,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.914,
            "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.74,
            "price_to_prz_pct_raw": 0.7383,
            "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": 146,
            "x_order": 3,
            "a_price": 62881.9,
            "a_idx": 182,
            "a_order": 3,
            "b_price": 63320.9,
            "b_idx": 203,
            "b_order": 5,
            "c_price": 63020.0,
            "c_idx": 216,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.912,
            "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.22,
            "price_to_prz_pct_raw": 1.2246,
            "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": 165,
            "x_order": 8,
            "a_price": 62881.9,
            "a_idx": 182,
            "a_order": 3,
            "b_price": 63554.7,
            "b_idx": 209,
            "b_order": 5,
            "c_price": 63209.6,
            "c_idx": 242,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.912,
            "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.74,
            "price_to_prz_pct_raw": 0.7383,
            "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": 146,
            "x_order": 3,
            "a_price": 62881.9,
            "a_idx": 182,
            "a_order": 3,
            "b_price": 63320.9,
            "b_idx": 203,
            "b_order": 5,
            "c_price": 63020.0,
            "c_idx": 216,
            "c_order": 3,
            "d_idx": 246
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.902,
            "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.74,
            "price_to_prz_pct_raw": 0.7383,
            "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": 160,
            "x_order": 3,
            "a_price": 62881.9,
            "a_idx": 182,
            "a_order": 3,
            "b_price": 63320.9,
            "b_idx": 203,
            "b_order": 5,
            "c_price": 63020.0,
            "c_idx": 216,
            "c_order": 3,
            "d_idx": 246
          },
          {
            "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.19,
            "price_to_prz_pct_raw": -0.1925,
            "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": 242,
            "x_order": 8,
            "a_price": 63659.1,
            "a_idx": 246,
            "a_order": 5,
            "b_price": 63305.0,
            "b_idx": 247,
            "b_order": 3,
            "c_price": 63572.1,
            "c_idx": 250,
            "c_order": 3,
            "d_idx": 253
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.873,
            "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.64,
            "price_to_prz_pct_raw": 0.6359,
            "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": 174,
            "x_order": 8,
            "a_price": 62377.0,
            "a_idx": 194,
            "a_order": 8,
            "b_price": 63320.9,
            "b_idx": 203,
            "b_order": 5,
            "c_price": 62658.4,
            "c_idx": 220,
            "c_order": 8,
            "d_idx": 250
          }
        ],
        "actionable_patterns_list": [
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.964,
            "prz_proximity": "active",
            "prz_range": [
              62773.38,
              63153.39
            ],
            "prz_reversal_direction": "up",
            "price_to_prz_pct": -0.32,
            "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": 62963.38,
              "a_price": 63861.3,
              "tp1_ad_382": 63306.39,
              "tp2_ad_618": 63518.3,
              "tp3_a_or_structure_liquidity": 63861.3,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "BAT FORMING HIGH PRZ $62,773.38-$63,153.39: expected reversal UP if price reacts in zone"
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.962,
            "prz_proximity": "active",
            "prz_range": [
              62906.59,
              63209.78
            ],
            "prz_reversal_direction": "up",
            "price_to_prz_pct": -0.17,
            "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": 63058.18,
              "a_price": 63659.1,
              "tp1_ad_382": 63287.73,
              "tp2_ad_618": 63429.55,
              "tp3_a_or_structure_liquidity": 63659.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "BUTTERFLY FORMING HIGH PRZ $62,906.59-$63,209.78: expected reversal UP if price reacts in zone"
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.961,
            "prz_proximity": "active",
            "prz_range": [
              62803.8,
              63188.26
            ],
            "prz_reversal_direction": "up",
            "price_to_prz_pct": -0.27,
            "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": 62996.03,
              "a_price": 63948.2,
              "tp1_ad_382": 63359.76,
              "tp2_ad_618": 63584.47,
              "tp3_a_or_structure_liquidity": 63948.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "GARTLEY FORMING HIGH PRZ $62,803.80-$63,188.26: expected reversal UP if price reacts in zone"
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.943,
            "prz_proximity": "active",
            "prz_range": [
              63347.79,
              63741.23
            ],
            "prz_reversal_direction": "down",
            "price_to_prz_pct": 0.6,
            "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": "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.04,
            "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": 1.017,
                "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": "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": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.927,
            "prz_proximity": "nearby",
            "prz_range": [
              63467.13,
              63722.09
            ],
            "prz_reversal_direction": "down",
            "price_to_prz_pct": 0.68,
            "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": "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."
            },
            "interpretation": "GARTLEY FORMING HIGH PRZ $63,467.13-$63,722.09: expected reversal DOWN if price reacts in zone"
          }
        ],
        "best_council_prz": {
          "pattern": "bat",
          "signal": "bullish",
          "completion_status": "forming",
          "pattern_quality": "strict",
          "quality": "high",
          "pattern_score": 0.964,
          "ratio_score": 1.0,
          "prz_score": 0.999,
          "prz_proximity": "active",
          "action_status": "active",
          "high_confluence_prz": true,
          "d_price": 62963.38,
          "prz_range": [
            62773.38,
            63153.39
          ],
          "prz_width_pct": 0.604,
          "prz_confluence_count": 3,
          "prz_fib_families": [
            "ABCD",
            "BC_EXT",
            "XAD"
          ],
          "price_to_prz_pct": -0.32,
          "price_to_prz_pct_raw": -0.3223,
          "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": 62963.38,
            "a_price": 63861.3,
            "tp1_ad_382": 63306.39,
            "tp2_ad_618": 63518.3,
            "tp3_a_or_structure_liquidity": 63861.3,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          "ratios": {
            "XAB": 0.4905,
            "ABC": 0.6191
          },
          "x_price": 62779.0,
          "x_idx": 200,
          "x_order": 3,
          "a_price": 63861.3,
          "a_idx": 218,
          "a_order": 3,
          "b_price": 63330.4,
          "b_idx": 226,
          "b_order": 3,
          "c_price": 63659.1,
          "c_idx": 246,
          "c_order": 5,
          "d_idx": null
        },
        "best_tp_ladder": {
          "direction": "bullish",
          "source": "bat",
          "d_price": 62963.38,
          "a_price": 63861.3,
          "tp1_ad_382": 63306.39,
          "tp2_ad_618": 63518.3,
          "tp3_a_or_structure_liquidity": 63861.3,
          "note": "Use as strong TP ladder context; not standalone path authority."
        },
        "best_confirmed_tp_ladder": {
          "direction": "bullish",
          "source": "butterfly",
          "d_price": 62689.09,
          "a_price": 63948.2,
          "tp1_ad_382": 63170.07,
          "tp2_ad_618": 63467.22,
          "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": 62963.38,
            "a_price": 63861.3,
            "tp1_ad_382": 63306.39,
            "tp2_ad_618": 63518.3,
            "tp3_a_or_structure_liquidity": 63861.3,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bullish",
            "source": "butterfly",
            "d_price": 63058.18,
            "a_price": 63659.1,
            "tp1_ad_382": 63287.73,
            "tp2_ad_618": 63429.55,
            "tp3_a_or_structure_liquidity": 63659.1,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bullish",
            "source": "gartley",
            "d_price": 62996.03,
            "a_price": 63948.2,
            "tp1_ad_382": 63359.76,
            "tp2_ad_618": 63584.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": 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": "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."
          }
        ],
        "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": "bullish",
            "source": "butterfly",
            "d_price": 62689.09,
            "a_price": 63948.2,
            "tp1_ad_382": 63170.07,
            "tp2_ad_618": 63467.22,
            "tp3_a_or_structure_liquidity": 63948.2,
            "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."
          },
          {
            "direction": "bullish",
            "source": "bat",
            "d_price": 62707.06,
            "a_price": 63948.2,
            "tp1_ad_382": 63181.17,
            "tp2_ad_618": 63474.08,
            "tp3_a_or_structure_liquidity": 63948.2,
            "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.721,
          "bearish": 1.673
        },
        "directional_score_total": 3.393,
        "directional_dominance": 0.014
      },
      "raw_llm_response": "{\n  \"signal\": \"neutral\",\n  \"confidence\": 0.52,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.58,\n  \"setup_signals\": [\n    \"현재가 $63,167가 완료·확인된 bullish Gartley 활성 PRZ $62,994.85-$63,290.38 내부에 위치하며, PRZ 터치/방어 및 AD 0.382 반응 도달로 reaction_score 0.80\",\n    \"형성 중인 고품질 bullish Bat PRZ $62,773.38-$63,153.39가 현재가 바로 아래에 있으며 pattern_score 0.964, XAB 0.4905로 Bat 기준에 근접\",\n    \"형성 중인 고품질 bullish Butterfly PRZ $62,906.59-$63,209.78와 bullish Gartley PRZ $62,803.80-$63,188.26이 겹쳐 $62,900-$63,200대에 3중 Fib confluence 클러스터 형성\",\n    \"상방 반등 시 harmonic TP 밀집 구간은 $63,287.73-$63,359.76, 그 다음 $63,429.55-$63,584.47로 확인됨\",\n    \"단, 바로 위 $63,347.79-$63,741.23에는 형성 중인 bearish Bat PRZ가 있어 반등이 나오더라도 $63,350 이상에서는 매도 반응 리스크가 큼\"\n  ],\n  \"reasoning\": \"구조 관점에서는 확정 BOS/CHoCH 또는 상위 구조 수용 데이터가 없고, harmonic directional_scores도 bullish 1.721 대 bearish 1.673으로 dominance가 0.014에 불과해 확정 구조 편향은 중립이다. 세팅 관점에서는 현재가 $63,167가 완료·확인된 bullish Gartley PRZ $62,994.85-$63,290.38 안에 있고 reaction_score 0.80, 방향 가중치 0.58로 단기 반등 후보는 유효하다. 또한 forming bullish Bat $62,773.38-$63,153.39, Butterfly $62,906.59-$63,209.78, Gartley $62,803.80-$63,188.26이 모두 활성 고컨플루언스 PRZ라 $62,800-$63,200대는 강한 반응 구간이다. 다만 $63,347.79-$63,741.23 및 $63,467.13-$63,722.09에 bearish PRZ가 겹쳐 있어, harmonic 단독으로는 추세 전환을 주장할 수 없고 신호는 중립으로 유지한다.\",\n  \"key_levels\": {\n    \"support\": [\n      63153.39,\n      62994.85,\n      62906.59,\n      62803.8,\n      62773.38,\n      62506.8\n    ],\n    \"resistance\": [\n      63290.38,\n      63347.79,\n      63450.35,\n      63544.51,\n      63640.47,\n      63741.23,\n      63948.2\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$62,773.38 하향 이탈 및 15분 종가 수용 시 현재 bullish PRZ 반등 세팅은 무효화\",\n  \"risk_scenario\": \"반등이 $63,347.79-$63,741.23 bearish Bat/Gartley PRZ에서 거절되면 $63,213-$63,008, 심하면 $62,881.90-$62,676.80 방향으로 되밀릴 수 있다. 반대로 $63,741.23을 강하게 돌파·수용하면 상단 유동성 $63,948.20 및 7일 고점 $64,250까지 확장될 수 있다.\",\n  \"data_quality\": \"high\"\n}"
    },
    "candlestick": {
      "agent_id": "candlestick",
      "display_name": "Candlestick Reader",
      "signal": "bearish",
      "confidence": 0.58,
      "structure_bias": "neutral",
      "setup_bias": "bearish",
      "setup_score": 0.62,
      "setup_signals": [
        "현재가 $63,167.00은 7일 범위 EQ $61,914.40 위의 프리미엄 구간에 위치",
        "최근 5개 패턴 중 shooting_star가 2회 출현하며 매도 압력 후보 형성: pattern_quality 0.611 및 0.579",
        "최근 doji가 2회 출현해 $63,167 부근에서 방향성 확정 전의 매수 피로/관망 신호 발생",
        "bear_score 1.3000이 bull_score 0.750보다 높아 단기 캔들 압력은 약세 우위",
        "고거래량 패턴이 없어 하락 전환은 아직 구조 확정보다 사전 셋업 단계"
      ],
      "reasoning": "BTC/USDT는 현재 $63,167.00으로 EMA20 $63,147.62 바로 위에 있으나, 7일 고점 $64,250.00과 저점 $59,578.80의 중간값인 EQ $61,914.40 위 프리미엄 구간에 있어 단기 매도 셋업이 우세합니다. 최근 shooting_star 2개와 doji 2개가 확인되었고, 가장 높은 패턴 품질은 0.611로 강력한 확정 신호라기보다는 저항권 매수 피로 신호에 가깝습니다. 구조적으로는 가격이 EMA20, EMA120 $63,041.21, EMA240 $62,551.27 위에 있어 완전한 약세 구조로 확정되지는 않았으며, 명확한 BOS/CHoCH 정보가 없어 structure_bias는 중립으로 판단합니다. 다만 bear_score 1.3000이 bull_score 0.750을 상회하고 고거래량 동반이 없기 때문에, 현재 해석은 ‘확정 하락 추세’가 아니라 $63,000대 프리미엄 영역에서의 단기 약세 셋업입니다.",
      "key_levels": {
        "support": [
          63147.62,
          63041.21,
          62551.27,
          61914.4,
          59578.8
        ],
        "resistance": [
          63167.0,
          64250.0
        ]
      },
      "time_horizon": "단기, 15분봉 기준",
      "invalidation_level": "$64,250.00 상향 돌파 및 15분봉 종가 안착",
      "risk_scenario": "$63,147.62 EMA20과 $63,041.21 EMA120을 지지로 유지한 채 반등하면 shooting_star 신호가 실패할 수 있으며, 이 경우 $64,250.00 7일 고점 재시험으로 이어질 수 있습니다. 반대로 $63,041.21 아래로 이탈하면 $62,551.27 EMA240 및 EQ $61,914.40까지 되돌림 압력이 커질 수 있습니다.",
      "data_quality": "medium",
      "metrics": {
        "total_patterns_detected": 148,
        "recent_patterns": 5,
        "pattern_list": [
          "shooting_star@290",
          "shooting_star@296",
          "bullish_engulfing@292",
          "doji@296",
          "doji@299"
        ],
        "atr_value": 206.88,
        "vol_avg_20": 1489.46,
        "high_volume_patterns": [],
        "pattern_candidates": [
          {
            "pattern": "shooting_star",
            "signal": "bearish",
            "pattern_quality": 0.611,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "shooting_star",
            "signal": "bearish",
            "pattern_quality": 0.579,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "bullish_engulfing",
            "signal": "bullish",
            "pattern_quality": 0.438,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "doji",
            "signal": "neutral",
            "pattern_quality": 0.355,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "doji",
            "signal": "neutral",
            "pattern_quality": 0.355,
            "tier": "candidate",
            "high_volume": false
          }
        ],
        "best_pattern_quality": 0.611,
        "bull_score": 0.75,
        "bear_score": 1.3
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.58,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.62,\n  \"setup_signals\": [\n    \"현재가 $63,167.00은 7일 범위 EQ $61,914.40 위의 프리미엄 구간에 위치\",\n    \"최근 5개 패턴 중 shooting_star가 2회 출현하며 매도 압력 후보 형성: pattern_quality 0.611 및 0.579\",\n    \"최근 doji가 2회 출현해 $63,167 부근에서 방향성 확정 전의 매수 피로/관망 신호 발생\",\n    \"bear_score 1.3000이 bull_score 0.750보다 높아 단기 캔들 압력은 약세 우위\",\n    \"고거래량 패턴이 없어 하락 전환은 아직 구조 확정보다 사전 셋업 단계\"\n  ],\n  \"reasoning\": \"BTC/USDT는 현재 $63,167.00으로 EMA20 $63,147.62 바로 위에 있으나, 7일 고점 $64,250.00과 저점 $59,578.80의 중간값인 EQ $61,914.40 위 프리미엄 구간에 있어 단기 매도 셋업이 우세합니다. 최근 shooting_star 2개와 doji 2개가 확인되었고, 가장 높은 패턴 품질은 0.611로 강력한 확정 신호라기보다는 저항권 매수 피로 신호에 가깝습니다. 구조적으로는 가격이 EMA20, EMA120 $63,041.21, EMA240 $62,551.27 위에 있어 완전한 약세 구조로 확정되지는 않았으며, 명확한 BOS/CHoCH 정보가 없어 structure_bias는 중립으로 판단합니다. 다만 bear_score 1.3000이 bull_score 0.750을 상회하고 고거래량 동반이 없기 때문에, 현재 해석은 ‘확정 하락 추세’가 아니라 $63,000대 프리미엄 영역에서의 단기 약세 셋업입니다.\",\n  \"key_levels\": {\n    \"support\": [\n      63147.62,\n      63041.21,\n      62551.27,\n      61914.4,\n      59578.8\n    ],\n    \"resistance\": [\n      63167.0,\n      64250.0\n    ]\n  },\n  \"time_horizon\": \"단기, 15분봉 기준\",\n  \"invalidation_level\": \"$64,250.00 상향 돌파 및 15분봉 종가 안착\",\n  \"risk_scenario\": \"$63,147.62 EMA20과 $63,041.21 EMA120을 지지로 유지한 채 반등하면 shooting_star 신호가 실패할 수 있으며, 이 경우 $64,250.00 7일 고점 재시험으로 이어질 수 있습니다. 반대로 $63,041.21 아래로 이탈하면 $62,551.27 EMA240 및 EQ $61,914.40까지 되돌림 압력이 커질 수 있습니다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "fibonacci": {
      "agent_id": "fibonacci",
      "display_name": "Fibonacci Analyst",
      "signal": "neutral",
      "confidence": 0.58,
      "structure_bias": "neutral",
      "setup_bias": "bullish",
      "setup_score": 0.62,
      "setup_signals": [
        "현재가 $63,167.00이 최근 상승 스윙 $62,507 → $63,500의 0.382 되돌림 $63,120.54 바로 위에서 테스트 중",
        "0.382 되돌림 $63,120.54와 EMA20 $63,147.62가 근접해 단기 지지 반응 후보",
        "EQ/0.5 되돌림 $63,003.35 위에서 거래되어 상승 스윙의 중립선은 아직 방어 중",
        "핵심 골든 비율 0.618 되돌림 $62,886.16이 하방 최종 고확률 지지 후보로 남아 있음",
        "피보나치 confluence_quality 1.000, 주요 클러스터 $63,039.41 부근에 0.236/0.382/0.5/0.618 계열 레벨 집중"
      ],
      "reasoning": "현재 BTC는 상승 스윙 $62,507 → $63,500 기준 0.382 되돌림 $63,120.54에 가장 근접해 있으며, 현재가 $63,167.00은 해당 지지 위에서 반응을 시험 중입니다. 구조적으로는 명확한 BOS/CHoCH 또는 구조적 수용 확인 데이터가 없으므로 structure_bias는 중립으로 판단하지만, 세팅 관점에서는 $63,120.54와 EMA20 $63,147.62가 겹치는 구간에서 단기 반등 조건이 형성되어 setup_bias는 bullish입니다. 다만 가격이 EQ $63,003.35 위의 프리미엄/상단 영역에 있어 $63,265.53의 0.236 저항과 $63,499.90 스윙 고점 돌파 전까지는 추세 확정 신호로 보기 어렵습니다. $62,886.16의 0.618 골든 비율을 이탈하면 현재의 반등 세팅은 약화되고 $62,719.32의 0.786 되돌림까지 하방 확장 위험이 커집니다.",
      "key_levels": {
        "support": [
          63120.54,
          63003.35,
          62886.16,
          62719.32
        ],
        "resistance": [
          63265.53,
          63499.9,
          63770.02,
          63911.04,
          64113.64,
          64493.0
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$62,886.16",
      "risk_scenario": "$63,120.54의 0.382 지지가 무너지면 가격은 EQ $63,003.35를 재시험할 가능성이 높고, 이후 골든 비율 $62,886.16까지 하락 압력이 확대될 수 있습니다. 특히 $62,886.16 아래로 수용되면 현재의 단기 bullish setup은 실패로 보고 $62,719.32 또는 스윙 저점 $62,507 부근까지 되돌림이 깊어질 수 있습니다.",
      "data_quality": "high",
      "metrics": {
        "swing_pair": "Low→High: $62,507 → $63,500",
        "direction": "up",
        "nearest_fib": "ret_0.382",
        "nearest_fib_price": 63120.54,
        "nearest_fib_distance": 0.07,
        "golden_ratio_level": 62886.16,
        "fib_ret_382": 63120.54,
        "fib_ret_618": 62886.16,
        "confluence_zones": [
          {
            "price": 63039.41,
            "count": 4,
            "levels": [
              "ret_0.618",
              "ret_0.5",
              "ret_0.382",
              "ret_0.236"
            ],
            "cluster_score": 1.0
          },
          {
            "price": 62592.46,
            "count": 2,
            "levels": [
              "ret_0.382",
              "ret_0.786"
            ],
            "cluster_score": 0.6
          },
          {
            "price": 63382.71,
            "count": 2,
            "levels": [
              "ret_0.236",
              "ext_1.0"
            ],
            "cluster_score": 0.6
          },
          {
            "price": 63840.53,
            "count": 2,
            "levels": [
              "ext_1.272",
              "ext_1.414"
            ],
            "cluster_score": 0.6
          },
          {
            "price": 64181.82,
            "count": 2,
            "levels": [
              "ext_1.618",
              "ext_1.0"
            ],
            "cluster_score": 0.6
          }
        ],
        "support_levels": [
          63120.535800000005,
          63003.350000000006,
          62886.1642
        ],
        "resistance_levels": [
          63265.5284,
          63499.9,
          63770.0232
        ],
        "level_candidates": [
          {
            "name": "ret_0.236",
            "price": 63265.53,
            "distance_pct": 0.16,
            "is_support": false,
            "cluster_score": 1.0
          },
          {
            "name": "ret_0.382",
            "price": 63120.54,
            "distance_pct": 0.07,
            "is_support": true,
            "cluster_score": 1.0
          },
          {
            "name": "ret_0.5",
            "price": 63003.35,
            "distance_pct": 0.26,
            "is_support": true,
            "cluster_score": 1.0
          },
          {
            "name": "ret_0.618",
            "price": 62886.16,
            "distance_pct": 0.44,
            "is_support": true,
            "cluster_score": 1.0
          },
          {
            "name": "ret_0.786",
            "price": 62719.32,
            "distance_pct": 0.71,
            "is_support": true,
            "cluster_score": 0.6
          },
          {
            "name": "ext_1.0",
            "price": 63499.9,
            "distance_pct": 0.53,
            "is_support": false,
            "cluster_score": 0.6
          },
          {
            "name": "ext_1.272",
            "price": 63770.02,
            "distance_pct": 0.95,
            "is_support": false,
            "cluster_score": 0.6
          },
          {
            "name": "ext_1.414",
            "price": 63911.04,
            "distance_pct": 1.18,
            "is_support": false,
            "cluster_score": 0.6
          },
          {
            "name": "ext_1.618",
            "price": 64113.64,
            "distance_pct": 1.5,
            "is_support": false,
            "cluster_score": 0.6
          },
          {
            "name": "ext_2.0",
            "price": 64493.0,
            "distance_pct": 2.1,
            "is_support": false,
            "cluster_score": 0.6
          }
        ],
        "confluence_quality": 1.0,
        "fib_reaction_state": "testing",
        "reaction_probability": 0.65
      },
      "raw_llm_response": "{\n  \"signal\": \"neutral\",\n  \"confidence\": 0.58,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.62,\n  \"setup_signals\": [\n    \"현재가 $63,167.00이 최근 상승 스윙 $62,507 → $63,500의 0.382 되돌림 $63,120.54 바로 위에서 테스트 중\",\n    \"0.382 되돌림 $63,120.54와 EMA20 $63,147.62가 근접해 단기 지지 반응 후보\",\n    \"EQ/0.5 되돌림 $63,003.35 위에서 거래되어 상승 스윙의 중립선은 아직 방어 중\",\n    \"핵심 골든 비율 0.618 되돌림 $62,886.16이 하방 최종 고확률 지지 후보로 남아 있음\",\n    \"피보나치 confluence_quality 1.000, 주요 클러스터 $63,039.41 부근에 0.236/0.382/0.5/0.618 계열 레벨 집중\"\n  ],\n  \"reasoning\": \"현재 BTC는 상승 스윙 $62,507 → $63,500 기준 0.382 되돌림 $63,120.54에 가장 근접해 있으며, 현재가 $63,167.00은 해당 지지 위에서 반응을 시험 중입니다. 구조적으로는 명확한 BOS/CHoCH 또는 구조적 수용 확인 데이터가 없으므로 structure_bias는 중립으로 판단하지만, 세팅 관점에서는 $63,120.54와 EMA20 $63,147.62가 겹치는 구간에서 단기 반등 조건이 형성되어 setup_bias는 bullish입니다. 다만 가격이 EQ $63,003.35 위의 프리미엄/상단 영역에 있어 $63,265.53의 0.236 저항과 $63,499.90 스윙 고점 돌파 전까지는 추세 확정 신호로 보기 어렵습니다. $62,886.16의 0.618 골든 비율을 이탈하면 현재의 반등 세팅은 약화되고 $62,719.32의 0.786 되돌림까지 하방 확장 위험이 커집니다.\",\n  \"key_levels\": {\n    \"support\": [\n      63120.54,\n      63003.35,\n      62886.16,\n      62719.32\n    ],\n    \"resistance\": [\n      63265.53,\n      63499.9,\n      63770.02,\n      63911.04,\n      64113.64,\n      64493.0\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$62,886.16\",\n  \"risk_scenario\": \"$63,120.54의 0.382 지지가 무너지면 가격은 EQ $63,003.35를 재시험할 가능성이 높고, 이후 골든 비율 $62,886.16까지 하락 압력이 확대될 수 있습니다. 특히 $62,886.16 아래로 수용되면 현재의 단기 bullish setup은 실패로 보고 $62,719.32 또는 스윙 저점 $62,507 부근까지 되돌림이 깊어질 수 있습니다.\",\n  \"data_quality\": \"high\"\n}"
    },
    "ict": {
      "agent_id": "ict",
      "display_name": "ICT Trader",
      "signal": "bearish",
      "confidence": 0.72,
      "structure_bias": "bearish",
      "setup_bias": "bearish",
      "setup_score": 0.81,
      "setup_signals": [
        "현재가 $63,167.00은 EQ $63,106.85 위의 프리미엄 구간에 위치",
        "최근 확정 구조 이벤트가 $63,120.40 하방 BOS로 확인되어 단기 구조가 약세",
        "활성 bearish OB 후보가 $63,600.00-$63,832.50에 존재하며 현재가와 근접",
        "bearish OB 내부에 과거 FVG 컨텍스트 $63,418.40-$63,690.70이 포함되어 공급 반응 가능",
        "하방 유동성 SSL이 $62,379.10 및 $60,371.70에 남아 있음",
        "이전일 고점 $64,250.00과 저점 $61,150.20 모두 미돌파 상태로, 현재는 내부 유동성 사냥 구간"
      ],
      "reasoning": "확정 구조 기준으로는 최근 시퀀스가 BOS_bullish → BOS_bearish → CHoCH_bullish → BOS_bearish이며, 마지막 구조 이벤트가 $63,120.40 하방 BOS이므로 structure_bias는 bearish로 본다. 현재가 $63,167.00은 EQ $63,106.85 위 프리미엄에 있어 신규 롱보다는 공급 반응 및 할인 구간으로의 회귀 가능성이 더 높다. 핵심 매도 관심 구간은 활성 bearish OB 후보 $63,600.00-$63,832.50이며, 특히 OB 상단 $63,832.50은 현재 단기 range high와도 일치한다. 다만 최근 liquidity sweep이 없고 OB도 confirmed가 아닌 candidate, 점수 0.528이므로 강한 추세 확정보다는 프리미엄 공급권에서의 단기 bearish setup으로 해석한다.",
      "key_levels": {
        "support": [
          63120.4,
          62715.4,
          62379.1,
          62381.2,
          61150.2,
          60371.7
        ],
        "resistance": [
          63499.9,
          63600.0,
          63716.25,
          63832.5,
          64250.0
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$63,832.50 상방 수용",
      "risk_scenario": "가격이 $63,600.00-$63,832.50 bearish OB를 흡수하고 $63,832.50 위에서 수용되면, 현재 bearish setup은 실패로 보고 $64,250.00 이전일 고점의 buy-side liquidity를 사냥하는 반대 시나리오가 열릴 수 있다.",
      "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.528
        },
        "active_bullish_ob_list": [],
        "active_bearish_ob_list": [
          {
            "type": "bearish_ob",
            "idx": 258,
            "top": 63832.5,
            "bottom": 63600.0,
            "mid": 63716.25,
            "quality": "candidate",
            "score": 0.528,
            "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": 258,
            "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": 56,
        "fvg_open_zones": [],
        "bos_choch_events": [
          "BOS_bullish",
          "BOS_bearish",
          "CHoCH_bullish",
          "BOS_bearish"
        ],
        "bos_choch_levels": [
          {
            "type": "BOS_bullish",
            "level": 60969.2
          },
          {
            "type": "BOS_bearish",
            "level": 61509.1
          },
          {
            "type": "CHoCH_bullish",
            "level": 62327.0
          },
          {
            "type": "BOS_bearish",
            "level": 63120.4
          }
        ],
        "bos_sequence": [
          "BOS_bullish",
          "BOS_bearish",
          "CHoCH_bullish",
          "BOS_bearish"
        ],
        "consecutive_bull_bos": 0,
        "consecutive_bear_bos": 1,
        "recent_liq_sweeps": [],
        "recent_sweep_levels": [],
        "liquidity_resting": [
          {
            "type": "SSL",
            "level": 60371.7
          },
          {
            "type": "SSL",
            "level": 62379.1
          }
        ],
        "current_zone": "premium",
        "eq_level": 63106.85,
        "range_high": 63832.5,
        "range_low": 62381.2,
        "bull_score": 4.7,
        "bear_score": 6.617,
        "setup_bias": "bearish",
        "setup_score": 0.81,
        "setup_signals": [
          "bearish BOS below $61,509.10",
          "bearish BOS below $63,120.40",
          "bearish OB candidate $63,600.00-$63,832.50 (nearby, score=0.53)",
          "SSL resting below $62,379.10"
        ],
        "retracement_direction": "bearish",
        "current_retracement_pct": 55.0,
        "deepest_retracement_pct": 77.1,
        "previous_day_high": 64250.0,
        "previous_day_low": 61150.2,
        "broken_prev_high": false,
        "broken_prev_low": false,
        "sessions": {
          "London": {
            "active": false,
            "high": null,
            "low": null
          },
          "New York": {
            "active": true,
            "high": 63499.9,
            "low": 62715.4
          },
          "Asian kill zone": {
            "active": false,
            "high": null,
            "low": null
          }
        }
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.72,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.81,\n  \"setup_signals\": [\n    \"현재가 $63,167.00은 EQ $63,106.85 위의 프리미엄 구간에 위치\",\n    \"최근 확정 구조 이벤트가 $63,120.40 하방 BOS로 확인되어 단기 구조가 약세\",\n    \"활성 bearish OB 후보가 $63,600.00-$63,832.50에 존재하며 현재가와 근접\",\n    \"bearish OB 내부에 과거 FVG 컨텍스트 $63,418.40-$63,690.70이 포함되어 공급 반응 가능\",\n    \"하방 유동성 SSL이 $62,379.10 및 $60,371.70에 남아 있음\",\n    \"이전일 고점 $64,250.00과 저점 $61,150.20 모두 미돌파 상태로, 현재는 내부 유동성 사냥 구간\"\n  ],\n  \"reasoning\": \"확정 구조 기준으로는 최근 시퀀스가 BOS_bullish → BOS_bearish → CHoCH_bullish → BOS_bearish이며, 마지막 구조 이벤트가 $63,120.40 하방 BOS이므로 structure_bias는 bearish로 본다. 현재가 $63,167.00은 EQ $63,106.85 위 프리미엄에 있어 신규 롱보다는 공급 반응 및 할인 구간으로의 회귀 가능성이 더 높다. 핵심 매도 관심 구간은 활성 bearish OB 후보 $63,600.00-$63,832.50이며, 특히 OB 상단 $63,832.50은 현재 단기 range high와도 일치한다. 다만 최근 liquidity sweep이 없고 OB도 confirmed가 아닌 candidate, 점수 0.528이므로 강한 추세 확정보다는 프리미엄 공급권에서의 단기 bearish setup으로 해석한다.\",\n  \"key_levels\": {\n    \"support\": [\n      63120.4,\n      62715.4,\n      62379.1,\n      62381.2,\n      61150.2,\n      60371.7\n    ],\n    \"resistance\": [\n      63499.9,\n      63600.0,\n      63716.25,\n      63832.5,\n      64250.0\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$63,832.50 상방 수용\",\n  \"risk_scenario\": \"가격이 $63,600.00-$63,832.50 bearish OB를 흡수하고 $63,832.50 위에서 수용되면, 현재 bearish setup은 실패로 보고 $64,250.00 이전일 고점의 buy-side liquidity를 사냥하는 반대 시나리오가 열릴 수 있다.\",\n  \"data_quality\": \"medium\"\n}"
    }
  },
  "chairman_synthesis": {
    "overall_signal": "bearish",
    "overall_confidence": 0.71,
    "execution_setup": {
      "setup_bias": "bearish",
      "setup_strength": 0.7,
      "active_setups": [
        "Wyckoff: 현재가 $63,167는 분배 레인지 EQ 약 $62,225.75 위 프리미엄에 있으며, UTAD $63,567.60 아래에서 LPSY $62,945.80 이후의 공급 재테스트 구간",
        "ICT: 마지막 확정 구조 이벤트가 $63,120.40 하방 BOS이며, 현재가가 ICT EQ $63,106.85 위 프리미엄에 위치",
        "Derivatives: CVD는 증가했으나 가격은 24시간 기준 약세로 반응해 매수 흡수 가능성, 롱 계정 비율 0.650으로 롱 혼잡",
        "Candlestick: $63,167 부근에서 shooting star 2회와 doji 2회가 출현해 프리미엄 구간 매수 피로 신호",
        "상단 공급 클러스터: Wyckoff UTAD $63,567.60, ICT bearish OB $63,600.00-$63,832.50, Harmonic bearish PRZ $63,347.79-$63,741.23",
        "하단 유동성/구조 클러스터: Wyckoff SOW $62,377.00, ICT SSL $62,379.10, Derivatives 하방 청산대 $62,100-$61,900"
      ],
      "setup_vs_structure": "실행 셋업은 구조적 편향과 정렬되어 있다. 다만 현재가는 $63,120-$63,167의 단기 지지·반응 구간 위에 있어, 약세 구조는 유효하지만 즉시 붕괴가 확정된 상태라기보다는 프리미엄 공급권에서의 약세 조건이 우세한 상태다."
    },
    "signal_breakdown": {
      "bullish_count": 0,
      "bearish_count": 4,
      "neutral_count": 2
    },
    "key_levels": {
      "support": [
        63147.62,
        63120.54,
        63041.21,
        62945.8,
        62886.16,
        62379.1,
        62377.0,
        62100,
        61914.4,
        61509.1
      ],
      "resistance": [
        63290.38,
        63499.9,
        63567.6,
        63600.0,
        63832.5,
        63849.5,
        64250.0
      ]
    },
    "confluences": [
      "Wyckoff와 ICT가 모두 구조적으로 약세를 제시한다: Wyckoff는 Phase D 분배 후보에서 UTAD $63,567.60 이후 LPSY $62,945.80, ICT는 최근 $63,120.40 하방 BOS를 확인했다.",
      "상단 공급대가 강하게 중첩된다: Wyckoff UTAD $63,567.60, ICT bearish OB $63,600.00-$63,832.50, Harmonic bearish PRZ $63,347.79-$63,741.23, Wyckoff ST $63,849.50이 같은 저항 벨트를 형성한다.",
      "단기 핵심 지지/분기점이 $63,120 부근에 집중된다: ICT BOS 레벨 $63,120.40, Fibonacci 0.382 되돌림 $63,120.54, EMA20 $63,147.62가 거의 같은 가격대에 위치한다.",
      "하단 구조·유동성 목표 구간이 $62,377-$62,379에 중첩된다: Wyckoff SOW_IN_PHASE_B $62,377.00과 ICT SSL $62,379.10이 사실상 같은 레벨이다.",
      "프리미엄 구간 해석이 다수 분석에서 일치한다: Wyckoff는 메인 분배 EQ 약 $62,225.75 위, Derivatives와 Candlestick은 7일 범위 EQ $61,914.40 위, ICT는 EQ $63,106.85 위로 평가한다.",
      "7일/이전 고점 저항 $64,250은 Wyckoff, Derivatives, Candlestick, ICT에서 공통 상단 무효화·저항 후보로 제시된다."
    ],
    "conflicts": [
      "Harmonic과 Fibonacci는 $62,800-$63,200대의 반등 PRZ 및 0.382 지지 반응을 강조하지만, Wyckoff와 ICT는 같은 구간을 분배 구조 내부의 프리미엄/재테스트 맥락으로 해석한다.",
      "Derivatives와 Candlestick은 실행 셋업은 약세로 보지만, 구조 자체는 EMA 상방 유지와 명확한 장기 BOS 부족 때문에 중립으로 분류한다.",
      "현재가 $63,167는 Wyckoff LPSY/BC $62,942-$62,946 위에 있어, 분배 구조는 약세이나 LPSY 하방 이탈이 아직 확정되지 않은 상태다.",
      "Harmonic의 완료된 bullish Gartley PRZ $62,994.85-$63,290.38는 단기 반응을 지지하지만, 동일한 Harmonic 데이터 안에서도 $63,347.79-$63,741.23에 bearish PRZ가 겹쳐 방향 우위가 제한적이다."
    ],
    "executive_summary": "현재 15분 BTC 구조는 중립 박스라기보다 Wyckoff Phase D 분배 후보에 가까우며, UTAD $63,567.60 이후 LPSY $62,945.80가 형성된 약세 구조로 진단된다. ICT도 최근 $63,120.40 하방 BOS와 $63,600.00-$63,832.50 bearish OB를 통해 구조적 약세 판단을 보강한다. 단기적으로는 $63,120-$63,167 구간에 Fibonacci·EMA·Harmonic 반응 지지가 겹쳐 있어 하락 확정 구간은 아니지만, 상단 $63,567-$63,849 공급대를 회복하지 못하는 한 분배 상단부 재테스트 조건이 우세하다. 구조적 무효화는 $63,849.50 상방 수용이며, 그 전 단계로 $63,567.60 회복 여부가 약세 구조 훼손의 1차 조건이다.",
    "raw_llm_response": "{\n  \"overall_signal\": \"bearish\",\n  \"overall_confidence\": 0.71,\n  \"execution_setup\": {\n    \"setup_bias\": \"bearish\",\n    \"setup_strength\": 0.7,\n    \"active_setups\": [\n      \"Wyckoff: 현재가 $63,167는 분배 레인지 EQ 약 $62,225.75 위 프리미엄에 있으며, UTAD $63,567.60 아래에서 LPSY $62,945.80 이후의 공급 재테스트 구간\",\n      \"ICT: 마지막 확정 구조 이벤트가 $63,120.40 하방 BOS이며, 현재가가 ICT EQ $63,106.85 위 프리미엄에 위치\",\n      \"Derivatives: CVD는 증가했으나 가격은 24시간 기준 약세로 반응해 매수 흡수 가능성, 롱 계정 비율 0.650으로 롱 혼잡\",\n      \"Candlestick: $63,167 부근에서 shooting star 2회와 doji 2회가 출현해 프리미엄 구간 매수 피로 신호\",\n      \"상단 공급 클러스터: Wyckoff UTAD $63,567.60, ICT bearish OB $63,600.00-$63,832.50, Harmonic bearish PRZ $63,347.79-$63,741.23\",\n      \"하단 유동성/구조 클러스터: Wyckoff SOW $62,377.00, ICT SSL $62,379.10, Derivatives 하방 청산대 $62,100-$61,900\"\n    ],\n    \"setup_vs_structure\": \"실행 셋업은 구조적 편향과 정렬되어 있다. 다만 현재가는 $63,120-$63,167의 단기 지지·반응 구간 위에 있어, 약세 구조는 유효하지만 즉시 붕괴가 확정된 상태라기보다는 프리미엄 공급권에서의 약세 조건이 우세한 상태다.\"\n  },\n  \"signal_breakdown\": {\n    \"bullish_count\": 0,\n    \"bearish_count\": 4,\n    \"neutral_count\": 2\n  },\n  \"key_levels\": {\n    \"support\": [\n      63147.62,\n      63120.54,\n      63041.21,\n      62945.8,\n      62886.16,\n      62379.1,\n      62377.0,\n      62100,\n      61914.4,\n      61509.1\n    ],\n    \"resistance\": [\n      63290.38,\n      63499.9,\n      63567.6,\n      63600.0,\n      63832.5,\n      63849.5,\n      64250.0\n    ]\n  },\n  \"confluences\": [\n    \"Wyckoff와 ICT가 모두 구조적으로 약세를 제시한다: Wyckoff는 Phase D 분배 후보에서 UTAD $63,567.60 이후 LPSY $62,945.80, ICT는 최근 $63,120.40 하방 BOS를 확인했다.\",\n    \"상단 공급대가 강하게 중첩된다: Wyckoff UTAD $63,567.60, ICT bearish OB $63,600.00-$63,832.50, Harmonic bearish PRZ $63,347.79-$63,741.23, Wyckoff ST $63,849.50이 같은 저항 벨트를 형성한다.\",\n    \"단기 핵심 지지/분기점이 $63,120 부근에 집중된다: ICT BOS 레벨 $63,120.40, Fibonacci 0.382 되돌림 $63,120.54, EMA20 $63,147.62가 거의 같은 가격대에 위치한다.\",\n    \"하단 구조·유동성 목표 구간이 $62,377-$62,379에 중첩된다: Wyckoff SOW_IN_PHASE_B $62,377.00과 ICT SSL $62,379.10이 사실상 같은 레벨이다.\",\n    \"프리미엄 구간 해석이 다수 분석에서 일치한다: Wyckoff는 메인 분배 EQ 약 $62,225.75 위, Derivatives와 Candlestick은 7일 범위 EQ $61,914.40 위, ICT는 EQ $63,106.85 위로 평가한다.\",\n    \"7일/이전 고점 저항 $64,250은 Wyckoff, Derivatives, Candlestick, ICT에서 공통 상단 무효화·저항 후보로 제시된다.\"\n  ],\n  \"conflicts\": [\n    \"Harmonic과 Fibonacci는 $62,800-$63,200대의 반등 PRZ 및 0.382 지지 반응을 강조하지만, Wyckoff와 ICT는 같은 구간을 분배 구조 내부의 프리미엄/재테스트 맥락으로 해석한다.\",\n    \"Derivatives와 Candlestick은 실행 셋업은 약세로 보지만, 구조 자체는 EMA 상방 유지와 명확한 장기 BOS 부족 때문에 중립으로 분류한다.\",\n    \"현재가 $63,167는 Wyckoff LPSY/BC $62,942-$62,946 위에 있어, 분배 구조는 약세이나 LPSY 하방 이탈이 아직 확정되지 않은 상태다.\",\n    \"Harmonic의 완료된 bullish Gartley PRZ $62,994.85-$63,290.38는 단기 반응을 지지하지만, 동일한 Harmonic 데이터 안에서도 $63,347.79-$63,741.23에 bearish PRZ가 겹쳐 방향 우위가 제한적이다.\"\n  ],\n  \"highest_conviction_analyst\": \"Wyckoff Expert — 15분 차트에서 분배 구조 적합도가 매우 높고, BC $62,942.40 → AR $61,509.10 → ST $63,849.50 → SOW $62,377.00 → UT/UTAD $63,554.70-$63,567.60 → LPSY $62,945.80로 이어지는 구체적 이벤트 체인이 제시되어 구조 진단의 일관성과 가격 레벨 정밀도가 가장 높다.\",\n  \"invalidation_level\": \"$63,849.50 상방 수용. 우선 $63,567.60 회복은 약세 구조의 1차 훼손이며, $63,849.50 위에서 수용되면 UTAD 이후 LPSY 기반 분배 해석이 크게 약화된다.\",\n  \"executive_summary\": \"현재 15분 BTC 구조는 중립 박스라기보다 Wyckoff Phase D 분배 후보에 가까우며, UTAD $63,567.60 이후 LPSY $62,945.80가 형성된 약세 구조로 진단된다. ICT도 최근 $63,120.40 하방 BOS와 $63,600.00-$63,832.50 bearish OB를 통해 구조적 약세 판단을 보강한다. 단기적으로는 $63,120-$63,167 구간에 Fibonacci·EMA·Harmonic 반응 지지가 겹쳐 있어 하락 확정 구간은 아니지만, 상단 $63,567-$63,849 공급대를 회복하지 못하는 한 분배 상단부 재테스트 조건이 우세하다. 구조적 무효화는 $63,849.50 상방 수용이며, 그 전 단계로 $63,567.60 회복 여부가 약세 구조 훼손의 1차 조건이다.\"\n}"
  },
  "overall_signal": "bearish",
  "overall_confidence": 0.71,
  "operating_path": {
    "path_type": "complex",
    "confidence": 0.66,
    "waypoints": [
      {
        "seq": 1,
        "price": 63039.41,
        "type": "support_test",
        "source": "Fibonacci, Derivatives(EMA120 $63,041.21), Candlestick(EMA120), WP1 후보표(strict, score 1.0)",
        "description": "셋업·구조가 모두 약세(약 70%)로 정렬되어 첫 경로는 하방. 현재가 $63,167에서 단기 지지 클러스터(0.382 되돌림 $63,120.54, EMA20 $63,147.62)를 하향 이탈하며 strict fib_confluence/EMA120 $63,041.21을 테스트. WP1 후보표 최고 점수(1.0, strict)로 신뢰도 가장 높은 1차 지지 반응 구간.",
        "est_hours": 2.5,
        "turning_zone": [
          62980,
          63050
        ],
        "likely_wick": 63010,
        "rejection_confirm": 63120.54,
        "invalid_overshoot": 62940,
        "calibration_reasoning": "strict 4-레벨 Fib confluence $63,039.41와 EMA120 $63,041.21이 강한 지지 클러스터를 형성해 ATR 0.34배(~$70) 밴드로 산정. likely_wick은 다음 Fib 지지 $63,003.35로의 소폭 탐침(liquidity grab)을 반영하며, LPSY/BC $62,945.80 이탈 시 WP3로 직행하므로 $62,940을 무효화로 설정."
      },
      {
        "seq": 2,
        "price": 63290.38,
        "type": "resistance_test",
        "source": "Harmonic(확정 bullish Gartley PRZ 상단, reaction_score 0.80), Fibonacci(0.236 $63,265.53), Chairman(resistance $63,290.38)",
        "description": "확정 bullish Gartley PRZ($62,994.85-$63,290.38)와 $62,800-$63,200 3중 Fib confluence 반응으로 되돌림 상승. 그러나 상단 공급대 $63,499.90 스윙고점·$63,567.60 UTAD를 회복하지 못하고 PRZ 상단/0.236에서 lower high로 실패하는 LPSY성 공급 재테스트. 약세 구조 우세로 추세 전환이 아닌 재분배로 해석.",
        "est_hours": 7,
        "turning_zone": [
          63290,
          63390
        ],
        "likely_wick": 63350,
        "rejection_confirm": 63168.96,
        "invalid_overshoot": 63500,
        "calibration_reasoning": "Gartley PRZ 상단/Chairman 저항 $63,290.38이 밴드 하단, 상단은 Fib confluence $63,382.71와 약세 Butterfly/Bat 하향 TP1 $63,346.31이 공급 거부를 캡(likely_wick $63,350). 약세 TP2 $63,168.96 회귀로 lower-high 거부 확정, 스윙고점 $63,499.90 회복은 재분배가 아닌 추세 전환이므로 무효화."
      },
      {
        "seq": 3,
        "price": 62945.8,
        "type": "support_test",
        "source": "Wyckoff(LPSY $62,945.80 / BC $62,942.40), Harmonic(Bat PRZ 하단 경계 $62,773.38-$63,153.39)",
        "description": "공급 거부 후 Wyckoff Phase D 핵심 지지인 LPSY $62,945.80 / BC $62,942.40을 하향 재테스트. 이 구간이 분배 마크다운 확정의 분기점이며, 하단 harmonic Bat PRZ 방어 여부가 갈리는 지점.",
        "est_hours": 13,
        "turning_zone": [
          62872,
          62946
        ],
        "likely_wick": 62886,
        "rejection_confirm": 63003.35,
        "invalid_overshoot": 62800,
        "calibration_reasoning": "Wyckoff LPSY $62,945.80/BC $62,942.40이 밴드 상단, 0.618 황금비 $62,886.16와 약세 harmonic TP3 A/liquidity $62,881.90이 정밀 합류해 지지 위크를 앵커(likely_wick $62,886). $63,003.35 Fib 회복으로 방어 확정, 3중 Fib confluence 하단 $62,800 이탈 시 분배 마크다운 확정으로 WP4 무효화."
      },
      {
        "seq": 4,
        "price": 62379.1,
        "type": "liquidity_sweep",
        "source": "ICT(SSL $62,379.10), Wyckoff(SOW_IN_PHASE_B $62,377.00), Derivatives(하방 청산대 $62,100-$61,900)",
        "description": "LPSY/BC 이탈 후 Wyckoff SOW $62,377.00과 ICT SSL $62,379.10이 사실상 동일한 하단 유동성 클러스터를 스윕. CVD divergence(0.85)·롱 혼잡(1.000)·OI 감소가 하방 청산 트리거를 지지. 모멘텀 강화 시 Derivatives 청산대 $62,100까지 확장 가능.",
        "est_hours": 20,
        "turning_zone": [
          62100,
          62379
        ],
        "likely_wick": 62350,
        "rejection_confirm": 62507,
        "invalid_overshoot": 61914.4,
        "calibration_reasoning": "SSL $62,379.10·SOW $62,377.00이 동일 매도측 유동성 클러스터 — 하방 스윕이므로 밴드를 하단으로 확장. 롱 혼잡 1.000·CVD divergence 0.85·OI 감소가 Derivatives 청산대 $62,100까지 캐스케이드를 지지해 터미널 밴드(0.8×ATR 초과 허용)를 그곳까지 확장. 스윙저점 $62,507 회복으로 반전 확정, $61,914.40 이탈은 턴이 아닌 추세 지속으로 무효화."
      }
    ],
    "period_extremes": {
      "4h": {
        "expected_high": 63190.0,
        "expected_low": 63030.0,
        "high_first": true
      },
      "8h": {
        "expected_high": 63290.0,
        "expected_low": 63030.0,
        "high_first": false
      },
      "24h": {
        "expected_high": 63290.0,
        "expected_low": 62360.0,
        "high_first": true
      }
    },
    "triggers": {
      "bullish": {
        "price": 63499.9,
        "description": "스윙 고점 $63,499.90 회복·수용 시 WP2 lower high 해석 무효화. 이후 $63,567.60 UTAD·$63,600-$63,832.50 bearish OB로 확장하며 약세 구조 1차 훼손(LPSY 실패)."
      },
      "bearish": {
        "price": 62942.4,
        "description": "LPSY/BC $62,945.80-$62,942.40 종가 이탈 시 분배 마크다운 확정. $62,377.00 SOW / $62,379.10 SSL 유동성 클러스터로 하방 가속."
      }
    },
    "scenario_invalidation": 63849.5,
    "raw_llm_response": "{\n  \"path_type\": \"complex\",\n  \"confidence\": 0.66,\n  \"waypoints\": [\n    {\n      \"seq\": 1,\n      \"price\": 63039.41,\n      \"type\": \"support_test\",\n      \"source\": \"Fibonacci, Derivatives(EMA120 $63,041.21), Candlestick(EMA120), WP1 후보표(strict, score 1.0)\",\n      \"description\": \"셋업·구조가 모두 약세(약 70%)로 정렬되어 첫 경로는 하방. 현재가 $63,167에서 단기 지지 클러스터(0.382 되돌림 $63,120.54, EMA20 $63,147.62)를 하향 이탈하며 strict fib_confluence/EMA120 $63,041.21을 테스트. WP1 후보표 최고 점수(1.0, strict)로 신뢰도 가장 높은 1차 지지 반응 구간.\",\n      \"est_hours\": 2.5\n    },\n    {\n      \"seq\": 2,\n      \"price\": 63290.38,\n      \"type\": \"resistance_test\",\n      \"source\": \"Harmonic(확정 bullish Gartley PRZ 상단, reaction_score 0.80), Fibonacci(0.236 $63,265.53), Chairman(resistance $63,290.38)\",\n      \"description\": \"확정 bullish Gartley PRZ($62,994.85-$63,290.38)와 $62,800-$63,200 3중 Fib confluence 반응으로 되돌림 상승. 그러나 상단 공급대 $63,499.90 스윙고점·$63,567.60 UTAD를 회복하지 못하고 PRZ 상단/0.236에서 lower high로 실패하는 LPSY성 공급 재테스트. 약세 구조 우세로 추세 전환이 아닌 재분배로 해석.\",\n      \"est_hours\": 7\n    },\n    {\n      \"seq\": 3,\n      \"price\": 62945.80,\n      \"type\": \"support_test\",\n      \"source\": \"Wyckoff(LPSY $62,945.80 / BC $62,942.40), Harmonic(Bat PRZ 하단 경계 $62,773.38-$63,153.39)\",\n      \"description\": \"공급 거부 후 Wyckoff Phase D 핵심 지지인 LPSY $62,945.80 / BC $62,942.40을 하향 재테스트. 이 구간이 분배 마크다운 확정의 분기점이며, 하단 harmonic Bat PRZ 방어 여부가 갈리는 지점.\",\n      \"est_hours\": 13\n    },\n    {\n      \"seq\": 4,\n      \"price\": 62379.10,\n      \"type\": \"liquidity_sweep\",\n      \"source\": \"ICT(SSL $62,379.10), Wyckoff(SOW_IN_PHASE_B $62,377.00), Derivatives(하방 청산대 $62,100-$61,900)\",\n      \"description\": \"LPSY/BC 이탈 후 Wyckoff SOW $62,377.00과 ICT SSL $62,379.10이 사실상 동일한 하단 유동성 클러스터를 스윕. CVD divergence(0.85)·롱 혼잡(1.000)·OI 감소가 하방 청산 트리거를 지지. 모멘텀 강화 시 Derivatives 청산대 $62,100까지 확장 가능.\",\n      \"est_hours\": 20\n    }\n  ],\n  \"period_extremes\": {\n    \"4h\":  {\"expected_high\": 63190.0, \"expected_low\": 63030.0, \"high_first\": true},\n    \"8h\":  {\"expected_high\": 63290.0, \"expected_low\": 63030.0, \"high_first\": false},\n    \"24h\": {\"expected_high\": 63290.0, \"expected_low\": 62360.0, \"high_first\": true}\n  },\n  \"triggers\": {\n    \"bullish\": {\"price\": 63499.9, \"description\": \"스윙 고점 $63,499.90 회복·수용 시 WP2 lower high 해석 무효화. 이후 $63,567.60 UTAD·$63,600-$63,832.50 bearish OB로 확장하며 약세 구조 1차 훼손(LPSY 실패).\"},\n    \"bearish\": {\"price\": 62942.40, \"description\": \"LPSY/BC $62,945.80-$62,942.40 종가 이탈 시 분배 마크다운 확정. $62,377.00 SOW / $62,379.10 SSL 유동성 클러스터로 하방 가속.\"}\n  },\n  \"scenario_invalidation\": 63849.5\n}"
  },
  "tp_calibration": {
    "calibrated_waypoints": [
      {
        "seq": 1,
        "base_target": 63039.41,
        "turning_zone": [
          62980,
          63050
        ],
        "likely_wick": 63010,
        "rejection_confirm": 63120.54,
        "invalid_overshoot": 62940,
        "calibration_reasoning": "strict 4-레벨 Fib confluence $63,039.41와 EMA120 $63,041.21이 강한 지지 클러스터를 형성해 ATR 0.34배(~$70) 밴드로 산정. likely_wick은 다음 Fib 지지 $63,003.35로의 소폭 탐침(liquidity grab)을 반영하며, LPSY/BC $62,945.80 이탈 시 WP3로 직행하므로 $62,940을 무효화로 설정."
      },
      {
        "seq": 2,
        "base_target": 63290.38,
        "turning_zone": [
          63290,
          63390
        ],
        "likely_wick": 63350,
        "rejection_confirm": 63168.96,
        "invalid_overshoot": 63500,
        "calibration_reasoning": "Gartley PRZ 상단/Chairman 저항 $63,290.38이 밴드 하단, 상단은 Fib confluence $63,382.71와 약세 Butterfly/Bat 하향 TP1 $63,346.31이 공급 거부를 캡(likely_wick $63,350). 약세 TP2 $63,168.96 회귀로 lower-high 거부 확정, 스윙고점 $63,499.90 회복은 재분배가 아닌 추세 전환이므로 무효화."
      },
      {
        "seq": 3,
        "base_target": 62945.8,
        "turning_zone": [
          62872,
          62946
        ],
        "likely_wick": 62886,
        "rejection_confirm": 63003.35,
        "invalid_overshoot": 62800,
        "calibration_reasoning": "Wyckoff LPSY $62,945.80/BC $62,942.40이 밴드 상단, 0.618 황금비 $62,886.16와 약세 harmonic TP3 A/liquidity $62,881.90이 정밀 합류해 지지 위크를 앵커(likely_wick $62,886). $63,003.35 Fib 회복으로 방어 확정, 3중 Fib confluence 하단 $62,800 이탈 시 분배 마크다운 확정으로 WP4 무효화."
      },
      {
        "seq": 4,
        "base_target": 62379.1,
        "turning_zone": [
          62100,
          62379
        ],
        "likely_wick": 62350,
        "rejection_confirm": 62507,
        "invalid_overshoot": 61914.4,
        "calibration_reasoning": "SSL $62,379.10·SOW $62,377.00이 동일 매도측 유동성 클러스터 — 하방 스윕이므로 밴드를 하단으로 확장. 롱 혼잡 1.000·CVD divergence 0.85·OI 감소가 Derivatives 청산대 $62,100까지 캐스케이드를 지지해 터미널 밴드(0.8×ATR 초과 허용)를 그곳까지 확장. 스윙저점 $62,507 회복으로 반전 확정, $61,914.40 이탈은 턴이 아닌 추세 지속으로 무효화."
      }
    ],
    "raw_llm_response": "```json\n{\n  \"calibrated_waypoints\": [\n    {\n      \"seq\": 1,\n      \"base_target\": 63039.41,\n      \"turning_zone\": [62980, 63050],\n      \"likely_wick\": 63010,\n      \"rejection_confirm\": 63120.54,\n      \"invalid_overshoot\": 62940,\n      \"calibration_reasoning\": \"strict 4-레벨 Fib confluence $63,039.41와 EMA120 $63,041.21이 강한 지지 클러스터를 형성해 ATR 0.34배(~$70) 밴드로 산정. likely_wick은 다음 Fib 지지 $63,003.35로의 소폭 탐침(liquidity grab)을 반영하며, LPSY/BC $62,945.80 이탈 시 WP3로 직행하므로 $62,940을 무효화로 설정.\"\n    },\n    {\n      \"seq\": 2,\n      \"base_target\": 63290.38,\n      \"turning_zone\": [63290, 63390],\n      \"likely_wick\": 63350,\n      \"rejection_confirm\": 63168.96,\n      \"invalid_overshoot\": 63500,\n      \"calibration_reasoning\": \"Gartley PRZ 상단/Chairman 저항 $63,290.38이 밴드 하단, 상단은 Fib confluence $63,382.71와 약세 Butterfly/Bat 하향 TP1 $63,346.31이 공급 거부를 캡(likely_wick $63,350). 약세 TP2 $63,168.96 회귀로 lower-high 거부 확정, 스윙고점 $63,499.90 회복은 재분배가 아닌 추세 전환이므로 무효화.\"\n    },\n    {\n      \"seq\": 3,\n      \"base_target\": 62945.80,\n      \"turning_zone\": [62872, 62946],\n      \"likely_wick\": 62886,\n      \"rejection_confirm\": 63003.35,\n      \"invalid_overshoot\": 62800,\n      \"calibration_reasoning\": \"Wyckoff LPSY $62,945.80/BC $62,942.40이 밴드 상단, 0.618 황금비 $62,886.16와 약세 harmonic TP3 A/liquidity $62,881.90이 정밀 합류해 지지 위크를 앵커(likely_wick $62,886). $63,003.35 Fib 회복으로 방어 확정, 3중 Fib confluence 하단 $62,800 이탈 시 분배 마크다운 확정으로 WP4 무효화.\"\n    },\n    {\n      \"seq\": 4,\n      \"base_target\": 62379.10,\n      \"turning_zone\": [62100, 62379],\n      \"likely_wick\": 62350,\n      \"rejection_confirm\": 62507,\n      \"invalid_overshoot\": 61914.40,\n      \"calibration_reasoning\": \"SSL $62,379.10·SOW $62,377.00이 동일 매도측 유동성 클러스터 — 하방 스윕이므로 밴드를 하단으로 확장. 롱 혼잡 1.000·CVD divergence 0.85·OI 감소가 Derivatives 청산대 $62,100까지 캐스케이드를 지지해 터미널 밴드(0.8×ATR 초과 허용)를 그곳까지 확장. 스윙저점 $62,507 회복으로 반전 확정, $61,914.40 이탈은 턴이 아닌 추세 지속으로 무효화.\"\n    }\n  ]\n}\n```"
  },
  "timing": {
    "stages": {
      "stage1_agents": 95.1,
      "chairman": 90.3,
      "operating_path": 254.3,
      "tp_calibrator": 261.5
    },
    "agents": {},
    "total_s": 701.5
  }
}