{
  "symbol": "BTC/USDT",
  "timeframe": "15m",
  "timestamp": "2026-06-23 13:00 KST",
  "last_price": 64037.2,
  "num_candles": 300,
  "stage1_analyses": {
    "fibonacci": {
      "agent_id": "fibonacci",
      "display_name": "Fibonacci Analyst",
      "signal": "neutral",
      "confidence": 0.56,
      "structure_bias": "neutral",
      "setup_bias": "bullish",
      "setup_score": 0.58,
      "setup_signals": [
        "상승 스윙 $63,803 → $64,243 기준 EQ/0.5 되돌림 $64,023.00을 현재가 $64,037.20이 소폭 상회하며 지지 테스트 중",
        "핵심 골든 비율 0.618 되돌림 $63,971.13이 아직 이탈되지 않아 단기 매수 방어 구간 유지",
        "근접 피보나치 반응 상태가 testing이며 reaction_probability 0.65로 단기 반등 가능성 존재",
        "다중 피보나치 컨플루언스 존 $64,111.21 부근이 5개 레벨과 중첩되어 단기 회복 시 1차 자석/저항으로 작용 가능",
        "현재가가 EMA20 $64,092.29 및 EMA120 $64,254.27 아래에 있어 구조 전환 확인 전까지는 상승 setup만 존재"
      ],
      "reasoning": "BTC/USDT는 상승 스윙 $63,803 → $64,243의 0.5 되돌림 $64,023.00 바로 위인 $64,037.20에서 거래되며, 현재 fib_reaction_state는 testing입니다. 0.618 골든 비율 $63,971.13은 가장 중요한 방어선이며, 이 구간이 유지될 경우 $64,074.87의 0.382 되돌림과 $64,111.21 컨플루언스 존까지 단기 반등 여지가 있습니다. 다만 가격이 EMA20 $64,092.29와 EMA120 $64,254.27 아래에 있고, $64,139.05 및 스윙 고점 $64,242.80 저항을 아직 회복하지 못해 confirmed BOS나 구조적 수용은 확인되지 않았습니다. 따라서 구조_bias는 중립이지만, 0.5~0.618 피보나치 지지대에서의 선제 반등 setup은 약한 bullish로 평가합니다.",
      "key_levels": {
        "support": [
          64023.0,
          63971.13,
          63897.27
        ],
        "resistance": [
          64074.87,
          64139.05,
          64242.8,
          64362.37,
          64514.47
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$63,897.27",
      "risk_scenario": "$64,023.00의 0.5 지지가 무너지고 $63,971.13의 0.618 골든 비율까지 이탈하면, 현재의 bullish setup은 실패로 전환됩니다. 이 경우 $63,897.27의 0.786 되돌림이 다음 방어선이며, 여기까지도 지지 실패 시 스윙 저점 $63,803 재테스트 및 더 큰 하락 구조 확인 위험이 커집니다.",
      "data_quality": "high",
      "metrics": {
        "swing_pair": "Low→High: $63,803 → $64,243",
        "direction": "up",
        "nearest_fib": "ret_0.5",
        "nearest_fib_price": 64023.0,
        "nearest_fib_distance": 0.02,
        "golden_ratio_level": 63971.13,
        "fib_ret_382": 64074.87,
        "fib_ret_618": 63971.13,
        "confluence_zones": [
          {
            "price": 64501.31,
            "count": 6,
            "levels": [
              "ext_1.272",
              "ret_0.5",
              "ext_1.414",
              "ext_1.618",
              "ret_0.382",
              "ext_2.0"
            ],
            "cluster_score": 1.0
          },
          {
            "price": 64111.21,
            "count": 5,
            "levels": [
              "ret_0.5",
              "ret_0.382",
              "ret_0.618",
              "ret_0.236",
              "ext_1.0"
            ],
            "cluster_score": 1.0
          },
          {
            "price": 63843.75,
            "count": 3,
            "levels": [
              "ret_0.786",
              "ret_0.786",
              "ret_0.618"
            ],
            "cluster_score": 0.85
          },
          {
            "price": 64985.24,
            "count": 2,
            "levels": [
              "ext_2.618",
              "ret_0.236"
            ],
            "cluster_score": 0.6
          }
        ],
        "support_levels": [
          64023.0,
          63971.1272,
          63897.274399999995
        ],
        "resistance_levels": [
          64074.8728,
          64139.0544,
          64242.8
        ],
        "level_candidates": [
          {
            "name": "ret_0.236",
            "price": 64139.05,
            "distance_pct": 0.16,
            "is_support": false,
            "cluster_score": 1.0
          },
          {
            "name": "ret_0.382",
            "price": 64074.87,
            "distance_pct": 0.06,
            "is_support": false,
            "cluster_score": 1.0
          },
          {
            "name": "ret_0.5",
            "price": 64023.0,
            "distance_pct": 0.02,
            "is_support": true,
            "cluster_score": 1.0
          },
          {
            "name": "ret_0.618",
            "price": 63971.13,
            "distance_pct": 0.1,
            "is_support": true,
            "cluster_score": 1.0
          },
          {
            "name": "ret_0.786",
            "price": 63897.27,
            "distance_pct": 0.22,
            "is_support": true,
            "cluster_score": 1.0
          },
          {
            "name": "ext_1.0",
            "price": 64242.8,
            "distance_pct": 0.32,
            "is_support": false,
            "cluster_score": 1.0
          },
          {
            "name": "ext_1.272",
            "price": 64362.37,
            "distance_pct": 0.51,
            "is_support": false,
            "cluster_score": 1.0
          },
          {
            "name": "ext_1.414",
            "price": 64424.79,
            "distance_pct": 0.61,
            "is_support": false,
            "cluster_score": 1.0
          },
          {
            "name": "ext_1.618",
            "price": 64514.47,
            "distance_pct": 0.75,
            "is_support": false,
            "cluster_score": 1.0
          },
          {
            "name": "ext_2.0",
            "price": 64682.4,
            "distance_pct": 1.01,
            "is_support": false,
            "cluster_score": 1.0
          }
        ],
        "confluence_quality": 1.0,
        "fib_reaction_state": "testing",
        "reaction_probability": 0.65
      },
      "raw_llm_response": "{\n  \"signal\": \"neutral\",\n  \"confidence\": 0.56,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.58,\n  \"setup_signals\": [\n    \"상승 스윙 $63,803 → $64,243 기준 EQ/0.5 되돌림 $64,023.00을 현재가 $64,037.20이 소폭 상회하며 지지 테스트 중\",\n    \"핵심 골든 비율 0.618 되돌림 $63,971.13이 아직 이탈되지 않아 단기 매수 방어 구간 유지\",\n    \"근접 피보나치 반응 상태가 testing이며 reaction_probability 0.65로 단기 반등 가능성 존재\",\n    \"다중 피보나치 컨플루언스 존 $64,111.21 부근이 5개 레벨과 중첩되어 단기 회복 시 1차 자석/저항으로 작용 가능\",\n    \"현재가가 EMA20 $64,092.29 및 EMA120 $64,254.27 아래에 있어 구조 전환 확인 전까지는 상승 setup만 존재\"\n  ],\n  \"reasoning\": \"BTC/USDT는 상승 스윙 $63,803 → $64,243의 0.5 되돌림 $64,023.00 바로 위인 $64,037.20에서 거래되며, 현재 fib_reaction_state는 testing입니다. 0.618 골든 비율 $63,971.13은 가장 중요한 방어선이며, 이 구간이 유지될 경우 $64,074.87의 0.382 되돌림과 $64,111.21 컨플루언스 존까지 단기 반등 여지가 있습니다. 다만 가격이 EMA20 $64,092.29와 EMA120 $64,254.27 아래에 있고, $64,139.05 및 스윙 고점 $64,242.80 저항을 아직 회복하지 못해 confirmed BOS나 구조적 수용은 확인되지 않았습니다. 따라서 구조_bias는 중립이지만, 0.5~0.618 피보나치 지지대에서의 선제 반등 setup은 약한 bullish로 평가합니다.\",\n  \"key_levels\": {\n    \"support\": [\n      64023.0,\n      63971.13,\n      63897.27\n    ],\n    \"resistance\": [\n      64074.87,\n      64139.05,\n      64242.8,\n      64362.37,\n      64514.47\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$63,897.27\",\n  \"risk_scenario\": \"$64,023.00의 0.5 지지가 무너지고 $63,971.13의 0.618 골든 비율까지 이탈하면, 현재의 bullish setup은 실패로 전환됩니다. 이 경우 $63,897.27의 0.786 되돌림이 다음 방어선이며, 여기까지도 지지 실패 시 스윙 저점 $63,803 재테스트 및 더 큰 하락 구조 확인 위험이 커집니다.\",\n  \"data_quality\": \"high\"\n}"
    },
    "candlestick": {
      "agent_id": "candlestick",
      "display_name": "Candlestick Reader",
      "signal": "bullish",
      "confidence": 0.56,
      "structure_bias": "neutral",
      "setup_bias": "bullish",
      "setup_score": 0.55,
      "setup_signals": [
        "현재가 $64,037.20는 7일 범위 EQ $64,366.70 아래에 있어 할인 구간에서의 반등 셋업",
        "최근 piercing_pattern@299가 bullish 후보로 감지되었고 품질은 0.516으로 최근 패턴 중 최상위",
        "bull_score 1.45가 bear_score 0.75보다 우위이나, 고거래량 패턴은 없어 확정 강도는 제한적",
        "현재가가 EMA20 $64,092.29, EMA240 $64,143.25, EMA120 $64,254.27 아래에 있어 구조 전환 전 저항 확인 필요"
      ],
      "reasoning": "BTC는 현재 $64,037.20으로 7일 고점 $65,597.20과 저점 $63,136.20 사이의 중간값인 $64,366.70 아래에 위치해 단기적으로 할인 구간 반등 셋업이 열려 있습니다. 최근 패턴은 bullish_engulfing@293, doji@295, bearish_engulfing@298, piercing_pattern@299로 혼재되어 있으나, 가장 높은 품질의 패턴은 bullish piercing pattern 0.516이며 bull_score 1.45가 bear_score 0.75보다 높습니다. 다만 현재가는 EMA20 $64,092.29, EMA240 $64,143.25, EMA120 $64,254.27을 모두 소폭 하회하고 있어 아직 구조적으로 상승 전환이 확인됐다고 보기 어렵습니다. 따라서 structure_bias는 중립, setup_bias는 약한 bullish로 판단하며, $64,254 이상 안착 여부가 단기 확인 포인트입니다.",
      "key_levels": {
        "support": [
          64037.2,
          63136.2
        ],
        "resistance": [
          64092.29,
          64143.25,
          64254.27,
          64366.7,
          65597.2
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$63,136.20",
      "risk_scenario": "반등이 EMA20 $64,092.29와 EMA120 $64,254.27 위로 안착하지 못하고 $63,136.20을 이탈하면, piercing pattern 기반의 bullish 셋업은 실패로 간주되며 7일 저점 하방 유동성 탐색이 진행될 수 있습니다.",
      "data_quality": "medium",
      "metrics": {
        "total_patterns_detected": 120,
        "recent_patterns": 4,
        "pattern_list": [
          "bullish_engulfing@293",
          "bearish_engulfing@298",
          "doji@295",
          "piercing_pattern@299"
        ],
        "atr_value": 161.02,
        "vol_avg_20": 915.4,
        "high_volume_patterns": [],
        "pattern_candidates": [
          {
            "pattern": "piercing_pattern",
            "signal": "bullish",
            "pattern_quality": 0.516,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "bearish_engulfing",
            "signal": "bearish",
            "pattern_quality": 0.502,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "bullish_engulfing",
            "signal": "bullish",
            "pattern_quality": 0.461,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "doji",
            "signal": "neutral",
            "pattern_quality": 0.355,
            "tier": "candidate",
            "high_volume": false
          }
        ],
        "best_pattern_quality": 0.516,
        "bull_score": 1.45,
        "bear_score": 0.75
      },
      "raw_llm_response": "{\n  \"signal\": \"bullish\",\n  \"confidence\": 0.56,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.55,\n  \"setup_signals\": [\n    \"현재가 $64,037.20는 7일 범위 EQ $64,366.70 아래에 있어 할인 구간에서의 반등 셋업\",\n    \"최근 piercing_pattern@299가 bullish 후보로 감지되었고 품질은 0.516으로 최근 패턴 중 최상위\",\n    \"bull_score 1.45가 bear_score 0.75보다 우위이나, 고거래량 패턴은 없어 확정 강도는 제한적\",\n    \"현재가가 EMA20 $64,092.29, EMA240 $64,143.25, EMA120 $64,254.27 아래에 있어 구조 전환 전 저항 확인 필요\"\n  ],\n  \"reasoning\": \"BTC는 현재 $64,037.20으로 7일 고점 $65,597.20과 저점 $63,136.20 사이의 중간값인 $64,366.70 아래에 위치해 단기적으로 할인 구간 반등 셋업이 열려 있습니다. 최근 패턴은 bullish_engulfing@293, doji@295, bearish_engulfing@298, piercing_pattern@299로 혼재되어 있으나, 가장 높은 품질의 패턴은 bullish piercing pattern 0.516이며 bull_score 1.45가 bear_score 0.75보다 높습니다. 다만 현재가는 EMA20 $64,092.29, EMA240 $64,143.25, EMA120 $64,254.27을 모두 소폭 하회하고 있어 아직 구조적으로 상승 전환이 확인됐다고 보기 어렵습니다. 따라서 structure_bias는 중립, setup_bias는 약한 bullish로 판단하며, $64,254 이상 안착 여부가 단기 확인 포인트입니다.\",\n  \"key_levels\": {\n    \"support\": [\n      64037.2,\n      63136.2\n    ],\n    \"resistance\": [\n      64092.29,\n      64143.25,\n      64254.27,\n      64366.7,\n      65597.2\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$63,136.20\",\n  \"risk_scenario\": \"반등이 EMA20 $64,092.29와 EMA120 $64,254.27 위로 안착하지 못하고 $63,136.20을 이탈하면, piercing pattern 기반의 bullish 셋업은 실패로 간주되며 7일 저점 하방 유동성 탐색이 진행될 수 있습니다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "derivatives": {
      "agent_id": "derivatives",
      "display_name": "Derivatives Trader",
      "signal": "bearish",
      "confidence": 0.58,
      "structure_bias": "neutral",
      "setup_bias": "bearish",
      "setup_score": 0.65,
      "setup_signals": [
        "현재가 $64,037.20가 7일 레인지 EQ $64,366.70 아래에 있어 구조적으로는 할인 구간이나, 반등 수용 실패 시 하방 유동성 $63,400으로 끌릴 수 있음",
        "롱 계정 비율 0.643, 숏 계정 비율 0.357로 롱 계정 쏠림이 극단적이며 account_long_crowding=1.000",
        "24시간 동안 롱 계정 +0.026 증가, 숏 계정 -0.0259 감소로 추격성 롱 유입이 확인됨",
        "CVD divergence 0.850으로 가격은 24시간 +0.16%에 그쳤지만 CVD 변화가 +$1,627.75로 매수 체결 대비 가격 반응이 약함",
        "OI가 24시간 +0.164로 소폭 증가하고 최신 OI가 $100,061.06인 상태에서 가격이 EMA20 $64,092.29 및 EMA120 $64,254.27 아래에 머물러 신규 롱 포지션의 효율이 낮음"
      ],
      "reasoning": "확정 구조 관점에서는 $63,136.20 저점과 $65,597.20 고점 사이의 박스가 유지되고 있어 명확한 BOS/CHoCH가 확인되지 않으므로 structure_bias는 neutral이다. 다만 파생 포지셔닝은 단기적으로 bearish setup에 가깝다; 롱 계정 비율이 0.643까지 올라왔고 account_long_crowding=1.000인 반면 가격은 $64,037.20으로 EMA20 $64,092.29, EMA120 $64,254.27, 7일 EQ $64,366.70 아래에 있다. CVD divergence 0.850과 CVD +$1,627.75는 매수 체결이 들어왔음에도 가격이 상방으로 확장하지 못했다는 의미이며, OI도 24시간 +0.164로 신규 포지션이 붙는 가운데 롱이 갇히는 형태다. 따라서 4-8시간 파생 선행 관점에서는 $63,400 청산 밀집 구간 테스트 가능성이 우세하며, $64,366.70 위로 재수용되기 전까지 반등은 숏 셋업으로 본다.",
      "key_levels": {
        "support": [
          63400,
          63136.2,
          62700,
          61600
        ],
        "resistance": [
          64092.29,
          64143.25,
          64254.27,
          64366.7,
          65597.2,
          66600,
          66700
        ]
      },
      "time_horizon": "short term, 약 4-8시간",
      "invalidation_level": "$64,366.70 15분봉 종가 재수용",
      "risk_scenario": "$64,366.70 위로 재수용되고 EMA120 $64,254.27 및 EMA240 $64,143.25 위에서 안착하면 롱 쏠림이 숏 스퀴즈 연료로 전환될 수 있으며, 이 경우 상단 유동성 $66,600-$66,700 구간까지 빠르게 확장될 수 있다.",
      "data_quality": "medium",
      "metrics": {
        "cvd_divergence": 0.85,
        "cvd_change": 1627.752,
        "oi_trend": 0.516,
        "oi_change_pct_24h": 0.164,
        "oi_latest": 100061.061,
        "funding_pressure": 0.465,
        "funding_avg": 3.456e-05,
        "funding_change_24h": 2.527e-05,
        "long_account_ratio": 0.621,
        "short_account_ratio": 0.379,
        "long_account_latest": 0.643,
        "short_account_latest": 0.357,
        "long_account_change_24h": 0.0259,
        "short_account_change_24h": -0.0259,
        "account_flow_label": "long_accounts_rising_short_accounts_falling",
        "account_short_crowding": 0.0,
        "account_long_crowding": 1.0,
        "ls_imbalance": 0.0,
        "ls_imbalance_interpretation": "high=short-account crowding / low=long-account crowding",
        "spot_futures_basis_score": 0.489,
        "spot_futures_basis_pct": -0.0439,
        "basis_change_lookback": 0.0126,
        "aggregate_score": 0.464,
        "bull_signals": 1,
        "bear_signals": 1,
        "liq_below": [
          [
            63400,
            1354.6725087
          ],
          [
            62700,
            1206.433629
          ],
          [
            61600,
            1488.402257
          ]
        ],
        "liq_above": [
          [
            66600,
            1153.517014
          ],
          [
            66700,
            1488.402257
          ],
          [
            70400,
            1708.6396712500002
          ]
        ],
        "strongest_liq_level": 57600,
        "fragility_score": 0.91,
        "positioning_extreme": "balanced"
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.58,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.65,\n  \"setup_signals\": [\n    \"현재가 $64,037.20가 7일 레인지 EQ $64,366.70 아래에 있어 구조적으로는 할인 구간이나, 반등 수용 실패 시 하방 유동성 $63,400으로 끌릴 수 있음\",\n    \"롱 계정 비율 0.643, 숏 계정 비율 0.357로 롱 계정 쏠림이 극단적이며 account_long_crowding=1.000\",\n    \"24시간 동안 롱 계정 +0.026 증가, 숏 계정 -0.0259 감소로 추격성 롱 유입이 확인됨\",\n    \"CVD divergence 0.850으로 가격은 24시간 +0.16%에 그쳤지만 CVD 변화가 +$1,627.75로 매수 체결 대비 가격 반응이 약함\",\n    \"OI가 24시간 +0.164로 소폭 증가하고 최신 OI가 $100,061.06인 상태에서 가격이 EMA20 $64,092.29 및 EMA120 $64,254.27 아래에 머물러 신규 롱 포지션의 효율이 낮음\"\n  ],\n  \"reasoning\": \"확정 구조 관점에서는 $63,136.20 저점과 $65,597.20 고점 사이의 박스가 유지되고 있어 명확한 BOS/CHoCH가 확인되지 않으므로 structure_bias는 neutral이다. 다만 파생 포지셔닝은 단기적으로 bearish setup에 가깝다; 롱 계정 비율이 0.643까지 올라왔고 account_long_crowding=1.000인 반면 가격은 $64,037.20으로 EMA20 $64,092.29, EMA120 $64,254.27, 7일 EQ $64,366.70 아래에 있다. CVD divergence 0.850과 CVD +$1,627.75는 매수 체결이 들어왔음에도 가격이 상방으로 확장하지 못했다는 의미이며, OI도 24시간 +0.164로 신규 포지션이 붙는 가운데 롱이 갇히는 형태다. 따라서 4-8시간 파생 선행 관점에서는 $63,400 청산 밀집 구간 테스트 가능성이 우세하며, $64,366.70 위로 재수용되기 전까지 반등은 숏 셋업으로 본다.\",\n  \"key_levels\": {\n    \"support\": [\n      63400,\n      63136.2,\n      62700,\n      61600\n    ],\n    \"resistance\": [\n      64092.29,\n      64143.25,\n      64254.27,\n      64366.7,\n      65597.2,\n      66600,\n      66700\n    ]\n  },\n  \"time_horizon\": \"short term, 약 4-8시간\",\n  \"invalidation_level\": \"$64,366.70 15분봉 종가 재수용\",\n  \"risk_scenario\": \"$64,366.70 위로 재수용되고 EMA120 $64,254.27 및 EMA240 $64,143.25 위에서 안착하면 롱 쏠림이 숏 스퀴즈 연료로 전환될 수 있으며, 이 경우 상단 유동성 $66,600-$66,700 구간까지 빠르게 확장될 수 있다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "ict": {
      "agent_id": "ict",
      "display_name": "ICT Trader",
      "signal": "neutral",
      "confidence": 0.45,
      "structure_bias": "neutral",
      "setup_bias": "neutral",
      "setup_score": 0.35,
      "setup_signals": [
        "현재가 $64,037.20은 EQ $64,428.35 아래의 discount 영역에 위치하지만, 할인 매수 확인 신호는 아직 부족",
        "상방 구조 확인은 $64,284.90 bullish CHoCH 및 $64,326.00 bullish BOS 재돌파가 필요",
        "하방 구조 확인은 $63,907.40 bearish BOS 및 $63,833.40 bearish CHoCH 하방 수용이 필요",
        "활성 Order Block 0개, 미충족 FVG 0개, 최근 liquidity sweep 0개로 기관 주문흐름 단서가 약함",
        "London 세션 저점 $63,758.30이 단기 sell-side liquidity로 작동 가능"
      ],
      "reasoning": "현재 BTC는 $64,037.20으로 EQ $64,428.35 아래 discount 영역에 있지만, 활성 bullish OB/FVG가 전혀 없어 할인 구간 매수 셋업의 질은 낮습니다. 구조적으로는 $64,326.00 bullish BOS와 $64,284.90 bullish CHoCH가 있었으나, 이후 $63,833.40 bearish CHoCH가 발생했고 현재가는 $64,199.00 및 $64,284.90 아래에 있어 명확한 bullish acceptance가 확인되지 않았습니다. 반대로 하방도 $63,907.40 bearish BOS 레벨 위에 머물고 있어 bearish continuation 역시 확정되지 않았습니다. bull_score 7.2, bear_score 7.4로 거의 균형이며 setup_score 0.35는 강한 선행 셋업보다는 박스권 내 유동성 탐색 국면을 시사합니다.",
      "key_levels": {
        "support": [
          63907.4,
          63833.4,
          63758.3,
          63220.0
        ],
        "resistance": [
          64199.0,
          64284.9,
          64326.0,
          64428.35,
          64788.0,
          65098.4,
          65597.2
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$64,326.00 상방 15분 종가 수용 또는 $63,907.40 하방 15분 종가 이탈 시 중립 관점 무효",
      "risk_scenario": "상방으로 $64,284.90 CHoCH와 $64,326.00 BOS를 회복하면 현재의 약한 중립/하방 압력은 무효화되고 EQ $64,428.35 및 $64,788.00까지 buy-side liquidity를 재탐색할 수 있습니다. 반대로 $63,907.40 아래로 수용되면 $63,833.40과 London 저점 $63,758.30의 sell-side liquidity가 열리며, 이전 저점 $63,220.00까지 하방 확장이 가능합니다.",
      "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": 65,
        "fvg_open_zones": [],
        "bos_choch_events": [
          "BOS_bullish",
          "CHoCH_bearish",
          "BOS_bearish",
          "CHoCH_bullish",
          "BOS_bullish",
          "CHoCH_bearish"
        ],
        "bos_choch_levels": [
          {
            "type": "BOS_bullish",
            "level": 64326.0
          },
          {
            "type": "CHoCH_bearish",
            "level": 64199.0
          },
          {
            "type": "BOS_bearish",
            "level": 63907.4
          },
          {
            "type": "CHoCH_bullish",
            "level": 64284.9
          },
          {
            "type": "BOS_bullish",
            "level": 64788.0
          },
          {
            "type": "CHoCH_bearish",
            "level": 63833.4
          }
        ],
        "bos_sequence": [
          "CHoCH_bearish",
          "CHoCH_bullish",
          "BOS_bullish",
          "CHoCH_bearish",
          "BOS_bearish",
          "CHoCH_bullish",
          "BOS_bullish",
          "CHoCH_bearish"
        ],
        "consecutive_bull_bos": 0,
        "consecutive_bear_bos": 0,
        "recent_liq_sweeps": [],
        "recent_sweep_levels": [],
        "liquidity_resting": [],
        "current_zone": "discount",
        "eq_level": 64428.35,
        "range_high": 65098.4,
        "range_low": 63758.3,
        "bull_score": 7.2,
        "bear_score": 7.4,
        "setup_bias": "neutral",
        "setup_score": 0.35,
        "setup_signals": [
          "bullish BOS above $64,326.00",
          "bullish CHoCH above $64,284.90",
          "bearish CHoCH below $64,199.00",
          "bearish BOS below $63,907.40"
        ],
        "retracement_direction": "bearish",
        "current_retracement_pct": 16.9,
        "deepest_retracement_pct": 26.6,
        "previous_day_high": 65597.2,
        "previous_day_low": 63220.0,
        "broken_prev_high": false,
        "broken_prev_low": false,
        "sessions": {
          "London": {
            "active": true,
            "high": 64370.8,
            "low": 63758.3
          },
          "New York": {
            "active": false,
            "high": null,
            "low": null
          },
          "Asian kill zone": {
            "active": false,
            "high": null,
            "low": null
          }
        }
      },
      "raw_llm_response": "{\n  \"signal\": \"neutral\",\n  \"confidence\": 0.45,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"neutral\",\n  \"setup_score\": 0.35,\n  \"setup_signals\": [\n    \"현재가 $64,037.20은 EQ $64,428.35 아래의 discount 영역에 위치하지만, 할인 매수 확인 신호는 아직 부족\",\n    \"상방 구조 확인은 $64,284.90 bullish CHoCH 및 $64,326.00 bullish BOS 재돌파가 필요\",\n    \"하방 구조 확인은 $63,907.40 bearish BOS 및 $63,833.40 bearish CHoCH 하방 수용이 필요\",\n    \"활성 Order Block 0개, 미충족 FVG 0개, 최근 liquidity sweep 0개로 기관 주문흐름 단서가 약함\",\n    \"London 세션 저점 $63,758.30이 단기 sell-side liquidity로 작동 가능\"\n  ],\n  \"reasoning\": \"현재 BTC는 $64,037.20으로 EQ $64,428.35 아래 discount 영역에 있지만, 활성 bullish OB/FVG가 전혀 없어 할인 구간 매수 셋업의 질은 낮습니다. 구조적으로는 $64,326.00 bullish BOS와 $64,284.90 bullish CHoCH가 있었으나, 이후 $63,833.40 bearish CHoCH가 발생했고 현재가는 $64,199.00 및 $64,284.90 아래에 있어 명확한 bullish acceptance가 확인되지 않았습니다. 반대로 하방도 $63,907.40 bearish BOS 레벨 위에 머물고 있어 bearish continuation 역시 확정되지 않았습니다. bull_score 7.2, bear_score 7.4로 거의 균형이며 setup_score 0.35는 강한 선행 셋업보다는 박스권 내 유동성 탐색 국면을 시사합니다.\",\n  \"key_levels\": {\n    \"support\": [\n      63907.4,\n      63833.4,\n      63758.3,\n      63220.0\n    ],\n    \"resistance\": [\n      64199.0,\n      64284.9,\n      64326.0,\n      64428.35,\n      64788.0,\n      65098.4,\n      65597.2\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$64,326.00 상방 15분 종가 수용 또는 $63,907.40 하방 15분 종가 이탈 시 중립 관점 무효\",\n  \"risk_scenario\": \"상방으로 $64,284.90 CHoCH와 $64,326.00 BOS를 회복하면 현재의 약한 중립/하방 압력은 무효화되고 EQ $64,428.35 및 $64,788.00까지 buy-side liquidity를 재탐색할 수 있습니다. 반대로 $63,907.40 아래로 수용되면 $63,833.40과 London 저점 $63,758.30의 sell-side liquidity가 열리며, 이전 저점 $63,220.00까지 하방 확장이 가능합니다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "wyckoff": {
      "agent_id": "wyckoff",
      "display_name": "Wyckoff Expert",
      "signal": "bearish",
      "confidence": 0.72,
      "structure_bias": "bearish",
      "setup_bias": "bearish",
      "setup_score": 0.68,
      "setup_signals": [
        "DIS 체제 우세: dis_score 96.2가 acc_score 95.7을 소폭 상회하며 regime_fitness 0.963",
        "분배 Phase D 후보: BC $63,894.0 → AR $63,558.4 이후 ST $64,370.9, UT $64,284.9, UTAD $64,370.8, LPSY $64,030.7 순서 형성",
        "현재가 $64,037.2는 LPSY $64,030.7 부근에 위치해 공급 재출현 여부를 확인하는 구간",
        "확장 범위 기준 EQ 약 $63,964.6 위에서 거래 중이며, 프리미엄 영역에서 LPSY 반응이 관찰됨",
        "하방 확인 레벨은 SOW_IN_PHASE_B $63,871.3 이탈이며, 상방 위험 레벨은 UT/UTAD 공급대 $64,284.9~$64,370.9"
      ],
      "reasoning": "현재 구조는 metrics상 regime=DIS, structure_bias=bearish, major_phase=D이며, BC $63,894.0 / AR $63,558.4를 초기 앵커로 한 뒤 ST $64,370.9와 UTAD $64,370.8에서 상단 실패가 반복된 분배 구조로 해석된다. 마지막 이벤트는 LPSY $64,030.7이며 현재가 $64,037.2가 그 바로 위에 있어, 아직 강한 하방 확정이라기보다 LPSY 공급 테스트 구간으로 보는 것이 적절하다. 즉 구조적 편향은 약세지만, 즉시 경로는 $64,030.7 재이탈 여부와 $63,871.3 SOW_IN_PHASE_B 저점 테스트가 핵심이다. 반대로 $64,284.9 UT를 회복하고 $64,370.8~$64,370.9 UTAD/ST 상단 위에서 수용되면 현재 Phase D/LPSY 약세 해석은 훼손된다.",
      "key_levels": {
        "support": [
          64030.7,
          63871.3,
          63558.4,
          63136.2
        ],
        "resistance": [
          64284.9,
          64370.8,
          64370.9,
          65597.2
        ]
      },
      "time_horizon": "short to medium term",
      "invalidation_level": "$64,370.9 상방 수용",
      "risk_scenario": "$64,030.7 LPSY 부근에서 매도 반응이 실패하고 $64,284.9 UT를 회복하면, 가격은 $64,370.8~$64,370.9 UTAD/ST 공급대를 재시험할 가능성이 높다. 이 구간마저 상방 수용되면 현재 분배 Phase D/LPSY 해석은 무효화되고, 단기적으로는 범위 재진입 또는 재축적 후보로 재평가해야 한다.",
      "data_quality": "high",
      "metrics": {
        "acc_score": 95.7,
        "dis_score": 96.2,
        "regime": "DIS",
        "regime_state": "dis_candidate",
        "structure_bias": "bearish",
        "phase_context": "dis_candidate / distribution / Phase D",
        "phases_detected": [
          "BC",
          "AR",
          "ST",
          "SOW_IN_PHASE_B",
          "UT",
          "UTAD",
          "LPSY"
        ],
        "last_phase": "LPSY",
        "phase_candidates": [
          {
            "label": "BC",
            "side": "high",
            "idx": 16,
            "price": 63894.0,
            "color": "#ffd166"
          },
          {
            "label": "AR",
            "side": "low",
            "idx": 24,
            "price": 63558.4,
            "color": "#06d6a0"
          },
          {
            "label": "ST",
            "side": "high",
            "idx": 57,
            "price": 64370.9,
            "color": "#118ab2"
          },
          {
            "label": "SOW_IN_PHASE_B",
            "side": "low",
            "idx": 126,
            "price": 63871.3,
            "color": "#ef476f"
          },
          {
            "label": "UT",
            "side": "high",
            "idx": 168,
            "price": 64284.9,
            "color": "#f9844a"
          },
          {
            "label": "UTAD",
            "side": "high",
            "idx": 276,
            "price": 64370.8,
            "color": "#f9844a"
          },
          {
            "label": "LPSY",
            "side": "high",
            "idx": 281,
            "price": 64030.7,
            "color": "#8338ec"
          }
        ],
        "phase_structures": [
          {
            "structure_id": "15m_cycle_1",
            "sequence": 1,
            "timeframe": "15m",
            "regime": "distribution",
            "role": "current_structure_candidate",
            "is_active": true,
            "is_completed": false,
            "is_confirmed": true,
            "structure_bias": "bearish",
            "phase_context": "distribution",
            "start_idx": 16,
            "end_idx": 281,
            "phase_count": 7,
            "phases": [
              {
                "label": "BC",
                "side": "high",
                "idx": 16,
                "price": 63894.0,
                "color": "#ffd166",
                "dt": "2026-06-20 14:00:00+09:00"
              },
              {
                "label": "AR",
                "side": "low",
                "idx": 24,
                "price": 63558.4,
                "color": "#06d6a0",
                "dt": "2026-06-20 16:00:00+09:00"
              },
              {
                "label": "ST",
                "side": "high",
                "idx": 57,
                "price": 64370.9,
                "color": "#118ab2",
                "dt": "2026-06-21 00:15:00+09:00"
              },
              {
                "label": "SOW_IN_PHASE_B",
                "side": "low",
                "idx": 126,
                "price": 63871.3,
                "color": "#ef476f",
                "dt": "2026-06-21 17:30:00+09:00"
              },
              {
                "label": "UT",
                "side": "high",
                "idx": 168,
                "price": 64284.9,
                "color": "#f9844a",
                "dt": "2026-06-22 04:00:00+09:00"
              },
              {
                "label": "UTAD",
                "side": "high",
                "idx": 276,
                "price": 64370.8,
                "color": "#f9844a",
                "dt": "2026-06-23 07:00:00+09:00"
              },
              {
                "label": "LPSY",
                "side": "high",
                "idx": 281,
                "price": 64030.7,
                "color": "#8338ec",
                "dt": "2026-06-23 08:15:00+09:00"
              }
            ]
          }
        ],
        "active_structure_id": "15m_cycle_1",
        "primary_structure_id": "15m_cycle_1",
        "structure_count": 1,
        "regime_fitness": 0.9625,
        "current_event": "LPSY",
        "major_phase": "D",
        "pos_in_range": 0.5,
        "main_range_low": 63558.4,
        "main_range_high": 63894.0
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.72,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.68,\n  \"setup_signals\": [\n    \"DIS 체제 우세: dis_score 96.2가 acc_score 95.7을 소폭 상회하며 regime_fitness 0.963\",\n    \"분배 Phase D 후보: BC $63,894.0 → AR $63,558.4 이후 ST $64,370.9, UT $64,284.9, UTAD $64,370.8, LPSY $64,030.7 순서 형성\",\n    \"현재가 $64,037.2는 LPSY $64,030.7 부근에 위치해 공급 재출현 여부를 확인하는 구간\",\n    \"확장 범위 기준 EQ 약 $63,964.6 위에서 거래 중이며, 프리미엄 영역에서 LPSY 반응이 관찰됨\",\n    \"하방 확인 레벨은 SOW_IN_PHASE_B $63,871.3 이탈이며, 상방 위험 레벨은 UT/UTAD 공급대 $64,284.9~$64,370.9\"\n  ],\n  \"reasoning\": \"현재 구조는 metrics상 regime=DIS, structure_bias=bearish, major_phase=D이며, BC $63,894.0 / AR $63,558.4를 초기 앵커로 한 뒤 ST $64,370.9와 UTAD $64,370.8에서 상단 실패가 반복된 분배 구조로 해석된다. 마지막 이벤트는 LPSY $64,030.7이며 현재가 $64,037.2가 그 바로 위에 있어, 아직 강한 하방 확정이라기보다 LPSY 공급 테스트 구간으로 보는 것이 적절하다. 즉 구조적 편향은 약세지만, 즉시 경로는 $64,030.7 재이탈 여부와 $63,871.3 SOW_IN_PHASE_B 저점 테스트가 핵심이다. 반대로 $64,284.9 UT를 회복하고 $64,370.8~$64,370.9 UTAD/ST 상단 위에서 수용되면 현재 Phase D/LPSY 약세 해석은 훼손된다.\",\n  \"key_levels\": {\n    \"support\": [\n      64030.7,\n      63871.3,\n      63558.4,\n      63136.2\n    ],\n    \"resistance\": [\n      64284.9,\n      64370.8,\n      64370.9,\n      65597.2\n    ]\n  },\n  \"time_horizon\": \"short to medium term\",\n  \"invalidation_level\": \"$64,370.9 상방 수용\",\n  \"risk_scenario\": \"$64,030.7 LPSY 부근에서 매도 반응이 실패하고 $64,284.9 UT를 회복하면, 가격은 $64,370.8~$64,370.9 UTAD/ST 공급대를 재시험할 가능성이 높다. 이 구간마저 상방 수용되면 현재 분배 Phase D/LPSY 해석은 무효화되고, 단기적으로는 범위 재진입 또는 재축적 후보로 재평가해야 한다.\",\n  \"data_quality\": \"high\"\n}"
    },
    "harmonic": {
      "agent_id": "harmonic",
      "display_name": "Harmonic Specialist",
      "signal": "bullish",
      "confidence": 0.58,
      "structure_bias": "neutral",
      "setup_bias": "bullish",
      "setup_score": 0.64,
      "setup_signals": [
        "활성 bullish Gartley 형성 PRZ $63,844.04-$64,009.91, D 예상가 $63,926.97, 현재가 $64,037.20로 PRZ 상단을 소폭 회복",
        "완성 bullish Butterfly PRZ $63,595.91-$63,906.10에서 반응 확인, reaction_score 1.0 및 AD 0.382 반등 목표 $63,992.92 도달",
        "동일 하단 구간에 bullish Bat 형성 PRZ $63,553.43-$63,910.19와 bullish Butterfly 형성 PRZ $63,595.91-$63,906.10이 중첩되어 하방 방어 후보가 밀집",
        "상방 목표로 Gartley TP1 $64,073.98, Butterfly/Bat TP2 클러스터 $64,135.05-$64,164.80가 근접",
        "반대쪽에는 bearish Butterfly PRZ $64,253.43-$64,608.92 및 bearish Crab PRZ $64,357.88-$64,743.91가 있어 상승 시 반응 저항 리스크 존재"
      ],
      "reasoning": "15분 기준 구조적 BOS/CHoCH 정보는 제공되지 않았으므로 확정 구조_bias는 중립으로 둔다. 다만 하모닉 셋업 관점에서는 $63,595.91-$63,910.19 구간에 bullish Butterfly/Bat PRZ가 겹쳐 있고, 완성 bullish Butterfly는 PRZ 방어 후 AD 0.382 목표 $63,992.92를 이미 달성해 confirmed_reaction=true, reaction_score 1.0을 기록했다. 현재가 $64,037.20은 활성 bullish Gartley PRZ $63,844.04-$64,009.91 상단 위에 있어 단기적으로 $64,073.98-$64,164.80 TP 클러스터 재시험 가능성이 우세하다. 다만 하모닉 단독으로 메인 경로를 뒤집을 수 없으며, $64,253.43-$64,743.91에는 bearish PRZ가 밀집해 있어 상승 추격보다는 반응 확인형 접근이 적절하다.",
      "key_levels": {
        "support": [
          64009.91,
          63992.92,
          63844.04,
          63906.1,
          63595.91,
          63553.43
        ],
        "resistance": [
          64073.98,
          64142.38,
          64164.8,
          64253.43,
          64311.8,
          64384.3,
          64608.92,
          64743.91
        ]
      },
      "time_horizon": "short term, 15분 기준 단기 PRZ 반응 및 TP 래더 구간",
      "invalidation_level": "$63,553.43",
      "risk_scenario": "가격이 $64,253.43-$64,608.92 bearish Butterfly PRZ 또는 $64,357.88-$64,743.91 bearish Crab PRZ에 진입한 뒤 15분 rejection/MSS가 발생하면, 현재 bullish 반등 셋업은 $64,140.02-$63,886.18 방향의 되돌림 리스크로 전환된다. 반대로 $63,553.43 하향 이탈 및 수용이 나오면 하단 bullish PRZ 클러스터 방어 실패로 간주하며 $63,404.26-$63,787.22 Gartley 하단 PRZ까지 재평가가 필요하다.",
      "data_quality": "high",
      "metrics": {
        "patterns_found": 49,
        "completed_patterns_found": 17,
        "forming_d_prz_found": 32,
        "swing_orders_scanned": [
          3,
          5,
          8
        ],
        "swing_search_window": 34,
        "multiscale_swings_scanned": 63,
        "swing_highs_scanned": 26,
        "swing_lows_scanned": 37,
        "timeframe": "15m",
        "prz_active_threshold_pct": 0.3,
        "prz_nearby_threshold_pct": 0.6,
        "prz_watch_threshold_pct": 1.2,
        "prz_max_width_pct": 0.6,
        "quality_counts": {
          "high": 14,
          "medium": 17,
          "low": 18
        },
        "prz_status_counts": {
          "active": 25,
          "nearby": 9,
          "watch": 11,
          "far": 4,
          "forming": 4
        },
        "high_confluence_prz_count": 32,
        "strict_patterns_found": 25,
        "candidate_patterns_found": 24,
        "active_patterns_at_prz": 25,
        "nearby_patterns": 9,
        "all_patterns": [
          "bat",
          "gartley",
          "butterfly",
          "shark",
          "bat",
          "shark",
          "bat",
          "butterfly",
          "butterfly",
          "crab",
          "crab",
          "gartley",
          "gartley",
          "gartley",
          "shark",
          "crab",
          "butterfly",
          "bat",
          "crab",
          "crab",
          "crab",
          "bat",
          "crab",
          "crab",
          "shark",
          "shark",
          "bat",
          "bat",
          "crab",
          "shark",
          "gartley",
          "shark",
          "butterfly",
          "butterfly",
          "crab",
          "crab",
          "crab",
          "crab",
          "butterfly",
          "gartley",
          "shark",
          "butterfly",
          "gartley",
          "bat",
          "butterfly",
          "crab",
          "shark",
          "butterfly",
          "crab"
        ],
        "all_signals": [
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish"
        ],
        "best_pattern": "bat",
        "best_pattern_quality": "strict",
        "best_quality": "medium",
        "best_pattern_score": 0.974,
        "best_completion_status": "forming",
        "nearest_pattern": "shark",
        "nearest_prz": 64030.18,
        "price_to_prz": -0.01,
        "prz_range": [
          63762.95,
          64297.41
        ],
        "council_relevant_prz_count": 9,
        "directional_influence_prz_count": 9,
        "confirmed_reaction_prz_count": 2,
        "validated_harmonic_tp_count": 2,
        "pattern_candidates": [
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.967,
            "ratio_score": 0.985,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63926.97,
            "prz_range": [
              63844.04,
              64009.91
            ],
            "prz_width_pct": 0.259,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.17,
            "price_to_prz_pct_raw": -0.1721,
            "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": 63926.97,
              "a_price": 64311.8,
              "tp1_ad_382": 64073.98,
              "tp2_ad_618": 64164.8,
              "tp3_a_or_structure_liquidity": 64311.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6206,
              "ABC": 0.7918
            },
            "x_price": 63833.4,
            "x_idx": 204,
            "x_order": 8,
            "a_price": 64311.8,
            "a_idx": 210,
            "a_order": 5,
            "b_price": 64014.9,
            "b_idx": 222,
            "b_order": 5,
            "c_price": 64250.0,
            "c_idx": 228,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.957,
            "ratio_score": 0.988,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63751.01,
            "prz_range": [
              63595.91,
              63906.1
            ],
            "prz_width_pct": 0.487,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.45,
            "price_to_prz_pct_raw": -0.4469,
            "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": 63751.01,
              "a_price": 64384.3,
              "tp1_ad_382": 63992.92,
              "tp2_ad_618": 64142.38,
              "tp3_a_or_structure_liquidity": 64384.3,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7835,
              "ABC": 0.6364
            },
            "x_price": 63912.8,
            "x_idx": 215,
            "x_order": 8,
            "a_price": 64384.3,
            "a_idx": 218,
            "a_order": 8,
            "b_price": 64014.9,
            "b_idx": 222,
            "b_order": 5,
            "c_price": 64250.0,
            "c_idx": 228,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.952,
            "ratio_score": 1.0,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63731.81,
            "prz_range": [
              63553.43,
              63910.19
            ],
            "prz_width_pct": 0.56,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.48,
            "price_to_prz_pct_raw": -0.4769,
            "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": 63731.81,
              "a_price": 64384.3,
              "tp1_ad_382": 63981.06,
              "tp2_ad_618": 64135.05,
              "tp3_a_or_structure_liquidity": 64384.3,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4019,
              "ABC": 0.6324
            },
            "x_price": 63475.3,
            "x_idx": 177,
            "x_order": 8,
            "a_price": 64384.3,
            "a_idx": 218,
            "a_order": 8,
            "b_price": 64019.0,
            "b_idx": 226,
            "b_order": 3,
            "c_price": 64250.0,
            "c_idx": 228,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.937,
            "ratio_score": 1.0,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 64630.89,
            "prz_range": [
              64443.75,
              64818.04
            ],
            "prz_width_pct": 0.579,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.93,
            "price_to_prz_pct_raw": 0.9271,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "bat",
              "d_price": 64630.89,
              "a_price": 63857.1,
              "tp1_ad_382": 64335.3,
              "tp2_ad_618": 64152.69,
              "tp3_a_or_structure_liquidity": 63857.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4885,
              "ABC": 0.653
            },
            "x_price": 64788.0,
            "x_idx": 193,
            "x_order": 8,
            "a_price": 63857.1,
            "a_idx": 200,
            "a_order": 3,
            "b_price": 64311.8,
            "b_idx": 210,
            "b_order": 5,
            "c_price": 64014.9,
            "c_idx": 222,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.935,
            "ratio_score": 0.995,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63758.3,
            "prz_range": [
              63595.91,
              63906.1
            ],
            "prz_width_pct": 0.487,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.45,
            "price_to_prz_pct_raw": -0.4469,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 0.774,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 63751.01,
              "a_price": 64384.3,
              "tp1_ad_382": 63992.92,
              "tp2_ad_618": 64142.38,
              "tp3_a_or_structure_liquidity": 64384.3,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7835,
              "ABC": 0.6364,
              "BCD": 2.0915,
              "XAD": 1.3277
            },
            "x_price": 63912.8,
            "x_idx": 215,
            "x_order": 8,
            "a_price": 64384.3,
            "a_idx": 218,
            "a_order": 8,
            "b_price": 64014.9,
            "b_idx": 222,
            "b_order": 5,
            "c_price": 64250.0,
            "c_idx": 228,
            "c_order": 3,
            "d_idx": 278
          },
          {
            "pattern": "butterfly",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.932,
            "ratio_score": 0.973,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 64431.17,
            "prz_range": [
              64253.43,
              64608.92
            ],
            "prz_width_pct": 0.552,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.62,
            "price_to_prz_pct_raw": 0.6152,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "butterfly",
              "d_price": 64431.17,
              "a_price": 64014.9,
              "tp1_ad_382": 64272.16,
              "tp2_ad_618": 64173.92,
              "tp3_a_or_structure_liquidity": 64014.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7918,
              "ABC": 0.8758
            },
            "x_price": 64311.8,
            "x_idx": 210,
            "x_order": 5,
            "a_price": 64014.9,
            "a_idx": 222,
            "a_order": 5,
            "b_price": 64250.0,
            "b_idx": 228,
            "b_order": 3,
            "c_price": 64044.1,
            "c_idx": 230,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "crab",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.932,
            "ratio_score": 1.0,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 64550.89,
            "prz_range": [
              64357.88,
              64743.91
            ],
            "prz_width_pct": 0.598,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.8,
            "price_to_prz_pct_raw": 0.8022,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "crab",
              "d_price": 64550.89,
              "a_price": 63475.3,
              "tp1_ad_382": 64140.02,
              "tp2_ad_618": 63886.18,
              "tp3_a_or_structure_liquidity": 63475.3,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4748,
              "ABC": 0.4908
            },
            "x_price": 64243.4,
            "x_idx": 172,
            "x_order": 3,
            "a_price": 63475.3,
            "a_idx": 177,
            "a_order": 8,
            "b_price": 63840.0,
            "b_idx": 183,
            "b_order": 3,
            "c_price": 64019.0,
            "c_idx": 226,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.926,
            "ratio_score": 0.945,
            "prz_score": 0.999,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 63595.74,
            "prz_range": [
              63404.26,
              63787.22
            ],
            "prz_width_pct": 0.602,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.69,
            "price_to_prz_pct_raw": -0.6894,
            "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": 63595.74,
              "a_price": 64788.0,
              "tp1_ad_382": 64051.18,
              "tp2_ad_618": 64332.56,
              "tp3_a_or_structure_liquidity": 64788.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6088,
              "ABC": 0.5771
            },
            "x_price": 63220.0,
            "x_idx": 187,
            "x_order": 8,
            "a_price": 64788.0,
            "a_idx": 193,
            "a_order": 8,
            "b_price": 63833.4,
            "b_idx": 204,
            "b_order": 8,
            "c_price": 64384.3,
            "c_idx": 218,
            "c_order": 8,
            "d_idx": null
          }
        ],
        "council_relevant_prz": [
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.935,
            "ratio_score": 0.995,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63758.3,
            "prz_range": [
              63595.91,
              63906.1
            ],
            "prz_width_pct": 0.487,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.45,
            "price_to_prz_pct_raw": -0.4469,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 0.774,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 63751.01,
              "a_price": 64384.3,
              "tp1_ad_382": 63992.92,
              "tp2_ad_618": 64142.38,
              "tp3_a_or_structure_liquidity": 64384.3,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7835,
              "ABC": 0.6364,
              "BCD": 2.0915,
              "XAD": 1.3277
            },
            "x_price": 63912.8,
            "x_idx": 215,
            "x_order": 8,
            "a_price": 64384.3,
            "a_idx": 218,
            "a_order": 8,
            "b_price": 64014.9,
            "b_idx": 222,
            "b_order": 5,
            "c_price": 64250.0,
            "c_idx": 228,
            "c_order": 3,
            "d_idx": 278
          },
          {
            "pattern": "butterfly",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.888,
            "ratio_score": 0.99,
            "prz_score": 0.945,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 64788.0,
            "prz_range": [
              64408.44,
              64887.88
            ],
            "prz_width_pct": 0.742,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.95,
            "price_to_prz_pct_raw": 0.9541,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 1.095,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "butterfly",
              "d_price": 64648.16,
              "a_price": 63916.0,
              "tp1_ad_382": 64368.47,
              "tp2_ad_618": 64195.68,
              "tp3_a_or_structure_liquidity": 63916.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7841,
              "ABC": 0.7698,
              "BCD": 2.3898,
              "XAD": 1.6229
            },
            "x_price": 64453.3,
            "x_idx": 136,
            "x_order": 8,
            "a_price": 63916.0,
            "a_idx": 142,
            "a_order": 8,
            "b_price": 64337.3,
            "b_idx": 154,
            "b_order": 8,
            "c_price": 64013.0,
            "c_idx": 158,
            "c_order": 5,
            "d_idx": 193
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.967,
            "ratio_score": 0.985,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63926.97,
            "prz_range": [
              63844.04,
              64009.91
            ],
            "prz_width_pct": 0.259,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.17,
            "price_to_prz_pct_raw": -0.1721,
            "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": 63926.97,
              "a_price": 64311.8,
              "tp1_ad_382": 64073.98,
              "tp2_ad_618": 64164.8,
              "tp3_a_or_structure_liquidity": 64311.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6206,
              "ABC": 0.7918
            },
            "x_price": 63833.4,
            "x_idx": 204,
            "x_order": 8,
            "a_price": 64311.8,
            "a_idx": 210,
            "a_order": 5,
            "b_price": 64014.9,
            "b_idx": 222,
            "b_order": 5,
            "c_price": 64250.0,
            "c_idx": 228,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.957,
            "ratio_score": 0.988,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63751.01,
            "prz_range": [
              63595.91,
              63906.1
            ],
            "prz_width_pct": 0.487,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.45,
            "price_to_prz_pct_raw": -0.4469,
            "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": 63751.01,
              "a_price": 64384.3,
              "tp1_ad_382": 63992.92,
              "tp2_ad_618": 64142.38,
              "tp3_a_or_structure_liquidity": 64384.3,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7835,
              "ABC": 0.6364
            },
            "x_price": 63912.8,
            "x_idx": 215,
            "x_order": 8,
            "a_price": 64384.3,
            "a_idx": 218,
            "a_order": 8,
            "b_price": 64014.9,
            "b_idx": 222,
            "b_order": 5,
            "c_price": 64250.0,
            "c_idx": 228,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.952,
            "ratio_score": 1.0,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63731.81,
            "prz_range": [
              63553.43,
              63910.19
            ],
            "prz_width_pct": 0.56,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.48,
            "price_to_prz_pct_raw": -0.4769,
            "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": 63731.81,
              "a_price": 64384.3,
              "tp1_ad_382": 63981.06,
              "tp2_ad_618": 64135.05,
              "tp3_a_or_structure_liquidity": 64384.3,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4019,
              "ABC": 0.6324
            },
            "x_price": 63475.3,
            "x_idx": 177,
            "x_order": 8,
            "a_price": 64384.3,
            "a_idx": 218,
            "a_order": 8,
            "b_price": 64019.0,
            "b_idx": 226,
            "b_order": 3,
            "c_price": 64250.0,
            "c_idx": 228,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.932,
            "ratio_score": 0.973,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 64431.17,
            "prz_range": [
              64253.43,
              64608.92
            ],
            "prz_width_pct": 0.552,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.62,
            "price_to_prz_pct_raw": 0.6152,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "butterfly",
              "d_price": 64431.17,
              "a_price": 64014.9,
              "tp1_ad_382": 64272.16,
              "tp2_ad_618": 64173.92,
              "tp3_a_or_structure_liquidity": 64014.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7918,
              "ABC": 0.8758
            },
            "x_price": 64311.8,
            "x_idx": 210,
            "x_order": 5,
            "a_price": 64014.9,
            "a_idx": 222,
            "a_order": 5,
            "b_price": 64250.0,
            "b_idx": 228,
            "b_order": 3,
            "c_price": 64044.1,
            "c_idx": 230,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "crab",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.932,
            "ratio_score": 1.0,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 64550.89,
            "prz_range": [
              64357.88,
              64743.91
            ],
            "prz_width_pct": 0.598,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.8,
            "price_to_prz_pct_raw": 0.8022,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "crab",
              "d_price": 64550.89,
              "a_price": 63475.3,
              "tp1_ad_382": 64140.02,
              "tp2_ad_618": 63886.18,
              "tp3_a_or_structure_liquidity": 63475.3,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4748,
              "ABC": 0.4908
            },
            "x_price": 64243.4,
            "x_idx": 172,
            "x_order": 3,
            "a_price": 63475.3,
            "a_idx": 177,
            "a_order": 8,
            "b_price": 63840.0,
            "b_idx": 183,
            "b_order": 3,
            "c_price": 64019.0,
            "c_idx": 226,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.926,
            "ratio_score": 0.945,
            "prz_score": 0.999,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 63595.74,
            "prz_range": [
              63404.26,
              63787.22
            ],
            "prz_width_pct": 0.602,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.69,
            "price_to_prz_pct_raw": -0.6894,
            "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": 63595.74,
              "a_price": 64788.0,
              "tp1_ad_382": 64051.18,
              "tp2_ad_618": 64332.56,
              "tp3_a_or_structure_liquidity": 64788.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6088,
              "ABC": 0.5771
            },
            "x_price": 63220.0,
            "x_idx": 187,
            "x_order": 8,
            "a_price": 64788.0,
            "a_idx": 193,
            "a_order": 8,
            "b_price": 63833.4,
            "b_idx": 204,
            "b_order": 8,
            "c_price": 64384.3,
            "c_idx": 218,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.91,
            "ratio_score": 0.915,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 64446.06,
            "prz_range": [
              64280.35,
              64611.78
            ],
            "prz_width_pct": 0.514,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.64,
            "price_to_prz_pct_raw": 0.6385,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 64446.06,
              "a_price": 64019.0,
              "tp1_ad_382": 64282.92,
              "tp2_ad_618": 64182.14,
              "tp3_a_or_structure_liquidity": 64019.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6324,
              "ABC": 0.4545
            },
            "x_price": 64384.3,
            "x_idx": 218,
            "x_order": 8,
            "a_price": 64019.0,
            "a_idx": 226,
            "a_order": 3,
            "b_price": 64250.0,
            "b_idx": 228,
            "b_order": 3,
            "c_price": 64355.0,
            "c_idx": 258,
            "c_order": 3,
            "d_idx": null
          }
        ],
        "report_detail_candidates": [
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.967,
            "ratio_score": 0.985,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63926.97,
            "prz_range": [
              63844.04,
              64009.91
            ],
            "prz_width_pct": 0.259,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.17,
            "price_to_prz_pct_raw": -0.1721,
            "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": 63926.97,
              "a_price": 64311.8,
              "tp1_ad_382": 64073.98,
              "tp2_ad_618": 64164.8,
              "tp3_a_or_structure_liquidity": 64311.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6206,
              "ABC": 0.7918
            },
            "x_price": 63833.4,
            "x_idx": 204,
            "x_order": 8,
            "a_price": 64311.8,
            "a_idx": 210,
            "a_order": 5,
            "b_price": 64014.9,
            "b_idx": 222,
            "b_order": 5,
            "c_price": 64250.0,
            "c_idx": 228,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.957,
            "ratio_score": 0.988,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63751.01,
            "prz_range": [
              63595.91,
              63906.1
            ],
            "prz_width_pct": 0.487,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.45,
            "price_to_prz_pct_raw": -0.4469,
            "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": 63751.01,
              "a_price": 64384.3,
              "tp1_ad_382": 63992.92,
              "tp2_ad_618": 64142.38,
              "tp3_a_or_structure_liquidity": 64384.3,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7835,
              "ABC": 0.6364
            },
            "x_price": 63912.8,
            "x_idx": 215,
            "x_order": 8,
            "a_price": 64384.3,
            "a_idx": 218,
            "a_order": 8,
            "b_price": 64014.9,
            "b_idx": 222,
            "b_order": 5,
            "c_price": 64250.0,
            "c_idx": 228,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.952,
            "ratio_score": 1.0,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63731.81,
            "prz_range": [
              63553.43,
              63910.19
            ],
            "prz_width_pct": 0.56,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.48,
            "price_to_prz_pct_raw": -0.4769,
            "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": 63731.81,
              "a_price": 64384.3,
              "tp1_ad_382": 63981.06,
              "tp2_ad_618": 64135.05,
              "tp3_a_or_structure_liquidity": 64384.3,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4019,
              "ABC": 0.6324
            },
            "x_price": 63475.3,
            "x_idx": 177,
            "x_order": 8,
            "a_price": 64384.3,
            "a_idx": 218,
            "a_order": 8,
            "b_price": 64019.0,
            "b_idx": 226,
            "b_order": 3,
            "c_price": 64250.0,
            "c_idx": 228,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.937,
            "ratio_score": 1.0,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 64630.89,
            "prz_range": [
              64443.75,
              64818.04
            ],
            "prz_width_pct": 0.579,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.93,
            "price_to_prz_pct_raw": 0.9271,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "bat",
              "d_price": 64630.89,
              "a_price": 63857.1,
              "tp1_ad_382": 64335.3,
              "tp2_ad_618": 64152.69,
              "tp3_a_or_structure_liquidity": 63857.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4885,
              "ABC": 0.653
            },
            "x_price": 64788.0,
            "x_idx": 193,
            "x_order": 8,
            "a_price": 63857.1,
            "a_idx": 200,
            "a_order": 3,
            "b_price": 64311.8,
            "b_idx": 210,
            "b_order": 5,
            "c_price": 64014.9,
            "c_idx": 222,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.935,
            "ratio_score": 0.995,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63758.3,
            "prz_range": [
              63595.91,
              63906.1
            ],
            "prz_width_pct": 0.487,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.45,
            "price_to_prz_pct_raw": -0.4469,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 0.774,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 63751.01,
              "a_price": 64384.3,
              "tp1_ad_382": 63992.92,
              "tp2_ad_618": 64142.38,
              "tp3_a_or_structure_liquidity": 64384.3,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7835,
              "ABC": 0.6364,
              "BCD": 2.0915,
              "XAD": 1.3277
            },
            "x_price": 63912.8,
            "x_idx": 215,
            "x_order": 8,
            "a_price": 64384.3,
            "a_idx": 218,
            "a_order": 8,
            "b_price": 64014.9,
            "b_idx": 222,
            "b_order": 5,
            "c_price": 64250.0,
            "c_idx": 228,
            "c_order": 3,
            "d_idx": 278
          },
          {
            "pattern": "butterfly",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.932,
            "ratio_score": 0.973,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 64431.17,
            "prz_range": [
              64253.43,
              64608.92
            ],
            "prz_width_pct": 0.552,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.62,
            "price_to_prz_pct_raw": 0.6152,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "butterfly",
              "d_price": 64431.17,
              "a_price": 64014.9,
              "tp1_ad_382": 64272.16,
              "tp2_ad_618": 64173.92,
              "tp3_a_or_structure_liquidity": 64014.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7918,
              "ABC": 0.8758
            },
            "x_price": 64311.8,
            "x_idx": 210,
            "x_order": 5,
            "a_price": 64014.9,
            "a_idx": 222,
            "a_order": 5,
            "b_price": 64250.0,
            "b_idx": 228,
            "b_order": 3,
            "c_price": 64044.1,
            "c_idx": 230,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "crab",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.932,
            "ratio_score": 1.0,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 64550.89,
            "prz_range": [
              64357.88,
              64743.91
            ],
            "prz_width_pct": 0.598,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.8,
            "price_to_prz_pct_raw": 0.8022,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "crab",
              "d_price": 64550.89,
              "a_price": 63475.3,
              "tp1_ad_382": 64140.02,
              "tp2_ad_618": 63886.18,
              "tp3_a_or_structure_liquidity": 63475.3,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4748,
              "ABC": 0.4908
            },
            "x_price": 64243.4,
            "x_idx": 172,
            "x_order": 3,
            "a_price": 63475.3,
            "a_idx": 177,
            "a_order": 8,
            "b_price": 63840.0,
            "b_idx": 183,
            "b_order": 3,
            "c_price": 64019.0,
            "c_idx": 226,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.926,
            "ratio_score": 0.945,
            "prz_score": 0.999,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 63595.74,
            "prz_range": [
              63404.26,
              63787.22
            ],
            "prz_width_pct": 0.602,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.69,
            "price_to_prz_pct_raw": -0.6894,
            "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": 63595.74,
              "a_price": 64788.0,
              "tp1_ad_382": 64051.18,
              "tp2_ad_618": 64332.56,
              "tp3_a_or_structure_liquidity": 64788.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6088,
              "ABC": 0.5771
            },
            "x_price": 63220.0,
            "x_idx": 187,
            "x_order": 8,
            "a_price": 64788.0,
            "a_idx": 193,
            "a_order": 8,
            "b_price": 63833.4,
            "b_idx": 204,
            "b_order": 8,
            "c_price": 64384.3,
            "c_idx": 218,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.91,
            "ratio_score": 0.915,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 64446.06,
            "prz_range": [
              64280.35,
              64611.78
            ],
            "prz_width_pct": 0.514,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.64,
            "price_to_prz_pct_raw": 0.6385,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 64446.06,
              "a_price": 64019.0,
              "tp1_ad_382": 64282.92,
              "tp2_ad_618": 64182.14,
              "tp3_a_or_structure_liquidity": 64019.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6324,
              "ABC": 0.4545
            },
            "x_price": 64384.3,
            "x_idx": 218,
            "x_order": 8,
            "a_price": 64019.0,
            "a_idx": 226,
            "a_order": 3,
            "b_price": 64250.0,
            "b_idx": 228,
            "b_order": 3,
            "c_price": 64355.0,
            "c_idx": 258,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.908,
            "ratio_score": 0.901,
            "prz_score": 0.991,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 63758.3,
            "prz_range": [
              63567.69,
              63964.51
            ],
            "prz_width_pct": 0.622,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.42,
            "price_to_prz_pct_raw": -0.4233,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 0.471,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 63766.1,
              "a_price": 64788.0,
              "tp1_ad_382": 64156.47,
              "tp2_ad_618": 64397.63,
              "tp3_a_or_structure_liquidity": 64788.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5858,
              "ABC": 0.896,
              "BCD": 1.3784,
              "XAD": 0.7844
            },
            "x_price": 63475.3,
            "x_idx": 177,
            "x_order": 8,
            "a_price": 64788.0,
            "a_idx": 193,
            "a_order": 8,
            "b_price": 64019.0,
            "b_idx": 226,
            "b_order": 3,
            "c_price": 64708.0,
            "c_idx": 260,
            "c_order": 3,
            "d_idx": 278
          },
          {
            "pattern": "shark",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.907,
            "ratio_score": 0.837,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 64063.86,
            "prz_range": [
              63958.71,
              64169.02
            ],
            "prz_width_pct": 0.328,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.04,
            "price_to_prz_pct_raw": 0.0416,
            "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": 64063.86,
              "a_price": 64250.0,
              "tp1_ad_382": 64134.97,
              "tp2_ad_618": 64178.9,
              "tp3_a_or_structure_liquidity": 64250.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4466,
              "ABC": 1.0686
            },
            "x_price": 64014.9,
            "x_idx": 222,
            "x_order": 5,
            "a_price": 64250.0,
            "a_idx": 228,
            "a_order": 3,
            "b_price": 64355.0,
            "b_idx": 258,
            "b_order": 3,
            "c_price": 64242.8,
            "c_idx": 288,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.881,
            "ratio_score": 0.938,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 64708.0,
            "prz_range": [
              64443.75,
              64818.04
            ],
            "prz_width_pct": 0.579,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.93,
            "price_to_prz_pct_raw": 0.9271,
            "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.55,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "post_D_close_progress"
                ]
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "bat",
              "d_price": 64630.89,
              "a_price": 63857.1,
              "tp1_ad_382": 64335.3,
              "tp2_ad_618": 64152.69,
              "tp3_a_or_structure_liquidity": 63857.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4885,
              "ABC": 0.653,
              "BCD": 2.3345,
              "XAD": 0.9141
            },
            "x_price": 64788.0,
            "x_idx": 193,
            "x_order": 8,
            "a_price": 63857.1,
            "a_idx": 200,
            "a_order": 3,
            "b_price": 64311.8,
            "b_idx": 210,
            "b_order": 5,
            "c_price": 64014.9,
            "c_idx": 222,
            "c_order": 5,
            "d_idx": 260
          }
        ],
        "actionable_patterns_list": [
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.967,
            "prz_proximity": "active",
            "prz_range": [
              63844.04,
              64009.91
            ],
            "prz_reversal_direction": "up",
            "price_to_prz_pct": -0.17,
            "high_confluence_prz": true,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 63926.97,
              "a_price": 64311.8,
              "tp1_ad_382": 64073.98,
              "tp2_ad_618": 64164.8,
              "tp3_a_or_structure_liquidity": 64311.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "GARTLEY FORMING HIGH PRZ $63,844.04-$64,009.91: expected reversal UP if price reacts in zone"
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.957,
            "prz_proximity": "active",
            "prz_range": [
              63595.91,
              63906.1
            ],
            "prz_reversal_direction": "up",
            "price_to_prz_pct": -0.45,
            "high_confluence_prz": true,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 63751.01,
              "a_price": 64384.3,
              "tp1_ad_382": 63992.92,
              "tp2_ad_618": 64142.38,
              "tp3_a_or_structure_liquidity": 64384.3,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "BUTTERFLY FORMING HIGH PRZ $63,595.91-$63,906.10: expected reversal UP if price reacts in zone"
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.952,
            "prz_proximity": "active",
            "prz_range": [
              63553.43,
              63910.19
            ],
            "prz_reversal_direction": "up",
            "price_to_prz_pct": -0.48,
            "high_confluence_prz": true,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 63731.81,
              "a_price": 64384.3,
              "tp1_ad_382": 63981.06,
              "tp2_ad_618": 64135.05,
              "tp3_a_or_structure_liquidity": 64384.3,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "BAT FORMING HIGH PRZ $63,553.43-$63,910.19: expected reversal UP if price reacts in zone"
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.935,
            "prz_proximity": "active",
            "prz_range": [
              63595.91,
              63906.1
            ],
            "prz_reversal_direction": "up",
            "price_to_prz_pct": -0.45,
            "high_confluence_prz": true,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 0.774,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 63751.01,
              "a_price": 64384.3,
              "tp1_ad_382": 63992.92,
              "tp2_ad_618": 64142.38,
              "tp3_a_or_structure_liquidity": 64384.3,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "BUTTERFLY COMPLETED HIGH PRZ $63,595.91-$63,906.10: expected reversal UP if price reacts in zone"
          },
          {
            "pattern": "butterfly",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.932,
            "prz_proximity": "nearby",
            "prz_range": [
              64253.43,
              64608.92
            ],
            "prz_reversal_direction": "down",
            "price_to_prz_pct": 0.62,
            "high_confluence_prz": true,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "butterfly",
              "d_price": 64431.17,
              "a_price": 64014.9,
              "tp1_ad_382": 64272.16,
              "tp2_ad_618": 64173.92,
              "tp3_a_or_structure_liquidity": 64014.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "BUTTERFLY FORMING HIGH PRZ $64,253.43-$64,608.92: expected reversal DOWN if price reacts in zone"
          },
          {
            "pattern": "crab",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.932,
            "prz_proximity": "nearby",
            "prz_range": [
              64357.88,
              64743.91
            ],
            "prz_reversal_direction": "down",
            "price_to_prz_pct": 0.8,
            "high_confluence_prz": true,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "crab",
              "d_price": 64550.89,
              "a_price": 63475.3,
              "tp1_ad_382": 64140.02,
              "tp2_ad_618": 63886.18,
              "tp3_a_or_structure_liquidity": 63475.3,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "CRAB FORMING HIGH PRZ $64,357.88-$64,743.91: expected reversal DOWN if price reacts in zone"
          }
        ],
        "best_council_prz": {
          "pattern": "gartley",
          "signal": "bullish",
          "completion_status": "forming",
          "pattern_quality": "strict",
          "quality": "high",
          "pattern_score": 0.967,
          "ratio_score": 0.985,
          "prz_score": 1.0,
          "prz_proximity": "active",
          "action_status": "active",
          "high_confluence_prz": true,
          "d_price": 63926.97,
          "prz_range": [
            63844.04,
            64009.91
          ],
          "prz_width_pct": 0.259,
          "prz_confluence_count": 3,
          "prz_fib_families": [
            "ABCD",
            "BC_EXT",
            "XAD"
          ],
          "price_to_prz_pct": -0.17,
          "price_to_prz_pct_raw": -0.1721,
          "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": 63926.97,
            "a_price": 64311.8,
            "tp1_ad_382": 64073.98,
            "tp2_ad_618": 64164.8,
            "tp3_a_or_structure_liquidity": 64311.8,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          "ratios": {
            "XAB": 0.6206,
            "ABC": 0.7918
          },
          "x_price": 63833.4,
          "x_idx": 204,
          "x_order": 8,
          "a_price": 64311.8,
          "a_idx": 210,
          "a_order": 5,
          "b_price": 64014.9,
          "b_idx": 222,
          "b_order": 5,
          "c_price": 64250.0,
          "c_idx": 228,
          "c_order": 3,
          "d_idx": null
        },
        "best_tp_ladder": {
          "direction": "bullish",
          "source": "gartley",
          "d_price": 63926.97,
          "a_price": 64311.8,
          "tp1_ad_382": 64073.98,
          "tp2_ad_618": 64164.8,
          "tp3_a_or_structure_liquidity": 64311.8,
          "note": "Use as strong TP ladder context; not standalone path authority."
        },
        "best_confirmed_tp_ladder": {
          "direction": "bullish",
          "source": "butterfly",
          "d_price": 63751.01,
          "a_price": 64384.3,
          "tp1_ad_382": 63992.92,
          "tp2_ad_618": 64142.38,
          "tp3_a_or_structure_liquidity": 64384.3,
          "note": "Use as strong TP ladder context; not standalone path authority."
        },
        "tp_ladder": [
          {
            "direction": "bullish",
            "source": "gartley",
            "d_price": 63926.97,
            "a_price": 64311.8,
            "tp1_ad_382": 64073.98,
            "tp2_ad_618": 64164.8,
            "tp3_a_or_structure_liquidity": 64311.8,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bullish",
            "source": "butterfly",
            "d_price": 63751.01,
            "a_price": 64384.3,
            "tp1_ad_382": 63992.92,
            "tp2_ad_618": 64142.38,
            "tp3_a_or_structure_liquidity": 64384.3,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bullish",
            "source": "bat",
            "d_price": 63731.81,
            "a_price": 64384.3,
            "tp1_ad_382": 63981.06,
            "tp2_ad_618": 64135.05,
            "tp3_a_or_structure_liquidity": 64384.3,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bullish",
            "source": "butterfly",
            "d_price": 63751.01,
            "a_price": 64384.3,
            "tp1_ad_382": 63992.92,
            "tp2_ad_618": 64142.38,
            "tp3_a_or_structure_liquidity": 64384.3,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bearish",
            "source": "butterfly",
            "d_price": 64431.17,
            "a_price": 64014.9,
            "tp1_ad_382": 64272.16,
            "tp2_ad_618": 64173.92,
            "tp3_a_or_structure_liquidity": 64014.9,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bearish",
            "source": "crab",
            "d_price": 64550.89,
            "a_price": 63475.3,
            "tp1_ad_382": 64140.02,
            "tp2_ad_618": 63886.18,
            "tp3_a_or_structure_liquidity": 63475.3,
            "note": "Use as strong TP ladder context; not standalone path authority."
          }
        ],
        "validated_tp_ladder": [
          {
            "direction": "bullish",
            "source": "butterfly",
            "d_price": 63751.01,
            "a_price": 64384.3,
            "tp1_ad_382": 63992.92,
            "tp2_ad_618": 64142.38,
            "tp3_a_or_structure_liquidity": 64384.3,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bearish",
            "source": "butterfly",
            "d_price": 64648.16,
            "a_price": 63916.0,
            "tp1_ad_382": 64368.47,
            "tp2_ad_618": 64195.68,
            "tp3_a_or_structure_liquidity": 63916.0,
            "note": "Use as strong TP ladder context; not standalone path authority."
          }
        ],
        "harmonic_governance": {
          "role": "PRZ reaction + TP ladder confluence, not standalone path engine",
          "pre_confirmation_weight_range": [
            0.25,
            0.35
          ],
          "post_confirmation_vote_weight_range": [
            0.5,
            0.6
          ],
          "standalone_path_override_allowed": false,
          "opposes_core_path_policy": "branch/reversal-risk/reaction-zone unless lower-TF structure and derivatives also confirm",
          "aligns_with_core_path_policy": "modest confidence lift plus strong TP ladder influence"
        },
        "execution_readiness": "ready",
        "directional_scores": {
          "bullish": 1.343,
          "bearish": 0.669
        },
        "directional_score_total": 2.012,
        "directional_dominance": 0.335
      },
      "raw_llm_response": "{\n  \"signal\": \"bullish\",\n  \"confidence\": 0.58,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.64,\n  \"setup_signals\": [\n    \"활성 bullish Gartley 형성 PRZ $63,844.04-$64,009.91, D 예상가 $63,926.97, 현재가 $64,037.20로 PRZ 상단을 소폭 회복\",\n    \"완성 bullish Butterfly PRZ $63,595.91-$63,906.10에서 반응 확인, reaction_score 1.0 및 AD 0.382 반등 목표 $63,992.92 도달\",\n    \"동일 하단 구간에 bullish Bat 형성 PRZ $63,553.43-$63,910.19와 bullish Butterfly 형성 PRZ $63,595.91-$63,906.10이 중첩되어 하방 방어 후보가 밀집\",\n    \"상방 목표로 Gartley TP1 $64,073.98, Butterfly/Bat TP2 클러스터 $64,135.05-$64,164.80가 근접\",\n    \"반대쪽에는 bearish Butterfly PRZ $64,253.43-$64,608.92 및 bearish Crab PRZ $64,357.88-$64,743.91가 있어 상승 시 반응 저항 리스크 존재\"\n  ],\n  \"reasoning\": \"15분 기준 구조적 BOS/CHoCH 정보는 제공되지 않았으므로 확정 구조_bias는 중립으로 둔다. 다만 하모닉 셋업 관점에서는 $63,595.91-$63,910.19 구간에 bullish Butterfly/Bat PRZ가 겹쳐 있고, 완성 bullish Butterfly는 PRZ 방어 후 AD 0.382 목표 $63,992.92를 이미 달성해 confirmed_reaction=true, reaction_score 1.0을 기록했다. 현재가 $64,037.20은 활성 bullish Gartley PRZ $63,844.04-$64,009.91 상단 위에 있어 단기적으로 $64,073.98-$64,164.80 TP 클러스터 재시험 가능성이 우세하다. 다만 하모닉 단독으로 메인 경로를 뒤집을 수 없으며, $64,253.43-$64,743.91에는 bearish PRZ가 밀집해 있어 상승 추격보다는 반응 확인형 접근이 적절하다.\",\n  \"key_levels\": {\n    \"support\": [\n      64009.91,\n      63992.92,\n      63844.04,\n      63906.1,\n      63595.91,\n      63553.43\n    ],\n    \"resistance\": [\n      64073.98,\n      64142.38,\n      64164.8,\n      64253.43,\n      64311.8,\n      64384.3,\n      64608.92,\n      64743.91\n    ]\n  },\n  \"time_horizon\": \"short term, 15분 기준 단기 PRZ 반응 및 TP 래더 구간\",\n  \"invalidation_level\": \"$63,553.43\",\n  \"risk_scenario\": \"가격이 $64,253.43-$64,608.92 bearish Butterfly PRZ 또는 $64,357.88-$64,743.91 bearish Crab PRZ에 진입한 뒤 15분 rejection/MSS가 발생하면, 현재 bullish 반등 셋업은 $64,140.02-$63,886.18 방향의 되돌림 리스크로 전환된다. 반대로 $63,553.43 하향 이탈 및 수용이 나오면 하단 bullish PRZ 클러스터 방어 실패로 간주하며 $63,404.26-$63,787.22 Gartley 하단 PRZ까지 재평가가 필요하다.\",\n  \"data_quality\": \"high\"\n}"
    }
  },
  "chairman_synthesis": {
    "overall_signal": "bearish",
    "overall_confidence": 0.59,
    "execution_setup": {
      "setup_bias": "bullish",
      "setup_strength": 0.62,
      "active_setups": [
        "피보나치 상승 스윙 $63,803 → $64,243 기준 0.5 되돌림 $64,023.00 상단에서 지지 테스트 중이며, 0.618 되돌림 $63,971.13이 아직 유지됨",
        "하모닉 bullish Gartley 활성 PRZ $63,844.04-$64,009.91 상단을 현재가 $64,037.20이 소폭 회복했으며, 확인된 bullish Butterfly 반응은 $63,595.91-$63,906.10 방어 후 0.382 목표 $63,992.92를 달성함",
        "캔들 구조는 7일 범위 EQ $64,366.70 아래 할인 구간에서 bullish piercing pattern 후보가 감지되었고 bull_score 1.45가 bear_score 0.75를 상회함",
        "파생 포지셔닝은 반대로 롱 계정 비율 0.643, 롱 계정 쏠림 1.000, CVD divergence 0.850으로 반등 실패 시 롱 트랩 위험을 경고함",
        "Wyckoff상 현재가가 LPSY $64,030.70 바로 위에 있어, 반등 셋업이 동시에 공급 재출현 테스트 구간과 겹침"
      ],
      "setup_vs_structure": "구조적 판정은 Wyckoff 분배 Phase D/LPSY 근거로 약세 쪽이지만, 단기 실행 셋업은 피보나치·캔들·하모닉이 $64,000 전후 방어를 근거로 bullish 쪽에 더 많이 모여 있다. 즉 현재는 ‘약세 구조 안의 반등형 실행 셋업’이며, 반등은 구조 전환이 아니라 LPSY 공급 테스트로 먼저 해석해야 한다."
    },
    "signal_breakdown": {
      "bullish_count": 2,
      "bearish_count": 2,
      "neutral_count": 2
    },
    "key_levels": {
      "support": [
        64030.7,
        64023.0,
        64009.91,
        63971.13,
        63907.4,
        63871.3,
        63558.4,
        63400,
        63136.2
      ],
      "resistance": [
        64074.87,
        64092.29,
        64142.38,
        64143.25,
        64164.8,
        64253.43,
        64284.9,
        64326.0,
        64370.9,
        64428.35
      ]
    },
    "confluences": [
      "현재가 부근 $64,023-$64,037 구간에 피보나치 0.5 되돌림 $64,023.00, Wyckoff LPSY $64,030.70, 하모닉 nearest PRZ $64,030.18이 겹쳐 핵심 단기 구조 테스트 구간을 형성함",
      "$63,971-$64,010 구간은 피보나치 0.618 $63,971.13, 하모닉 bullish Gartley PRZ 상단 $64,009.91, 확인된 bullish Butterfly TP $63,992.92가 겹치는 하단 방어 클러스터임",
      "$64,074-$64,092 구간은 피보나치 0.382 $64,074.87, 하모닉 bullish Gartley TP1 $64,073.98, EMA20 $64,092.29가 겹치는 1차 회복 확인 저항임",
      "$64,139-$64,165 구간은 피보나치 저항 $64,139.05, 캔들 EMA240 $64,143.25, 하모닉 TP2 $64,142.38-$64,164.80이 겹치는 중간 저항 클러스터임",
      "$64,253-$64,285 구간은 캔들 EMA120 $64,254.27, ICT bullish CHoCH $64,284.90, Wyckoff UT $64,284.90, 하모닉 bearish PRZ 시작 $64,253.43이 겹쳐 구조 회복과 공급 재출현이 동시에 판정되는 구간임",
      "$64,366-$64,371 구간은 7일 EQ $64,366.70, Wyckoff ST/UTAD $64,370.80-$64,370.90, London high $64,370.80이 겹쳐 분배 해석의 상단 무효화 후보임",
      "$63,871-$63,907 구간은 Wyckoff SOW_IN_PHASE_B $63,871.30, ICT bearish BOS $63,907.40, 하모닉 bullish PRZ $63,844.04-$63,906.10이 겹쳐 하단 구조 판정 구간임",
      "$63,400 부근은 파생 하방 청산 밀집 $63,400과 하모닉 bullish Gartley nearby PRZ 시작 $63,404.26이 겹치는 하방 유동성·반응 후보 구간임"
    ],
    "conflicts": [
      "Wyckoff는 분배 Phase D/LPSY로 구조 약세를 제시하지만, Fibonacci·Candlestick·Harmonic은 $64,000 전후 할인/PRZ/되돌림 지지에서 단기 bullish 실행 셋업을 제시함",
      "Derivatives는 롱 계정 쏠림 0.643 및 CVD divergence 0.850을 근거로 반등 실패 위험을 강조하지만, 캔들 bull_score 1.45 및 하모닉 confirmed bullish reaction은 단기 매수 반응을 지지함",
      "ICT는 활성 OB/FVG와 최근 유동성 스윕이 없어 중립으로 남아 있으며, Wyckoff의 분배 판정만큼 강한 구조 약세를 확인하지는 않음",
      "하모닉 bullish PRZ는 $63,595.91-$64,009.91 방어를 강조하지만, 같은 하모닉 체계 안에서도 $64,253.43-$64,743.91에는 bearish PRZ가 밀집해 상승 회복 구간에서 공급 리스크가 존재함"
    ],
    "executive_summary": "현재 BTC 15분 구조는 다수 분석가가 중립을 유지하는 가운데, 가장 구체적이고 신뢰도 높은 Wyckoff가 분배 후보 구조의 Phase D/LPSY를 제시하므로 전체 구조 편향은 약한 bearish로 판정한다. 가격은 Wyckoff LPSY $64,030.70, 피보나치 0.5 $64,023.00, 하모닉 PRZ $64,030.18이 겹치는 핵심 구조 테스트 지점에 위치해 있으며, 이는 지지 반응 구간이면서 동시에 공급 재출현을 확인하는 자리다. 단기 실행 셋업은 피보나치·캔들·하모닉이 $64,000 전후 방어를 근거로 bullish 쪽에 기울지만, 파생 롱 쏠림과 CVD divergence는 그 반등이 구조 전환이 아니라 롱 트랩이 될 수 있음을 경고한다. 구조적으로는 $64,284.90 회복 전까지는 bullish CHoCH/UT 회복이 미완성이며, $64,370.80-$64,370.90 상단 수용 전까지는 분배 Phase D/LPSY 해석이 우선한다.",
    "raw_llm_response": "{\n  \"overall_signal\": \"bearish\",\n  \"overall_confidence\": 0.59,\n  \"execution_setup\": {\n    \"setup_bias\": \"bullish\",\n    \"setup_strength\": 0.62,\n    \"active_setups\": [\n      \"피보나치 상승 스윙 $63,803 → $64,243 기준 0.5 되돌림 $64,023.00 상단에서 지지 테스트 중이며, 0.618 되돌림 $63,971.13이 아직 유지됨\",\n      \"하모닉 bullish Gartley 활성 PRZ $63,844.04-$64,009.91 상단을 현재가 $64,037.20이 소폭 회복했으며, 확인된 bullish Butterfly 반응은 $63,595.91-$63,906.10 방어 후 0.382 목표 $63,992.92를 달성함\",\n      \"캔들 구조는 7일 범위 EQ $64,366.70 아래 할인 구간에서 bullish piercing pattern 후보가 감지되었고 bull_score 1.45가 bear_score 0.75를 상회함\",\n      \"파생 포지셔닝은 반대로 롱 계정 비율 0.643, 롱 계정 쏠림 1.000, CVD divergence 0.850으로 반등 실패 시 롱 트랩 위험을 경고함\",\n      \"Wyckoff상 현재가가 LPSY $64,030.70 바로 위에 있어, 반등 셋업이 동시에 공급 재출현 테스트 구간과 겹침\"\n    ],\n    \"setup_vs_structure\": \"구조적 판정은 Wyckoff 분배 Phase D/LPSY 근거로 약세 쪽이지만, 단기 실행 셋업은 피보나치·캔들·하모닉이 $64,000 전후 방어를 근거로 bullish 쪽에 더 많이 모여 있다. 즉 현재는 ‘약세 구조 안의 반등형 실행 셋업’이며, 반등은 구조 전환이 아니라 LPSY 공급 테스트로 먼저 해석해야 한다.\"\n  },\n  \"signal_breakdown\": {\n    \"bullish_count\": 2,\n    \"bearish_count\": 2,\n    \"neutral_count\": 2\n  },\n  \"key_levels\": {\n    \"support\": [\n      64030.7,\n      64023.0,\n      64009.91,\n      63971.13,\n      63907.4,\n      63871.3,\n      63558.4,\n      63400,\n      63136.2\n    ],\n    \"resistance\": [\n      64074.87,\n      64092.29,\n      64142.38,\n      64143.25,\n      64164.8,\n      64253.43,\n      64284.9,\n      64326.0,\n      64370.9,\n      64428.35\n    ]\n  },\n  \"confluences\": [\n    \"현재가 부근 $64,023-$64,037 구간에 피보나치 0.5 되돌림 $64,023.00, Wyckoff LPSY $64,030.70, 하모닉 nearest PRZ $64,030.18이 겹쳐 핵심 단기 구조 테스트 구간을 형성함\",\n    \"$63,971-$64,010 구간은 피보나치 0.618 $63,971.13, 하모닉 bullish Gartley PRZ 상단 $64,009.91, 확인된 bullish Butterfly TP $63,992.92가 겹치는 하단 방어 클러스터임\",\n    \"$64,074-$64,092 구간은 피보나치 0.382 $64,074.87, 하모닉 bullish Gartley TP1 $64,073.98, EMA20 $64,092.29가 겹치는 1차 회복 확인 저항임\",\n    \"$64,139-$64,165 구간은 피보나치 저항 $64,139.05, 캔들 EMA240 $64,143.25, 하모닉 TP2 $64,142.38-$64,164.80이 겹치는 중간 저항 클러스터임\",\n    \"$64,253-$64,285 구간은 캔들 EMA120 $64,254.27, ICT bullish CHoCH $64,284.90, Wyckoff UT $64,284.90, 하모닉 bearish PRZ 시작 $64,253.43이 겹쳐 구조 회복과 공급 재출현이 동시에 판정되는 구간임\",\n    \"$64,366-$64,371 구간은 7일 EQ $64,366.70, Wyckoff ST/UTAD $64,370.80-$64,370.90, London high $64,370.80이 겹쳐 분배 해석의 상단 무효화 후보임\",\n    \"$63,871-$63,907 구간은 Wyckoff SOW_IN_PHASE_B $63,871.30, ICT bearish BOS $63,907.40, 하모닉 bullish PRZ $63,844.04-$63,906.10이 겹쳐 하단 구조 판정 구간임\",\n    \"$63,400 부근은 파생 하방 청산 밀집 $63,400과 하모닉 bullish Gartley nearby PRZ 시작 $63,404.26이 겹치는 하방 유동성·반응 후보 구간임\"\n  ],\n  \"conflicts\": [\n    \"Wyckoff는 분배 Phase D/LPSY로 구조 약세를 제시하지만, Fibonacci·Candlestick·Harmonic은 $64,000 전후 할인/PRZ/되돌림 지지에서 단기 bullish 실행 셋업을 제시함\",\n    \"Derivatives는 롱 계정 쏠림 0.643 및 CVD divergence 0.850을 근거로 반등 실패 위험을 강조하지만, 캔들 bull_score 1.45 및 하모닉 confirmed bullish reaction은 단기 매수 반응을 지지함\",\n    \"ICT는 활성 OB/FVG와 최근 유동성 스윕이 없어 중립으로 남아 있으며, Wyckoff의 분배 판정만큼 강한 구조 약세를 확인하지는 않음\",\n    \"하모닉 bullish PRZ는 $63,595.91-$64,009.91 방어를 강조하지만, 같은 하모닉 체계 안에서도 $64,253.43-$64,743.91에는 bearish PRZ가 밀집해 상승 회복 구간에서 공급 리스크가 존재함\"\n  ],\n  \"highest_conviction_analyst\": \"Wyckoff Expert — 신뢰도 72%로 가장 높고, BC $63,894.00 → AR $63,558.40 → ST $64,370.90 → SOW $63,871.30 → UT $64,284.90 → UTAD $64,370.80 → LPSY $64,030.70의 구체적 분배 시퀀스를 제시했다. regime fitness 0.963으로 구조 적합도가 높으며, 현재가 $64,037.20이 LPSY 바로 위에 있어 Phase D 공급 테스트라는 구조 진단이 가장 명확하다.\",\n  \"invalidation_level\": \"$64,370.90 상방 수용. 보수적으로는 ICT EQ $64,428.35까지 회복·안착하면 현재의 분배 Phase D/LPSY 약세 해석은 훼손된다.\",\n  \"executive_summary\": \"현재 BTC 15분 구조는 다수 분석가가 중립을 유지하는 가운데, 가장 구체적이고 신뢰도 높은 Wyckoff가 분배 후보 구조의 Phase D/LPSY를 제시하므로 전체 구조 편향은 약한 bearish로 판정한다. 가격은 Wyckoff LPSY $64,030.70, 피보나치 0.5 $64,023.00, 하모닉 PRZ $64,030.18이 겹치는 핵심 구조 테스트 지점에 위치해 있으며, 이는 지지 반응 구간이면서 동시에 공급 재출현을 확인하는 자리다. 단기 실행 셋업은 피보나치·캔들·하모닉이 $64,000 전후 방어를 근거로 bullish 쪽에 기울지만, 파생 롱 쏠림과 CVD divergence는 그 반등이 구조 전환이 아니라 롱 트랩이 될 수 있음을 경고한다. 구조적으로는 $64,284.90 회복 전까지는 bullish CHoCH/UT 회복이 미완성이며, $64,370.80-$64,370.90 상단 수용 전까지는 분배 Phase D/LPSY 해석이 우선한다.\"\n}"
  },
  "overall_signal": "bearish",
  "overall_confidence": 0.59,
  "operating_path": {
    "path_type": "complex",
    "confidence": 0.52,
    "waypoints": [
      {
        "seq": 1,
        "price": 64111.21,
        "type": "resistance_test",
        "source": "Fibonacci(fib_confluence strict 1.0 $64,111.21, 0.382 되돌림 $64,074.87), Harmonic(bullish Gartley TP1 $64,073.98), Candlestick(EMA20 $64,092.29 / EMA240 $64,143.25)",
        "description": "셋업 우선 원칙(setup BULLISH 62% > structure BEARISH, strength≥0.5)에 따라 첫 경로는 상방. 피보나치·하모닉·캔들이 $64,000 방어를 근거로 단기 반등을 지지하므로, WP1 1순위 strict fib confluence $64,111.21에서 EMA20 회복 및 $64,142 중간 저항 클러스터 재시험. 단 구조상 이는 Wyckoff LPSY $64,030.70 위 공급 재출현(롱 트랩) 테스트 구간으로, 구조 전환이 아닌 반등으로 해석한다.",
        "est_hours": 3,
        "turning_zone": [
          64111.21,
          64164.8
        ],
        "likely_wick": 64142.38,
        "rejection_confirm": 64074.87,
        "invalid_overshoot": 64242.8,
        "calibration_reasoning": "1순위 strict fib 합류 $64,111.21을 하단으로, 경로가 정의한 $64,111-$64,165 공급 클러스터(Chairman 저항 64142.38/64143.25 이중 + 64164.8) 상단으로 폭 ≈0.33 ATR. likely_wick는 검증된 butterfly TP2 AD0.618 $64,142.38(상방 정렬, CONFIRMED)과 Chairman 이중 저항이 겹치는 최밀집 자석. rejection은 fib 0.382 $64,074.87 하향 상실, 무효화는 스윙고점 $64,242.80 상향 수용."
      },
      {
        "seq": 2,
        "price": 63871.3,
        "type": "swing_low",
        "source": "Wyckoff(SOW_IN_PHASE_B $63,871.30, LPSY $64,030.70 재이탈), ICT(bearish BOS $63,907.40), Derivatives(CVD divergence 0.850 / account_long_crowding 1.000)",
        "description": "반등이 $64,111-$64,165 공급 클러스터에서 거부되고 LPSY $64,030.70를 재이탈하면 Wyckoff Phase D 약세 구조가 재개된다. 즉시 경로 핵심 목표인 SOW $63,871.30 / ICT bearish BOS $63,907.40 저점 테스트. 파생 롱 쏠림 청산과 CVD 다이버전스가 하방 가속을 뒷받침한다.",
        "est_hours": 9,
        "turning_zone": [
          63843.75,
          63897.27
        ],
        "likely_wick": 63843.75,
        "rejection_confirm": 63907.4,
        "invalid_overshoot": 63803.0,
        "calibration_reasoning": "SOW $63,871.30 아래 fib 3-레벨 합류 $63,843.75를 하단 앵커, ICT BOS $63,907.40·fib 지지 $63,897.27를 상단으로 폭 ≈0.33 ATR. likely_wick는 SOW를 약간 언더슈트해 fib 합류를 스윕하는 $63,843.75. rejection은 BOS $63,907.40 회복, 무효화는 스윙저점 $63,803 하향 이탈(WP3로 연장)."
      },
      {
        "seq": 3,
        "price": 63558.4,
        "type": "support_test",
        "source": "Wyckoff(AR $63,558.40), Derivatives(하방 청산 밀집 $63,400), Harmonic(bullish Gartley nearby PRZ $63,404.26)",
        "description": "SOW $63,871.30 하향 수용 시 Phase D 분배 하단 앵커인 AR $63,558.40 테스트. 추가 약세 모멘텀이 붙으면 파생 청산 밀집 $63,400 / 하모닉 Gartley PRZ $63,404.26 하방 유동성 스윕으로 확장 가능하다.",
        "est_hours": 18,
        "turning_zone": [
          63400.0,
          63558.4
        ],
        "likely_wick": 63400.0,
        "rejection_confirm": 63600.0,
        "invalid_overshoot": 63350.0,
        "calibration_reasoning": "터미널 waypoint + 유동성 풀 포함 규칙에 따라 AR $63,558.40에서 라운드넘버 청산 밀집 $63,400(Chairman support)까지 확장(≈0.98 ATR, 풀 포함으로 0.8 ATR 가이드 상회 정당화). likely_wick는 $63,400 라운드넘버 청산 자석으로 바이어스(미확정 Gartley PRZ $63,404.26 조건부 보강일 뿐 단독 근거 아님). rejection은 AR 회복 후 $63,600 상향, 무효화는 $63,350 하향 이탈로 $63,136.2 노출."
      }
    ],
    "period_extremes": {
      "4h": {
        "expected_high": 64142.0,
        "expected_low": 63971.13,
        "high_first": true
      },
      "8h": {
        "expected_high": 64142.0,
        "expected_low": 63871.3,
        "high_first": true
      },
      "24h": {
        "expected_high": 64142.0,
        "expected_low": 63558.4,
        "high_first": true
      }
    },
    "triggers": {
      "bullish": {
        "price": 64284.9,
        "description": "$64,284.90(ICT bullish CHoCH / Wyckoff UT) 회복·수용 시 Phase D/LPSY 약세 해석이 훼손되고 반등이 구조 전환으로 격상되며 $64,370.90까지 불리시 가속."
      },
      "bearish": {
        "price": 63907.4,
        "description": "LPSY $64,030.70 재이탈 후 ICT bearish BOS $63,907.40 / Wyckoff SOW $63,871.30 하향 수용 시 약세 가속, $63,558.40~$63,400 하방 유동성 목표가 활성화."
      }
    },
    "scenario_invalidation": 64370.9,
    "raw_llm_response": "```json\n{\n  \"path_type\": \"complex\",\n  \"confidence\": 0.52,\n  \"waypoints\": [\n    {\n      \"seq\": 1,\n      \"price\": 64111.21,\n      \"type\": \"resistance_test\",\n      \"source\": \"Fibonacci(fib_confluence strict 1.0 $64,111.21, 0.382 되돌림 $64,074.87), Harmonic(bullish Gartley TP1 $64,073.98), Candlestick(EMA20 $64,092.29 / EMA240 $64,143.25)\",\n      \"description\": \"셋업 우선 원칙(setup BULLISH 62% > structure BEARISH, strength≥0.5)에 따라 첫 경로는 상방. 피보나치·하모닉·캔들이 $64,000 방어를 근거로 단기 반등을 지지하므로, WP1 1순위 strict fib confluence $64,111.21에서 EMA20 회복 및 $64,142 중간 저항 클러스터 재시험. 단 구조상 이는 Wyckoff LPSY $64,030.70 위 공급 재출현(롱 트랩) 테스트 구간으로, 구조 전환이 아닌 반등으로 해석한다.\",\n      \"est_hours\": 3\n    },\n    {\n      \"seq\": 2,\n      \"price\": 63871.30,\n      \"type\": \"swing_low\",\n      \"source\": \"Wyckoff(SOW_IN_PHASE_B $63,871.30, LPSY $64,030.70 재이탈), ICT(bearish BOS $63,907.40), Derivatives(CVD divergence 0.850 / account_long_crowding 1.000)\",\n      \"description\": \"반등이 $64,111-$64,165 공급 클러스터에서 거부되고 LPSY $64,030.70를 재이탈하면 Wyckoff Phase D 약세 구조가 재개된다. 즉시 경로 핵심 목표인 SOW $63,871.30 / ICT bearish BOS $63,907.40 저점 테스트. 파생 롱 쏠림 청산과 CVD 다이버전스가 하방 가속을 뒷받침한다.\",\n      \"est_hours\": 9\n    },\n    {\n      \"seq\": 3,\n      \"price\": 63558.40,\n      \"type\": \"support_test\",\n      \"source\": \"Wyckoff(AR $63,558.40), Derivatives(하방 청산 밀집 $63,400), Harmonic(bullish Gartley nearby PRZ $63,404.26)\",\n      \"description\": \"SOW $63,871.30 하향 수용 시 Phase D 분배 하단 앵커인 AR $63,558.40 테스트. 추가 약세 모멘텀이 붙으면 파생 청산 밀집 $63,400 / 하모닉 Gartley PRZ $63,404.26 하방 유동성 스윕으로 확장 가능하다.\",\n      \"est_hours\": 18\n    }\n  ],\n  \"period_extremes\": {\n    \"4h\":  {\"expected_high\": 64142.0, \"expected_low\": 63971.13, \"high_first\": true},\n    \"8h\":  {\"expected_high\": 64142.0, \"expected_low\": 63871.30, \"high_first\": true},\n    \"24h\": {\"expected_high\": 64142.0, \"expected_low\": 63558.40, \"high_first\": true}\n  },\n  \"triggers\": {\n    \"bullish\": {\"price\": 64284.90, \"description\": \"$64,284.90(ICT bullish CHoCH / Wyckoff UT) 회복·수용 시 Phase D/LPSY 약세 해석이 훼손되고 반등이 구조 전환으로 격상되며 $64,370.90까지 불리시 가속.\"},\n    \"bearish\": {\"price\": 63907.40, \"description\": \"LPSY $64,030.70 재이탈 후 ICT bearish BOS $63,907.40 / Wyckoff SOW $63,871.30 하향 수용 시 약세 가속, $63,558.40~$63,400 하방 유동성 목표가 활성화.\"}\n  },\n  \"scenario_invalidation\": 64370.90\n}\n```"
  },
  "tp_calibration": {
    "calibrated_waypoints": [
      {
        "seq": 1,
        "base_target": 64111.21,
        "turning_zone": [
          64111.21,
          64164.8
        ],
        "likely_wick": 64142.38,
        "rejection_confirm": 64074.87,
        "invalid_overshoot": 64242.8,
        "calibration_reasoning": "1순위 strict fib 합류 $64,111.21을 하단으로, 경로가 정의한 $64,111-$64,165 공급 클러스터(Chairman 저항 64142.38/64143.25 이중 + 64164.8) 상단으로 폭 ≈0.33 ATR. likely_wick는 검증된 butterfly TP2 AD0.618 $64,142.38(상방 정렬, CONFIRMED)과 Chairman 이중 저항이 겹치는 최밀집 자석. rejection은 fib 0.382 $64,074.87 하향 상실, 무효화는 스윙고점 $64,242.80 상향 수용."
      },
      {
        "seq": 2,
        "base_target": 63871.3,
        "turning_zone": [
          63843.75,
          63897.27
        ],
        "likely_wick": 63843.75,
        "rejection_confirm": 63907.4,
        "invalid_overshoot": 63803.0,
        "calibration_reasoning": "SOW $63,871.30 아래 fib 3-레벨 합류 $63,843.75를 하단 앵커, ICT BOS $63,907.40·fib 지지 $63,897.27를 상단으로 폭 ≈0.33 ATR. likely_wick는 SOW를 약간 언더슈트해 fib 합류를 스윕하는 $63,843.75. rejection은 BOS $63,907.40 회복, 무효화는 스윙저점 $63,803 하향 이탈(WP3로 연장)."
      },
      {
        "seq": 3,
        "base_target": 63558.4,
        "turning_zone": [
          63400.0,
          63558.4
        ],
        "likely_wick": 63400.0,
        "rejection_confirm": 63600.0,
        "invalid_overshoot": 63350.0,
        "calibration_reasoning": "터미널 waypoint + 유동성 풀 포함 규칙에 따라 AR $63,558.40에서 라운드넘버 청산 밀집 $63,400(Chairman support)까지 확장(≈0.98 ATR, 풀 포함으로 0.8 ATR 가이드 상회 정당화). likely_wick는 $63,400 라운드넘버 청산 자석으로 바이어스(미확정 Gartley PRZ $63,404.26 조건부 보강일 뿐 단독 근거 아님). rejection은 AR 회복 후 $63,600 상향, 무효화는 $63,350 하향 이탈로 $63,136.2 노출."
      }
    ],
    "raw_llm_response": "```json\n{\n  \"calibrated_waypoints\": [\n    {\n      \"seq\": 1,\n      \"base_target\": 64111.21,\n      \"turning_zone\": [64111.21, 64164.80],\n      \"likely_wick\": 64142.38,\n      \"rejection_confirm\": 64074.87,\n      \"invalid_overshoot\": 64242.80,\n      \"calibration_reasoning\": \"1순위 strict fib 합류 $64,111.21을 하단으로, 경로가 정의한 $64,111-$64,165 공급 클러스터(Chairman 저항 64142.38/64143.25 이중 + 64164.8) 상단으로 폭 ≈0.33 ATR. likely_wick는 검증된 butterfly TP2 AD0.618 $64,142.38(상방 정렬, CONFIRMED)과 Chairman 이중 저항이 겹치는 최밀집 자석. rejection은 fib 0.382 $64,074.87 하향 상실, 무효화는 스윙고점 $64,242.80 상향 수용.\"\n    },\n    {\n      \"seq\": 2,\n      \"base_target\": 63871.30,\n      \"turning_zone\": [63843.75, 63897.27],\n      \"likely_wick\": 63843.75,\n      \"rejection_confirm\": 63907.40,\n      \"invalid_overshoot\": 63803.00,\n      \"calibration_reasoning\": \"SOW $63,871.30 아래 fib 3-레벨 합류 $63,843.75를 하단 앵커, ICT BOS $63,907.40·fib 지지 $63,897.27를 상단으로 폭 ≈0.33 ATR. likely_wick는 SOW를 약간 언더슈트해 fib 합류를 스윕하는 $63,843.75. rejection은 BOS $63,907.40 회복, 무효화는 스윙저점 $63,803 하향 이탈(WP3로 연장).\"\n    },\n    {\n      \"seq\": 3,\n      \"base_target\": 63558.40,\n      \"turning_zone\": [63400.00, 63558.40],\n      \"likely_wick\": 63400.00,\n      \"rejection_confirm\": 63600.00,\n      \"invalid_overshoot\": 63350.00,\n      \"calibration_reasoning\": \"터미널 waypoint + 유동성 풀 포함 규칙에 따라 AR $63,558.40에서 라운드넘버 청산 밀집 $63,400(Chairman support)까지 확장(≈0.98 ATR, 풀 포함으로 0.8 ATR 가이드 상회 정당화). likely_wick는 $63,400 라운드넘버 청산 자석으로 바이어스(미확정 Gartley PRZ $63,404.26 조건부 보강일 뿐 단독 근거 아님). rejection은 AR 회복 후 $63,600 상향, 무효화는 $63,350 하향 이탈로 $63,136.2 노출.\"\n    }\n  ]\n}\n```"
  },
  "timing": {
    "stages": {
      "stage1_agents": 58.8,
      "chairman": 92.3,
      "operating_path": 194.6,
      "tp_calibrator": 242.3
    },
    "agents": {},
    "total_s": 588.3
  }
}