{
  "symbol": "BTC/USDT",
  "timeframe": "1h",
  "timestamp": "2026-06-11 21:00 KST",
  "last_price": 63078.0,
  "num_candles": 300,
  "stage1_analyses": {
    "candlestick": {
      "agent_id": "candlestick",
      "display_name": "Candlestick Reader",
      "signal": "bullish",
      "confidence": 0.62,
      "structure_bias": "neutral",
      "setup_bias": "bullish",
      "setup_score": 0.58,
      "setup_signals": [
        "고거래량 bullish_engulfing 발생: 품질 0.668, strict 등급으로 최근 매수 반전 시도 확인",
        "현재가 $63,078.00이 EMA20 $62,432.46 및 EMA120 $62,598.51 위에서 유지되어 단기 지지 회복",
        "7일 고점 $64,463.70 돌파 전 단계의 pre-BOS 상승 셋업",
        "현재가가 7일 박스 EQ $61,771.85 위에 있어 프리미엄 구간 진입, 추격 매수에는 부담",
        "EMA240 $64,265.44와 7일 고점 $64,463.70이 근접한 상단 저항 클러스터로 작용"
      ],
      "reasoning": "최근 5개 패턴 중 bullish_engulfing이 3회, bearish_harami가 2회 감지되었고, bull_score 2.35가 bear_score 1.20보다 우세하여 단기 캔들 모멘텀은 매수 쪽이 강합니다. 특히 strict 등급의 bullish_engulfing 품질이 0.668이며 고거래량 패턴으로 분류되어, $62,432.46~$62,598.51 EMA 지지대 위에서 매수세가 실제로 유입된 것으로 해석됩니다. 다만 현재가 $63,078.00은 EMA240 $64,265.44 및 7일 고점 $64,463.70 아래에 있어 아직 구조적 BOS가 확인된 상태는 아니므로 structure_bias는 neutral로 봅니다. 셋업 관점에서는 상승 continuation 시도가 유효하지만, 7일 범위 EQ $61,771.85 위 프리미엄 구간에서 bearish_harami 후보가 최근 2회 나온 점은 단기 과열 및 눌림 위험을 높입니다.",
      "key_levels": {
        "support": [
          62598.51,
          62432.46,
          61771.85,
          59080.0
        ],
        "resistance": [
          64265.44,
          64463.7
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$62,432.46",
      "risk_scenario": "가격이 EMA20 $62,432.46 아래로 종가 이탈하면 최근 bullish_engulfing 기반 매수 셋업은 실패로 전환됩니다. 이 경우 EMA120 $62,598.51 회복 실패와 함께 7일 EQ $61,771.85까지 되돌림이 열리고, 해당 구간마저 무너지면 $59,080.00 저점 재테스트 위험이 커집니다.",
      "data_quality": "medium",
      "metrics": {
        "total_patterns_detected": 132,
        "recent_patterns": 5,
        "pattern_list": [
          "bullish_engulfing@291",
          "bullish_engulfing@294",
          "bullish_engulfing@296",
          "bearish_harami@297",
          "bearish_harami@299"
        ],
        "atr_value": 444.67,
        "vol_avg_20": 6610.81,
        "high_volume_patterns": [
          "bullish_engulfing"
        ],
        "pattern_candidates": [
          {
            "pattern": "bullish_engulfing",
            "signal": "bullish",
            "pattern_quality": 0.668,
            "tier": "strict",
            "high_volume": true
          },
          {
            "pattern": "bearish_harami",
            "signal": "bearish",
            "pattern_quality": 0.625,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "bearish_harami",
            "signal": "bearish",
            "pattern_quality": 0.596,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "bullish_engulfing",
            "signal": "bullish",
            "pattern_quality": 0.456,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "bullish_engulfing",
            "signal": "bullish",
            "pattern_quality": 0.425,
            "tier": "candidate",
            "high_volume": false
          }
        ],
        "best_pattern_quality": 0.668,
        "bull_score": 2.35,
        "bear_score": 1.2
      },
      "raw_llm_response": "{\n  \"signal\": \"bullish\",\n  \"confidence\": 0.62,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.58,\n  \"setup_signals\": [\n    \"고거래량 bullish_engulfing 발생: 품질 0.668, strict 등급으로 최근 매수 반전 시도 확인\",\n    \"현재가 $63,078.00이 EMA20 $62,432.46 및 EMA120 $62,598.51 위에서 유지되어 단기 지지 회복\",\n    \"7일 고점 $64,463.70 돌파 전 단계의 pre-BOS 상승 셋업\",\n    \"현재가가 7일 박스 EQ $61,771.85 위에 있어 프리미엄 구간 진입, 추격 매수에는 부담\",\n    \"EMA240 $64,265.44와 7일 고점 $64,463.70이 근접한 상단 저항 클러스터로 작용\"\n  ],\n  \"reasoning\": \"최근 5개 패턴 중 bullish_engulfing이 3회, bearish_harami가 2회 감지되었고, bull_score 2.35가 bear_score 1.20보다 우세하여 단기 캔들 모멘텀은 매수 쪽이 강합니다. 특히 strict 등급의 bullish_engulfing 품질이 0.668이며 고거래량 패턴으로 분류되어, $62,432.46~$62,598.51 EMA 지지대 위에서 매수세가 실제로 유입된 것으로 해석됩니다. 다만 현재가 $63,078.00은 EMA240 $64,265.44 및 7일 고점 $64,463.70 아래에 있어 아직 구조적 BOS가 확인된 상태는 아니므로 structure_bias는 neutral로 봅니다. 셋업 관점에서는 상승 continuation 시도가 유효하지만, 7일 범위 EQ $61,771.85 위 프리미엄 구간에서 bearish_harami 후보가 최근 2회 나온 점은 단기 과열 및 눌림 위험을 높입니다.\",\n  \"key_levels\": {\n    \"support\": [\n      62598.51,\n      62432.46,\n      61771.85,\n      59080.0\n    ],\n    \"resistance\": [\n      64265.44,\n      64463.7\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$62,432.46\",\n  \"risk_scenario\": \"가격이 EMA20 $62,432.46 아래로 종가 이탈하면 최근 bullish_engulfing 기반 매수 셋업은 실패로 전환됩니다. 이 경우 EMA120 $62,598.51 회복 실패와 함께 7일 EQ $61,771.85까지 되돌림이 열리고, 해당 구간마저 무너지면 $59,080.00 저점 재테스트 위험이 커집니다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "fibonacci": {
      "agent_id": "fibonacci",
      "display_name": "Fibonacci Analyst",
      "signal": "neutral",
      "confidence": 0.56,
      "structure_bias": "neutral",
      "setup_bias": "bearish",
      "setup_score": 0.62,
      "setup_signals": [
        "현재가 $63,078가 다운스윙 기준 EQ/ret_0.5 $61,954.40 위에 있어 프리미엄 구간에 위치",
        "현재가가 ret_0.786 $62,461.08 위로 0.98% 이격되어 단기 되돌림 리스크 존재",
        "골든비율 ret_0.618 $62,163.45가 핵심 평균회귀 지점으로 남아 있음",
        "EMA240 $64,265.44 및 7일 고점 $64,463.70이 상단 저항 후보로 가까움",
        "fib_reaction_state가 approaching이며 reaction_probability 0.45로 강한 확정 반응은 아직 부족"
      ],
      "reasoning": "현재 BTC는 다운스윙 $62,840 → $61,069 기준 주요 되돌림 구간을 모두 상회하며, 특히 ret_0.786 $62,461.08 위에서 거래되고 있어 단기 하락 구조는 약화되었습니다. 다만 $63,078는 EQ인 ret_0.5 $61,954.40 및 골든비율 ret_0.618 $62,163.45보다 위에 있는 프리미엄 구간이므로, 구조 확정 전 실행 관점에서는 $62,461 → $62,163 재테스트 가능성이 열려 있습니다. confluence_quality는 0.600으로 중간 수준이며, $62,058.92 부근에는 ret_0.5/ret_0.618 클러스터가 있어 하락 시 가장 중요한 반응 구간입니다. 상방은 EMA240 $64,265.44와 7일 고점 $64,463.70이 실질 저항이며, 이 구간을 명확히 수용하기 전까지는 강한 bullish 확정으로 보기는 어렵습니다.",
      "key_levels": {
        "support": [
          62461.08,
          62163.45,
          61954.4,
          61745.35,
          61068.6
        ],
        "resistance": [
          64265.44,
          64463.7
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$64,463.70 상방 수용 시 bearish setup은 무효화",
      "risk_scenario": "반대로 가격이 $62,461.08 아래로 밀리면 ret_0.618 $62,163.45와 ret_0.5 $61,954.40까지 평균회귀가 빨라질 수 있으며, $61,954.40 이탈 시 $61,745.35와 $61,068.60까지 하락 확장이 열립니다.",
      "data_quality": "medium",
      "metrics": {
        "swing_pair": "High→Low: $62,840 → $61,069",
        "direction": "down",
        "nearest_fib": "ret_0.786",
        "nearest_fib_price": 62461.08,
        "nearest_fib_distance": 0.98,
        "golden_ratio_level": 62163.45,
        "fib_ret_382": 61745.35,
        "fib_ret_618": 62163.45,
        "confluence_zones": [
          {
            "price": 59188.5,
            "count": 2,
            "levels": [
              "ext_1.0",
              "ext_2.0"
            ],
            "cluster_score": 0.6
          },
          {
            "price": 60460.94,
            "count": 2,
            "levels": [
              "ext_1.414",
              "ext_1.272"
            ],
            "cluster_score": 0.6
          },
          {
            "price": 61616.02,
            "count": 2,
            "levels": [
              "ret_0.236",
              "ret_0.382"
            ],
            "cluster_score": 0.6
          },
          {
            "price": 62058.92,
            "count": 2,
            "levels": [
              "ret_0.5",
              "ret_0.618"
            ],
            "cluster_score": 0.6
          },
          {
            "price": 62560.6,
            "count": 2,
            "levels": [
              "ret_0.786",
              "ret_0.236"
            ],
            "cluster_score": 0.6
          }
        ],
        "support_levels": [
          62461.0776,
          62163.4488,
          61954.399999999994
        ],
        "resistance_levels": [],
        "level_candidates": [
          {
            "name": "ret_0.236",
            "price": 61486.7,
            "distance_pct": 2.52,
            "is_support": true,
            "cluster_score": 0.6
          },
          {
            "name": "ret_0.382",
            "price": 61745.35,
            "distance_pct": 2.11,
            "is_support": true,
            "cluster_score": 0.6
          },
          {
            "name": "ret_0.5",
            "price": 61954.4,
            "distance_pct": 1.78,
            "is_support": true,
            "cluster_score": 0.6
          },
          {
            "name": "ret_0.618",
            "price": 62163.45,
            "distance_pct": 1.45,
            "is_support": true,
            "cluster_score": 0.6
          },
          {
            "name": "ret_0.786",
            "price": 62461.08,
            "distance_pct": 0.98,
            "is_support": true,
            "cluster_score": 0.6
          },
          {
            "name": "ext_1.0",
            "price": 61068.6,
            "distance_pct": 3.19,
            "is_support": true,
            "cluster_score": 0.0
          },
          {
            "name": "ext_1.272",
            "price": 60586.72,
            "distance_pct": 3.95,
            "is_support": true,
            "cluster_score": 0.6
          },
          {
            "name": "ext_1.414",
            "price": 60335.16,
            "distance_pct": 4.35,
            "is_support": true,
            "cluster_score": 0.6
          },
          {
            "name": "ext_1.618",
            "price": 59973.75,
            "distance_pct": 4.92,
            "is_support": true,
            "cluster_score": 0.0
          },
          {
            "name": "ext_2.0",
            "price": 59297.0,
            "distance_pct": 5.99,
            "is_support": true,
            "cluster_score": 0.6
          }
        ],
        "confluence_quality": 0.6,
        "fib_reaction_state": "approaching",
        "reaction_probability": 0.45
      },
      "raw_llm_response": "{\n  \"signal\": \"neutral\",\n  \"confidence\": 0.56,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.62,\n  \"setup_signals\": [\n    \"현재가 $63,078가 다운스윙 기준 EQ/ret_0.5 $61,954.40 위에 있어 프리미엄 구간에 위치\",\n    \"현재가가 ret_0.786 $62,461.08 위로 0.98% 이격되어 단기 되돌림 리스크 존재\",\n    \"골든비율 ret_0.618 $62,163.45가 핵심 평균회귀 지점으로 남아 있음\",\n    \"EMA240 $64,265.44 및 7일 고점 $64,463.70이 상단 저항 후보로 가까움\",\n    \"fib_reaction_state가 approaching이며 reaction_probability 0.45로 강한 확정 반응은 아직 부족\"\n  ],\n  \"reasoning\": \"현재 BTC는 다운스윙 $62,840 → $61,069 기준 주요 되돌림 구간을 모두 상회하며, 특히 ret_0.786 $62,461.08 위에서 거래되고 있어 단기 하락 구조는 약화되었습니다. 다만 $63,078는 EQ인 ret_0.5 $61,954.40 및 골든비율 ret_0.618 $62,163.45보다 위에 있는 프리미엄 구간이므로, 구조 확정 전 실행 관점에서는 $62,461 → $62,163 재테스트 가능성이 열려 있습니다. confluence_quality는 0.600으로 중간 수준이며, $62,058.92 부근에는 ret_0.5/ret_0.618 클러스터가 있어 하락 시 가장 중요한 반응 구간입니다. 상방은 EMA240 $64,265.44와 7일 고점 $64,463.70이 실질 저항이며, 이 구간을 명확히 수용하기 전까지는 강한 bullish 확정으로 보기는 어렵습니다.\",\n  \"key_levels\": {\n    \"support\": [\n      62461.08,\n      62163.45,\n      61954.4,\n      61745.35,\n      61068.6\n    ],\n    \"resistance\": [\n      64265.44,\n      64463.7\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$64,463.70 상방 수용 시 bearish setup은 무효화\",\n  \"risk_scenario\": \"반대로 가격이 $62,461.08 아래로 밀리면 ret_0.618 $62,163.45와 ret_0.5 $61,954.40까지 평균회귀가 빨라질 수 있으며, $61,954.40 이탈 시 $61,745.35와 $61,068.60까지 하락 확장이 열립니다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "wyckoff": {
      "agent_id": "wyckoff",
      "display_name": "Wyckoff Expert",
      "signal": "bullish",
      "confidence": 0.68,
      "structure_bias": "bullish",
      "setup_bias": "bullish",
      "setup_score": 0.52,
      "setup_signals": [
        "ACC 체제 적합도 0.963 및 acc_score 96.2로 축적 구조 우세",
        "Phase D 후보: TERMINAL_SPRING $60,691.9 이후 SOS $62,922.0 형성",
        "현재가 $63,078.0이 SOS $62,922.0 및 range EQ 약 $62,920.35 위에 위치",
        "LPS $62,507.9가 아직 훼손되지 않아 단기 수요 방어 조건 유지",
        "다만 현재가는 메인 레인지 상단 $64,495.9 아래에 있어 post-range acceptance는 아직 미확인"
      ],
      "reasoning": "현재 구조는 regime=ACC, active_structure=1h_cycle_1이며 SC $61,344.8 → AR $64,495.9로 메인 레인지가 앵커링된 축적 후보입니다. 이벤트 체인은 ST $59,451.3 이후 Spring $60,363.0, TERMINAL_SPRING $60,691.9, SOS $62,922.0, LPS $62,507.9로 이어져 Phase D 축적 구조로 읽히지만, 레인지 상단 $64,495.9 위의 명확한 수용은 아직 없어 확정적인 상승 전개로 단정할 수 없습니다. 현재가 $63,078.0은 EQ 약 $62,920.35와 SOS $62,922.0을 소폭 상회하므로 즉각 경로는 LPS/SOS 재확인 후 $64,265.4~$64,495.9 공급 테스트 가능성이 우세합니다. 단, $62,507.9 LPS를 잃으면 Phase D의 질이 약화되고, $60,691.9 TERMINAL_SPRING 저점 이탈 시 현재의 bullish ACC 해석은 무효화됩니다.",
      "key_levels": {
        "support": [
          62922.0,
          62507.9,
          61344.8,
          60691.9,
          59451.3
        ],
        "resistance": [
          64265.44,
          64463.7,
          64495.9
        ]
      },
      "time_horizon": "short/medium term",
      "invalidation_level": "$60,691.90",
      "risk_scenario": "가격이 SOS $62,922.0 아래로 재진입하고 LPS $62,507.9까지 이탈하면 Phase D 수요 확인이 실패한 것으로 보며, $61,344.8 메인 레인지 저점 및 $60,691.9 TERMINAL_SPRING 재시험으로 즉각 경로가 전환될 수 있습니다. 특히 $60,691.9가 깨지면 현재의 LPS 이후 축적 우위 해석은 무효화되고, ST $59,451.3까지 하방 유동성 확인 위험이 커집니다.",
      "data_quality": "high",
      "metrics": {
        "acc_score": 96.2,
        "dis_score": 91.2,
        "regime": "ACC",
        "regime_state": "acc_candidate",
        "structure_bias": "bullish",
        "phase_context": "acc_candidate / accumulation / Phase D",
        "phases_detected": [
          "SC",
          "AR",
          "ST",
          "Spring",
          "TERMINAL_SPRING",
          "SOS",
          "LPS"
        ],
        "last_phase": "LPS",
        "phase_candidates": [
          {
            "label": "SC",
            "side": "low",
            "idx": 122,
            "price": 61344.8,
            "color": "#ffd166"
          },
          {
            "label": "AR",
            "side": "high",
            "idx": 123,
            "price": 64495.9,
            "color": "#06d6a0"
          },
          {
            "label": "ST",
            "side": "low",
            "idx": 172,
            "price": 59451.3,
            "color": "#118ab2"
          },
          {
            "label": "Spring",
            "side": "low",
            "idx": 186,
            "price": 60363.0,
            "color": "#f9844a"
          },
          {
            "label": "TERMINAL_SPRING",
            "side": "low",
            "idx": 273,
            "price": 60691.9,
            "color": "#f3722c"
          },
          {
            "label": "SOS",
            "side": "high",
            "idx": 291,
            "price": 62922.0,
            "color": "#06d6a0"
          },
          {
            "label": "LPS",
            "side": "low",
            "idx": 294,
            "price": 62507.9,
            "color": "#8338ec"
          }
        ],
        "phase_structures": [
          {
            "structure_id": "1h_cycle_1",
            "sequence": 1,
            "timeframe": "1h",
            "regime": "accumulation",
            "role": "current_structure_candidate",
            "is_active": true,
            "is_completed": false,
            "is_confirmed": true,
            "structure_bias": "bullish",
            "phase_context": "accumulation",
            "start_idx": 122,
            "end_idx": 294,
            "phase_count": 7,
            "phases": [
              {
                "label": "SC",
                "side": "low",
                "idx": 122,
                "price": 61344.8,
                "color": "#ffd166",
                "dt": "2026-06-04 11:00:00+09:00"
              },
              {
                "label": "AR",
                "side": "high",
                "idx": 123,
                "price": 64495.9,
                "color": "#06d6a0",
                "dt": "2026-06-04 12:00:00+09:00"
              },
              {
                "label": "ST",
                "side": "low",
                "idx": 172,
                "price": 59451.3,
                "color": "#118ab2",
                "dt": "2026-06-06 13:00:00+09:00"
              },
              {
                "label": "Spring",
                "side": "low",
                "idx": 186,
                "price": 60363.0,
                "color": "#f9844a",
                "dt": "2026-06-07 03:00:00+09:00"
              },
              {
                "label": "TERMINAL_SPRING",
                "side": "low",
                "idx": 273,
                "price": 60691.9,
                "color": "#f3722c",
                "dt": "2026-06-10 18:00:00+09:00"
              },
              {
                "label": "SOS",
                "side": "high",
                "idx": 291,
                "price": 62922.0,
                "color": "#06d6a0",
                "dt": "2026-06-11 12:00:00+09:00"
              },
              {
                "label": "LPS",
                "side": "low",
                "idx": 294,
                "price": 62507.9,
                "color": "#8338ec",
                "dt": "2026-06-11 15:00:00+09:00"
              }
            ]
          }
        ],
        "active_structure_id": "1h_cycle_1",
        "primary_structure_id": "1h_cycle_1",
        "structure_count": 1,
        "regime_fitness": 0.9625,
        "current_event": "LPS",
        "major_phase": "D",
        "pos_in_range": 0.5,
        "main_range_low": 61344.8,
        "main_range_high": 64495.9
      },
      "raw_llm_response": "{\n  \"signal\": \"bullish\",\n  \"confidence\": 0.68,\n  \"structure_bias\": \"bullish\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.52,\n  \"setup_signals\": [\n    \"ACC 체제 적합도 0.963 및 acc_score 96.2로 축적 구조 우세\",\n    \"Phase D 후보: TERMINAL_SPRING $60,691.9 이후 SOS $62,922.0 형성\",\n    \"현재가 $63,078.0이 SOS $62,922.0 및 range EQ 약 $62,920.35 위에 위치\",\n    \"LPS $62,507.9가 아직 훼손되지 않아 단기 수요 방어 조건 유지\",\n    \"다만 현재가는 메인 레인지 상단 $64,495.9 아래에 있어 post-range acceptance는 아직 미확인\"\n  ],\n  \"reasoning\": \"현재 구조는 regime=ACC, active_structure=1h_cycle_1이며 SC $61,344.8 → AR $64,495.9로 메인 레인지가 앵커링된 축적 후보입니다. 이벤트 체인은 ST $59,451.3 이후 Spring $60,363.0, TERMINAL_SPRING $60,691.9, SOS $62,922.0, LPS $62,507.9로 이어져 Phase D 축적 구조로 읽히지만, 레인지 상단 $64,495.9 위의 명확한 수용은 아직 없어 확정적인 상승 전개로 단정할 수 없습니다. 현재가 $63,078.0은 EQ 약 $62,920.35와 SOS $62,922.0을 소폭 상회하므로 즉각 경로는 LPS/SOS 재확인 후 $64,265.4~$64,495.9 공급 테스트 가능성이 우세합니다. 단, $62,507.9 LPS를 잃으면 Phase D의 질이 약화되고, $60,691.9 TERMINAL_SPRING 저점 이탈 시 현재의 bullish ACC 해석은 무효화됩니다.\",\n  \"key_levels\": {\n    \"support\": [\n      62922.0,\n      62507.9,\n      61344.8,\n      60691.9,\n      59451.3\n    ],\n    \"resistance\": [\n      64265.44,\n      64463.7,\n      64495.9\n    ]\n  },\n  \"time_horizon\": \"short/medium term\",\n  \"invalidation_level\": \"$60,691.90\",\n  \"risk_scenario\": \"가격이 SOS $62,922.0 아래로 재진입하고 LPS $62,507.9까지 이탈하면 Phase D 수요 확인이 실패한 것으로 보며, $61,344.8 메인 레인지 저점 및 $60,691.9 TERMINAL_SPRING 재시험으로 즉각 경로가 전환될 수 있습니다. 특히 $60,691.9가 깨지면 현재의 LPS 이후 축적 우위 해석은 무효화되고, ST $59,451.3까지 하방 유동성 확인 위험이 커집니다.\",\n  \"data_quality\": \"high\"\n}"
    },
    "ict": {
      "agent_id": "ict",
      "display_name": "ICT Trader",
      "signal": "bullish",
      "confidence": 0.64,
      "structure_bias": "bullish",
      "setup_bias": "bullish",
      "setup_score": 0.771,
      "setup_signals": [
        "최근 bullish BOS가 $62,840.20 및 $62,942.40 상방에서 확인되어 단기 구조가 상방으로 재정렬됨",
        "전일 고점 $62,445.00을 돌파한 뒤 현재가 $63,078.00이 그 위에서 거래 중",
        "현재가가 EQ $61,963.90 위의 premium 영역에 있으나, $62,840~$62,942 BOS 레벨 위에서 유지되며 상방 continuation setup 유지",
        "후속 눌림 시 후보 bullish OB $61,068.60~$61,547.90이 discount 재진입 매수 관심 구간으로 남아 있음",
        "현재가가 EMA20 $62,432.46 및 EMA120 $62,598.51 위에 있어 단기 수급은 매수 우위"
      ],
      "reasoning": "확정 구조는 최근 시퀀스가 BOS_bullish → CHoCH_bearish → BOS_bullish로 마감되었고, 마지막 bullish BOS 기준선 $62,840.20 및 $62,942.40 위에서 현재가 $63,078.00이 유지되고 있어 bullish로 판단한다. 다만 가격은 EQ $61,963.90 위의 premium 영역이며, active bearish OB가 $61,690.30~$64,250.00에 걸쳐 있어 현재 구간은 기관 매도 방어가 나올 수 있는 공급대 내부다. 그럼에도 전일 고점 $62,445.00 돌파와 뉴욕 세션 고점 $63,235.90 부근 재도전 가능성이 남아 있어 setup_bias는 bullish로 유지한다. 단, $63,235.90을 강하게 돌파하지 못하고 $62,840.20 아래로 재진입하면 현재 상승 setup은 약화되며, $61,150.20 하회 시 bullish 구조 자체가 훼손된다.",
      "key_levels": {
        "support": [
          62942.4,
          62840.2,
          62445.0,
          61963.9,
          61547.9,
          61068.6,
          61150.2,
          60691.9
        ],
        "resistance": [
          63235.9,
          64250.0,
          64463.7,
          64265.44
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "61150.20",
      "risk_scenario": "반대 시나리오는 현재가가 active bearish OB $61,690.30~$64,250.00 내부에서 거절되고, $62,840.20 및 $62,445.00 아래로 되밀리는 경우다. 이 경우 돌파는 buy-side liquidity raid 이후 실패한 breakout으로 해석될 수 있으며, 가격은 EQ $61,963.90 및 후보 bullish OB $61,068.60~$61,547.90까지 되돌릴 가능성이 커진다.",
      "data_quality": "medium",
      "metrics": {
        "order_blocks_total": 2,
        "confirmed_bullish_ob": 0,
        "confirmed_bearish_ob": 0,
        "candidate_bullish_ob": 1,
        "candidate_bearish_ob": 1,
        "active_bullish_ob": 0,
        "active_bearish_ob": 1,
        "nearest_bull_ob_range": {
          "bottom": 61068.6,
          "top": 61547.9,
          "quality": "candidate",
          "score": 0.649
        },
        "nearest_bear_ob_range": null,
        "active_bullish_ob_list": [],
        "active_bearish_ob_list": [
          {
            "type": "bearish_ob",
            "idx": 214,
            "top": 64250.0,
            "bottom": 61690.3,
            "mid": 62970.15,
            "quality": "candidate",
            "score": 0.541,
            "displacement_score": 0.26,
            "has_fvg": true,
            "has_sweep_context": false,
            "fvg_range": {
              "bottom": 61949.3,
              "top": 61989.0
            },
            "swept_level": null,
            "source_move_idx": 214,
            "proximity": "active"
          }
        ],
        "ob_mitigated_count": 0,
        "unfilled_bull_fvg_count": 0,
        "unfilled_bear_fvg_count": 0,
        "bull_fvg_ranges": [],
        "bear_fvg_ranges": [],
        "fvg_open_count": 0,
        "fvg_mitigated_count": 52,
        "fvg_open_zones": [],
        "bos_choch_events": [
          "BOS_bullish",
          "CHoCH_bearish",
          "BOS_bullish"
        ],
        "bos_choch_levels": [
          {
            "type": "BOS_bullish",
            "level": 62942.4
          },
          {
            "type": "CHoCH_bearish",
            "level": 61150.2
          },
          {
            "type": "BOS_bullish",
            "level": 62840.2
          }
        ],
        "bos_sequence": [
          "BOS_bullish",
          "CHoCH_bearish",
          "BOS_bullish"
        ],
        "consecutive_bull_bos": 1,
        "consecutive_bear_bos": 0,
        "recent_liq_sweeps": [],
        "recent_sweep_levels": [],
        "liquidity_resting": [],
        "current_zone": "premium",
        "eq_level": 61963.9,
        "range_high": 63235.9,
        "range_low": 60691.9,
        "bull_score": 5.8,
        "bear_score": 4.825,
        "setup_bias": "bullish",
        "setup_score": 0.771,
        "setup_signals": [
          "bullish BOS above $62,942.40",
          "bullish BOS above $62,840.20",
          "broken previous day high $62,445.00"
        ],
        "retracement_direction": "bearish",
        "current_retracement_pct": 119.6,
        "deepest_retracement_pct": 119.6,
        "previous_day_high": 62445.0,
        "previous_day_low": 60691.9,
        "broken_prev_high": true,
        "broken_prev_low": false,
        "sessions": {
          "London": {
            "active": false,
            "high": null,
            "low": null
          },
          "New York": {
            "active": true,
            "high": 63235.9,
            "low": 62507.9
          },
          "Asian kill zone": {
            "active": false,
            "high": null,
            "low": null
          }
        }
      },
      "raw_llm_response": "{\n  \"signal\": \"bullish\",\n  \"confidence\": 0.64,\n  \"structure_bias\": \"bullish\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.771,\n  \"setup_signals\": [\n    \"최근 bullish BOS가 $62,840.20 및 $62,942.40 상방에서 확인되어 단기 구조가 상방으로 재정렬됨\",\n    \"전일 고점 $62,445.00을 돌파한 뒤 현재가 $63,078.00이 그 위에서 거래 중\",\n    \"현재가가 EQ $61,963.90 위의 premium 영역에 있으나, $62,840~$62,942 BOS 레벨 위에서 유지되며 상방 continuation setup 유지\",\n    \"후속 눌림 시 후보 bullish OB $61,068.60~$61,547.90이 discount 재진입 매수 관심 구간으로 남아 있음\",\n    \"현재가가 EMA20 $62,432.46 및 EMA120 $62,598.51 위에 있어 단기 수급은 매수 우위\"\n  ],\n  \"reasoning\": \"확정 구조는 최근 시퀀스가 BOS_bullish → CHoCH_bearish → BOS_bullish로 마감되었고, 마지막 bullish BOS 기준선 $62,840.20 및 $62,942.40 위에서 현재가 $63,078.00이 유지되고 있어 bullish로 판단한다. 다만 가격은 EQ $61,963.90 위의 premium 영역이며, active bearish OB가 $61,690.30~$64,250.00에 걸쳐 있어 현재 구간은 기관 매도 방어가 나올 수 있는 공급대 내부다. 그럼에도 전일 고점 $62,445.00 돌파와 뉴욕 세션 고점 $63,235.90 부근 재도전 가능성이 남아 있어 setup_bias는 bullish로 유지한다. 단, $63,235.90을 강하게 돌파하지 못하고 $62,840.20 아래로 재진입하면 현재 상승 setup은 약화되며, $61,150.20 하회 시 bullish 구조 자체가 훼손된다.\",\n  \"key_levels\": {\n    \"support\": [\n      62942.4,\n      62840.2,\n      62445.0,\n      61963.9,\n      61547.9,\n      61068.6,\n      61150.2,\n      60691.9\n    ],\n    \"resistance\": [\n      63235.9,\n      64250.0,\n      64463.7,\n      64265.44\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"61150.20\",\n  \"risk_scenario\": \"반대 시나리오는 현재가가 active bearish OB $61,690.30~$64,250.00 내부에서 거절되고, $62,840.20 및 $62,445.00 아래로 되밀리는 경우다. 이 경우 돌파는 buy-side liquidity raid 이후 실패한 breakout으로 해석될 수 있으며, 가격은 EQ $61,963.90 및 후보 bullish OB $61,068.60~$61,547.90까지 되돌릴 가능성이 커진다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "derivatives": {
      "agent_id": "derivatives",
      "display_name": "Derivatives Trader",
      "signal": "bearish",
      "confidence": 0.58,
      "structure_bias": "neutral",
      "setup_bias": "bearish",
      "setup_score": 0.72,
      "setup_signals": [
        "현재가 $63,078은 7일 범위 EQ $61,771.85 위의 프리미엄 구간에 위치",
        "상단 청산 유동성 $63,400 / $63,800 / $63,900이 근접해 있어 단기 buy-side sweep 후보",
        "long_account_latest 0.632, account_long_crowding 1.000으로 롱 계정 쏠림이 여전히 과도",
        "CVD divergence 0.700으로 가격 상승 대비 참여 강도에 불일치 발생",
        "OI trend 0.553 및 24h OI 변화 0.534로 신규 포지션 유입은 있으나, funding_pressure 0.486으로 강한 추세 확증은 부족",
        "현물-선물 basis -0.0475%로 선물이 현물 대비 약세를 보이며 공격적 추격 매수 신뢰도 낮음"
      ],
      "reasoning": "현재 BTC는 $63,078로 EMA20 $62,432와 EMA120 $62,598 위에 있어 단기 반등 구조는 유지되지만, EMA240 $64,265와 7일 고점 $64,463.70 아래라 확정적인 bullish BOS는 아직 확인되지 않았다. 파생 포지셔닝은 롱 계정 비중 0.632와 account_long_crowding 1.000으로 롱 쏠림이 강한 반면, 최근 24시간 long_account_change는 -0.048이고 short_account_change는 +0.048로 롱 언와인딩/숏 유입이 진행 중이다. $63,400, $63,800, $63,900 상단 청산대가 가까워 단기적으로 위를 찌른 뒤 실패할 가능성이 있으며, CVD divergence 0.700은 가격 상승을 거래 참여가 충분히 뒷받침하지 못한다는 경고다. 따라서 구조는 아직 중립이지만, 셋업은 프리미엄 구간 + 상단 유동성 근접 + 롱 쏠림으로 단기 bearish fade 셋업이 우세하다.",
      "key_levels": {
        "support": [
          62598.51,
          62432.46,
          60900,
          60200,
          60100
        ],
        "resistance": [
          63400,
          63800,
          63900,
          64265.44,
          64463.7
        ]
      },
      "time_horizon": "short term, 약 4-8시간",
      "invalidation_level": "64463.70",
      "risk_scenario": "$63,900 상단 청산대를 흡수한 뒤 $64,265 EMA240과 7일 고점 $64,463.70 위에서 수용이 발생하면, 롱 쏠림에도 불구하고 숏 커버링이 붙으며 bearish setup은 무효화된다. 이 경우 다음 구간은 구조적 bullish 전환으로 해석해야 하며, $63,900이 지지로 전환되는지 확인해야 한다.",
      "data_quality": "medium",
      "metrics": {
        "cvd_divergence": 0.7,
        "cvd_change": 10222.051,
        "oi_trend": 0.553,
        "oi_change_pct_24h": 0.534,
        "oi_latest": 101311.07,
        "funding_pressure": 0.486,
        "funding_avg": 1.419e-05,
        "funding_change_24h": -1.7e-07,
        "long_account_ratio": 0.663,
        "short_account_ratio": 0.337,
        "long_account_latest": 0.632,
        "short_account_latest": 0.368,
        "long_account_change_24h": -0.048,
        "short_account_change_24h": 0.048,
        "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.0475,
        "basis_change_lookback": 0.0049,
        "aggregate_score": 0.445,
        "bull_signals": 2,
        "bear_signals": 1,
        "liq_below": [
          [
            60900,
            8201.872854000001
          ],
          [
            60200,
            6438.90559075
          ],
          [
            60100,
            8691.325961999999
          ]
        ],
        "liq_above": [
          [
            63400,
            8047.6056833
          ],
          [
            63800,
            8211.8935708
          ],
          [
            63900,
            6837.272124500001
          ]
        ],
        "strongest_liq_level": 60100,
        "fragility_score": 0.864,
        "positioning_extreme": "balanced"
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.58,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.72,\n  \"setup_signals\": [\n    \"현재가 $63,078은 7일 범위 EQ $61,771.85 위의 프리미엄 구간에 위치\",\n    \"상단 청산 유동성 $63,400 / $63,800 / $63,900이 근접해 있어 단기 buy-side sweep 후보\",\n    \"long_account_latest 0.632, account_long_crowding 1.000으로 롱 계정 쏠림이 여전히 과도\",\n    \"CVD divergence 0.700으로 가격 상승 대비 참여 강도에 불일치 발생\",\n    \"OI trend 0.553 및 24h OI 변화 0.534로 신규 포지션 유입은 있으나, funding_pressure 0.486으로 강한 추세 확증은 부족\",\n    \"현물-선물 basis -0.0475%로 선물이 현물 대비 약세를 보이며 공격적 추격 매수 신뢰도 낮음\"\n  ],\n  \"reasoning\": \"현재 BTC는 $63,078로 EMA20 $62,432와 EMA120 $62,598 위에 있어 단기 반등 구조는 유지되지만, EMA240 $64,265와 7일 고점 $64,463.70 아래라 확정적인 bullish BOS는 아직 확인되지 않았다. 파생 포지셔닝은 롱 계정 비중 0.632와 account_long_crowding 1.000으로 롱 쏠림이 강한 반면, 최근 24시간 long_account_change는 -0.048이고 short_account_change는 +0.048로 롱 언와인딩/숏 유입이 진행 중이다. $63,400, $63,800, $63,900 상단 청산대가 가까워 단기적으로 위를 찌른 뒤 실패할 가능성이 있으며, CVD divergence 0.700은 가격 상승을 거래 참여가 충분히 뒷받침하지 못한다는 경고다. 따라서 구조는 아직 중립이지만, 셋업은 프리미엄 구간 + 상단 유동성 근접 + 롱 쏠림으로 단기 bearish fade 셋업이 우세하다.\",\n  \"key_levels\": {\n    \"support\": [\n      62598.51,\n      62432.46,\n      60900,\n      60200,\n      60100\n    ],\n    \"resistance\": [\n      63400,\n      63800,\n      63900,\n      64265.44,\n      64463.7\n    ]\n  },\n  \"time_horizon\": \"short term, 약 4-8시간\",\n  \"invalidation_level\": \"64463.70\",\n  \"risk_scenario\": \"$63,900 상단 청산대를 흡수한 뒤 $64,265 EMA240과 7일 고점 $64,463.70 위에서 수용이 발생하면, 롱 쏠림에도 불구하고 숏 커버링이 붙으며 bearish setup은 무효화된다. 이 경우 다음 구간은 구조적 bullish 전환으로 해석해야 하며, $63,900이 지지로 전환되는지 확인해야 한다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "harmonic": {
      "agent_id": "harmonic",
      "display_name": "Harmonic Specialist",
      "signal": "bearish",
      "confidence": 0.62,
      "structure_bias": "neutral",
      "setup_bias": "bearish",
      "setup_score": 0.72,
      "setup_signals": [
        "현재가 $63,078은 확정 bearish Gartley 활성 PRZ $62,497.39-$63,332.47 내부에 있으며, 해당 패턴은 PRZ 진입·방어 및 AD 0.382 반응 도달로 확인됨",
        "상단에 strict/high bearish Crab 형성 PRZ $63,366.38-$63,891.76가 대기 중이며, XAD 1.621과 ABCD·BC_EXT·XAD 3중 Fib confluence가 겹침",
        "확정 bearish Crab은 D $63,832.50 이후 reaction_score 1.0, AD 반응비 0.625를 기록해 $63,366.38-$63,891.76 구간을 강한 반등 매도 후보로 유지",
        "EMA240 $64,265.44 및 7일 고점 $64,463.70이 상단 저항으로 남아 있어, $63.9k 위 수용 전까지 상방 추격보다 PRZ 반응 리스크가 우세",
        "검증된 하락 TP ladder가 $62,819.24 → $62,318.93 → $61,509.10 및 보조 Gartley 기준 $61,857.20 → $61,203.73을 제시"
      ],
      "reasoning": "확정 구조 관점에서는 BOS/CHoCH/명확한 구조 수용 데이터가 제공되지 않았으므로 structure_bias는 중립으로 둔다. 다만 하모닉 setup 관점에서는 bearish 쪽이 우세하며, 방향 점수도 bearish 1.166 대 bullish 0으로 일방적이다. 현재가 $63,078은 이미 확인 반응이 나온 bearish Gartley PRZ $62,497.39-$63,332.47 안에 있고, 바로 위에는 고품질 strict Crab PRZ $63,366.38-$63,891.76가 있어 $63.3k-$63.9k가 핵심 반전/공급 구간이다. 하모닉은 단독 경로 엔진이 아니므로 추세 전환 확정으로 보지는 않지만, PRZ touch·rejection·AD0.382 반응이 확인된 패턴 2개가 있어 단기 하락 셋업은 유효하다.",
      "key_levels": {
        "support": [
          62819.24,
          62318.93,
          61857.2,
          61509.1,
          61203.73,
          60146.0
        ],
        "resistance": [
          63332.47,
          63366.38,
          63629.07,
          63891.76,
          64265.44,
          64463.7
        ]
      },
      "time_horizon": "단기, 1시간봉 기준 향후 수 개 캔들에서 PRZ 반응 확인 구간",
      "invalidation_level": "$63,891.76 1시간봉 종가 상향 수용",
      "risk_scenario": "$63,891.76 상단을 강하게 돌파·수용하면 bearish Crab PRZ 방어 실패로 보고, $64,265.44 EMA240 및 7일 고점 $64,463.70 재테스트로 상방 squeeze가 확장될 수 있다. 이 경우 하락 TP ladder보다 $64.3k-$64.5k 저항 반응을 새로 확인해야 한다.",
      "data_quality": "medium",
      "metrics": {
        "patterns_found": 158,
        "completed_patterns_found": 65,
        "forming_d_prz_found": 93,
        "swing_orders_scanned": [
          3,
          5,
          8
        ],
        "swing_search_window": 34,
        "multiscale_swings_scanned": 59,
        "swing_highs_scanned": 28,
        "swing_lows_scanned": 31,
        "timeframe": "1h",
        "prz_active_threshold_pct": 0.5,
        "prz_nearby_threshold_pct": 1.0,
        "prz_watch_threshold_pct": 2.0,
        "prz_max_width_pct": 0.9,
        "quality_counts": {
          "high": 8,
          "medium": 60,
          "low": 90
        },
        "prz_status_counts": {
          "active": 36,
          "nearby": 15,
          "watch": 43,
          "far": 64,
          "forming": 46
        },
        "high_confluence_prz_count": 40,
        "strict_patterns_found": 64,
        "candidate_patterns_found": 94,
        "active_patterns_at_prz": 36,
        "nearby_patterns": 15,
        "all_patterns": [
          "crab",
          "gartley",
          "crab",
          "bat",
          "gartley",
          "gartley",
          "bat",
          "gartley",
          "crab",
          "crab",
          "gartley",
          "bat",
          "butterfly",
          "shark",
          "bat",
          "bat",
          "gartley",
          "gartley",
          "bat",
          "butterfly",
          "crab",
          "butterfly",
          "gartley",
          "shark",
          "crab",
          "bat",
          "bat",
          "bat",
          "gartley",
          "butterfly",
          "butterfly",
          "crab",
          "crab",
          "butterfly",
          "bat",
          "gartley",
          "butterfly",
          "crab",
          "gartley",
          "crab",
          "crab",
          "butterfly",
          "crab",
          "bat",
          "gartley",
          "gartley",
          "bat",
          "butterfly",
          "butterfly",
          "crab",
          "crab",
          "butterfly",
          "crab",
          "crab",
          "crab",
          "crab",
          "crab",
          "gartley",
          "shark",
          "crab",
          "bat",
          "crab",
          "crab",
          "gartley",
          "shark",
          "bat",
          "bat",
          "bat",
          "crab",
          "gartley",
          "crab",
          "gartley",
          "bat",
          "butterfly",
          "bat",
          "crab",
          "shark",
          "bat",
          "shark",
          "shark",
          "crab",
          "gartley",
          "bat",
          "shark",
          "shark",
          "bat",
          "butterfly",
          "butterfly",
          "butterfly",
          "bat",
          "bat",
          "gartley",
          "shark",
          "crab",
          "butterfly",
          "shark",
          "butterfly",
          "shark",
          "crab",
          "bat",
          "gartley",
          "shark",
          "bat",
          "crab",
          "butterfly",
          "bat",
          "butterfly",
          "shark",
          "gartley",
          "butterfly",
          "butterfly",
          "shark",
          "butterfly",
          "bat",
          "shark",
          "shark",
          "crab",
          "gartley",
          "crab",
          "shark",
          "gartley",
          "crab",
          "shark",
          "butterfly",
          "shark",
          "bat",
          "butterfly",
          "shark",
          "butterfly",
          "crab",
          "crab",
          "crab",
          "butterfly",
          "shark",
          "crab",
          "crab",
          "crab",
          "crab",
          "gartley",
          "crab",
          "butterfly",
          "bat",
          "gartley",
          "butterfly",
          "butterfly",
          "gartley",
          "crab",
          "butterfly",
          "crab",
          "bat",
          "butterfly",
          "crab",
          "shark",
          "gartley",
          "butterfly",
          "crab",
          "bat",
          "crab"
        ],
        "all_signals": [
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish"
        ],
        "best_pattern": "crab",
        "best_pattern_quality": "strict",
        "best_quality": "high",
        "best_pattern_score": 0.947,
        "best_completion_status": "forming",
        "nearest_pattern": "crab",
        "nearest_prz": 63134.73,
        "price_to_prz": 0.09,
        "prz_range": [
          62684.38,
          63585.08
        ],
        "council_relevant_prz_count": 3,
        "directional_influence_prz_count": 3,
        "confirmed_reaction_prz_count": 2,
        "validated_harmonic_tp_count": 2,
        "pattern_candidates": [
          {
            "pattern": "crab",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.947,
            "ratio_score": 1.0,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63629.07,
            "prz_range": [
              63366.38,
              63891.76
            ],
            "prz_width_pct": 0.826,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.87,
            "price_to_prz_pct_raw": 0.8736,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "crab",
              "d_price": 63629.07,
              "a_price": 61509.1,
              "tp1_ad_382": 62819.24,
              "tp2_ad_618": 62318.93,
              "tp3_a_or_structure_liquidity": 61509.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5706,
              "ABC": 0.4052
            },
            "x_price": 62942.4,
            "x_idx": 200,
            "x_order": 8,
            "a_price": 61509.1,
            "a_idx": 204,
            "a_order": 5,
            "b_price": 62327.0,
            "b_idx": 208,
            "b_order": 3,
            "c_price": 62658.4,
            "c_idx": 228,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "crab",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.931,
            "ratio_score": 0.996,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63832.5,
            "prz_range": [
              63366.38,
              63891.76
            ],
            "prz_width_pct": 0.826,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.87,
            "price_to_prz_pct_raw": 0.8736,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 0.625,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "crab",
              "d_price": 63629.07,
              "a_price": 61509.1,
              "tp1_ad_382": 62819.24,
              "tp2_ad_618": 62318.93,
              "tp3_a_or_structure_liquidity": 61509.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5706,
              "ABC": 0.4052,
              "BCD": 3.5428,
              "XAD": 1.621
            },
            "x_price": 62942.4,
            "x_idx": 200,
            "x_order": 8,
            "a_price": 61509.1,
            "a_idx": 204,
            "a_order": 5,
            "b_price": 62327.0,
            "b_idx": 208,
            "b_order": 3,
            "c_price": 62658.4,
            "c_idx": 228,
            "c_order": 5,
            "d_idx": 237
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.89,
            "ratio_score": 0.961,
            "prz_score": 0.977,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 61962.81,
            "prz_range": [
              61656.38,
              62269.23
            ],
            "prz_width_pct": 0.989,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.77,
            "price_to_prz_pct_raw": -1.768,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 61962.81,
              "a_price": 63832.5,
              "tp1_ad_382": 62677.03,
              "tp2_ad_618": 63118.28,
              "tp3_a_or_structure_liquidity": 63832.5,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6246,
              "ABC": 0.7708
            },
            "x_price": 61509.1,
            "x_idx": 204,
            "x_order": 5,
            "a_price": 63832.5,
            "a_idx": 237,
            "a_order": 3,
            "b_price": 62381.2,
            "b_idx": 240,
            "b_order": 8,
            "c_price": 63499.9,
            "c_idx": 245,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.838,
            "ratio_score": 0.785,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 62050.74,
            "prz_range": [
              61842.82,
              62258.65
            ],
            "prz_width_pct": 0.67,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.63,
            "price_to_prz_pct_raw": -1.6286,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 62050.74,
              "a_price": 60755.0,
              "tp1_ad_382": 61555.76,
              "tp2_ad_618": 61249.97,
              "tp3_a_or_structure_liquidity": 60755.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6542,
              "ABC": 0.6951
            },
            "x_price": 62327.0,
            "x_idx": 208,
            "x_order": 3,
            "a_price": 60755.0,
            "a_idx": 256,
            "a_order": 8,
            "b_price": 61783.4,
            "b_idx": 271,
            "b_order": 3,
            "c_price": 61068.6,
            "c_idx": 286,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.933,
            "ratio_score": 1.0,
            "prz_score": 0.889,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 62914.93,
            "prz_range": [
              62497.39,
              63332.47
            ],
            "prz_width_pct": 1.327,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.26,
            "price_to_prz_pct_raw": -0.2585,
            "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": 62914.93,
              "a_price": 60146.0,
              "tp1_ad_382": 61857.2,
              "tp2_ad_618": 61203.73,
              "tp3_a_or_structure_liquidity": 60146.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.618,
              "ABC": 0.7208
            },
            "x_price": 63674.9,
            "x_idx": 149,
            "x_order": 3,
            "a_price": 60146.0,
            "a_idx": 178,
            "a_order": 3,
            "b_price": 62327.0,
            "b_idx": 208,
            "b_order": 3,
            "c_price": 60755.0,
            "c_idx": 256,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.927,
            "ratio_score": 1.0,
            "prz_score": 0.882,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63178.86,
            "prz_range": [
              62750.88,
              63606.85
            ],
            "prz_width_pct": 1.355,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.16,
            "price_to_prz_pct_raw": 0.1599,
            "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": 63178.86,
              "a_price": 59080.0,
              "tp1_ad_382": 61613.1,
              "tp2_ad_618": 60645.77,
              "tp3_a_or_structure_liquidity": 59080.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4723,
              "ABC": 0.453
            },
            "x_price": 64150.8,
            "x_idx": 139,
            "x_order": 3,
            "a_price": 59080.0,
            "a_idx": 163,
            "a_order": 8,
            "b_price": 61475.0,
            "b_idx": 176,
            "b_order": 5,
            "c_price": 60390.0,
            "c_idx": 190,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.897,
            "ratio_score": 0.944,
            "prz_score": 0.889,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 62840.2,
            "prz_range": [
              62497.39,
              63332.47
            ],
            "prz_width_pct": 1.327,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.26,
            "price_to_prz_pct_raw": -0.2585,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 0.658,
                "adverse_move_ratio_ad": 0.03,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 62914.93,
              "a_price": 60146.0,
              "tp1_ad_382": 61857.2,
              "tp2_ad_618": 61203.73,
              "tp3_a_or_structure_liquidity": 60146.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.618,
              "ABC": 0.7208,
              "BCD": 1.3265,
              "XAD": 0.7635
            },
            "x_price": 63674.9,
            "x_idx": 149,
            "x_order": 3,
            "a_price": 60146.0,
            "a_idx": 178,
            "a_order": 3,
            "b_price": 62327.0,
            "b_idx": 208,
            "b_order": 3,
            "c_price": 60755.0,
            "c_idx": 256,
            "c_order": 8,
            "d_idx": 279
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.89,
            "ratio_score": 0.793,
            "prz_score": 0.939,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 62704.83,
            "prz_range": [
              62348.8,
              63060.86
            ],
            "prz_width_pct": 1.136,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.59,
            "price_to_prz_pct_raw": -0.5916,
            "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": 62704.83,
              "a_price": 59451.3,
              "tp1_ad_382": 61461.98,
              "tp2_ad_618": 60694.15,
              "tp3_a_or_structure_liquidity": 59451.3,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4015,
              "ABC": 0.3557
            },
            "x_price": 63231.8,
            "x_idx": 153,
            "x_order": 3,
            "a_price": 59451.3,
            "a_idx": 172,
            "a_order": 8,
            "b_price": 60969.2,
            "b_idx": 189,
            "b_order": 3,
            "c_price": 61509.1,
            "c_idx": 204,
            "c_order": 5,
            "d_idx": null
          }
        ],
        "council_relevant_prz": [
          {
            "pattern": "crab",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.931,
            "ratio_score": 0.996,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63832.5,
            "prz_range": [
              63366.38,
              63891.76
            ],
            "prz_width_pct": 0.826,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.87,
            "price_to_prz_pct_raw": 0.8736,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 0.625,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "crab",
              "d_price": 63629.07,
              "a_price": 61509.1,
              "tp1_ad_382": 62819.24,
              "tp2_ad_618": 62318.93,
              "tp3_a_or_structure_liquidity": 61509.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5706,
              "ABC": 0.4052,
              "BCD": 3.5428,
              "XAD": 1.621
            },
            "x_price": 62942.4,
            "x_idx": 200,
            "x_order": 8,
            "a_price": 61509.1,
            "a_idx": 204,
            "a_order": 5,
            "b_price": 62327.0,
            "b_idx": 208,
            "b_order": 3,
            "c_price": 62658.4,
            "c_idx": 228,
            "c_order": 5,
            "d_idx": 237
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.897,
            "ratio_score": 0.944,
            "prz_score": 0.889,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 62840.2,
            "prz_range": [
              62497.39,
              63332.47
            ],
            "prz_width_pct": 1.327,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.26,
            "price_to_prz_pct_raw": -0.2585,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 0.658,
                "adverse_move_ratio_ad": 0.03,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 62914.93,
              "a_price": 60146.0,
              "tp1_ad_382": 61857.2,
              "tp2_ad_618": 61203.73,
              "tp3_a_or_structure_liquidity": 60146.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.618,
              "ABC": 0.7208,
              "BCD": 1.3265,
              "XAD": 0.7635
            },
            "x_price": 63674.9,
            "x_idx": 149,
            "x_order": 3,
            "a_price": 60146.0,
            "a_idx": 178,
            "a_order": 3,
            "b_price": 62327.0,
            "b_idx": 208,
            "b_order": 3,
            "c_price": 60755.0,
            "c_idx": 256,
            "c_order": 8,
            "d_idx": 279
          },
          {
            "pattern": "crab",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.947,
            "ratio_score": 1.0,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63629.07,
            "prz_range": [
              63366.38,
              63891.76
            ],
            "prz_width_pct": 0.826,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.87,
            "price_to_prz_pct_raw": 0.8736,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "crab",
              "d_price": 63629.07,
              "a_price": 61509.1,
              "tp1_ad_382": 62819.24,
              "tp2_ad_618": 62318.93,
              "tp3_a_or_structure_liquidity": 61509.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5706,
              "ABC": 0.4052
            },
            "x_price": 62942.4,
            "x_idx": 200,
            "x_order": 8,
            "a_price": 61509.1,
            "a_idx": 204,
            "a_order": 5,
            "b_price": 62327.0,
            "b_idx": 208,
            "b_order": 3,
            "c_price": 62658.4,
            "c_idx": 228,
            "c_order": 5,
            "d_idx": null
          }
        ],
        "report_detail_candidates": [
          {
            "pattern": "crab",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.947,
            "ratio_score": 1.0,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63629.07,
            "prz_range": [
              63366.38,
              63891.76
            ],
            "prz_width_pct": 0.826,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.87,
            "price_to_prz_pct_raw": 0.8736,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "crab",
              "d_price": 63629.07,
              "a_price": 61509.1,
              "tp1_ad_382": 62819.24,
              "tp2_ad_618": 62318.93,
              "tp3_a_or_structure_liquidity": 61509.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5706,
              "ABC": 0.4052
            },
            "x_price": 62942.4,
            "x_idx": 200,
            "x_order": 8,
            "a_price": 61509.1,
            "a_idx": 204,
            "a_order": 5,
            "b_price": 62327.0,
            "b_idx": 208,
            "b_order": 3,
            "c_price": 62658.4,
            "c_idx": 228,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "crab",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.931,
            "ratio_score": 0.996,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63832.5,
            "prz_range": [
              63366.38,
              63891.76
            ],
            "prz_width_pct": 0.826,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.87,
            "price_to_prz_pct_raw": 0.8736,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 0.625,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "crab",
              "d_price": 63629.07,
              "a_price": 61509.1,
              "tp1_ad_382": 62819.24,
              "tp2_ad_618": 62318.93,
              "tp3_a_or_structure_liquidity": 61509.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5706,
              "ABC": 0.4052,
              "BCD": 3.5428,
              "XAD": 1.621
            },
            "x_price": 62942.4,
            "x_idx": 200,
            "x_order": 8,
            "a_price": 61509.1,
            "a_idx": 204,
            "a_order": 5,
            "b_price": 62327.0,
            "b_idx": 208,
            "b_order": 3,
            "c_price": 62658.4,
            "c_idx": 228,
            "c_order": 5,
            "d_idx": 237
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.89,
            "ratio_score": 0.961,
            "prz_score": 0.977,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 61962.81,
            "prz_range": [
              61656.38,
              62269.23
            ],
            "prz_width_pct": 0.989,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.77,
            "price_to_prz_pct_raw": -1.768,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 61962.81,
              "a_price": 63832.5,
              "tp1_ad_382": 62677.03,
              "tp2_ad_618": 63118.28,
              "tp3_a_or_structure_liquidity": 63832.5,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6246,
              "ABC": 0.7708
            },
            "x_price": 61509.1,
            "x_idx": 204,
            "x_order": 5,
            "a_price": 63832.5,
            "a_idx": 237,
            "a_order": 3,
            "b_price": 62381.2,
            "b_idx": 240,
            "b_order": 8,
            "c_price": 63499.9,
            "c_idx": 245,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.838,
            "ratio_score": 0.785,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 62050.74,
            "prz_range": [
              61842.82,
              62258.65
            ],
            "prz_width_pct": 0.67,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.63,
            "price_to_prz_pct_raw": -1.6286,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 62050.74,
              "a_price": 60755.0,
              "tp1_ad_382": 61555.76,
              "tp2_ad_618": 61249.97,
              "tp3_a_or_structure_liquidity": 60755.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6542,
              "ABC": 0.6951
            },
            "x_price": 62327.0,
            "x_idx": 208,
            "x_order": 3,
            "a_price": 60755.0,
            "a_idx": 256,
            "a_order": 8,
            "b_price": 61783.4,
            "b_idx": 271,
            "b_order": 3,
            "c_price": 61068.6,
            "c_idx": 286,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.933,
            "ratio_score": 1.0,
            "prz_score": 0.889,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 62914.93,
            "prz_range": [
              62497.39,
              63332.47
            ],
            "prz_width_pct": 1.327,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.26,
            "price_to_prz_pct_raw": -0.2585,
            "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": 62914.93,
              "a_price": 60146.0,
              "tp1_ad_382": 61857.2,
              "tp2_ad_618": 61203.73,
              "tp3_a_or_structure_liquidity": 60146.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.618,
              "ABC": 0.7208
            },
            "x_price": 63674.9,
            "x_idx": 149,
            "x_order": 3,
            "a_price": 60146.0,
            "a_idx": 178,
            "a_order": 3,
            "b_price": 62327.0,
            "b_idx": 208,
            "b_order": 3,
            "c_price": 60755.0,
            "c_idx": 256,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.927,
            "ratio_score": 1.0,
            "prz_score": 0.882,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63178.86,
            "prz_range": [
              62750.88,
              63606.85
            ],
            "prz_width_pct": 1.355,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.16,
            "price_to_prz_pct_raw": 0.1599,
            "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": 63178.86,
              "a_price": 59080.0,
              "tp1_ad_382": 61613.1,
              "tp2_ad_618": 60645.77,
              "tp3_a_or_structure_liquidity": 59080.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4723,
              "ABC": 0.453
            },
            "x_price": 64150.8,
            "x_idx": 139,
            "x_order": 3,
            "a_price": 59080.0,
            "a_idx": 163,
            "a_order": 8,
            "b_price": 61475.0,
            "b_idx": 176,
            "b_order": 5,
            "c_price": 60390.0,
            "c_idx": 190,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.897,
            "ratio_score": 0.944,
            "prz_score": 0.889,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 62840.2,
            "prz_range": [
              62497.39,
              63332.47
            ],
            "prz_width_pct": 1.327,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.26,
            "price_to_prz_pct_raw": -0.2585,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 0.658,
                "adverse_move_ratio_ad": 0.03,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 62914.93,
              "a_price": 60146.0,
              "tp1_ad_382": 61857.2,
              "tp2_ad_618": 61203.73,
              "tp3_a_or_structure_liquidity": 60146.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.618,
              "ABC": 0.7208,
              "BCD": 1.3265,
              "XAD": 0.7635
            },
            "x_price": 63674.9,
            "x_idx": 149,
            "x_order": 3,
            "a_price": 60146.0,
            "a_idx": 178,
            "a_order": 3,
            "b_price": 62327.0,
            "b_idx": 208,
            "b_order": 3,
            "c_price": 60755.0,
            "c_idx": 256,
            "c_order": 8,
            "d_idx": 279
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.89,
            "ratio_score": 0.793,
            "prz_score": 0.939,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 62704.83,
            "prz_range": [
              62348.8,
              63060.86
            ],
            "prz_width_pct": 1.136,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.59,
            "price_to_prz_pct_raw": -0.5916,
            "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": 62704.83,
              "a_price": 59451.3,
              "tp1_ad_382": 61461.98,
              "tp2_ad_618": 60694.15,
              "tp3_a_or_structure_liquidity": 59451.3,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4015,
              "ABC": 0.3557
            },
            "x_price": 63231.8,
            "x_idx": 153,
            "x_order": 3,
            "a_price": 59451.3,
            "a_idx": 172,
            "a_order": 8,
            "b_price": 60969.2,
            "b_idx": 189,
            "b_order": 3,
            "c_price": 61509.1,
            "c_idx": 204,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.876,
            "ratio_score": 0.97,
            "prz_score": 0.931,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 64287.15,
            "prz_range": [
              63911.88,
              64662.42
            ],
            "prz_width_pct": 1.167,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.92,
            "price_to_prz_pct_raw": 1.9169,
            "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": "butterfly",
              "d_price": 64287.15,
              "a_price": 60146.0,
              "tp1_ad_382": 62705.23,
              "tp2_ad_618": 61727.92,
              "tp3_a_or_structure_liquidity": 60146.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7924,
              "ABC": 0.6409
            },
            "x_price": 63674.9,
            "x_idx": 149,
            "x_order": 3,
            "a_price": 60146.0,
            "a_idx": 178,
            "a_order": 3,
            "b_price": 62942.4,
            "b_idx": 200,
            "b_order": 8,
            "c_price": 61150.2,
            "c_idx": 211,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.856,
            "ratio_score": 0.779,
            "prz_score": 0.967,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 62219.29,
            "prz_range": [
              61899.21,
              62539.37
            ],
            "prz_width_pct": 1.029,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.36,
            "price_to_prz_pct_raw": -1.3614,
            "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": 62219.29,
              "a_price": 64250.0,
              "tp1_ad_382": 62995.02,
              "tp2_ad_618": 63474.27,
              "tp3_a_or_structure_liquidity": 64250.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5807,
              "ABC": 0.7377
            },
            "x_price": 61509.1,
            "x_idx": 204,
            "x_order": 5,
            "a_price": 64250.0,
            "a_idx": 214,
            "a_order": 8,
            "b_price": 62658.4,
            "b_idx": 228,
            "b_order": 5,
            "c_price": 63832.5,
            "c_idx": 237,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.852,
            "ratio_score": 1.0,
            "prz_score": 0.913,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 61559.77,
            "prz_range": [
              61179.96,
              61939.59
            ],
            "prz_width_pct": 1.234,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -2.41,
            "price_to_prz_pct_raw": -2.4069,
            "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": 61559.77,
              "a_price": 60146.0,
              "tp1_ad_382": 61019.71,
              "tp2_ad_618": 60686.06,
              "tp3_a_or_structure_liquidity": 60146.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4476,
              "ABC": 0.7036
            },
            "x_price": 61985.1,
            "x_idx": 165,
            "x_order": 5,
            "a_price": 60146.0,
            "a_idx": 178,
            "a_order": 3,
            "b_price": 60969.2,
            "b_idx": 189,
            "b_order": 3,
            "c_price": 60390.0,
            "c_idx": 190,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "crab",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "low",
            "pattern_score": 0.84,
            "ratio_score": 0.793,
            "prz_score": 0.863,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63134.73,
            "prz_range": [
              62684.38,
              63585.08
            ],
            "prz_width_pct": 1.427,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.09,
            "price_to_prz_pct_raw": 0.0899,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "crab",
              "d_price": 63134.73,
              "a_price": 59451.3,
              "tp1_ad_382": 61727.66,
              "tp2_ad_618": 60858.37,
              "tp3_a_or_structure_liquidity": 59451.3,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5991,
              "ABC": 0.3557
            },
            "x_price": 61985.1,
            "x_idx": 165,
            "x_order": 5,
            "a_price": 59451.3,
            "a_idx": 172,
            "a_order": 8,
            "b_price": 60969.2,
            "b_idx": 189,
            "b_order": 3,
            "c_price": 61509.1,
            "c_idx": 204,
            "c_order": 5,
            "d_idx": null
          }
        ],
        "actionable_patterns_list": [
          {
            "pattern": "crab",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.947,
            "prz_proximity": "active",
            "prz_range": [
              63366.38,
              63891.76
            ],
            "prz_reversal_direction": "down",
            "price_to_prz_pct": 0.87,
            "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": "crab",
              "d_price": 63629.07,
              "a_price": 61509.1,
              "tp1_ad_382": 62819.24,
              "tp2_ad_618": 62318.93,
              "tp3_a_or_structure_liquidity": 61509.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "CRAB FORMING HIGH PRZ $63,366.38-$63,891.76: expected reversal DOWN if price reacts in zone"
          },
          {
            "pattern": "crab",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.931,
            "prz_proximity": "active",
            "prz_range": [
              63366.38,
              63891.76
            ],
            "prz_reversal_direction": "down",
            "price_to_prz_pct": 0.87,
            "high_confluence_prz": true,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 0.625,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "crab",
              "d_price": 63629.07,
              "a_price": 61509.1,
              "tp1_ad_382": 62819.24,
              "tp2_ad_618": 62318.93,
              "tp3_a_or_structure_liquidity": 61509.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "CRAB COMPLETED HIGH PRZ $63,366.38-$63,891.76: expected reversal DOWN if price reacts in zone"
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.897,
            "prz_proximity": "active",
            "prz_range": [
              62497.39,
              63332.47
            ],
            "prz_reversal_direction": "down",
            "price_to_prz_pct": -0.26,
            "high_confluence_prz": true,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 0.658,
                "adverse_move_ratio_ad": 0.03,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 62914.93,
              "a_price": 60146.0,
              "tp1_ad_382": 61857.2,
              "tp2_ad_618": 61203.73,
              "tp3_a_or_structure_liquidity": 60146.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "GARTLEY COMPLETED MEDIUM PRZ $62,497.39-$63,332.47: expected reversal DOWN if price reacts in zone"
          }
        ],
        "best_council_prz": {
          "pattern": "crab",
          "signal": "bearish",
          "completion_status": "forming",
          "pattern_quality": "strict",
          "quality": "high",
          "pattern_score": 0.947,
          "ratio_score": 1.0,
          "prz_score": 1.0,
          "prz_proximity": "active",
          "action_status": "active",
          "high_confluence_prz": true,
          "d_price": 63629.07,
          "prz_range": [
            63366.38,
            63891.76
          ],
          "prz_width_pct": 0.826,
          "prz_confluence_count": 3,
          "prz_fib_families": [
            "ABCD",
            "BC_EXT",
            "XAD"
          ],
          "price_to_prz_pct": 0.87,
          "price_to_prz_pct_raw": 0.8736,
          "harmonic_vote_state": {
            "authority": "pre_confirmation_reversal_candidate",
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "confirmation_reasons": [],
            "reaction_score": 0.0,
            "reaction_detail": {
              "reaction_score": 0.0,
              "reasons": []
            },
            "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
            "standalone_path_override_allowed": false
          },
          "directional_vote_weight": 0.35,
          "confirmed_reaction": false,
          "standalone_path_override_allowed": false,
          "tp_ladder": {
            "direction": "bearish",
            "source": "crab",
            "d_price": 63629.07,
            "a_price": 61509.1,
            "tp1_ad_382": 62819.24,
            "tp2_ad_618": 62318.93,
            "tp3_a_or_structure_liquidity": 61509.1,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          "ratios": {
            "XAB": 0.5706,
            "ABC": 0.4052
          },
          "x_price": 62942.4,
          "x_idx": 200,
          "x_order": 8,
          "a_price": 61509.1,
          "a_idx": 204,
          "a_order": 5,
          "b_price": 62327.0,
          "b_idx": 208,
          "b_order": 3,
          "c_price": 62658.4,
          "c_idx": 228,
          "c_order": 5,
          "d_idx": null
        },
        "best_tp_ladder": {
          "direction": "bearish",
          "source": "crab",
          "d_price": 63629.07,
          "a_price": 61509.1,
          "tp1_ad_382": 62819.24,
          "tp2_ad_618": 62318.93,
          "tp3_a_or_structure_liquidity": 61509.1,
          "note": "Use as strong TP ladder context; not standalone path authority."
        },
        "best_confirmed_tp_ladder": {
          "direction": "bearish",
          "source": "crab",
          "d_price": 63629.07,
          "a_price": 61509.1,
          "tp1_ad_382": 62819.24,
          "tp2_ad_618": 62318.93,
          "tp3_a_or_structure_liquidity": 61509.1,
          "note": "Use as strong TP ladder context; not standalone path authority."
        },
        "tp_ladder": [
          {
            "direction": "bearish",
            "source": "crab",
            "d_price": 63629.07,
            "a_price": 61509.1,
            "tp1_ad_382": 62819.24,
            "tp2_ad_618": 62318.93,
            "tp3_a_or_structure_liquidity": 61509.1,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bearish",
            "source": "crab",
            "d_price": 63629.07,
            "a_price": 61509.1,
            "tp1_ad_382": 62819.24,
            "tp2_ad_618": 62318.93,
            "tp3_a_or_structure_liquidity": 61509.1,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bearish",
            "source": "gartley",
            "d_price": 62914.93,
            "a_price": 60146.0,
            "tp1_ad_382": 61857.2,
            "tp2_ad_618": 61203.73,
            "tp3_a_or_structure_liquidity": 60146.0,
            "note": "Use as strong TP ladder context; not standalone path authority."
          }
        ],
        "validated_tp_ladder": [
          {
            "direction": "bearish",
            "source": "crab",
            "d_price": 63629.07,
            "a_price": 61509.1,
            "tp1_ad_382": 62819.24,
            "tp2_ad_618": 62318.93,
            "tp3_a_or_structure_liquidity": 61509.1,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bearish",
            "source": "gartley",
            "d_price": 62914.93,
            "a_price": 60146.0,
            "tp1_ad_382": 61857.2,
            "tp2_ad_618": 61203.73,
            "tp3_a_or_structure_liquidity": 60146.0,
            "note": "Use as strong TP ladder context; not standalone path authority."
          }
        ],
        "harmonic_governance": {
          "role": "PRZ reaction + TP ladder confluence, not standalone path engine",
          "pre_confirmation_weight_range": [
            0.25,
            0.35
          ],
          "post_confirmation_vote_weight_range": [
            0.5,
            0.6
          ],
          "standalone_path_override_allowed": false,
          "opposes_core_path_policy": "branch/reversal-risk/reaction-zone unless lower-TF structure and derivatives also confirm",
          "aligns_with_core_path_policy": "modest confidence lift plus strong TP ladder influence"
        },
        "execution_readiness": "ready",
        "directional_scores": {
          "bullish": 0,
          "bearish": 1.166
        },
        "directional_score_total": 1.166,
        "directional_dominance": 1.0
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.62,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.72,\n  \"setup_signals\": [\n    \"현재가 $63,078은 확정 bearish Gartley 활성 PRZ $62,497.39-$63,332.47 내부에 있으며, 해당 패턴은 PRZ 진입·방어 및 AD 0.382 반응 도달로 확인됨\",\n    \"상단에 strict/high bearish Crab 형성 PRZ $63,366.38-$63,891.76가 대기 중이며, XAD 1.621과 ABCD·BC_EXT·XAD 3중 Fib confluence가 겹침\",\n    \"확정 bearish Crab은 D $63,832.50 이후 reaction_score 1.0, AD 반응비 0.625를 기록해 $63,366.38-$63,891.76 구간을 강한 반등 매도 후보로 유지\",\n    \"EMA240 $64,265.44 및 7일 고점 $64,463.70이 상단 저항으로 남아 있어, $63.9k 위 수용 전까지 상방 추격보다 PRZ 반응 리스크가 우세\",\n    \"검증된 하락 TP ladder가 $62,819.24 → $62,318.93 → $61,509.10 및 보조 Gartley 기준 $61,857.20 → $61,203.73을 제시\"\n  ],\n  \"reasoning\": \"확정 구조 관점에서는 BOS/CHoCH/명확한 구조 수용 데이터가 제공되지 않았으므로 structure_bias는 중립으로 둔다. 다만 하모닉 setup 관점에서는 bearish 쪽이 우세하며, 방향 점수도 bearish 1.166 대 bullish 0으로 일방적이다. 현재가 $63,078은 이미 확인 반응이 나온 bearish Gartley PRZ $62,497.39-$63,332.47 안에 있고, 바로 위에는 고품질 strict Crab PRZ $63,366.38-$63,891.76가 있어 $63.3k-$63.9k가 핵심 반전/공급 구간이다. 하모닉은 단독 경로 엔진이 아니므로 추세 전환 확정으로 보지는 않지만, PRZ touch·rejection·AD0.382 반응이 확인된 패턴 2개가 있어 단기 하락 셋업은 유효하다.\",\n  \"key_levels\": {\n    \"support\": [\n      62819.24,\n      62318.93,\n      61857.2,\n      61509.1,\n      61203.73,\n      60146.0\n    ],\n    \"resistance\": [\n      63332.47,\n      63366.38,\n      63629.07,\n      63891.76,\n      64265.44,\n      64463.7\n    ]\n  },\n  \"time_horizon\": \"단기, 1시간봉 기준 향후 수 개 캔들에서 PRZ 반응 확인 구간\",\n  \"invalidation_level\": \"$63,891.76 1시간봉 종가 상향 수용\",\n  \"risk_scenario\": \"$63,891.76 상단을 강하게 돌파·수용하면 bearish Crab PRZ 방어 실패로 보고, $64,265.44 EMA240 및 7일 고점 $64,463.70 재테스트로 상방 squeeze가 확장될 수 있다. 이 경우 하락 TP ladder보다 $64.3k-$64.5k 저항 반응을 새로 확인해야 한다.\",\n  \"data_quality\": \"medium\"\n}"
    }
  },
  "chairman_synthesis": {
    "overall_signal": "bullish",
    "overall_confidence": 0.64,
    "execution_setup": {
      "setup_bias": "bearish",
      "setup_strength": 0.64,
      "active_setups": [
        "피보나치 관점에서 현재가 $63,078은 EQ $61,954.40 및 골든비율 $62,163.45 위의 프리미엄 구간에 위치",
        "파생 관점에서 $63,400 / $63,800 / $63,900 상단 청산 유동성이 근접해 있어 단기 buy-side sweep 조건 형성",
        "하모닉 관점에서 현재가는 bearish Gartley PRZ $62,497.39-$63,332.47 내부에 있으며, 상단 bearish Crab PRZ $63,366.38-$63,891.76가 대기",
        "롱 계정 비중 0.632 및 롱 쏠림 1.000으로 과밀 롱 포지셔닝 위험 존재",
        "ICT는 $62,942.40 / $62,840.20 상방 BOS 유지로 bullish continuation setup을 인정하지만, 현재가는 bearish OB $61,690.30-$64,250.00 내부",
        "Wyckoff는 SOS $62,922.00 및 LPS $62,507.90 위에서 Phase D 축적 셋업 유지"
      ],
      "setup_vs_structure": "구조적 해석은 Wyckoff 축적 Phase D와 ICT bullish BOS 때문에 bullish 쪽이 우세하지만, 실행 셋업은 프리미엄 구간·하모닉 PRZ·상단 청산 유동성·롱 쏠림이 겹쳐 bearish 쪽으로 기울어져 있다. 즉, 큰 구조는 축적 후반부이나 현재 위치는 추격 매수보다 공급 반응을 먼저 검증해야 하는 구간이다."
    },
    "signal_breakdown": {
      "bullish_count": 2,
      "bearish_count": 0,
      "neutral_count": 4
    },
    "key_levels": {
      "support": [
        62942.4,
        62922.0,
        62840.2,
        62598.51,
        62507.9,
        62461.08,
        62432.46,
        62163.45,
        61963.9,
        61068.6,
        60691.9
      ],
      "resistance": [
        63235.9,
        63332.47,
        63366.38,
        63400.0,
        63800.0,
        63891.76,
        63900.0,
        64250.0,
        64265.44,
        64463.7,
        64495.9
      ]
    },
    "confluences": [
      "Wyckoff의 SOS $62,922.00와 ICT의 bullish BOS $62,942.40가 거의 같은 가격대에 위치해 $62.92k-$62.94k가 단기 구조 유지선으로 수렴한다.",
      "ICT의 추가 bullish BOS $62,840.20와 하모닉 bearish Crab TP1 $62,819.24가 근접해 $62.82k-$62.84k가 반응 가능한 중간 지지·분기점으로 겹친다.",
      "Wyckoff LPS $62,507.90, 피보나치 ret_0.786 $62,461.08, EMA120 $62,598.51, EMA20 $62,432.46가 $62.43k-$62.60k에 밀집해 핵심 구조 지지 클러스터를 형성한다.",
      "피보나치 골든비율 $62,163.45, ret_0.5 $61,954.40, ICT EQ $61,963.90, 피보나치 클러스터 $62,058.92가 $61.95k-$62.16k 평균회귀 구간으로 수렴한다.",
      "하모닉 bearish Gartley PRZ $62,497.39-$63,332.47와 ICT 뉴욕 세션 고점 $63,235.90가 겹쳐 현재가 위쪽 $63.23k-$63.33k는 단기 공급 검증 구간이다.",
      "파생 상단 청산 $63,400과 하모닉 bearish Crab PRZ 하단 $63,366.38이 근접해 $63.36k-$63.40k는 유동성 스윕 및 PRZ 반응 구간으로 중첩된다.",
      "파생 청산대 $63,800-$63,900과 하모닉 Crab PRZ 상단 $63,891.76가 거의 일치해 $63.8k-$63.9k는 강한 상단 유동성·하모닉 공급 클러스터다.",
      "EMA240 $64,265.44, ICT bearish OB 상단 $64,250.00, 7일 고점 $64,463.70, Wyckoff AR/range high $64,495.90가 $64.25k-$64.50k에 모여 상위 구조 저항대를 형성한다."
    ],
    "conflicts": [
      "Wyckoff와 ICT는 각각 축적 Phase D 및 bullish BOS를 근거로 구조를 bullish로 보지만, Fibonacci·Derivatives·Harmonic은 현재 위치가 프리미엄·PRZ·상단 유동성 구간이라는 이유로 실행 셋업을 bearish로 평가한다.",
      "Candlestick은 고거래량 strict bullish engulfing과 EMA20/EMA120 상회로 매수 반전 시도를 인정하지만, 최근 bearish harami 후보와 $64,265.44 / $64,463.70 미돌파 때문에 구조 확정은 중립으로 제한한다.",
      "하모닉은 $62,497.39-$63,332.47 및 $63,366.38-$63,891.76에서 bearish PRZ 반응을 강하게 제시하지만, 해당 신호는 독립적인 구조 전환 근거가 아니라 PRZ·TP 보조 근거로만 해석해야 한다.",
      "파생 데이터는 롱 쏠림과 CVD divergence 0.700을 경고하지만, 가격 자체는 EMA20 $62,432.46 및 EMA120 $62,598.51 위에 있어 현물 구조와 포지셔닝 리스크가 충돌한다."
    ],
    "executive_summary": "현재 BTC 1시간 구조는 Wyckoff 기준 축적 후보가 Phase D에 진입한 상태로, TERMINAL_SPRING $60,691.90 이후 SOS $62,922.00와 LPS $62,507.90가 형성된 bullish 구조로 진단한다. 다만 가격은 아직 Wyckoff range high $64,495.90 및 7일 고점 $64,463.70 위로 수용되지 않았기 때문에 Phase E 확정이 아니라, 축적 후반부에서 상단 공급을 검증하는 단계다. 구조 유지의 핵심은 $62,922.00-$62,942.40 SOS/BOS 지지와 $62,432.46-$62,598.51 EMA·LPS 클러스터이며, 상단은 $63,366.38-$63,891.76 하모닉 PRZ와 $64,250.00-$64,495.90 구조 저항이 겹친다. 실행 리스크는 프리미엄 구간, 롱 계정 쏠림, CVD divergence, 상단 청산 유동성 때문에 bullish 구조 안의 단기 공급 반응 조건으로 정의된다. $60,691.90 하회 전까지 전체 구조는 bullish로 유지하되, $62,507.90 이탈 시 Phase D의 질이 약화된다.",
    "raw_llm_response": "{\n  \"overall_signal\": \"bullish\",\n  \"overall_confidence\": 0.64,\n  \"execution_setup\": {\n    \"setup_bias\": \"bearish\",\n    \"setup_strength\": 0.64,\n    \"active_setups\": [\n      \"피보나치 관점에서 현재가 $63,078은 EQ $61,954.40 및 골든비율 $62,163.45 위의 프리미엄 구간에 위치\",\n      \"파생 관점에서 $63,400 / $63,800 / $63,900 상단 청산 유동성이 근접해 있어 단기 buy-side sweep 조건 형성\",\n      \"하모닉 관점에서 현재가는 bearish Gartley PRZ $62,497.39-$63,332.47 내부에 있으며, 상단 bearish Crab PRZ $63,366.38-$63,891.76가 대기\",\n      \"롱 계정 비중 0.632 및 롱 쏠림 1.000으로 과밀 롱 포지셔닝 위험 존재\",\n      \"ICT는 $62,942.40 / $62,840.20 상방 BOS 유지로 bullish continuation setup을 인정하지만, 현재가는 bearish OB $61,690.30-$64,250.00 내부\",\n      \"Wyckoff는 SOS $62,922.00 및 LPS $62,507.90 위에서 Phase D 축적 셋업 유지\"\n    ],\n    \"setup_vs_structure\": \"구조적 해석은 Wyckoff 축적 Phase D와 ICT bullish BOS 때문에 bullish 쪽이 우세하지만, 실행 셋업은 프리미엄 구간·하모닉 PRZ·상단 청산 유동성·롱 쏠림이 겹쳐 bearish 쪽으로 기울어져 있다. 즉, 큰 구조는 축적 후반부이나 현재 위치는 추격 매수보다 공급 반응을 먼저 검증해야 하는 구간이다.\"\n  },\n  \"signal_breakdown\": {\n    \"bullish_count\": 2,\n    \"bearish_count\": 0,\n    \"neutral_count\": 4\n  },\n  \"key_levels\": {\n    \"support\": [\n      62942.4,\n      62922.0,\n      62840.2,\n      62598.51,\n      62507.9,\n      62461.08,\n      62432.46,\n      62163.45,\n      61963.9,\n      61068.6,\n      60691.9\n    ],\n    \"resistance\": [\n      63235.9,\n      63332.47,\n      63366.38,\n      63400.0,\n      63800.0,\n      63891.76,\n      63900.0,\n      64250.0,\n      64265.44,\n      64463.7,\n      64495.9\n    ]\n  },\n  \"confluences\": [\n    \"Wyckoff의 SOS $62,922.00와 ICT의 bullish BOS $62,942.40가 거의 같은 가격대에 위치해 $62.92k-$62.94k가 단기 구조 유지선으로 수렴한다.\",\n    \"ICT의 추가 bullish BOS $62,840.20와 하모닉 bearish Crab TP1 $62,819.24가 근접해 $62.82k-$62.84k가 반응 가능한 중간 지지·분기점으로 겹친다.\",\n    \"Wyckoff LPS $62,507.90, 피보나치 ret_0.786 $62,461.08, EMA120 $62,598.51, EMA20 $62,432.46가 $62.43k-$62.60k에 밀집해 핵심 구조 지지 클러스터를 형성한다.\",\n    \"피보나치 골든비율 $62,163.45, ret_0.5 $61,954.40, ICT EQ $61,963.90, 피보나치 클러스터 $62,058.92가 $61.95k-$62.16k 평균회귀 구간으로 수렴한다.\",\n    \"하모닉 bearish Gartley PRZ $62,497.39-$63,332.47와 ICT 뉴욕 세션 고점 $63,235.90가 겹쳐 현재가 위쪽 $63.23k-$63.33k는 단기 공급 검증 구간이다.\",\n    \"파생 상단 청산 $63,400과 하모닉 bearish Crab PRZ 하단 $63,366.38이 근접해 $63.36k-$63.40k는 유동성 스윕 및 PRZ 반응 구간으로 중첩된다.\",\n    \"파생 청산대 $63,800-$63,900과 하모닉 Crab PRZ 상단 $63,891.76가 거의 일치해 $63.8k-$63.9k는 강한 상단 유동성·하모닉 공급 클러스터다.\",\n    \"EMA240 $64,265.44, ICT bearish OB 상단 $64,250.00, 7일 고점 $64,463.70, Wyckoff AR/range high $64,495.90가 $64.25k-$64.50k에 모여 상위 구조 저항대를 형성한다.\"\n  ],\n  \"conflicts\": [\n    \"Wyckoff와 ICT는 각각 축적 Phase D 및 bullish BOS를 근거로 구조를 bullish로 보지만, Fibonacci·Derivatives·Harmonic은 현재 위치가 프리미엄·PRZ·상단 유동성 구간이라는 이유로 실행 셋업을 bearish로 평가한다.\",\n    \"Candlestick은 고거래량 strict bullish engulfing과 EMA20/EMA120 상회로 매수 반전 시도를 인정하지만, 최근 bearish harami 후보와 $64,265.44 / $64,463.70 미돌파 때문에 구조 확정은 중립으로 제한한다.\",\n    \"하모닉은 $62,497.39-$63,332.47 및 $63,366.38-$63,891.76에서 bearish PRZ 반응을 강하게 제시하지만, 해당 신호는 독립적인 구조 전환 근거가 아니라 PRZ·TP 보조 근거로만 해석해야 한다.\",\n    \"파생 데이터는 롱 쏠림과 CVD divergence 0.700을 경고하지만, 가격 자체는 EMA20 $62,432.46 및 EMA120 $62,598.51 위에 있어 현물 구조와 포지셔닝 리스크가 충돌한다.\"\n  ],\n  \"highest_conviction_analyst\": \"Wyckoff Expert — ACC 적합도 0.963, acc_score 96.2로 가장 강한 구조 진단을 제시하며, SC $61,344.80 → AR $64,495.90 → ST $59,451.30 → Spring $60,363.00 → TERMINAL_SPRING $60,691.90 → SOS $62,922.00 → LPS $62,507.90의 구체적 Phase D 축적 시퀀스를 제공한다.\",\n  \"invalidation_level\": \"$60,691.90 하회 시 TERMINAL_SPRING 저점 이탈로 현재 bullish accumulation 해석은 무효화된다. 선행 경고선은 LPS $62,507.90 및 ICT BOS 지지 $62,840.20-$62,942.40 이탈이다.\",\n  \"executive_summary\": \"현재 BTC 1시간 구조는 Wyckoff 기준 축적 후보가 Phase D에 진입한 상태로, TERMINAL_SPRING $60,691.90 이후 SOS $62,922.00와 LPS $62,507.90가 형성된 bullish 구조로 진단한다. 다만 가격은 아직 Wyckoff range high $64,495.90 및 7일 고점 $64,463.70 위로 수용되지 않았기 때문에 Phase E 확정이 아니라, 축적 후반부에서 상단 공급을 검증하는 단계다. 구조 유지의 핵심은 $62,922.00-$62,942.40 SOS/BOS 지지와 $62,432.46-$62,598.51 EMA·LPS 클러스터이며, 상단은 $63,366.38-$63,891.76 하모닉 PRZ와 $64,250.00-$64,495.90 구조 저항이 겹친다. 실행 리스크는 프리미엄 구간, 롱 계정 쏠림, CVD divergence, 상단 청산 유동성 때문에 bullish 구조 안의 단기 공급 반응 조건으로 정의된다. $60,691.90 하회 전까지 전체 구조는 bullish로 유지하되, $62,507.90 이탈 시 Phase D의 질이 약화된다.\"\n}"
  },
  "overall_signal": "bullish",
  "overall_confidence": 0.64,
  "operating_path": {
    "path_type": "complex",
    "confidence": 0.57,
    "waypoints": [
      {
        "seq": 1,
        "price": 63400.0,
        "type": "liquidity_sweep",
        "source": "Derivatives(상단 청산 $63,400), Harmonic(Crab PRZ 하단 $63,366.38 / Gartley PRZ 상단 $63,332.47), ICT(뉴욕 세션 고점 $63,235.90)",
        "description": "구조는 bullish이나 실행 셋업이 bearish(강도 0.64)이므로 추격 매수가 아닌 공급 검증을 먼저 둔다. 현재가 $63,078은 확인 반응이 나온 bearish Gartley PRZ($62,497-$63,332) 내부이고, 바로 위 $63,366-$63,400에 Crab PRZ 하단과 파생 상단 청산 유동성이 중첩된다. 과밀 롱(쏠림 1.000)의 buy-side 유동성을 회수하기 위해 ICT 뉴욕 고점 $63,235.90을 경유해 $63,332 Gartley 상단과 $63,400 청산대를 찌르는 움직임이 첫 경로다. 수용이 아닌 유동성 그랩 성격으로, CVD divergence 0.700과 함께 실패 확률이 높다.",
        "est_hours": 3.0,
        "turning_zone": [
          63400.0,
          63629.07
        ],
        "likely_wick": 63500.0,
        "rejection_confirm": 63235.9,
        "invalid_overshoot": 63832.5,
        "calibration_reasoning": "$63,400 청산 유동성과 ICT NY고점·Gartley 상단을 스윕하는 구간으로, 상단 경계는 미확정 pre-confirmation Crab PRZ($63,629.07)를 조건부 반응 경계로만 사용(웨이포인트 이동 없음). 폭 0.52×ATR, 라운드 $63,500이 자석. CVD 다이버전스 0.700으로 실패 확률이 높아 $63,235.9 재이탈 시 거절 확인, 확정 Crab 공급 $63,832.5 수용 시 무효화."
      },
      {
        "seq": 2,
        "price": 62461.08,
        "type": "support_test",
        "source": "Fibonacci(ret_0.786 $62,461.08, 골든비율 $62,163.45), Wyckoff(LPS $62,507.90), Candlestick/Derivatives(EMA20 $62,432.46, EMA120 $62,598.51)",
        "description": "$63,400 buy-side 스윕 실패 후 bearish 셋업(프리미엄 fade + 롱 언와인딩 + CVD divergence)이 실현되며 핵심 지지 클러스터로 되돌림. Wyckoff LPS $62,507.90, fib ret_0.786 $62,461.08, EMA20 $62,432.46가 밀집한 $62.43k-$62.51k를 테스트하며 LPS 하단 sell-side 유동성을 흡수한다. 이 클러스터가 방어되면 Phase D 축적 질이 유지되어 다음 상승의 발판이 된다(이 지점이 24h 저점 후보).",
        "est_hours": 10.0,
        "turning_zone": [
          62163.45,
          62461.08
        ],
        "likely_wick": 62318.93,
        "rejection_confirm": 62598.51,
        "invalid_overshoot": 61963.9,
        "calibration_reasoning": "LPS $62,507.9·0.786 fib $62,461·EMA20 $62,432 밀집대 하단으로 sell-side 유동성을 흡수하는 지지 테스트. 확정 Crab TP2(AD0.618=$62,318.93)가 클러스터 직하에 정렬되어 likely_wick 앵커로 채택, 하단은 0.618 황금비 $62,163.45까지 확장(유동성 자석, 폭 0.67×ATR). $62,598.51 재탈환 시 스프링 방어 확인, $61,963.9 수용 시 무효(Gartley TP1 $61,857 경로 개방)."
      },
      {
        "seq": 3,
        "price": 64265.44,
        "type": "resistance_test",
        "source": "Wyckoff(range high $64,495.90, Phase E 공급 테스트), ICT(bearish OB 상단 $64,250.00), EMA240 $64,265.44, 7일 고점 $64,463.70",
        "description": "지지 클러스터 방어 후 LPS/SOS 재확인을 거쳐 Wyckoff Phase D→E 전개로 상단 공급을 검증한다. 경로상 $63,800-$63,891 Crab PRZ 상단 공급을 돌파해야 하며, 최종적으로 EMA240 $64,265.44 + ICT bearish OB 상단 $64,250 + 7일 고점 $64,463.70 + Wyckoff range high $64,495.90이 겹친 $64.25k-$64.50k 구조 저항대를 테스트한다. 이 구간 수용 전까지는 구조 확정이 아닌 공급 반응 위험이 상존한다.",
        "est_hours": 22.0,
        "turning_zone": [
          64265.44,
          64550.0
        ],
        "likely_wick": 64500.0,
        "rejection_confirm": 63891.76,
        "invalid_overshoot": 64600.0,
        "calibration_reasoning": "EMA240 $64,265.44·ICT OB $64,250·7일고점 $64,463.7·Wyckoff range high $64,495.9가 중첩된 $64.25-64.50k 구조 저항. 터미널이라 0.64×ATR로 넓히고 상단은 range-high 위 buy-side 유동성 스윕까지 포함. likely_wick은 라운드 $64,500이자 Wyckoff range high에 정렬. 돌파했던 Crab 공급 $63,891.76 재이탈 시 공급 거절 확인, $64,600 수용 시 구조 확정으로 거절 무효."
      }
    ],
    "period_extremes": {
      "4h": {
        "expected_high": 63400.0,
        "expected_low": 62922.0,
        "high_first": true
      },
      "8h": {
        "expected_high": 63400.0,
        "expected_low": 62507.9,
        "high_first": true
      },
      "24h": {
        "expected_high": 64265.44,
        "expected_low": 62461.08,
        "high_first": false
      }
    },
    "triggers": {
      "bullish": {
        "price": 63891.76,
        "description": "1h 종가 기준 $63,800-$63,900 파생 청산대 + 하모닉 Crab PRZ 상단 $63,891.76를 수용하면 WP2 fade를 건너뛰고 $64,265-$64,495 구조 저항으로 직행하는 bullish 가속. 셋업의 bearish 가정이 무효화되는 신호."
      },
      "bearish": {
        "price": 62432.46,
        "description": "EMA20 겸 지지 클러스터 하단 $62,432.46 상실 시 Phase D 질 약화. fade가 base case($62,461)를 넘어 골든비율 $62,163.45 → ret_0.5 $61,954.40 → $61,068.60으로 확대되는 bearish 가속."
      }
    },
    "scenario_invalidation": 60691.9,
    "raw_llm_response": "```json\n{\n  \"path_type\": \"complex\",\n  \"confidence\": 0.57,\n  \"waypoints\": [\n    {\n      \"seq\": 1,\n      \"price\": 63400.0,\n      \"type\": \"liquidity_sweep\",\n      \"source\": \"Derivatives(상단 청산 $63,400), Harmonic(Crab PRZ 하단 $63,366.38 / Gartley PRZ 상단 $63,332.47), ICT(뉴욕 세션 고점 $63,235.90)\",\n      \"description\": \"구조는 bullish이나 실행 셋업이 bearish(강도 0.64)이므로 추격 매수가 아닌 공급 검증을 먼저 둔다. 현재가 $63,078은 확인 반응이 나온 bearish Gartley PRZ($62,497-$63,332) 내부이고, 바로 위 $63,366-$63,400에 Crab PRZ 하단과 파생 상단 청산 유동성이 중첩된다. 과밀 롱(쏠림 1.000)의 buy-side 유동성을 회수하기 위해 ICT 뉴욕 고점 $63,235.90을 경유해 $63,332 Gartley 상단과 $63,400 청산대를 찌르는 움직임이 첫 경로다. 수용이 아닌 유동성 그랩 성격으로, CVD divergence 0.700과 함께 실패 확률이 높다.\",\n      \"est_hours\": 3.0\n    },\n    {\n      \"seq\": 2,\n      \"price\": 62461.08,\n      \"type\": \"support_test\",\n      \"source\": \"Fibonacci(ret_0.786 $62,461.08, 골든비율 $62,163.45), Wyckoff(LPS $62,507.90), Candlestick/Derivatives(EMA20 $62,432.46, EMA120 $62,598.51)\",\n      \"description\": \"$63,400 buy-side 스윕 실패 후 bearish 셋업(프리미엄 fade + 롱 언와인딩 + CVD divergence)이 실현되며 핵심 지지 클러스터로 되돌림. Wyckoff LPS $62,507.90, fib ret_0.786 $62,461.08, EMA20 $62,432.46가 밀집한 $62.43k-$62.51k를 테스트하며 LPS 하단 sell-side 유동성을 흡수한다. 이 클러스터가 방어되면 Phase D 축적 질이 유지되어 다음 상승의 발판이 된다(이 지점이 24h 저점 후보).\",\n      \"est_hours\": 10.0\n    },\n    {\n      \"seq\": 3,\n      \"price\": 64265.44,\n      \"type\": \"resistance_test\",\n      \"source\": \"Wyckoff(range high $64,495.90, Phase E 공급 테스트), ICT(bearish OB 상단 $64,250.00), EMA240 $64,265.44, 7일 고점 $64,463.70\",\n      \"description\": \"지지 클러스터 방어 후 LPS/SOS 재확인을 거쳐 Wyckoff Phase D→E 전개로 상단 공급을 검증한다. 경로상 $63,800-$63,891 Crab PRZ 상단 공급을 돌파해야 하며, 최종적으로 EMA240 $64,265.44 + ICT bearish OB 상단 $64,250 + 7일 고점 $64,463.70 + Wyckoff range high $64,495.90이 겹친 $64.25k-$64.50k 구조 저항대를 테스트한다. 이 구간 수용 전까지는 구조 확정이 아닌 공급 반응 위험이 상존한다.\",\n      \"est_hours\": 22.0\n    }\n  ],\n  \"period_extremes\": {\n    \"4h\":  {\"expected_high\": 63400.0, \"expected_low\": 62922.0, \"high_first\": true},\n    \"8h\":  {\"expected_high\": 63400.0, \"expected_low\": 62507.9, \"high_first\": true},\n    \"24h\": {\"expected_high\": 64265.44, \"expected_low\": 62461.08, \"high_first\": false}\n  },\n  \"triggers\": {\n    \"bullish\": {\"price\": 63891.76, \"description\": \"1h 종가 기준 $63,800-$63,900 파생 청산대 + 하모닉 Crab PRZ 상단 $63,891.76를 수용하면 WP2 fade를 건너뛰고 $64,265-$64,495 구조 저항으로 직행하는 bullish 가속. 셋업의 bearish 가정이 무효화되는 신호.\"},\n    \"bearish\": {\"price\": 62432.46, \"description\": \"EMA20 겸 지지 클러스터 하단 $62,432.46 상실 시 Phase D 질 약화. fade가 base case($62,461)를 넘어 골든비율 $62,163.45 → ret_0.5 $61,954.40 → $61,068.60으로 확대되는 bearish 가속.\"}\n  },\n  \"scenario_invalidation\": 60691.9\n}\n```"
  },
  "tp_calibration": {
    "calibrated_waypoints": [
      {
        "seq": 1,
        "base_target": 63400.0,
        "turning_zone": [
          63400.0,
          63629.07
        ],
        "likely_wick": 63500.0,
        "rejection_confirm": 63235.9,
        "invalid_overshoot": 63832.5,
        "calibration_reasoning": "$63,400 청산 유동성과 ICT NY고점·Gartley 상단을 스윕하는 구간으로, 상단 경계는 미확정 pre-confirmation Crab PRZ($63,629.07)를 조건부 반응 경계로만 사용(웨이포인트 이동 없음). 폭 0.52×ATR, 라운드 $63,500이 자석. CVD 다이버전스 0.700으로 실패 확률이 높아 $63,235.9 재이탈 시 거절 확인, 확정 Crab 공급 $63,832.5 수용 시 무효화."
      },
      {
        "seq": 2,
        "base_target": 62461.08,
        "turning_zone": [
          62163.45,
          62461.08
        ],
        "likely_wick": 62318.93,
        "rejection_confirm": 62598.51,
        "invalid_overshoot": 61963.9,
        "calibration_reasoning": "LPS $62,507.9·0.786 fib $62,461·EMA20 $62,432 밀집대 하단으로 sell-side 유동성을 흡수하는 지지 테스트. 확정 Crab TP2(AD0.618=$62,318.93)가 클러스터 직하에 정렬되어 likely_wick 앵커로 채택, 하단은 0.618 황금비 $62,163.45까지 확장(유동성 자석, 폭 0.67×ATR). $62,598.51 재탈환 시 스프링 방어 확인, $61,963.9 수용 시 무효(Gartley TP1 $61,857 경로 개방)."
      },
      {
        "seq": 3,
        "base_target": 64265.44,
        "turning_zone": [
          64265.44,
          64550.0
        ],
        "likely_wick": 64500.0,
        "rejection_confirm": 63891.76,
        "invalid_overshoot": 64600.0,
        "calibration_reasoning": "EMA240 $64,265.44·ICT OB $64,250·7일고점 $64,463.7·Wyckoff range high $64,495.9가 중첩된 $64.25-64.50k 구조 저항. 터미널이라 0.64×ATR로 넓히고 상단은 range-high 위 buy-side 유동성 스윕까지 포함. likely_wick은 라운드 $64,500이자 Wyckoff range high에 정렬. 돌파했던 Crab 공급 $63,891.76 재이탈 시 공급 거절 확인, $64,600 수용 시 구조 확정으로 거절 무효."
      }
    ],
    "raw_llm_response": "```json\n{\n  \"calibrated_waypoints\": [\n    {\n      \"seq\": 1,\n      \"base_target\": 63400.00,\n      \"turning_zone\": [63400.00, 63629.07],\n      \"likely_wick\": 63500.00,\n      \"rejection_confirm\": 63235.90,\n      \"invalid_overshoot\": 63832.50,\n      \"calibration_reasoning\": \"$63,400 청산 유동성과 ICT NY고점·Gartley 상단을 스윕하는 구간으로, 상단 경계는 미확정 pre-confirmation Crab PRZ($63,629.07)를 조건부 반응 경계로만 사용(웨이포인트 이동 없음). 폭 0.52×ATR, 라운드 $63,500이 자석. CVD 다이버전스 0.700으로 실패 확률이 높아 $63,235.9 재이탈 시 거절 확인, 확정 Crab 공급 $63,832.5 수용 시 무효화.\"\n    },\n    {\n      \"seq\": 2,\n      \"base_target\": 62461.08,\n      \"turning_zone\": [62163.45, 62461.08],\n      \"likely_wick\": 62318.93,\n      \"rejection_confirm\": 62598.51,\n      \"invalid_overshoot\": 61963.90,\n      \"calibration_reasoning\": \"LPS $62,507.9·0.786 fib $62,461·EMA20 $62,432 밀집대 하단으로 sell-side 유동성을 흡수하는 지지 테스트. 확정 Crab TP2(AD0.618=$62,318.93)가 클러스터 직하에 정렬되어 likely_wick 앵커로 채택, 하단은 0.618 황금비 $62,163.45까지 확장(유동성 자석, 폭 0.67×ATR). $62,598.51 재탈환 시 스프링 방어 확인, $61,963.9 수용 시 무효(Gartley TP1 $61,857 경로 개방).\"\n    },\n    {\n      \"seq\": 3,\n      \"base_target\": 64265.44,\n      \"turning_zone\": [64265.44, 64550.00],\n      \"likely_wick\": 64500.00,\n      \"rejection_confirm\": 63891.76,\n      \"invalid_overshoot\": 64600.00,\n      \"calibration_reasoning\": \"EMA240 $64,265.44·ICT OB $64,250·7일고점 $64,463.7·Wyckoff range high $64,495.9가 중첩된 $64.25-64.50k 구조 저항. 터미널이라 0.64×ATR로 넓히고 상단은 range-high 위 buy-side 유동성 스윕까지 포함. likely_wick은 라운드 $64,500이자 Wyckoff range high에 정렬. 돌파했던 Crab 공급 $63,891.76 재이탈 시 공급 거절 확인, $64,600 수용 시 구조 확정으로 거절 무효.\"\n    }\n  ]\n}\n```"
  },
  "timing": {
    "stages": {
      "stage1_agents": 27.4,
      "chairman": 45.4,
      "operating_path": 266.7,
      "tp_calibrator": 253.0
    },
    "agents": {},
    "total_s": 592.6
  }
}