{
  "symbol": "BTC/USDT",
  "timeframe": "15m",
  "timestamp": "2026-06-25 01:00 KST",
  "last_price": 60285.1,
  "num_candles": 300,
  "stage1_analyses": {
    "candlestick": {
      "agent_id": "candlestick",
      "display_name": "Candlestick Reader",
      "signal": "bearish",
      "confidence": 0.58,
      "structure_bias": "bearish",
      "setup_bias": "bullish",
      "setup_score": 0.42,
      "setup_signals": [
        "현재가 $60,285.10은 7일 범위 EQ $62,917.60 아래의 디스카운트 구간에 위치",
        "현재가가 7일 저점 $60,238.00 바로 위에 있어 매도 유동성 소진 또는 단기 반등 후보 구간",
        "최근 패턴은 doji@293, doji@297이며, doji@293은 고거래량 후보로 저점권에서 매도 둔화 가능성을 시사",
        "다만 Hammer, Bullish Engulfing, Morning Star 같은 확정형 반전 캔들은 아직 부재"
      ],
      "reasoning": "BTC는 현재 $60,285.10으로 EMA20 $61,500.11, EMA120 $62,516.81, EMA240 $62,972.98 아래에 있으며, 단기·중기 평균선 모두 하회해 확인된 구조는 여전히 bearish입니다. 최근 5개 15분봉이 모두 음봉이고, 24시간 등락률도 -3.48%로 매도 압력이 지속되고 있습니다. 다만 현재가는 7일 저점 $60,238.00과 매우 근접해 있으며, 최근 doji 후보 2개 중 하나가 고거래량으로 탐지되어 저점권 매도 피로감은 관찰됩니다. 그러나 best_pattern_quality가 0.555에 그치고 bull_score와 bear_score가 모두 0이므로, 캔들 패턴만으로는 강한 반전 확정 신호가 아닙니다.",
      "key_levels": {
        "support": [
          60238.0,
          60285.1
        ],
        "resistance": [
          61500.11,
          62516.81,
          62972.98,
          65597.2
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$61,500.11 상향 회복 및 15분봉 종가 안착",
      "risk_scenario": "가격이 $60,238.00을 명확히 하향 이탈하면 저점권 doji 기반의 반등 setup은 실패로 간주되며, 매도세가 재가속될 가능성이 큽니다. 반대로 $61,500.11 EMA20을 회복하면 단기 bearish 구조가 약화되고 $62,516.81 EMA120 및 $62,972.98 EMA240까지 되돌림이 열릴 수 있습니다.",
      "data_quality": "medium",
      "metrics": {
        "total_patterns_detected": 99,
        "recent_patterns": 2,
        "pattern_list": [
          "doji@293",
          "doji@297"
        ],
        "atr_value": 308.61,
        "vol_avg_20": 5089.69,
        "high_volume_patterns": [
          "doji"
        ],
        "pattern_candidates": [
          {
            "pattern": "doji",
            "signal": "neutral",
            "pattern_quality": 0.555,
            "tier": "candidate",
            "high_volume": true
          },
          {
            "pattern": "doji",
            "signal": "neutral",
            "pattern_quality": 0.355,
            "tier": "candidate",
            "high_volume": false
          }
        ],
        "best_pattern_quality": 0.555,
        "bull_score": 0,
        "bear_score": 0
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.58,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.42,\n  \"setup_signals\": [\n    \"현재가 $60,285.10은 7일 범위 EQ $62,917.60 아래의 디스카운트 구간에 위치\",\n    \"현재가가 7일 저점 $60,238.00 바로 위에 있어 매도 유동성 소진 또는 단기 반등 후보 구간\",\n    \"최근 패턴은 doji@293, doji@297이며, doji@293은 고거래량 후보로 저점권에서 매도 둔화 가능성을 시사\",\n    \"다만 Hammer, Bullish Engulfing, Morning Star 같은 확정형 반전 캔들은 아직 부재\"\n  ],\n  \"reasoning\": \"BTC는 현재 $60,285.10으로 EMA20 $61,500.11, EMA120 $62,516.81, EMA240 $62,972.98 아래에 있으며, 단기·중기 평균선 모두 하회해 확인된 구조는 여전히 bearish입니다. 최근 5개 15분봉이 모두 음봉이고, 24시간 등락률도 -3.48%로 매도 압력이 지속되고 있습니다. 다만 현재가는 7일 저점 $60,238.00과 매우 근접해 있으며, 최근 doji 후보 2개 중 하나가 고거래량으로 탐지되어 저점권 매도 피로감은 관찰됩니다. 그러나 best_pattern_quality가 0.555에 그치고 bull_score와 bear_score가 모두 0이므로, 캔들 패턴만으로는 강한 반전 확정 신호가 아닙니다.\",\n  \"key_levels\": {\n    \"support\": [\n      60238.0,\n      60285.1\n    ],\n    \"resistance\": [\n      61500.11,\n      62516.81,\n      62972.98,\n      65597.2\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$61,500.11 상향 회복 및 15분봉 종가 안착\",\n  \"risk_scenario\": \"가격이 $60,238.00을 명확히 하향 이탈하면 저점권 doji 기반의 반등 setup은 실패로 간주되며, 매도세가 재가속될 가능성이 큽니다. 반대로 $61,500.11 EMA20을 회복하면 단기 bearish 구조가 약화되고 $62,516.81 EMA120 및 $62,972.98 EMA240까지 되돌림이 열릴 수 있습니다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "harmonic": {
      "agent_id": "harmonic",
      "display_name": "Harmonic Specialist",
      "signal": "bearish",
      "confidence": 0.58,
      "structure_bias": "bearish",
      "setup_bias": "neutral",
      "setup_score": 0.28,
      "setup_signals": [
        "현재가 $60,285.10가 EMA20 $61,500.11, EMA120 $62,516.81, EMA240 $62,972.98 아래에 위치해 15m 구조 압력은 하방",
        "7일 저점 $60,238.00 바로 위에서 거래 중이나, 스윕 후 리클레임 또는 15m/1h CHoCH 확인 없음",
        "가장 가까운 형성 PRZ는 bullish crab $60,549.16-$60,940.39이나 현재가는 PRZ 하단 아래에 있으며, confirmed_reaction=false",
        "근접 bullish crab은 strict/medium, score 0.828이지만 PRZ 폭 0.644%로 기준 0.60%를 약간 초과하고 high_confluence_prz=false",
        "actionable_patterns_list가 비어 있고 active_patterns_at_prz=0, directional_influence_prz_count=0으로 하모닉 단독 매수 전환 근거 부족"
      ],
      "reasoning": "15m 기준 현재가 $60,285.10는 EMA20 $61,500.11 대비 -2.0%, EMA120 $62,516.81 대비 -3.6% 아래에 있어 확인된 구조_bias는 bearish로 본다. 하모닉 측면에서는 총 54개 패턴 중 완료 20개, 형성 PRZ 34개가 탐지됐지만 active PRZ는 0개이고 council_relevant_prz_count 및 directional_influence_prz_count가 모두 0이라 방향성 투표에 쓸 수 있는 고품질 활성 PRZ가 없다. 가장 가까운 bullish crab PRZ는 $60,549.16-$60,940.39, 중심 D $60,744.77로 현재가보다 약 0.76% 위에 있으나 아직 PRZ 진입 후 거부, 스윕→리클레임, MSS/CHoCH, CVD/OI 확인이 없어 단지 약한 반등 후보 구간이다. 따라서 하모닉은 하방 구조를 뒤집지 못하며, $60,549-$60,940을 회복하지 못하면 $60,238 7일 저점 재시험 및 하방 이탈 리스크가 우세하다.",
      "key_levels": {
        "support": [
          60238.0,
          60000.0
        ],
        "resistance": [
          60549.16,
          60744.77,
          60940.39,
          61500.11,
          61891.3,
          62516.81
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$60,940.39 상단 회복 후 15m CHoCH/MSS 및 PRZ 리클레임 유지",
      "risk_scenario": "$60,549.16-$60,940.39 bullish crab PRZ를 강하게 재진입·상방 회복하고, $60,744.77 중심선을 지지로 전환하면 약세 시나리오는 단기 숏커버링으로 전환될 수 있다. 이 경우 하모닉 TP 맥락은 bullish crab 기준 TP1 $61,453.47, TP2 $61,891.30, TP3 $62,600.00으로 열리지만, 구조 전환 확인 전까지는 반등 분기 시나리오로만 취급해야 한다.",
      "data_quality": "medium",
      "metrics": {
        "patterns_found": 54,
        "completed_patterns_found": 20,
        "forming_d_prz_found": 34,
        "swing_orders_scanned": [
          3,
          5,
          8
        ],
        "swing_search_window": 34,
        "multiscale_swings_scanned": 59,
        "swing_highs_scanned": 27,
        "swing_lows_scanned": 32,
        "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": 17,
          "medium": 15,
          "low": 22
        },
        "prz_status_counts": {
          "active": 0,
          "nearby": 1,
          "watch": 2,
          "far": 51,
          "forming": 31
        },
        "high_confluence_prz_count": 36,
        "strict_patterns_found": 34,
        "candidate_patterns_found": 20,
        "active_patterns_at_prz": 0,
        "nearby_patterns": 1,
        "all_patterns": [
          "bat",
          "bat",
          "bat",
          "shark",
          "gartley",
          "crab",
          "shark",
          "gartley",
          "shark",
          "butterfly",
          "gartley",
          "butterfly",
          "bat",
          "butterfly",
          "gartley",
          "gartley",
          "butterfly",
          "bat",
          "butterfly",
          "shark",
          "bat",
          "crab",
          "crab",
          "butterfly",
          "butterfly",
          "bat",
          "crab",
          "shark",
          "crab",
          "bat",
          "crab",
          "butterfly",
          "crab",
          "gartley",
          "gartley",
          "crab",
          "bat",
          "gartley",
          "shark",
          "shark",
          "bat",
          "crab",
          "crab",
          "crab",
          "crab",
          "shark",
          "bat",
          "shark",
          "butterfly",
          "bat",
          "butterfly",
          "crab",
          "gartley",
          "bat"
        ],
        "all_signals": [
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish"
        ],
        "best_pattern": "bat",
        "best_pattern_quality": "strict",
        "best_quality": "high",
        "best_pattern_score": 0.892,
        "best_completion_status": "forming",
        "nearest_pattern": "crab",
        "nearest_prz": 60744.77,
        "price_to_prz": 0.76,
        "prz_range": [
          60549.16,
          60940.39
        ],
        "council_relevant_prz_count": 0,
        "directional_influence_prz_count": 0,
        "confirmed_reaction_prz_count": 0,
        "validated_harmonic_tp_count": 0,
        "pattern_candidates": [
          {
            "pattern": "crab",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.828,
            "ratio_score": 1.0,
            "prz_score": 0.766,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": false,
            "d_price": 60744.77,
            "prz_range": [
              60549.16,
              60940.39
            ],
            "prz_width_pct": 0.644,
            "prz_confluence_count": 2,
            "prz_fib_families": [
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.76,
            "price_to_prz_pct_raw": 0.7625,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "crab",
              "d_price": 60744.77,
              "a_price": 62600.0,
              "tp1_ad_382": 61453.47,
              "tp2_ad_618": 61891.3,
              "tp3_a_or_structure_liquidity": 62600.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4187,
              "ABC": 0.8446
            },
            "x_price": 63852.5,
            "x_idx": 147,
            "x_order": 3,
            "a_price": 62600.0,
            "a_idx": 186,
            "a_order": 8,
            "b_price": 62075.6,
            "b_idx": 215,
            "b_order": 8,
            "c_price": 62518.5,
            "c_idx": 220,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "low",
            "pattern_score": 0.713,
            "ratio_score": 0.91,
            "prz_score": 0.65,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": false,
            "d_price": 61389.46,
            "prz_range": [
              60918.96,
              61859.96
            ],
            "prz_width_pct": 1.533,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.83,
            "price_to_prz_pct_raw": 1.8319,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 61389.46,
              "a_price": 62600.0,
              "tp1_ad_382": 61851.88,
              "tp2_ad_618": 62137.57,
              "tp3_a_or_structure_liquidity": 62600.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5123,
              "ABC": 0.8807
            },
            "x_price": 63933.3,
            "x_idx": 152,
            "x_order": 3,
            "a_price": 62600.0,
            "a_idx": 186,
            "a_order": 8,
            "b_price": 61916.9,
            "b_idx": 194,
            "b_order": 8,
            "c_price": 62518.5,
            "c_idx": 220,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "crab",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "low",
            "pattern_score": 0.703,
            "ratio_score": 1.0,
            "prz_score": 0.541,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": false,
            "d_price": 61182.23,
            "prz_range": [
              60808.09,
              61556.37
            ],
            "prz_width_pct": 1.223,
            "prz_confluence_count": 2,
            "prz_fib_families": [
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.49,
            "price_to_prz_pct_raw": 1.4881,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "crab",
              "d_price": 61182.23,
              "a_price": 62837.1,
              "tp1_ad_382": 61814.39,
              "tp2_ad_618": 62204.94,
              "tp3_a_or_structure_liquidity": 62837.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6166,
              "ABC": 0.7509
            },
            "x_price": 63933.3,
            "x_idx": 152,
            "x_order": 3,
            "a_price": 62837.1,
            "a_idx": 197,
            "a_order": 8,
            "b_price": 62161.2,
            "b_idx": 201,
            "b_order": 5,
            "c_price": 62668.7,
            "c_idx": 210,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.892,
            "ratio_score": 1.0,
            "prz_score": 0.991,
            "prz_proximity": "far",
            "action_status": "forming",
            "high_confluence_prz": true,
            "d_price": 63137.76,
            "prz_range": [
              62941.23,
              63334.29
            ],
            "prz_width_pct": 0.623,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 4.73,
            "price_to_prz_pct_raw": 4.7319,
            "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": 63137.76,
              "a_price": 62161.2,
              "tp1_ad_382": 62764.71,
              "tp2_ad_618": 62534.25,
              "tp3_a_or_structure_liquidity": 62161.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.3931,
              "ABC": 0.6115
            },
            "x_price": 63070.1,
            "x_idx": 169,
            "x_order": 3,
            "a_price": 62161.2,
            "a_idx": 201,
            "a_order": 5,
            "b_price": 62518.5,
            "b_idx": 220,
            "b_order": 3,
            "c_price": 62737.0,
            "c_idx": 241,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.885,
            "ratio_score": 1.0,
            "prz_score": 1.0,
            "prz_proximity": "far",
            "action_status": "forming",
            "high_confluence_prz": true,
            "d_price": 62875.49,
            "prz_range": [
              62711.95,
              63039.03
            ],
            "prz_width_pct": 0.52,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 4.3,
            "price_to_prz_pct_raw": 4.2969,
            "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": 62875.49,
              "a_price": 62207.1,
              "tp1_ad_382": 62620.17,
              "tp2_ad_618": 62462.43,
              "tp3_a_or_structure_liquidity": 62207.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4553,
              "ABC": 0.6511
            },
            "x_price": 63070.1,
            "x_idx": 169,
            "x_order": 3,
            "a_price": 62207.1,
            "a_idx": 182,
            "a_order": 5,
            "b_price": 62600.0,
            "b_idx": 186,
            "b_order": 8,
            "c_price": 62344.2,
            "c_idx": 223,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.885,
            "ratio_score": 1.0,
            "prz_score": 1.0,
            "prz_proximity": "far",
            "action_status": "forming",
            "high_confluence_prz": true,
            "d_price": 62309.33,
            "prz_range": [
              62156.05,
              62462.61
            ],
            "prz_width_pct": 0.492,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 3.36,
            "price_to_prz_pct_raw": 3.3578,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 62309.33,
              "a_price": 62999.9,
              "tp1_ad_382": 62573.13,
              "tp2_ad_618": 62736.1,
              "tp3_a_or_structure_liquidity": 62999.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4642,
              "ABC": 0.502
            },
            "x_price": 62075.6,
            "x_idx": 215,
            "x_order": 8,
            "a_price": 62999.9,
            "a_idx": 238,
            "a_order": 3,
            "b_price": 62570.8,
            "b_idx": 267,
            "b_order": 8,
            "c_price": 62786.2,
            "c_idx": 271,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.882,
            "ratio_score": 0.992,
            "prz_score": 1.0,
            "prz_proximity": "far",
            "action_status": "forming",
            "high_confluence_prz": true,
            "d_price": 61941.03,
            "prz_range": [
              61772.61,
              62109.45
            ],
            "prz_width_pct": 0.544,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 2.75,
            "price_to_prz_pct_raw": 2.7468,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 61941.03,
              "a_price": 62837.1,
              "tp1_ad_382": 62283.33,
              "tp2_ad_618": 62494.8,
              "tp3_a_or_structure_liquidity": 62837.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6166,
              "ABC": 0.871
            },
            "x_price": 63933.3,
            "x_idx": 152,
            "x_order": 3,
            "a_price": 62837.1,
            "a_idx": 197,
            "a_order": 8,
            "b_price": 62161.2,
            "b_idx": 201,
            "b_order": 5,
            "c_price": 62749.9,
            "c_idx": 229,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "crab",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.88,
            "ratio_score": 1.0,
            "prz_score": 0.989,
            "prz_proximity": "far",
            "action_status": "forming",
            "high_confluence_prz": true,
            "d_price": 63353.72,
            "prz_range": [
              63154.56,
              63552.87
            ],
            "prz_width_pct": 0.629,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 5.09,
            "price_to_prz_pct_raw": 5.0902,
            "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": "crab",
              "d_price": 63353.72,
              "a_price": 62075.6,
              "tp1_ad_382": 62865.48,
              "tp2_ad_618": 62563.84,
              "tp3_a_or_structure_liquidity": 62075.6,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5816,
              "ABC": 0.4933
            },
            "x_price": 62837.1,
            "x_idx": 197,
            "x_order": 8,
            "a_price": 62075.6,
            "a_idx": 215,
            "a_order": 8,
            "b_price": 62518.5,
            "b_idx": 220,
            "b_order": 3,
            "c_price": 62737.0,
            "c_idx": 241,
            "c_order": 3,
            "d_idx": null
          }
        ],
        "council_relevant_prz": [],
        "report_detail_candidates": [
          {
            "pattern": "crab",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.828,
            "ratio_score": 1.0,
            "prz_score": 0.766,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": false,
            "d_price": 60744.77,
            "prz_range": [
              60549.16,
              60940.39
            ],
            "prz_width_pct": 0.644,
            "prz_confluence_count": 2,
            "prz_fib_families": [
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.76,
            "price_to_prz_pct_raw": 0.7625,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "crab",
              "d_price": 60744.77,
              "a_price": 62600.0,
              "tp1_ad_382": 61453.47,
              "tp2_ad_618": 61891.3,
              "tp3_a_or_structure_liquidity": 62600.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4187,
              "ABC": 0.8446
            },
            "x_price": 63852.5,
            "x_idx": 147,
            "x_order": 3,
            "a_price": 62600.0,
            "a_idx": 186,
            "a_order": 8,
            "b_price": 62075.6,
            "b_idx": 215,
            "b_order": 8,
            "c_price": 62518.5,
            "c_idx": 220,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "low",
            "pattern_score": 0.713,
            "ratio_score": 0.91,
            "prz_score": 0.65,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": false,
            "d_price": 61389.46,
            "prz_range": [
              60918.96,
              61859.96
            ],
            "prz_width_pct": 1.533,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.83,
            "price_to_prz_pct_raw": 1.8319,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 61389.46,
              "a_price": 62600.0,
              "tp1_ad_382": 61851.88,
              "tp2_ad_618": 62137.57,
              "tp3_a_or_structure_liquidity": 62600.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5123,
              "ABC": 0.8807
            },
            "x_price": 63933.3,
            "x_idx": 152,
            "x_order": 3,
            "a_price": 62600.0,
            "a_idx": 186,
            "a_order": 8,
            "b_price": 61916.9,
            "b_idx": 194,
            "b_order": 8,
            "c_price": 62518.5,
            "c_idx": 220,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "crab",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "low",
            "pattern_score": 0.703,
            "ratio_score": 1.0,
            "prz_score": 0.541,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": false,
            "d_price": 61182.23,
            "prz_range": [
              60808.09,
              61556.37
            ],
            "prz_width_pct": 1.223,
            "prz_confluence_count": 2,
            "prz_fib_families": [
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.49,
            "price_to_prz_pct_raw": 1.4881,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "crab",
              "d_price": 61182.23,
              "a_price": 62837.1,
              "tp1_ad_382": 61814.39,
              "tp2_ad_618": 62204.94,
              "tp3_a_or_structure_liquidity": 62837.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6166,
              "ABC": 0.7509
            },
            "x_price": 63933.3,
            "x_idx": 152,
            "x_order": 3,
            "a_price": 62837.1,
            "a_idx": 197,
            "a_order": 8,
            "b_price": 62161.2,
            "b_idx": 201,
            "b_order": 5,
            "c_price": 62668.7,
            "c_idx": 210,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.892,
            "ratio_score": 1.0,
            "prz_score": 0.991,
            "prz_proximity": "far",
            "action_status": "forming",
            "high_confluence_prz": true,
            "d_price": 63137.76,
            "prz_range": [
              62941.23,
              63334.29
            ],
            "prz_width_pct": 0.623,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 4.73,
            "price_to_prz_pct_raw": 4.7319,
            "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": 63137.76,
              "a_price": 62161.2,
              "tp1_ad_382": 62764.71,
              "tp2_ad_618": 62534.25,
              "tp3_a_or_structure_liquidity": 62161.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.3931,
              "ABC": 0.6115
            },
            "x_price": 63070.1,
            "x_idx": 169,
            "x_order": 3,
            "a_price": 62161.2,
            "a_idx": 201,
            "a_order": 5,
            "b_price": 62518.5,
            "b_idx": 220,
            "b_order": 3,
            "c_price": 62737.0,
            "c_idx": 241,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.885,
            "ratio_score": 1.0,
            "prz_score": 1.0,
            "prz_proximity": "far",
            "action_status": "forming",
            "high_confluence_prz": true,
            "d_price": 62875.49,
            "prz_range": [
              62711.95,
              63039.03
            ],
            "prz_width_pct": 0.52,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 4.3,
            "price_to_prz_pct_raw": 4.2969,
            "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": 62875.49,
              "a_price": 62207.1,
              "tp1_ad_382": 62620.17,
              "tp2_ad_618": 62462.43,
              "tp3_a_or_structure_liquidity": 62207.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4553,
              "ABC": 0.6511
            },
            "x_price": 63070.1,
            "x_idx": 169,
            "x_order": 3,
            "a_price": 62207.1,
            "a_idx": 182,
            "a_order": 5,
            "b_price": 62600.0,
            "b_idx": 186,
            "b_order": 8,
            "c_price": 62344.2,
            "c_idx": 223,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.885,
            "ratio_score": 1.0,
            "prz_score": 1.0,
            "prz_proximity": "far",
            "action_status": "forming",
            "high_confluence_prz": true,
            "d_price": 62309.33,
            "prz_range": [
              62156.05,
              62462.61
            ],
            "prz_width_pct": 0.492,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 3.36,
            "price_to_prz_pct_raw": 3.3578,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 62309.33,
              "a_price": 62999.9,
              "tp1_ad_382": 62573.13,
              "tp2_ad_618": 62736.1,
              "tp3_a_or_structure_liquidity": 62999.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4642,
              "ABC": 0.502
            },
            "x_price": 62075.6,
            "x_idx": 215,
            "x_order": 8,
            "a_price": 62999.9,
            "a_idx": 238,
            "a_order": 3,
            "b_price": 62570.8,
            "b_idx": 267,
            "b_order": 8,
            "c_price": 62786.2,
            "c_idx": 271,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.882,
            "ratio_score": 0.992,
            "prz_score": 1.0,
            "prz_proximity": "far",
            "action_status": "forming",
            "high_confluence_prz": true,
            "d_price": 61941.03,
            "prz_range": [
              61772.61,
              62109.45
            ],
            "prz_width_pct": 0.544,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 2.75,
            "price_to_prz_pct_raw": 2.7468,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 61941.03,
              "a_price": 62837.1,
              "tp1_ad_382": 62283.33,
              "tp2_ad_618": 62494.8,
              "tp3_a_or_structure_liquidity": 62837.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6166,
              "ABC": 0.871
            },
            "x_price": 63933.3,
            "x_idx": 152,
            "x_order": 3,
            "a_price": 62837.1,
            "a_idx": 197,
            "a_order": 8,
            "b_price": 62161.2,
            "b_idx": 201,
            "b_order": 5,
            "c_price": 62749.9,
            "c_idx": 229,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "crab",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.88,
            "ratio_score": 1.0,
            "prz_score": 0.989,
            "prz_proximity": "far",
            "action_status": "forming",
            "high_confluence_prz": true,
            "d_price": 63353.72,
            "prz_range": [
              63154.56,
              63552.87
            ],
            "prz_width_pct": 0.629,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 5.09,
            "price_to_prz_pct_raw": 5.0902,
            "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": "crab",
              "d_price": 63353.72,
              "a_price": 62075.6,
              "tp1_ad_382": 62865.48,
              "tp2_ad_618": 62563.84,
              "tp3_a_or_structure_liquidity": 62075.6,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5816,
              "ABC": 0.4933
            },
            "x_price": 62837.1,
            "x_idx": 197,
            "x_order": 8,
            "a_price": 62075.6,
            "a_idx": 215,
            "a_order": 8,
            "b_price": 62518.5,
            "b_idx": 220,
            "b_order": 3,
            "c_price": 62737.0,
            "c_idx": 241,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.865,
            "ratio_score": 0.942,
            "prz_score": 1.0,
            "prz_proximity": "far",
            "action_status": "forming",
            "high_confluence_prz": true,
            "d_price": 62774.12,
            "prz_range": [
              62631.93,
              62916.31
            ],
            "prz_width_pct": 0.453,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 4.13,
            "price_to_prz_pct_raw": 4.1288,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 62774.12,
              "a_price": 61870.0,
              "tp1_ad_382": 62428.75,
              "tp2_ad_618": 62215.37,
              "tp3_a_or_structure_liquidity": 61870.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6083,
              "ABC": 0.6011
            },
            "x_price": 63070.1,
            "x_idx": 169,
            "x_order": 3,
            "a_price": 61870.0,
            "a_idx": 173,
            "a_order": 8,
            "b_price": 62600.0,
            "b_idx": 186,
            "b_order": 8,
            "c_price": 62161.2,
            "c_idx": 201,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.862,
            "ratio_score": 0.933,
            "prz_score": 1.0,
            "prz_proximity": "far",
            "action_status": "forming",
            "high_confluence_prz": true,
            "d_price": 62285.01,
            "prz_range": [
              62107.41,
              62462.6
            ],
            "prz_width_pct": 0.57,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 3.32,
            "price_to_prz_pct_raw": 3.3174,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 62285.01,
              "a_price": 62999.9,
              "tp1_ad_382": 62558.1,
              "tp2_ad_618": 62726.81,
              "tp3_a_or_structure_liquidity": 62999.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.8003,
              "ABC": 0.502
            },
            "x_price": 62463.7,
            "x_idx": 232,
            "x_order": 5,
            "a_price": 62999.9,
            "a_idx": 238,
            "a_order": 3,
            "b_price": 62570.8,
            "b_idx": 267,
            "b_order": 8,
            "c_price": 62786.2,
            "c_idx": 271,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.859,
            "ratio_score": 0.973,
            "prz_score": 1.0,
            "prz_proximity": "far",
            "action_status": "far",
            "high_confluence_prz": true,
            "d_price": 62812.2,
            "prz_range": [
              62631.93,
              62916.31
            ],
            "prz_width_pct": 0.453,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 4.13,
            "price_to_prz_pct_raw": 4.1288,
            "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",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 0.782,
                "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": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 62774.12,
              "a_price": 61870.0,
              "tp1_ad_382": 62428.75,
              "tp2_ad_618": 62215.37,
              "tp3_a_or_structure_liquidity": 61870.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6083,
              "ABC": 0.6011,
              "BCD": 1.4836,
              "XAD": 0.7851
            },
            "x_price": 63070.1,
            "x_idx": 169,
            "x_order": 3,
            "a_price": 61870.0,
            "a_idx": 173,
            "a_order": 8,
            "b_price": 62600.0,
            "b_idx": 186,
            "b_order": 8,
            "c_price": 62161.2,
            "c_idx": 201,
            "c_order": 5,
            "d_idx": 204
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.858,
            "ratio_score": 0.972,
            "prz_score": 1.0,
            "prz_proximity": "far",
            "action_status": "far",
            "high_confluence_prz": true,
            "d_price": 62272.1,
            "prz_range": [
              62107.41,
              62462.6
            ],
            "prz_width_pct": 0.57,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 3.32,
            "price_to_prz_pct_raw": 3.3174,
            "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"
              ],
              "reaction_score": 0.8,
              "reaction_detail": {
                "reaction_score": 0.8,
                "reaction_move_ratio_ad": 1.288,
                "adverse_move_ratio_ad": 1.641,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected"
                ]
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 62285.01,
              "a_price": 62999.9,
              "tp1_ad_382": 62558.1,
              "tp2_ad_618": 62726.81,
              "tp3_a_or_structure_liquidity": 62999.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.8003,
              "ABC": 0.502,
              "BCD": 2.3867,
              "XAD": 1.3573
            },
            "x_price": 62463.7,
            "x_idx": 232,
            "x_order": 5,
            "a_price": 62999.9,
            "a_idx": 238,
            "a_order": 3,
            "b_price": 62570.8,
            "b_idx": 267,
            "b_order": 8,
            "c_price": 62786.2,
            "c_idx": 271,
            "c_order": 5,
            "d_idx": 280
          }
        ],
        "actionable_patterns_list": [],
        "tp_ladder": [],
        "validated_tp_ladder": [],
        "harmonic_governance": {
          "role": "PRZ reaction + TP ladder confluence, not standalone path engine",
          "pre_confirmation_weight_range": [
            0.25,
            0.35
          ],
          "post_confirmation_vote_weight_range": [
            0.5,
            0.6
          ],
          "standalone_path_override_allowed": false,
          "opposes_core_path_policy": "branch/reversal-risk/reaction-zone unless lower-TF structure and derivatives also confirm",
          "aligns_with_core_path_policy": "modest confidence lift plus strong TP ladder influence"
        },
        "execution_readiness": "early"
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.58,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"neutral\",\n  \"setup_score\": 0.28,\n  \"setup_signals\": [\n    \"현재가 $60,285.10가 EMA20 $61,500.11, EMA120 $62,516.81, EMA240 $62,972.98 아래에 위치해 15m 구조 압력은 하방\",\n    \"7일 저점 $60,238.00 바로 위에서 거래 중이나, 스윕 후 리클레임 또는 15m/1h CHoCH 확인 없음\",\n    \"가장 가까운 형성 PRZ는 bullish crab $60,549.16-$60,940.39이나 현재가는 PRZ 하단 아래에 있으며, confirmed_reaction=false\",\n    \"근접 bullish crab은 strict/medium, score 0.828이지만 PRZ 폭 0.644%로 기준 0.60%를 약간 초과하고 high_confluence_prz=false\",\n    \"actionable_patterns_list가 비어 있고 active_patterns_at_prz=0, directional_influence_prz_count=0으로 하모닉 단독 매수 전환 근거 부족\"\n  ],\n  \"reasoning\": \"15m 기준 현재가 $60,285.10는 EMA20 $61,500.11 대비 -2.0%, EMA120 $62,516.81 대비 -3.6% 아래에 있어 확인된 구조_bias는 bearish로 본다. 하모닉 측면에서는 총 54개 패턴 중 완료 20개, 형성 PRZ 34개가 탐지됐지만 active PRZ는 0개이고 council_relevant_prz_count 및 directional_influence_prz_count가 모두 0이라 방향성 투표에 쓸 수 있는 고품질 활성 PRZ가 없다. 가장 가까운 bullish crab PRZ는 $60,549.16-$60,940.39, 중심 D $60,744.77로 현재가보다 약 0.76% 위에 있으나 아직 PRZ 진입 후 거부, 스윕→리클레임, MSS/CHoCH, CVD/OI 확인이 없어 단지 약한 반등 후보 구간이다. 따라서 하모닉은 하방 구조를 뒤집지 못하며, $60,549-$60,940을 회복하지 못하면 $60,238 7일 저점 재시험 및 하방 이탈 리스크가 우세하다.\",\n  \"key_levels\": {\n    \"support\": [\n      60238.0,\n      60000.0\n    ],\n    \"resistance\": [\n      60549.16,\n      60744.77,\n      60940.39,\n      61500.11,\n      61891.3,\n      62516.81\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$60,940.39 상단 회복 후 15m CHoCH/MSS 및 PRZ 리클레임 유지\",\n  \"risk_scenario\": \"$60,549.16-$60,940.39 bullish crab PRZ를 강하게 재진입·상방 회복하고, $60,744.77 중심선을 지지로 전환하면 약세 시나리오는 단기 숏커버링으로 전환될 수 있다. 이 경우 하모닉 TP 맥락은 bullish crab 기준 TP1 $61,453.47, TP2 $61,891.30, TP3 $62,600.00으로 열리지만, 구조 전환 확인 전까지는 반등 분기 시나리오로만 취급해야 한다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "wyckoff": {
      "agent_id": "wyckoff",
      "display_name": "Wyckoff Expert",
      "signal": "bearish",
      "confidence": 0.86,
      "structure_bias": "bearish",
      "setup_bias": "neutral",
      "setup_score": 0.35,
      "setup_signals": [
        "현재가 $60,285.10은 메인 분배 범위 하단 AR $63,857.10 및 SOW $62,532.40 아래에 위치",
        "활성 재분배 후보에서 UTAD $63,209.60 이후 SOW $61,642.50 이탈, 현재 Phase E 저점 $60,238.00 부근",
        "가격이 7일 저점 $60,238.00 바로 위에 있어 신규 추격 숏보다는 되돌림 테스트 리스크가 존재",
        "단기 회복 시 $61,642.50, $62,532.40, $63,209.60이 순차적 공급 확인 구간"
      ],
      "reasoning": "Wyckoff 구조상 regime은 DIS이고 regime_state가 confirmed_dis이며, dis_score 96.2 및 regime_fitness 0.963으로 분배 구조가 우세합니다. 메인 분배 앵커는 BC $64,788.00, AR $63,857.10이고, 이후 ST $64,384.30, UT $64,247.20, SOW $62,532.40을 거쳐 현재 Phase E $60,238.00까지 진행된 상태입니다. 활성 구조에서도 UTAD $63,209.60 이후 SOW $61,642.50 이탈이 발생했기 때문에 구조적 편향은 명확히 bearish입니다. 다만 현재가는 $60,285.10으로 7일 저점 $60,238.00 바로 위라서, 즉시 추가 하락보다 $61,642.50 또는 $62,532.40 하단 재테스트가 먼저 나올 수 있어 setup_bias는 중립으로 둡니다.",
      "key_levels": {
        "support": [
          60238.0,
          60000.0
        ],
        "resistance": [
          61642.5,
          62532.4,
          63209.6,
          63857.1,
          64788.0
        ]
      },
      "time_horizon": "short to medium term",
      "invalidation_level": "$63,209.60",
      "risk_scenario": "반대 시나리오는 가격이 $61,642.50을 회복한 뒤 $62,532.40 위에서 유지되고, 최종적으로 UTAD 레벨인 $63,209.60을 되찾는 경우입니다. 이 경우 현재 Phase E 하락 지속 해석은 약화되며, 분배 이후 하락이 아니라 하단부 재흡수 또는 새로운 박스 형성으로 재평가해야 합니다.",
      "data_quality": "high",
      "metrics": {
        "acc_score": 87.2,
        "dis_score": 96.2,
        "regime": "DIS",
        "regime_state": "confirmed_dis",
        "structure_bias": "bearish",
        "phase_context": "confirmed_dis / distribution / Phase E",
        "phases_detected": [
          "BC",
          "AR",
          "ST",
          "SOW_IN_PHASE_B",
          "UT",
          "SOW",
          "Phase E"
        ],
        "last_phase": "Phase E",
        "phase_candidates": [
          {
            "label": "BC",
            "side": "high",
            "idx": 49,
            "price": 64788.0,
            "color": "#ffd166"
          },
          {
            "label": "AR",
            "side": "low",
            "idx": 56,
            "price": 63857.1,
            "color": "#06d6a0"
          },
          {
            "label": "ST",
            "side": "high",
            "idx": 74,
            "price": 64384.3,
            "color": "#118ab2"
          },
          {
            "label": "SOW_IN_PHASE_B",
            "side": "low",
            "idx": 147,
            "price": 63852.5,
            "color": "#ef476f"
          },
          {
            "label": "UT",
            "side": "high",
            "idx": 151,
            "price": 64247.2,
            "color": "#f9844a"
          },
          {
            "label": "SOW",
            "side": "low",
            "idx": 165,
            "price": 62532.4,
            "color": "#ef476f"
          },
          {
            "label": "Phase E",
            "side": "low",
            "idx": 299,
            "price": 60238.0,
            "color": "#7209b7"
          }
        ],
        "phase_structures": [
          {
            "structure_id": "15m_cycle_1",
            "sequence": 1,
            "timeframe": "15m",
            "regime": "distribution",
            "role": "prior_completed_structure",
            "is_active": false,
            "is_completed": true,
            "is_confirmed": true,
            "structure_bias": "bearish",
            "phase_context": "distribution",
            "start_idx": 49,
            "end_idx": 299,
            "phase_count": 7,
            "phases": [
              {
                "label": "BC",
                "side": "high",
                "idx": 49,
                "price": 64788.0,
                "color": "#ffd166",
                "dt": "2026-06-22 10:15:00+09:00"
              },
              {
                "label": "AR",
                "side": "low",
                "idx": 56,
                "price": 63857.1,
                "color": "#06d6a0",
                "dt": "2026-06-22 12:00:00+09:00"
              },
              {
                "label": "ST",
                "side": "high",
                "idx": 74,
                "price": 64384.3,
                "color": "#118ab2",
                "dt": "2026-06-22 16:30:00+09:00"
              },
              {
                "label": "SOW_IN_PHASE_B",
                "side": "low",
                "idx": 147,
                "price": 63852.5,
                "color": "#ef476f",
                "dt": "2026-06-23 10:45:00+09:00"
              },
              {
                "label": "UT",
                "side": "high",
                "idx": 151,
                "price": 64247.2,
                "color": "#f9844a",
                "dt": "2026-06-23 11:45:00+09:00"
              },
              {
                "label": "SOW",
                "side": "low",
                "idx": 165,
                "price": 62532.4,
                "color": "#ef476f",
                "dt": "2026-06-23 15:15:00+09:00"
              },
              {
                "label": "Phase E",
                "side": "low",
                "idx": 299,
                "price": 60238.0,
                "color": "#7209b7",
                "dt": "2026-06-25 00:45:00+09:00"
              }
            ]
          },
          {
            "structure_id": "15m_cycle_2",
            "sequence": 2,
            "timeframe": "15m",
            "regime": "redistribution",
            "role": "current_structure_candidate",
            "is_active": true,
            "is_completed": false,
            "is_confirmed": true,
            "structure_bias": "bearish",
            "phase_context": "redistribution",
            "start_idx": 194,
            "end_idx": 299,
            "phase_count": 8,
            "phases": [
              {
                "label": "SC",
                "side": "low",
                "idx": 194,
                "price": 61916.9,
                "color": "#ffd166",
                "dt": "2026-06-23 22:30:00+09:00"
              },
              {
                "label": "AR",
                "side": "high",
                "idx": 204,
                "price": 62812.2,
                "color": "#06d6a0",
                "dt": "2026-06-24 01:00:00+09:00"
              },
              {
                "label": "ST",
                "side": "low",
                "idx": 223,
                "price": 62344.2,
                "color": "#118ab2",
                "dt": "2026-06-24 05:45:00+09:00"
              },
              {
                "label": "SOW_IN_PHASE_B",
                "side": "low",
                "idx": 249,
                "price": 62402.8,
                "color": "#ef476f",
                "dt": "2026-06-24 12:15:00+09:00"
              },
              {
                "label": "UT",
                "side": "high",
                "idx": 258,
                "price": 63053.5,
                "color": "#f9844a",
                "dt": "2026-06-24 14:30:00+09:00"
              },
              {
                "label": "UTAD",
                "side": "high",
                "idx": 283,
                "price": 63209.6,
                "color": "#f9844a",
                "dt": "2026-06-24 20:45:00+09:00"
              },
              {
                "label": "SOW",
                "side": "low",
                "idx": 289,
                "price": 61642.5,
                "color": "#ef476f",
                "dt": "2026-06-24 22:15:00+09:00"
              },
              {
                "label": "Phase E",
                "side": "low",
                "idx": 299,
                "price": 60238.0,
                "color": "#7209b7",
                "dt": "2026-06-25 00:45:00+09:00"
              }
            ]
          }
        ],
        "active_structure_id": "15m_cycle_2",
        "primary_structure_id": "15m_cycle_1",
        "structure_count": 2,
        "regime_fitness": 0.9625,
        "current_event": "Phase E",
        "major_phase": "E",
        "pos_in_range": 0.5,
        "main_range_low": 63857.1,
        "main_range_high": 64788.0
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.86,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"neutral\",\n  \"setup_score\": 0.35,\n  \"setup_signals\": [\n    \"현재가 $60,285.10은 메인 분배 범위 하단 AR $63,857.10 및 SOW $62,532.40 아래에 위치\",\n    \"활성 재분배 후보에서 UTAD $63,209.60 이후 SOW $61,642.50 이탈, 현재 Phase E 저점 $60,238.00 부근\",\n    \"가격이 7일 저점 $60,238.00 바로 위에 있어 신규 추격 숏보다는 되돌림 테스트 리스크가 존재\",\n    \"단기 회복 시 $61,642.50, $62,532.40, $63,209.60이 순차적 공급 확인 구간\"\n  ],\n  \"reasoning\": \"Wyckoff 구조상 regime은 DIS이고 regime_state가 confirmed_dis이며, dis_score 96.2 및 regime_fitness 0.963으로 분배 구조가 우세합니다. 메인 분배 앵커는 BC $64,788.00, AR $63,857.10이고, 이후 ST $64,384.30, UT $64,247.20, SOW $62,532.40을 거쳐 현재 Phase E $60,238.00까지 진행된 상태입니다. 활성 구조에서도 UTAD $63,209.60 이후 SOW $61,642.50 이탈이 발생했기 때문에 구조적 편향은 명확히 bearish입니다. 다만 현재가는 $60,285.10으로 7일 저점 $60,238.00 바로 위라서, 즉시 추가 하락보다 $61,642.50 또는 $62,532.40 하단 재테스트가 먼저 나올 수 있어 setup_bias는 중립으로 둡니다.\",\n  \"key_levels\": {\n    \"support\": [\n      60238.0,\n      60000.0\n    ],\n    \"resistance\": [\n      61642.5,\n      62532.4,\n      63209.6,\n      63857.1,\n      64788.0\n    ]\n  },\n  \"time_horizon\": \"short to medium term\",\n  \"invalidation_level\": \"$63,209.60\",\n  \"risk_scenario\": \"반대 시나리오는 가격이 $61,642.50을 회복한 뒤 $62,532.40 위에서 유지되고, 최종적으로 UTAD 레벨인 $63,209.60을 되찾는 경우입니다. 이 경우 현재 Phase E 하락 지속 해석은 약화되며, 분배 이후 하락이 아니라 하단부 재흡수 또는 새로운 박스 형성으로 재평가해야 합니다.\",\n  \"data_quality\": \"high\"\n}"
    },
    "ict": {
      "agent_id": "ict",
      "display_name": "ICT Trader",
      "signal": "bullish",
      "confidence": 0.58,
      "structure_bias": "bearish",
      "setup_bias": "bullish",
      "setup_score": 0.765,
      "setup_signals": [
        "현재가 $60,285.10은 EQ $61,723.80 아래의 discount 구간에 위치",
        "이전일 저가 $60,866.00 하향 이탈로 sell-side liquidity가 제거됨",
        "현재가가 7일 저가 및 범위 저점 $60,238.00 바로 위에서 거래되어 스프링 후보 구간 형성",
        "Asian kill zone 저가 $60,238.00 형성 후 현재가 $60,285.10까지 저점 부근 반응",
        "깊은 되돌림 334.6%로 과매도성 discount 배열 진입"
      ],
      "reasoning": "확정 구조는 마지막 유의미한 이벤트가 $62,402.80의 bearish CHoCH이고, 가격이 EMA20 $61,500.11, EMA120 $62,516.81, EMA240 $62,972.98 모두 아래에 있어 bearish로 판단한다. 다만 실행 관점에서는 현재가 $60,285.10이 EQ $61,723.80 아래 discount에 있고, 이전일 저가 $60,866.00을 이미 하향 이탈했기 때문에 sell-side liquidity sweep 이후 반등 셋업이 형성될 수 있다. 핵심은 $60,238.00 저점 방어 여부이며, 이 레벨을 지키고 $60,866.00 및 $61,128.90를 회복하면 단기 bullish setup이 구조 전환 시도로 발전할 수 있다. 반대로 활성 OB와 미충족 FVG가 없고 최근 sweep 지표도 명시적으로 잡히지 않았기 때문에, 이 롱 셋업은 확정 구조가 아닌 선행 조건 기반의 저점 반응 시나리오다.",
      "key_levels": {
        "support": [
          60238.0,
          60285.1,
          60866.0
        ],
        "resistance": [
          60866.0,
          61128.9,
          61723.8,
          62402.8,
          62837.1,
          63209.6
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$60,238.00",
      "risk_scenario": "$60,238.00을 명확히 이탈하고 그 아래에서 15분봉 종가 수용이 발생하면 discount 반등 셋업은 실패하며, 이전일 저가 $60,866.00 하향 이탈이 단순 sweep이 아니라 bearish continuation으로 해석된다. 이 경우 다음 흐름은 $60,000 심리적 유동성 및 그 아래 sell-side liquidity 확장으로 이어질 수 있다.",
      "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": 2,
        "unfilled_bull_fvg_count": 0,
        "unfilled_bear_fvg_count": 0,
        "bull_fvg_ranges": [],
        "bear_fvg_ranges": [],
        "fvg_open_count": 0,
        "fvg_mitigated_count": 68,
        "fvg_open_zones": [],
        "bos_choch_events": [
          "CHoCH_bullish",
          "BOS_bullish",
          "CHoCH_bearish",
          "BOS_bearish",
          "BOS_bullish",
          "CHoCH_bearish"
        ],
        "bos_choch_levels": [
          {
            "type": "CHoCH_bullish",
            "level": 64284.9
          },
          {
            "type": "BOS_bullish",
            "level": 64788.0
          },
          {
            "type": "CHoCH_bearish",
            "level": 63833.4
          },
          {
            "type": "BOS_bearish",
            "level": 63758.3
          },
          {
            "type": "BOS_bullish",
            "level": 62837.1
          },
          {
            "type": "CHoCH_bearish",
            "level": 62402.8
          }
        ],
        "bos_sequence": [
          "CHoCH_bearish",
          "CHoCH_bullish",
          "BOS_bullish",
          "CHoCH_bearish",
          "BOS_bearish",
          "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": 61723.8,
        "range_high": 63209.6,
        "range_low": 60238.0,
        "bull_score": 8.7,
        "bear_score": 7.7,
        "setup_bias": "bullish",
        "setup_score": 0.765,
        "setup_signals": [
          "bullish CHoCH above $64,284.90",
          "bullish BOS above $64,788.00",
          "bullish BOS above $62,837.10",
          "deep retracement 334.6% in discount zone"
        ],
        "retracement_direction": "bullish",
        "current_retracement_pct": 334.6,
        "deepest_retracement_pct": 334.6,
        "previous_day_high": 63209.6,
        "previous_day_low": 60866.0,
        "broken_prev_high": false,
        "broken_prev_low": true,
        "sessions": {
          "London": {
            "active": false,
            "high": null,
            "low": null
          },
          "New York": {
            "active": false,
            "high": null,
            "low": null
          },
          "Asian kill zone": {
            "active": true,
            "high": 61128.9,
            "low": 60238.0
          }
        }
      },
      "raw_llm_response": "{\n  \"signal\": \"bullish\",\n  \"confidence\": 0.58,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.765,\n  \"setup_signals\": [\n    \"현재가 $60,285.10은 EQ $61,723.80 아래의 discount 구간에 위치\",\n    \"이전일 저가 $60,866.00 하향 이탈로 sell-side liquidity가 제거됨\",\n    \"현재가가 7일 저가 및 범위 저점 $60,238.00 바로 위에서 거래되어 스프링 후보 구간 형성\",\n    \"Asian kill zone 저가 $60,238.00 형성 후 현재가 $60,285.10까지 저점 부근 반응\",\n    \"깊은 되돌림 334.6%로 과매도성 discount 배열 진입\"\n  ],\n  \"reasoning\": \"확정 구조는 마지막 유의미한 이벤트가 $62,402.80의 bearish CHoCH이고, 가격이 EMA20 $61,500.11, EMA120 $62,516.81, EMA240 $62,972.98 모두 아래에 있어 bearish로 판단한다. 다만 실행 관점에서는 현재가 $60,285.10이 EQ $61,723.80 아래 discount에 있고, 이전일 저가 $60,866.00을 이미 하향 이탈했기 때문에 sell-side liquidity sweep 이후 반등 셋업이 형성될 수 있다. 핵심은 $60,238.00 저점 방어 여부이며, 이 레벨을 지키고 $60,866.00 및 $61,128.90를 회복하면 단기 bullish setup이 구조 전환 시도로 발전할 수 있다. 반대로 활성 OB와 미충족 FVG가 없고 최근 sweep 지표도 명시적으로 잡히지 않았기 때문에, 이 롱 셋업은 확정 구조가 아닌 선행 조건 기반의 저점 반응 시나리오다.\",\n  \"key_levels\": {\n    \"support\": [\n      60238.0,\n      60285.1,\n      60866.0\n    ],\n    \"resistance\": [\n      60866.0,\n      61128.9,\n      61723.8,\n      62402.8,\n      62837.1,\n      63209.6\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$60,238.00\",\n  \"risk_scenario\": \"$60,238.00을 명확히 이탈하고 그 아래에서 15분봉 종가 수용이 발생하면 discount 반등 셋업은 실패하며, 이전일 저가 $60,866.00 하향 이탈이 단순 sweep이 아니라 bearish continuation으로 해석된다. 이 경우 다음 흐름은 $60,000 심리적 유동성 및 그 아래 sell-side liquidity 확장으로 이어질 수 있다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "derivatives": {
      "agent_id": "derivatives",
      "display_name": "Derivatives Trader",
      "signal": "bearish",
      "confidence": 0.68,
      "structure_bias": "bearish",
      "setup_bias": "bearish",
      "setup_score": 0.72,
      "setup_signals": [
        "가격 $60,285.10이 EMA20 $61,500.11, EMA120 $62,516.81, EMA240 $62,972.98 아래에 수용되어 하락 구조가 유지됨",
        "24시간 가격 -3.48% 하락 중 OI가 +1.837% 증가하여 신규 포지션이 하락 방향 변동성에 붙는 구조",
        "CVD 변화량 -7,366.65로 공격적 매도 우위가 유지되며, cvd_divergence 0.300으로 강한 bullish divergence는 부재",
        "롱 계좌 비율 0.704, long_account_crowding 1.000, long_accounts_rising_short_accounts_falling로 하락 중 롱 쏠림이 증가하는 역추세 혼잡 신호",
        "즉시 위쪽 청산/저항 클러스터 $60,600, $61,500, $61,800이 존재하나, 회수 실패 시 아래 $58,800 유동성으로 가격이 끌릴 위험이 큼"
      ],
      "reasoning": "현재 BTC는 $60,285.10으로 7일 저점 $60,238.00 바로 위에서 거래되고 있으며, EMA20 $61,500.11 대비 -2.0%, EMA120 $62,516.81 대비 -3.6% 아래에 있어 확인된 구조는 bearish입니다. 파생 포지셔닝은 가격이 24시간 -3.48% 하락하는 동안 OI가 +1.837% 증가했고 CVD가 -7,366.65로 감소해, 단순 청산성 하락보다는 신규 매도/공격적 매도 참여가 붙은 형태입니다. 특히 롱 계좌 비율이 0.704까지 상승했고 long_account_crowding이 1.000으로 극단적이어서, 하락 중 저가매수 롱이 쌓이는 contrarian bearish 조건입니다. 단기적으로 $60,600, $61,500, $61,800 위쪽 청산 클러스터로 짧은 숏커버 반등은 가능하지만, $61,800 회수에 실패하면 $58,800 및 $55,100 하방 유동성 테스트 가능성이 더 높습니다.",
      "key_levels": {
        "support": [
          60238,
          58800,
          55100
        ],
        "resistance": [
          60600,
          61500,
          61800,
          62400,
          62516.81
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "15분봉 기준 $61,800 상방 수용 및 유지",
      "risk_scenario": "$60,600 위 청산을 먼저 흡수한 뒤 $61,500~$61,800을 강하게 돌파하면, 과밀 롱보다 숏커버가 우세해지며 $62,400 strongest liquidity level 및 EMA120 $62,516.81까지 squeeze가 확장될 수 있습니다.",
      "data_quality": "high",
      "metrics": {
        "cvd_divergence": 0.3,
        "cvd_change": -7366.65,
        "oi_trend": 0.684,
        "oi_change_pct_24h": 1.837,
        "oi_latest": 100898.218,
        "funding_pressure": 0.492,
        "funding_avg": 8e-06,
        "funding_change_24h": 4.023e-05,
        "long_account_ratio": 0.674,
        "short_account_ratio": 0.326,
        "long_account_latest": 0.704,
        "short_account_latest": 0.296,
        "long_account_change_24h": 0.027,
        "short_account_change_24h": -0.027,
        "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.495,
        "spot_futures_basis_pct": -0.0194,
        "basis_change_lookback": 0.0255,
        "aggregate_score": 0.394,
        "bull_signals": 1,
        "bear_signals": 2,
        "liq_below": [
          [
            58800,
            3050.4240130000007
          ],
          [
            55100,
            3813.0300162500002
          ]
        ],
        "liq_above": [
          [
            60600,
            2988.9587253
          ],
          [
            61500,
            3241.2386105999994
          ],
          [
            61800,
            3020.0380720499998
          ]
        ],
        "strongest_liq_level": 62400,
        "fragility_score": 0.735,
        "positioning_extreme": "balanced"
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.68,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.72,\n  \"setup_signals\": [\n    \"가격 $60,285.10이 EMA20 $61,500.11, EMA120 $62,516.81, EMA240 $62,972.98 아래에 수용되어 하락 구조가 유지됨\",\n    \"24시간 가격 -3.48% 하락 중 OI가 +1.837% 증가하여 신규 포지션이 하락 방향 변동성에 붙는 구조\",\n    \"CVD 변화량 -7,366.65로 공격적 매도 우위가 유지되며, cvd_divergence 0.300으로 강한 bullish divergence는 부재\",\n    \"롱 계좌 비율 0.704, long_account_crowding 1.000, long_accounts_rising_short_accounts_falling로 하락 중 롱 쏠림이 증가하는 역추세 혼잡 신호\",\n    \"즉시 위쪽 청산/저항 클러스터 $60,600, $61,500, $61,800이 존재하나, 회수 실패 시 아래 $58,800 유동성으로 가격이 끌릴 위험이 큼\"\n  ],\n  \"reasoning\": \"현재 BTC는 $60,285.10으로 7일 저점 $60,238.00 바로 위에서 거래되고 있으며, EMA20 $61,500.11 대비 -2.0%, EMA120 $62,516.81 대비 -3.6% 아래에 있어 확인된 구조는 bearish입니다. 파생 포지셔닝은 가격이 24시간 -3.48% 하락하는 동안 OI가 +1.837% 증가했고 CVD가 -7,366.65로 감소해, 단순 청산성 하락보다는 신규 매도/공격적 매도 참여가 붙은 형태입니다. 특히 롱 계좌 비율이 0.704까지 상승했고 long_account_crowding이 1.000으로 극단적이어서, 하락 중 저가매수 롱이 쌓이는 contrarian bearish 조건입니다. 단기적으로 $60,600, $61,500, $61,800 위쪽 청산 클러스터로 짧은 숏커버 반등은 가능하지만, $61,800 회수에 실패하면 $58,800 및 $55,100 하방 유동성 테스트 가능성이 더 높습니다.\",\n  \"key_levels\": {\n    \"support\": [\n      60238,\n      58800,\n      55100\n    ],\n    \"resistance\": [\n      60600,\n      61500,\n      61800,\n      62400,\n      62516.81\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"15분봉 기준 $61,800 상방 수용 및 유지\",\n  \"risk_scenario\": \"$60,600 위 청산을 먼저 흡수한 뒤 $61,500~$61,800을 강하게 돌파하면, 과밀 롱보다 숏커버가 우세해지며 $62,400 strongest liquidity level 및 EMA120 $62,516.81까지 squeeze가 확장될 수 있습니다.\",\n  \"data_quality\": \"high\"\n}"
    },
    "fibonacci": {
      "agent_id": "fibonacci",
      "display_name": "Fibonacci Analyst",
      "signal": "bearish",
      "confidence": 0.68,
      "structure_bias": "bearish",
      "setup_bias": "neutral",
      "setup_score": 0.25,
      "setup_signals": [
        "현재가 $60,285.10은 스윙 저점 $62,272 아래에 있어 기존 Low→High 피보나치 구조가 하방 이탈된 상태",
        "EQ 역할의 ret_0.5 $62,740.85 및 골든비율 ret_0.618 $62,630.22 아래에 위치하여 할인 구간이지만, 아직 반등 확인은 없음",
        "7일 저점 $60,238.00 근처까지 접근했으나 명확한 유동성 스윕 후 회복 구조는 확인되지 않음",
        "fib_reaction_state가 distant이고 reaction_probability가 0.25로 낮아 피보나치 레벨 반응 신뢰도는 제한적"
      ],
      "reasoning": "현재가 $60,285.10은 계산된 상승 스윙 저점 $62,272를 이미 하회하고 있어, 확인된 구조 관점에서는 bearish가 우세합니다. 핵심 되돌림 저항은 ret_0.786 $62,472.72, 골든비율 ret_0.618 $62,630.22, ret_0.5 $62,740.85이며 모두 현재가보다 3.63% 이상 위에 있어 즉각적인 지지보다 상방 저항으로 작동할 가능성이 큽니다. 특히 confluence_quality가 1.000인 $62,785.04 클러스터는 ret_0.618, ret_0.5, ret_0.382가 겹치는 고품질 저항 구간입니다. 다만 가격이 EQ $62,740.85 아래 깊은 할인 구간에 있고 7일 저점 $60,238.00 근처에 있어, 구조 전환 전 단기 반등 셋업 가능성은 일부 존재하지만 아직 확인 신호는 약합니다.",
      "key_levels": {
        "support": [
          60238.0,
          60285.1
        ],
        "resistance": [
          62472.72,
          62630.22,
          62740.85,
          62785.04,
          63098.97,
          63537.44
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$62,785.04 상방 회복 및 수용",
      "risk_scenario": "반대 시나리오로 가격이 ret_0.786 $62,472.72를 회복하고 골든비율 $62,630.22 위에서 유지되면 숏 커버링성 반등이 $62,785.04 confluence zone까지 이어질 수 있습니다. 이 구간까지 돌파되면 $63,098.97, 이후 $63,537.44 확장/되돌림 클러스터가 다음 상방 목표가 됩니다.",
      "data_quality": "medium",
      "metrics": {
        "swing_pair": "Low→High: $62,272 → $63,210",
        "direction": "up",
        "nearest_fib": "ret_0.786",
        "nearest_fib_price": 62472.72,
        "nearest_fib_distance": 3.63,
        "golden_ratio_level": 62630.22,
        "fib_ret_382": 62851.47,
        "fib_ret_618": 62630.22,
        "confluence_zones": [
          {
            "price": 62785.04,
            "count": 4,
            "levels": [
              "ret_0.618",
              "ret_0.5",
              "ret_0.382",
              "ret_0.5"
            ],
            "cluster_score": 1.0
          },
          {
            "price": 63537.44,
            "count": 3,
            "levels": [
              "ext_1.272",
              "ret_0.618",
              "ext_1.414"
            ],
            "cluster_score": 0.85
          },
          {
            "price": 62378.97,
            "count": 2,
            "levels": [
              "ret_0.382",
              "ret_0.786"
            ],
            "cluster_score": 0.6
          },
          {
            "price": 63098.97,
            "count": 2,
            "levels": [
              "ret_0.236",
              "ext_1.0"
            ],
            "cluster_score": 0.6
          },
          {
            "price": 64298.72,
            "count": 2,
            "levels": [
              "ext_2.0",
              "ret_0.786"
            ],
            "cluster_score": 0.6
          }
        ],
        "support_levels": [],
        "resistance_levels": [
          62472.725,
          62630.225,
          62740.85
        ],
        "level_candidates": [
          {
            "name": "ret_0.236",
            "price": 62988.35,
            "distance_pct": 4.48,
            "is_support": false,
            "cluster_score": 1.0
          },
          {
            "name": "ret_0.382",
            "price": 62851.47,
            "distance_pct": 4.26,
            "is_support": false,
            "cluster_score": 1.0
          },
          {
            "name": "ret_0.5",
            "price": 62740.85,
            "distance_pct": 4.07,
            "is_support": false,
            "cluster_score": 1.0
          },
          {
            "name": "ret_0.618",
            "price": 62630.22,
            "distance_pct": 3.89,
            "is_support": false,
            "cluster_score": 1.0
          },
          {
            "name": "ret_0.786",
            "price": 62472.72,
            "distance_pct": 3.63,
            "is_support": false,
            "cluster_score": 1.0
          },
          {
            "name": "ext_1.0",
            "price": 63209.6,
            "distance_pct": 4.85,
            "is_support": false,
            "cluster_score": 0.6
          },
          {
            "name": "ext_1.272",
            "price": 63464.6,
            "distance_pct": 5.27,
            "is_support": false,
            "cluster_score": 0.85
          },
          {
            "name": "ext_1.414",
            "price": 63597.72,
            "distance_pct": 5.49,
            "is_support": false,
            "cluster_score": 0.85
          },
          {
            "name": "ext_1.618",
            "price": 63788.97,
            "distance_pct": 5.81,
            "is_support": false,
            "cluster_score": 0.85
          },
          {
            "name": "ext_2.0",
            "price": 64147.1,
            "distance_pct": 6.41,
            "is_support": false,
            "cluster_score": 0.6
          }
        ],
        "confluence_quality": 1.0,
        "fib_reaction_state": "distant",
        "reaction_probability": 0.25
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.68,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"neutral\",\n  \"setup_score\": 0.25,\n  \"setup_signals\": [\n    \"현재가 $60,285.10은 스윙 저점 $62,272 아래에 있어 기존 Low→High 피보나치 구조가 하방 이탈된 상태\",\n    \"EQ 역할의 ret_0.5 $62,740.85 및 골든비율 ret_0.618 $62,630.22 아래에 위치하여 할인 구간이지만, 아직 반등 확인은 없음\",\n    \"7일 저점 $60,238.00 근처까지 접근했으나 명확한 유동성 스윕 후 회복 구조는 확인되지 않음\",\n    \"fib_reaction_state가 distant이고 reaction_probability가 0.25로 낮아 피보나치 레벨 반응 신뢰도는 제한적\"\n  ],\n  \"reasoning\": \"현재가 $60,285.10은 계산된 상승 스윙 저점 $62,272를 이미 하회하고 있어, 확인된 구조 관점에서는 bearish가 우세합니다. 핵심 되돌림 저항은 ret_0.786 $62,472.72, 골든비율 ret_0.618 $62,630.22, ret_0.5 $62,740.85이며 모두 현재가보다 3.63% 이상 위에 있어 즉각적인 지지보다 상방 저항으로 작동할 가능성이 큽니다. 특히 confluence_quality가 1.000인 $62,785.04 클러스터는 ret_0.618, ret_0.5, ret_0.382가 겹치는 고품질 저항 구간입니다. 다만 가격이 EQ $62,740.85 아래 깊은 할인 구간에 있고 7일 저점 $60,238.00 근처에 있어, 구조 전환 전 단기 반등 셋업 가능성은 일부 존재하지만 아직 확인 신호는 약합니다.\",\n  \"key_levels\": {\n    \"support\": [\n      60238.0,\n      60285.1\n    ],\n    \"resistance\": [\n      62472.72,\n      62630.22,\n      62740.85,\n      62785.04,\n      63098.97,\n      63537.44\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$62,785.04 상방 회복 및 수용\",\n  \"risk_scenario\": \"반대 시나리오로 가격이 ret_0.786 $62,472.72를 회복하고 골든비율 $62,630.22 위에서 유지되면 숏 커버링성 반등이 $62,785.04 confluence zone까지 이어질 수 있습니다. 이 구간까지 돌파되면 $63,098.97, 이후 $63,537.44 확장/되돌림 클러스터가 다음 상방 목표가 됩니다.\",\n  \"data_quality\": \"medium\"\n}"
    }
  },
  "chairman_synthesis": {
    "overall_signal": "bearish",
    "overall_confidence": 0.74,
    "execution_setup": {
      "setup_bias": "neutral",
      "setup_strength": 0.56,
      "active_setups": [
        "현재가 $60,285.10은 7일 저점·범위 저점 $60,238.00 바로 위에 있어 저점 유동성 소진 또는 스프링 후보 조건이 존재",
        "ICT 기준 이전일 저가 $60,866.00 하향 이탈 후 discount 구간에 위치하여 반등 셋업 후보가 형성되었으나, 명시적 sweep 확인과 CHoCH는 아직 부재",
        "파생 기준 24시간 가격 -3.48% 하락 중 OI +1.837%, CVD -7,366.65로 신규 매도 참여와 공격적 매도 우위가 확인",
        "롱 계좌 비율 0.704 및 long crowding 극단값은 하락 중 저가매수 롱이 쌓이는 역추세 bearish 조건",
        "상방 단기 반응 확인 레벨은 $60,866.00, $61,128.90, $61,500.11이며, 구조 저항은 $61,642.50, $62,402.80, $62,532.40"
      ],
      "setup_vs_structure": "확정 구조는 명확히 bearish이나, 실행 셋업은 $60,238.00 인근 저점 유동성 소진 가능성과 파생 매도 우위가 충돌해 중립으로 평가한다. 즉, 구조 추세는 하방이지만 현 위치에서는 추격보다 저점 반응 여부를 확인해야 하는 구간이다."
    },
    "signal_breakdown": {
      "bullish_count": 1,
      "bearish_count": 5,
      "neutral_count": 0
    },
    "key_levels": {
      "support": [
        60238.0,
        60000.0,
        58800.0,
        55100.0
      ],
      "resistance": [
        60866.0,
        61128.9,
        61500.11,
        61642.5,
        61800.0,
        62402.8,
        62516.81,
        62532.4,
        62785.04,
        63209.6,
        63857.1,
        64788.0
      ]
    },
    "confluences": [
      "Wyckoff, Candlestick, ICT, Harmonic, Fibonacci가 모두 $60,238.00을 현재 핵심 저점·범위 저점·지지 후보로 식별한다.",
      "Candlestick, Harmonic, Derivatives 모두 가격이 EMA20 $61,500.11 아래에 수용되어 단기 구조가 bearish임을 확인한다.",
      "Wyckoff의 활성 재분배 SOW $61,642.50과 ICT의 EQ $61,723.80, Derivatives의 상방 청산 구간 $61,500-$61,800이 같은 61.5k-61.8k 저항대로 겹친다.",
      "Wyckoff SOW $62,532.40, Candlestick EMA120 $62,516.81, Fibonacci ret_0.786~golden zone $62,472.72-$62,630.22가 62.5k 부근의 구조 저항으로 합류한다.",
      "ICT의 마지막 bearish CHoCH $62,402.80과 Derivatives의 강한 유동성 레벨 $62,400이 동일 가격대에서 구조 회복 전 확인 저항으로 일치한다.",
      "Wyckoff UTAD $63,209.60과 ICT previous day high $63,209.60이 동일하며, 이는 활성 재분배 구조의 상단 검증 레벨이다.",
      "Wyckoff, Fibonacci, Derivatives는 모두 현재 반등 확인보다 하방 구조 유지 또는 매도 우위가 더 명확하다고 평가한다."
    ],
    "conflicts": [
      "ICT는 setup_bias를 bullish로 제시한다. 이유는 가격이 EQ $61,723.80 아래 discount에 있고 이전일 저가 $60,866.00을 하향 이탈했기 때문이나, ICT 자신도 구조_bias는 bearish로 분리하고 있다.",
      "Candlestick은 저점권 doji 및 $60,238.00 근접으로 단기 반등 후보를 언급하지만, 최근 5개 15분봉 음봉과 EMA20·120·240 하회로 구조 판단은 bearish이다.",
      "Harmonic은 가까운 bullish crab PRZ $60,549.16-$60,940.39를 제시하지만 현재가는 PRZ 하단 아래이며 confirmed reaction이 없어 구조 전환 근거로 사용할 수 없다.",
      "파생 데이터는 반등 셋업과 충돌한다. 가격 하락 중 OI 증가, CVD 하락, 롱 계좌 쏠림은 저점 반등보다 하락 구조의 지속성을 더 강하게 지지한다."
    ],
    "executive_summary": "BTC/USDT 15분 구조는 현재 confirmed distribution 이후 활성 redistribution의 Phase E 저점권으로 진단된다. 가격 $60,285.10은 Wyckoff Phase E 저점 $60,238.00 바로 위에 있으며, 이는 구조적으로는 하방 이탈 이후의 말기 분배 구간이지만 실행 관점에서는 저점 유동성 소진·스프링 후보 조건도 동시에 존재하는 위치다. 핵심 구조 저항은 $61,642.50, $62,402.80-$62,532.40, $63,209.60이며, 특히 $62.4k-$62.6k는 ICT CHoCH, Wyckoff SOW, EMA120, Fibonacci 저항이 겹치는 고밀도 저항대다. 반등 후보 조건은 $60,238.00 방어와 $60,866.00-$61,128.90 회복이 필요하지만, 현재 파생 포지셔닝은 OI 증가·CVD 하락·롱 계좌 쏠림으로 구조적 bearish 해석을 강화한다. 따라서 overall_signal은 bearish이며, 구조 무효화는 우선 $63,209.60 회수, 최종적으로 $63,857.10-$64,788.00 분배 상단 재진입으로 본다.",
    "raw_llm_response": "{\n  \"overall_signal\": \"bearish\",\n  \"overall_confidence\": 0.74,\n  \"execution_setup\": {\n    \"setup_bias\": \"neutral\",\n    \"setup_strength\": 0.56,\n    \"active_setups\": [\n      \"현재가 $60,285.10은 7일 저점·범위 저점 $60,238.00 바로 위에 있어 저점 유동성 소진 또는 스프링 후보 조건이 존재\",\n      \"ICT 기준 이전일 저가 $60,866.00 하향 이탈 후 discount 구간에 위치하여 반등 셋업 후보가 형성되었으나, 명시적 sweep 확인과 CHoCH는 아직 부재\",\n      \"파생 기준 24시간 가격 -3.48% 하락 중 OI +1.837%, CVD -7,366.65로 신규 매도 참여와 공격적 매도 우위가 확인\",\n      \"롱 계좌 비율 0.704 및 long crowding 극단값은 하락 중 저가매수 롱이 쌓이는 역추세 bearish 조건\",\n      \"상방 단기 반응 확인 레벨은 $60,866.00, $61,128.90, $61,500.11이며, 구조 저항은 $61,642.50, $62,402.80, $62,532.40\"\n    ],\n    \"setup_vs_structure\": \"확정 구조는 명확히 bearish이나, 실행 셋업은 $60,238.00 인근 저점 유동성 소진 가능성과 파생 매도 우위가 충돌해 중립으로 평가한다. 즉, 구조 추세는 하방이지만 현 위치에서는 추격보다 저점 반응 여부를 확인해야 하는 구간이다.\"\n  },\n  \"signal_breakdown\": {\n    \"bullish_count\": 1,\n    \"bearish_count\": 5,\n    \"neutral_count\": 0\n  },\n  \"key_levels\": {\n    \"support\": [\n      60238.0,\n      60000.0,\n      58800.0,\n      55100.0\n    ],\n    \"resistance\": [\n      60866.0,\n      61128.9,\n      61500.11,\n      61642.5,\n      61800.0,\n      62402.8,\n      62516.81,\n      62532.4,\n      62785.04,\n      63209.6,\n      63857.1,\n      64788.0\n    ]\n  },\n  \"confluences\": [\n    \"Wyckoff, Candlestick, ICT, Harmonic, Fibonacci가 모두 $60,238.00을 현재 핵심 저점·범위 저점·지지 후보로 식별한다.\",\n    \"Candlestick, Harmonic, Derivatives 모두 가격이 EMA20 $61,500.11 아래에 수용되어 단기 구조가 bearish임을 확인한다.\",\n    \"Wyckoff의 활성 재분배 SOW $61,642.50과 ICT의 EQ $61,723.80, Derivatives의 상방 청산 구간 $61,500-$61,800이 같은 61.5k-61.8k 저항대로 겹친다.\",\n    \"Wyckoff SOW $62,532.40, Candlestick EMA120 $62,516.81, Fibonacci ret_0.786~golden zone $62,472.72-$62,630.22가 62.5k 부근의 구조 저항으로 합류한다.\",\n    \"ICT의 마지막 bearish CHoCH $62,402.80과 Derivatives의 강한 유동성 레벨 $62,400이 동일 가격대에서 구조 회복 전 확인 저항으로 일치한다.\",\n    \"Wyckoff UTAD $63,209.60과 ICT previous day high $63,209.60이 동일하며, 이는 활성 재분배 구조의 상단 검증 레벨이다.\",\n    \"Wyckoff, Fibonacci, Derivatives는 모두 현재 반등 확인보다 하방 구조 유지 또는 매도 우위가 더 명확하다고 평가한다.\"\n  ],\n  \"conflicts\": [\n    \"ICT는 setup_bias를 bullish로 제시한다. 이유는 가격이 EQ $61,723.80 아래 discount에 있고 이전일 저가 $60,866.00을 하향 이탈했기 때문이나, ICT 자신도 구조_bias는 bearish로 분리하고 있다.\",\n    \"Candlestick은 저점권 doji 및 $60,238.00 근접으로 단기 반등 후보를 언급하지만, 최근 5개 15분봉 음봉과 EMA20·120·240 하회로 구조 판단은 bearish이다.\",\n    \"Harmonic은 가까운 bullish crab PRZ $60,549.16-$60,940.39를 제시하지만 현재가는 PRZ 하단 아래이며 confirmed reaction이 없어 구조 전환 근거로 사용할 수 없다.\",\n    \"파생 데이터는 반등 셋업과 충돌한다. 가격 하락 중 OI 증가, CVD 하락, 롱 계좌 쏠림은 저점 반등보다 하락 구조의 지속성을 더 강하게 지지한다.\"\n  ],\n  \"highest_conviction_analyst\": \"Wyckoff Expert — confirmed distribution 및 활성 redistribution 구조를 모두 제시하며, dis_score 96.2, regime_fitness 0.963으로 가장 강한 구조적 일관성을 보인다. 특히 메인 분배의 BC $64,788.00, AR $63,857.10, SOW $62,532.40 이후 Phase E $60,238.00 진행과, 활성 재분배의 UTAD $63,209.60 후 SOW $61,642.50 이탈이 명확하다.\",\n  \"invalidation_level\": \"활성 bearish 구조는 $63,209.60 회수 시 크게 훼손되며, 메인 분배 구조의 최종 무효화는 $63,857.10-$64,788.00 상단 재진입 및 안착으로 판단한다.\",\n  \"executive_summary\": \"BTC/USDT 15분 구조는 현재 confirmed distribution 이후 활성 redistribution의 Phase E 저점권으로 진단된다. 가격 $60,285.10은 Wyckoff Phase E 저점 $60,238.00 바로 위에 있으며, 이는 구조적으로는 하방 이탈 이후의 말기 분배 구간이지만 실행 관점에서는 저점 유동성 소진·스프링 후보 조건도 동시에 존재하는 위치다. 핵심 구조 저항은 $61,642.50, $62,402.80-$62,532.40, $63,209.60이며, 특히 $62.4k-$62.6k는 ICT CHoCH, Wyckoff SOW, EMA120, Fibonacci 저항이 겹치는 고밀도 저항대다. 반등 후보 조건은 $60,238.00 방어와 $60,866.00-$61,128.90 회복이 필요하지만, 현재 파생 포지셔닝은 OI 증가·CVD 하락·롱 계좌 쏠림으로 구조적 bearish 해석을 강화한다. 따라서 overall_signal은 bearish이며, 구조 무효화는 우선 $63,209.60 회수, 최종적으로 $63,857.10-$64,788.00 분배 상단 재진입으로 본다.\"\n}"
  },
  "overall_signal": "bearish",
  "overall_confidence": 0.74,
  "operating_path": {
    "path_type": "complex",
    "confidence": 0.61,
    "waypoints": [
      {
        "seq": 1,
        "price": 60000.0,
        "type": "liquidity_sweep",
        "source": "ICT(스프링 후보 $60,238/$60,000), Wyckoff(Phase E 저점 $60,238), Derivatives(하방 유동성 $60,238/$60,600), Harmonic(지지 $60,238/$60,000)",
        "description": "현재가 $60,285.10이 7일 저점·Wyckoff Phase E 저점 $60,238.00 바로 위($47)에 위치. long_account_crowding 1.000 극단 + CVD -7,366.65 공격적 매도 우위로 크라우디드 롱 청산 캐스케이드가 우세. $60,238 매도측 유동성을 스윕하며 라운드 지지 $60,000 태그. ICT 스프링 후보·Wyckoff Phase E 저점 재시험 구간으로, 셋업 레이어가 지목한 '저점 유동성 소진' 1차 이벤트.",
        "est_hours": 2.5,
        "turning_zone": [
          59880.0,
          60050.0
        ],
        "likely_wick": 59975.0,
        "rejection_confirm": 60238.0,
        "invalid_overshoot": 59800.0,
        "calibration_reasoning": "현재가($60,285)가 $60,238 매도측 유동성 바로 위 → 하방 스윕이므로 존을 base 아래로 설정. 라운드 $60,000 자석 + 0.55×ATR 폭으로 밴드 구성, 위크는 라운드 하단 stop-run($59,975)에 편향, $60,238(스윕된 Phase E 저점) 재탈환으로 스프링 확인."
      },
      {
        "seq": 2,
        "price": 60866.0,
        "type": "resistance_test",
        "source": "ICT(이전일 저가 reclaim $60,866/$61,128.90), Derivatives(숏커버 청산 클러스터 $60,600), Setup Layer(저점 반응 확인)",
        "description": "저점 스윕 후 숏커버/저가매수 반등이 하향 이탈했던 이전일 저가 $60,866.00(현재 저항 전환)을 retest. 셋업 레이어가 요구한 '저점 반응 확인' 구간. 다만 구조 bearish 74% + 가격이 EMA20 $61,500.11 하회 유지 상태로 $60,866-$61,128.90 reclaim에 실패하면 lower high 확정. 롱 쏠림으로 숏커버 연료가 제한적이라 반등은 캡됨.",
        "est_hours": 9.0,
        "turning_zone": [
          60866.0,
          61050.0
        ],
        "likely_wick": 61000.0,
        "rejection_confirm": 60500.0,
        "invalid_overshoot": 61128.9,
        "calibration_reasoning": "저항 전환된 이전일 저가 $60,866 위 stop 유동성과 다음 챔피언 저항 $61,128.90 사이의 라운드 $61,000을 위크 자석으로 사용(0.60×ATR 밴드). 크라우디드 롱·제한적 숏커버로 반등 캡 가정, $61,128.90 재탈환 시 lower high 무효화. crab PRZ $60,744.77은 조건부 반응존으로만 참고."
      },
      {
        "seq": 3,
        "price": 58800.0,
        "type": "swing_low",
        "source": "Derivatives(하방 유동성 $58,800, $61,800 reclaim 실패 시 주 타깃), Wyckoff(활성 재분배 Phase E markdown 연장)",
        "description": "$60,866 반등 거부 후 활성 재분배 Phase E markdown 연장. $60,238/$60,000 지지 상실 확정 시 다음 하방 유동성 풀 $58,800 테스트. 파생 포지셔닝(OI +1.837% 증가하며 하락 동반)이 단순 청산성 하락이 아닌 신규 매도 참여를 시사 → markdown 지속성 지지.",
        "est_hours": 19.0,
        "turning_zone": [
          58600.0,
          58830.0
        ],
        "likely_wick": 58700.0,
        "rejection_confirm": 59000.0,
        "invalid_overshoot": 58500.0,
        "calibration_reasoning": "터미널 스윙로우라 0.75×ATR 광폭 밴드 적용. $58,800 챔피언 지지(다음 $55,100까지 고립된 유동성 풀) 하단 stop을 쓸어내는 $58,700 위크 가정, $59,000 라운드 재탈환으로 저점 확인, $58,500 이탈 시 $55,100 markdown 연장으로 무효화."
      }
    ],
    "period_extremes": {
      "4h": {
        "expected_high": 60500.0,
        "expected_low": 60000.0,
        "high_first": false
      },
      "8h": {
        "expected_high": 60866.0,
        "expected_low": 60000.0,
        "high_first": false
      },
      "24h": {
        "expected_high": 60866.0,
        "expected_low": 58800.0,
        "high_first": true
      }
    },
    "triggers": {
      "bullish": {
        "price": 61128.9,
        "description": "이전일 저가 $60,866.00 및 $61,128.90 동반 회복·수용 시 ICT 스프링/CHoCH 시도가 활성화되어 하락 연속성 약화. 이어 EMA20 $61,500.11 탈환 시 반등이 $61,642.50 구조 저항까지 확장."
      },
      "bearish": {
        "price": 60238.0,
        "description": "$60,238.00 종가 하향 이탈 후 반등 없이 $60,000 상실 시 분배 markdown 가속. 숏커버 반등 부재 채 $58,800 → $55,100 하방 유동성 직행 리스크 우세."
      }
    },
    "scenario_invalidation": 61642.5,
    "raw_llm_response": "```json\n{\n  \"path_type\": \"complex\",\n  \"confidence\": 0.61,\n  \"waypoints\": [\n    {\n      \"seq\": 1,\n      \"price\": 60000.0,\n      \"type\": \"liquidity_sweep\",\n      \"source\": \"ICT(스프링 후보 $60,238/$60,000), Wyckoff(Phase E 저점 $60,238), Derivatives(하방 유동성 $60,238/$60,600), Harmonic(지지 $60,238/$60,000)\",\n      \"description\": \"현재가 $60,285.10이 7일 저점·Wyckoff Phase E 저점 $60,238.00 바로 위($47)에 위치. long_account_crowding 1.000 극단 + CVD -7,366.65 공격적 매도 우위로 크라우디드 롱 청산 캐스케이드가 우세. $60,238 매도측 유동성을 스윕하며 라운드 지지 $60,000 태그. ICT 스프링 후보·Wyckoff Phase E 저점 재시험 구간으로, 셋업 레이어가 지목한 '저점 유동성 소진' 1차 이벤트.\",\n      \"est_hours\": 2.5\n    },\n    {\n      \"seq\": 2,\n      \"price\": 60866.0,\n      \"type\": \"resistance_test\",\n      \"source\": \"ICT(이전일 저가 reclaim $60,866/$61,128.90), Derivatives(숏커버 청산 클러스터 $60,600), Setup Layer(저점 반응 확인)\",\n      \"description\": \"저점 스윕 후 숏커버/저가매수 반등이 하향 이탈했던 이전일 저가 $60,866.00(현재 저항 전환)을 retest. 셋업 레이어가 요구한 '저점 반응 확인' 구간. 다만 구조 bearish 74% + 가격이 EMA20 $61,500.11 하회 유지 상태로 $60,866-$61,128.90 reclaim에 실패하면 lower high 확정. 롱 쏠림으로 숏커버 연료가 제한적이라 반등은 캡됨.\",\n      \"est_hours\": 9.0\n    },\n    {\n      \"seq\": 3,\n      \"price\": 58800.0,\n      \"type\": \"swing_low\",\n      \"source\": \"Derivatives(하방 유동성 $58,800, $61,800 reclaim 실패 시 주 타깃), Wyckoff(활성 재분배 Phase E markdown 연장)\",\n      \"description\": \"$60,866 반등 거부 후 활성 재분배 Phase E markdown 연장. $60,238/$60,000 지지 상실 확정 시 다음 하방 유동성 풀 $58,800 테스트. 파생 포지셔닝(OI +1.837% 증가하며 하락 동반)이 단순 청산성 하락이 아닌 신규 매도 참여를 시사 → markdown 지속성 지지.\",\n      \"est_hours\": 19.0\n    }\n  ],\n  \"period_extremes\": {\n    \"4h\":  {\"expected_high\": 60500.0, \"expected_low\": 60000.0, \"high_first\": false},\n    \"8h\":  {\"expected_high\": 60866.0, \"expected_low\": 60000.0, \"high_first\": false},\n    \"24h\": {\"expected_high\": 60866.0, \"expected_low\": 58800.0, \"high_first\": true}\n  },\n  \"triggers\": {\n    \"bullish\": {\"price\": 61128.9, \"description\": \"이전일 저가 $60,866.00 및 $61,128.90 동반 회복·수용 시 ICT 스프링/CHoCH 시도가 활성화되어 하락 연속성 약화. 이어 EMA20 $61,500.11 탈환 시 반등이 $61,642.50 구조 저항까지 확장.\"},\n    \"bearish\": {\"price\": 60238.0, \"description\": \"$60,238.00 종가 하향 이탈 후 반등 없이 $60,000 상실 시 분배 markdown 가속. 숏커버 반등 부재 채 $58,800 → $55,100 하방 유동성 직행 리스크 우세.\"}\n  },\n  \"scenario_invalidation\": 61642.5\n}\n```\n\n**핵심 판단 요약:** 구조는 명확히 bearish(74%)이고 파생(OI 증가·CVD 하락·롱 쏠림 극단)이 이를 강화하나, 셋업은 $60,238 피벗 저점 인접으로 NEUTRAL(56%) — \"추격이 아니라 저점 반응 확인\" 구간. 따라서 직선 하락이 아닌 **스윕($60,000) → 캡된 반등($60,866) → lower low($58,800)**의 W형 corrective 경로로 모델링했습니다. WP1 후보 표의 strict fib 레벨($62,379+)은 현재가 대비 3.47%↑ 상방 반전 시에만 유효해 본 bearish 경로의 1차 웨이포인트로 채택하지 않았습니다. 경로 무효화는 Wyckoff 활성 재분배 SOW $61,642.50 탈환입니다."
  },
  "tp_calibration": {
    "executive_summary": "세 웨이포인트가 모두 현재가($60,285) 인근·하단에 위치해 피보나치 클러스터($62,000~64,000대)는 비국소적이므로 존 앵커로 사용하지 않았다. 밴드는 챔피언 키레벨 + 라운드넘버 자석 + ATR($308.61)로 산정. WP1은 라벨상 liquidity_sweep이나 실제 셋업이 '매도측 저점 유동성 소진(하방 스윕)'이므로 방향 로직을 적용해 turning_zone을 base 아래로 확장했다. 하모닉 crab PRZ $60,744.77은 미확정·보고전용이라 어떤 웨이포인트도 이동시키지 않았고 조건부 반응존으로만 취급했다.",
    "calibrated_waypoints": [
      {
        "seq": 1,
        "base_target": 60000.0,
        "turning_zone": [
          59880.0,
          60050.0
        ],
        "likely_wick": 59975.0,
        "rejection_confirm": 60238.0,
        "invalid_overshoot": 59800.0,
        "calibration_reasoning": "현재가($60,285)가 $60,238 매도측 유동성 바로 위 → 하방 스윕이므로 존을 base 아래로 설정. 라운드 $60,000 자석 + 0.55×ATR 폭으로 밴드 구성, 위크는 라운드 하단 stop-run($59,975)에 편향, $60,238(스윕된 Phase E 저점) 재탈환으로 스프링 확인."
      },
      {
        "seq": 2,
        "base_target": 60866.0,
        "turning_zone": [
          60866.0,
          61050.0
        ],
        "likely_wick": 61000.0,
        "rejection_confirm": 60500.0,
        "invalid_overshoot": 61128.9,
        "calibration_reasoning": "저항 전환된 이전일 저가 $60,866 위 stop 유동성과 다음 챔피언 저항 $61,128.90 사이의 라운드 $61,000을 위크 자석으로 사용(0.60×ATR 밴드). 크라우디드 롱·제한적 숏커버로 반등 캡 가정, $61,128.90 재탈환 시 lower high 무효화. crab PRZ $60,744.77은 조건부 반응존으로만 참고."
      },
      {
        "seq": 3,
        "base_target": 58800.0,
        "turning_zone": [
          58600.0,
          58830.0
        ],
        "likely_wick": 58700.0,
        "rejection_confirm": 59000.0,
        "invalid_overshoot": 58500.0,
        "calibration_reasoning": "터미널 스윙로우라 0.75×ATR 광폭 밴드 적용. $58,800 챔피언 지지(다음 $55,100까지 고립된 유동성 풀) 하단 stop을 쓸어내는 $58,700 위크 가정, $59,000 라운드 재탈환으로 저점 확인, $58,500 이탈 시 $55,100 markdown 연장으로 무효화."
      }
    ],
    "raw_llm_response": "```json\n{\n  \"executive_summary\": \"세 웨이포인트가 모두 현재가($60,285) 인근·하단에 위치해 피보나치 클러스터($62,000~64,000대)는 비국소적이므로 존 앵커로 사용하지 않았다. 밴드는 챔피언 키레벨 + 라운드넘버 자석 + ATR($308.61)로 산정. WP1은 라벨상 liquidity_sweep이나 실제 셋업이 '매도측 저점 유동성 소진(하방 스윕)'이므로 방향 로직을 적용해 turning_zone을 base 아래로 확장했다. 하모닉 crab PRZ $60,744.77은 미확정·보고전용이라 어떤 웨이포인트도 이동시키지 않았고 조건부 반응존으로만 취급했다.\",\n  \"calibrated_waypoints\": [\n    {\n      \"seq\": 1,\n      \"base_target\": 60000.0,\n      \"turning_zone\": [59880.0, 60050.0],\n      \"likely_wick\": 59975.0,\n      \"rejection_confirm\": 60238.0,\n      \"invalid_overshoot\": 59800.0,\n      \"calibration_reasoning\": \"현재가($60,285)가 $60,238 매도측 유동성 바로 위 → 하방 스윕이므로 존을 base 아래로 설정. 라운드 $60,000 자석 + 0.55×ATR 폭으로 밴드 구성, 위크는 라운드 하단 stop-run($59,975)에 편향, $60,238(스윕된 Phase E 저점) 재탈환으로 스프링 확인.\"\n    },\n    {\n      \"seq\": 2,\n      \"base_target\": 60866.0,\n      \"turning_zone\": [60866.0, 61050.0],\n      \"likely_wick\": 61000.0,\n      \"rejection_confirm\": 60500.0,\n      \"invalid_overshoot\": 61128.9,\n      \"calibration_reasoning\": \"저항 전환된 이전일 저가 $60,866 위 stop 유동성과 다음 챔피언 저항 $61,128.90 사이의 라운드 $61,000을 위크 자석으로 사용(0.60×ATR 밴드). 크라우디드 롱·제한적 숏커버로 반등 캡 가정, $61,128.90 재탈환 시 lower high 무효화. crab PRZ $60,744.77은 조건부 반응존으로만 참고.\"\n    },\n    {\n      \"seq\": 3,\n      \"base_target\": 58800.0,\n      \"turning_zone\": [58600.0, 58830.0],\n      \"likely_wick\": 58700.0,\n      \"rejection_confirm\": 59000.0,\n      \"invalid_overshoot\": 58500.0,\n      \"calibration_reasoning\": \"터미널 스윙로우라 0.75×ATR 광폭 밴드 적용. $58,800 챔피언 지지(다음 $55,100까지 고립된 유동성 풀) 하단 stop을 쓸어내는 $58,700 위크 가정, $59,000 라운드 재탈환으로 저점 확인, $58,500 이탈 시 $55,100 markdown 연장으로 무효화.\"\n    }\n  ]\n}\n```"
  },
  "timing": {
    "stages": {
      "stage1_agents": 71.1,
      "chairman": 88.3,
      "operating_path": 240.3,
      "tp_calibrator": 208.6
    },
    "agents": {},
    "total_s": 608.4
  }
}