{
  "symbol": "BTC/USDT",
  "timeframe": "4h",
  "timestamp": "2026-05-22 21:00 KST",
  "last_price": 77396.3,
  "num_candles": 300,
  "stage1_analyses": {
    "fibonacci": {
      "agent_id": "fibonacci",
      "display_name": "Fibonacci Analyst",
      "signal": "bearish",
      "confidence": 0.62,
      "structure_bias": "bearish",
      "setup_bias": "bearish",
      "setup_score": 0.65,
      "setup_signals": [
        "하락 스윙 High→Low $78,180 → $76,697 기준, 현재가 $77,396.30은 0.5 되돌림 $77,438.35 바로 아래에서 저항 테스트 중",
        "핵심 0.618 골든비율 저항 $77,613.38이 상단에 위치하여 반등이 아직 구조 전환으로 확인되지 않음",
        "고품질 피보나치 클러스터 $77,438.35 부근에 ret_0.382, ret_0.5, ret_0.618가 중첩되어 단기 공급/저항 구간 형성",
        "현재가가 EMA20 $77,461.19와 EMA120 $78,341.47 아래에 있어 반등 강도가 제한적",
        "fib_reaction_state가 testing이고 reaction_probability가 0.65로, 저항 반응 가능성이 우세"
      ],
      "reasoning": "현재 BTC/USDT는 하락 스윙 $78,180 → $76,697 이후 되돌림 구간에 있으며, 현재가 $77,396.30은 0.5 되돌림 $77,438.35에 매우 근접해 있습니다. 가장 중요한 0.618 골든비율 저항은 $77,613.38이며, 이 구간을 명확히 회복하지 못하면 반등은 하락 추세 내 기술적 되돌림으로 해석됩니다. 특히 $77,438.35 부근은 ret_0.382, ret_0.5, ret_0.618가 겹친 confluence_quality 0.850의 고품질 클러스터로, 단기 매도 반응 가능성이 높습니다. 구조적으로는 아직 $77,862.57의 0.786 되돌림을 돌파하지 못했기 때문에 하락 구조가 우세하며, 셋업 역시 저항 테스트 실패 가능성에 무게가 실립니다.",
      "key_levels": {
        "support": [
          77263.32,
          77046.76,
          76696.7,
          76293.24,
          76082.61,
          75780.02
        ],
        "resistance": [
          77438.35,
          77613.38,
          77862.57,
          78180.0
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$77,862.57",
      "risk_scenario": "$77,613.38의 0.618 골든비율을 회복하고 $77,862.57의 0.786 되돌림 위에서 구조적 수용이 발생하면, 현재의 하락 되돌림 셋업은 무효화되며 $78,180 스윙 고점 재시험 및 상방 확장 가능성이 열립니다.",
      "data_quality": "high",
      "metrics": {
        "swing_pair": "High→Low: $78,180 → $76,697",
        "direction": "down",
        "nearest_fib": "ret_0.5",
        "nearest_fib_price": 77438.35,
        "nearest_fib_distance": 0.05,
        "golden_ratio_level": 77613.38,
        "fib_ret_382": 77263.32,
        "fib_ret_618": 77613.38,
        "confluence_zones": [
          {
            "price": 77438.35,
            "count": 3,
            "levels": [
              "ret_0.382",
              "ret_0.5",
              "ret_0.618"
            ],
            "cluster_score": 0.85
          },
          {
            "price": 74415.54,
            "count": 2,
            "levels": [
              "ext_2.618",
              "ret_0.5"
            ],
            "cluster_score": 0.6
          },
          {
            "price": 75931.32,
            "count": 2,
            "levels": [
              "ext_1.618",
              "ext_1.414"
            ],
            "cluster_score": 0.6
          },
          {
            "price": 76392.53,
            "count": 2,
            "levels": [
              "ext_1.272",
              "ret_0.382"
            ],
            "cluster_score": 0.6
          },
          {
            "price": 76871.73,
            "count": 2,
            "levels": [
              "ext_1.0",
              "ret_0.236"
            ],
            "cluster_score": 0.6
          }
        ],
        "support_levels": [
          77263.32059999999,
          77046.7588,
          76696.7
        ],
        "resistance_levels": [
          77438.35,
          77613.3794,
          77862.5738
        ],
        "level_candidates": [
          {
            "name": "ret_0.236",
            "price": 77046.76,
            "distance_pct": 0.45,
            "is_support": true,
            "cluster_score": 0.6
          },
          {
            "name": "ret_0.382",
            "price": 77263.32,
            "distance_pct": 0.17,
            "is_support": true,
            "cluster_score": 0.85
          },
          {
            "name": "ret_0.5",
            "price": 77438.35,
            "distance_pct": 0.05,
            "is_support": false,
            "cluster_score": 0.85
          },
          {
            "name": "ret_0.618",
            "price": 77613.38,
            "distance_pct": 0.28,
            "is_support": false,
            "cluster_score": 0.85
          },
          {
            "name": "ret_0.786",
            "price": 77862.57,
            "distance_pct": 0.6,
            "is_support": false,
            "cluster_score": 0.0
          },
          {
            "name": "ext_1.0",
            "price": 76696.7,
            "distance_pct": 0.9,
            "is_support": true,
            "cluster_score": 0.6
          },
          {
            "name": "ext_1.272",
            "price": 76293.24,
            "distance_pct": 1.43,
            "is_support": true,
            "cluster_score": 0.6
          },
          {
            "name": "ext_1.414",
            "price": 76082.61,
            "distance_pct": 1.7,
            "is_support": true,
            "cluster_score": 0.6
          },
          {
            "name": "ext_1.618",
            "price": 75780.02,
            "distance_pct": 2.09,
            "is_support": true,
            "cluster_score": 0.6
          },
          {
            "name": "ext_2.0",
            "price": 75213.4,
            "distance_pct": 2.82,
            "is_support": true,
            "cluster_score": 0.0
          }
        ],
        "confluence_quality": 0.85,
        "fib_reaction_state": "testing",
        "reaction_probability": 0.65
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.62,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.65,\n  \"setup_signals\": [\n    \"하락 스윙 High→Low $78,180 → $76,697 기준, 현재가 $77,396.30은 0.5 되돌림 $77,438.35 바로 아래에서 저항 테스트 중\",\n    \"핵심 0.618 골든비율 저항 $77,613.38이 상단에 위치하여 반등이 아직 구조 전환으로 확인되지 않음\",\n    \"고품질 피보나치 클러스터 $77,438.35 부근에 ret_0.382, ret_0.5, ret_0.618가 중첩되어 단기 공급/저항 구간 형성\",\n    \"현재가가 EMA20 $77,461.19와 EMA120 $78,341.47 아래에 있어 반등 강도가 제한적\",\n    \"fib_reaction_state가 testing이고 reaction_probability가 0.65로, 저항 반응 가능성이 우세\"\n  ],\n  \"reasoning\": \"현재 BTC/USDT는 하락 스윙 $78,180 → $76,697 이후 되돌림 구간에 있으며, 현재가 $77,396.30은 0.5 되돌림 $77,438.35에 매우 근접해 있습니다. 가장 중요한 0.618 골든비율 저항은 $77,613.38이며, 이 구간을 명확히 회복하지 못하면 반등은 하락 추세 내 기술적 되돌림으로 해석됩니다. 특히 $77,438.35 부근은 ret_0.382, ret_0.5, ret_0.618가 겹친 confluence_quality 0.850의 고품질 클러스터로, 단기 매도 반응 가능성이 높습니다. 구조적으로는 아직 $77,862.57의 0.786 되돌림을 돌파하지 못했기 때문에 하락 구조가 우세하며, 셋업 역시 저항 테스트 실패 가능성에 무게가 실립니다.\",\n  \"key_levels\": {\n    \"support\": [\n      77263.32,\n      77046.76,\n      76696.7,\n      76293.24,\n      76082.61,\n      75780.02\n    ],\n    \"resistance\": [\n      77438.35,\n      77613.38,\n      77862.57,\n      78180.0\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$77,862.57\",\n  \"risk_scenario\": \"$77,613.38의 0.618 골든비율을 회복하고 $77,862.57의 0.786 되돌림 위에서 구조적 수용이 발생하면, 현재의 하락 되돌림 셋업은 무효화되며 $78,180 스윙 고점 재시험 및 상방 확장 가능성이 열립니다.\",\n  \"data_quality\": \"high\"\n}"
    },
    "candlestick": {
      "agent_id": "candlestick",
      "display_name": "Candlestick Reader",
      "signal": "bullish",
      "confidence": 0.58,
      "structure_bias": "neutral",
      "setup_bias": "bullish",
      "setup_score": 0.62,
      "setup_signals": [
        "현재가 $77,396.30은 7일 레인지 EQ $77,773.15 아래의 할인 구간에 위치",
        "7일 저점 $76,014.20 부근에서 고거래량 morning_star 발생, 패턴 품질 0.688로 최근 패턴 중 최상위",
        "현재가가 EMA240 $77,017.67 위에 있어 중기 지지선 재탈환 상태",
        "최근 doji@298이 고거래량으로 발생하여 $77,461.19 EMA20 부근에서 매수·매도 힘이 충돌 중",
        "EMA20 $77,461.19와 EMA120 $78,341.47 아래에 있어 구조 전환은 아직 미확정"
      ],
      "reasoning": "최근 핵심 캔들 패턴은 고거래량 morning_star이며 품질 0.688로 가장 신뢰도가 높아 $76,014.20 저점 부근에서 단기 반등 setup을 시사합니다. 다만 현재가 $77,396.30은 EMA20 $77,461.19 바로 아래, EMA120 $78,341.47 아래에 있어 상승 구조가 확정되었다고 보기는 어렵습니다. 7일 레인지 EQ는 $77,773.15이며 현재가는 그 아래 할인 구간에 있어 매수 setup에는 유리하지만, $77,773.15와 $78,341.47을 회복해야 구조적으로 bullish 판정이 가능합니다. doji가 최근에도 발생했고 evening_star 후보도 있어 추세 확정보다는 저점 반등 시도 국면으로 해석합니다.",
      "key_levels": {
        "support": [
          77017.67,
          76014.2
        ],
        "resistance": [
          77461.19,
          77773.15,
          78341.47,
          79532.1
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$76,014.20 하향 이탈",
      "risk_scenario": "반대 시나리오에서는 가격이 EMA240 $77,017.67 아래로 재진입한 뒤 7일 저점 $76,014.20을 이탈하며 morning_star 반등 setup이 실패합니다. 이 경우 최근 bullish_engulfing과 morning_star는 단순한 약한 반등으로 무효화되고, $76,014.20 아래에서 추가 매도 압력이 확대될 수 있습니다.",
      "data_quality": "medium",
      "metrics": {
        "total_patterns_detected": 138,
        "recent_patterns": 5,
        "pattern_list": [
          "bullish_engulfing@290",
          "evening_star@292",
          "morning_star@294",
          "doji@293",
          "doji@298"
        ],
        "atr_value": 634.78,
        "vol_avg_20": 16123.26,
        "high_volume_patterns": [
          "morning_star",
          "doji"
        ],
        "pattern_candidates": [
          {
            "pattern": "morning_star",
            "signal": "bullish",
            "pattern_quality": 0.688,
            "tier": "strict",
            "high_volume": true
          },
          {
            "pattern": "evening_star",
            "signal": "bearish",
            "pattern_quality": 0.577,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "doji",
            "signal": "neutral",
            "pattern_quality": 0.555,
            "tier": "candidate",
            "high_volume": true
          },
          {
            "pattern": "bullish_engulfing",
            "signal": "bullish",
            "pattern_quality": 0.399,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "doji",
            "signal": "neutral",
            "pattern_quality": 0.355,
            "tier": "candidate",
            "high_volume": false
          }
        ],
        "best_pattern_quality": 0.688,
        "bull_score": 1.65,
        "bear_score": 0.8
      },
      "raw_llm_response": "{\n  \"signal\": \"bullish\",\n  \"confidence\": 0.58,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.62,\n  \"setup_signals\": [\n    \"현재가 $77,396.30은 7일 레인지 EQ $77,773.15 아래의 할인 구간에 위치\",\n    \"7일 저점 $76,014.20 부근에서 고거래량 morning_star 발생, 패턴 품질 0.688로 최근 패턴 중 최상위\",\n    \"현재가가 EMA240 $77,017.67 위에 있어 중기 지지선 재탈환 상태\",\n    \"최근 doji@298이 고거래량으로 발생하여 $77,461.19 EMA20 부근에서 매수·매도 힘이 충돌 중\",\n    \"EMA20 $77,461.19와 EMA120 $78,341.47 아래에 있어 구조 전환은 아직 미확정\"\n  ],\n  \"reasoning\": \"최근 핵심 캔들 패턴은 고거래량 morning_star이며 품질 0.688로 가장 신뢰도가 높아 $76,014.20 저점 부근에서 단기 반등 setup을 시사합니다. 다만 현재가 $77,396.30은 EMA20 $77,461.19 바로 아래, EMA120 $78,341.47 아래에 있어 상승 구조가 확정되었다고 보기는 어렵습니다. 7일 레인지 EQ는 $77,773.15이며 현재가는 그 아래 할인 구간에 있어 매수 setup에는 유리하지만, $77,773.15와 $78,341.47을 회복해야 구조적으로 bullish 판정이 가능합니다. doji가 최근에도 발생했고 evening_star 후보도 있어 추세 확정보다는 저점 반등 시도 국면으로 해석합니다.\",\n  \"key_levels\": {\n    \"support\": [\n      77017.67,\n      76014.2\n    ],\n    \"resistance\": [\n      77461.19,\n      77773.15,\n      78341.47,\n      79532.1\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$76,014.20 하향 이탈\",\n  \"risk_scenario\": \"반대 시나리오에서는 가격이 EMA240 $77,017.67 아래로 재진입한 뒤 7일 저점 $76,014.20을 이탈하며 morning_star 반등 setup이 실패합니다. 이 경우 최근 bullish_engulfing과 morning_star는 단순한 약한 반등으로 무효화되고, $76,014.20 아래에서 추가 매도 압력이 확대될 수 있습니다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "ict": {
      "agent_id": "ict",
      "display_name": "ICT Trader",
      "signal": "bearish",
      "confidence": 0.68,
      "structure_bias": "bearish",
      "setup_bias": "bearish",
      "setup_score": 0.75,
      "setup_signals": [
        "확정 bearish BOS가 $79,137.40 하향 이탈로 발생",
        "추가 bearish BOS가 $78,713.80 하향 이탈로 발생하며 연속 bearish BOS 2회",
        "현재가 $77,396.30이 EMA20 $77,461.19 및 EMA120 $78,341.47 아래에서 거래",
        "전일 고점 $78,180.00 미돌파, 단기 상단 유동성 회수 실패",
        "현재가는 EQ $79,006.60 아래 discount 구간이나, bullish OB/FVG/스윕 근거가 없어 반등 셋업 신뢰도 제한"
      ],
      "reasoning": "현재 구조는 최근 CHoCH bullish $79,455.00 이후 가격이 다시 $79,137.40과 $78,713.80을 순차적으로 하향 BOS 처리했기 때문에 confirmed structure_bias는 bearish입니다. 현재가 $77,396.30은 EQ $79,006.60 아래 discount에 위치하지만, 활성 bullish OB, unfilled bullish FVG, 최근 sell-side sweep이 모두 없어 즉각적인 bullish reversal 근거는 약합니다. EMA20 $77,461.19와 EMA120 $78,341.47 아래에 머물고 있어 단기 반등은 $78,180.00 전일 고점 및 $78,713.80 구조 레벨에서 매도 반응이 나올 가능성이 높습니다. 다만 range low $76,014.20와 전일 저점 $76,696.70이 가까워 하방 추격은 유동성 스윕 후 반등 리스크를 동반합니다.",
      "key_levels": {
        "support": [
          77017.67,
          76696.7,
          76014.2,
          76009.0
        ],
        "resistance": [
          77461.19,
          78180.0,
          78341.47,
          78713.8,
          79006.6,
          79137.4,
          79455.0,
          79532.1
        ]
      },
      "time_horizon": "short to medium term",
      "invalidation_level": "$79,455.00",
      "risk_scenario": "가격이 $78,713.80을 회복하고 특히 $79,137.40~$79,455.00 위로 4시간봉 종가 안착하면 bearish BOS는 실패한 breakdown으로 전환될 수 있습니다. 이 경우 discount 구간에서 매도 유동성을 흡수한 뒤 EQ $79,006.60 상단 및 7일 고점 $79,532.10 방향으로 재가격화될 가능성이 커집니다.",
      "data_quality": "medium",
      "metrics": {
        "order_blocks_total": 0,
        "confirmed_bullish_ob": 0,
        "confirmed_bearish_ob": 0,
        "candidate_bullish_ob": 0,
        "candidate_bearish_ob": 0,
        "active_bullish_ob": 0,
        "active_bearish_ob": 0,
        "nearest_bull_ob_range": null,
        "nearest_bear_ob_range": null,
        "active_bullish_ob_list": [],
        "active_bearish_ob_list": [],
        "ob_mitigated_count": 0,
        "unfilled_bull_fvg_count": 0,
        "unfilled_bear_fvg_count": 0,
        "bull_fvg_ranges": [],
        "bear_fvg_ranges": [],
        "fvg_open_count": 0,
        "fvg_mitigated_count": 48,
        "fvg_open_zones": [],
        "bos_choch_events": [
          "BOS_bullish",
          "BOS_bullish",
          "CHoCH_bearish",
          "CHoCH_bullish",
          "BOS_bearish",
          "BOS_bearish"
        ],
        "bos_choch_levels": [
          {
            "type": "BOS_bullish",
            "level": 76009.0
          },
          {
            "type": "BOS_bullish",
            "level": 78300.0
          },
          {
            "type": "CHoCH_bearish",
            "level": 77100.0
          },
          {
            "type": "CHoCH_bullish",
            "level": 79455.0
          },
          {
            "type": "BOS_bearish",
            "level": 79137.4
          },
          {
            "type": "BOS_bearish",
            "level": 78713.8
          }
        ],
        "bos_sequence": [
          "BOS_bullish",
          "BOS_bullish",
          "BOS_bullish",
          "CHoCH_bearish",
          "CHoCH_bullish",
          "BOS_bearish",
          "BOS_bearish"
        ],
        "consecutive_bull_bos": 0,
        "consecutive_bear_bos": 2,
        "recent_liq_sweeps": [],
        "recent_sweep_levels": [],
        "liquidity_resting": [],
        "current_zone": "discount",
        "eq_level": 79006.6,
        "range_high": 81999.0,
        "range_low": 76014.2,
        "bull_score": 7.2,
        "bear_score": 7.7,
        "setup_bias": "bearish",
        "setup_score": 0.75,
        "setup_signals": [
          "bearish CHoCH below $77,100.00",
          "bearish BOS below $79,137.40",
          "bearish BOS below $78,713.80"
        ],
        "retracement_direction": "bearish",
        "current_retracement_pct": 24.9,
        "deepest_retracement_pct": 36.2,
        "previous_day_high": 78180.0,
        "previous_day_low": 76696.7,
        "broken_prev_high": false,
        "broken_prev_low": false,
        "sessions": {}
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.68,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.75,\n  \"setup_signals\": [\n    \"확정 bearish BOS가 $79,137.40 하향 이탈로 발생\",\n    \"추가 bearish BOS가 $78,713.80 하향 이탈로 발생하며 연속 bearish BOS 2회\",\n    \"현재가 $77,396.30이 EMA20 $77,461.19 및 EMA120 $78,341.47 아래에서 거래\",\n    \"전일 고점 $78,180.00 미돌파, 단기 상단 유동성 회수 실패\",\n    \"현재가는 EQ $79,006.60 아래 discount 구간이나, bullish OB/FVG/스윕 근거가 없어 반등 셋업 신뢰도 제한\"\n  ],\n  \"reasoning\": \"현재 구조는 최근 CHoCH bullish $79,455.00 이후 가격이 다시 $79,137.40과 $78,713.80을 순차적으로 하향 BOS 처리했기 때문에 confirmed structure_bias는 bearish입니다. 현재가 $77,396.30은 EQ $79,006.60 아래 discount에 위치하지만, 활성 bullish OB, unfilled bullish FVG, 최근 sell-side sweep이 모두 없어 즉각적인 bullish reversal 근거는 약합니다. EMA20 $77,461.19와 EMA120 $78,341.47 아래에 머물고 있어 단기 반등은 $78,180.00 전일 고점 및 $78,713.80 구조 레벨에서 매도 반응이 나올 가능성이 높습니다. 다만 range low $76,014.20와 전일 저점 $76,696.70이 가까워 하방 추격은 유동성 스윕 후 반등 리스크를 동반합니다.\",\n  \"key_levels\": {\n    \"support\": [\n      77017.67,\n      76696.7,\n      76014.2,\n      76009.0\n    ],\n    \"resistance\": [\n      77461.19,\n      78180.0,\n      78341.47,\n      78713.8,\n      79006.6,\n      79137.4,\n      79455.0,\n      79532.1\n    ]\n  },\n  \"time_horizon\": \"short to medium term\",\n  \"invalidation_level\": \"$79,455.00\",\n  \"risk_scenario\": \"가격이 $78,713.80을 회복하고 특히 $79,137.40~$79,455.00 위로 4시간봉 종가 안착하면 bearish BOS는 실패한 breakdown으로 전환될 수 있습니다. 이 경우 discount 구간에서 매도 유동성을 흡수한 뒤 EQ $79,006.60 상단 및 7일 고점 $79,532.10 방향으로 재가격화될 가능성이 커집니다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "wyckoff": {
      "agent_id": "wyckoff",
      "display_name": "Wyckoff Expert",
      "signal": "bearish",
      "confidence": 0.78,
      "structure_bias": "bearish",
      "setup_bias": "bearish",
      "setup_score": 0.66,
      "setup_signals": [
        "현재가 $77,396.30은 메인 분배 레인지 EQ 약 $75,984.50 위의 프리미엄 구간에 위치",
        "최근 상단 테스트가 $77,862.70에서 실패한 뒤 $77,138.30까지 SOW 성격의 약세 반응 발생",
        "현재가가 EMA120 $78,341.47 아래에 있어 상단 회복 수요가 아직 확인되지 않음",
        "메인 레인지 상단 $78,300.00을 명확히 회복하지 못하면 Phase D의 LPSY 이후 공급 우위 해석 유지"
      ],
      "reasoning": "4시간 기준 regime은 DIS, regime_state는 confirmed_dis이며 dis_score 96.2와 regime_fitness 0.963으로 분배 구조의 신뢰도가 높다. 주요 앵커는 BC $78,300.00, AR $73,669.00이며, 이후 ST $79,455.00, UT $79,145.00, UTAD $82,828.70, LPSY $81,270.20 순서로 Phase D 분배 진행이 확인된다. 현재가 $77,396.30은 메인 레인지 내부이지만 EQ 약 $75,984.50 위의 프리미엄 영역에 있고, 최근 $77,862.70 상단 테스트 후 $77,138.30 약세 반응이 나와 즉각 경로는 하단 재시험 쪽이 우세하다. 다만 아직 가격이 메인 AR 저점 $73,669.00 아래로 구조적 이탈한 것은 아니므로, 이는 확정적인 Phase E 진입보다는 LPSY 이후 약세 우위의 레인지 내부 진행으로 보는 것이 적절하다.",
      "key_levels": {
        "support": [
          77138.3,
          76696.7,
          74868.0,
          73669.0
        ],
        "resistance": [
          77757.5,
          77862.7,
          78300.0,
          79145.0,
          79455.0,
          81270.2,
          82828.7
        ]
      },
      "time_horizon": "medium term",
      "invalidation_level": "$81,270.20 상방 회복 및 수용 시 LPSY 기반 약세 해석이 훼손되며, $82,828.70 UTAD 고점 회복 시 분배 구조 자체의 무효화 위험이 커짐",
      "risk_scenario": "반대 시나리오는 가격이 $78,300.00 메인 레인지 상단을 회복하고 $79,145.00~$79,455.00 공급대를 흡수하는 경우다. 이 경우 단기 약세 셋업은 실패하며, $81,270.20 LPSY 구간 재시험까지 숏 커버성 상승이 나올 수 있다.",
      "data_quality": "high",
      "metrics": {
        "acc_score": 86.7,
        "dis_score": 96.2,
        "regime": "DIS",
        "regime_state": "confirmed_dis",
        "structure_bias": "bearish",
        "phase_context": "confirmed_dis / distribution / Phase D",
        "phases_detected": [
          "BC",
          "AR",
          "ST",
          "SOW_IN_PHASE_B",
          "UT",
          "UTAD",
          "LPSY"
        ],
        "last_phase": "LPSY",
        "phase_candidates": [
          {
            "label": "BC",
            "side": "high",
            "idx": 90,
            "price": 78300.0,
            "color": "#ffd166"
          },
          {
            "label": "AR",
            "side": "low",
            "idx": 104,
            "price": 73669.0,
            "color": "#06d6a0"
          },
          {
            "label": "ST",
            "side": "high",
            "idx": 146,
            "price": 79455.0,
            "color": "#118ab2"
          },
          {
            "label": "SOW_IN_PHASE_B",
            "side": "low",
            "idx": 162,
            "price": 74868.0,
            "color": "#ef476f"
          },
          {
            "label": "UT",
            "side": "high",
            "idx": 181,
            "price": 79145.0,
            "color": "#f9844a"
          },
          {
            "label": "UTAD",
            "side": "high",
            "idx": 202,
            "price": 82828.7,
            "color": "#f9844a"
          },
          {
            "label": "LPSY",
            "side": "high",
            "idx": 244,
            "price": 81270.2,
            "color": "#8338ec"
          }
        ],
        "phase_structures": [
          {
            "structure_id": "4h_cycle_1",
            "sequence": 1,
            "timeframe": "4h",
            "regime": "distribution",
            "role": "prior_completed_structure",
            "is_active": false,
            "is_completed": true,
            "is_confirmed": true,
            "structure_bias": "bearish",
            "phase_context": "distribution",
            "start_idx": 90,
            "end_idx": 244,
            "phase_count": 7,
            "phases": [
              {
                "label": "BC",
                "side": "high",
                "idx": 90,
                "price": 78300.0,
                "color": "#ffd166",
                "dt": "2026-04-18 01:00:00+09:00"
              },
              {
                "label": "AR",
                "side": "low",
                "idx": 104,
                "price": 73669.0,
                "color": "#06d6a0",
                "dt": "2026-04-20 09:00:00+09:00"
              },
              {
                "label": "ST",
                "side": "high",
                "idx": 146,
                "price": 79455.0,
                "color": "#118ab2",
                "dt": "2026-04-27 09:00:00+09:00"
              },
              {
                "label": "SOW_IN_PHASE_B",
                "side": "low",
                "idx": 162,
                "price": 74868.0,
                "color": "#ef476f",
                "dt": "2026-04-30 01:00:00+09:00"
              },
              {
                "label": "UT",
                "side": "high",
                "idx": 181,
                "price": 79145.0,
                "color": "#f9844a",
                "dt": "2026-05-03 05:00:00+09:00"
              },
              {
                "label": "UTAD",
                "side": "high",
                "idx": 202,
                "price": 82828.7,
                "color": "#f9844a",
                "dt": "2026-05-06 17:00:00+09:00"
              },
              {
                "label": "LPSY",
                "side": "high",
                "idx": 244,
                "price": 81270.2,
                "color": "#8338ec",
                "dt": "2026-05-13 17:00:00+09:00"
              }
            ]
          },
          {
            "structure_id": "4h_cycle_2",
            "sequence": 2,
            "timeframe": "4h",
            "regime": "redistribution",
            "role": "current_structure_candidate",
            "is_active": true,
            "is_completed": false,
            "is_confirmed": true,
            "structure_bias": "bearish",
            "phase_context": "redistribution",
            "start_idx": 266,
            "end_idx": 298,
            "phase_count": 5,
            "phases": [
              {
                "label": "SC",
                "side": "low",
                "idx": 266,
                "price": 77675.4,
                "color": "#ffd166",
                "dt": "2026-05-17 09:00:00+09:00"
              },
              {
                "label": "AR",
                "side": "high",
                "idx": 275,
                "price": 77757.5,
                "color": "#06d6a0",
                "dt": "2026-05-18 21:00:00+09:00"
              },
              {
                "label": "ST",
                "side": "low",
                "idx": 293,
                "price": 76696.7,
                "color": "#118ab2",
                "dt": "2026-05-21 21:00:00+09:00"
              },
              {
                "label": "UT",
                "side": "high",
                "idx": 297,
                "price": 77862.7,
                "color": "#f9844a",
                "dt": "2026-05-22 13:00:00+09:00"
              },
              {
                "label": "SOW",
                "side": "low",
                "idx": 298,
                "price": 77138.3,
                "color": "#ef476f",
                "dt": "2026-05-22 17:00:00+09:00"
              }
            ]
          }
        ],
        "active_structure_id": "4h_cycle_2",
        "primary_structure_id": "4h_cycle_1",
        "structure_count": 2,
        "regime_fitness": 0.9625,
        "current_event": "LPSY",
        "major_phase": "D",
        "pos_in_range": 0.5,
        "main_range_low": 73669.0,
        "main_range_high": 78300.0
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.78,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.66,\n  \"setup_signals\": [\n    \"현재가 $77,396.30은 메인 분배 레인지 EQ 약 $75,984.50 위의 프리미엄 구간에 위치\",\n    \"최근 상단 테스트가 $77,862.70에서 실패한 뒤 $77,138.30까지 SOW 성격의 약세 반응 발생\",\n    \"현재가가 EMA120 $78,341.47 아래에 있어 상단 회복 수요가 아직 확인되지 않음\",\n    \"메인 레인지 상단 $78,300.00을 명확히 회복하지 못하면 Phase D의 LPSY 이후 공급 우위 해석 유지\"\n  ],\n  \"reasoning\": \"4시간 기준 regime은 DIS, regime_state는 confirmed_dis이며 dis_score 96.2와 regime_fitness 0.963으로 분배 구조의 신뢰도가 높다. 주요 앵커는 BC $78,300.00, AR $73,669.00이며, 이후 ST $79,455.00, UT $79,145.00, UTAD $82,828.70, LPSY $81,270.20 순서로 Phase D 분배 진행이 확인된다. 현재가 $77,396.30은 메인 레인지 내부이지만 EQ 약 $75,984.50 위의 프리미엄 영역에 있고, 최근 $77,862.70 상단 테스트 후 $77,138.30 약세 반응이 나와 즉각 경로는 하단 재시험 쪽이 우세하다. 다만 아직 가격이 메인 AR 저점 $73,669.00 아래로 구조적 이탈한 것은 아니므로, 이는 확정적인 Phase E 진입보다는 LPSY 이후 약세 우위의 레인지 내부 진행으로 보는 것이 적절하다.\",\n  \"key_levels\": {\n    \"support\": [\n      77138.3,\n      76696.7,\n      74868.0,\n      73669.0\n    ],\n    \"resistance\": [\n      77757.5,\n      77862.7,\n      78300.0,\n      79145.0,\n      79455.0,\n      81270.2,\n      82828.7\n    ]\n  },\n  \"time_horizon\": \"medium term\",\n  \"invalidation_level\": \"$81,270.20 상방 회복 및 수용 시 LPSY 기반 약세 해석이 훼손되며, $82,828.70 UTAD 고점 회복 시 분배 구조 자체의 무효화 위험이 커짐\",\n  \"risk_scenario\": \"반대 시나리오는 가격이 $78,300.00 메인 레인지 상단을 회복하고 $79,145.00~$79,455.00 공급대를 흡수하는 경우다. 이 경우 단기 약세 셋업은 실패하며, $81,270.20 LPSY 구간 재시험까지 숏 커버성 상승이 나올 수 있다.\",\n  \"data_quality\": \"high\"\n}"
    },
    "derivatives": {
      "agent_id": "derivatives",
      "display_name": "Derivatives Trader",
      "signal": "bearish",
      "confidence": 0.56,
      "structure_bias": "neutral",
      "setup_bias": "bearish",
      "setup_score": 0.62,
      "setup_signals": [
        "현재가 $77,396.30은 7일 레인지 EQ 약 $77,773.15 아래에 있어 구조적 확정 하락은 아니지만, $78,000~$78,400 상단 유동성 스윕 후 반락 가능성이 존재",
        "CVD 변화 +100.2370 대비 가격 24h 변화 +0.22%에 그쳐 매수 체결이 가격 상승으로 연결되지 않는 약한 CVD 다이버전스 발생, cvd_divergence 0.700",
        "OI 24h -0.5440%로 감소 중이며 신규 추세 포지션 유입보다 포지션 언와인딩 성격이 강함",
        "롱 계정 비율 0.571, 숏 계정 비율 0.429로 롱 계정이 증가하고 있으며 account_flow_label은 long_accounts_rising_short_accounts_falling, 단기적으로 롱 쏠림의 역발상 리스크 존재",
        "현물-선물 베이시스 -0.0320%로 소폭 백워데이션이며, 선물 프리미엄이 약해 공격적 롱 추격 신호가 부족"
      ],
      "reasoning": "현재 BTC는 $77,396.30으로 EMA20 $77,461.19 바로 아래, EMA120 $78,341.47 아래에 있어 확정적인 상승 구조 수용은 아직 확인되지 않았습니다. 구조적으로는 7일 저점 $76,014.20과 고점 $79,532.10 사이 박스권 내부라 BOS나 CHoCH가 확정되지 않아 structure_bias는 중립입니다. 다만 CVD가 +100.2370 증가했음에도 가격은 24시간 +0.22%에 그치고, OI가 -0.5440% 감소해 매수 참여가 가격 확장으로 이어지지 않는 약한 참여 구조가 보입니다. $78,000과 $78,400 위 청산 유동성이 가깝지만, 해당 구간을 스윕한 뒤 수용 실패 시 $76,014, $74,900, 특히 가장 강한 청산 레벨인 $74,300까지 하방 자석이 열릴 수 있습니다.",
      "key_levels": {
        "support": [
          76014.2,
          74900,
          74300,
          69700
        ],
        "resistance": [
          78000,
          78400,
          79532.1,
          80500
        ]
      },
      "time_horizon": "short term, 파생 포지셔닝 선행성을 감안한 4~8시간에서 1~2일 관점",
      "invalidation_level": "79532.10",
      "risk_scenario": "$78,000 및 $78,400 청산 유동성을 흡수한 뒤 $79,532.10 7일 고점 위에서 4시간봉 종가 수용이 나오면, 현재의 약한 참여 기반 bearish setup은 무효화되고 $80,500 상단 청산 클러스터까지 숏 커버링 랠리가 확장될 수 있습니다.",
      "data_quality": "high",
      "metrics": {
        "cvd_divergence": 0.7,
        "cvd_change": 100.237,
        "oi_trend": 0.446,
        "oi_change_pct_24h": -0.544,
        "oi_latest": 100666.14,
        "funding_pressure": 0.47,
        "funding_avg": 2.958e-05,
        "funding_change_24h": -6.95e-05,
        "long_account_ratio": 0.564,
        "short_account_ratio": 0.436,
        "long_account_latest": 0.571,
        "short_account_latest": 0.429,
        "long_account_change_24h": 0.0034,
        "short_account_change_24h": -0.0034,
        "account_flow_label": "long_accounts_rising_short_accounts_falling",
        "account_short_crowding": 0.0,
        "account_long_crowding": 0.534,
        "ls_imbalance": 0.0,
        "ls_imbalance_interpretation": "high=short-account crowding / low=long-account crowding",
        "spot_futures_basis_score": 0.492,
        "spot_futures_basis_pct": -0.032,
        "basis_change_lookback": 0.0063,
        "aggregate_score": 0.422,
        "bull_signals": 1,
        "bear_signals": 2,
        "liq_below": [
          [
            74900,
            14078.393283000001
          ],
          [
            74300,
            16175.673239000002
          ],
          [
            69700,
            13864.341843750002
          ]
        ],
        "liq_above": [
          [
            78000,
            13727.549085300001
          ],
          [
            78400,
            12254.557124250001
          ],
          [
            80500,
            13545.143183000002
          ]
        ],
        "strongest_liq_level": 74300,
        "fragility_score": 0.804,
        "positioning_extreme": "balanced"
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.56,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.62,\n  \"setup_signals\": [\n    \"현재가 $77,396.30은 7일 레인지 EQ 약 $77,773.15 아래에 있어 구조적 확정 하락은 아니지만, $78,000~$78,400 상단 유동성 스윕 후 반락 가능성이 존재\",\n    \"CVD 변화 +100.2370 대비 가격 24h 변화 +0.22%에 그쳐 매수 체결이 가격 상승으로 연결되지 않는 약한 CVD 다이버전스 발생, cvd_divergence 0.700\",\n    \"OI 24h -0.5440%로 감소 중이며 신규 추세 포지션 유입보다 포지션 언와인딩 성격이 강함\",\n    \"롱 계정 비율 0.571, 숏 계정 비율 0.429로 롱 계정이 증가하고 있으며 account_flow_label은 long_accounts_rising_short_accounts_falling, 단기적으로 롱 쏠림의 역발상 리스크 존재\",\n    \"현물-선물 베이시스 -0.0320%로 소폭 백워데이션이며, 선물 프리미엄이 약해 공격적 롱 추격 신호가 부족\"\n  ],\n  \"reasoning\": \"현재 BTC는 $77,396.30으로 EMA20 $77,461.19 바로 아래, EMA120 $78,341.47 아래에 있어 확정적인 상승 구조 수용은 아직 확인되지 않았습니다. 구조적으로는 7일 저점 $76,014.20과 고점 $79,532.10 사이 박스권 내부라 BOS나 CHoCH가 확정되지 않아 structure_bias는 중립입니다. 다만 CVD가 +100.2370 증가했음에도 가격은 24시간 +0.22%에 그치고, OI가 -0.5440% 감소해 매수 참여가 가격 확장으로 이어지지 않는 약한 참여 구조가 보입니다. $78,000과 $78,400 위 청산 유동성이 가깝지만, 해당 구간을 스윕한 뒤 수용 실패 시 $76,014, $74,900, 특히 가장 강한 청산 레벨인 $74,300까지 하방 자석이 열릴 수 있습니다.\",\n  \"key_levels\": {\n    \"support\": [\n      76014.2,\n      74900,\n      74300,\n      69700\n    ],\n    \"resistance\": [\n      78000,\n      78400,\n      79532.1,\n      80500\n    ]\n  },\n  \"time_horizon\": \"short term, 파생 포지셔닝 선행성을 감안한 4~8시간에서 1~2일 관점\",\n  \"invalidation_level\": \"79532.10\",\n  \"risk_scenario\": \"$78,000 및 $78,400 청산 유동성을 흡수한 뒤 $79,532.10 7일 고점 위에서 4시간봉 종가 수용이 나오면, 현재의 약한 참여 기반 bearish setup은 무효화되고 $80,500 상단 청산 클러스터까지 숏 커버링 랠리가 확장될 수 있습니다.\",\n  \"data_quality\": \"high\"\n}"
    },
    "harmonic": {
      "agent_id": "harmonic",
      "display_name": "Harmonic Specialist",
      "signal": "bullish",
      "confidence": 0.54,
      "structure_bias": "neutral",
      "setup_bias": "bullish",
      "setup_score": 0.56,
      "setup_signals": [
        "확정 반응이 나온 bullish Bat PRZ $75,267.38-$76,622.56가 방어됨: D=$76,014.20, reaction_score=0.95, D/PRZ failure-zone defended",
        "현재가 $77,396.30은 방어된 Bat PRZ 상단 $76,622.56 위에서 유지 중이며, Bat TP1 $78,574.55가 아직 미도달",
        "고컨플루언스 forming bullish Gartley PRZ $78,548.99-$79,671.71가 상방 2.21%에 위치: ABCD/BC_EXT/XAD 3개 Fib family 중첩",
        "EMA240 $77,017.67 위에서 거래되지만 EMA20 $77,461.19 및 EMA120 $78,341.47 아래라 구조 확정 전 단기 저항이 남아 있음"
      ],
      "reasoning": "4h 하모닉 관점에서 가장 중요한 확정 패턴은 strict medium bullish Bat이며, PRZ $75,267.38-$76,622.56에서 D=$76,014.20 이후 rejection/defense가 확인되어 post-confirmation vote eligible 상태입니다. 이 패턴의 검증된 TP ladder는 TP1 $78,574.55, TP2 $80,199.11, TP3 $82,828.70이며 현재가 $77,396.30은 아직 TP1 아래라 상승 여지가 남아 있습니다. 다만 best council PRZ는 forming bullish Gartley $78,548.99-$79,671.71로, 아직 pre-confirmation reversal-candidate일 뿐이며 독립적으로 메인 경로를 뒤집을 권한은 없습니다. 명확한 BOS/CHoCH 또는 구조적 acceptance 데이터가 제공되지 않았으므로 structure_bias는 neutral로 두고, 방어된 Bat PRZ 기반의 setup_bias만 bullish로 평가합니다.",
      "key_levels": {
        "support": [
          77017.67,
          76622.56,
          76014.2,
          75267.38
        ],
        "resistance": [
          78468,
          78548.99,
          79110.35,
          79671.71,
          80199.11,
          82460.5,
          82828.7
        ]
      },
      "time_horizon": "short/medium term",
      "invalidation_level": "$75,267.38",
      "risk_scenario": "반대로 가격이 $76,622.56 아래로 재진입하고 특히 Bat PRZ 하단 $75,267.38을 4h 기준으로 이탈하면, 확인된 bullish Bat 반응은 실패로 간주됩니다. 이 경우 $76,014.20 D 저점 방어 실패가 되어 하모닉 bullish TP ladder는 무효화되고, 하방 유동성 재탐색 또는 더 깊은 PRZ 재가격 산정이 필요합니다.",
      "data_quality": "medium",
      "metrics": {
        "patterns_found": 107,
        "completed_patterns_found": 44,
        "forming_d_prz_found": 63,
        "swing_orders_scanned": [
          3,
          5,
          8
        ],
        "swing_search_window": 30,
        "multiscale_swings_scanned": 57,
        "swing_highs_scanned": 29,
        "swing_lows_scanned": 28,
        "timeframe": "4h",
        "prz_active_threshold_pct": 0.75,
        "prz_nearby_threshold_pct": 1.5,
        "prz_watch_threshold_pct": 3.0,
        "prz_max_width_pct": 1.3,
        "quality_counts": {
          "high": 4,
          "medium": 42,
          "low": 61
        },
        "prz_status_counts": {
          "active": 41,
          "nearby": 15,
          "watch": 18,
          "far": 33,
          "forming": 21
        },
        "high_confluence_prz_count": 16,
        "strict_patterns_found": 48,
        "candidate_patterns_found": 59,
        "active_patterns_at_prz": 41,
        "nearby_patterns": 15,
        "all_patterns": [
          "bat",
          "gartley",
          "butterfly",
          "bat",
          "gartley",
          "butterfly",
          "butterfly",
          "butterfly",
          "bat",
          "gartley",
          "crab",
          "shark",
          "bat",
          "bat",
          "shark",
          "bat",
          "bat",
          "butterfly",
          "crab",
          "bat",
          "butterfly",
          "bat",
          "bat",
          "butterfly",
          "crab",
          "bat",
          "crab",
          "crab",
          "shark",
          "bat",
          "crab",
          "crab",
          "bat",
          "gartley",
          "shark",
          "bat",
          "crab",
          "butterfly",
          "gartley",
          "crab",
          "bat",
          "crab",
          "shark",
          "shark",
          "bat",
          "crab",
          "butterfly",
          "crab",
          "crab",
          "crab",
          "bat",
          "crab",
          "shark",
          "shark",
          "crab",
          "shark",
          "shark",
          "bat",
          "butterfly",
          "shark",
          "butterfly",
          "shark",
          "crab",
          "crab",
          "butterfly",
          "butterfly",
          "bat",
          "shark",
          "butterfly",
          "crab",
          "gartley",
          "crab",
          "bat",
          "gartley",
          "crab",
          "shark",
          "butterfly",
          "crab",
          "crab",
          "shark",
          "crab",
          "crab",
          "shark",
          "gartley",
          "bat",
          "crab",
          "butterfly",
          "crab",
          "shark",
          "shark",
          "gartley",
          "gartley",
          "shark",
          "bat",
          "butterfly",
          "shark",
          "shark",
          "butterfly",
          "butterfly",
          "gartley",
          "shark",
          "shark",
          "bat",
          "shark",
          "shark",
          "butterfly",
          "shark"
        ],
        "all_signals": [
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish"
        ],
        "best_pattern": "bat",
        "best_pattern_quality": "strict",
        "best_quality": "medium",
        "best_pattern_score": 0.916,
        "best_completion_status": "forming",
        "nearest_pattern": "bat",
        "nearest_prz": 77431.61,
        "price_to_prz": 0.05,
        "prz_range": [
          76395.22,
          78468.0
        ],
        "council_relevant_prz_count": 2,
        "directional_influence_prz_count": 2,
        "confirmed_reaction_prz_count": 1,
        "validated_harmonic_tp_count": 1,
        "pattern_candidates": [
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.908,
            "ratio_score": 0.976,
            "prz_score": 0.979,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 79110.35,
            "prz_range": [
              78548.99,
              79671.71
            ],
            "prz_width_pct": 1.419,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 2.21,
            "price_to_prz_pct_raw": 2.2146,
            "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": 79110.35,
              "a_price": 82460.5,
              "tp1_ad_382": 80390.11,
              "tp2_ad_618": 81180.74,
              "tp3_a_or_structure_liquidity": 82460.5,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6139,
              "ABC": 0.5524
            },
            "x_price": 78128.3,
            "x_idx": 190,
            "x_order": 5,
            "a_price": 82460.5,
            "a_idx": 229,
            "a_order": 8,
            "b_price": 79801.0,
            "b_idx": 240,
            "b_order": 3,
            "c_price": 81270.2,
            "c_idx": 244,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.892,
            "ratio_score": 0.977,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 79756.37,
            "prz_range": [
              79278.16,
              80234.57
            ],
            "prz_width_pct": 1.199,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 3.05,
            "price_to_prz_pct_raw": 3.0493,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 79756.37,
              "a_price": 82460.5,
              "tp1_ad_382": 80789.35,
              "tp2_ad_618": 81427.52,
              "tp3_a_or_structure_liquidity": 82460.5,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6219,
              "ABC": 0.825
            },
            "x_price": 79137.4,
            "x_idx": 212,
            "x_order": 8,
            "a_price": 82460.5,
            "a_idx": 229,
            "a_order": 8,
            "b_price": 80394.0,
            "b_idx": 233,
            "b_order": 3,
            "c_price": 82098.9,
            "c_idx": 234,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.866,
            "ratio_score": 0.955,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 79801.0,
            "prz_range": [
              79278.16,
              80234.57
            ],
            "prz_width_pct": 1.199,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 3.05,
            "price_to_prz_pct_raw": 3.0493,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "post_D_close_progress"
              ],
              "reaction_score": 0.9,
              "reaction_detail": {
                "reaction_score": 0.9,
                "reaction_move_ratio_ad": 0.826,
                "adverse_move_ratio_ad": 0.409,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "post_D_close_progress"
                ]
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 79756.37,
              "a_price": 82460.5,
              "tp1_ad_382": 80789.35,
              "tp2_ad_618": 81427.52,
              "tp3_a_or_structure_liquidity": 82460.5,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6219,
              "ABC": 0.825,
              "BCD": 1.3478,
              "XAD": 0.8003
            },
            "x_price": 79137.4,
            "x_idx": 212,
            "x_order": 8,
            "a_price": 82460.5,
            "a_idx": 229,
            "a_order": 8,
            "b_price": 80394.0,
            "b_idx": 233,
            "b_order": 3,
            "c_price": 82098.9,
            "c_idx": 234,
            "c_order": 3,
            "d_idx": 240
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.916,
            "ratio_score": 1.0,
            "prz_score": 0.913,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 75944.97,
            "prz_range": [
              75267.38,
              76622.56
            ],
            "prz_width_pct": 1.784,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.88,
            "price_to_prz_pct_raw": -1.8752,
            "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": 75944.97,
              "a_price": 82828.7,
              "tp1_ad_382": 78574.55,
              "tp2_ad_618": 80199.11,
              "tp3_a_or_structure_liquidity": 82828.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4209,
              "ABC": 0.4085
            },
            "x_price": 75635.6,
            "x_idx": 155,
            "x_order": 5,
            "a_price": 82828.7,
            "a_idx": 202,
            "a_order": 8,
            "b_price": 79801.0,
            "b_idx": 240,
            "b_order": 3,
            "c_price": 78564.3,
            "c_idx": 268,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.893,
            "ratio_score": 1.0,
            "prz_score": 0.927,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 79237.34,
            "prz_range": [
              78560.37,
              79914.31
            ],
            "prz_width_pct": 1.709,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 2.38,
            "price_to_prz_pct_raw": 2.3787,
            "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": "bat",
              "d_price": 79237.34,
              "a_price": 82460.5,
              "tp1_ad_382": 80468.59,
              "tp2_ad_618": 81229.25,
              "tp3_a_or_structure_liquidity": 82460.5,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.477,
              "ABC": 0.424
            },
            "x_price": 78128.3,
            "x_idx": 190,
            "x_order": 5,
            "a_price": 82460.5,
            "a_idx": 229,
            "a_order": 8,
            "b_price": 80394.0,
            "b_idx": 233,
            "b_order": 3,
            "c_price": 81270.2,
            "c_idx": 244,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.859,
            "ratio_score": 0.927,
            "prz_score": 0.913,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 76014.2,
            "prz_range": [
              75267.38,
              76622.56
            ],
            "prz_width_pct": 1.784,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.88,
            "price_to_prz_pct_raw": -1.8752,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.236_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 0.95,
              "reaction_detail": {
                "reaction_score": 0.95,
                "reaction_move_ratio_ad": 0.266,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.236_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 75944.97,
              "a_price": 82828.7,
              "tp1_ad_382": 78574.55,
              "tp2_ad_618": 80199.11,
              "tp3_a_or_structure_liquidity": 82828.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.3803,
              "ABC": 0.4085,
              "BCD": 2.062,
              "XAD": 0.856
            },
            "x_price": 74868.0,
            "x_idx": 162,
            "x_order": 8,
            "a_price": 82828.7,
            "a_idx": 202,
            "a_order": 8,
            "b_price": 79801.0,
            "b_idx": 240,
            "b_order": 3,
            "c_price": 78564.3,
            "c_idx": 268,
            "c_order": 5,
            "d_idx": 275
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.848,
            "ratio_score": 0.851,
            "prz_score": 0.968,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 78610.0,
            "prz_range": [
              78472.46,
              79640.89
            ],
            "prz_width_pct": 1.478,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 2.15,
            "price_to_prz_pct_raw": 2.1453,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "initial_PRZ_reaction",
                "PRZ_center_reclaimed_or_rejected"
              ],
              "reaction_score": 0.5,
              "reaction_detail": {
                "reaction_score": 0.5,
                "reaction_move_ratio_ad": 0.219,
                "adverse_move_ratio_ad": 0.239,
                "bars_after_d": 12,
                "reasons": [
                  "initial_PRZ_reaction",
                  "PRZ_center_reclaimed_or_rejected"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 79056.68,
              "a_price": 82828.7,
              "tp1_ad_382": 80497.59,
              "tp2_ad_618": 81387.79,
              "tp3_a_or_structure_liquidity": 82828.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5422,
              "ABC": 0.4014,
              "BCD": 2.5454,
              "XAD": 0.8786
            },
            "x_price": 78027.0,
            "x_idx": 183,
            "x_order": 5,
            "a_price": 82828.7,
            "a_idx": 202,
            "a_order": 8,
            "b_price": 80225.1,
            "b_idx": 229,
            "b_order": 5,
            "c_price": 81270.2,
            "c_idx": 244,
            "c_order": 5,
            "d_idx": 257
          },
          {
            "pattern": "shark",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.823,
            "ratio_score": 0.799,
            "prz_score": 0.948,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 79458.82,
            "prz_range": [
              78827.67,
              80089.98
            ],
            "prz_width_pct": 1.589,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 2.66,
            "price_to_prz_pct_raw": 2.6649,
            "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": "shark",
              "d_price": 79458.82,
              "a_price": 81043.2,
              "tp1_ad_382": 80064.06,
              "tp2_ad_618": 80437.97,
              "tp3_a_or_structure_liquidity": 81043.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6518,
              "ABC": 1.1827
            },
            "x_price": 79137.4,
            "x_idx": 212,
            "x_order": 8,
            "a_price": 81043.2,
            "a_idx": 222,
            "a_order": 3,
            "b_price": 79801.0,
            "b_idx": 240,
            "b_order": 3,
            "c_price": 81270.2,
            "c_idx": 244,
            "c_order": 5,
            "d_idx": null
          }
        ],
        "council_relevant_prz": [
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.859,
            "ratio_score": 0.927,
            "prz_score": 0.913,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 76014.2,
            "prz_range": [
              75267.38,
              76622.56
            ],
            "prz_width_pct": 1.784,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.88,
            "price_to_prz_pct_raw": -1.8752,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.236_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 0.95,
              "reaction_detail": {
                "reaction_score": 0.95,
                "reaction_move_ratio_ad": 0.266,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.236_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 75944.97,
              "a_price": 82828.7,
              "tp1_ad_382": 78574.55,
              "tp2_ad_618": 80199.11,
              "tp3_a_or_structure_liquidity": 82828.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.3803,
              "ABC": 0.4085,
              "BCD": 2.062,
              "XAD": 0.856
            },
            "x_price": 74868.0,
            "x_idx": 162,
            "x_order": 8,
            "a_price": 82828.7,
            "a_idx": 202,
            "a_order": 8,
            "b_price": 79801.0,
            "b_idx": 240,
            "b_order": 3,
            "c_price": 78564.3,
            "c_idx": 268,
            "c_order": 5,
            "d_idx": 275
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.908,
            "ratio_score": 0.976,
            "prz_score": 0.979,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 79110.35,
            "prz_range": [
              78548.99,
              79671.71
            ],
            "prz_width_pct": 1.419,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 2.21,
            "price_to_prz_pct_raw": 2.2146,
            "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": 79110.35,
              "a_price": 82460.5,
              "tp1_ad_382": 80390.11,
              "tp2_ad_618": 81180.74,
              "tp3_a_or_structure_liquidity": 82460.5,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6139,
              "ABC": 0.5524
            },
            "x_price": 78128.3,
            "x_idx": 190,
            "x_order": 5,
            "a_price": 82460.5,
            "a_idx": 229,
            "a_order": 8,
            "b_price": 79801.0,
            "b_idx": 240,
            "b_order": 3,
            "c_price": 81270.2,
            "c_idx": 244,
            "c_order": 5,
            "d_idx": null
          }
        ],
        "report_detail_candidates": [
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.908,
            "ratio_score": 0.976,
            "prz_score": 0.979,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 79110.35,
            "prz_range": [
              78548.99,
              79671.71
            ],
            "prz_width_pct": 1.419,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 2.21,
            "price_to_prz_pct_raw": 2.2146,
            "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": 79110.35,
              "a_price": 82460.5,
              "tp1_ad_382": 80390.11,
              "tp2_ad_618": 81180.74,
              "tp3_a_or_structure_liquidity": 82460.5,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6139,
              "ABC": 0.5524
            },
            "x_price": 78128.3,
            "x_idx": 190,
            "x_order": 5,
            "a_price": 82460.5,
            "a_idx": 229,
            "a_order": 8,
            "b_price": 79801.0,
            "b_idx": 240,
            "b_order": 3,
            "c_price": 81270.2,
            "c_idx": 244,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.892,
            "ratio_score": 0.977,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 79756.37,
            "prz_range": [
              79278.16,
              80234.57
            ],
            "prz_width_pct": 1.199,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 3.05,
            "price_to_prz_pct_raw": 3.0493,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 79756.37,
              "a_price": 82460.5,
              "tp1_ad_382": 80789.35,
              "tp2_ad_618": 81427.52,
              "tp3_a_or_structure_liquidity": 82460.5,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6219,
              "ABC": 0.825
            },
            "x_price": 79137.4,
            "x_idx": 212,
            "x_order": 8,
            "a_price": 82460.5,
            "a_idx": 229,
            "a_order": 8,
            "b_price": 80394.0,
            "b_idx": 233,
            "b_order": 3,
            "c_price": 82098.9,
            "c_idx": 234,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.866,
            "ratio_score": 0.955,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 79801.0,
            "prz_range": [
              79278.16,
              80234.57
            ],
            "prz_width_pct": 1.199,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 3.05,
            "price_to_prz_pct_raw": 3.0493,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "post_D_close_progress"
              ],
              "reaction_score": 0.9,
              "reaction_detail": {
                "reaction_score": 0.9,
                "reaction_move_ratio_ad": 0.826,
                "adverse_move_ratio_ad": 0.409,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "post_D_close_progress"
                ]
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 79756.37,
              "a_price": 82460.5,
              "tp1_ad_382": 80789.35,
              "tp2_ad_618": 81427.52,
              "tp3_a_or_structure_liquidity": 82460.5,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6219,
              "ABC": 0.825,
              "BCD": 1.3478,
              "XAD": 0.8003
            },
            "x_price": 79137.4,
            "x_idx": 212,
            "x_order": 8,
            "a_price": 82460.5,
            "a_idx": 229,
            "a_order": 8,
            "b_price": 80394.0,
            "b_idx": 233,
            "b_order": 3,
            "c_price": 82098.9,
            "c_idx": 234,
            "c_order": 3,
            "d_idx": 240
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.916,
            "ratio_score": 1.0,
            "prz_score": 0.913,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 75944.97,
            "prz_range": [
              75267.38,
              76622.56
            ],
            "prz_width_pct": 1.784,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.88,
            "price_to_prz_pct_raw": -1.8752,
            "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": 75944.97,
              "a_price": 82828.7,
              "tp1_ad_382": 78574.55,
              "tp2_ad_618": 80199.11,
              "tp3_a_or_structure_liquidity": 82828.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4209,
              "ABC": 0.4085
            },
            "x_price": 75635.6,
            "x_idx": 155,
            "x_order": 5,
            "a_price": 82828.7,
            "a_idx": 202,
            "a_order": 8,
            "b_price": 79801.0,
            "b_idx": 240,
            "b_order": 3,
            "c_price": 78564.3,
            "c_idx": 268,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.893,
            "ratio_score": 1.0,
            "prz_score": 0.927,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 79237.34,
            "prz_range": [
              78560.37,
              79914.31
            ],
            "prz_width_pct": 1.709,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 2.38,
            "price_to_prz_pct_raw": 2.3787,
            "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": "bat",
              "d_price": 79237.34,
              "a_price": 82460.5,
              "tp1_ad_382": 80468.59,
              "tp2_ad_618": 81229.25,
              "tp3_a_or_structure_liquidity": 82460.5,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.477,
              "ABC": 0.424
            },
            "x_price": 78128.3,
            "x_idx": 190,
            "x_order": 5,
            "a_price": 82460.5,
            "a_idx": 229,
            "a_order": 8,
            "b_price": 80394.0,
            "b_idx": 233,
            "b_order": 3,
            "c_price": 81270.2,
            "c_idx": 244,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.859,
            "ratio_score": 0.927,
            "prz_score": 0.913,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 76014.2,
            "prz_range": [
              75267.38,
              76622.56
            ],
            "prz_width_pct": 1.784,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.88,
            "price_to_prz_pct_raw": -1.8752,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.236_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 0.95,
              "reaction_detail": {
                "reaction_score": 0.95,
                "reaction_move_ratio_ad": 0.266,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.236_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 75944.97,
              "a_price": 82828.7,
              "tp1_ad_382": 78574.55,
              "tp2_ad_618": 80199.11,
              "tp3_a_or_structure_liquidity": 82828.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.3803,
              "ABC": 0.4085,
              "BCD": 2.062,
              "XAD": 0.856
            },
            "x_price": 74868.0,
            "x_idx": 162,
            "x_order": 8,
            "a_price": 82828.7,
            "a_idx": 202,
            "a_order": 8,
            "b_price": 79801.0,
            "b_idx": 240,
            "b_order": 3,
            "c_price": 78564.3,
            "c_idx": 268,
            "c_order": 5,
            "d_idx": 275
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.848,
            "ratio_score": 0.851,
            "prz_score": 0.968,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 78610.0,
            "prz_range": [
              78472.46,
              79640.89
            ],
            "prz_width_pct": 1.478,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 2.15,
            "price_to_prz_pct_raw": 2.1453,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "initial_PRZ_reaction",
                "PRZ_center_reclaimed_or_rejected"
              ],
              "reaction_score": 0.5,
              "reaction_detail": {
                "reaction_score": 0.5,
                "reaction_move_ratio_ad": 0.219,
                "adverse_move_ratio_ad": 0.239,
                "bars_after_d": 12,
                "reasons": [
                  "initial_PRZ_reaction",
                  "PRZ_center_reclaimed_or_rejected"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 79056.68,
              "a_price": 82828.7,
              "tp1_ad_382": 80497.59,
              "tp2_ad_618": 81387.79,
              "tp3_a_or_structure_liquidity": 82828.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5422,
              "ABC": 0.4014,
              "BCD": 2.5454,
              "XAD": 0.8786
            },
            "x_price": 78027.0,
            "x_idx": 183,
            "x_order": 5,
            "a_price": 82828.7,
            "a_idx": 202,
            "a_order": 8,
            "b_price": 80225.1,
            "b_idx": 229,
            "b_order": 5,
            "c_price": 81270.2,
            "c_idx": 244,
            "c_order": 5,
            "d_idx": 257
          },
          {
            "pattern": "shark",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.823,
            "ratio_score": 0.799,
            "prz_score": 0.948,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 79458.82,
            "prz_range": [
              78827.67,
              80089.98
            ],
            "prz_width_pct": 1.589,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 2.66,
            "price_to_prz_pct_raw": 2.6649,
            "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": "shark",
              "d_price": 79458.82,
              "a_price": 81043.2,
              "tp1_ad_382": 80064.06,
              "tp2_ad_618": 80437.97,
              "tp3_a_or_structure_liquidity": 81043.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6518,
              "ABC": 1.1827
            },
            "x_price": 79137.4,
            "x_idx": 212,
            "x_order": 8,
            "a_price": 81043.2,
            "a_idx": 222,
            "a_order": 3,
            "b_price": 79801.0,
            "b_idx": 240,
            "b_order": 3,
            "c_price": 81270.2,
            "c_idx": 244,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.789,
            "ratio_score": 0.748,
            "prz_score": 0.962,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 78610.0,
            "prz_range": [
              78381.03,
              79576.86
            ],
            "prz_width_pct": 1.514,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 2.04,
            "price_to_prz_pct_raw": 2.0449,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.236_reaction_reached",
                "PRZ_center_reclaimed_or_rejected"
              ],
              "reaction_score": 0.65,
              "reaction_detail": {
                "reaction_score": 0.65,
                "reaction_move_ratio_ad": 0.239,
                "adverse_move_ratio_ad": 0.262,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.236_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 78978.95,
              "a_price": 82460.5,
              "tp1_ad_382": 80308.9,
              "tp2_ad_618": 81130.55,
              "tp3_a_or_structure_liquidity": 82460.5,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5999,
              "ABC": 0.8265,
              "BCD": 1.5419,
              "XAD": 0.8685
            },
            "x_price": 78027.0,
            "x_idx": 183,
            "x_order": 5,
            "a_price": 82460.5,
            "a_idx": 229,
            "a_order": 8,
            "b_price": 79801.0,
            "b_idx": 240,
            "b_order": 3,
            "c_price": 81999.0,
            "c_idx": 252,
            "c_order": 8,
            "d_idx": 257
          },
          {
            "pattern": "shark",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.753,
            "ratio_score": 0.48,
            "prz_score": 0.907,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 77813.71,
            "prz_range": [
              77106.13,
              78521.29
            ],
            "prz_width_pct": 1.819,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.54,
            "price_to_prz_pct_raw": 0.5393,
            "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": 77813.71,
              "a_price": 81043.2,
              "tp1_ad_382": 79047.38,
              "tp2_ad_618": 79809.54,
              "tp3_a_or_structure_liquidity": 81043.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4262,
              "ABC": 0.9956
            },
            "x_price": 78128.3,
            "x_idx": 190,
            "x_order": 5,
            "a_price": 81043.2,
            "a_idx": 222,
            "a_order": 3,
            "b_price": 79801.0,
            "b_idx": 240,
            "b_order": 3,
            "c_price": 78564.3,
            "c_idx": 268,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "shark",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.631,
            "ratio_score": 0.46,
            "prz_score": 0.908,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 78713.8,
            "prz_range": [
              78651.89,
              80089.91
            ],
            "prz_width_pct": 1.812,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 2.55,
            "price_to_prz_pct_raw": 2.5513,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "post_D_close_progress"
              ],
              "reaction_score": 0.9,
              "reaction_detail": {
                "reaction_score": 0.9,
                "reaction_move_ratio_ad": 1.41,
                "adverse_move_ratio_ad": 0.045,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "post_D_close_progress"
                ]
              },
              "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": "shark",
              "d_price": 79370.9,
              "a_price": 81043.2,
              "tp1_ad_382": 80009.72,
              "tp2_ad_618": 80404.38,
              "tp3_a_or_structure_liquidity": 81043.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6518,
              "ABC": 1.1827,
              "BCD": 1.74,
              "XAD": 1.2223
            },
            "x_price": 79137.4,
            "x_idx": 212,
            "x_order": 8,
            "a_price": 81043.2,
            "a_idx": 222,
            "a_order": 3,
            "b_price": 79801.0,
            "b_idx": 240,
            "b_order": 3,
            "c_price": 81270.2,
            "c_idx": 244,
            "c_order": 5,
            "d_idx": 246
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.906,
            "ratio_score": 0.997,
            "prz_score": 0.847,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 77633.4,
            "prz_range": [
              76798.64,
              78468.15
            ],
            "prz_width_pct": 2.151,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.31,
            "price_to_prz_pct_raw": 0.3063,
            "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": 77633.4,
              "a_price": 82828.7,
              "tp1_ad_382": 79618.0,
              "tp2_ad_618": 80844.09,
              "tp3_a_or_structure_liquidity": 82828.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7853,
              "ABC": 0.8023
            },
            "x_price": 78128.3,
            "x_idx": 190,
            "x_order": 5,
            "a_price": 82828.7,
            "a_idx": 202,
            "a_order": 8,
            "b_price": 79137.4,
            "b_idx": 212,
            "b_order": 8,
            "c_price": 82098.9,
            "c_idx": 234,
            "c_order": 3,
            "d_idx": null
          }
        ],
        "actionable_patterns_list": [
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.908,
            "prz_proximity": "nearby",
            "prz_range": [
              78548.99,
              79671.71
            ],
            "prz_reversal_direction": "up",
            "price_to_prz_pct": 2.21,
            "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": 79110.35,
              "a_price": 82460.5,
              "tp1_ad_382": 80390.11,
              "tp2_ad_618": 81180.74,
              "tp3_a_or_structure_liquidity": 82460.5,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "GARTLEY FORMING HIGH PRZ $78,548.99-$79,671.71: expected reversal UP if price reacts in zone"
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.859,
            "prz_proximity": "nearby",
            "prz_range": [
              75267.38,
              76622.56
            ],
            "prz_reversal_direction": "up",
            "price_to_prz_pct": -1.88,
            "high_confluence_prz": true,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.236_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 0.95,
              "reaction_detail": {
                "reaction_score": 0.95,
                "reaction_move_ratio_ad": 0.266,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.236_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 75944.97,
              "a_price": 82828.7,
              "tp1_ad_382": 78574.55,
              "tp2_ad_618": 80199.11,
              "tp3_a_or_structure_liquidity": 82828.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "BAT COMPLETED MEDIUM PRZ $75,267.38-$76,622.56: 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.908,
          "ratio_score": 0.976,
          "prz_score": 0.979,
          "prz_proximity": "nearby",
          "action_status": "nearby",
          "high_confluence_prz": true,
          "d_price": 79110.35,
          "prz_range": [
            78548.99,
            79671.71
          ],
          "prz_width_pct": 1.419,
          "prz_confluence_count": 3,
          "prz_fib_families": [
            "ABCD",
            "BC_EXT",
            "XAD"
          ],
          "price_to_prz_pct": 2.21,
          "price_to_prz_pct_raw": 2.2146,
          "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": 79110.35,
            "a_price": 82460.5,
            "tp1_ad_382": 80390.11,
            "tp2_ad_618": 81180.74,
            "tp3_a_or_structure_liquidity": 82460.5,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          "ratios": {
            "XAB": 0.6139,
            "ABC": 0.5524
          },
          "x_price": 78128.3,
          "x_idx": 190,
          "x_order": 5,
          "a_price": 82460.5,
          "a_idx": 229,
          "a_order": 8,
          "b_price": 79801.0,
          "b_idx": 240,
          "b_order": 3,
          "c_price": 81270.2,
          "c_idx": 244,
          "c_order": 5,
          "d_idx": null
        },
        "best_tp_ladder": {
          "direction": "bullish",
          "source": "gartley",
          "d_price": 79110.35,
          "a_price": 82460.5,
          "tp1_ad_382": 80390.11,
          "tp2_ad_618": 81180.74,
          "tp3_a_or_structure_liquidity": 82460.5,
          "note": "Use as strong TP ladder context; not standalone path authority."
        },
        "best_confirmed_tp_ladder": {
          "direction": "bullish",
          "source": "bat",
          "d_price": 75944.97,
          "a_price": 82828.7,
          "tp1_ad_382": 78574.55,
          "tp2_ad_618": 80199.11,
          "tp3_a_or_structure_liquidity": 82828.7,
          "note": "Use as strong TP ladder context; not standalone path authority."
        },
        "tp_ladder": [
          {
            "direction": "bullish",
            "source": "gartley",
            "d_price": 79110.35,
            "a_price": 82460.5,
            "tp1_ad_382": 80390.11,
            "tp2_ad_618": 81180.74,
            "tp3_a_or_structure_liquidity": 82460.5,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bullish",
            "source": "bat",
            "d_price": 75944.97,
            "a_price": 82828.7,
            "tp1_ad_382": 78574.55,
            "tp2_ad_618": 80199.11,
            "tp3_a_or_structure_liquidity": 82828.7,
            "note": "Use as strong TP ladder context; not standalone path authority."
          }
        ],
        "validated_tp_ladder": [
          {
            "direction": "bullish",
            "source": "bat",
            "d_price": 75944.97,
            "a_price": 82828.7,
            "tp1_ad_382": 78574.55,
            "tp2_ad_618": 80199.11,
            "tp3_a_or_structure_liquidity": 82828.7,
            "note": "Use as strong TP ladder context; not standalone path authority."
          }
        ],
        "harmonic_governance": {
          "role": "PRZ reaction + TP ladder confluence, not standalone path engine",
          "pre_confirmation_weight_range": [
            0.25,
            0.35
          ],
          "post_confirmation_vote_weight_range": [
            0.5,
            0.6
          ],
          "standalone_path_override_allowed": false,
          "opposes_core_path_policy": "branch/reversal-risk/reaction-zone unless lower-TF structure and derivatives also confirm",
          "aligns_with_core_path_policy": "modest confidence lift plus strong TP ladder influence"
        },
        "execution_readiness": "watch",
        "directional_scores": {
          "bullish": 0.384,
          "bearish": 0
        },
        "directional_score_total": 0.384,
        "directional_dominance": 1.0
      },
      "raw_llm_response": "{\n  \"signal\": \"bullish\",\n  \"confidence\": 0.54,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.56,\n  \"setup_signals\": [\n    \"확정 반응이 나온 bullish Bat PRZ $75,267.38-$76,622.56가 방어됨: D=$76,014.20, reaction_score=0.95, D/PRZ failure-zone defended\",\n    \"현재가 $77,396.30은 방어된 Bat PRZ 상단 $76,622.56 위에서 유지 중이며, Bat TP1 $78,574.55가 아직 미도달\",\n    \"고컨플루언스 forming bullish Gartley PRZ $78,548.99-$79,671.71가 상방 2.21%에 위치: ABCD/BC_EXT/XAD 3개 Fib family 중첩\",\n    \"EMA240 $77,017.67 위에서 거래되지만 EMA20 $77,461.19 및 EMA120 $78,341.47 아래라 구조 확정 전 단기 저항이 남아 있음\"\n  ],\n  \"reasoning\": \"4h 하모닉 관점에서 가장 중요한 확정 패턴은 strict medium bullish Bat이며, PRZ $75,267.38-$76,622.56에서 D=$76,014.20 이후 rejection/defense가 확인되어 post-confirmation vote eligible 상태입니다. 이 패턴의 검증된 TP ladder는 TP1 $78,574.55, TP2 $80,199.11, TP3 $82,828.70이며 현재가 $77,396.30은 아직 TP1 아래라 상승 여지가 남아 있습니다. 다만 best council PRZ는 forming bullish Gartley $78,548.99-$79,671.71로, 아직 pre-confirmation reversal-candidate일 뿐이며 독립적으로 메인 경로를 뒤집을 권한은 없습니다. 명확한 BOS/CHoCH 또는 구조적 acceptance 데이터가 제공되지 않았으므로 structure_bias는 neutral로 두고, 방어된 Bat PRZ 기반의 setup_bias만 bullish로 평가합니다.\",\n  \"key_levels\": {\n    \"support\": [\n      77017.67,\n      76622.56,\n      76014.2,\n      75267.38\n    ],\n    \"resistance\": [\n      78468,\n      78548.99,\n      79110.35,\n      79671.71,\n      80199.11,\n      82460.5,\n      82828.7\n    ]\n  },\n  \"time_horizon\": \"short/medium term\",\n  \"invalidation_level\": \"$75,267.38\",\n  \"risk_scenario\": \"반대로 가격이 $76,622.56 아래로 재진입하고 특히 Bat PRZ 하단 $75,267.38을 4h 기준으로 이탈하면, 확인된 bullish Bat 반응은 실패로 간주됩니다. 이 경우 $76,014.20 D 저점 방어 실패가 되어 하모닉 bullish TP ladder는 무효화되고, 하방 유동성 재탐색 또는 더 깊은 PRZ 재가격 산정이 필요합니다.\",\n  \"data_quality\": \"medium\"\n}"
    }
  },
  "chairman_synthesis": {
    "overall_signal": "bearish",
    "overall_confidence": 0.71,
    "execution_setup": {
      "setup_bias": "bearish",
      "setup_strength": 0.67,
      "active_setups": [
        "피보나치 하락 스윙 $78,180 → $76,696.70 기준 현재가가 0.5 되돌림 $77,438.35 바로 아래에서 저항 테스트 중",
        "핵심 골든비율 저항 $77,613.38 및 0.786 되돌림 $77,862.57 미회복 상태",
        "ICT 기준 $79,137.40 및 $78,713.80 하향 BOS가 연속 발생해 4시간 구조가 하락 우위",
        "Wyckoff 기준 기존 분배 구조 이후 현재 재분배 후보 구조에서 $77,862.70 UT 이후 $77,138.30 SOW 성격 반응 발생",
        "파생 포지셔닝에서 CVD는 증가했으나 가격 상승은 제한적이고, OI 24시간 -0.544%로 신규 추세 매수 유입보다 언와인딩 성격이 강함",
        "단기 반등 시 $78,000, $78,180, $78,341.47, $78,713.80 구간은 구조 저항 및 유동성 스윕 실패 리스크 구간",
        "반대편 리스크로는 $76,014.20 부근의 고거래량 morning star와 방어된 bullish Bat PRZ $75,267.38-$76,622.56가 존재"
      ],
      "setup_vs_structure": "실행 셋업은 구조적 편향과 대체로 일치한다. 다만 가격이 $76,014.20-$76,696.70 저점권 반등 근거를 이미 만든 상태라, 하방 추격보다는 저항 수용 실패 여부를 확인하는 구조가 더 적합하다."
    },
    "signal_breakdown": {
      "bullish_count": 2,
      "bearish_count": 4,
      "neutral_count": 0
    },
    "key_levels": {
      "support": [
        77263.32,
        77138.3,
        77017.67,
        76696.7,
        76622.56,
        76014.2,
        74900,
        74300
      ],
      "resistance": [
        77438.35,
        77461.19,
        77613.38,
        77757.5,
        77862.57,
        78180,
        78341.47,
        78713.8,
        79006.6,
        79137.4,
        79455,
        79532.1
      ]
    },
    "confluences": [
      "피보나치 $77,438.35와 캔들 EMA20 $77,461.19, ICT EMA20 $77,461.19가 거의 같은 구간에 위치해 현재가 바로 위 $77,438-$77,461이 1차 단기 저항으로 중첩된다.",
      "피보나치 0.618 저항 $77,613.38, Wyckoff AR/상단 테스트 구간 $77,757.50-$77,862.70, 피보나치 0.786 $77,862.57이 $77,600-$77,863 저항대로 겹친다.",
      "ICT 전일 고점 $78,180.00, Wyckoff BC $78,300.00, 캔들 EMA120 $78,341.47, 파생 $78,400 청산 유동성이 $78,180-$78,400 공급 구간을 형성한다.",
      "ICT bearish BOS 레벨 $78,713.80과 파생·하모닉 상단 PRZ 시작부 $78,548.99, 하모닉 Bat TP1 $78,574.55가 $78,550-$78,714 부근에서 구조 저항과 반등 목표가 충돌하는 구간을 만든다.",
      "캔들 7일 저점 $76,014.20, ICT range low $76,014.20, 하모닉 confirmed Bat D $76,014.20이 동일 가격으로 일치해 $76,014는 핵심 구조 지지이자 반등 근거가 되는 레벨이다.",
      "피보나치 스윙 저점 $76,696.70, ICT 전일 저점 $76,696.70, Wyckoff 현재 재분배 구조 ST $76,696.70이 일치해 $76,696.70은 단기 구조 지지로 중요하다.",
      "파생 하방 청산 밀집 $74,900 및 $74,300은 Wyckoff SOW_IN_PHASE_B $74,868.00, 메인 AR $73,669.00과 하방 구조 레벨 측면에서 같은 영역을 가리킨다."
    ],
    "conflicts": [
      "Wyckoff, ICT, Fibonacci, Derivatives는 구조 또는 실행 셋업을 bearish로 평가하지만, Candlestick과 Harmonic은 $76,014.20 저점 방어 이후 반등 셋업을 bullish로 평가한다.",
      "Harmonic의 bullish Bat PRZ $75,267.38-$76,622.56 방어와 TP1 $78,574.55는 반등 여지를 제시하지만, 해당 신호는 구조 전환 엔진이 아니라 PRZ 반응 및 목표가 보조 도구로 제한된다.",
      "Candlestick의 morning star는 고거래량 반등 신호지만, 현재가는 EMA20 $77,461.19 및 EMA120 $78,341.47 아래에 있어 캔들 반등이 아직 상위 구조 회복으로 확정되지 않았다.",
      "Derivatives는 구조 자체는 박스권 내부라 중립으로 보지만, CVD 상승 대비 가격 반응 부진과 OI 감소를 근거로 실행 리스크는 bearish로 해석한다."
    ],
    "executive_summary": "BTC/USDT 4시간 구조는 현재 bearish로 판정한다. 핵심 근거는 Wyckoff의 확인된 분배 구조 이후 재분배 후보 진행, ICT의 $79,137.40 및 $78,713.80 연속 bearish BOS, 그리고 피보나치상 $77,438.35-$77,862.57 되돌림 저항 미회복이다. 현재 국면은 기존 대형 분배의 후반부 이후, 단기 재분배 구조에서 UT $77,862.70과 SOW $77,138.30이 관찰된 상태로 해석된다. 다만 $76,014.20 저점에서는 고거래량 morning star와 bullish Bat PRZ 방어가 확인되어, 하단부에서는 반등·스프링성 리스크가 조건으로 남아 있다. 구조적 bearish 판정은 $79,455.00-$79,532.10 회복 수용 전까지 유지되며, 그 전에는 $77,438-$77,613 및 $78,180-$78,400 구간의 수용 여부가 구조 판단의 핵심이다.",
    "raw_llm_response": "{\n  \"overall_signal\": \"bearish\",\n  \"overall_confidence\": 0.71,\n  \"execution_setup\": {\n    \"setup_bias\": \"bearish\",\n    \"setup_strength\": 0.67,\n    \"active_setups\": [\n      \"피보나치 하락 스윙 $78,180 → $76,696.70 기준 현재가가 0.5 되돌림 $77,438.35 바로 아래에서 저항 테스트 중\",\n      \"핵심 골든비율 저항 $77,613.38 및 0.786 되돌림 $77,862.57 미회복 상태\",\n      \"ICT 기준 $79,137.40 및 $78,713.80 하향 BOS가 연속 발생해 4시간 구조가 하락 우위\",\n      \"Wyckoff 기준 기존 분배 구조 이후 현재 재분배 후보 구조에서 $77,862.70 UT 이후 $77,138.30 SOW 성격 반응 발생\",\n      \"파생 포지셔닝에서 CVD는 증가했으나 가격 상승은 제한적이고, OI 24시간 -0.544%로 신규 추세 매수 유입보다 언와인딩 성격이 강함\",\n      \"단기 반등 시 $78,000, $78,180, $78,341.47, $78,713.80 구간은 구조 저항 및 유동성 스윕 실패 리스크 구간\",\n      \"반대편 리스크로는 $76,014.20 부근의 고거래량 morning star와 방어된 bullish Bat PRZ $75,267.38-$76,622.56가 존재\"\n    ],\n    \"setup_vs_structure\": \"실행 셋업은 구조적 편향과 대체로 일치한다. 다만 가격이 $76,014.20-$76,696.70 저점권 반등 근거를 이미 만든 상태라, 하방 추격보다는 저항 수용 실패 여부를 확인하는 구조가 더 적합하다.\"\n  },\n  \"signal_breakdown\": {\n    \"bullish_count\": 2,\n    \"bearish_count\": 4,\n    \"neutral_count\": 0\n  },\n  \"key_levels\": {\n    \"support\": [\n      77263.32,\n      77138.3,\n      77017.67,\n      76696.7,\n      76622.56,\n      76014.2,\n      74900,\n      74300\n    ],\n    \"resistance\": [\n      77438.35,\n      77461.19,\n      77613.38,\n      77757.5,\n      77862.57,\n      78180,\n      78341.47,\n      78713.8,\n      79006.6,\n      79137.4,\n      79455,\n      79532.1\n    ]\n  },\n  \"confluences\": [\n    \"피보나치 $77,438.35와 캔들 EMA20 $77,461.19, ICT EMA20 $77,461.19가 거의 같은 구간에 위치해 현재가 바로 위 $77,438-$77,461이 1차 단기 저항으로 중첩된다.\",\n    \"피보나치 0.618 저항 $77,613.38, Wyckoff AR/상단 테스트 구간 $77,757.50-$77,862.70, 피보나치 0.786 $77,862.57이 $77,600-$77,863 저항대로 겹친다.\",\n    \"ICT 전일 고점 $78,180.00, Wyckoff BC $78,300.00, 캔들 EMA120 $78,341.47, 파생 $78,400 청산 유동성이 $78,180-$78,400 공급 구간을 형성한다.\",\n    \"ICT bearish BOS 레벨 $78,713.80과 파생·하모닉 상단 PRZ 시작부 $78,548.99, 하모닉 Bat TP1 $78,574.55가 $78,550-$78,714 부근에서 구조 저항과 반등 목표가 충돌하는 구간을 만든다.\",\n    \"캔들 7일 저점 $76,014.20, ICT range low $76,014.20, 하모닉 confirmed Bat D $76,014.20이 동일 가격으로 일치해 $76,014는 핵심 구조 지지이자 반등 근거가 되는 레벨이다.\",\n    \"피보나치 스윙 저점 $76,696.70, ICT 전일 저점 $76,696.70, Wyckoff 현재 재분배 구조 ST $76,696.70이 일치해 $76,696.70은 단기 구조 지지로 중요하다.\",\n    \"파생 하방 청산 밀집 $74,900 및 $74,300은 Wyckoff SOW_IN_PHASE_B $74,868.00, 메인 AR $73,669.00과 하방 구조 레벨 측면에서 같은 영역을 가리킨다.\"\n  ],\n  \"conflicts\": [\n    \"Wyckoff, ICT, Fibonacci, Derivatives는 구조 또는 실행 셋업을 bearish로 평가하지만, Candlestick과 Harmonic은 $76,014.20 저점 방어 이후 반등 셋업을 bullish로 평가한다.\",\n    \"Harmonic의 bullish Bat PRZ $75,267.38-$76,622.56 방어와 TP1 $78,574.55는 반등 여지를 제시하지만, 해당 신호는 구조 전환 엔진이 아니라 PRZ 반응 및 목표가 보조 도구로 제한된다.\",\n    \"Candlestick의 morning star는 고거래량 반등 신호지만, 현재가는 EMA20 $77,461.19 및 EMA120 $78,341.47 아래에 있어 캔들 반등이 아직 상위 구조 회복으로 확정되지 않았다.\",\n    \"Derivatives는 구조 자체는 박스권 내부라 중립으로 보지만, CVD 상승 대비 가격 반응 부진과 OI 감소를 근거로 실행 리스크는 bearish로 해석한다.\"\n  ],\n  \"highest_conviction_analyst\": \"Wyckoff Expert — 분배 regime이 confirmed 상태이며 분배 점수와 구조 적합도가 가장 높고, BC $78,300, AR $73,669, ST $79,455, UT $79,145, UTAD $82,828.70, LPSY $81,270.20 이후 현재 재분배 후보 구조에서 UT $77,862.70 후 SOW $77,138.30까지 이어지는 단계 구성이 가장 명확하다.\",\n  \"invalidation_level\": \"$79,532.10 이상 4시간 종가 회복 및 수용. 보수적으로는 $79,455.00 상회 후 $79,532.10 7일 고점까지 회복해야 bearish 구조 판정이 약화된다.\",\n  \"executive_summary\": \"BTC/USDT 4시간 구조는 현재 bearish로 판정한다. 핵심 근거는 Wyckoff의 확인된 분배 구조 이후 재분배 후보 진행, ICT의 $79,137.40 및 $78,713.80 연속 bearish BOS, 그리고 피보나치상 $77,438.35-$77,862.57 되돌림 저항 미회복이다. 현재 국면은 기존 대형 분배의 후반부 이후, 단기 재분배 구조에서 UT $77,862.70과 SOW $77,138.30이 관찰된 상태로 해석된다. 다만 $76,014.20 저점에서는 고거래량 morning star와 bullish Bat PRZ 방어가 확인되어, 하단부에서는 반등·스프링성 리스크가 조건으로 남아 있다. 구조적 bearish 판정은 $79,455.00-$79,532.10 회복 수용 전까지 유지되며, 그 전에는 $77,438-$77,613 및 $78,180-$78,400 구간의 수용 여부가 구조 판단의 핵심이다.\"\n}"
  },
  "overall_signal": "bearish",
  "overall_confidence": 0.71,
  "operating_path": {
    "path_type": "complex",
    "confidence": 0.65,
    "waypoints": [
      {
        "seq": 1,
        "price": 77438.35,
        "type": "resistance_test",
        "source": "Fibonacci (strict 0.85 confluence cluster), Candlestick (EMA20 $77,461.19), ICT (EMA20 $77,461.19)",
        "description": "현재가 $77,396.30에서 약 0.05% 위, fib ret_0.382/0.5/0.618이 중첩되고 EMA20 $77,461.19와 정렬된 strict tier 1차 저항. 셋업이 bearish이고 CVD-가격 다이버전스 및 OI 감소(-0.544%)로 매수 참여 약함. 이 구간에서 수용 실패 후 매도 반응이 가장 유력한 시작점.",
        "est_hours": 2,
        "turning_zone": [
          77438.35,
          77650.0
        ],
        "likely_wick": 77613.38,
        "rejection_confirm": 77263.32,
        "invalid_overshoot": 77757.5,
        "calibration_reasoning": "베이스는 fib ret_0.382/0.5/0.618 3중 confluence + EMA20($77,461.19) strict tier 저항. 상단은 golden ratio 0.618($77,613.38)까지 확장하여 wick 흡수 구간 확보(폭 ~$212, 0.33×ATR). 거부 확인은 fib 0.382 지지 재이탈, $77,757.5 돌파 시 무효화."
      },
      {
        "seq": 2,
        "price": 76696.7,
        "type": "support_test",
        "source": "Fibonacci (스윙 저점), ICT (전일 저점), Wyckoff (재분배 ST $76,696.70)",
        "description": "$77,438 저항 거부 후 다음 핵심 멀티-에이전트 confluence 지지. ICT 전일 저점·Wyckoff ST·Fib 스윙 저점이 동일 가격에 일치하며, 셋업의 $77,138.30 SOW 이탈 시 자연스러운 1차 하방 타깃. 이 레벨에서 부분 반등 이후 추가 약세 진행 시나리오.",
        "est_hours": 10,
        "turning_zone": [
          76500.0,
          76696.7
        ],
        "likely_wick": 76622.56,
        "rejection_confirm": 76871.73,
        "invalid_overshoot": 76392.53,
        "calibration_reasoning": "ICT 전일 저점·Wyckoff ST·Fib 스윙 저점 confluence 베이스 아래로 chairman 지지 $76,622.56가 자연 liquidity magnet 역할(폭 ~$197, 0.31×ATR). 반등 확인은 ext_1.0/ret_0.236 confluence 회복, $76,392.53 confluence 이탈 시 다음 waypoint로 직행."
      },
      {
        "seq": 3,
        "price": 76014.2,
        "type": "liquidity_sweep",
        "source": "Wyckoff (range low), ICT (range low $76,014.20), Harmonic (confirmed Bat D), Candlestick (7일 저점 morning star)",
        "description": "구조적 핵심 하방 자석. ICT range low, Wyckoff 분배 EQ 하방, 확정 bullish Bat PRZ D=$76,014.20, 고거래량 morning star 저점이 모두 일치. 하방 스윕 후 반응 확인 구간으로, 셋업 bearish path의 최종 24h 타깃이며 동시에 반등 리스크가 가장 큰 레벨.",
        "est_hours": 20,
        "turning_zone": [
          75570.0,
          76014.2
        ],
        "likely_wick": 75931.32,
        "rejection_confirm": 76392.53,
        "invalid_overshoot": 75500.0,
        "calibration_reasoning": "터미널 waypoint로 0.7×ATR(~$444) 폭 적용. CONFIRMED_REACTION Bat PRZ($76,014.20)가 베이스, 아래 fib ext_1.618/1.414 confluence($75,931.32)와 $76,000 라운드넘버가 sweep 흡수 자석. 반등 확인은 ext_1.272/ret_0.382 confluence 재탈환, $75,500 하향 이탈 시 추가 하방 연장으로 path 자체 무효화."
      }
    ],
    "period_extremes": {
      "4h": {
        "expected_high": 77438.35,
        "expected_low": 77017.67,
        "high_first": true
      },
      "8h": {
        "expected_high": 77438.35,
        "expected_low": 76696.7,
        "high_first": true
      },
      "24h": {
        "expected_high": 77438.35,
        "expected_low": 76014.2,
        "high_first": true
      }
    },
    "triggers": {
      "bullish": {
        "price": 77613.38,
        "description": "Fib 0.618 골든비율 $77,613.38을 4h 종가로 수용 시 단기 구조 회복 시작 신호. $77,862.57(0.786) 추가 돌파 시 $78,180-$78,400 공급 구간으로 매수 가속."
      },
      "bearish": {
        "price": 77138.3,
        "description": "Wyckoff SOW 레벨 $77,138.30 하향 이탈 + EMA240 $77,017.67 손절 시 매도 가속. $76,696.70까지 빠른 진행 가능성 증가, 이후 $76,014.20 자석 활성화."
      }
    },
    "scenario_invalidation": 78400.0,
    "raw_llm_response": "```json\n{\n  \"path_type\": \"complex\",\n  \"confidence\": 0.65,\n  \"waypoints\": [\n    {\n      \"seq\": 1,\n      \"price\": 77438.35,\n      \"type\": \"resistance_test\",\n      \"source\": \"Fibonacci (strict 0.85 confluence cluster), Candlestick (EMA20 $77,461.19), ICT (EMA20 $77,461.19)\",\n      \"description\": \"현재가 $77,396.30에서 약 0.05% 위, fib ret_0.382/0.5/0.618이 중첩되고 EMA20 $77,461.19와 정렬된 strict tier 1차 저항. 셋업이 bearish이고 CVD-가격 다이버전스 및 OI 감소(-0.544%)로 매수 참여 약함. 이 구간에서 수용 실패 후 매도 반응이 가장 유력한 시작점.\",\n      \"est_hours\": 2\n    },\n    {\n      \"seq\": 2,\n      \"price\": 76696.70,\n      \"type\": \"support_test\",\n      \"source\": \"Fibonacci (스윙 저점), ICT (전일 저점), Wyckoff (재분배 ST $76,696.70)\",\n      \"description\": \"$77,438 저항 거부 후 다음 핵심 멀티-에이전트 confluence 지지. ICT 전일 저점·Wyckoff ST·Fib 스윙 저점이 동일 가격에 일치하며, 셋업의 $77,138.30 SOW 이탈 시 자연스러운 1차 하방 타깃. 이 레벨에서 부분 반등 이후 추가 약세 진행 시나리오.\",\n      \"est_hours\": 10\n    },\n    {\n      \"seq\": 3,\n      \"price\": 76014.20,\n      \"type\": \"liquidity_sweep\",\n      \"source\": \"Wyckoff (range low), ICT (range low $76,014.20), Harmonic (confirmed Bat D), Candlestick (7일 저점 morning star)\",\n      \"description\": \"구조적 핵심 하방 자석. ICT range low, Wyckoff 분배 EQ 하방, 확정 bullish Bat PRZ D=$76,014.20, 고거래량 morning star 저점이 모두 일치. 하방 스윕 후 반응 확인 구간으로, 셋업 bearish path의 최종 24h 타깃이며 동시에 반등 리스크가 가장 큰 레벨.\",\n      \"est_hours\": 20\n    }\n  ],\n  \"period_extremes\": {\n    \"4h\":  {\"expected_high\": 77438.35, \"expected_low\": 77017.67, \"high_first\": true},\n    \"8h\":  {\"expected_high\": 77438.35, \"expected_low\": 76696.70, \"high_first\": true},\n    \"24h\": {\"expected_high\": 77438.35, \"expected_low\": 76014.20, \"high_first\": true}\n  },\n  \"triggers\": {\n    \"bullish\": {\"price\": 77613.38, \"description\": \"Fib 0.618 골든비율 $77,613.38을 4h 종가로 수용 시 단기 구조 회복 시작 신호. $77,862.57(0.786) 추가 돌파 시 $78,180-$78,400 공급 구간으로 매수 가속.\"},\n    \"bearish\": {\"price\": 77138.30, \"description\": \"Wyckoff SOW 레벨 $77,138.30 하향 이탈 + EMA240 $77,017.67 손절 시 매도 가속. $76,696.70까지 빠른 진행 가능성 증가, 이후 $76,014.20 자석 활성화.\"}\n  },\n  \"scenario_invalidation\": 78400.0\n}\n```\n\nWP1로는 0.05% 위의 strict fib confluence $77,438.35를 선택해 즉각적 저항 거부 시나리오로 시작했고, 셋업/구조 양쪽 bearish 일치를 반영해 $76,696.70 → $76,014.20 순차 하락 경로로 구성했습니다. 다만 $76,014.20에서 확정 bullish Bat PRZ + morning star 방어 이력이 있어 confidence는 0.65로 제한했고, 시나리오 무효화는 공급 구간 상단 $78,400으로 설정했습니다."
  },
  "tp_calibration": {
    "calibrated_waypoints": [
      {
        "seq": 1,
        "base_target": 77438.35,
        "turning_zone": [
          77438.35,
          77650.0
        ],
        "likely_wick": 77613.38,
        "rejection_confirm": 77263.32,
        "invalid_overshoot": 77757.5,
        "calibration_reasoning": "베이스는 fib ret_0.382/0.5/0.618 3중 confluence + EMA20($77,461.19) strict tier 저항. 상단은 golden ratio 0.618($77,613.38)까지 확장하여 wick 흡수 구간 확보(폭 ~$212, 0.33×ATR). 거부 확인은 fib 0.382 지지 재이탈, $77,757.5 돌파 시 무효화."
      },
      {
        "seq": 2,
        "base_target": 76696.7,
        "turning_zone": [
          76500.0,
          76696.7
        ],
        "likely_wick": 76622.56,
        "rejection_confirm": 76871.73,
        "invalid_overshoot": 76392.53,
        "calibration_reasoning": "ICT 전일 저점·Wyckoff ST·Fib 스윙 저점 confluence 베이스 아래로 chairman 지지 $76,622.56가 자연 liquidity magnet 역할(폭 ~$197, 0.31×ATR). 반등 확인은 ext_1.0/ret_0.236 confluence 회복, $76,392.53 confluence 이탈 시 다음 waypoint로 직행."
      },
      {
        "seq": 3,
        "base_target": 76014.2,
        "turning_zone": [
          75570.0,
          76014.2
        ],
        "likely_wick": 75931.32,
        "rejection_confirm": 76392.53,
        "invalid_overshoot": 75500.0,
        "calibration_reasoning": "터미널 waypoint로 0.7×ATR(~$444) 폭 적용. CONFIRMED_REACTION Bat PRZ($76,014.20)가 베이스, 아래 fib ext_1.618/1.414 confluence($75,931.32)와 $76,000 라운드넘버가 sweep 흡수 자석. 반등 확인은 ext_1.272/ret_0.382 confluence 재탈환, $75,500 하향 이탈 시 추가 하방 연장으로 path 자체 무효화."
      }
    ],
    "raw_llm_response": "{\n  \"calibrated_waypoints\": [\n    {\n      \"seq\": 1,\n      \"base_target\": 77438.35,\n      \"turning_zone\": [77438.35, 77650.00],\n      \"likely_wick\": 77613.38,\n      \"rejection_confirm\": 77263.32,\n      \"invalid_overshoot\": 77757.50,\n      \"calibration_reasoning\": \"베이스는 fib ret_0.382/0.5/0.618 3중 confluence + EMA20($77,461.19) strict tier 저항. 상단은 golden ratio 0.618($77,613.38)까지 확장하여 wick 흡수 구간 확보(폭 ~$212, 0.33×ATR). 거부 확인은 fib 0.382 지지 재이탈, $77,757.5 돌파 시 무효화.\"\n    },\n    {\n      \"seq\": 2,\n      \"base_target\": 76696.70,\n      \"turning_zone\": [76500.00, 76696.70],\n      \"likely_wick\": 76622.56,\n      \"rejection_confirm\": 76871.73,\n      \"invalid_overshoot\": 76392.53,\n      \"calibration_reasoning\": \"ICT 전일 저점·Wyckoff ST·Fib 스윙 저점 confluence 베이스 아래로 chairman 지지 $76,622.56가 자연 liquidity magnet 역할(폭 ~$197, 0.31×ATR). 반등 확인은 ext_1.0/ret_0.236 confluence 회복, $76,392.53 confluence 이탈 시 다음 waypoint로 직행.\"\n    },\n    {\n      \"seq\": 3,\n      \"base_target\": 76014.20,\n      \"turning_zone\": [75570.00, 76014.20],\n      \"likely_wick\": 75931.32,\n      \"rejection_confirm\": 76392.53,\n      \"invalid_overshoot\": 75500.00,\n      \"calibration_reasoning\": \"터미널 waypoint로 0.7×ATR(~$444) 폭 적용. CONFIRMED_REACTION Bat PRZ($76,014.20)가 베이스, 아래 fib ext_1.618/1.414 confluence($75,931.32)와 $76,000 라운드넘버가 sweep 흡수 자석. 반등 확인은 ext_1.272/ret_0.382 confluence 재탈환, $75,500 하향 이탈 시 추가 하방 연장으로 path 자체 무효화.\"\n    }\n  ]\n}"
  },
  "timing": {
    "stages": {
      "stage1_agents": 26.3,
      "chairman": 42.7,
      "operating_path": 81.5,
      "tp_calibrator": 40.8
    },
    "agents": {},
    "total_s": 191.4
  }
}