{
  "symbol": "BTC/USDT",
  "timeframe": "1d",
  "timestamp": "2026-05-28 01:00 KST",
  "last_price": 75304.7,
  "num_candles": 300,
  "stage1_analyses": {
    "harmonic": {
      "agent_id": "harmonic",
      "display_name": "Harmonic Specialist",
      "signal": "bullish",
      "confidence": 0.42,
      "structure_bias": "neutral",
      "setup_bias": "bullish",
      "setup_score": 0.62,
      "setup_signals": [
        "현재가 $75,304.70이 엄격/고품질 bullish Gartley 활성 PRZ $74,594.52-$75,813.87 내부에 위치",
        "Gartley 예상 D값 $75,204.19와 현재가 괴리 -0.13%로 PRZ 반응 감시 구간",
        "PRZ confluence count 3: ABCD + BC_EXT + XAD가 동일 구간에 중첩",
        "완료된 candidate bullish Gartley가 $74,122.63-$75,813.61 PRZ에서 반응 확인: AD 0.382 반응 도달, reaction_score 0.90",
        "상방 TP ladder: $76,828.00, $77,831.19, $79,455.00"
      ],
      "reasoning": "현재 핵심 패턴은 strict/high bullish Gartley이며 PRZ는 $74,594.52-$75,813.87, 예상 D는 $75,204.19로 현재가 $75,304.70이 이미 활성 반전 후보 구간 안에 있다. 다만 이 Gartley는 아직 forming 상태이고 confirmed_reaction=false, reaction_score=0.0이므로 구조 전환을 확정할 수 없으며 harmonic_vote_state도 pre_confirmation_reversal_candidate에 불과하다. 별도로 completed candidate bullish Gartley는 $74,203.60 D 이후 AD 0.382 반응을 충족해 reaction_score 0.90을 보였지만 candidate 등급이므로 단독 방향성 지배력은 제한된다. 따라서 구조_bias는 확정 BOS/CHoCH 부재로 neutral, setup_bias는 활성 고품질 bullish PRZ와 TP ladder confluence 때문에 bullish로 평가한다.",
      "key_levels": {
        "support": [
          75204.19,
          74594.52,
          74203.6,
          73669.0,
          72028.1
        ],
        "resistance": [
          75813.87,
          76828.0,
          77423.59,
          77599.17,
          77831.19,
          79455.0
        ]
      },
      "time_horizon": "medium term",
      "invalidation_level": "$73,669.00 일봉 종가 하회",
      "risk_scenario": "가격이 $74,594.52-$75,813.87 PRZ에서 명확한 거부 반응 없이 하방 이탈하고 특히 $73,669.00을 일봉 종가로 잃으면 bullish Gartley의 D 방어가 실패한다. 이 경우 $72,028.10-$73,671.68의 lower bullish Butterfly watch PRZ까지 하락 확장이 열리며, 반등 시나리오는 단순 기술적 반응으로 격하된다.",
      "data_quality": "medium",
      "metrics": {
        "patterns_found": 260,
        "completed_patterns_found": 97,
        "forming_d_prz_found": 163,
        "swing_orders_scanned": [
          3,
          5,
          8
        ],
        "swing_search_window": 30,
        "multiscale_swings_scanned": 58,
        "swing_highs_scanned": 29,
        "swing_lows_scanned": 29,
        "timeframe": "1d",
        "prz_active_threshold_pct": 1.0,
        "prz_nearby_threshold_pct": 2.0,
        "prz_watch_threshold_pct": 4.0,
        "prz_max_width_pct": 1.8,
        "quality_counts": {
          "high": 3,
          "medium": 71,
          "low": 186
        },
        "prz_status_counts": {
          "active": 43,
          "nearby": 19,
          "watch": 41,
          "far": 157,
          "forming": 107
        },
        "high_confluence_prz_count": 19,
        "strict_patterns_found": 65,
        "candidate_patterns_found": 195,
        "active_patterns_at_prz": 43,
        "nearby_patterns": 19,
        "all_patterns": [
          "gartley",
          "butterfly",
          "shark",
          "bat",
          "gartley",
          "butterfly",
          "shark",
          "crab",
          "butterfly",
          "gartley",
          "shark",
          "butterfly",
          "butterfly",
          "bat",
          "bat",
          "bat",
          "bat",
          "bat",
          "bat",
          "bat",
          "crab",
          "bat",
          "bat",
          "bat",
          "bat",
          "butterfly",
          "crab",
          "crab",
          "crab",
          "crab",
          "shark",
          "bat",
          "crab",
          "crab",
          "butterfly",
          "crab",
          "bat",
          "shark",
          "gartley",
          "gartley",
          "gartley",
          "bat",
          "crab",
          "crab",
          "butterfly",
          "gartley",
          "shark",
          "butterfly",
          "butterfly",
          "bat",
          "crab",
          "butterfly",
          "butterfly",
          "bat",
          "shark",
          "butterfly",
          "crab",
          "gartley",
          "shark",
          "bat",
          "crab",
          "butterfly",
          "crab",
          "gartley",
          "shark",
          "crab",
          "crab",
          "shark",
          "butterfly",
          "bat",
          "crab",
          "bat",
          "shark",
          "gartley",
          "shark",
          "shark",
          "crab",
          "butterfly",
          "butterfly",
          "shark",
          "butterfly",
          "bat",
          "butterfly",
          "crab",
          "crab",
          "shark",
          "shark",
          "bat",
          "crab",
          "gartley",
          "bat",
          "shark",
          "shark",
          "shark",
          "butterfly",
          "shark",
          "crab",
          "shark",
          "bat",
          "butterfly",
          "crab",
          "crab",
          "shark",
          "gartley",
          "shark",
          "crab",
          "crab",
          "crab",
          "crab",
          "crab",
          "crab",
          "crab",
          "bat",
          "gartley",
          "shark",
          "shark",
          "bat",
          "butterfly",
          "bat",
          "bat",
          "crab",
          "gartley",
          "bat",
          "bat",
          "crab",
          "shark",
          "bat",
          "bat",
          "bat",
          "bat",
          "butterfly",
          "crab",
          "bat",
          "bat",
          "bat",
          "shark",
          "butterfly",
          "crab",
          "crab",
          "shark",
          "crab",
          "bat",
          "crab",
          "crab",
          "gartley",
          "bat",
          "butterfly",
          "shark",
          "butterfly",
          "crab",
          "butterfly",
          "crab",
          "shark",
          "crab",
          "crab",
          "gartley",
          "bat",
          "gartley",
          "shark",
          "butterfly",
          "butterfly",
          "bat",
          "shark",
          "bat",
          "crab",
          "crab",
          "bat",
          "crab",
          "bat",
          "shark",
          "bat",
          "crab",
          "bat",
          "gartley",
          "shark",
          "bat",
          "bat",
          "crab",
          "gartley",
          "shark",
          "butterfly",
          "butterfly",
          "crab",
          "bat",
          "shark",
          "butterfly",
          "crab",
          "butterfly",
          "bat",
          "bat",
          "bat",
          "crab",
          "butterfly",
          "crab",
          "bat",
          "butterfly",
          "gartley",
          "bat",
          "butterfly",
          "bat",
          "butterfly",
          "shark",
          "butterfly",
          "crab",
          "bat",
          "gartley",
          "shark",
          "shark",
          "butterfly",
          "shark",
          "crab",
          "crab",
          "shark",
          "bat",
          "crab",
          "bat",
          "crab",
          "butterfly",
          "gartley",
          "gartley",
          "shark",
          "butterfly",
          "bat",
          "bat",
          "butterfly",
          "shark",
          "bat",
          "butterfly",
          "butterfly",
          "crab",
          "crab",
          "crab",
          "shark",
          "shark",
          "crab",
          "gartley",
          "bat",
          "gartley",
          "shark",
          "bat",
          "crab",
          "crab",
          "shark",
          "bat",
          "crab",
          "shark",
          "butterfly",
          "gartley",
          "butterfly",
          "shark",
          "crab",
          "shark",
          "shark",
          "butterfly",
          "bat",
          "shark",
          "butterfly",
          "crab",
          "crab",
          "shark"
        ],
        "all_signals": [
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish"
        ],
        "best_pattern": "gartley",
        "best_pattern_quality": "strict",
        "best_quality": "high",
        "best_pattern_score": 0.909,
        "best_completion_status": "forming",
        "nearest_pattern": "crab",
        "nearest_prz": 75274.3,
        "price_to_prz": -0.04,
        "prz_range": [
          75193.0,
          75355.6
        ],
        "council_relevant_prz_count": 1,
        "directional_influence_prz_count": 1,
        "confirmed_reaction_prz_count": 0,
        "validated_harmonic_tp_count": 0,
        "pattern_candidates": [
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.909,
            "ratio_score": 0.862,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 75204.19,
            "prz_range": [
              74594.52,
              75813.87
            ],
            "prz_width_pct": 1.621,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.13,
            "price_to_prz_pct_raw": -0.1335,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 75204.19,
              "a_price": 79455.0,
              "tp1_ad_382": 76828.0,
              "tp2_ad_618": 77831.19,
              "tp3_a_or_structure_liquidity": 79455.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5947,
              "ABC": 0.6294
            },
            "x_price": 73669.0,
            "x_idx": 262,
            "x_order": 3,
            "a_price": 79455.0,
            "a_idx": 269,
            "a_order": 5,
            "b_price": 76014.2,
            "b_idx": 290,
            "b_order": 3,
            "c_price": 78180.0,
            "c_idx": 293,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.882,
            "ratio_score": 0.968,
            "prz_score": 0.941,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 72849.89,
            "prz_range": [
              72028.1,
              73671.68
            ],
            "prz_width_pct": 2.256,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -3.26,
            "price_to_prz_pct_raw": -3.2598,
            "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": 72849.89,
              "a_price": 79455.0,
              "tp1_ad_382": 75373.04,
              "tp2_ad_618": 76931.85,
              "tp3_a_or_structure_liquidity": 79455.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7928,
              "ABC": 0.722
            },
            "x_price": 73669.0,
            "x_idx": 262,
            "x_order": 3,
            "a_price": 79455.0,
            "a_idx": 269,
            "a_order": 5,
            "b_price": 74868.0,
            "b_idx": 271,
            "b_order": 5,
            "c_price": 78180.0,
            "c_idx": 293,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.857,
            "ratio_score": 0.969,
            "prz_score": 0.924,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 72303.79,
            "prz_range": [
              71442.07,
              73165.52
            ],
            "prz_width_pct": 2.384,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -3.99,
            "price_to_prz_pct_raw": -3.985,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "butterfly",
              "d_price": 72303.79,
              "a_price": 62979.5,
              "tp1_ad_382": 68741.91,
              "tp2_ad_618": 66541.38,
              "tp3_a_or_structure_liquidity": 62979.5,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7926,
              "ABC": 0.5725
            },
            "x_price": 70938.5,
            "x_idx": 198,
            "x_order": 5,
            "a_price": 62979.5,
            "a_idx": 211,
            "a_order": 3,
            "b_price": 69288.0,
            "b_idx": 243,
            "b_order": 3,
            "c_price": 65676.1,
            "c_idx": 244,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.737,
            "ratio_score": 0.583,
            "prz_score": 0.983,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 78891.87,
            "prz_range": [
              78130.63,
              79653.1
            ],
            "prz_width_pct": 1.93,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 4.76,
            "price_to_prz_pct_raw": 4.7635,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "butterfly",
              "d_price": 78891.87,
              "a_price": 67300.0,
              "tp1_ad_382": 74463.77,
              "tp2_ad_618": 71728.09,
              "tp3_a_or_structure_liquidity": 67300.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6966,
              "ABC": 0.6102
            },
            "x_price": 74046.5,
            "x_idx": 215,
            "x_order": 8,
            "a_price": 67300.0,
            "a_idx": 233,
            "a_order": 3,
            "b_price": 71999.9,
            "b_idx": 236,
            "b_order": 5,
            "c_price": 74868.0,
            "c_idx": 271,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "shark",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.703,
            "ratio_score": 0.57,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 78180.0,
            "prz_range": [
              77355.12,
              78703.8
            ],
            "prz_width_pct": 1.728,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 3.62,
            "price_to_prz_pct_raw": 3.6183,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.236_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 0.95,
              "reaction_detail": {
                "reaction_score": 0.95,
                "reaction_move_ratio_ad": 0.3,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 6,
                "reasons": [
                  "AD0.236_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": "shark",
              "d_price": 78029.46,
              "a_price": 64918.2,
              "tp1_ad_382": 73020.96,
              "tp2_ad_618": 69926.7,
              "tp3_a_or_structure_liquidity": 64918.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.3944,
              "ABC": 1.0026,
              "BCD": 1.0297,
              "XAD": 1.1968
            },
            "x_price": 75998.9,
            "x_idx": 228,
            "x_order": 8,
            "a_price": 64918.2,
            "a_idx": 240,
            "a_order": 8,
            "b_price": 69288.0,
            "b_idx": 243,
            "b_order": 3,
            "c_price": 73669.0,
            "c_idx": 262,
            "c_order": 3,
            "d_idx": 293
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.662,
            "ratio_score": 0.392,
            "prz_score": 0.986,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 71902.62,
            "prz_range": [
              71217.64,
              72587.59
            ],
            "prz_width_pct": 1.905,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -4.52,
            "price_to_prz_pct_raw": -4.5178,
            "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": 71902.62,
              "a_price": 82460.5,
              "tp1_ad_382": 75935.73,
              "tp2_ad_618": 78427.39,
              "tp3_a_or_structure_liquidity": 82460.5,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7332,
              "ABC": 0.336
            },
            "x_price": 73669.0,
            "x_idx": 262,
            "x_order": 3,
            "a_price": 82460.5,
            "a_idx": 282,
            "a_order": 3,
            "b_price": 76014.2,
            "b_idx": 290,
            "b_order": 3,
            "c_price": 78180.0,
            "c_idx": 293,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.656,
            "ratio_score": 0.528,
            "prz_score": 0.977,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 78180.0,
            "prz_range": [
              78094.82,
              79653.08
            ],
            "prz_width_pct": 1.976,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 4.74,
            "price_to_prz_pct_raw": 4.7397,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.236_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 0.95,
              "reaction_detail": {
                "reaction_score": 0.95,
                "reaction_move_ratio_ad": 0.365,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 6,
                "reasons": [
                  "AD0.236_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": "butterfly",
              "d_price": 78873.95,
              "a_price": 67300.0,
              "tp1_ad_382": 74452.7,
              "tp2_ad_618": 71721.25,
              "tp3_a_or_structure_liquidity": 67300.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6966,
              "ABC": 0.6102,
              "BCD": 1.1548,
              "XAD": 1.6127
            },
            "x_price": 74046.5,
            "x_idx": 215,
            "x_order": 8,
            "a_price": 67300.0,
            "a_idx": 233,
            "a_order": 3,
            "b_price": 71999.9,
            "b_idx": 236,
            "b_order": 5,
            "c_price": 74868.0,
            "c_idx": 271,
            "c_order": 5,
            "d_idx": 293
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.645,
            "ratio_score": 0.383,
            "prz_score": 0.941,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 74203.6,
            "prz_range": [
              74122.63,
              75813.61
            ],
            "prz_width_pct": 2.256,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.45,
            "price_to_prz_pct_raw": -0.447,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "post_D_close_progress"
              ],
              "reaction_score": 0.9,
              "reaction_detail": {
                "reaction_score": 0.9,
                "reaction_move_ratio_ad": 0.738,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 4,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 74968.12,
              "a_price": 79455.0,
              "tp1_ad_382": 76682.11,
              "tp2_ad_618": 77741.01,
              "tp3_a_or_structure_liquidity": 79455.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5947,
              "ABC": 0.6294,
              "BCD": 1.836,
              "XAD": 0.9076
            },
            "x_price": 73669.0,
            "x_idx": 262,
            "x_order": 3,
            "a_price": 79455.0,
            "a_idx": 269,
            "a_order": 5,
            "b_price": 76014.2,
            "b_idx": 290,
            "b_order": 3,
            "c_price": 78180.0,
            "c_idx": 293,
            "c_order": 3,
            "d_idx": 295
          }
        ],
        "council_relevant_prz": [
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.909,
            "ratio_score": 0.862,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 75204.19,
            "prz_range": [
              74594.52,
              75813.87
            ],
            "prz_width_pct": 1.621,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.13,
            "price_to_prz_pct_raw": -0.1335,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 75204.19,
              "a_price": 79455.0,
              "tp1_ad_382": 76828.0,
              "tp2_ad_618": 77831.19,
              "tp3_a_or_structure_liquidity": 79455.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5947,
              "ABC": 0.6294
            },
            "x_price": 73669.0,
            "x_idx": 262,
            "x_order": 3,
            "a_price": 79455.0,
            "a_idx": 269,
            "a_order": 5,
            "b_price": 76014.2,
            "b_idx": 290,
            "b_order": 3,
            "c_price": 78180.0,
            "c_idx": 293,
            "c_order": 3,
            "d_idx": null
          }
        ],
        "report_detail_candidates": [
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.909,
            "ratio_score": 0.862,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 75204.19,
            "prz_range": [
              74594.52,
              75813.87
            ],
            "prz_width_pct": 1.621,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.13,
            "price_to_prz_pct_raw": -0.1335,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 75204.19,
              "a_price": 79455.0,
              "tp1_ad_382": 76828.0,
              "tp2_ad_618": 77831.19,
              "tp3_a_or_structure_liquidity": 79455.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5947,
              "ABC": 0.6294
            },
            "x_price": 73669.0,
            "x_idx": 262,
            "x_order": 3,
            "a_price": 79455.0,
            "a_idx": 269,
            "a_order": 5,
            "b_price": 76014.2,
            "b_idx": 290,
            "b_order": 3,
            "c_price": 78180.0,
            "c_idx": 293,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.882,
            "ratio_score": 0.968,
            "prz_score": 0.941,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 72849.89,
            "prz_range": [
              72028.1,
              73671.68
            ],
            "prz_width_pct": 2.256,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -3.26,
            "price_to_prz_pct_raw": -3.2598,
            "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": 72849.89,
              "a_price": 79455.0,
              "tp1_ad_382": 75373.04,
              "tp2_ad_618": 76931.85,
              "tp3_a_or_structure_liquidity": 79455.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7928,
              "ABC": 0.722
            },
            "x_price": 73669.0,
            "x_idx": 262,
            "x_order": 3,
            "a_price": 79455.0,
            "a_idx": 269,
            "a_order": 5,
            "b_price": 74868.0,
            "b_idx": 271,
            "b_order": 5,
            "c_price": 78180.0,
            "c_idx": 293,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.857,
            "ratio_score": 0.969,
            "prz_score": 0.924,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 72303.79,
            "prz_range": [
              71442.07,
              73165.52
            ],
            "prz_width_pct": 2.384,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -3.99,
            "price_to_prz_pct_raw": -3.985,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "butterfly",
              "d_price": 72303.79,
              "a_price": 62979.5,
              "tp1_ad_382": 68741.91,
              "tp2_ad_618": 66541.38,
              "tp3_a_or_structure_liquidity": 62979.5,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7926,
              "ABC": 0.5725
            },
            "x_price": 70938.5,
            "x_idx": 198,
            "x_order": 5,
            "a_price": 62979.5,
            "a_idx": 211,
            "a_order": 3,
            "b_price": 69288.0,
            "b_idx": 243,
            "b_order": 3,
            "c_price": 65676.1,
            "c_idx": 244,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.737,
            "ratio_score": 0.583,
            "prz_score": 0.983,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 78891.87,
            "prz_range": [
              78130.63,
              79653.1
            ],
            "prz_width_pct": 1.93,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 4.76,
            "price_to_prz_pct_raw": 4.7635,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "butterfly",
              "d_price": 78891.87,
              "a_price": 67300.0,
              "tp1_ad_382": 74463.77,
              "tp2_ad_618": 71728.09,
              "tp3_a_or_structure_liquidity": 67300.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6966,
              "ABC": 0.6102
            },
            "x_price": 74046.5,
            "x_idx": 215,
            "x_order": 8,
            "a_price": 67300.0,
            "a_idx": 233,
            "a_order": 3,
            "b_price": 71999.9,
            "b_idx": 236,
            "b_order": 5,
            "c_price": 74868.0,
            "c_idx": 271,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "shark",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.703,
            "ratio_score": 0.57,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 78180.0,
            "prz_range": [
              77355.12,
              78703.8
            ],
            "prz_width_pct": 1.728,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 3.62,
            "price_to_prz_pct_raw": 3.6183,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.236_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 0.95,
              "reaction_detail": {
                "reaction_score": 0.95,
                "reaction_move_ratio_ad": 0.3,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 6,
                "reasons": [
                  "AD0.236_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": "shark",
              "d_price": 78029.46,
              "a_price": 64918.2,
              "tp1_ad_382": 73020.96,
              "tp2_ad_618": 69926.7,
              "tp3_a_or_structure_liquidity": 64918.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.3944,
              "ABC": 1.0026,
              "BCD": 1.0297,
              "XAD": 1.1968
            },
            "x_price": 75998.9,
            "x_idx": 228,
            "x_order": 8,
            "a_price": 64918.2,
            "a_idx": 240,
            "a_order": 8,
            "b_price": 69288.0,
            "b_idx": 243,
            "b_order": 3,
            "c_price": 73669.0,
            "c_idx": 262,
            "c_order": 3,
            "d_idx": 293
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.662,
            "ratio_score": 0.392,
            "prz_score": 0.986,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 71902.62,
            "prz_range": [
              71217.64,
              72587.59
            ],
            "prz_width_pct": 1.905,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -4.52,
            "price_to_prz_pct_raw": -4.5178,
            "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": 71902.62,
              "a_price": 82460.5,
              "tp1_ad_382": 75935.73,
              "tp2_ad_618": 78427.39,
              "tp3_a_or_structure_liquidity": 82460.5,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7332,
              "ABC": 0.336
            },
            "x_price": 73669.0,
            "x_idx": 262,
            "x_order": 3,
            "a_price": 82460.5,
            "a_idx": 282,
            "a_order": 3,
            "b_price": 76014.2,
            "b_idx": 290,
            "b_order": 3,
            "c_price": 78180.0,
            "c_idx": 293,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.656,
            "ratio_score": 0.528,
            "prz_score": 0.977,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 78180.0,
            "prz_range": [
              78094.82,
              79653.08
            ],
            "prz_width_pct": 1.976,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 4.74,
            "price_to_prz_pct_raw": 4.7397,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.236_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 0.95,
              "reaction_detail": {
                "reaction_score": 0.95,
                "reaction_move_ratio_ad": 0.365,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 6,
                "reasons": [
                  "AD0.236_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": "butterfly",
              "d_price": 78873.95,
              "a_price": 67300.0,
              "tp1_ad_382": 74452.7,
              "tp2_ad_618": 71721.25,
              "tp3_a_or_structure_liquidity": 67300.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6966,
              "ABC": 0.6102,
              "BCD": 1.1548,
              "XAD": 1.6127
            },
            "x_price": 74046.5,
            "x_idx": 215,
            "x_order": 8,
            "a_price": 67300.0,
            "a_idx": 233,
            "a_order": 3,
            "b_price": 71999.9,
            "b_idx": 236,
            "b_order": 5,
            "c_price": 74868.0,
            "c_idx": 271,
            "c_order": 5,
            "d_idx": 293
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.645,
            "ratio_score": 0.383,
            "prz_score": 0.941,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 74203.6,
            "prz_range": [
              74122.63,
              75813.61
            ],
            "prz_width_pct": 2.256,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.45,
            "price_to_prz_pct_raw": -0.447,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "post_D_close_progress"
              ],
              "reaction_score": 0.9,
              "reaction_detail": {
                "reaction_score": 0.9,
                "reaction_move_ratio_ad": 0.738,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 4,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 74968.12,
              "a_price": 79455.0,
              "tp1_ad_382": 76682.11,
              "tp2_ad_618": 77741.01,
              "tp3_a_or_structure_liquidity": 79455.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5947,
              "ABC": 0.6294,
              "BCD": 1.836,
              "XAD": 0.9076
            },
            "x_price": 73669.0,
            "x_idx": 262,
            "x_order": 3,
            "a_price": 79455.0,
            "a_idx": 269,
            "a_order": 5,
            "b_price": 76014.2,
            "b_idx": 290,
            "b_order": 3,
            "c_price": 78180.0,
            "c_idx": 293,
            "c_order": 3,
            "d_idx": 295
          },
          {
            "pattern": "butterfly",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "low",
            "pattern_score": 0.607,
            "ratio_score": 0.366,
            "prz_score": 0.983,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 71999.9,
            "prz_range": [
              71921.47,
              73321.87
            ],
            "prz_width_pct": 1.928,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -3.56,
            "price_to_prz_pct_raw": -3.5629,
            "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.738,
                "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": "butterfly",
              "d_price": 72621.67,
              "a_price": 62401.7,
              "tp1_ad_382": 68717.64,
              "tp2_ad_618": 66305.73,
              "tp3_a_or_structure_liquidity": 62401.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.8899,
              "ABC": 0.5831,
              "BCD": 1.4517,
              "XAD": 1.1243
            },
            "x_price": 70938.5,
            "x_idx": 198,
            "x_order": 5,
            "a_price": 62401.7,
            "a_idx": 207,
            "a_order": 8,
            "b_price": 69999.0,
            "b_idx": 208,
            "b_order": 3,
            "c_price": 65569.2,
            "c_idx": 219,
            "c_order": 5,
            "d_idx": 236
          },
          {
            "pattern": "shark",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.874,
            "ratio_score": 1.0,
            "prz_score": 0.783,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 74874.67,
            "prz_range": [
              74356.58,
              75392.76
            ],
            "prz_width_pct": 1.384,
            "prz_confluence_count": 2,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT"
            ],
            "price_to_prz_pct": -0.57,
            "price_to_prz_pct_raw": -0.5711,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "shark",
              "d_price": 74874.67,
              "a_price": 71999.9,
              "tp1_ad_382": 73776.51,
              "tp2_ad_618": 73098.06,
              "tp3_a_or_structure_liquidity": 71999.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.446,
              "ABC": 1.1548
            },
            "x_price": 65569.2,
            "x_idx": 219,
            "x_order": 5,
            "a_price": 71999.9,
            "a_idx": 236,
            "a_order": 5,
            "b_price": 74868.0,
            "b_idx": 271,
            "b_order": 5,
            "c_price": 78180.0,
            "c_idx": 293,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.863,
            "ratio_score": 1.0,
            "prz_score": 0.783,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 74933.88,
            "prz_range": [
              74654.77,
              75212.98
            ],
            "prz_width_pct": 0.745,
            "prz_confluence_count": 2,
            "prz_fib_families": [
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.49,
            "price_to_prz_pct_raw": -0.4924,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "bat",
              "d_price": 74933.88,
              "a_price": 64918.2,
              "tp1_ad_382": 71107.89,
              "tp2_ad_618": 68744.19,
              "tp3_a_or_structure_liquidity": 64918.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.3944,
              "ABC": 0.8266
            },
            "x_price": 75998.9,
            "x_idx": 228,
            "x_order": 8,
            "a_price": 64918.2,
            "a_idx": 240,
            "a_order": 8,
            "b_price": 69288.0,
            "b_idx": 243,
            "b_order": 3,
            "c_price": 65676.1,
            "c_idx": 244,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "shark",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.857,
            "ratio_score": 0.94,
            "prz_score": 0.798,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 76349.56,
            "prz_range": [
              75066.09,
              77633.02
            ],
            "prz_width_pct": 3.362,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.39,
            "price_to_prz_pct_raw": 1.3875,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "shark",
              "d_price": 76349.56,
              "a_price": 65569.2,
              "tp1_ad_382": 72231.46,
              "tp2_ad_618": 69687.3,
              "tp3_a_or_structure_liquidity": 65569.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4387,
              "ABC": 1.1781
            },
            "x_price": 74046.5,
            "x_idx": 215,
            "x_order": 8,
            "a_price": 65569.2,
            "a_idx": 219,
            "a_order": 5,
            "b_price": 69288.0,
            "b_idx": 243,
            "b_order": 3,
            "c_price": 73669.0,
            "c_idx": 262,
            "c_order": 3,
            "d_idx": null
          }
        ],
        "actionable_patterns_list": [
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.909,
            "prz_proximity": "active",
            "prz_range": [
              74594.52,
              75813.87
            ],
            "prz_reversal_direction": "up",
            "price_to_prz_pct": -0.13,
            "high_confluence_prz": true,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 75204.19,
              "a_price": 79455.0,
              "tp1_ad_382": 76828.0,
              "tp2_ad_618": 77831.19,
              "tp3_a_or_structure_liquidity": 79455.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "GARTLEY FORMING HIGH PRZ $74,594.52-$75,813.87: expected reversal UP if price reacts in zone"
          }
        ],
        "best_council_prz": {
          "pattern": "gartley",
          "signal": "bullish",
          "completion_status": "forming",
          "pattern_quality": "strict",
          "quality": "high",
          "pattern_score": 0.909,
          "ratio_score": 0.862,
          "prz_score": 1.0,
          "prz_proximity": "active",
          "action_status": "active",
          "high_confluence_prz": true,
          "d_price": 75204.19,
          "prz_range": [
            74594.52,
            75813.87
          ],
          "prz_width_pct": 1.621,
          "prz_confluence_count": 3,
          "prz_fib_families": [
            "ABCD",
            "BC_EXT",
            "XAD"
          ],
          "price_to_prz_pct": -0.13,
          "price_to_prz_pct_raw": -0.1335,
          "harmonic_vote_state": {
            "authority": "pre_confirmation_reversal_candidate",
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "confirmation_reasons": [],
            "reaction_score": 0.0,
            "reaction_detail": {
              "reaction_score": 0.0,
              "reasons": []
            },
            "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
            "standalone_path_override_allowed": false
          },
          "directional_vote_weight": 0.35,
          "confirmed_reaction": false,
          "standalone_path_override_allowed": false,
          "tp_ladder": {
            "direction": "bullish",
            "source": "gartley",
            "d_price": 75204.19,
            "a_price": 79455.0,
            "tp1_ad_382": 76828.0,
            "tp2_ad_618": 77831.19,
            "tp3_a_or_structure_liquidity": 79455.0,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          "ratios": {
            "XAB": 0.5947,
            "ABC": 0.6294
          },
          "x_price": 73669.0,
          "x_idx": 262,
          "x_order": 3,
          "a_price": 79455.0,
          "a_idx": 269,
          "a_order": 5,
          "b_price": 76014.2,
          "b_idx": 290,
          "b_order": 3,
          "c_price": 78180.0,
          "c_idx": 293,
          "c_order": 3,
          "d_idx": null
        },
        "best_tp_ladder": {
          "direction": "bullish",
          "source": "gartley",
          "d_price": 75204.19,
          "a_price": 79455.0,
          "tp1_ad_382": 76828.0,
          "tp2_ad_618": 77831.19,
          "tp3_a_or_structure_liquidity": 79455.0,
          "note": "Use as strong TP ladder context; not standalone path authority."
        },
        "tp_ladder": [
          {
            "direction": "bullish",
            "source": "gartley",
            "d_price": 75204.19,
            "a_price": 79455.0,
            "tp1_ad_382": 76828.0,
            "tp2_ad_618": 77831.19,
            "tp3_a_or_structure_liquidity": 79455.0,
            "note": "Use as strong TP ladder context; not standalone path authority."
          }
        ],
        "validated_tp_ladder": [],
        "harmonic_governance": {
          "role": "PRZ reaction + TP ladder confluence, not standalone path engine",
          "pre_confirmation_weight_range": [
            0.25,
            0.35
          ],
          "post_confirmation_vote_weight_range": [
            0.5,
            0.6
          ],
          "standalone_path_override_allowed": false,
          "opposes_core_path_policy": "branch/reversal-risk/reaction-zone unless lower-TF structure and derivatives also confirm",
          "aligns_with_core_path_policy": "modest confidence lift plus strong TP ladder influence"
        },
        "execution_readiness": "ready",
        "directional_scores": {
          "bullish": 0.192,
          "bearish": 0
        },
        "directional_score_total": 0.192,
        "directional_dominance": 1.0
      },
      "raw_llm_response": "{\n  \"signal\": \"bullish\",\n  \"confidence\": 0.42,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.62,\n  \"setup_signals\": [\n    \"현재가 $75,304.70이 엄격/고품질 bullish Gartley 활성 PRZ $74,594.52-$75,813.87 내부에 위치\",\n    \"Gartley 예상 D값 $75,204.19와 현재가 괴리 -0.13%로 PRZ 반응 감시 구간\",\n    \"PRZ confluence count 3: ABCD + BC_EXT + XAD가 동일 구간에 중첩\",\n    \"완료된 candidate bullish Gartley가 $74,122.63-$75,813.61 PRZ에서 반응 확인: AD 0.382 반응 도달, reaction_score 0.90\",\n    \"상방 TP ladder: $76,828.00, $77,831.19, $79,455.00\"\n  ],\n  \"reasoning\": \"현재 핵심 패턴은 strict/high bullish Gartley이며 PRZ는 $74,594.52-$75,813.87, 예상 D는 $75,204.19로 현재가 $75,304.70이 이미 활성 반전 후보 구간 안에 있다. 다만 이 Gartley는 아직 forming 상태이고 confirmed_reaction=false, reaction_score=0.0이므로 구조 전환을 확정할 수 없으며 harmonic_vote_state도 pre_confirmation_reversal_candidate에 불과하다. 별도로 completed candidate bullish Gartley는 $74,203.60 D 이후 AD 0.382 반응을 충족해 reaction_score 0.90을 보였지만 candidate 등급이므로 단독 방향성 지배력은 제한된다. 따라서 구조_bias는 확정 BOS/CHoCH 부재로 neutral, setup_bias는 활성 고품질 bullish PRZ와 TP ladder confluence 때문에 bullish로 평가한다.\",\n  \"key_levels\": {\n    \"support\": [\n      75204.19,\n      74594.52,\n      74203.6,\n      73669.0,\n      72028.1\n    ],\n    \"resistance\": [\n      75813.87,\n      76828.0,\n      77423.59,\n      77599.17,\n      77831.19,\n      79455.0\n    ]\n  },\n  \"time_horizon\": \"medium term\",\n  \"invalidation_level\": \"$73,669.00 일봉 종가 하회\",\n  \"risk_scenario\": \"가격이 $74,594.52-$75,813.87 PRZ에서 명확한 거부 반응 없이 하방 이탈하고 특히 $73,669.00을 일봉 종가로 잃으면 bullish Gartley의 D 방어가 실패한다. 이 경우 $72,028.10-$73,671.68의 lower bullish Butterfly watch PRZ까지 하락 확장이 열리며, 반등 시나리오는 단순 기술적 반응으로 격하된다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "candlestick": {
      "agent_id": "candlestick",
      "display_name": "Candlestick Reader",
      "signal": "bearish",
      "confidence": 0.58,
      "structure_bias": "bearish",
      "setup_bias": "bearish",
      "setup_score": 0.62,
      "setup_signals": [
        "현재가 $75,304.70가 EMA20 $77,423.59 및 EMA120 $77,599.17 아래에 위치해 단기·중기 저항대 하단 수용",
        "7일 고점 $78,180.00 부근에서 반락 후 최근 2개 일봉이 연속 음봉(-1.8%, -0.8%)으로 마감",
        "최근 패턴 bearish_engulfing@298 감지: 단기 반등 후 매도 압력이 재유입된 후보 신호",
        "evening_star@294 및 bearish_engulfing@294 동시 출현: $77,000~$78,180 저항권에서 약세 반전 후보",
        "고거래량 패턴이 없어 확정 신호는 아니지만 bear_score 2.3000, bull_score 0으로 캔들 모멘텀은 매도 우위"
      ],
      "reasoning": "BTC는 현재 $75,304.70으로 EMA20 $77,423.59보다 2.7%, EMA120 $77,599.17보다 3.0% 아래에 있어 단기 반등 시 $77,400~$77,600 구간이 1차 저항으로 작동할 가능성이 큽니다. 최근 5개 캔들은 3연속 양봉 이후 -1.8%, -0.8% 음봉으로 전환되었고, bearish_engulfing@298 및 evening_star@294가 감지되어 $78,180.00 7일 고점 부근에서 매수세가 소진된 모습입니다. 다만 best_pattern_quality가 0.456으로 후보 등급에 머물고 high_volume_patterns가 없기 때문에 강한 확정형 반전보다는 약세 우위의 단기 셋업으로 해석합니다. 구조적으로는 가격이 주요 EMA 클러스터 아래에서 거래되고 EMA240 $84,212.93 대비 10.6% 낮아 회복 전까지는 약세 구조를 우선합니다.",
      "key_levels": {
        "support": [
          74203.6,
          73325.17
        ],
        "resistance": [
          77423.59,
          77599.17,
          78180.0,
          84212.93
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$78,180.00 일봉 종가 상향 돌파",
      "risk_scenario": "$78,180.00을 일봉 기준으로 회복하면 최근 bearish engulfing과 evening star는 실패 신호가 되며, 숏 커버링으로 EMA240 $84,212.93 방향의 반등이 열릴 수 있습니다.",
      "data_quality": "medium",
      "metrics": {
        "total_patterns_detected": 134,
        "recent_patterns": 4,
        "pattern_list": [
          "bearish_engulfing@294",
          "bearish_engulfing@298",
          "evening_star@294",
          "doji@293"
        ],
        "atr_value": 1979.53,
        "vol_avg_20": 117076.05,
        "high_volume_patterns": [],
        "pattern_candidates": [
          {
            "pattern": "evening_star",
            "signal": "bearish",
            "pattern_quality": 0.456,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "bearish_engulfing",
            "signal": "bearish",
            "pattern_quality": 0.447,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "bearish_engulfing",
            "signal": "bearish",
            "pattern_quality": 0.431,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "doji",
            "signal": "neutral",
            "pattern_quality": 0.355,
            "tier": "candidate",
            "high_volume": false
          }
        ],
        "best_pattern_quality": 0.456,
        "bull_score": 0,
        "bear_score": 2.3
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.58,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.62,\n  \"setup_signals\": [\n    \"현재가 $75,304.70가 EMA20 $77,423.59 및 EMA120 $77,599.17 아래에 위치해 단기·중기 저항대 하단 수용\",\n    \"7일 고점 $78,180.00 부근에서 반락 후 최근 2개 일봉이 연속 음봉(-1.8%, -0.8%)으로 마감\",\n    \"최근 패턴 bearish_engulfing@298 감지: 단기 반등 후 매도 압력이 재유입된 후보 신호\",\n    \"evening_star@294 및 bearish_engulfing@294 동시 출현: $77,000~$78,180 저항권에서 약세 반전 후보\",\n    \"고거래량 패턴이 없어 확정 신호는 아니지만 bear_score 2.3000, bull_score 0으로 캔들 모멘텀은 매도 우위\"\n  ],\n  \"reasoning\": \"BTC는 현재 $75,304.70으로 EMA20 $77,423.59보다 2.7%, EMA120 $77,599.17보다 3.0% 아래에 있어 단기 반등 시 $77,400~$77,600 구간이 1차 저항으로 작동할 가능성이 큽니다. 최근 5개 캔들은 3연속 양봉 이후 -1.8%, -0.8% 음봉으로 전환되었고, bearish_engulfing@298 및 evening_star@294가 감지되어 $78,180.00 7일 고점 부근에서 매수세가 소진된 모습입니다. 다만 best_pattern_quality가 0.456으로 후보 등급에 머물고 high_volume_patterns가 없기 때문에 강한 확정형 반전보다는 약세 우위의 단기 셋업으로 해석합니다. 구조적으로는 가격이 주요 EMA 클러스터 아래에서 거래되고 EMA240 $84,212.93 대비 10.6% 낮아 회복 전까지는 약세 구조를 우선합니다.\",\n  \"key_levels\": {\n    \"support\": [\n      74203.6,\n      73325.17\n    ],\n    \"resistance\": [\n      77423.59,\n      77599.17,\n      78180.0,\n      84212.93\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$78,180.00 일봉 종가 상향 돌파\",\n  \"risk_scenario\": \"$78,180.00을 일봉 기준으로 회복하면 최근 bearish engulfing과 evening star는 실패 신호가 되며, 숏 커버링으로 EMA240 $84,212.93 방향의 반등이 열릴 수 있습니다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "ict": {
      "agent_id": "ict",
      "display_name": "ICT Trader",
      "signal": "neutral",
      "confidence": 0.35,
      "structure_bias": "bullish",
      "setup_bias": "neutral",
      "setup_score": 0.35,
      "setup_signals": [
        "가격 $75,304.70이 EQ $76,628.35 아래의 discount 영역에 위치하여 매도 추격보다는 반등 후보 구간",
        "전일 저가 $75,641.20을 하향 이탈하여 sell-side liquidity가 일부 회수됨",
        "다만 active bullish OB 0개, active bearish OB 0개로 즉시 반응할 명확한 기관 주문블록 부재",
        "unfilled bull/bear FVG가 모두 0개로 미체결 불균형 기반의 강한 자석 가격대 부재",
        "현재가가 EMA20 $77,423.59, EMA120 $77,599.17, EMA240 $84,212.93 아래에 있어 단기 반등 setup의 신뢰도 제한"
      ],
      "reasoning": "확정 구조 기준으로는 최근 구조 이벤트가 $75,998.90 상방 BOS_bullish였기 때문에 structure_bias는 아직 bullish로 판정하지만, 현재가 $75,304.70이 그 BOS 레벨 아래로 되밀리며 수용력이 약합니다. 가격은 range high $82,828.70와 range low $70,428.00의 EQ $76,628.35 아래 discount에 있어 매도 추격 구간은 아니지만, 전일 저가 $75,641.20을 이미 이탈해 단기 sell-side liquidity를 회수했습니다. 그러나 최근 liquidity sweep 지표가 비어 있고, active OB와 unfilled FVG가 모두 0개라서 기관 order flow 관점의 고확률 반전 근거는 부족합니다. bear_score 7.70이 bull_score 7.50보다 소폭 우위이고, 가격이 EMA20/120/240 아래에 있으므로 확정 구조는 약한 bullish, 실행 setup은 neutral로 분리해서 봅니다.",
      "key_levels": {
        "support": [
          74203.6,
          70428.0
        ],
        "resistance": [
          75641.2,
          75998.9,
          76628.35,
          78077.1,
          82828.7
        ]
      },
      "time_horizon": "short to medium term",
      "invalidation_level": "$78,077.10 상향 회복 및 일봉 종가 안착 시 중립 관점은 bullish continuation으로 전환, 반대로 $74,203.60 하향 이탈 시 bearish 확장 시나리오 우세",
      "risk_scenario": "반대 시나리오는 $75,641.20 전일 저가 회복 실패 후 $74,203.60 7일 저가를 재차 이탈하는 경우이며, 이때 discount 반등 기대가 무효화되고 range low $70,428.00까지 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": 1,
        "unfilled_bull_fvg_count": 0,
        "unfilled_bear_fvg_count": 0,
        "bull_fvg_ranges": [],
        "bear_fvg_ranges": [],
        "fvg_open_count": 0,
        "fvg_mitigated_count": 67,
        "fvg_open_zones": [],
        "bos_choch_events": [
          "BOS_bullish",
          "CHoCH_bearish",
          "BOS_bearish",
          "BOS_bullish",
          "CHoCH_bearish",
          "BOS_bullish"
        ],
        "bos_choch_levels": [
          {
            "type": "BOS_bullish",
            "level": 117875.2
          },
          {
            "type": "CHoCH_bearish",
            "level": 108566.0
          },
          {
            "type": "BOS_bearish",
            "level": 101516.5
          },
          {
            "type": "BOS_bullish",
            "level": 94555.0
          },
          {
            "type": "CHoCH_bearish",
            "level": 84408.6
          },
          {
            "type": "BOS_bullish",
            "level": 75998.9
          }
        ],
        "bos_sequence": [
          "BOS_bullish",
          "CHoCH_bearish",
          "BOS_bearish",
          "BOS_bullish",
          "CHoCH_bearish",
          "BOS_bullish"
        ],
        "consecutive_bull_bos": 1,
        "consecutive_bear_bos": 0,
        "recent_liq_sweeps": [],
        "recent_sweep_levels": [],
        "liquidity_resting": [],
        "current_zone": "discount",
        "eq_level": 76628.35,
        "range_high": 82828.7,
        "range_low": 70428.0,
        "bull_score": 7.5,
        "bear_score": 7.7,
        "setup_bias": "neutral",
        "setup_score": 0.35,
        "setup_signals": [
          "bullish BOS above $117,875.20",
          "bullish BOS above $94,555.00",
          "bearish CHoCH below $108,566.00",
          "bearish BOS below $101,516.50"
        ],
        "retracement_direction": "bullish",
        "current_retracement_pct": 40.1,
        "deepest_retracement_pct": 48.2,
        "previous_day_high": 78077.1,
        "previous_day_low": 75641.2,
        "broken_prev_high": false,
        "broken_prev_low": true,
        "sessions": {}
      },
      "raw_llm_response": "{\n  \"signal\": \"neutral\",\n  \"confidence\": 0.35,\n  \"structure_bias\": \"bullish\",\n  \"setup_bias\": \"neutral\",\n  \"setup_score\": 0.35,\n  \"setup_signals\": [\n    \"가격 $75,304.70이 EQ $76,628.35 아래의 discount 영역에 위치하여 매도 추격보다는 반등 후보 구간\",\n    \"전일 저가 $75,641.20을 하향 이탈하여 sell-side liquidity가 일부 회수됨\",\n    \"다만 active bullish OB 0개, active bearish OB 0개로 즉시 반응할 명확한 기관 주문블록 부재\",\n    \"unfilled bull/bear FVG가 모두 0개로 미체결 불균형 기반의 강한 자석 가격대 부재\",\n    \"현재가가 EMA20 $77,423.59, EMA120 $77,599.17, EMA240 $84,212.93 아래에 있어 단기 반등 setup의 신뢰도 제한\"\n  ],\n  \"reasoning\": \"확정 구조 기준으로는 최근 구조 이벤트가 $75,998.90 상방 BOS_bullish였기 때문에 structure_bias는 아직 bullish로 판정하지만, 현재가 $75,304.70이 그 BOS 레벨 아래로 되밀리며 수용력이 약합니다. 가격은 range high $82,828.70와 range low $70,428.00의 EQ $76,628.35 아래 discount에 있어 매도 추격 구간은 아니지만, 전일 저가 $75,641.20을 이미 이탈해 단기 sell-side liquidity를 회수했습니다. 그러나 최근 liquidity sweep 지표가 비어 있고, active OB와 unfilled FVG가 모두 0개라서 기관 order flow 관점의 고확률 반전 근거는 부족합니다. bear_score 7.70이 bull_score 7.50보다 소폭 우위이고, 가격이 EMA20/120/240 아래에 있으므로 확정 구조는 약한 bullish, 실행 setup은 neutral로 분리해서 봅니다.\",\n  \"key_levels\": {\n    \"support\": [\n      74203.6,\n      70428.0\n    ],\n    \"resistance\": [\n      75641.2,\n      75998.9,\n      76628.35,\n      78077.1,\n      82828.7\n    ]\n  },\n  \"time_horizon\": \"short to medium term\",\n  \"invalidation_level\": \"$78,077.10 상향 회복 및 일봉 종가 안착 시 중립 관점은 bullish continuation으로 전환, 반대로 $74,203.60 하향 이탈 시 bearish 확장 시나리오 우세\",\n  \"risk_scenario\": \"반대 시나리오는 $75,641.20 전일 저가 회복 실패 후 $74,203.60 7일 저가를 재차 이탈하는 경우이며, 이때 discount 반등 기대가 무효화되고 range low $70,428.00까지 sell-side liquidity 확장 가능성이 커집니다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "wyckoff": {
      "agent_id": "wyckoff",
      "display_name": "Wyckoff Expert",
      "signal": "neutral",
      "confidence": 0.62,
      "structure_bias": "bullish",
      "setup_bias": "neutral",
      "setup_score": 0.45,
      "setup_signals": [
        "확정 ACC 구조: SC $80,600.00 → AR $93,080.00 → ST $84,408.60 → Spring $65,595.70 → TERMINAL_SPRING $74,868.00 → SOS $82,828.70",
        "현재가 $75,304.70은 TERMINAL_SPRING $74,868.00 바로 위에 있어 LPS/테스트 후보 구간이나 아직 확인되지 않음",
        "현재가가 주 범위 하단 SC $80,600.00 및 SOS $82,828.70 아래에 있어 SOS 이후 수요 지속성이 아직 약함",
        "EMA20 $77,423.59 및 EMA120 $77,599.17 아래에서 거래 중이므로 단기 reclaim 확인 전까지 즉시 상승 셋업은 제한적",
        "주 범위 EQ 약 $86,840.00 이하의 discount 위치이지만, $80,600.00 재진입 전에는 구조적 강세와 실행 셋업을 분리해서 봐야 함"
      ],
      "reasoning": "Wyckoff 구조상 regime은 ACC, regime_state는 confirmed_acc이며 acc_score 92.5와 regime_fitness 0.925로 누적 구조 자체는 bullish로 판정된다. 이벤트 체인은 SC $80,600.00, AR $93,080.00, ST $84,408.60, Spring $65,595.70, TERMINAL_SPRING $74,868.00, SOS $82,828.70로 Phase D까지 진행된 상태다. 다만 현재가 $75,304.70은 SOS $82,828.70 이후 되밀려 주 범위 하단 $80,600.00 아래에 있으며, TERMINAL_SPRING $74,868.00 근처를 재테스트하는 LPS 후보일 뿐 아직 LPS 확정은 아니다. 따라서 구조 편향은 bullish지만, 즉시 경로는 $74,868.00 방어 여부와 $77,423.59~$80,600.00 reclaim 확인 전까지 중립/범위권으로 보는 것이 타당하다.",
      "key_levels": {
        "support": [
          74868.0,
          74203.6,
          65595.7
        ],
        "resistance": [
          77423.59,
          77599.17,
          80600.0,
          82828.7,
          93080.0
        ]
      },
      "time_horizon": "medium term",
      "invalidation_level": "$65,595.70",
      "risk_scenario": "$74,868.00 TERMINAL_SPRING 구간을 이탈하고 특히 Spring 저점 $65,595.70 아래로 내려가면 Phase D의 SOS 해석은 실패로 기울며, ACC 구조는 재평가되어야 한다. 반대로 $77,423.59~$77,599.17 EMA대와 $80,600.00을 회복한 뒤 $82,828.70 SOS 고점을 다시 압박하면 LPS 테스트 성공 가능성이 높아진다.",
      "data_quality": "medium",
      "metrics": {
        "acc_score": 92.5,
        "dis_score": 81.2,
        "regime": "ACC",
        "regime_state": "confirmed_acc",
        "structure_bias": "bullish",
        "phase_context": "confirmed_acc / accumulation / Phase D",
        "phases_detected": [
          "SC",
          "AR",
          "ST",
          "Spring",
          "TERMINAL_SPRING",
          "SOS"
        ],
        "last_phase": "SOS",
        "phase_candidates": [
          {
            "label": "SC",
            "side": "low",
            "idx": 112,
            "price": 80600.0,
            "color": "#ffd166"
          },
          {
            "label": "AR",
            "side": "high",
            "idx": 119,
            "price": 93080.0,
            "color": "#06d6a0"
          },
          {
            "label": "ST",
            "side": "low",
            "idx": 139,
            "price": 84408.6,
            "color": "#118ab2"
          },
          {
            "label": "Spring",
            "side": "low",
            "idx": 202,
            "price": 65595.7,
            "color": "#f9844a"
          },
          {
            "label": "TERMINAL_SPRING",
            "side": "low",
            "idx": 271,
            "price": 74868.0,
            "color": "#f3722c"
          },
          {
            "label": "SOS",
            "side": "high",
            "idx": 278,
            "price": 82828.7,
            "color": "#06d6a0"
          }
        ],
        "phase_structures": [
          {
            "structure_id": "1d_cycle_1",
            "sequence": 1,
            "timeframe": "1d",
            "regime": "accumulation",
            "role": "current_structure_candidate",
            "is_active": true,
            "is_completed": false,
            "is_confirmed": true,
            "structure_bias": "bullish",
            "phase_context": "accumulation",
            "start_idx": 112,
            "end_idx": 278,
            "phase_count": 6,
            "phases": [
              {
                "label": "SC",
                "side": "low",
                "idx": 112,
                "price": 80600.0,
                "color": "#ffd166",
                "dt": "2025-11-21 09:00:00+09:00"
              },
              {
                "label": "AR",
                "side": "high",
                "idx": 119,
                "price": 93080.0,
                "color": "#06d6a0",
                "dt": "2025-11-28 09:00:00+09:00"
              },
              {
                "label": "ST",
                "side": "low",
                "idx": 139,
                "price": 84408.6,
                "color": "#118ab2",
                "dt": "2025-12-18 09:00:00+09:00"
              },
              {
                "label": "Spring",
                "side": "low",
                "idx": 202,
                "price": 65595.7,
                "color": "#f9844a",
                "dt": "2026-02-19 09:00:00+09:00"
              },
              {
                "label": "TERMINAL_SPRING",
                "side": "low",
                "idx": 271,
                "price": 74868.0,
                "color": "#f3722c",
                "dt": "2026-04-29 09:00:00+09:00"
              },
              {
                "label": "SOS",
                "side": "high",
                "idx": 278,
                "price": 82828.7,
                "color": "#06d6a0",
                "dt": "2026-05-06 09:00:00+09:00"
              }
            ]
          }
        ],
        "active_structure_id": "1d_cycle_1",
        "primary_structure_id": "1d_cycle_1",
        "structure_count": 1,
        "regime_fitness": 0.9249999999999999,
        "current_event": "SOS",
        "major_phase": "D",
        "pos_in_range": 0.5,
        "main_range_low": 80600.0,
        "main_range_high": 93080.0
      },
      "raw_llm_response": "{\n  \"signal\": \"neutral\",\n  \"confidence\": 0.62,\n  \"structure_bias\": \"bullish\",\n  \"setup_bias\": \"neutral\",\n  \"setup_score\": 0.45,\n  \"setup_signals\": [\n    \"확정 ACC 구조: SC $80,600.00 → AR $93,080.00 → ST $84,408.60 → Spring $65,595.70 → TERMINAL_SPRING $74,868.00 → SOS $82,828.70\",\n    \"현재가 $75,304.70은 TERMINAL_SPRING $74,868.00 바로 위에 있어 LPS/테스트 후보 구간이나 아직 확인되지 않음\",\n    \"현재가가 주 범위 하단 SC $80,600.00 및 SOS $82,828.70 아래에 있어 SOS 이후 수요 지속성이 아직 약함\",\n    \"EMA20 $77,423.59 및 EMA120 $77,599.17 아래에서 거래 중이므로 단기 reclaim 확인 전까지 즉시 상승 셋업은 제한적\",\n    \"주 범위 EQ 약 $86,840.00 이하의 discount 위치이지만, $80,600.00 재진입 전에는 구조적 강세와 실행 셋업을 분리해서 봐야 함\"\n  ],\n  \"reasoning\": \"Wyckoff 구조상 regime은 ACC, regime_state는 confirmed_acc이며 acc_score 92.5와 regime_fitness 0.925로 누적 구조 자체는 bullish로 판정된다. 이벤트 체인은 SC $80,600.00, AR $93,080.00, ST $84,408.60, Spring $65,595.70, TERMINAL_SPRING $74,868.00, SOS $82,828.70로 Phase D까지 진행된 상태다. 다만 현재가 $75,304.70은 SOS $82,828.70 이후 되밀려 주 범위 하단 $80,600.00 아래에 있으며, TERMINAL_SPRING $74,868.00 근처를 재테스트하는 LPS 후보일 뿐 아직 LPS 확정은 아니다. 따라서 구조 편향은 bullish지만, 즉시 경로는 $74,868.00 방어 여부와 $77,423.59~$80,600.00 reclaim 확인 전까지 중립/범위권으로 보는 것이 타당하다.\",\n  \"key_levels\": {\n    \"support\": [\n      74868.0,\n      74203.6,\n      65595.7\n    ],\n    \"resistance\": [\n      77423.59,\n      77599.17,\n      80600.0,\n      82828.7,\n      93080.0\n    ]\n  },\n  \"time_horizon\": \"medium term\",\n  \"invalidation_level\": \"$65,595.70\",\n  \"risk_scenario\": \"$74,868.00 TERMINAL_SPRING 구간을 이탈하고 특히 Spring 저점 $65,595.70 아래로 내려가면 Phase D의 SOS 해석은 실패로 기울며, ACC 구조는 재평가되어야 한다. 반대로 $77,423.59~$77,599.17 EMA대와 $80,600.00을 회복한 뒤 $82,828.70 SOS 고점을 다시 압박하면 LPS 테스트 성공 가능성이 높아진다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "derivatives": {
      "agent_id": "derivatives",
      "display_name": "Derivatives Trader",
      "signal": "bearish",
      "confidence": 0.63,
      "structure_bias": "bearish",
      "setup_bias": "bearish",
      "setup_score": 0.68,
      "setup_signals": [
        "현재가 $75,304.70가 EMA20 $77,423.59, EMA120 $77,599.17, EMA240 $84,212.93 아래에서 거래되며 구조적 저항 하단에 위치",
        "가격은 24시간 -0.79% 하락했지만 long account latest가 0.573으로 상승하고 long_account_change_24h가 +0.070으로 증가해 하락 중 롱 계정 유입",
        "CVD 변화가 -2377.18로 음수이며 cvd_divergence 0.300으로 매수 참여가 약한 상태",
        "OI가 24시간 -0.703% 감소해 신규 추세 추격보다 포지션 언와인딩 성격이 강함",
        "상단 청산 밀집 구간 $76,600, $77,400, $77,800이 저항으로 작동 가능하며, 이 구간 돌파 실패 시 재차 하방 압력 확대 가능",
        "하단 유동성은 $73,900, $72,900, $69,300에 위치해 있어 $74,203.60 7일 저점 이탈 시 하방 유동성 사냥 가능"
      ],
      "reasoning": "현재 BTC는 $75,304.70으로 EMA20 $77,423.59와 EMA120 $77,599.17 아래에 있으며, 7일 고점 $78,180에서 밀린 뒤 단기 구조가 약화된 상태입니다. 파생 포지셔닝에서는 가격 하락 중 long account latest가 0.573까지 상승했고 short account latest는 0.427로 낮아져, 하락장에서 롱 계정이 늘어나는 역추세 롱 쏠림이 관찰됩니다. CVD 변화는 -2377.18로 음수이고 OI는 24시간 -0.703% 감소해 강한 매수 흡수보다는 포지션 정리와 참여 약화가 우세합니다. 상단 $76,600-$77,800 청산 구간은 단기 숏 스퀴즈 리스크이지만, 해당 구간을 회복하지 못하면 $73,900 및 $72,900 하방 유동성으로 이동할 가능성이 더 높습니다.",
      "key_levels": {
        "support": [
          74203.6,
          73900,
          72900,
          69300
        ],
        "resistance": [
          76600,
          77400,
          77800,
          78180,
          78900
        ]
      },
      "time_horizon": "short term, 약 4-24시간",
      "invalidation_level": "$78,180.00",
      "risk_scenario": "반대 시나리오는 가격이 $76,600 상단 청산을 먼저 흡수한 뒤 $77,400-$77,800을 돌파하고, 7일 고점 $78,180까지 회복하는 숏 스퀴즈입니다. 특히 $78,180 위에서 수용되면 약세 셋업은 무효화되며 strongest_liq_level인 $78,900까지 추가 상승 압력이 열릴 수 있습니다.",
      "data_quality": "medium",
      "metrics": {
        "cvd_divergence": 0.3,
        "cvd_change": -2377.18,
        "oi_trend": 0.43,
        "oi_change_pct_24h": -0.703,
        "oi_latest": 99129.766,
        "funding_pressure": 0.422,
        "funding_avg": 7.758e-05,
        "funding_change_24h": 1.856e-05,
        "long_account_ratio": 0.538,
        "short_account_ratio": 0.462,
        "long_account_latest": 0.573,
        "short_account_latest": 0.427,
        "long_account_change_24h": 0.0697,
        "short_account_change_24h": -0.0697,
        "account_flow_label": "long_accounts_rising_short_accounts_falling",
        "account_short_crowding": 0.0,
        "account_long_crowding": 0.314,
        "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.0203,
        "basis_change_lookback": 0.0234,
        "aggregate_score": 0.329,
        "bull_signals": 0,
        "bear_signals": 4,
        "liq_below": [
          [
            73900,
            77134.26551
          ],
          [
            72900,
            78750.34115425
          ],
          [
            69300,
            90841.62750625
          ]
        ],
        "liq_above": [
          [
            76600,
            92466.14983075
          ],
          [
            77400,
            79256.2793483
          ],
          [
            77800,
            105113.9052642
          ]
        ],
        "strongest_liq_level": 78900,
        "fragility_score": 0.574,
        "positioning_extreme": "balanced"
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.63,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.68,\n  \"setup_signals\": [\n    \"현재가 $75,304.70가 EMA20 $77,423.59, EMA120 $77,599.17, EMA240 $84,212.93 아래에서 거래되며 구조적 저항 하단에 위치\",\n    \"가격은 24시간 -0.79% 하락했지만 long account latest가 0.573으로 상승하고 long_account_change_24h가 +0.070으로 증가해 하락 중 롱 계정 유입\",\n    \"CVD 변화가 -2377.18로 음수이며 cvd_divergence 0.300으로 매수 참여가 약한 상태\",\n    \"OI가 24시간 -0.703% 감소해 신규 추세 추격보다 포지션 언와인딩 성격이 강함\",\n    \"상단 청산 밀집 구간 $76,600, $77,400, $77,800이 저항으로 작동 가능하며, 이 구간 돌파 실패 시 재차 하방 압력 확대 가능\",\n    \"하단 유동성은 $73,900, $72,900, $69,300에 위치해 있어 $74,203.60 7일 저점 이탈 시 하방 유동성 사냥 가능\"\n  ],\n  \"reasoning\": \"현재 BTC는 $75,304.70으로 EMA20 $77,423.59와 EMA120 $77,599.17 아래에 있으며, 7일 고점 $78,180에서 밀린 뒤 단기 구조가 약화된 상태입니다. 파생 포지셔닝에서는 가격 하락 중 long account latest가 0.573까지 상승했고 short account latest는 0.427로 낮아져, 하락장에서 롱 계정이 늘어나는 역추세 롱 쏠림이 관찰됩니다. CVD 변화는 -2377.18로 음수이고 OI는 24시간 -0.703% 감소해 강한 매수 흡수보다는 포지션 정리와 참여 약화가 우세합니다. 상단 $76,600-$77,800 청산 구간은 단기 숏 스퀴즈 리스크이지만, 해당 구간을 회복하지 못하면 $73,900 및 $72,900 하방 유동성으로 이동할 가능성이 더 높습니다.\",\n  \"key_levels\": {\n    \"support\": [\n      74203.6,\n      73900,\n      72900,\n      69300\n    ],\n    \"resistance\": [\n      76600,\n      77400,\n      77800,\n      78180,\n      78900\n    ]\n  },\n  \"time_horizon\": \"short term, 약 4-24시간\",\n  \"invalidation_level\": \"$78,180.00\",\n  \"risk_scenario\": \"반대 시나리오는 가격이 $76,600 상단 청산을 먼저 흡수한 뒤 $77,400-$77,800을 돌파하고, 7일 고점 $78,180까지 회복하는 숏 스퀴즈입니다. 특히 $78,180 위에서 수용되면 약세 셋업은 무효화되며 strongest_liq_level인 $78,900까지 추가 상승 압력이 열릴 수 있습니다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "fibonacci": {
      "agent_id": "fibonacci",
      "display_name": "Fibonacci Analyst",
      "signal": "bearish",
      "confidence": 0.58,
      "structure_bias": "neutral",
      "setup_bias": "bearish",
      "setup_score": 0.55,
      "setup_signals": [
        "현재가 $75,304.70가 0.786 되돌림 $76,571.59 아래에 있어 상승 스윙 $74,868→$82,829의 깊은 되돌림 구간에 위치",
        "EQ/0.5 되돌림 $78,848.35 하단의 디스카운트 구간이지만, 0.786 회복 실패 시 스윙 저점 $74,868 유동성 테스트 가능",
        "골든비율 0.618 $77,908.99가 현재가보다 3.46% 위에 있어 단기 반등 시 핵심 저항으로 작용할 가능성",
        "EMA20 $77,423.59 및 EMA120 $77,599.17 아래에서 거래되어 피보나치 저항대 $76,571.59~$77,908.99 돌파 전까지 참여 강도 약함",
        "상단 확장 confluence zone은 $85,081.03 부근이나 현재가와 12% 이상 이격되어 단기 반응 확률은 낮음"
      ],
      "reasoning": "상승 스윙 $74,868→$82,829 기준 현재가 $75,304.70는 0.786 되돌림 $76,571.59 아래에 있으며, 이는 상승 구조가 아직 완전히 붕괴되지는 않았지만 방어력이 크게 약화된 상태를 의미한다. 구조적으로는 스윙 저점 $74,868이 아직 명확히 이탈되지 않았으므로 confirmed bearish BOS로 보기는 어려워 structure_bias는 neutral로 판단한다. 다만 실행 관점에서는 0.786 $76,571.59, 0.618 골든비율 $77,908.99, 0.5 $78,848.35가 모두 상단 저항으로 배열되어 있어 반등 시 매도 압력이 우세한 setup_bias는 bearish이다. 특히 golden ratio $77,908.99를 회복하지 못하면 $74,868 저점 재테스트 및 하방 유동성 사냥 가능성이 높다.",
      "key_levels": {
        "support": [
          74868.0,
          74203.6
        ],
        "resistance": [
          76571.59,
          77908.99,
          78848.35,
          79787.71,
          80949.97,
          82828.7,
          84994.01,
          85081.03
        ]
      },
      "time_horizon": "short/medium term",
      "invalidation_level": "$77,908.99",
      "risk_scenario": "반대 시나리오로 BTC가 0.786 $76,571.59를 회복한 뒤 골든비율 0.618 $77,908.99 위에 안착하면, 현재의 약세 셋업은 무효화되고 $78,848.35, $79,787.71, 이후 $82,828.70 재테스트로 반등 구조가 전환될 수 있다.",
      "data_quality": "medium",
      "metrics": {
        "swing_pair": "Low→High: $74,868 → $82,829",
        "direction": "up",
        "nearest_fib": "ret_0.786",
        "nearest_fib_price": 76571.59,
        "nearest_fib_distance": 1.68,
        "golden_ratio_level": 77908.99,
        "fib_ret_382": 79787.71,
        "fib_ret_618": 77908.99,
        "confluence_zones": [
          {
            "price": 85081.03,
            "count": 2,
            "levels": [
              "ext_1.272",
              "ret_0.382"
            ],
            "cluster_score": 0.6
          }
        ],
        "support_levels": [],
        "resistance_levels": [
          76571.5898,
          77908.9874,
          78848.35
        ],
        "level_candidates": [
          {
            "name": "ret_0.236",
            "price": 80949.97,
            "distance_pct": 7.5,
            "is_support": false,
            "cluster_score": 0.0
          },
          {
            "name": "ret_0.382",
            "price": 79787.71,
            "distance_pct": 5.95,
            "is_support": false,
            "cluster_score": 0.0
          },
          {
            "name": "ret_0.5",
            "price": 78848.35,
            "distance_pct": 4.71,
            "is_support": false,
            "cluster_score": 0.0
          },
          {
            "name": "ret_0.618",
            "price": 77908.99,
            "distance_pct": 3.46,
            "is_support": false,
            "cluster_score": 0.0
          },
          {
            "name": "ret_0.786",
            "price": 76571.59,
            "distance_pct": 1.68,
            "is_support": false,
            "cluster_score": 0.0
          },
          {
            "name": "ext_1.0",
            "price": 82828.7,
            "distance_pct": 9.99,
            "is_support": false,
            "cluster_score": 0.0
          },
          {
            "name": "ext_1.272",
            "price": 84994.01,
            "distance_pct": 12.87,
            "is_support": false,
            "cluster_score": 0.6
          },
          {
            "name": "ext_1.414",
            "price": 86124.43,
            "distance_pct": 14.37,
            "is_support": false,
            "cluster_score": 0.0
          },
          {
            "name": "ext_1.618",
            "price": 87748.41,
            "distance_pct": 16.52,
            "is_support": false,
            "cluster_score": 0.0
          },
          {
            "name": "ext_2.0",
            "price": 90789.4,
            "distance_pct": 20.56,
            "is_support": false,
            "cluster_score": 0.0
          }
        ],
        "confluence_quality": 0.6,
        "fib_reaction_state": "distant",
        "reaction_probability": 0.25
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.58,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.55,\n  \"setup_signals\": [\n    \"현재가 $75,304.70가 0.786 되돌림 $76,571.59 아래에 있어 상승 스윙 $74,868→$82,829의 깊은 되돌림 구간에 위치\",\n    \"EQ/0.5 되돌림 $78,848.35 하단의 디스카운트 구간이지만, 0.786 회복 실패 시 스윙 저점 $74,868 유동성 테스트 가능\",\n    \"골든비율 0.618 $77,908.99가 현재가보다 3.46% 위에 있어 단기 반등 시 핵심 저항으로 작용할 가능성\",\n    \"EMA20 $77,423.59 및 EMA120 $77,599.17 아래에서 거래되어 피보나치 저항대 $76,571.59~$77,908.99 돌파 전까지 참여 강도 약함\",\n    \"상단 확장 confluence zone은 $85,081.03 부근이나 현재가와 12% 이상 이격되어 단기 반응 확률은 낮음\"\n  ],\n  \"reasoning\": \"상승 스윙 $74,868→$82,829 기준 현재가 $75,304.70는 0.786 되돌림 $76,571.59 아래에 있으며, 이는 상승 구조가 아직 완전히 붕괴되지는 않았지만 방어력이 크게 약화된 상태를 의미한다. 구조적으로는 스윙 저점 $74,868이 아직 명확히 이탈되지 않았으므로 confirmed bearish BOS로 보기는 어려워 structure_bias는 neutral로 판단한다. 다만 실행 관점에서는 0.786 $76,571.59, 0.618 골든비율 $77,908.99, 0.5 $78,848.35가 모두 상단 저항으로 배열되어 있어 반등 시 매도 압력이 우세한 setup_bias는 bearish이다. 특히 golden ratio $77,908.99를 회복하지 못하면 $74,868 저점 재테스트 및 하방 유동성 사냥 가능성이 높다.\",\n  \"key_levels\": {\n    \"support\": [\n      74868.0,\n      74203.6\n    ],\n    \"resistance\": [\n      76571.59,\n      77908.99,\n      78848.35,\n      79787.71,\n      80949.97,\n      82828.7,\n      84994.01,\n      85081.03\n    ]\n  },\n  \"time_horizon\": \"short/medium term\",\n  \"invalidation_level\": \"$77,908.99\",\n  \"risk_scenario\": \"반대 시나리오로 BTC가 0.786 $76,571.59를 회복한 뒤 골든비율 0.618 $77,908.99 위에 안착하면, 현재의 약세 셋업은 무효화되고 $78,848.35, $79,787.71, 이후 $82,828.70 재테스트로 반등 구조가 전환될 수 있다.\",\n  \"data_quality\": \"medium\"\n}"
    }
  },
  "chairman_synthesis": {
    "overall_signal": "bullish",
    "overall_confidence": 0.56,
    "execution_setup": {
      "setup_bias": "bearish",
      "setup_strength": 0.64,
      "active_setups": [
        "3명 이상이 약세 실행 셋업을 제시: 캔들, 파생, 피보나치가 모두 setup_score 0.5 초과의 bearish 셋업",
        "현재가 $75,304.70가 EMA20 $77,423.59, EMA120 $77,599.17, EMA240 $84,212.93 아래에 있어 단기·중기 저항 하단에 수용",
        "피보나치 기준 상승 스윙 $74,868.00→$82,828.70의 0.786 되돌림 $76,571.59 아래에 위치",
        "파생 포지셔닝에서 가격 하락 중 long account latest 0.573으로 롱 계정이 증가하고, CVD 변화 -2377.18로 매수 주도력이 약함",
        "캔들상 $78,180.00 부근 반락 이후 최근 2개 일봉 연속 음봉 및 bearish engulfing 후보 감지",
        "최고 품질 후보 셋업은 하모닉 strict/high bullish Gartley PRZ $74,594.52-$75,813.87이나, 아직 confirmed reaction=false라 구조 전환 권한은 제한적"
      ],
      "setup_vs_structure": "상위 구조는 Wyckoff 확정 누적과 ICT의 약한 bullish 구조 때문에 bullish로 남아 있으나, 실행 셋업은 EMA·피보나치·파생·캔들 압력 때문에 bearish로 기울어 있다. 즉, 구조와 실행이 불일치하며 현재 구간은 누적 구조 내 LPS/재테스트 후보이지만 아직 방어 확인이 부족한 상태다."
    },
    "signal_breakdown": {
      "bullish_count": 1,
      "bearish_count": 3,
      "neutral_count": 2
    },
    "key_levels": {
      "support": [
        74868.0,
        74594.52,
        74203.6,
        73900.0,
        72900.0,
        70428.0,
        65595.7
      ],
      "resistance": [
        75641.2,
        75998.9,
        76571.59,
        76628.35,
        77423.59,
        77599.17,
        77908.99,
        78180.0,
        80600.0,
        82828.7
      ]
    },
    "confluences": [
      "Wyckoff의 TERMINAL_SPRING $74,868.00와 Fibonacci의 상승 스윙 저점 $74,868.00이 동일하며, 현재가 $75,304.70는 이 구조적 테스트 구간 바로 위에 있다.",
      "Harmonic, Candlestick, ICT, Derivatives, Fibonacci가 모두 $74,203.60을 주요 하단 참조선 또는 지지로 제시해 $74.2k 부근은 다중 지지 클러스터다.",
      "Candlestick, Derivatives, Wyckoff, Harmonic이 $77,423.59-$77,599.17 EMA20/EMA120 구간을 공통 저항대로 제시한다.",
      "ICT EQ $76,628.35, Fibonacci 0.786 $76,571.59, Derivatives 청산/저항 $76,600이 겹쳐 $76.57k-$76.63k는 단기 구조 회복의 첫 관문이다.",
      "Candlestick의 7일 고점 $78,180.00, ICT 전일 고점 $78,077.10, Derivatives 저항 $77,800-$78,180, Fibonacci 0.618 $77,908.99가 $77.8k-$78.2k 저항 클러스터를 형성한다.",
      "캔들, 파생, 피보나치 3개 분석이 모두 현재 위치의 실행 셋업을 bearish로 평가해 단기 압력은 약세 쪽으로 수렴한다.",
      "Wyckoff와 ICT는 서로 다른 방법론이지만 상위 구조를 bullish로 분류한다. Wyckoff는 확정 누적 Phase D, ICT는 최근 구조 이벤트의 bullish BOS를 근거로 한다."
    ],
    "conflicts": [
      "Wyckoff는 ACC confirmed, Phase D 누적 구조로 bullish 구조를 제시하지만, Candlestick과 Derivatives는 가격이 EMA20 $77,423.59 및 EMA120 $77,599.17 아래에 있어 구조적 약세로 판정한다.",
      "Harmonic은 $74,594.52-$75,813.87 active bullish Gartley PRZ를 제시하지만, 아직 반응 확인이 없어 Candlestick·Derivatives·Fibonacci의 bearish 실행 셋업을 뒤집을 수 없다.",
      "ICT는 현재가가 EQ $76,628.35 아래 discount 영역이라 매도 추격 구간은 아니라고 보지만, Derivatives는 롱 계정 증가와 CVD 약화를 근거로 하방 취약성을 더 크게 본다.",
      "Fibonacci는 $74,868.00 스윙 저점이 아직 명확히 이탈되지 않아 구조를 neutral로 보지만, 실행상으로는 0.786 $76,571.59 아래 수용을 bearish로 해석한다.",
      "Wyckoff의 누적 구조는 장기 수요 흡수 가능성을 시사하지만, 현재 가격은 SC $80,600.00 및 SOS $82,828.70 아래에 있어 SOS 이후 수요 지속성은 아직 확인되지 않았다."
    ],
    "executive_summary": "BTC 1일 구조는 Wyckoff 기준 확정 누적 ACC, Phase D 이후 SOS $82,828.70에서 되밀린 TERMINAL_SPRING $74,868.00 재테스트 후보 구간으로 진단된다. 따라서 overall_signal은 bullish로 유지하지만, 현재가 $75,304.70는 SC $80,600.00와 SOS $82,828.70 아래에 있어 LPS가 확정된 상태는 아니다. 실행 셋업은 캔들·파생·피보나치가 모두 bearish로 수렴하며, $76,571.59-$76,628.35 및 $77,423.59-$77,599.17 저항 아래 수용이 단기 압력의 핵심 조건이다. 하단에서는 $74,868.00와 $74,203.60이 구조적 방어 구간이며, 이 구간이 훼손될 경우 누적 Phase D의 질이 약화된다. 상위 누적 구조 자체의 최종 무효화는 Spring 저점 $65,595.70 이탈로 본다.",
    "raw_llm_response": "{\n  \"overall_signal\": \"bullish\",\n  \"overall_confidence\": 0.56,\n  \"execution_setup\": {\n    \"setup_bias\": \"bearish\",\n    \"setup_strength\": 0.64,\n    \"active_setups\": [\n      \"3명 이상이 약세 실행 셋업을 제시: 캔들, 파생, 피보나치가 모두 setup_score 0.5 초과의 bearish 셋업\",\n      \"현재가 $75,304.70가 EMA20 $77,423.59, EMA120 $77,599.17, EMA240 $84,212.93 아래에 있어 단기·중기 저항 하단에 수용\",\n      \"피보나치 기준 상승 스윙 $74,868.00→$82,828.70의 0.786 되돌림 $76,571.59 아래에 위치\",\n      \"파생 포지셔닝에서 가격 하락 중 long account latest 0.573으로 롱 계정이 증가하고, CVD 변화 -2377.18로 매수 주도력이 약함\",\n      \"캔들상 $78,180.00 부근 반락 이후 최근 2개 일봉 연속 음봉 및 bearish engulfing 후보 감지\",\n      \"최고 품질 후보 셋업은 하모닉 strict/high bullish Gartley PRZ $74,594.52-$75,813.87이나, 아직 confirmed reaction=false라 구조 전환 권한은 제한적\"\n    ],\n    \"setup_vs_structure\": \"상위 구조는 Wyckoff 확정 누적과 ICT의 약한 bullish 구조 때문에 bullish로 남아 있으나, 실행 셋업은 EMA·피보나치·파생·캔들 압력 때문에 bearish로 기울어 있다. 즉, 구조와 실행이 불일치하며 현재 구간은 누적 구조 내 LPS/재테스트 후보이지만 아직 방어 확인이 부족한 상태다.\"\n  },\n  \"signal_breakdown\": {\n    \"bullish_count\": 1,\n    \"bearish_count\": 3,\n    \"neutral_count\": 2\n  },\n  \"key_levels\": {\n    \"support\": [\n      74868.0,\n      74594.52,\n      74203.6,\n      73900.0,\n      72900.0,\n      70428.0,\n      65595.7\n    ],\n    \"resistance\": [\n      75641.2,\n      75998.9,\n      76571.59,\n      76628.35,\n      77423.59,\n      77599.17,\n      77908.99,\n      78180.0,\n      80600.0,\n      82828.7\n    ]\n  },\n  \"confluences\": [\n    \"Wyckoff의 TERMINAL_SPRING $74,868.00와 Fibonacci의 상승 스윙 저점 $74,868.00이 동일하며, 현재가 $75,304.70는 이 구조적 테스트 구간 바로 위에 있다.\",\n    \"Harmonic, Candlestick, ICT, Derivatives, Fibonacci가 모두 $74,203.60을 주요 하단 참조선 또는 지지로 제시해 $74.2k 부근은 다중 지지 클러스터다.\",\n    \"Candlestick, Derivatives, Wyckoff, Harmonic이 $77,423.59-$77,599.17 EMA20/EMA120 구간을 공통 저항대로 제시한다.\",\n    \"ICT EQ $76,628.35, Fibonacci 0.786 $76,571.59, Derivatives 청산/저항 $76,600이 겹쳐 $76.57k-$76.63k는 단기 구조 회복의 첫 관문이다.\",\n    \"Candlestick의 7일 고점 $78,180.00, ICT 전일 고점 $78,077.10, Derivatives 저항 $77,800-$78,180, Fibonacci 0.618 $77,908.99가 $77.8k-$78.2k 저항 클러스터를 형성한다.\",\n    \"캔들, 파생, 피보나치 3개 분석이 모두 현재 위치의 실행 셋업을 bearish로 평가해 단기 압력은 약세 쪽으로 수렴한다.\",\n    \"Wyckoff와 ICT는 서로 다른 방법론이지만 상위 구조를 bullish로 분류한다. Wyckoff는 확정 누적 Phase D, ICT는 최근 구조 이벤트의 bullish BOS를 근거로 한다.\"\n  ],\n  \"conflicts\": [\n    \"Wyckoff는 ACC confirmed, Phase D 누적 구조로 bullish 구조를 제시하지만, Candlestick과 Derivatives는 가격이 EMA20 $77,423.59 및 EMA120 $77,599.17 아래에 있어 구조적 약세로 판정한다.\",\n    \"Harmonic은 $74,594.52-$75,813.87 active bullish Gartley PRZ를 제시하지만, 아직 반응 확인이 없어 Candlestick·Derivatives·Fibonacci의 bearish 실행 셋업을 뒤집을 수 없다.\",\n    \"ICT는 현재가가 EQ $76,628.35 아래 discount 영역이라 매도 추격 구간은 아니라고 보지만, Derivatives는 롱 계정 증가와 CVD 약화를 근거로 하방 취약성을 더 크게 본다.\",\n    \"Fibonacci는 $74,868.00 스윙 저점이 아직 명확히 이탈되지 않아 구조를 neutral로 보지만, 실행상으로는 0.786 $76,571.59 아래 수용을 bearish로 해석한다.\",\n    \"Wyckoff의 누적 구조는 장기 수요 흡수 가능성을 시사하지만, 현재 가격은 SC $80,600.00 및 SOS $82,828.70 아래에 있어 SOS 이후 수요 지속성은 아직 확인되지 않았다.\"\n  ],\n  \"highest_conviction_analyst\": \"Wyckoff Expert — acc_score 92.5, regime_fitness 0.925의 확정 누적 구조를 제시했고, SC $80,600.00 → AR $93,080.00 → ST $84,408.60 → Spring $65,595.70 → TERMINAL_SPRING $74,868.00 → SOS $82,828.70로 이어지는 구체적 Phase D 구조를 가장 명확하게 제시했다. 다만 현재는 LPS 확정이 아니라 TERMINAL_SPRING 재테스트 후보로 평가해야 한다.\",\n  \"invalidation_level\": \"상위 누적 구조의 핵심 무효화는 Spring 저점 $65,595.70 일봉 종가 이탈이다. 단기 Phase D/LPS 후보 관점에서는 $74,868.00 및 $74,203.60 방어 실패가 구조 약화 신호다.\",\n  \"executive_summary\": \"BTC 1일 구조는 Wyckoff 기준 확정 누적 ACC, Phase D 이후 SOS $82,828.70에서 되밀린 TERMINAL_SPRING $74,868.00 재테스트 후보 구간으로 진단된다. 따라서 overall_signal은 bullish로 유지하지만, 현재가 $75,304.70는 SC $80,600.00와 SOS $82,828.70 아래에 있어 LPS가 확정된 상태는 아니다. 실행 셋업은 캔들·파생·피보나치가 모두 bearish로 수렴하며, $76,571.59-$76,628.35 및 $77,423.59-$77,599.17 저항 아래 수용이 단기 압력의 핵심 조건이다. 하단에서는 $74,868.00와 $74,203.60이 구조적 방어 구간이며, 이 구간이 훼손될 경우 누적 Phase D의 질이 약화된다. 상위 누적 구조 자체의 최종 무효화는 Spring 저점 $65,595.70 이탈로 본다.\"\n}"
  },
  "overall_signal": "bullish",
  "overall_confidence": 0.56,
  "operating_path": {
    "path_type": "complex",
    "confidence": 0.52,
    "waypoints": [
      {
        "seq": 1,
        "price": 74203.6,
        "type": "liquidity_sweep",
        "source": "Execution setup BEARISH(64%) — Derivatives/Candlestick/Fibonacci; Wyckoff TERMINAL_SPRING $74,868 스윕; Harmonic 완성형 Gartley D $74,203.60(reaction 0.90) + Candlestick/ICT/Fibonacci 다중 지지 클러스터",
        "description": "실행 셋업이 약세(64%)로 구조보다 단기 우위 — 현재가가 EMA20 $77,423.59/EMA120 $77,599.17 및 0.786 $76,571.59 아래에 수용되고, 롱 계정 증가(0.573)·CVD -2377.18로 하방이 취약하다. 1차 방어선인 TERMINAL_SPRING $74,868.00 아래의 sell-side 유동성을 쓸어내리며, 5개 분석이 겹치는 $74,203.60 클러스터를 테스트하는 sweep으로 본다.",
        "est_hours": 7.0,
        "turning_zone": [
          73800.0,
          74203.6
        ],
        "likely_wick": 74000.0,
        "rejection_confirm": 74594.52,
        "invalid_overshoot": 73600.0,
        "calibration_reasoning": "현재가 아래로 향하는 sell-side 스윕이므로 (rule상 liquidity_sweep는 above지만 방향 맥락상 하방 스윕) zone을 base 아래로 설정. 5개 분석이 겹치는 $74,203.60 클러스터를 상단으로, $73,900 챔버 지지와 $74,000 라운드넘버 마그넷이 하단을 고정. 약 0.2 ATR의 타이트한 지지 밀집대로, $73,600 이탈 시 스윕이 아닌 추세 붕괴."
      },
      {
        "seq": 2,
        "price": 76571.59,
        "type": "resistance_test",
        "source": "Fibonacci 0.786 $76,571.59, ICT EQ $76,628.35, Derivatives 저항 $76,600, Wyckoff 확정 누적(Phase D)/Harmonic 활성 PRZ 반응",
        "description": "Wyckoff 확정 누적과 harmonic 활성 bullish Gartley PRZ($74,594.52-$75,813.87)의 구조적 반응으로 되돌림. 챔버 합류가 지목한 '단기 구조 회복의 첫 관문' Fib 0.786 $76,571.59 / ICT EQ $76,628.35 / Derivatives $76,600 저항대를 테스트하지만, 약세 셋업이 '저항 아래 수용'을 강제해 상단을 제한한다.",
        "est_hours": 15.0,
        "turning_zone": [
          76571.59,
          77150.0
        ],
        "likely_wick": 76700.0,
        "rejection_confirm": 75998.9,
        "invalid_overshoot": 77423.59,
        "calibration_reasoning": "Fib 0.786 $76,571.59 + ICT EQ $76,628.35 '첫 관문' 합류를 하단으로, EMA20 $77,423.59 직하(약세 셋업의 '저항 아래 수용' 제약)를 ~0.3 ATR 상단으로 설정. likely_wick은 EQ 위 buy-side 유동성을 살짝 쓸어내는 $76,700. 인근 harmonic TP1 $76,828은 PRE_CONFIRMATION이라 정책상 앵커에서 제외했고, EMA20 회복 시 약세 캡 무효."
      },
      {
        "seq": 3,
        "price": 74868.0,
        "type": "support_test",
        "source": "Wyckoff TERMINAL_SPRING/LPS $74,868.00, Harmonic PRZ 하단 $74,594.52, Candlestick(연속 음봉·bearish engulfing)/Derivatives 약세 셋업",
        "description": "EQ/0.786 관문에서 약세 셋업(연속 음봉·bearish engulfing·EMA20/120 하단 수용)이 재차 우위를 잡으며 되밀린다. WP1보다 높은 저점으로 TERMINAL_SPRING $74,868.00을 재테스트하는 LPS 후보 구간 — 방어 시 누적 Phase D→마크업 전환 가능성, 이탈 시 누적 구조 질 약화로 갈린다.",
        "est_hours": 23.0,
        "turning_zone": [
          74300.0,
          74868.0
        ],
        "likely_wick": 74594.52,
        "rejection_confirm": 75641.2,
        "invalid_overshoot": 74203.6,
        "calibration_reasoning": "터미널이지만 'WP1보다 높은 저점' 구조 제약이 하단을 $74,203.60 위로 묶어 표준 0.5-0.8 ATR보다 좁게 설정. PRZ 하단/챔버 지지 합류 $74,594.52를 LPS likely_wick으로, TERMINAL_SPRING $74,868을 상단으로 둠. $75,641.2 회복 시 마크업 전환 확인, $74,203.60 이탈 시 누적 구조(higher-low) 무효."
      }
    ],
    "period_extremes": {
      "4h": {
        "expected_high": 75450.0,
        "expected_low": 74700.0,
        "high_first": true
      },
      "8h": {
        "expected_high": 75450.0,
        "expected_low": 74203.6,
        "high_first": true
      },
      "24h": {
        "expected_high": 76571.59,
        "expected_low": 74203.6,
        "high_first": false
      }
    },
    "triggers": {
      "bullish": {
        "price": 77599.17,
        "description": "EQ $76,628.35 관문 회복에 이어 EMA20 $77,423.59-EMA120 $77,599.17 클러스터를 종가 기준으로 되찾으면 약세 실행 셋업이 무효화되고 구조적 bullish 가속 — SOS $82,828.70 방향 마크업 재개 신호."
      },
      "bearish": {
        "price": 73900.0,
        "description": "$74,203.60 다중 지지 클러스터를 이탈해 Derivatives 하방 유동성 $73,900을 지속적으로 깨면 sweep 후 수요 부재가 확인 — $72,900·$70,428 방향 가속, 누적 Phase D 질 약화."
      }
    },
    "scenario_invalidation": 72900.0,
    "raw_llm_response": "```json\n{\n  \"path_type\": \"complex\",\n  \"confidence\": 0.52,\n  \"waypoints\": [\n    {\n      \"seq\": 1,\n      \"price\": 74203.60,\n      \"type\": \"liquidity_sweep\",\n      \"source\": \"Execution setup BEARISH(64%) — Derivatives/Candlestick/Fibonacci; Wyckoff TERMINAL_SPRING $74,868 스윕; Harmonic 완성형 Gartley D $74,203.60(reaction 0.90) + Candlestick/ICT/Fibonacci 다중 지지 클러스터\",\n      \"description\": \"실행 셋업이 약세(64%)로 구조보다 단기 우위 — 현재가가 EMA20 $77,423.59/EMA120 $77,599.17 및 0.786 $76,571.59 아래에 수용되고, 롱 계정 증가(0.573)·CVD -2377.18로 하방이 취약하다. 1차 방어선인 TERMINAL_SPRING $74,868.00 아래의 sell-side 유동성을 쓸어내리며, 5개 분석이 겹치는 $74,203.60 클러스터를 테스트하는 sweep으로 본다.\",\n      \"est_hours\": 7.0\n    },\n    {\n      \"seq\": 2,\n      \"price\": 76571.59,\n      \"type\": \"resistance_test\",\n      \"source\": \"Fibonacci 0.786 $76,571.59, ICT EQ $76,628.35, Derivatives 저항 $76,600, Wyckoff 확정 누적(Phase D)/Harmonic 활성 PRZ 반응\",\n      \"description\": \"Wyckoff 확정 누적과 harmonic 활성 bullish Gartley PRZ($74,594.52-$75,813.87)의 구조적 반응으로 되돌림. 챔버 합류가 지목한 '단기 구조 회복의 첫 관문' Fib 0.786 $76,571.59 / ICT EQ $76,628.35 / Derivatives $76,600 저항대를 테스트하지만, 약세 셋업이 '저항 아래 수용'을 강제해 상단을 제한한다.\",\n      \"est_hours\": 15.0\n    },\n    {\n      \"seq\": 3,\n      \"price\": 74868.00,\n      \"type\": \"support_test\",\n      \"source\": \"Wyckoff TERMINAL_SPRING/LPS $74,868.00, Harmonic PRZ 하단 $74,594.52, Candlestick(연속 음봉·bearish engulfing)/Derivatives 약세 셋업\",\n      \"description\": \"EQ/0.786 관문에서 약세 셋업(연속 음봉·bearish engulfing·EMA20/120 하단 수용)이 재차 우위를 잡으며 되밀린다. WP1보다 높은 저점으로 TERMINAL_SPRING $74,868.00을 재테스트하는 LPS 후보 구간 — 방어 시 누적 Phase D→마크업 전환 가능성, 이탈 시 누적 구조 질 약화로 갈린다.\",\n      \"est_hours\": 23.0\n    }\n  ],\n  \"period_extremes\": {\n    \"4h\":  {\"expected_high\": 75450.0, \"expected_low\": 74700.0,  \"high_first\": true},\n    \"8h\":  {\"expected_high\": 75450.0, \"expected_low\": 74203.60, \"high_first\": true},\n    \"24h\": {\"expected_high\": 76571.59, \"expected_low\": 74203.60, \"high_first\": false}\n  },\n  \"triggers\": {\n    \"bullish\": {\n      \"price\": 77599.17,\n      \"description\": \"EQ $76,628.35 관문 회복에 이어 EMA20 $77,423.59-EMA120 $77,599.17 클러스터를 종가 기준으로 되찾으면 약세 실행 셋업이 무효화되고 구조적 bullish 가속 — SOS $82,828.70 방향 마크업 재개 신호.\"\n    },\n    \"bearish\": {\n      \"price\": 73900.0,\n      \"description\": \"$74,203.60 다중 지지 클러스터를 이탈해 Derivatives 하방 유동성 $73,900을 지속적으로 깨면 sweep 후 수요 부재가 확인 — $72,900·$70,428 방향 가속, 누적 Phase D 질 약화.\"\n    }\n  },\n  \"scenario_invalidation\": 72900.0\n}\n```\n\n**핵심 판단:** 구조(BULLISH)와 실행 셋업(BEARISH 64%)이 불일치하고 setup_strength ≥ 0.5 이므로 첫 waypoint를 약세 방향으로 잡았다. WP1 후보 테이블의 유일 항목 $85,081(12.98% 위·candidate)은 약세 셋업과 정면 충돌해 채택하지 않았고, 다중 분석이 겹치는 하단 클러스터로 WP1을 구성했다. 24시간은 **$74,203 ↔ $76,571 corrective 레인지**(스윕 → 관문 반등 → LPS 재테스트)로 보며, 방향 확정은 EMA20/120 회복(상방) 또는 $73,900 이탈(하방) 트리거에 달려 있다."
  },
  "tp_calibration": {
    "calibrated_waypoints": [
      {
        "seq": 1,
        "base_target": 74203.6,
        "turning_zone": [
          73800.0,
          74203.6
        ],
        "likely_wick": 74000.0,
        "rejection_confirm": 74594.52,
        "invalid_overshoot": 73600.0,
        "calibration_reasoning": "현재가 아래로 향하는 sell-side 스윕이므로 (rule상 liquidity_sweep는 above지만 방향 맥락상 하방 스윕) zone을 base 아래로 설정. 5개 분석이 겹치는 $74,203.60 클러스터를 상단으로, $73,900 챔버 지지와 $74,000 라운드넘버 마그넷이 하단을 고정. 약 0.2 ATR의 타이트한 지지 밀집대로, $73,600 이탈 시 스윕이 아닌 추세 붕괴."
      },
      {
        "seq": 2,
        "base_target": 76571.59,
        "turning_zone": [
          76571.59,
          77150.0
        ],
        "likely_wick": 76700.0,
        "rejection_confirm": 75998.9,
        "invalid_overshoot": 77423.59,
        "calibration_reasoning": "Fib 0.786 $76,571.59 + ICT EQ $76,628.35 '첫 관문' 합류를 하단으로, EMA20 $77,423.59 직하(약세 셋업의 '저항 아래 수용' 제약)를 ~0.3 ATR 상단으로 설정. likely_wick은 EQ 위 buy-side 유동성을 살짝 쓸어내는 $76,700. 인근 harmonic TP1 $76,828은 PRE_CONFIRMATION이라 정책상 앵커에서 제외했고, EMA20 회복 시 약세 캡 무효."
      },
      {
        "seq": 3,
        "base_target": 74868.0,
        "turning_zone": [
          74300.0,
          74868.0
        ],
        "likely_wick": 74594.52,
        "rejection_confirm": 75641.2,
        "invalid_overshoot": 74203.6,
        "calibration_reasoning": "터미널이지만 'WP1보다 높은 저점' 구조 제약이 하단을 $74,203.60 위로 묶어 표준 0.5-0.8 ATR보다 좁게 설정. PRZ 하단/챔버 지지 합류 $74,594.52를 LPS likely_wick으로, TERMINAL_SPRING $74,868을 상단으로 둠. $75,641.2 회복 시 마크업 전환 확인, $74,203.60 이탈 시 누적 구조(higher-low) 무효."
      }
    ],
    "raw_llm_response": "```json\n{\n  \"calibrated_waypoints\": [\n    {\n      \"seq\": 1,\n      \"base_target\": 74203.6,\n      \"turning_zone\": [73800.0, 74203.6],\n      \"likely_wick\": 74000.0,\n      \"rejection_confirm\": 74594.52,\n      \"invalid_overshoot\": 73600.0,\n      \"calibration_reasoning\": \"현재가 아래로 향하는 sell-side 스윕이므로 (rule상 liquidity_sweep는 above지만 방향 맥락상 하방 스윕) zone을 base 아래로 설정. 5개 분석이 겹치는 $74,203.60 클러스터를 상단으로, $73,900 챔버 지지와 $74,000 라운드넘버 마그넷이 하단을 고정. 약 0.2 ATR의 타이트한 지지 밀집대로, $73,600 이탈 시 스윕이 아닌 추세 붕괴.\"\n    },\n    {\n      \"seq\": 2,\n      \"base_target\": 76571.59,\n      \"turning_zone\": [76571.59, 77150.0],\n      \"likely_wick\": 76700.0,\n      \"rejection_confirm\": 75998.9,\n      \"invalid_overshoot\": 77423.59,\n      \"calibration_reasoning\": \"Fib 0.786 $76,571.59 + ICT EQ $76,628.35 '첫 관문' 합류를 하단으로, EMA20 $77,423.59 직하(약세 셋업의 '저항 아래 수용' 제약)를 ~0.3 ATR 상단으로 설정. likely_wick은 EQ 위 buy-side 유동성을 살짝 쓸어내는 $76,700. 인근 harmonic TP1 $76,828은 PRE_CONFIRMATION이라 정책상 앵커에서 제외했고, EMA20 회복 시 약세 캡 무효.\"\n    },\n    {\n      \"seq\": 3,\n      \"base_target\": 74868.0,\n      \"turning_zone\": [74300.0, 74868.0],\n      \"likely_wick\": 74594.52,\n      \"rejection_confirm\": 75641.2,\n      \"invalid_overshoot\": 74203.6,\n      \"calibration_reasoning\": \"터미널이지만 'WP1보다 높은 저점' 구조 제약이 하단을 $74,203.60 위로 묶어 표준 0.5-0.8 ATR보다 좁게 설정. PRZ 하단/챔버 지지 합류 $74,594.52를 LPS likely_wick으로, TERMINAL_SPRING $74,868을 상단으로 둠. $75,641.2 회복 시 마크업 전환 확인, $74,203.60 이탈 시 누적 구조(higher-low) 무효.\"\n    }\n  ]\n}\n```"
  },
  "timing": {
    "stages": {
      "stage1_agents": 188.0,
      "chairman": 135.0,
      "operating_path": 363.6,
      "tp_calibrator": 230.4
    },
    "agents": {},
    "total_s": 917.1
  }
}