{
  "symbol": "BTC/USDT",
  "timeframe": "1h",
  "timestamp": "2026-06-05 17:00 KST",
  "last_price": 63070.9,
  "num_candles": 300,
  "stage1_analyses": {
    "candlestick": {
      "agent_id": "candlestick",
      "display_name": "Candlestick Reader",
      "signal": "bullish",
      "confidence": 0.62,
      "structure_bias": "bearish",
      "setup_bias": "bullish",
      "setup_score": 0.72,
      "setup_signals": [
        "가격 $63,070.90은 7일 고점 $74,293.10과 7일 저점 $61,067.60의 EQ 약 $67,680.35 아래에 위치한 할인 구간",
        "최근 bullish_engulfing@299와 morning_star@299가 동시에 감지되었고 둘 다 고거래량 패턴으로 분류됨",
        "best_pattern_quality 0.744의 strict morning_star가 저점권 반등 시그널로 작동",
        "bull_score 4.55가 bear_score 2.30보다 우위이나, 아직 EMA120 $67,309.90 및 EQ $67,680.35 상향 회복 전이라 구조 전환은 미확정",
        "현재가 $63,070.90은 EMA20 $63,263.26 바로 아래에 있어 단기 확인 저항을 테스트 중"
      ],
      "reasoning": "현재 BTC는 $63,070.90으로 EMA20 $63,263.26을 소폭 하회하고, EMA120 $67,309.90 및 EMA240 $70,138.78 아래에 있어 확인된 구조는 여전히 하락 우위입니다. 다만 7일 저점 $61,067.60 부근에서 strict 등급의 morning_star 품질 0.744와 bullish_engulfing 품질 0.719가 고거래량으로 발생해 단기 반등 setup은 강합니다. 최근 5개 캔들에서도 -2.0%, -0.6% 하락 이후 +1.9% 양봉이 출현해 매도 압력 흡수 후 반등 시도가 확인됩니다. 구조적 강세 전환을 말하려면 최소 EMA20 $63,263.26 회복 후 $67,309.90~$67,680.35 구간 돌파와 안착이 필요합니다.",
      "key_levels": {
        "support": [
          61067.6,
          62128.66,
          63070.9
        ],
        "resistance": [
          63263.26,
          67309.9,
          67680.35,
          70138.78,
          74293.1
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$61,067.60",
      "risk_scenario": "만약 $61,067.60을 하향 이탈하면 morning_star와 bullish_engulfing 기반의 저점 반등 setup은 실패로 간주되며, 하락 구조가 재개되어 ATR 기준 약 $60,125 부근까지 추가 변동성이 확대될 수 있습니다. 반대로 $63,263.26 EMA20을 회복하고 유지하면 단기 숏커버링으로 $67,309.90~$67,680.35 저항대 테스트 가능성이 커집니다.",
      "data_quality": "medium",
      "metrics": {
        "total_patterns_detected": 104,
        "recent_patterns": 10,
        "pattern_list": [
          "hammer@291",
          "bullish_engulfing@290",
          "bearish_engulfing@292",
          "bearish_engulfing@297",
          "bullish_engulfing@299",
          "evening_star@292",
          "morning_star@296",
          "morning_star@299",
          "doji@293",
          "bullish_harami@295"
        ],
        "atr_value": 942.24,
        "vol_avg_20": 14797.42,
        "high_volume_patterns": [
          "bullish_engulfing",
          "morning_star"
        ],
        "pattern_candidates": [
          {
            "pattern": "morning_star",
            "signal": "bullish",
            "pattern_quality": 0.744,
            "tier": "strict",
            "high_volume": true
          },
          {
            "pattern": "bullish_engulfing",
            "signal": "bullish",
            "pattern_quality": 0.719,
            "tier": "strict",
            "high_volume": true
          },
          {
            "pattern": "evening_star",
            "signal": "bearish",
            "pattern_quality": 0.64,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "bearish_engulfing",
            "signal": "bearish",
            "pattern_quality": 0.615,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "bearish_engulfing",
            "signal": "bearish",
            "pattern_quality": 0.501,
            "tier": "candidate",
            "high_volume": false
          }
        ],
        "best_pattern_quality": 0.744,
        "bull_score": 4.55,
        "bear_score": 2.3
      },
      "raw_llm_response": "{\n  \"signal\": \"bullish\",\n  \"confidence\": 0.62,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.72,\n  \"setup_signals\": [\n    \"가격 $63,070.90은 7일 고점 $74,293.10과 7일 저점 $61,067.60의 EQ 약 $67,680.35 아래에 위치한 할인 구간\",\n    \"최근 bullish_engulfing@299와 morning_star@299가 동시에 감지되었고 둘 다 고거래량 패턴으로 분류됨\",\n    \"best_pattern_quality 0.744의 strict morning_star가 저점권 반등 시그널로 작동\",\n    \"bull_score 4.55가 bear_score 2.30보다 우위이나, 아직 EMA120 $67,309.90 및 EQ $67,680.35 상향 회복 전이라 구조 전환은 미확정\",\n    \"현재가 $63,070.90은 EMA20 $63,263.26 바로 아래에 있어 단기 확인 저항을 테스트 중\"\n  ],\n  \"reasoning\": \"현재 BTC는 $63,070.90으로 EMA20 $63,263.26을 소폭 하회하고, EMA120 $67,309.90 및 EMA240 $70,138.78 아래에 있어 확인된 구조는 여전히 하락 우위입니다. 다만 7일 저점 $61,067.60 부근에서 strict 등급의 morning_star 품질 0.744와 bullish_engulfing 품질 0.719가 고거래량으로 발생해 단기 반등 setup은 강합니다. 최근 5개 캔들에서도 -2.0%, -0.6% 하락 이후 +1.9% 양봉이 출현해 매도 압력 흡수 후 반등 시도가 확인됩니다. 구조적 강세 전환을 말하려면 최소 EMA20 $63,263.26 회복 후 $67,309.90~$67,680.35 구간 돌파와 안착이 필요합니다.\",\n  \"key_levels\": {\n    \"support\": [\n      61067.6,\n      62128.66,\n      63070.9\n    ],\n    \"resistance\": [\n      63263.26,\n      67309.9,\n      67680.35,\n      70138.78,\n      74293.1\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$61,067.60\",\n  \"risk_scenario\": \"만약 $61,067.60을 하향 이탈하면 morning_star와 bullish_engulfing 기반의 저점 반등 setup은 실패로 간주되며, 하락 구조가 재개되어 ATR 기준 약 $60,125 부근까지 추가 변동성이 확대될 수 있습니다. 반대로 $63,263.26 EMA20을 회복하고 유지하면 단기 숏커버링으로 $67,309.90~$67,680.35 저항대 테스트 가능성이 커집니다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "fibonacci": {
      "agent_id": "fibonacci",
      "display_name": "Fibonacci Analyst",
      "signal": "bullish",
      "confidence": 0.6,
      "structure_bias": "neutral",
      "setup_bias": "bullish",
      "setup_score": 0.65,
      "setup_signals": [
        "현재가 $63,070.90이 스윙 EQ인 ret_0.5 $63,307.25 아래에 위치해 단기 할인 구간에 있음",
        "0.618 골든비율 지지선 $63,034.33을 0.06% 거리에서 테스트 중",
        "$63,170.79 부근에 ret_0.618과 ret_0.5가 겹치는 피보나치 컨플루언스 존 형성, cluster_score 0.6",
        "fib_reaction_state가 testing이며 reaction_probability가 0.65로 단기 반등 셋업이 활성화됨",
        "하단 보조 지지로 ret_0.786 $62,645.76이 남아 있어 손익비 기준의 방어 구간이 명확함"
      ],
      "reasoning": "확정 구조 관점에서는 명확한 BOS나 CHoCH가 제시되지 않았고, 현재가 $63,070.90이 EMA20 $63,263.26 및 EMA120 $67,309.90 아래에 있어 structure_bias는 중립으로 판단한다. 다만 셋업 관점에서는 가격이 ret_0.618 골든비율 $63,034.33을 거의 정확히 테스트하고 있으며, 현재 거리도 0.06%에 불과해 단기 반등 가능성이 우세하다. 스윙 Low $62,151 → High $64,464 기준으로 EQ인 ret_0.5 $63,307.25 아래에 있어 할인 구간이며, $63,170.79 컨플루언스 존이 지지 반응을 강화한다. 상방 확인은 $63,307.25 회복 후 ret_0.382 $63,580.17 돌파이며, 그 위로는 $63,917.86 및 확장 목표 $65,092.81이 다음 저항이다.",
      "key_levels": {
        "support": [
          63034.33,
          62645.76,
          62151
        ],
        "resistance": [
          63307.25,
          63580.17,
          63917.86,
          65092.81,
          65421.24,
          65893.07
        ]
      },
      "time_horizon": "단기, 1시간봉 기준",
      "invalidation_level": "$62,645.76",
      "risk_scenario": "가격이 ret_0.618 $63,034.33을 이탈하고 ret_0.786 $62,645.76 아래로 내려가면 골든비율 반등 셋업은 실패로 전환된다. 이 경우 스윙 저점 $62,151 재테스트 가능성이 커지며, $61,067.60의 7일 저점까지 유동성 탐색이 이어질 수 있다.",
      "data_quality": "medium",
      "metrics": {
        "swing_pair": "Low→High: $62,151 → $64,464",
        "direction": "up",
        "nearest_fib": "ret_0.618",
        "nearest_fib_price": 63034.33,
        "nearest_fib_distance": 0.06,
        "golden_ratio_level": 63034.33,
        "fib_ret_382": 63580.17,
        "fib_ret_618": 63034.33,
        "confluence_zones": [
          {
            "price": 63170.79,
            "count": 2,
            "levels": [
              "ret_0.618",
              "ret_0.5"
            ],
            "cluster_score": 0.6
          },
          {
            "price": 65087.33,
            "count": 2,
            "levels": [
              "ret_0.236",
              "ext_1.272"
            ],
            "cluster_score": 0.6
          }
        ],
        "support_levels": [
          63034.3278,
          62645.7606
        ],
        "resistance_levels": [
          63307.25,
          63580.1722,
          63917.855599999995
        ],
        "level_candidates": [
          {
            "name": "ret_0.236",
            "price": 63917.86,
            "distance_pct": 1.34,
            "is_support": false,
            "cluster_score": 0.0
          },
          {
            "name": "ret_0.382",
            "price": 63580.17,
            "distance_pct": 0.81,
            "is_support": false,
            "cluster_score": 0.0
          },
          {
            "name": "ret_0.5",
            "price": 63307.25,
            "distance_pct": 0.37,
            "is_support": false,
            "cluster_score": 0.6
          },
          {
            "name": "ret_0.618",
            "price": 63034.33,
            "distance_pct": 0.06,
            "is_support": true,
            "cluster_score": 0.6
          },
          {
            "name": "ret_0.786",
            "price": 62645.76,
            "distance_pct": 0.67,
            "is_support": true,
            "cluster_score": 0.0
          },
          {
            "name": "ext_1.0",
            "price": 64463.7,
            "distance_pct": 2.21,
            "is_support": false,
            "cluster_score": 0.0
          },
          {
            "name": "ext_1.272",
            "price": 65092.81,
            "distance_pct": 3.21,
            "is_support": false,
            "cluster_score": 0.6
          },
          {
            "name": "ext_1.414",
            "price": 65421.24,
            "distance_pct": 3.73,
            "is_support": false,
            "cluster_score": 0.0
          },
          {
            "name": "ext_1.618",
            "price": 65893.07,
            "distance_pct": 4.47,
            "is_support": false,
            "cluster_score": 0.0
          },
          {
            "name": "ext_2.0",
            "price": 66776.6,
            "distance_pct": 5.88,
            "is_support": false,
            "cluster_score": 0.0
          }
        ],
        "confluence_quality": 0.6,
        "fib_reaction_state": "testing",
        "reaction_probability": 0.65
      },
      "raw_llm_response": "{\n  \"signal\": \"bullish\",\n  \"confidence\": 0.6,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.65,\n  \"setup_signals\": [\n    \"현재가 $63,070.90이 스윙 EQ인 ret_0.5 $63,307.25 아래에 위치해 단기 할인 구간에 있음\",\n    \"0.618 골든비율 지지선 $63,034.33을 0.06% 거리에서 테스트 중\",\n    \"$63,170.79 부근에 ret_0.618과 ret_0.5가 겹치는 피보나치 컨플루언스 존 형성, cluster_score 0.6\",\n    \"fib_reaction_state가 testing이며 reaction_probability가 0.65로 단기 반등 셋업이 활성화됨\",\n    \"하단 보조 지지로 ret_0.786 $62,645.76이 남아 있어 손익비 기준의 방어 구간이 명확함\"\n  ],\n  \"reasoning\": \"확정 구조 관점에서는 명확한 BOS나 CHoCH가 제시되지 않았고, 현재가 $63,070.90이 EMA20 $63,263.26 및 EMA120 $67,309.90 아래에 있어 structure_bias는 중립으로 판단한다. 다만 셋업 관점에서는 가격이 ret_0.618 골든비율 $63,034.33을 거의 정확히 테스트하고 있으며, 현재 거리도 0.06%에 불과해 단기 반등 가능성이 우세하다. 스윙 Low $62,151 → High $64,464 기준으로 EQ인 ret_0.5 $63,307.25 아래에 있어 할인 구간이며, $63,170.79 컨플루언스 존이 지지 반응을 강화한다. 상방 확인은 $63,307.25 회복 후 ret_0.382 $63,580.17 돌파이며, 그 위로는 $63,917.86 및 확장 목표 $65,092.81이 다음 저항이다.\",\n  \"key_levels\": {\n    \"support\": [\n      63034.33,\n      62645.76,\n      62151\n    ],\n    \"resistance\": [\n      63307.25,\n      63580.17,\n      63917.86,\n      65092.81,\n      65421.24,\n      65893.07\n    ]\n  },\n  \"time_horizon\": \"단기, 1시간봉 기준\",\n  \"invalidation_level\": \"$62,645.76\",\n  \"risk_scenario\": \"가격이 ret_0.618 $63,034.33을 이탈하고 ret_0.786 $62,645.76 아래로 내려가면 골든비율 반등 셋업은 실패로 전환된다. 이 경우 스윙 저점 $62,151 재테스트 가능성이 커지며, $61,067.60의 7일 저점까지 유동성 탐색이 이어질 수 있다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "ict": {
      "agent_id": "ict",
      "display_name": "ICT Trader",
      "signal": "bearish",
      "confidence": 0.8,
      "structure_bias": "bearish",
      "setup_bias": "bearish",
      "setup_score": 0.902,
      "setup_signals": [
        "현재가 $63,070.90가 EQ $64,280.70 아래 discount에 머물며 EQ 회복 실패 시 약세 지속 셋업",
        "EMA20 $63,263.26 바로 아래에서 거래되어 단기 평균선 저항 가능성 존재",
        "이전일 저가 $61,344.80가 이미 하향 이탈되어 sell-side liquidity가 공격된 상태",
        "활성 bullish OB와 미체결 bullish FVG가 모두 없어 $61,067.60 저점 위에서 즉각적인 기관 매수 근거가 약함",
        "확정 bearish BOS 레벨 $73,130.10 이후 구조적으로 하락 추세가 유지됨"
      ],
      "reasoning": "확정 구조는 bearish입니다. 최근 구조 이벤트가 CHoCH_bearish $76,434.00 이후 CHoCH_bullish $73,932.20가 있었지만 최종적으로 BOS_bearish $73,130.10이 발생했고, 현재가는 EMA120 $67,309.90 및 EMA240 $70,138.78 아래에 있어 기관 흐름은 여전히 하방입니다. 현재 가격 $63,070.90는 EQ $64,280.70 아래 discount 구간이라 신규 숏 추격에는 반등 리스크가 있지만, 활성 bullish OB와 미체결 bullish FVG가 없고 이전일 저가 $61,344.80가 이미 깨진 점은 약세 셋업을 지지합니다. 단기적으로는 EMA20 $63,263.26 및 EQ $64,280.70 회복 실패 시 $61,344.80, $61,067.60 재공격 가능성이 높습니다.",
      "key_levels": {
        "support": [
          61344.8,
          61067.6
        ],
        "resistance": [
          63263.26,
          64280.7,
          66880.0,
          67493.8,
          73130.1,
          74271.55,
          76682.3,
          78077.1
        ]
      },
      "time_horizon": "short to medium term",
      "invalidation_level": "$67,493.80 상향 돌파 및 수용",
      "risk_scenario": "반대 시나리오는 $61,067.60 저점 아래 유동성만 스윕하고 빠르게 $64,280.70 EQ 위로 회복하는 경우입니다. 이 경우 sell-side sweep 이후 bullish CHoCH가 발생할 수 있으며, $66,880.00 이전일 고점과 $67,493.80 range high까지 되돌림이 열립니다.",
      "data_quality": "medium",
      "metrics": {
        "order_blocks_total": 1,
        "confirmed_bullish_ob": 0,
        "confirmed_bearish_ob": 0,
        "candidate_bullish_ob": 0,
        "candidate_bearish_ob": 1,
        "active_bullish_ob": 0,
        "active_bearish_ob": 0,
        "nearest_bull_ob_range": null,
        "nearest_bear_ob_range": {
          "bottom": 76682.3,
          "top": 78077.1,
          "quality": "candidate",
          "score": 0.706
        },
        "active_bullish_ob_list": [],
        "active_bearish_ob_list": [],
        "ob_mitigated_count": 1,
        "unfilled_bull_fvg_count": 0,
        "unfilled_bear_fvg_count": 0,
        "bull_fvg_ranges": [],
        "bear_fvg_ranges": [],
        "fvg_open_count": 0,
        "fvg_mitigated_count": 55,
        "fvg_open_zones": [],
        "bos_choch_events": [
          "CHoCH_bearish",
          "CHoCH_bullish",
          "BOS_bearish"
        ],
        "bos_choch_levels": [
          {
            "type": "CHoCH_bearish",
            "level": 76434.0
          },
          {
            "type": "CHoCH_bullish",
            "level": 73932.2
          },
          {
            "type": "BOS_bearish",
            "level": 73130.1
          }
        ],
        "bos_sequence": [
          "CHoCH_bearish",
          "CHoCH_bullish",
          "BOS_bearish"
        ],
        "consecutive_bull_bos": 0,
        "consecutive_bear_bos": 1,
        "recent_liq_sweeps": [],
        "recent_sweep_levels": [],
        "liquidity_resting": [
          {
            "type": "BSL",
            "level": 74271.55
          }
        ],
        "current_zone": "discount",
        "eq_level": 64280.7,
        "range_high": 67493.8,
        "range_low": 61067.6,
        "bull_score": 2.7,
        "bear_score": 6.0,
        "setup_bias": "bearish",
        "setup_score": 0.902,
        "setup_signals": [
          "bearish CHoCH below $76,434.00",
          "bearish BOS below $73,130.10",
          "broken previous day low $61,344.80"
        ],
        "retracement_direction": "bearish",
        "current_retracement_pct": 9.8,
        "deepest_retracement_pct": 26.3,
        "previous_day_high": 66880.0,
        "previous_day_low": 61344.8,
        "broken_prev_high": false,
        "broken_prev_low": true,
        "sessions": {
          "London": {
            "active": true,
            "high": 63955.0,
            "low": 61067.6
          },
          "New York": {
            "active": true,
            "high": 63674.9,
            "low": 61067.6
          },
          "Asian kill zone": {
            "active": false,
            "high": null,
            "low": null
          }
        }
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.8,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.902,\n  \"setup_signals\": [\n    \"현재가 $63,070.90가 EQ $64,280.70 아래 discount에 머물며 EQ 회복 실패 시 약세 지속 셋업\",\n    \"EMA20 $63,263.26 바로 아래에서 거래되어 단기 평균선 저항 가능성 존재\",\n    \"이전일 저가 $61,344.80가 이미 하향 이탈되어 sell-side liquidity가 공격된 상태\",\n    \"활성 bullish OB와 미체결 bullish FVG가 모두 없어 $61,067.60 저점 위에서 즉각적인 기관 매수 근거가 약함\",\n    \"확정 bearish BOS 레벨 $73,130.10 이후 구조적으로 하락 추세가 유지됨\"\n  ],\n  \"reasoning\": \"확정 구조는 bearish입니다. 최근 구조 이벤트가 CHoCH_bearish $76,434.00 이후 CHoCH_bullish $73,932.20가 있었지만 최종적으로 BOS_bearish $73,130.10이 발생했고, 현재가는 EMA120 $67,309.90 및 EMA240 $70,138.78 아래에 있어 기관 흐름은 여전히 하방입니다. 현재 가격 $63,070.90는 EQ $64,280.70 아래 discount 구간이라 신규 숏 추격에는 반등 리스크가 있지만, 활성 bullish OB와 미체결 bullish FVG가 없고 이전일 저가 $61,344.80가 이미 깨진 점은 약세 셋업을 지지합니다. 단기적으로는 EMA20 $63,263.26 및 EQ $64,280.70 회복 실패 시 $61,344.80, $61,067.60 재공격 가능성이 높습니다.\",\n  \"key_levels\": {\n    \"support\": [\n      61344.8,\n      61067.6\n    ],\n    \"resistance\": [\n      63263.26,\n      64280.7,\n      66880.0,\n      67493.8,\n      73130.1,\n      74271.55,\n      76682.3,\n      78077.1\n    ]\n  },\n  \"time_horizon\": \"short to medium term\",\n  \"invalidation_level\": \"$67,493.80 상향 돌파 및 수용\",\n  \"risk_scenario\": \"반대 시나리오는 $61,067.60 저점 아래 유동성만 스윕하고 빠르게 $64,280.70 EQ 위로 회복하는 경우입니다. 이 경우 sell-side sweep 이후 bullish CHoCH가 발생할 수 있으며, $66,880.00 이전일 고점과 $67,493.80 range high까지 되돌림이 열립니다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "wyckoff": {
      "agent_id": "wyckoff",
      "display_name": "Wyckoff Expert",
      "signal": "bearish",
      "confidence": 0.82,
      "structure_bias": "bearish",
      "setup_bias": "neutral",
      "setup_score": 0.42,
      "setup_signals": [
        "확정 분배 구조: BC $74,293.10 이후 AR $73,057.80, ST $74,108.80, UT $74,179.90, SOW $70,650.90, 현재 Phase E 저점 $61,067.60",
        "현재가 $63,070.90은 메인 분배 박스 하단 $73,057.80 아래에 있어 Phase E 하방 이탈 상태 유지",
        "단기 반등은 내부 LPSY 후보 $63,674.90 및 EMA20 $63,263.26 부근 재시험 구간에 위치",
        "최근 SOW 저점 $61,067.60에서 반등했지만, $63,674.90 회복 실패 시 재공급 확인 가능",
        "현재 가격은 EMA120 $67,309.90 및 EMA240 $70,138.78 아래에 있어 상위 공급 우위 지속"
      ],
      "reasoning": "1시간 구조는 regime=DIS, regime_state=confirmed_dis, regime_fitness=0.963으로 확인된 분배 구조이며, 메인 앵커는 BC $74,293.10 / AR $73,057.80입니다. 이후 ST $74,108.80, UT $74,179.90 실패, SOW $70,650.90 이탈을 거쳐 현재 Phase E 저점 $61,067.60까지 진행되어 구조_bias는 명확히 bearish입니다. 다만 현재가 $63,070.90은 직전 SOW 저점에서 반등 중이며, 내부 LPSY $63,674.90 및 EMA20 $63,263.26을 재시험하는 구간이라 즉시 추격 매도 셋업은 확정적이지 않아 setup_bias는 neutral로 둡니다. 단기적으로는 $63,263~$63,675 회복 여부가 핵심이며, 이 구간에서 거절되면 $61,344.80 및 $61,067.60 재시험 가능성이 높습니다.",
      "key_levels": {
        "support": [
          61344.8,
          61067.6
        ],
        "resistance": [
          63263.26,
          63674.9,
          68121.9,
          70650.9,
          73057.8,
          74293.1
        ]
      },
      "time_horizon": "short to medium term",
      "invalidation_level": "1시간 기준 $73,057.80 이상 재진입 및 수용 시 메인 분배 Phase E 해석은 무효화됩니다.",
      "risk_scenario": "$63,674.90 LPSY 구간을 회복하고 $68,121.90 위로 확장되면 단기 재분배 하락 압력은 약화되며, $70,650.90 SOW 이탈 구간까지 되돌림이 열릴 수 있습니다. 특히 $73,057.80 메인 AR 하단을 회복하면 기존 분배 박스 아래 Phase E 지속 해석은 구조적으로 재검토해야 합니다.",
      "data_quality": "high",
      "metrics": {
        "acc_score": 87.2,
        "dis_score": 96.2,
        "regime": "DIS",
        "regime_state": "confirmed_dis",
        "structure_bias": "bearish",
        "phase_context": "confirmed_dis / distribution / Phase E",
        "phases_detected": [
          "BC",
          "AR",
          "ST",
          "SOW_IN_PHASE_B",
          "UT",
          "SOW",
          "Phase E"
        ],
        "last_phase": "Phase E",
        "phase_candidates": [
          {
            "label": "BC",
            "side": "high",
            "idx": 141,
            "price": 74293.1,
            "color": "#ffd166"
          },
          {
            "label": "AR",
            "side": "low",
            "idx": 142,
            "price": 73057.8,
            "color": "#06d6a0"
          },
          {
            "label": "ST",
            "side": "high",
            "idx": 166,
            "price": 74108.8,
            "color": "#118ab2"
          },
          {
            "label": "SOW_IN_PHASE_B",
            "side": "low",
            "idx": 188,
            "price": 73340.7,
            "color": "#ef476f"
          },
          {
            "label": "UT",
            "side": "high",
            "idx": 195,
            "price": 74179.9,
            "color": "#f9844a"
          },
          {
            "label": "SOW",
            "side": "low",
            "idx": 212,
            "price": 70650.9,
            "color": "#ef476f"
          },
          {
            "label": "Phase E",
            "side": "low",
            "idx": 298,
            "price": 61067.6,
            "color": "#7209b7"
          }
        ],
        "phase_structures": [
          {
            "structure_id": "1h_cycle_1",
            "sequence": 1,
            "timeframe": "1h",
            "regime": "distribution",
            "role": "prior_completed_structure",
            "is_active": false,
            "is_completed": true,
            "is_confirmed": true,
            "structure_bias": "bearish",
            "phase_context": "distribution",
            "start_idx": 141,
            "end_idx": 298,
            "phase_count": 7,
            "phases": [
              {
                "label": "BC",
                "side": "high",
                "idx": 141,
                "price": 74293.1,
                "color": "#ffd166",
                "dt": "2026-05-30 02:00:00+09:00"
              },
              {
                "label": "AR",
                "side": "low",
                "idx": 142,
                "price": 73057.8,
                "color": "#06d6a0",
                "dt": "2026-05-30 03:00:00+09:00"
              },
              {
                "label": "ST",
                "side": "high",
                "idx": 166,
                "price": 74108.8,
                "color": "#118ab2",
                "dt": "2026-05-31 03:00:00+09:00"
              },
              {
                "label": "SOW_IN_PHASE_B",
                "side": "low",
                "idx": 188,
                "price": 73340.7,
                "color": "#ef476f",
                "dt": "2026-06-01 01:00:00+09:00"
              },
              {
                "label": "UT",
                "side": "high",
                "idx": 195,
                "price": 74179.9,
                "color": "#f9844a",
                "dt": "2026-06-01 08:00:00+09:00"
              },
              {
                "label": "SOW",
                "side": "low",
                "idx": 212,
                "price": 70650.9,
                "color": "#ef476f",
                "dt": "2026-06-02 01:00:00+09:00"
              },
              {
                "label": "Phase E",
                "side": "low",
                "idx": 298,
                "price": 61067.6,
                "color": "#7209b7",
                "dt": "2026-06-05 15:00:00+09:00"
              }
            ]
          },
          {
            "structure_id": "1h_cycle_2",
            "sequence": 2,
            "timeframe": "1h",
            "regime": "redistribution",
            "role": "current_structure_candidate",
            "is_active": true,
            "is_completed": false,
            "is_confirmed": true,
            "structure_bias": "bearish",
            "phase_context": "redistribution",
            "start_idx": 235,
            "end_idx": 298,
            "phase_count": 6,
            "phases": [
              {
                "label": "SC",
                "side": "low",
                "idx": 235,
                "price": 67035.5,
                "color": "#ffd166",
                "dt": "2026-06-03 00:00:00+09:00"
              },
              {
                "label": "AR",
                "side": "high",
                "idx": 236,
                "price": 68121.9,
                "color": "#06d6a0",
                "dt": "2026-06-03 01:00:00+09:00"
              },
              {
                "label": "ST",
                "side": "low",
                "idx": 253,
                "price": 66620.0,
                "color": "#118ab2",
                "dt": "2026-06-03 18:00:00+09:00"
              },
              {
                "label": "SOW_IN_PHASE_B",
                "side": "low",
                "idx": 270,
                "price": 61344.8,
                "color": "#ef476f",
                "dt": "2026-06-04 11:00:00+09:00"
              },
              {
                "label": "LPSY",
                "side": "high",
                "idx": 297,
                "price": 63674.9,
                "color": "#8338ec",
                "dt": "2026-06-05 14:00:00+09:00"
              },
              {
                "label": "SOW",
                "side": "low",
                "idx": 298,
                "price": 61067.6,
                "color": "#ef476f",
                "dt": "2026-06-05 15:00:00+09:00"
              }
            ]
          }
        ],
        "active_structure_id": "1h_cycle_2",
        "primary_structure_id": "1h_cycle_1",
        "structure_count": 2,
        "regime_fitness": 0.9625,
        "current_event": "Phase E",
        "major_phase": "E",
        "pos_in_range": 0.5,
        "main_range_low": 73057.8,
        "main_range_high": 74293.1
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.82,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"neutral\",\n  \"setup_score\": 0.42,\n  \"setup_signals\": [\n    \"확정 분배 구조: BC $74,293.10 이후 AR $73,057.80, ST $74,108.80, UT $74,179.90, SOW $70,650.90, 현재 Phase E 저점 $61,067.60\",\n    \"현재가 $63,070.90은 메인 분배 박스 하단 $73,057.80 아래에 있어 Phase E 하방 이탈 상태 유지\",\n    \"단기 반등은 내부 LPSY 후보 $63,674.90 및 EMA20 $63,263.26 부근 재시험 구간에 위치\",\n    \"최근 SOW 저점 $61,067.60에서 반등했지만, $63,674.90 회복 실패 시 재공급 확인 가능\",\n    \"현재 가격은 EMA120 $67,309.90 및 EMA240 $70,138.78 아래에 있어 상위 공급 우위 지속\"\n  ],\n  \"reasoning\": \"1시간 구조는 regime=DIS, regime_state=confirmed_dis, regime_fitness=0.963으로 확인된 분배 구조이며, 메인 앵커는 BC $74,293.10 / AR $73,057.80입니다. 이후 ST $74,108.80, UT $74,179.90 실패, SOW $70,650.90 이탈을 거쳐 현재 Phase E 저점 $61,067.60까지 진행되어 구조_bias는 명확히 bearish입니다. 다만 현재가 $63,070.90은 직전 SOW 저점에서 반등 중이며, 내부 LPSY $63,674.90 및 EMA20 $63,263.26을 재시험하는 구간이라 즉시 추격 매도 셋업은 확정적이지 않아 setup_bias는 neutral로 둡니다. 단기적으로는 $63,263~$63,675 회복 여부가 핵심이며, 이 구간에서 거절되면 $61,344.80 및 $61,067.60 재시험 가능성이 높습니다.\",\n  \"key_levels\": {\n    \"support\": [\n      61344.8,\n      61067.6\n    ],\n    \"resistance\": [\n      63263.26,\n      63674.9,\n      68121.9,\n      70650.9,\n      73057.8,\n      74293.1\n    ]\n  },\n  \"time_horizon\": \"short to medium term\",\n  \"invalidation_level\": \"1시간 기준 $73,057.80 이상 재진입 및 수용 시 메인 분배 Phase E 해석은 무효화됩니다.\",\n  \"risk_scenario\": \"$63,674.90 LPSY 구간을 회복하고 $68,121.90 위로 확장되면 단기 재분배 하락 압력은 약화되며, $70,650.90 SOW 이탈 구간까지 되돌림이 열릴 수 있습니다. 특히 $73,057.80 메인 AR 하단을 회복하면 기존 분배 박스 아래 Phase E 지속 해석은 구조적으로 재검토해야 합니다.\",\n  \"data_quality\": \"high\"\n}"
    },
    "derivatives": {
      "agent_id": "derivatives",
      "display_name": "Derivatives Trader",
      "signal": "neutral",
      "confidence": 0.55,
      "structure_bias": "bearish",
      "setup_bias": "bullish",
      "setup_score": 0.62,
      "setup_signals": [
        "가격 $63,070.90이 EMA20 $63,263.26 바로 아래에 있으나, 7일 저점 $61,067.60 인근 할인 구간에서 반등 시도",
        "CVD divergence 0.850 및 CVD change +209.4730: 가격은 약세 구조인데 매수 체결 누적이 증가해 단기 흡수 가능성",
        "OI 24h -0.4250% 감소: 하락 중 신규 숏 확장보다 포지션 언와인딩 성격이 강해 추격 매도 신뢰도 제한",
        "선물 베이시스 -0.0715%: 현물 대비 선물이 할인되어 단기 숏 프리미엄/리스크오프가 일부 반영됨",
        "하방 청산 밀집 $61,300, $60,700, $59,400이 아직 남아 있어 스윕 후 반등 후보이나, 미스윕 상태에서는 변동성 리스크 존재"
      ],
      "reasoning": "확정 구조는 bearish이다. 현재가 $63,070.90은 EMA20 $63,263.26 아래, EMA120 $67,309.90 대비 -6.3%, EMA240 $70,138.78 대비 -10.1%에 위치해 있어 아직 구조적 회복이나 상위 평균선 재수복이 확인되지 않았다. 다만 셋업 관점에서는 CVD divergence 0.850과 CVD change +209.4730이 가격 약세와 반대로 움직이며 단기 매도 흡수 가능성을 보여주고, OI가 24시간 -0.4250% 감소해 공격적 신규 숏 추세라기보다는 포지션 정리 성격이 강하다. 반대로 long account latest 0.685, account_long_crowding 1.000은 롱 계정 쏠림이 매우 크다는 뜻이므로 $63,200, $64,400, $64,600 상단 청산 구간을 회수하지 못하면 다시 $61,300 및 $60,700 하방 유동성으로 밀릴 위험이 높다.",
      "key_levels": {
        "support": [
          61300,
          60700,
          59400,
          57200
        ],
        "resistance": [
          63200,
          64400,
          64600,
          67299.9,
          70138.78
        ]
      },
      "time_horizon": "short term, 파생 포지셔닝 선행성을 감안한 4-8시간",
      "invalidation_level": "$60,700 이탈 및 1시간 종가 기준 수용",
      "risk_scenario": "반대 시나리오는 롱 계정 쏠림 0.685가 청산 압력으로 전환되는 경우다. $61,300 하방 청산을 먼저 건드린 뒤 $60,700까지 이탈하면 CVD 흡수 셋업은 실패로 보고, $59,400 및 strongest liquidation level $57,200 방향의 롱 스퀴즈가 열릴 수 있다.",
      "data_quality": "medium",
      "metrics": {
        "cvd_divergence": 0.85,
        "cvd_change": 209.473,
        "oi_trend": 0.458,
        "oi_change_pct_24h": -0.425,
        "oi_latest": 100107.305,
        "funding_pressure": 0.494,
        "funding_avg": 5.86e-06,
        "funding_change_24h": -2.04e-06,
        "long_account_ratio": 0.666,
        "short_account_ratio": 0.334,
        "long_account_latest": 0.685,
        "short_account_latest": 0.315,
        "long_account_change_24h": 0.0238,
        "short_account_change_24h": -0.0238,
        "account_flow_label": "long_accounts_rising_short_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.482,
        "spot_futures_basis_pct": -0.0715,
        "basis_change_lookback": -0.0173,
        "aggregate_score": 0.457,
        "bull_signals": 1,
        "bear_signals": 1,
        "liq_below": [
          [
            61300,
            12347.04994715
          ],
          [
            60700,
            15457.49096225
          ],
          [
            59400,
            13606.772019
          ]
        ],
        "liq_above": [
          [
            63200,
            11236.146062849999
          ],
          [
            64400,
            15109.783107600002
          ],
          [
            64600,
            11588.029691200001
          ]
        ],
        "strongest_liq_level": 57200,
        "fragility_score": 0.892,
        "positioning_extreme": "balanced"
      },
      "raw_llm_response": "{\n  \"signal\": \"neutral\",\n  \"confidence\": 0.55,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.62,\n  \"setup_signals\": [\n    \"가격 $63,070.90이 EMA20 $63,263.26 바로 아래에 있으나, 7일 저점 $61,067.60 인근 할인 구간에서 반등 시도\",\n    \"CVD divergence 0.850 및 CVD change +209.4730: 가격은 약세 구조인데 매수 체결 누적이 증가해 단기 흡수 가능성\",\n    \"OI 24h -0.4250% 감소: 하락 중 신규 숏 확장보다 포지션 언와인딩 성격이 강해 추격 매도 신뢰도 제한\",\n    \"선물 베이시스 -0.0715%: 현물 대비 선물이 할인되어 단기 숏 프리미엄/리스크오프가 일부 반영됨\",\n    \"하방 청산 밀집 $61,300, $60,700, $59,400이 아직 남아 있어 스윕 후 반등 후보이나, 미스윕 상태에서는 변동성 리스크 존재\"\n  ],\n  \"reasoning\": \"확정 구조는 bearish이다. 현재가 $63,070.90은 EMA20 $63,263.26 아래, EMA120 $67,309.90 대비 -6.3%, EMA240 $70,138.78 대비 -10.1%에 위치해 있어 아직 구조적 회복이나 상위 평균선 재수복이 확인되지 않았다. 다만 셋업 관점에서는 CVD divergence 0.850과 CVD change +209.4730이 가격 약세와 반대로 움직이며 단기 매도 흡수 가능성을 보여주고, OI가 24시간 -0.4250% 감소해 공격적 신규 숏 추세라기보다는 포지션 정리 성격이 강하다. 반대로 long account latest 0.685, account_long_crowding 1.000은 롱 계정 쏠림이 매우 크다는 뜻이므로 $63,200, $64,400, $64,600 상단 청산 구간을 회수하지 못하면 다시 $61,300 및 $60,700 하방 유동성으로 밀릴 위험이 높다.\",\n  \"key_levels\": {\n    \"support\": [\n      61300,\n      60700,\n      59400,\n      57200\n    ],\n    \"resistance\": [\n      63200,\n      64400,\n      64600,\n      67299.9,\n      70138.78\n    ]\n  },\n  \"time_horizon\": \"short term, 파생 포지셔닝 선행성을 감안한 4-8시간\",\n  \"invalidation_level\": \"$60,700 이탈 및 1시간 종가 기준 수용\",\n  \"risk_scenario\": \"반대 시나리오는 롱 계정 쏠림 0.685가 청산 압력으로 전환되는 경우다. $61,300 하방 청산을 먼저 건드린 뒤 $60,700까지 이탈하면 CVD 흡수 셋업은 실패로 보고, $59,400 및 strongest liquidation level $57,200 방향의 롱 스퀴즈가 열릴 수 있다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "harmonic": {
      "agent_id": "harmonic",
      "display_name": "Harmonic Specialist",
      "signal": "neutral",
      "confidence": 0.56,
      "structure_bias": "bearish",
      "setup_bias": "bullish",
      "setup_score": 0.55,
      "setup_signals": [
        "현재가 $63,070.90은 EMA20 $63,263.26 아래이고 EMA120 $67,309.90 및 EMA240 $70,138.78보다 크게 낮아 구조적으로는 약세 압력이 우세",
        "엄격/고품질 bullish Gartley 형성 PRZ가 $62,440.67-$62,954.91에 활성화되어 있으며, D 기준가는 $62,697.79",
        "해당 Gartley PRZ는 XAD, BC_EXT, ABCD 3개 Fib family가 겹친 고컨플루언스 구간이며 PRZ 폭은 0.82%, 패턴 점수는 0.959",
        "완료된 bullish Bat 후보가 $62,423.03-$63,263.64 PRZ에서 반응 확인을 받았고 reaction_score 0.60, 방향성 가중치 0.58로 중간 컨플루언스 역할",
        "상방 반응 시 Gartley TP ladder는 $63,372.37, $63,789.12, $64,463.70 순으로 제시됨"
      ],
      "reasoning": "1시간 구조는 현재가 $63,070.90이 EMA20 $63,263.26 아래이며 EMA120 $67,309.90, EMA240 $70,138.78보다 각각 6.3%, 10.1% 낮아 약세 구조로 해석한다. 다만 셋업 측면에서는 $62,440.67-$62,954.91의 엄격/고품질 bullish Gartley PRZ가 활성화되어 있고, XAD·BC_EXT·ABCD 3중 Fib 컨플루언스와 패턴 점수 0.959가 있어 하방 추격보다는 반등 후보 구간이다. 아직 이 핵심 Gartley는 forming 상태이고 confirmed_reaction=false이므로 메인 구조를 뒤집을 수 없으며, 현 단계에서는 약한 반전 후보이자 리스크 관리 구간으로만 취급한다. 완료된 bullish Bat 후보는 PRZ 터치 및 방어 반응이 확인되어 중간 컨플루언스가 되지만 candidate 등급이므로 단독 방향 전환 근거는 아니다. 따라서 최종 신호는 bearish 구조와 bullish 선행 셋업이 충돌하는 중립이며, $62,440.67-$62,954.91에서 1h 반응 확인이 나오면 $63,372.37-$63,789.12까지의 반등 경로가 열릴 수 있다.",
      "key_levels": {
        "support": [
          62954.91,
          62697.79,
          62440.67,
          62150.8,
          61067.6
        ],
        "resistance": [
          63263.26,
          63372.37,
          63789.12,
          64463.7,
          64872.14,
          67309.9
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$62,150.80",
      "risk_scenario": "$62,440.67-$62,954.91 Gartley PRZ가 방어되지 못하고 $62,150.80 아래로 1시간 종가 수용이 발생하면 bullish harmonic setup은 실패로 보고, $61,067.60 7일 저점 재시험 및 추가 저점 탐색 리스크가 커진다. 반대로 $63,263.26 EMA20 회복 후 $63,372.37와 $63,789.12 TP 구간을 순차 돌파하면 약세 구조 안의 단기 반등 분기가 강화된다.",
      "data_quality": "high",
      "metrics": {
        "patterns_found": 116,
        "completed_patterns_found": 30,
        "forming_d_prz_found": 86,
        "swing_orders_scanned": [
          3,
          5,
          8
        ],
        "swing_search_window": 34,
        "multiscale_swings_scanned": 60,
        "swing_highs_scanned": 28,
        "swing_lows_scanned": 32,
        "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": 11,
          "medium": 46,
          "low": 59
        },
        "prz_status_counts": {
          "active": 19,
          "nearby": 2,
          "watch": 10,
          "far": 85,
          "forming": 66
        },
        "high_confluence_prz_count": 27,
        "strict_patterns_found": 59,
        "candidate_patterns_found": 57,
        "active_patterns_at_prz": 19,
        "nearby_patterns": 2,
        "all_patterns": [
          "gartley",
          "bat",
          "shark",
          "bat",
          "butterfly",
          "gartley",
          "bat",
          "bat",
          "crab",
          "shark",
          "butterfly",
          "butterfly",
          "gartley",
          "bat",
          "gartley",
          "crab",
          "bat",
          "bat",
          "crab",
          "shark",
          "crab",
          "bat",
          "bat",
          "shark",
          "bat",
          "butterfly",
          "bat",
          "crab",
          "bat",
          "butterfly",
          "bat",
          "bat",
          "crab",
          "crab",
          "crab",
          "crab",
          "crab",
          "crab",
          "gartley",
          "bat",
          "crab",
          "crab",
          "crab",
          "butterfly",
          "butterfly",
          "crab",
          "butterfly",
          "crab",
          "butterfly",
          "butterfly",
          "crab",
          "butterfly",
          "crab",
          "bat",
          "butterfly",
          "shark",
          "bat",
          "crab",
          "bat",
          "bat",
          "bat",
          "bat",
          "gartley",
          "butterfly",
          "shark",
          "bat",
          "crab",
          "butterfly",
          "crab",
          "crab",
          "crab",
          "shark",
          "shark",
          "shark",
          "butterfly",
          "gartley",
          "crab",
          "crab",
          "crab",
          "shark",
          "crab",
          "butterfly",
          "gartley",
          "crab",
          "butterfly",
          "crab",
          "gartley",
          "crab",
          "bat",
          "bat",
          "shark",
          "crab",
          "crab",
          "crab",
          "gartley",
          "gartley",
          "crab",
          "shark",
          "butterfly",
          "bat",
          "gartley",
          "crab",
          "crab",
          "butterfly",
          "butterfly",
          "crab",
          "crab",
          "crab",
          "bat",
          "crab",
          "crab",
          "shark",
          "crab",
          "crab",
          "crab",
          "crab"
        ],
        "all_signals": [
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish"
        ],
        "best_pattern": "gartley",
        "best_pattern_quality": "strict",
        "best_quality": "high",
        "best_pattern_score": 0.959,
        "best_completion_status": "forming",
        "nearest_pattern": "crab",
        "nearest_prz": 63101.58,
        "price_to_prz": 0.05,
        "prz_range": [
          62720.29,
          63482.86
        ],
        "council_relevant_prz_count": 1,
        "directional_influence_prz_count": 1,
        "confirmed_reaction_prz_count": 0,
        "validated_harmonic_tp_count": 0,
        "pattern_candidates": [
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.959,
            "ratio_score": 0.985,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 62697.79,
            "prz_range": [
              62440.67,
              62954.91
            ],
            "prz_width_pct": 0.82,
            "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": "bullish",
              "source": "gartley",
              "d_price": 62697.79,
              "a_price": 64463.7,
              "tp1_ad_382": 63372.37,
              "tp2_ad_618": 63789.12,
              "tp3_a_or_structure_liquidity": 64463.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6155,
              "ABC": 0.6427
            },
            "x_price": 62150.8,
            "x_idx": 279,
            "x_order": 8,
            "a_price": 64463.7,
            "a_idx": 282,
            "a_order": 5,
            "b_price": 63040.0,
            "b_idx": 289,
            "b_order": 3,
            "c_price": 63955.0,
            "c_idx": 292,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.741,
            "ratio_score": 0.519,
            "prz_score": 0.887,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 62843.33,
            "prz_range": [
              62423.03,
              63263.64
            ],
            "prz_width_pct": 1.338,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.36,
            "price_to_prz_pct_raw": -0.3608,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 62843.33,
              "a_price": 67899.9,
              "tp1_ad_382": 64774.94,
              "tp2_ad_618": 65968.29,
              "tp3_a_or_structure_liquidity": 67899.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.3318,
              "ABC": 0.8066
            },
            "x_price": 73171.0,
            "x_idx": 198,
            "x_order": 3,
            "a_price": 67899.9,
            "a_idx": 241,
            "a_order": 3,
            "b_price": 66150.7,
            "b_idx": 243,
            "b_order": 3,
            "c_price": 64739.8,
            "c_idx": 272,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.74,
            "ratio_score": 0.612,
            "prz_score": 0.982,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 64559.04,
            "prz_range": [
              64245.94,
              64872.14
            ],
            "prz_width_pct": 0.97,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 2.36,
            "price_to_prz_pct_raw": 2.3595,
            "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": 64559.04,
              "a_price": 62910.0,
              "tp1_ad_382": 63929.1,
              "tp2_ad_618": 63539.93,
              "tp3_a_or_structure_liquidity": 62910.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6781,
              "ABC": 0.8952
            },
            "x_price": 64739.8,
            "x_idx": 272,
            "x_order": 3,
            "a_price": 62910.0,
            "a_idx": 285,
            "a_order": 3,
            "b_price": 64150.8,
            "b_idx": 287,
            "b_order": 3,
            "c_price": 63040.0,
            "c_idx": 289,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.643,
            "ratio_score": 0.42,
            "prz_score": 0.887,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63040.0,
            "prz_range": [
              62423.03,
              63263.64
            ],
            "prz_width_pct": 1.338,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.36,
            "price_to_prz_pct_raw": -0.3608,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "initial_PRZ_reaction",
                "PRZ_center_reclaimed_or_rejected",
                "post_D_close_progress"
              ],
              "reaction_score": 0.6,
              "reaction_detail": {
                "reaction_score": 0.6,
                "reaction_move_ratio_ad": 0.188,
                "adverse_move_ratio_ad": 0.406,
                "bars_after_d": 10,
                "reasons": [
                  "initial_PRZ_reaction",
                  "PRZ_center_reclaimed_or_rejected",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 62843.33,
              "a_price": 67899.9,
              "tp1_ad_382": 64774.94,
              "tp2_ad_618": 65968.29,
              "tp3_a_or_structure_liquidity": 67899.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.3318,
              "ABC": 0.8066,
              "BCD": 1.2048,
              "XAD": 0.922
            },
            "x_price": 73171.0,
            "x_idx": 198,
            "x_order": 3,
            "a_price": 67899.9,
            "a_idx": 241,
            "a_order": 3,
            "b_price": 66150.7,
            "b_idx": 243,
            "b_order": 3,
            "c_price": 64739.8,
            "c_idx": 272,
            "c_order": 3,
            "d_idx": 289
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.865,
            "ratio_score": 1.0,
            "prz_score": 0.831,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": false,
            "d_price": 62148.73,
            "prz_range": [
              61666.79,
              62630.66
            ],
            "prz_width_pct": 1.551,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.46,
            "price_to_prz_pct_raw": -1.4621,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 62148.73,
              "a_price": 64463.7,
              "tp1_ad_382": 63033.05,
              "tp2_ad_618": 63579.38,
              "tp3_a_or_structure_liquidity": 64463.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4982,
              "ABC": 0.7986
            },
            "x_price": 61344.8,
            "x_idx": 270,
            "x_order": 8,
            "a_price": 64463.7,
            "a_idx": 282,
            "a_order": 5,
            "b_price": 62910.0,
            "b_idx": 285,
            "b_order": 3,
            "c_price": 64150.8,
            "c_idx": 287,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "crab",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.828,
            "ratio_score": 0.894,
            "prz_score": 0.783,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 63219.69,
            "prz_range": [
              62956.46,
              63482.92
            ],
            "prz_width_pct": 0.833,
            "prz_confluence_count": 2,
            "prz_fib_families": [
              "ABCD",
              "XAD"
            ],
            "price_to_prz_pct": 0.24,
            "price_to_prz_pct_raw": 0.2359,
            "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": "crab",
              "d_price": 63219.69,
              "a_price": 67899.9,
              "tp1_ad_382": 65007.53,
              "tp2_ad_618": 66112.06,
              "tp3_a_or_structure_liquidity": 67899.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6358,
              "ABC": 0.8066
            },
            "x_price": 70650.9,
            "x_idx": 212,
            "x_order": 8,
            "a_price": 67899.9,
            "a_idx": 241,
            "a_order": 3,
            "b_price": 66150.7,
            "b_idx": 243,
            "b_order": 3,
            "c_price": 64739.8,
            "c_idx": 272,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "crab",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.815,
            "ratio_score": 1.0,
            "prz_score": 0.783,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": false,
            "d_price": 62080.3,
            "prz_range": [
              61871.88,
              62288.72
            ],
            "prz_width_pct": 0.671,
            "prz_confluence_count": 2,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT"
            ],
            "price_to_prz_pct": -1.57,
            "price_to_prz_pct_raw": -1.5706,
            "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": "crab",
              "d_price": 62080.3,
              "a_price": 64739.8,
              "tp1_ad_382": 63096.23,
              "tp2_ad_618": 63723.87,
              "tp3_a_or_structure_liquidity": 64739.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5007,
              "ABC": 0.5383
            },
            "x_price": 61344.8,
            "x_idx": 270,
            "x_order": 8,
            "a_price": 64739.8,
            "a_idx": 272,
            "a_order": 3,
            "b_price": 63040.0,
            "b_idx": 289,
            "b_order": 3,
            "c_price": 63955.0,
            "c_idx": 292,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "shark",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.814,
            "ratio_score": 1.0,
            "prz_score": 0.641,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 63037.54,
            "prz_range": [
              62581.13,
              63493.94
            ],
            "prz_width_pct": 1.448,
            "prz_confluence_count": 2,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT"
            ],
            "price_to_prz_pct": -0.05,
            "price_to_prz_pct_raw": -0.0529,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "shark",
              "d_price": 63037.54,
              "a_price": 67899.9,
              "tp1_ad_382": 64894.96,
              "tp2_ad_618": 66042.48,
              "tp3_a_or_structure_liquidity": 67899.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5986,
              "ABC": 1.469
            },
            "x_price": 70038.0,
            "x_idx": 222,
            "x_order": 3,
            "a_price": 67899.9,
            "a_idx": 241,
            "a_order": 3,
            "b_price": 66620.0,
            "b_idx": 253,
            "b_order": 3,
            "c_price": 64739.8,
            "c_idx": 272,
            "c_order": 3,
            "d_idx": null
          }
        ],
        "council_relevant_prz": [
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.959,
            "ratio_score": 0.985,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 62697.79,
            "prz_range": [
              62440.67,
              62954.91
            ],
            "prz_width_pct": 0.82,
            "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": "bullish",
              "source": "gartley",
              "d_price": 62697.79,
              "a_price": 64463.7,
              "tp1_ad_382": 63372.37,
              "tp2_ad_618": 63789.12,
              "tp3_a_or_structure_liquidity": 64463.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6155,
              "ABC": 0.6427
            },
            "x_price": 62150.8,
            "x_idx": 279,
            "x_order": 8,
            "a_price": 64463.7,
            "a_idx": 282,
            "a_order": 5,
            "b_price": 63040.0,
            "b_idx": 289,
            "b_order": 3,
            "c_price": 63955.0,
            "c_idx": 292,
            "c_order": 3,
            "d_idx": null
          }
        ],
        "report_detail_candidates": [
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.959,
            "ratio_score": 0.985,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 62697.79,
            "prz_range": [
              62440.67,
              62954.91
            ],
            "prz_width_pct": 0.82,
            "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": "bullish",
              "source": "gartley",
              "d_price": 62697.79,
              "a_price": 64463.7,
              "tp1_ad_382": 63372.37,
              "tp2_ad_618": 63789.12,
              "tp3_a_or_structure_liquidity": 64463.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6155,
              "ABC": 0.6427
            },
            "x_price": 62150.8,
            "x_idx": 279,
            "x_order": 8,
            "a_price": 64463.7,
            "a_idx": 282,
            "a_order": 5,
            "b_price": 63040.0,
            "b_idx": 289,
            "b_order": 3,
            "c_price": 63955.0,
            "c_idx": 292,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.741,
            "ratio_score": 0.519,
            "prz_score": 0.887,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 62843.33,
            "prz_range": [
              62423.03,
              63263.64
            ],
            "prz_width_pct": 1.338,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.36,
            "price_to_prz_pct_raw": -0.3608,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 62843.33,
              "a_price": 67899.9,
              "tp1_ad_382": 64774.94,
              "tp2_ad_618": 65968.29,
              "tp3_a_or_structure_liquidity": 67899.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.3318,
              "ABC": 0.8066
            },
            "x_price": 73171.0,
            "x_idx": 198,
            "x_order": 3,
            "a_price": 67899.9,
            "a_idx": 241,
            "a_order": 3,
            "b_price": 66150.7,
            "b_idx": 243,
            "b_order": 3,
            "c_price": 64739.8,
            "c_idx": 272,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.74,
            "ratio_score": 0.612,
            "prz_score": 0.982,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 64559.04,
            "prz_range": [
              64245.94,
              64872.14
            ],
            "prz_width_pct": 0.97,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 2.36,
            "price_to_prz_pct_raw": 2.3595,
            "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": 64559.04,
              "a_price": 62910.0,
              "tp1_ad_382": 63929.1,
              "tp2_ad_618": 63539.93,
              "tp3_a_or_structure_liquidity": 62910.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6781,
              "ABC": 0.8952
            },
            "x_price": 64739.8,
            "x_idx": 272,
            "x_order": 3,
            "a_price": 62910.0,
            "a_idx": 285,
            "a_order": 3,
            "b_price": 64150.8,
            "b_idx": 287,
            "b_order": 3,
            "c_price": 63040.0,
            "c_idx": 289,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.643,
            "ratio_score": 0.42,
            "prz_score": 0.887,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63040.0,
            "prz_range": [
              62423.03,
              63263.64
            ],
            "prz_width_pct": 1.338,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.36,
            "price_to_prz_pct_raw": -0.3608,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "initial_PRZ_reaction",
                "PRZ_center_reclaimed_or_rejected",
                "post_D_close_progress"
              ],
              "reaction_score": 0.6,
              "reaction_detail": {
                "reaction_score": 0.6,
                "reaction_move_ratio_ad": 0.188,
                "adverse_move_ratio_ad": 0.406,
                "bars_after_d": 10,
                "reasons": [
                  "initial_PRZ_reaction",
                  "PRZ_center_reclaimed_or_rejected",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 62843.33,
              "a_price": 67899.9,
              "tp1_ad_382": 64774.94,
              "tp2_ad_618": 65968.29,
              "tp3_a_or_structure_liquidity": 67899.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.3318,
              "ABC": 0.8066,
              "BCD": 1.2048,
              "XAD": 0.922
            },
            "x_price": 73171.0,
            "x_idx": 198,
            "x_order": 3,
            "a_price": 67899.9,
            "a_idx": 241,
            "a_order": 3,
            "b_price": 66150.7,
            "b_idx": 243,
            "b_order": 3,
            "c_price": 64739.8,
            "c_idx": 272,
            "c_order": 3,
            "d_idx": 289
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.865,
            "ratio_score": 1.0,
            "prz_score": 0.831,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": false,
            "d_price": 62148.73,
            "prz_range": [
              61666.79,
              62630.66
            ],
            "prz_width_pct": 1.551,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.46,
            "price_to_prz_pct_raw": -1.4621,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 62148.73,
              "a_price": 64463.7,
              "tp1_ad_382": 63033.05,
              "tp2_ad_618": 63579.38,
              "tp3_a_or_structure_liquidity": 64463.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4982,
              "ABC": 0.7986
            },
            "x_price": 61344.8,
            "x_idx": 270,
            "x_order": 8,
            "a_price": 64463.7,
            "a_idx": 282,
            "a_order": 5,
            "b_price": 62910.0,
            "b_idx": 285,
            "b_order": 3,
            "c_price": 64150.8,
            "c_idx": 287,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "crab",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.828,
            "ratio_score": 0.894,
            "prz_score": 0.783,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 63219.69,
            "prz_range": [
              62956.46,
              63482.92
            ],
            "prz_width_pct": 0.833,
            "prz_confluence_count": 2,
            "prz_fib_families": [
              "ABCD",
              "XAD"
            ],
            "price_to_prz_pct": 0.24,
            "price_to_prz_pct_raw": 0.2359,
            "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": "crab",
              "d_price": 63219.69,
              "a_price": 67899.9,
              "tp1_ad_382": 65007.53,
              "tp2_ad_618": 66112.06,
              "tp3_a_or_structure_liquidity": 67899.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6358,
              "ABC": 0.8066
            },
            "x_price": 70650.9,
            "x_idx": 212,
            "x_order": 8,
            "a_price": 67899.9,
            "a_idx": 241,
            "a_order": 3,
            "b_price": 66150.7,
            "b_idx": 243,
            "b_order": 3,
            "c_price": 64739.8,
            "c_idx": 272,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "crab",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.815,
            "ratio_score": 1.0,
            "prz_score": 0.783,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": false,
            "d_price": 62080.3,
            "prz_range": [
              61871.88,
              62288.72
            ],
            "prz_width_pct": 0.671,
            "prz_confluence_count": 2,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT"
            ],
            "price_to_prz_pct": -1.57,
            "price_to_prz_pct_raw": -1.5706,
            "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": "crab",
              "d_price": 62080.3,
              "a_price": 64739.8,
              "tp1_ad_382": 63096.23,
              "tp2_ad_618": 63723.87,
              "tp3_a_or_structure_liquidity": 64739.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5007,
              "ABC": 0.5383
            },
            "x_price": 61344.8,
            "x_idx": 270,
            "x_order": 8,
            "a_price": 64739.8,
            "a_idx": 272,
            "a_order": 3,
            "b_price": 63040.0,
            "b_idx": 289,
            "b_order": 3,
            "c_price": 63955.0,
            "c_idx": 292,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "shark",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.814,
            "ratio_score": 1.0,
            "prz_score": 0.641,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 63037.54,
            "prz_range": [
              62581.13,
              63493.94
            ],
            "prz_width_pct": 1.448,
            "prz_confluence_count": 2,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT"
            ],
            "price_to_prz_pct": -0.05,
            "price_to_prz_pct_raw": -0.0529,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "shark",
              "d_price": 63037.54,
              "a_price": 67899.9,
              "tp1_ad_382": 64894.96,
              "tp2_ad_618": 66042.48,
              "tp3_a_or_structure_liquidity": 67899.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5986,
              "ABC": 1.469
            },
            "x_price": 70038.0,
            "x_idx": 222,
            "x_order": 3,
            "a_price": 67899.9,
            "a_idx": 241,
            "a_order": 3,
            "b_price": 66620.0,
            "b_idx": 253,
            "b_order": 3,
            "c_price": 64739.8,
            "c_idx": 272,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.804,
            "ratio_score": 1.0,
            "prz_score": 0.659,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 63634.78,
            "prz_range": [
              63195.34,
              64074.22
            ],
            "prz_width_pct": 1.381,
            "prz_confluence_count": 2,
            "prz_fib_families": [
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.89,
            "price_to_prz_pct_raw": 0.894,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 63634.78,
              "a_price": 67899.9,
              "tp1_ad_382": 65264.06,
              "tp2_ad_618": 66270.62,
              "tp3_a_or_structure_liquidity": 67899.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.482,
              "ABC": 0.8402
            },
            "x_price": 73171.0,
            "x_idx": 198,
            "x_order": 3,
            "a_price": 67899.9,
            "a_idx": 241,
            "a_order": 3,
            "b_price": 65359.1,
            "b_idx": 247,
            "b_order": 8,
            "c_price": 67493.8,
            "c_idx": 250,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.796,
            "ratio_score": 1.0,
            "prz_score": 0.664,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 62369.69,
            "prz_range": [
              61945.58,
              62793.81
            ],
            "prz_width_pct": 1.36,
            "prz_confluence_count": 2,
            "prz_fib_families": [
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.11,
            "price_to_prz_pct_raw": -1.1118,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 62369.69,
              "a_price": 67899.9,
              "tp1_ad_382": 64482.23,
              "tp2_ad_618": 65787.36,
              "tp3_a_or_structure_liquidity": 67899.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.438,
              "ABC": 0.8221
            },
            "x_price": 73701.0,
            "x_idx": 182,
            "x_order": 3,
            "a_price": 67899.9,
            "a_idx": 241,
            "a_order": 3,
            "b_price": 65359.1,
            "b_idx": 247,
            "b_order": 8,
            "c_price": 67448.0,
            "c_idx": 254,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.796,
            "ratio_score": 0.85,
            "prz_score": 0.768,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 62723.78,
            "prz_range": [
              62423.09,
              63024.47
            ],
            "prz_width_pct": 0.959,
            "prz_confluence_count": 2,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT"
            ],
            "price_to_prz_pct": -0.55,
            "price_to_prz_pct_raw": -0.5504,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 62723.78,
              "a_price": 67899.9,
              "tp1_ad_382": 64701.06,
              "tp2_ad_618": 65922.62,
              "tp3_a_or_structure_liquidity": 67899.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.8181,
              "ABC": 0.8066
            },
            "x_price": 70038.0,
            "x_idx": 222,
            "x_order": 3,
            "a_price": 67899.9,
            "a_idx": 241,
            "a_order": 3,
            "b_price": 66150.7,
            "b_idx": 243,
            "b_order": 3,
            "c_price": 64739.8,
            "c_idx": 272,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.795,
            "ratio_score": 0.984,
            "prz_score": 0.581,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 63040.0,
            "prz_range": [
              63005.69,
              64074.17
            ],
            "prz_width_pct": 1.682,
            "prz_confluence_count": 2,
            "prz_fib_families": [
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.74,
            "price_to_prz_pct_raw": 0.7437,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "initial_PRZ_reaction",
                "PRZ_center_reclaimed_or_rejected",
                "post_D_close_progress"
              ],
              "reaction_score": 0.6,
              "reaction_detail": {
                "reaction_score": 0.6,
                "reaction_move_ratio_ad": 0.188,
                "adverse_move_ratio_ad": 0.406,
                "bars_after_d": 10,
                "reasons": [
                  "initial_PRZ_reaction",
                  "PRZ_center_reclaimed_or_rejected",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 63539.93,
              "a_price": 67899.9,
              "tp1_ad_382": 65205.44,
              "tp2_ad_618": 66234.39,
              "tp3_a_or_structure_liquidity": 67899.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.467,
              "ABC": 0.8402,
              "BCD": 2.0864,
              "XAD": 0.8932
            },
            "x_price": 73340.7,
            "x_idx": 188,
            "x_order": 8,
            "a_price": 67899.9,
            "a_idx": 241,
            "a_order": 3,
            "b_price": 65359.1,
            "b_idx": 247,
            "b_order": 8,
            "c_price": 67493.8,
            "c_idx": 250,
            "c_order": 5,
            "d_idx": 289
          }
        ],
        "actionable_patterns_list": [
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.959,
            "prz_proximity": "active",
            "prz_range": [
              62440.67,
              62954.91
            ],
            "prz_reversal_direction": "up",
            "price_to_prz_pct": -0.59,
            "high_confluence_prz": true,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 62697.79,
              "a_price": 64463.7,
              "tp1_ad_382": 63372.37,
              "tp2_ad_618": 63789.12,
              "tp3_a_or_structure_liquidity": 64463.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "GARTLEY FORMING HIGH PRZ $62,440.67-$62,954.91: expected reversal UP if price reacts in zone"
          }
        ],
        "best_council_prz": {
          "pattern": "gartley",
          "signal": "bullish",
          "completion_status": "forming",
          "pattern_quality": "strict",
          "quality": "high",
          "pattern_score": 0.959,
          "ratio_score": 0.985,
          "prz_score": 1.0,
          "prz_proximity": "active",
          "action_status": "active",
          "high_confluence_prz": true,
          "d_price": 62697.79,
          "prz_range": [
            62440.67,
            62954.91
          ],
          "prz_width_pct": 0.82,
          "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": "bullish",
            "source": "gartley",
            "d_price": 62697.79,
            "a_price": 64463.7,
            "tp1_ad_382": 63372.37,
            "tp2_ad_618": 63789.12,
            "tp3_a_or_structure_liquidity": 64463.7,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          "ratios": {
            "XAB": 0.6155,
            "ABC": 0.6427
          },
          "x_price": 62150.8,
          "x_idx": 279,
          "x_order": 8,
          "a_price": 64463.7,
          "a_idx": 282,
          "a_order": 5,
          "b_price": 63040.0,
          "b_idx": 289,
          "b_order": 3,
          "c_price": 63955.0,
          "c_idx": 292,
          "c_order": 3,
          "d_idx": null
        },
        "best_tp_ladder": {
          "direction": "bullish",
          "source": "gartley",
          "d_price": 62697.79,
          "a_price": 64463.7,
          "tp1_ad_382": 63372.37,
          "tp2_ad_618": 63789.12,
          "tp3_a_or_structure_liquidity": 64463.7,
          "note": "Use as strong TP ladder context; not standalone path authority."
        },
        "tp_ladder": [
          {
            "direction": "bullish",
            "source": "gartley",
            "d_price": 62697.79,
            "a_price": 64463.7,
            "tp1_ad_382": 63372.37,
            "tp2_ad_618": 63789.12,
            "tp3_a_or_structure_liquidity": 64463.7,
            "note": "Use as strong TP ladder context; not standalone path authority."
          }
        ],
        "validated_tp_ladder": [],
        "harmonic_governance": {
          "role": "PRZ reaction + TP ladder confluence, not standalone path engine",
          "pre_confirmation_weight_range": [
            0.25,
            0.35
          ],
          "post_confirmation_vote_weight_range": [
            0.5,
            0.6
          ],
          "standalone_path_override_allowed": false,
          "opposes_core_path_policy": "branch/reversal-risk/reaction-zone unless lower-TF structure and derivatives also confirm",
          "aligns_with_core_path_policy": "modest confidence lift plus strong TP ladder influence"
        },
        "execution_readiness": "ready",
        "directional_scores": {
          "bullish": 0.203,
          "bearish": 0
        },
        "directional_score_total": 0.203,
        "directional_dominance": 1.0
      },
      "raw_llm_response": "{\n  \"signal\": \"neutral\",\n  \"confidence\": 0.56,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.55,\n  \"setup_signals\": [\n    \"현재가 $63,070.90은 EMA20 $63,263.26 아래이고 EMA120 $67,309.90 및 EMA240 $70,138.78보다 크게 낮아 구조적으로는 약세 압력이 우세\",\n    \"엄격/고품질 bullish Gartley 형성 PRZ가 $62,440.67-$62,954.91에 활성화되어 있으며, D 기준가는 $62,697.79\",\n    \"해당 Gartley PRZ는 XAD, BC_EXT, ABCD 3개 Fib family가 겹친 고컨플루언스 구간이며 PRZ 폭은 0.82%, 패턴 점수는 0.959\",\n    \"완료된 bullish Bat 후보가 $62,423.03-$63,263.64 PRZ에서 반응 확인을 받았고 reaction_score 0.60, 방향성 가중치 0.58로 중간 컨플루언스 역할\",\n    \"상방 반응 시 Gartley TP ladder는 $63,372.37, $63,789.12, $64,463.70 순으로 제시됨\"\n  ],\n  \"reasoning\": \"1시간 구조는 현재가 $63,070.90이 EMA20 $63,263.26 아래이며 EMA120 $67,309.90, EMA240 $70,138.78보다 각각 6.3%, 10.1% 낮아 약세 구조로 해석한다. 다만 셋업 측면에서는 $62,440.67-$62,954.91의 엄격/고품질 bullish Gartley PRZ가 활성화되어 있고, XAD·BC_EXT·ABCD 3중 Fib 컨플루언스와 패턴 점수 0.959가 있어 하방 추격보다는 반등 후보 구간이다. 아직 이 핵심 Gartley는 forming 상태이고 confirmed_reaction=false이므로 메인 구조를 뒤집을 수 없으며, 현 단계에서는 약한 반전 후보이자 리스크 관리 구간으로만 취급한다. 완료된 bullish Bat 후보는 PRZ 터치 및 방어 반응이 확인되어 중간 컨플루언스가 되지만 candidate 등급이므로 단독 방향 전환 근거는 아니다. 따라서 최종 신호는 bearish 구조와 bullish 선행 셋업이 충돌하는 중립이며, $62,440.67-$62,954.91에서 1h 반응 확인이 나오면 $63,372.37-$63,789.12까지의 반등 경로가 열릴 수 있다.\",\n  \"key_levels\": {\n    \"support\": [\n      62954.91,\n      62697.79,\n      62440.67,\n      62150.8,\n      61067.6\n    ],\n    \"resistance\": [\n      63263.26,\n      63372.37,\n      63789.12,\n      64463.7,\n      64872.14,\n      67309.9\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$62,150.80\",\n  \"risk_scenario\": \"$62,440.67-$62,954.91 Gartley PRZ가 방어되지 못하고 $62,150.80 아래로 1시간 종가 수용이 발생하면 bullish harmonic setup은 실패로 보고, $61,067.60 7일 저점 재시험 및 추가 저점 탐색 리스크가 커진다. 반대로 $63,263.26 EMA20 회복 후 $63,372.37와 $63,789.12 TP 구간을 순차 돌파하면 약세 구조 안의 단기 반등 분기가 강화된다.\",\n  \"data_quality\": \"high\"\n}"
    }
  },
  "chairman_synthesis": {
    "overall_signal": "bearish",
    "overall_confidence": 0.74,
    "execution_setup": {
      "setup_bias": "bullish",
      "setup_strength": 0.66,
      "active_setups": [
        "현재가 $63,070.90은 7일 저점 $61,067.60 인근 할인 구간에서 반등 시도 중",
        "피보나치 0.618 골든비율 지지 $63,034.33을 0.06% 거리에서 테스트 중",
        "고거래량 strict morning star 품질 0.744 및 bullish engulfing 품질 0.719가 저점권에서 동시 발생",
        "bullish Gartley PRZ $62,440.67-$62,954.91이 활성화되어 있으나 아직 반응 미확정",
        "CVD divergence 0.850 및 CVD 변화 +209.4730으로 단기 매도 흡수 가능성 존재",
        "단기 확인 저항은 EMA20 $63,263.26, Fib 0.5 $63,307.25, Wyckoff LPSY 후보 $63,674.90"
      ],
      "setup_vs_structure": "구조는 명확히 bearish이나, 실행 셋업은 저점권 할인·피보나치·캔들·하모닉·CVD 흡수 신호가 겹치며 bullish로 기울어 있다. 이는 구조 추세 전환이 아니라 하락 구조 내부의 반등/재시험 리스크가 커진 상태로 해석해야 한다."
    },
    "signal_breakdown": {
      "bullish_count": 2,
      "bearish_count": 2,
      "neutral_count": 2
    },
    "key_levels": {
      "support": [
        63034.33,
        62954.91,
        62697.79,
        62440.67,
        62151,
        61344.8,
        61067.6,
        60700
      ],
      "resistance": [
        63263.26,
        63307.25,
        63372.37,
        63580.17,
        63674.9,
        63917.86,
        64280.7,
        64463.7,
        67309.9,
        67493.8,
        67680.35
      ]
    },
    "confluences": [
      "EMA20 $63,263.26은 Candlestick, ICT, Wyckoff, Harmonic, Derivatives가 공통으로 단기 핵심 저항으로 지목한다.",
      "현재가 $63,070.90 부근은 Fibonacci 0.618 $63,034.33, Harmonic PRZ 인근 $62,954.91-$63,101.58, Candlestick 반등 패턴 발생 구간이 겹치는 단기 반응 구간이다.",
      "ICT와 Wyckoff는 모두 $61,344.80 전일 저가 및 $61,067.60 최근 저점을 핵심 sell-side 구조 레벨로 본다.",
      "Wyckoff, ICT, Derivatives, Harmonic, Candlestick은 모두 가격이 EMA120 $67,309.90 및 EMA240 $70,138.78 아래에 있어 상위 구조가 아직 회복되지 않았다는 데 동의한다.",
      "Wyckoff의 내부 LPSY $63,674.90, Fibonacci ret_0.382 $63,580.17, Harmonic TP/PRZ 저항 $63,372.37-$63,789.12가 $63.4k-$63.8k 재시험 저항대로 수렴한다.",
      "Derivatives의 상단 청산 구간 $64,400-$64,600은 Harmonic bearish Gartley watch PRZ $64,245.94-$64,872.14 및 구조 저항 $64,280.70과 겹친다."
    ],
    "conflicts": [
      "구조 진단은 bearish 우위이나, Candlestick·Fibonacci·Derivatives·Harmonic의 실행 셋업은 단기 bullish 반응을 지지해 구조와 셋업이 분리되어 있다.",
      "ICT는 BOS bearish $73,130.10 이후 하락 구조 지속과 활성 bullish OB/FVG 부재를 강조하는 반면, Fibonacci는 $63,034.33 골든비율 테스트를 반등 셋업으로 본다.",
      "Wyckoff는 확인된 분배 및 현재 재분배성 구조를 중시하지만, Candlestick은 strict morning star와 bullish engulfing의 고거래량 발생을 단기 반전 후보로 평가한다.",
      "Derivatives는 CVD 흡수 신호를 bullish 셋업으로 보지만, long account latest 0.685 및 long crowding 1.000은 롱 쏠림에 따른 하방 취약성을 동시에 경고한다.",
      "Harmonic의 bullish Gartley는 품질 0.959로 강하지만 forming 상태이고 confirmed reaction이 없어 단독으로 bearish 구조를 뒤집을 수 없다."
    ],
    "executive_summary": "BTC 1시간 구조는 여전히 bearish로 평가된다. 이전 분배 사이클은 BC $74,293.10 이후 SOW $70,650.90과 Phase E 저점 $61,067.60까지 진행된 상태이며, 현재는 그 하락 이후 $63,674.90 LPSY와 $61,067.60 SOW를 포함한 재분배성 구조 후보 안에 있다. 다만 현재가 $63,070.90은 Fibonacci 0.618 $63,034.33, Harmonic bullish Gartley PRZ $62,440.67-$62,954.91, 고거래량 bullish candlestick 신호가 겹치는 할인 반응 구간이므로 즉시 추격 매도 구조보다는 반등 재시험 리스크가 큰 위치다. 핵심 구조 저항은 $63,263.26-$63,674.90, 그 위는 $64,280.70이며, 상위 bearish 구조의 무효화는 $67,309.90-$67,680.35 및 특히 $67,493.80 회복·안착에서 판단한다.",
    "raw_llm_response": "{\n  \"overall_signal\": \"bearish\",\n  \"overall_confidence\": 0.74,\n  \"execution_setup\": {\n    \"setup_bias\": \"bullish\",\n    \"setup_strength\": 0.66,\n    \"active_setups\": [\n      \"현재가 $63,070.90은 7일 저점 $61,067.60 인근 할인 구간에서 반등 시도 중\",\n      \"피보나치 0.618 골든비율 지지 $63,034.33을 0.06% 거리에서 테스트 중\",\n      \"고거래량 strict morning star 품질 0.744 및 bullish engulfing 품질 0.719가 저점권에서 동시 발생\",\n      \"bullish Gartley PRZ $62,440.67-$62,954.91이 활성화되어 있으나 아직 반응 미확정\",\n      \"CVD divergence 0.850 및 CVD 변화 +209.4730으로 단기 매도 흡수 가능성 존재\",\n      \"단기 확인 저항은 EMA20 $63,263.26, Fib 0.5 $63,307.25, Wyckoff LPSY 후보 $63,674.90\"\n    ],\n    \"setup_vs_structure\": \"구조는 명확히 bearish이나, 실행 셋업은 저점권 할인·피보나치·캔들·하모닉·CVD 흡수 신호가 겹치며 bullish로 기울어 있다. 이는 구조 추세 전환이 아니라 하락 구조 내부의 반등/재시험 리스크가 커진 상태로 해석해야 한다.\"\n  },\n  \"signal_breakdown\": {\n    \"bullish_count\": 2,\n    \"bearish_count\": 2,\n    \"neutral_count\": 2\n  },\n  \"key_levels\": {\n    \"support\": [\n      63034.33,\n      62954.91,\n      62697.79,\n      62440.67,\n      62151,\n      61344.8,\n      61067.6,\n      60700\n    ],\n    \"resistance\": [\n      63263.26,\n      63307.25,\n      63372.37,\n      63580.17,\n      63674.9,\n      63917.86,\n      64280.7,\n      64463.7,\n      67309.9,\n      67493.8,\n      67680.35\n    ]\n  },\n  \"confluences\": [\n    \"EMA20 $63,263.26은 Candlestick, ICT, Wyckoff, Harmonic, Derivatives가 공통으로 단기 핵심 저항으로 지목한다.\",\n    \"현재가 $63,070.90 부근은 Fibonacci 0.618 $63,034.33, Harmonic PRZ 인근 $62,954.91-$63,101.58, Candlestick 반등 패턴 발생 구간이 겹치는 단기 반응 구간이다.\",\n    \"ICT와 Wyckoff는 모두 $61,344.80 전일 저가 및 $61,067.60 최근 저점을 핵심 sell-side 구조 레벨로 본다.\",\n    \"Wyckoff, ICT, Derivatives, Harmonic, Candlestick은 모두 가격이 EMA120 $67,309.90 및 EMA240 $70,138.78 아래에 있어 상위 구조가 아직 회복되지 않았다는 데 동의한다.\",\n    \"Wyckoff의 내부 LPSY $63,674.90, Fibonacci ret_0.382 $63,580.17, Harmonic TP/PRZ 저항 $63,372.37-$63,789.12가 $63.4k-$63.8k 재시험 저항대로 수렴한다.\",\n    \"Derivatives의 상단 청산 구간 $64,400-$64,600은 Harmonic bearish Gartley watch PRZ $64,245.94-$64,872.14 및 구조 저항 $64,280.70과 겹친다.\"\n  ],\n  \"conflicts\": [\n    \"구조 진단은 bearish 우위이나, Candlestick·Fibonacci·Derivatives·Harmonic의 실행 셋업은 단기 bullish 반응을 지지해 구조와 셋업이 분리되어 있다.\",\n    \"ICT는 BOS bearish $73,130.10 이후 하락 구조 지속과 활성 bullish OB/FVG 부재를 강조하는 반면, Fibonacci는 $63,034.33 골든비율 테스트를 반등 셋업으로 본다.\",\n    \"Wyckoff는 확인된 분배 및 현재 재분배성 구조를 중시하지만, Candlestick은 strict morning star와 bullish engulfing의 고거래량 발생을 단기 반전 후보로 평가한다.\",\n    \"Derivatives는 CVD 흡수 신호를 bullish 셋업으로 보지만, long account latest 0.685 및 long crowding 1.000은 롱 쏠림에 따른 하방 취약성을 동시에 경고한다.\",\n    \"Harmonic의 bullish Gartley는 품질 0.959로 강하지만 forming 상태이고 confirmed reaction이 없어 단독으로 bearish 구조를 뒤집을 수 없다.\"\n  ],\n  \"highest_conviction_analyst\": \"Wyckoff Expert — 확인된 분배 구조와 현재 재분배성 구조를 모두 가격·단계별로 제시했으며, regime fitness 0.963, BC $74,293.10, SOW $70,650.90, Phase E 저점 $61,067.60, 내부 LPSY $63,674.90 등 구조 레벨이 가장 구체적이다.\",\n  \"invalidation_level\": \"$67,493.80 이상 회복 및 안착. 이 구간은 ICT range high이며 EMA120 $67,309.90 및 7일 EQ $67,680.35와 겹쳐 bearish 구조 해석의 핵심 무효화 영역이다.\",\n  \"executive_summary\": \"BTC 1시간 구조는 여전히 bearish로 평가된다. 이전 분배 사이클은 BC $74,293.10 이후 SOW $70,650.90과 Phase E 저점 $61,067.60까지 진행된 상태이며, 현재는 그 하락 이후 $63,674.90 LPSY와 $61,067.60 SOW를 포함한 재분배성 구조 후보 안에 있다. 다만 현재가 $63,070.90은 Fibonacci 0.618 $63,034.33, Harmonic bullish Gartley PRZ $62,440.67-$62,954.91, 고거래량 bullish candlestick 신호가 겹치는 할인 반응 구간이므로 즉시 추격 매도 구조보다는 반등 재시험 리스크가 큰 위치다. 핵심 구조 저항은 $63,263.26-$63,674.90, 그 위는 $64,280.70이며, 상위 bearish 구조의 무효화는 $67,309.90-$67,680.35 및 특히 $67,493.80 회복·안착에서 판단한다.\"\n}"
  },
  "overall_signal": "bearish",
  "overall_confidence": 0.74,
  "operating_path": {
    "executive_summary": "구조는 bearish(74%)이나 실행 셋업은 저점권 할인·Fib 0.618 $63,034.33·고거래량 morning star/bullish engulfing·Gartley PRZ·CVD 흡수로 bullish(66%)에 기울어 있다. 셋업 우선 순서 규칙(setup≠structure, strength≥0.5)에 따라 1차 파동은 구조 방향(하락)이 아니라 셋업 방향(반등)으로 둔다. 따라서 경로는 '반등 → 저항 거절 → 하락 재개'의 복합 코렉티브 구조다. 반등 천장은 EMA20 $63,263.26~LPSY $63,674.90 공급대(첫 웨이포인트 $63,580.17), 거절 후 Gartley PRZ $62,697.79를 거쳐 7일 저점·Phase E·SOW $61,067.60 sell-side 유동성을 재시험. $64,280.70(EQ) 회복 시 경로 무효, $62,440.67 상실 시 하락 가속.",
    "path_type": "complex",
    "confidence": 0.58,
    "waypoints": [
      {
        "seq": 1,
        "price": 63580.17,
        "type": "resistance_test",
        "source": "fibonacci(ret_0.382 $63,580.17, ret_0.5 $63,307.25, 컨플루언스 $63,170.79), wyckoff(내부 LPSY $63,674.90, EMA20 $63,263.26), harmonic(TP/PRZ $63,372.37-$63,789.12), candlestick(저점권 morning star 0.744·bullish engulfing 0.719), execution_setup(bullish 66%)",
        "description": "실행 셋업이 bullish이고 고거래량 반전 캔들과 CVD divergence 0.850 흡수가 저점권에서 동시 발생했으므로 첫 구간은 셋업 방향의 반등이다. 가격이 5개 에이전트 공통 저항인 EMA20 $63,263.26과 Fib 컨플루언스 $63,170.79를 회복하며 내부 LPSY 공급대(Fib 0.382 $63,580.17 / Wyckoff LPSY $63,674.90)를 재시험. 구조가 명확히 bearish이므로 이 구간은 신규 롱 추격이 아니라 매도 재진입 후보 저항대다.",
        "est_hours": 4,
        "turning_zone": [
          63580.17,
          63917.86
        ],
        "likely_wick": 63674.9,
        "rejection_confirm": 63263.26,
        "invalid_overshoot": 64280.7,
        "calibration_reasoning": "Fib 0.382($63,580.17)~Wyckoff LPSY($63,674.90) 내부 공급대를 하단으로, 다음 Fib/Chairman 저항 $63,917.86을 상단(폭 ≈0.36×ATR)으로 설정. 웨이크는 LPSY 상단 $63,674.90이 가장 유력하고, 5에이전트 공통 EMA20 $63,263.26 하향 이탈이 거절 확정 신호다."
      },
      {
        "seq": 2,
        "price": 62697.79,
        "type": "support_test",
        "source": "harmonic(엄격 bullish Gartley PRZ $62,440.67-$62,954.91, D $62,697.79, XAD·BC_EXT·ABCD 3중 컨플루언스 점수 0.959), fibonacci($62,645.76, $62,151)",
        "description": "LPSY/Fib 0.382 저항대에서 거절되면 bearish 구조가 재개되어 현재가 아래 할인 구간으로 되밀린다. 1차 지지는 Harmonic 고품질 bullish Gartley PRZ $62,440.67-$62,954.91(D 기준 $62,697.79). 다만 forming·confirmed_reaction=false이므로 구조를 뒤집지 못하는 약한 반응 후보로만 취급 → 약한 되돌림 또는 통과 지지대.",
        "est_hours": 9,
        "turning_zone": [
          62440.67,
          62697.79
        ],
        "likely_wick": 62645.76,
        "rejection_confirm": 62954.91,
        "invalid_overshoot": 62151.0,
        "calibration_reasoning": "Gartley PRZ가 PRE_CONFIRMATION(조건부)이라 웨이포인트를 이동시키지 않고 PRZ 코어 범위만 존으로 설정 — 상단 Gartley D $62,697.79, 하단 PRZ 저점/Chairman $62,440.67. Fib 지지 $62,645.76이 얕은 약반응 웨이크로 유력하며, 상단 PRZ/Chairman $62,954.91 회복 시 지지 확정, 스윙저점 $62,151 이탈 시 통과해 3번으로 연결된다."
      },
      {
        "seq": 3,
        "price": 61067.6,
        "type": "liquidity_sweep",
        "source": "ict(sell-side $61,344.80·$61,067.60), wyckoff(Phase E 저점·SOW $61,067.60), candlestick(7일 저점 $61,067.60), derivatives(하방 유동성 $61,300·$60,700, long_crowding 1.000)",
        "description": "Gartley PRZ가 확정 반응을 만들지 못하면 이미 이탈된 전일 저가 $61,344.80(ICT sell-side) 아래로 유동성 사냥이 이어져 7일 저점·Wyckoff Phase E 저점·SOW $61,067.60을 재시험·스윕한다. long_crowding 1.000의 롱 쏠림이 하방 청산 연료로 작용하며 구조 목표를 완성.",
        "est_hours": 19,
        "turning_zone": [
          60450.0,
          61067.6
        ],
        "likely_wick": 60700.0,
        "rejection_confirm": 61344.8,
        "invalid_overshoot": 60000.0,
        "calibration_reasoning": "매도측(하방) 유동성 스윕이므로 방향 의미를 적용해 존을 base_target 아래로 확장(터미널 폭 ≈0.66×ATR). 라운드넘버 $61,000 자석과 long_crowding 1.000 청산 연료가 7일 저점 아래로 스윕을 끌어내려 Chairman 지지 $60,700에서 반전 유력. 이탈된 ICT 매도측/전일저가 $61,344.80 회복 시 스윕 반전 확정, $60,000 하향 수용 시 추세 지속으로 무효."
      }
    ],
    "period_extremes": {
      "4h": {
        "expected_high": 63580.17,
        "expected_low": 62954.91,
        "high_first": true
      },
      "8h": {
        "expected_high": 63580.17,
        "expected_low": 62697.79,
        "high_first": true
      },
      "24h": {
        "expected_high": 63580.17,
        "expected_low": 61067.6,
        "high_first": true
      }
    },
    "triggers": {
      "bullish": {
        "price": 63674.9,
        "description": "EMA20 $63,263.26 회복에 이어 LPSY $63,674.90을 1h 종가로 상회·안착하면 반등이 EQ $64,280.70 및 청산 구간 $64,400-$64,600까지 연장되며 하락 셋업이 일시 무력화된다."
      },
      "bearish": {
        "price": 62440.67,
        "description": "Harmonic Gartley PRZ 하단 $62,440.67을 종가로 상실하면 유일한 bullish 셋업 근거가 무효화되어 $61,344.80·$61,067.60 sell-side로 직행하는 하락 가속이 확인된다."
      }
    },
    "scenario_invalidation": 64280.7,
    "raw_llm_response": "```json\n{\n  \"executive_summary\": \"구조는 bearish(74%)이나 실행 셋업은 저점권 할인·Fib 0.618 $63,034.33·고거래량 morning star/bullish engulfing·Gartley PRZ·CVD 흡수로 bullish(66%)에 기울어 있다. 셋업 우선 순서 규칙(setup≠structure, strength≥0.5)에 따라 1차 파동은 구조 방향(하락)이 아니라 셋업 방향(반등)으로 둔다. 따라서 경로는 '반등 → 저항 거절 → 하락 재개'의 복합 코렉티브 구조다. 반등 천장은 EMA20 $63,263.26~LPSY $63,674.90 공급대(첫 웨이포인트 $63,580.17), 거절 후 Gartley PRZ $62,697.79를 거쳐 7일 저점·Phase E·SOW $61,067.60 sell-side 유동성을 재시험. $64,280.70(EQ) 회복 시 경로 무효, $62,440.67 상실 시 하락 가속.\",\n  \"path_type\": \"complex\",\n  \"confidence\": 0.58,\n  \"waypoints\": [\n    {\n      \"seq\": 1,\n      \"price\": 63580.17,\n      \"type\": \"resistance_test\",\n      \"source\": \"fibonacci(ret_0.382 $63,580.17, ret_0.5 $63,307.25, 컨플루언스 $63,170.79), wyckoff(내부 LPSY $63,674.90, EMA20 $63,263.26), harmonic(TP/PRZ $63,372.37-$63,789.12), candlestick(저점권 morning star 0.744·bullish engulfing 0.719), execution_setup(bullish 66%)\",\n      \"description\": \"실행 셋업이 bullish이고 고거래량 반전 캔들과 CVD divergence 0.850 흡수가 저점권에서 동시 발생했으므로 첫 구간은 셋업 방향의 반등이다. 가격이 5개 에이전트 공통 저항인 EMA20 $63,263.26과 Fib 컨플루언스 $63,170.79를 회복하며 내부 LPSY 공급대(Fib 0.382 $63,580.17 / Wyckoff LPSY $63,674.90)를 재시험. 구조가 명확히 bearish이므로 이 구간은 신규 롱 추격이 아니라 매도 재진입 후보 저항대다.\",\n      \"est_hours\": 4\n    },\n    {\n      \"seq\": 2,\n      \"price\": 62697.79,\n      \"type\": \"support_test\",\n      \"source\": \"harmonic(엄격 bullish Gartley PRZ $62,440.67-$62,954.91, D $62,697.79, XAD·BC_EXT·ABCD 3중 컨플루언스 점수 0.959), fibonacci($62,645.76, $62,151)\",\n      \"description\": \"LPSY/Fib 0.382 저항대에서 거절되면 bearish 구조가 재개되어 현재가 아래 할인 구간으로 되밀린다. 1차 지지는 Harmonic 고품질 bullish Gartley PRZ $62,440.67-$62,954.91(D 기준 $62,697.79). 다만 forming·confirmed_reaction=false이므로 구조를 뒤집지 못하는 약한 반응 후보로만 취급 → 약한 되돌림 또는 통과 지지대.\",\n      \"est_hours\": 9\n    },\n    {\n      \"seq\": 3,\n      \"price\": 61067.6,\n      \"type\": \"liquidity_sweep\",\n      \"source\": \"ict(sell-side $61,344.80·$61,067.60), wyckoff(Phase E 저점·SOW $61,067.60), candlestick(7일 저점 $61,067.60), derivatives(하방 유동성 $61,300·$60,700, long_crowding 1.000)\",\n      \"description\": \"Gartley PRZ가 확정 반응을 만들지 못하면 이미 이탈된 전일 저가 $61,344.80(ICT sell-side) 아래로 유동성 사냥이 이어져 7일 저점·Wyckoff Phase E 저점·SOW $61,067.60을 재시험·스윕한다. long_crowding 1.000의 롱 쏠림이 하방 청산 연료로 작용하며 구조 목표를 완성.\",\n      \"est_hours\": 19\n    }\n  ],\n  \"period_extremes\": {\n    \"4h\":  {\"expected_high\": 63580.17, \"expected_low\": 62954.91, \"high_first\": true},\n    \"8h\":  {\"expected_high\": 63580.17, \"expected_low\": 62697.79, \"high_first\": true},\n    \"24h\": {\"expected_high\": 63580.17, \"expected_low\": 61067.6,  \"high_first\": true}\n  },\n  \"triggers\": {\n    \"bullish\": {\"price\": 63674.9, \"description\": \"EMA20 $63,263.26 회복에 이어 LPSY $63,674.90을 1h 종가로 상회·안착하면 반등이 EQ $64,280.70 및 청산 구간 $64,400-$64,600까지 연장되며 하락 셋업이 일시 무력화된다.\"},\n    \"bearish\": {\"price\": 62440.67, \"description\": \"Harmonic Gartley PRZ 하단 $62,440.67을 종가로 상실하면 유일한 bullish 셋업 근거가 무효화되어 $61,344.80·$61,067.60 sell-side로 직행하는 하락 가속이 확인된다.\"}\n  },\n  \"scenario_invalidation\": 64280.7\n}\n```"
  },
  "tp_calibration": {
    "executive_summary": "운영 경로는 bearish 구조 하의 '저항 재시험 → 약지지 통과 → 매도측 유동성 스윕' 3단 하락 시퀀스입니다. 1번(LPSY 공급대)과 3번(7일 저점 스윕)은 명확한 반전 후보로 존을 견고히 잡았고, 2번 Gartley PRZ는 pre-confirmation(조건부)이라 웨이포인트를 이동시키지 않고 통과 가능성을 반영해 타이트하게 calibrate했습니다. 3번은 매도측(하방) 스윕이므로 생성 룰의 기본 '상방 확장' 가정 대신 방향 의미를 적용해 base_target 아래로 존을 확장했습니다.",
    "key_insight": "long_crowding 1.000의 롱 쏠림이 3번 구간의 하방 청산 연료로 작용하고, 라운드넘버 $61,000 자석이 7일 저점 스윕을 $60,700 Chairman 지지까지 끌어내릴 가능성이 핵심입니다. 2번 PRZ는 확정 반응 전까지 '약한 되돌림 또는 통과 지지대'로만 취급해야 합니다.",
    "calibrated_waypoints": [
      {
        "seq": 1,
        "base_target": 63580.17,
        "turning_zone": [
          63580.17,
          63917.86
        ],
        "likely_wick": 63674.9,
        "rejection_confirm": 63263.26,
        "invalid_overshoot": 64280.7,
        "calibration_reasoning": "Fib 0.382($63,580.17)~Wyckoff LPSY($63,674.90) 내부 공급대를 하단으로, 다음 Fib/Chairman 저항 $63,917.86을 상단(폭 ≈0.36×ATR)으로 설정. 웨이크는 LPSY 상단 $63,674.90이 가장 유력하고, 5에이전트 공통 EMA20 $63,263.26 하향 이탈이 거절 확정 신호다."
      },
      {
        "seq": 2,
        "base_target": 62697.79,
        "turning_zone": [
          62440.67,
          62697.79
        ],
        "likely_wick": 62645.76,
        "rejection_confirm": 62954.91,
        "invalid_overshoot": 62151.0,
        "calibration_reasoning": "Gartley PRZ가 PRE_CONFIRMATION(조건부)이라 웨이포인트를 이동시키지 않고 PRZ 코어 범위만 존으로 설정 — 상단 Gartley D $62,697.79, 하단 PRZ 저점/Chairman $62,440.67. Fib 지지 $62,645.76이 얕은 약반응 웨이크로 유력하며, 상단 PRZ/Chairman $62,954.91 회복 시 지지 확정, 스윙저점 $62,151 이탈 시 통과해 3번으로 연결된다."
      },
      {
        "seq": 3,
        "base_target": 61067.6,
        "turning_zone": [
          60450.0,
          61067.6
        ],
        "likely_wick": 60700.0,
        "rejection_confirm": 61344.8,
        "invalid_overshoot": 60000.0,
        "calibration_reasoning": "매도측(하방) 유동성 스윕이므로 방향 의미를 적용해 존을 base_target 아래로 확장(터미널 폭 ≈0.66×ATR). 라운드넘버 $61,000 자석과 long_crowding 1.000 청산 연료가 7일 저점 아래로 스윕을 끌어내려 Chairman 지지 $60,700에서 반전 유력. 이탈된 ICT 매도측/전일저가 $61,344.80 회복 시 스윕 반전 확정, $60,000 하향 수용 시 추세 지속으로 무효."
      }
    ],
    "raw_llm_response": "```json\n{\n  \"executive_summary\": \"운영 경로는 bearish 구조 하의 '저항 재시험 → 약지지 통과 → 매도측 유동성 스윕' 3단 하락 시퀀스입니다. 1번(LPSY 공급대)과 3번(7일 저점 스윕)은 명확한 반전 후보로 존을 견고히 잡았고, 2번 Gartley PRZ는 pre-confirmation(조건부)이라 웨이포인트를 이동시키지 않고 통과 가능성을 반영해 타이트하게 calibrate했습니다. 3번은 매도측(하방) 스윕이므로 생성 룰의 기본 '상방 확장' 가정 대신 방향 의미를 적용해 base_target 아래로 존을 확장했습니다.\",\n  \"key_insight\": \"long_crowding 1.000의 롱 쏠림이 3번 구간의 하방 청산 연료로 작용하고, 라운드넘버 $61,000 자석이 7일 저점 스윕을 $60,700 Chairman 지지까지 끌어내릴 가능성이 핵심입니다. 2번 PRZ는 확정 반응 전까지 '약한 되돌림 또는 통과 지지대'로만 취급해야 합니다.\",\n  \"calibrated_waypoints\": [\n    {\n      \"seq\": 1,\n      \"base_target\": 63580.17,\n      \"turning_zone\": [63580.17, 63917.86],\n      \"likely_wick\": 63674.90,\n      \"rejection_confirm\": 63263.26,\n      \"invalid_overshoot\": 64280.70,\n      \"calibration_reasoning\": \"Fib 0.382($63,580.17)~Wyckoff LPSY($63,674.90) 내부 공급대를 하단으로, 다음 Fib/Chairman 저항 $63,917.86을 상단(폭 ≈0.36×ATR)으로 설정. 웨이크는 LPSY 상단 $63,674.90이 가장 유력하고, 5에이전트 공통 EMA20 $63,263.26 하향 이탈이 거절 확정 신호다.\"\n    },\n    {\n      \"seq\": 2,\n      \"base_target\": 62697.79,\n      \"turning_zone\": [62440.67, 62697.79],\n      \"likely_wick\": 62645.76,\n      \"rejection_confirm\": 62954.91,\n      \"invalid_overshoot\": 62151.00,\n      \"calibration_reasoning\": \"Gartley PRZ가 PRE_CONFIRMATION(조건부)이라 웨이포인트를 이동시키지 않고 PRZ 코어 범위만 존으로 설정 — 상단 Gartley D $62,697.79, 하단 PRZ 저점/Chairman $62,440.67. Fib 지지 $62,645.76이 얕은 약반응 웨이크로 유력하며, 상단 PRZ/Chairman $62,954.91 회복 시 지지 확정, 스윙저점 $62,151 이탈 시 통과해 3번으로 연결된다.\"\n    },\n    {\n      \"seq\": 3,\n      \"base_target\": 61067.60,\n      \"turning_zone\": [60450.00, 61067.60],\n      \"likely_wick\": 60700.00,\n      \"rejection_confirm\": 61344.80,\n      \"invalid_overshoot\": 60000.00,\n      \"calibration_reasoning\": \"매도측(하방) 유동성 스윕이므로 방향 의미를 적용해 존을 base_target 아래로 확장(터미널 폭 ≈0.66×ATR). 라운드넘버 $61,000 자석과 long_crowding 1.000 청산 연료가 7일 저점 아래로 스윕을 끌어내려 Chairman 지지 $60,700에서 반전 유력. 이탈된 ICT 매도측/전일저가 $61,344.80 회복 시 스윕 반전 확정, $60,000 하향 수용 시 추세 지속으로 무효.\"\n    }\n  ]\n}\n```"
  },
  "timing": {
    "stages": {
      "stage1_agents": 28.1,
      "chairman": 38.8,
      "operating_path": 312.6,
      "tp_calibrator": 267.2
    },
    "agents": {},
    "total_s": 646.7
  }
}