{
  "symbol": "BTC/USDT",
  "timeframe": "15m",
  "timestamp": "2026-06-07 09:00 KST",
  "last_price": 60849.7,
  "num_candles": 300,
  "stage1_analyses": {
    "ict": {
      "agent_id": "ict",
      "display_name": "ICT Trader",
      "signal": "bearish",
      "confidence": 0.87,
      "structure_bias": "bearish",
      "setup_bias": "bearish",
      "setup_score": 0.92,
      "setup_signals": [
        "현재가 $60,849.70는 EQ $60,763.45 위에 위치하여 premium zone 진입",
        "현재 되돌림이 65.4%로 깊은 프리미엄 되돌림 구간에 위치",
        "확정 구조상 $63,040.00, $62,300.00, $61,067.60 하향 BOS가 연속 발생",
        "3회 연속 bearish BOS로 기관 흐름은 여전히 하방 우위",
        "상단 $62,861.40~$63,231.80에 candidate bearish OB가 존재하여 중기 공급 구간으로 작용 가능",
        "현재가가 EMA20 $60,680.70 위지만 EMA120 $60,993.15 및 EMA240 $61,710.69 아래에 있어 상위 평균선 저항이 가까움"
      ],
      "reasoning": "확정 구조는 $63,040.00, $62,300.00, $61,067.60을 순차적으로 이탈한 3연속 bearish BOS로 인해 명확히 bearish입니다. 현재가는 $60,849.70로 단기 EQ $60,763.45 위의 premium zone에 있으며, 되돌림 비율도 65.4%로 하락 추세 내 매도 대기 구간에 가깝습니다. 활성 bullish OB와 미충족 bullish FVG가 없고, 상단에는 $62,861.40~$63,231.80 candidate bearish OB가 남아 있어 반등 시 공급 출현 가능성이 큽니다. 단기적으로는 $61,067.60 BOS 레벨과 range high $61,173.50 부근에서 저항을 확인한 뒤 $60,353.40 range low 및 전일 저점 $59,080.00 유동성으로의 하방 재개를 우선 시나리오로 봅니다.",
      "key_levels": {
        "support": [
          60763.45,
          60353.4,
          59080.0
        ],
        "resistance": [
          60993.15,
          61067.6,
          61173.5,
          61985.1,
          62861.4,
          63231.8
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$61,173.50",
      "risk_scenario": "$61,173.50 range high 위로 15분봉 종가가 안착하면 현재 premium 매도 셋업은 실패로 간주해야 하며, 이후 $61,985.10 전일 고점 유동성 및 $62,861.40~$63,231.80 bearish OB까지 숏 커버링 반등이 확장될 수 있습니다.",
      "data_quality": "high",
      "metrics": {
        "order_blocks_total": 2,
        "confirmed_bullish_ob": 0,
        "confirmed_bearish_ob": 0,
        "candidate_bullish_ob": 0,
        "candidate_bearish_ob": 2,
        "active_bullish_ob": 0,
        "active_bearish_ob": 0,
        "nearest_bull_ob_range": null,
        "nearest_bear_ob_range": {
          "bottom": 62861.4,
          "top": 63231.8,
          "quality": "candidate",
          "score": 0.505
        },
        "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": 66,
        "fvg_open_zones": [],
        "bos_choch_events": [
          "BOS_bearish",
          "BOS_bearish",
          "BOS_bearish"
        ],
        "bos_choch_levels": [
          {
            "type": "BOS_bearish",
            "level": 63040.0
          },
          {
            "type": "BOS_bearish",
            "level": 62300.0
          },
          {
            "type": "BOS_bearish",
            "level": 61067.6
          }
        ],
        "bos_sequence": [
          "BOS_bearish",
          "BOS_bearish",
          "BOS_bearish"
        ],
        "consecutive_bull_bos": 0,
        "consecutive_bear_bos": 3,
        "recent_liq_sweeps": [],
        "recent_sweep_levels": [],
        "liquidity_resting": [],
        "current_zone": "premium",
        "eq_level": 60763.45,
        "range_high": 61173.5,
        "range_low": 60353.4,
        "bull_score": 0.0,
        "bear_score": 10.0,
        "setup_bias": "bearish",
        "setup_score": 0.92,
        "setup_signals": [
          "bearish BOS below $63,040.00",
          "bearish BOS below $62,300.00",
          "bearish BOS below $61,067.60",
          "3x consecutive bearish BOS",
          "deep retracement 65.4% in premium zone"
        ],
        "retracement_direction": "bearish",
        "current_retracement_pct": 65.4,
        "deepest_retracement_pct": 75.1,
        "previous_day_high": 61985.1,
        "previous_day_low": 59080.0,
        "broken_prev_high": false,
        "broken_prev_low": false,
        "sessions": {
          "London": {
            "active": true,
            "high": 60911.0,
            "low": 60390.0
          },
          "New York": {
            "active": false,
            "high": null,
            "low": null
          },
          "Asian kill zone": {
            "active": false,
            "high": null,
            "low": null
          }
        }
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.87,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.92,\n  \"setup_signals\": [\n    \"현재가 $60,849.70는 EQ $60,763.45 위에 위치하여 premium zone 진입\",\n    \"현재 되돌림이 65.4%로 깊은 프리미엄 되돌림 구간에 위치\",\n    \"확정 구조상 $63,040.00, $62,300.00, $61,067.60 하향 BOS가 연속 발생\",\n    \"3회 연속 bearish BOS로 기관 흐름은 여전히 하방 우위\",\n    \"상단 $62,861.40~$63,231.80에 candidate bearish OB가 존재하여 중기 공급 구간으로 작용 가능\",\n    \"현재가가 EMA20 $60,680.70 위지만 EMA120 $60,993.15 및 EMA240 $61,710.69 아래에 있어 상위 평균선 저항이 가까움\"\n  ],\n  \"reasoning\": \"확정 구조는 $63,040.00, $62,300.00, $61,067.60을 순차적으로 이탈한 3연속 bearish BOS로 인해 명확히 bearish입니다. 현재가는 $60,849.70로 단기 EQ $60,763.45 위의 premium zone에 있으며, 되돌림 비율도 65.4%로 하락 추세 내 매도 대기 구간에 가깝습니다. 활성 bullish OB와 미충족 bullish FVG가 없고, 상단에는 $62,861.40~$63,231.80 candidate bearish OB가 남아 있어 반등 시 공급 출현 가능성이 큽니다. 단기적으로는 $61,067.60 BOS 레벨과 range high $61,173.50 부근에서 저항을 확인한 뒤 $60,353.40 range low 및 전일 저점 $59,080.00 유동성으로의 하방 재개를 우선 시나리오로 봅니다.\",\n  \"key_levels\": {\n    \"support\": [\n      60763.45,\n      60353.4,\n      59080.0\n    ],\n    \"resistance\": [\n      60993.15,\n      61067.6,\n      61173.5,\n      61985.1,\n      62861.4,\n      63231.8\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$61,173.50\",\n  \"risk_scenario\": \"$61,173.50 range high 위로 15분봉 종가가 안착하면 현재 premium 매도 셋업은 실패로 간주해야 하며, 이후 $61,985.10 전일 고점 유동성 및 $62,861.40~$63,231.80 bearish OB까지 숏 커버링 반등이 확장될 수 있습니다.\",\n  \"data_quality\": \"high\"\n}"
    },
    "candlestick": {
      "agent_id": "candlestick",
      "display_name": "Candlestick Reader",
      "signal": "neutral",
      "confidence": 0.52,
      "structure_bias": "neutral",
      "setup_bias": "bullish",
      "setup_score": 0.48,
      "setup_signals": [
        "7일 범위 EQ 약 $62,454.70 아래의 할인 구간: 현재가 $60,849.70",
        "현재가가 EMA20 $60,680.70 위에 재진입하여 단기 반등 시도",
        "EMA120 $60,993.15가 바로 위 저항으로 작용 중이며, 이 구간 돌파 확인 전까지 구조 전환 미확정",
        "최근 bullish_engulfing@296 및 bullish_engulfing@298 출현으로 단기 매수 반응은 있으나 거래량 확인 없음",
        "bearish_engulfing@290, shooting_star@295, bearish_harami@297로 상단 매도 압력도 병존"
      ],
      "reasoning": "현재 BTC는 $60,849.70으로 EMA20 $60,680.70 위에는 있지만, EMA120 $60,993.15와 EMA240 $61,710.69 아래에 있어 확정적인 상승 구조라고 보기 어렵습니다. 최근 캔들 패턴은 bearish_engulfing 품질 0.618이 가장 높고 bear_score 2.0이 bull_score 1.5보다 우세하지만, bullish_engulfing이 296번과 298번에 반복 출현해 하단 매수 반응도 확인됩니다. 7일 고점 $65,829.40과 저점 $59,080.00의 중간값 약 $62,454.70 아래 할인 구간에 위치하므로 setup_bias는 약한 bullish로 보지만, EMA120 돌파 및 안착 전까지 structure_bias는 neutral입니다. 고거래량 패턴이 없고 best_pattern_quality도 0.618로 중간 수준이어서 강한 방향성 신호보다는 $60,680~$60,993 사이의 단기 공방으로 해석됩니다.",
      "key_levels": {
        "support": [
          60680.7,
          59080.0
        ],
        "resistance": [
          60993.15,
          61710.69,
          62454.7,
          65829.4
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$59,080.00 하향 이탈 시 할인 구간 반등 셋업은 무효화되고 bearish 구조 전환 가능성이 커짐",
      "risk_scenario": "반대로 가격이 EMA120 $60,993.15를 회복하지 못하고 EMA20 $60,680.70 아래로 재하락하면, 최근 bullish engulfing 신호는 실패로 해석되며 $59,080.00 저점 재테스트가 열릴 수 있습니다. 반면 $61,710.69 EMA240까지 돌파·안착하면 bearish 캔들 후보들은 무효화되고 $62,454.70 EQ 회복 시도가 우세해질 수 있습니다.",
      "data_quality": "medium",
      "metrics": {
        "total_patterns_detected": 156,
        "recent_patterns": 6,
        "pattern_list": [
          "shooting_star@295",
          "bearish_engulfing@290",
          "bullish_engulfing@296",
          "bullish_engulfing@298",
          "doji@297",
          "bearish_harami@297"
        ],
        "atr_value": 199.3,
        "vol_avg_20": 792.78,
        "high_volume_patterns": [],
        "pattern_candidates": [
          {
            "pattern": "bearish_engulfing",
            "signal": "bearish",
            "pattern_quality": 0.618,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "bullish_engulfing",
            "signal": "bullish",
            "pattern_quality": 0.547,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "bearish_harami",
            "signal": "bearish",
            "pattern_quality": 0.476,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "bullish_engulfing",
            "signal": "bullish",
            "pattern_quality": 0.464,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "shooting_star",
            "signal": "bearish",
            "pattern_quality": 0.399,
            "tier": "candidate",
            "high_volume": false
          }
        ],
        "best_pattern_quality": 0.618,
        "bull_score": 1.5,
        "bear_score": 2.0
      },
      "raw_llm_response": "{\n  \"signal\": \"neutral\",\n  \"confidence\": 0.52,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.48,\n  \"setup_signals\": [\n    \"7일 범위 EQ 약 $62,454.70 아래의 할인 구간: 현재가 $60,849.70\",\n    \"현재가가 EMA20 $60,680.70 위에 재진입하여 단기 반등 시도\",\n    \"EMA120 $60,993.15가 바로 위 저항으로 작용 중이며, 이 구간 돌파 확인 전까지 구조 전환 미확정\",\n    \"최근 bullish_engulfing@296 및 bullish_engulfing@298 출현으로 단기 매수 반응은 있으나 거래량 확인 없음\",\n    \"bearish_engulfing@290, shooting_star@295, bearish_harami@297로 상단 매도 압력도 병존\"\n  ],\n  \"reasoning\": \"현재 BTC는 $60,849.70으로 EMA20 $60,680.70 위에는 있지만, EMA120 $60,993.15와 EMA240 $61,710.69 아래에 있어 확정적인 상승 구조라고 보기 어렵습니다. 최근 캔들 패턴은 bearish_engulfing 품질 0.618이 가장 높고 bear_score 2.0이 bull_score 1.5보다 우세하지만, bullish_engulfing이 296번과 298번에 반복 출현해 하단 매수 반응도 확인됩니다. 7일 고점 $65,829.40과 저점 $59,080.00의 중간값 약 $62,454.70 아래 할인 구간에 위치하므로 setup_bias는 약한 bullish로 보지만, EMA120 돌파 및 안착 전까지 structure_bias는 neutral입니다. 고거래량 패턴이 없고 best_pattern_quality도 0.618로 중간 수준이어서 강한 방향성 신호보다는 $60,680~$60,993 사이의 단기 공방으로 해석됩니다.\",\n  \"key_levels\": {\n    \"support\": [\n      60680.7,\n      59080.0\n    ],\n    \"resistance\": [\n      60993.15,\n      61710.69,\n      62454.7,\n      65829.4\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$59,080.00 하향 이탈 시 할인 구간 반등 셋업은 무효화되고 bearish 구조 전환 가능성이 커짐\",\n  \"risk_scenario\": \"반대로 가격이 EMA120 $60,993.15를 회복하지 못하고 EMA20 $60,680.70 아래로 재하락하면, 최근 bullish engulfing 신호는 실패로 해석되며 $59,080.00 저점 재테스트가 열릴 수 있습니다. 반면 $61,710.69 EMA240까지 돌파·안착하면 bearish 캔들 후보들은 무효화되고 $62,454.70 EQ 회복 시도가 우세해질 수 있습니다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "derivatives": {
      "agent_id": "derivatives",
      "display_name": "Derivatives Trader",
      "signal": "bearish",
      "confidence": 0.64,
      "structure_bias": "bearish",
      "setup_bias": "bearish",
      "setup_score": 0.72,
      "setup_signals": [
        "현재가 $60,849.70가 EMA120 $60,993.15 및 EMA240 $61,710.69 아래에 있어 중기 구조 저항 하단에 위치",
        "롱 계정 비율 0.665 / 숏 계정 비율 0.335로 롱 포지셔닝이 과밀하며, account_long_crowding 1.000은 역추세 bearish 신호",
        "CVD 변화 -3068.57로 가격 반등 대비 매수 체결 참여가 약하며, cvd_divergence 0.150으로 상승 추종 수요가 부족",
        "OI 24시간 변화율 -0.258%로 신규 추세성 진입보다 포지션 언와인딩 성격이 강함",
        "현물-선물 베이시스 -0.0574%로 선물이 현물 대비 약세이며 basis_change_lookback -0.0210으로 파생 수요가 둔화",
        "하방 청산 밀집 구간 $58,400 / $58,300 / $58,200이 가까운 유동성 목표로 남아 있음"
      ],
      "reasoning": "현재 BTC는 $60,849.70으로 EMA20 $60,680.70 위에는 있으나 EMA120 $60,993.15와 EMA240 $61,710.69 아래에 있어 단기 반등은 있지만 구조적으로는 아직 약세권이다. 파생 포지셔닝은 롱 계정 비율 0.665, account_long_crowding 1.000으로 롱이 과밀한 반면 CVD는 -3068.57 감소해 실제 매수 체결 강도는 따라오지 못하고 있다. OI도 24시간 -0.258%로 증가가 아닌 언와인딩이며, 베이시스도 -0.0574%로 선물 프리미엄이 약해 상승 추세 확정에는 부족하다. 하방에는 $58,400, $58,300, $58,200 청산 유동성이 가까워 단기적으로 이 구간을 테스트할 확률이 우세하다.",
      "key_levels": {
        "support": [
          59080.0,
          58400.0,
          58300.0,
          58200.0,
          54500.0
        ],
        "resistance": [
          60993.15,
          61710.69,
          63100.0,
          65829.4,
          66700.0,
          66800.0
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$61,710.69",
      "risk_scenario": "가격이 EMA240 $61,710.69를 회복하고 그 위에서 15분봉 종가를 유지하면 현재의 bearish setup은 무효화된다. 이 경우 과밀 롱이 단순히 숏 커버링을 유도하는 방향으로 전환될 수 있으며, 다음 상방 청산 구간인 $63,100까지 빠른 리프라이싱이 나올 수 있다.",
      "data_quality": "medium",
      "metrics": {
        "cvd_divergence": 0.15,
        "cvd_change": -3068.57,
        "oi_trend": 0.474,
        "oi_change_pct_24h": -0.258,
        "oi_latest": 101552.399,
        "funding_pressure": 0.497,
        "funding_avg": 3.1e-06,
        "funding_change_24h": 7.23e-06,
        "long_account_ratio": 0.658,
        "short_account_ratio": 0.342,
        "long_account_latest": 0.665,
        "short_account_latest": 0.335,
        "long_account_change_24h": -0.0019,
        "short_account_change_24h": 0.0019,
        "account_flow_label": "stable",
        "account_short_crowding": 0.0,
        "account_long_crowding": 1.0,
        "ls_imbalance": 0.0,
        "ls_imbalance_interpretation": "high=short-account crowding / low=long-account crowding",
        "spot_futures_basis_score": 0.486,
        "spot_futures_basis_pct": -0.0574,
        "basis_change_lookback": -0.021,
        "aggregate_score": 0.321,
        "bull_signals": 0,
        "bear_signals": 2,
        "liq_below": [
          [
            58400,
            1564.6320790000002
          ],
          [
            58300,
            1867.469026
          ],
          [
            58200,
            1587.845576
          ]
        ],
        "liq_above": [
          [
            63100,
            1605.989469
          ],
          [
            66700,
            1782.2746875
          ],
          [
            66800,
            1843.7132450000004
          ]
        ],
        "strongest_liq_level": 54500,
        "fragility_score": 0.553,
        "positioning_extreme": "balanced"
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.64,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.72,\n  \"setup_signals\": [\n    \"현재가 $60,849.70가 EMA120 $60,993.15 및 EMA240 $61,710.69 아래에 있어 중기 구조 저항 하단에 위치\",\n    \"롱 계정 비율 0.665 / 숏 계정 비율 0.335로 롱 포지셔닝이 과밀하며, account_long_crowding 1.000은 역추세 bearish 신호\",\n    \"CVD 변화 -3068.57로 가격 반등 대비 매수 체결 참여가 약하며, cvd_divergence 0.150으로 상승 추종 수요가 부족\",\n    \"OI 24시간 변화율 -0.258%로 신규 추세성 진입보다 포지션 언와인딩 성격이 강함\",\n    \"현물-선물 베이시스 -0.0574%로 선물이 현물 대비 약세이며 basis_change_lookback -0.0210으로 파생 수요가 둔화\",\n    \"하방 청산 밀집 구간 $58,400 / $58,300 / $58,200이 가까운 유동성 목표로 남아 있음\"\n  ],\n  \"reasoning\": \"현재 BTC는 $60,849.70으로 EMA20 $60,680.70 위에는 있으나 EMA120 $60,993.15와 EMA240 $61,710.69 아래에 있어 단기 반등은 있지만 구조적으로는 아직 약세권이다. 파생 포지셔닝은 롱 계정 비율 0.665, account_long_crowding 1.000으로 롱이 과밀한 반면 CVD는 -3068.57 감소해 실제 매수 체결 강도는 따라오지 못하고 있다. OI도 24시간 -0.258%로 증가가 아닌 언와인딩이며, 베이시스도 -0.0574%로 선물 프리미엄이 약해 상승 추세 확정에는 부족하다. 하방에는 $58,400, $58,300, $58,200 청산 유동성이 가까워 단기적으로 이 구간을 테스트할 확률이 우세하다.\",\n  \"key_levels\": {\n    \"support\": [\n      59080.0,\n      58400.0,\n      58300.0,\n      58200.0,\n      54500.0\n    ],\n    \"resistance\": [\n      60993.15,\n      61710.69,\n      63100.0,\n      65829.4,\n      66700.0,\n      66800.0\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$61,710.69\",\n  \"risk_scenario\": \"가격이 EMA240 $61,710.69를 회복하고 그 위에서 15분봉 종가를 유지하면 현재의 bearish setup은 무효화된다. 이 경우 과밀 롱이 단순히 숏 커버링을 유도하는 방향으로 전환될 수 있으며, 다음 상방 청산 구간인 $63,100까지 빠른 리프라이싱이 나올 수 있다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "harmonic": {
      "agent_id": "harmonic",
      "display_name": "Harmonic Specialist",
      "signal": "bearish",
      "confidence": 0.64,
      "structure_bias": "neutral",
      "setup_bias": "bearish",
      "setup_score": 0.72,
      "setup_signals": [
        "현재가 $60,849.70가 고점 반전 후보인 bearish Gartley 활성 PRZ $60,784.19-$61,028.76 안에 위치하며, D 목표 $60,906.48까지 +0.09%로 매우 근접",
        "최고 점수 strict high bearish Bat가 $60,867.08-$61,231.23 PRZ를 형성 중이며, D 목표 $61,049.15, 패턴 점수 0.963, PRZ confluence 3개(ABCD, BC_EXT, XAD)",
        "추가 bearish Gartley 활성 PRZ가 $60,985.94-$61,312.86에 겹쳐 있어 $60,985-$61,231 구간에 상단 공급/반전 후보 클러스터 형성",
        "하모닉 directional score가 bearish 0.728 vs bullish 0.138로 하방 우위이며 directional dominance 0.682",
        "반대편 bullish Bat PRZ는 $60,189.84-$60,519.22로 현재가 대비 -0.81% 아래에 있어, 하락 시 첫 반등/청산 후보 구간으로 작동"
      ],
      "reasoning": "15분 BTC/USDT는 현재 $60,849.70으로, strict high bearish Gartley PRZ $60,784.19-$61,028.76에 이미 진입해 있으며 최고 품질 bearish Bat PRZ $60,867.08-$61,231.23 바로 아래/초입에 있다. 두 패턴 모두 XAD, BC extension, AB=CD 3개 Fib family가 수렴한 high-confluence PRZ이고, bearish 점수 0.728이 bullish 0.138을 크게 앞선다. 다만 confirmed_reaction_prz_count가 0이고 핵심 bearish Bat/Gartley는 forming 상태이므로, 이는 확정 구조 전환이 아니라 상단 반전 후보 setup이다. 따라서 structure_bias는 확정 BOS/CHoCH/MSS 부재로 neutral로 두며, setup_bias만 bearish로 평가한다. 하락 반응이 확인되면 TP 후보는 $60,783.38, $60,619.18, $60,353.40 및 $60,146.00 순서가 유효하다.",
      "key_levels": {
        "support": [
          60783.38,
          60619.18,
          60519.22,
          60436.5,
          60353.4,
          60189.84,
          60146.0
        ],
        "resistance": [
          60906.48,
          61028.76,
          61049.15,
          61231.23,
          61312.86,
          61375.66,
          61537.97
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$61,537.97",
      "risk_scenario": "$61,231.23 상단을 돌파한 뒤 $61,312.86 위에서 수용되고, 최종적으로 $61,537.97 상단 PRZ까지 회수하면 bearish harmonic setup은 실패한다. 이 경우 forming bearish PRZ가 저항이 아니라 continuation waypoint로 전환될 수 있으며, $61,550.00 구조 유동성 및 그 이상으로 short squeeze가 확장될 위험이 있다. 반대로 $60,784 아래로 밀리고 재진입 실패가 나오면 bearish PRZ 반응이 확인되며 $60,619-$60,353 구간으로 하락 TP가 열릴 수 있다.",
      "data_quality": "high",
      "metrics": {
        "patterns_found": 102,
        "completed_patterns_found": 34,
        "forming_d_prz_found": 68,
        "swing_orders_scanned": [
          3,
          5,
          8
        ],
        "swing_search_window": 34,
        "multiscale_swings_scanned": 55,
        "swing_highs_scanned": 25,
        "swing_lows_scanned": 30,
        "timeframe": "15m",
        "prz_active_threshold_pct": 0.3,
        "prz_nearby_threshold_pct": 0.6,
        "prz_watch_threshold_pct": 1.2,
        "prz_max_width_pct": 0.6,
        "quality_counts": {
          "high": 13,
          "medium": 46,
          "low": 43
        },
        "prz_status_counts": {
          "active": 17,
          "nearby": 15,
          "watch": 16,
          "far": 54,
          "forming": 43
        },
        "high_confluence_prz_count": 37,
        "strict_patterns_found": 48,
        "candidate_patterns_found": 54,
        "active_patterns_at_prz": 17,
        "nearby_patterns": 15,
        "all_patterns": [
          "bat",
          "gartley",
          "shark",
          "bat",
          "gartley",
          "bat",
          "shark",
          "gartley",
          "butterfly",
          "butterfly",
          "gartley",
          "gartley",
          "bat",
          "bat",
          "gartley",
          "gartley",
          "bat",
          "crab",
          "gartley",
          "butterfly",
          "butterfly",
          "crab",
          "gartley",
          "crab",
          "bat",
          "bat",
          "bat",
          "crab",
          "crab",
          "butterfly",
          "crab",
          "crab",
          "crab",
          "butterfly",
          "crab",
          "shark",
          "shark",
          "butterfly",
          "butterfly",
          "crab",
          "shark",
          "gartley",
          "crab",
          "crab",
          "crab",
          "crab",
          "crab",
          "crab",
          "crab",
          "shark",
          "bat",
          "gartley",
          "crab",
          "crab",
          "bat",
          "bat",
          "crab",
          "butterfly",
          "crab",
          "shark",
          "gartley",
          "bat",
          "bat",
          "butterfly",
          "butterfly",
          "shark",
          "shark",
          "butterfly",
          "shark",
          "crab",
          "crab",
          "butterfly",
          "shark",
          "gartley",
          "bat",
          "butterfly",
          "shark",
          "crab",
          "gartley",
          "crab",
          "butterfly",
          "butterfly",
          "shark",
          "butterfly",
          "butterfly",
          "gartley",
          "shark",
          "bat",
          "crab",
          "bat",
          "crab",
          "shark",
          "crab",
          "crab",
          "shark",
          "shark",
          "shark",
          "gartley",
          "crab",
          "shark",
          "butterfly",
          "gartley"
        ],
        "all_signals": [
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish"
        ],
        "best_pattern": "bat",
        "best_pattern_quality": "strict",
        "best_quality": "high",
        "best_pattern_score": 0.963,
        "best_completion_status": "forming",
        "nearest_pattern": "gartley",
        "nearest_prz": 60906.48,
        "price_to_prz": 0.09,
        "prz_range": [
          60784.19,
          61028.76
        ],
        "council_relevant_prz_count": 5,
        "directional_influence_prz_count": 5,
        "confirmed_reaction_prz_count": 0,
        "validated_harmonic_tp_count": 0,
        "pattern_candidates": [
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.963,
            "ratio_score": 1.0,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 61049.15,
            "prz_range": [
              60867.08,
              61231.23
            ],
            "prz_width_pct": 0.596,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.33,
            "price_to_prz_pct_raw": 0.3278,
            "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": 61049.15,
              "a_price": 60353.4,
              "tp1_ad_382": 60783.38,
              "tp2_ad_618": 60619.18,
              "tp3_a_or_structure_liquidity": 60353.4,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4539,
              "ABC": 0.6779
            },
            "x_price": 61250.0,
            "x_idx": 228,
            "x_order": 8,
            "a_price": 60353.4,
            "a_idx": 265,
            "a_order": 8,
            "b_price": 60760.4,
            "b_idx": 280,
            "b_order": 5,
            "c_price": 60484.5,
            "c_idx": 284,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.94,
            "ratio_score": 0.912,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 60906.48,
            "prz_range": [
              60784.19,
              61028.76
            ],
            "prz_width_pct": 0.402,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.09,
            "price_to_prz_pct_raw": 0.0933,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 60906.48,
              "a_price": 60146.0,
              "tp1_ad_382": 60615.97,
              "tp2_ad_618": 60436.5,
              "tp3_a_or_structure_liquidity": 60146.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6032,
              "ABC": 0.6029
            },
            "x_price": 61164.5,
            "x_idx": 215,
            "x_order": 3,
            "a_price": 60146.0,
            "a_idx": 246,
            "a_order": 8,
            "b_price": 60760.4,
            "b_idx": 280,
            "b_order": 5,
            "c_price": 60390.0,
            "c_idx": 294,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.929,
            "ratio_score": 1.0,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 60354.53,
            "prz_range": [
              60189.84,
              60519.22
            ],
            "prz_width_pct": 0.546,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.81,
            "price_to_prz_pct_raw": -0.8138,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 60354.53,
              "a_price": 61173.5,
              "tp1_ad_382": 60667.38,
              "tp2_ad_618": 60860.65,
              "tp3_a_or_structure_liquidity": 61173.5,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4912,
              "ABC": 0.557
            },
            "x_price": 60146.0,
            "x_idx": 246,
            "x_order": 8,
            "a_price": 61173.5,
            "a_idx": 255,
            "a_order": 8,
            "b_price": 60668.8,
            "b_idx": 258,
            "b_order": 3,
            "c_price": 60949.9,
            "c_idx": 268,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.926,
            "ratio_score": 0.922,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 61149.4,
            "prz_range": [
              60985.94,
              61312.86
            ],
            "prz_width_pct": 0.535,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.49,
            "price_to_prz_pct_raw": 0.4925,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 61149.4,
              "a_price": 60146.0,
              "tp1_ad_382": 60766.1,
              "tp2_ad_618": 60529.3,
              "tp3_a_or_structure_liquidity": 60146.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6049,
              "ABC": 0.5789
            },
            "x_price": 61475.0,
            "x_idx": 238,
            "x_order": 8,
            "a_price": 60146.0,
            "a_idx": 246,
            "a_order": 8,
            "b_price": 60949.9,
            "b_idx": 268,
            "b_order": 3,
            "c_price": 60484.5,
            "c_idx": 284,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.867,
            "ratio_score": 0.828,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 61375.66,
            "prz_range": [
              61213.35,
              61537.97
            ],
            "prz_width_pct": 0.529,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.86,
            "price_to_prz_pct_raw": 0.8644,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 61375.66,
              "a_price": 60458.0,
              "tp1_ad_382": 61025.11,
              "tp2_ad_618": 60808.55,
              "tp3_a_or_structure_liquidity": 60458.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.647,
              "ABC": 0.7992
            },
            "x_price": 61550.0,
            "x_idx": 173,
            "x_order": 8,
            "a_price": 60458.0,
            "a_idx": 202,
            "a_order": 8,
            "b_price": 61164.5,
            "b_idx": 215,
            "b_order": 3,
            "c_price": 60599.9,
            "c_idx": 254,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.864,
            "ratio_score": 0.935,
            "prz_score": 0.979,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 60146.0,
            "prz_range": [
              59997.31,
              60390.23
            ],
            "prz_width_pct": 0.653,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.08,
            "price_to_prz_pct_raw": -1.078,
            "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.732,
                "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": "bullish",
              "source": "gartley",
              "d_price": 60193.77,
              "a_price": 61550.0,
              "tp1_ad_382": 60711.85,
              "tp2_ad_618": 61031.92,
              "tp3_a_or_structure_liquidity": 61550.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.603,
              "ABC": 0.647,
              "BCD": 1.4416,
              "XAD": 0.7753
            },
            "x_price": 59739.1,
            "x_idx": 172,
            "x_order": 8,
            "a_price": 61550.0,
            "a_idx": 173,
            "a_order": 8,
            "b_price": 60458.0,
            "b_idx": 202,
            "b_order": 8,
            "c_price": 61164.5,
            "c_idx": 215,
            "c_order": 3,
            "d_idx": 246
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.833,
            "ratio_score": 0.739,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 60969.2,
            "prz_range": [
              60771.89,
              61123.28
            ],
            "prz_width_pct": 0.577,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.16,
            "price_to_prz_pct_raw": 0.1609,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 0.704,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 9,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 60947.58,
              "a_price": 60146.0,
              "tp1_ad_382": 60641.38,
              "tp2_ad_618": 60452.2,
              "tp3_a_or_structure_liquidity": 60146.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6032,
              "ABC": 0.4491,
              "BCD": 1.7568,
              "XAD": 0.8082
            },
            "x_price": 61164.5,
            "x_idx": 215,
            "x_order": 3,
            "a_price": 60146.0,
            "a_idx": 246,
            "a_order": 8,
            "b_price": 60760.4,
            "b_idx": 280,
            "b_order": 5,
            "c_price": 60484.5,
            "c_idx": 284,
            "c_order": 3,
            "d_idx": 290
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.83,
            "ratio_score": 0.813,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 60417.6,
            "prz_range": [
              60189.84,
              60519.22
            ],
            "prz_width_pct": 0.546,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.81,
            "price_to_prz_pct_raw": -0.8138,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 0.546,
                "adverse_move_ratio_ad": 0.072,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 60354.53,
              "a_price": 61173.5,
              "tp1_ad_382": 60667.38,
              "tp2_ad_618": 60860.65,
              "tp3_a_or_structure_liquidity": 61173.5,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.8799,
              "ABC": 0.557,
              "BCD": 1.8936,
              "XAD": 1.3178
            },
            "x_price": 60599.9,
            "x_idx": 254,
            "x_order": 3,
            "a_price": 61173.5,
            "a_idx": 255,
            "a_order": 8,
            "b_price": 60668.8,
            "b_idx": 258,
            "b_order": 3,
            "c_price": 60949.9,
            "c_idx": 268,
            "c_order": 3,
            "d_idx": 270
          }
        ],
        "council_relevant_prz": [
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.963,
            "ratio_score": 1.0,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 61049.15,
            "prz_range": [
              60867.08,
              61231.23
            ],
            "prz_width_pct": 0.596,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.33,
            "price_to_prz_pct_raw": 0.3278,
            "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": 61049.15,
              "a_price": 60353.4,
              "tp1_ad_382": 60783.38,
              "tp2_ad_618": 60619.18,
              "tp3_a_or_structure_liquidity": 60353.4,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4539,
              "ABC": 0.6779
            },
            "x_price": 61250.0,
            "x_idx": 228,
            "x_order": 8,
            "a_price": 60353.4,
            "a_idx": 265,
            "a_order": 8,
            "b_price": 60760.4,
            "b_idx": 280,
            "b_order": 5,
            "c_price": 60484.5,
            "c_idx": 284,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.94,
            "ratio_score": 0.912,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 60906.48,
            "prz_range": [
              60784.19,
              61028.76
            ],
            "prz_width_pct": 0.402,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.09,
            "price_to_prz_pct_raw": 0.0933,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 60906.48,
              "a_price": 60146.0,
              "tp1_ad_382": 60615.97,
              "tp2_ad_618": 60436.5,
              "tp3_a_or_structure_liquidity": 60146.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6032,
              "ABC": 0.6029
            },
            "x_price": 61164.5,
            "x_idx": 215,
            "x_order": 3,
            "a_price": 60146.0,
            "a_idx": 246,
            "a_order": 8,
            "b_price": 60760.4,
            "b_idx": 280,
            "b_order": 5,
            "c_price": 60390.0,
            "c_idx": 294,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.929,
            "ratio_score": 1.0,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 60354.53,
            "prz_range": [
              60189.84,
              60519.22
            ],
            "prz_width_pct": 0.546,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.81,
            "price_to_prz_pct_raw": -0.8138,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 60354.53,
              "a_price": 61173.5,
              "tp1_ad_382": 60667.38,
              "tp2_ad_618": 60860.65,
              "tp3_a_or_structure_liquidity": 61173.5,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4912,
              "ABC": 0.557
            },
            "x_price": 60146.0,
            "x_idx": 246,
            "x_order": 8,
            "a_price": 61173.5,
            "a_idx": 255,
            "a_order": 8,
            "b_price": 60668.8,
            "b_idx": 258,
            "b_order": 3,
            "c_price": 60949.9,
            "c_idx": 268,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.926,
            "ratio_score": 0.922,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 61149.4,
            "prz_range": [
              60985.94,
              61312.86
            ],
            "prz_width_pct": 0.535,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.49,
            "price_to_prz_pct_raw": 0.4925,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 61149.4,
              "a_price": 60146.0,
              "tp1_ad_382": 60766.1,
              "tp2_ad_618": 60529.3,
              "tp3_a_or_structure_liquidity": 60146.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6049,
              "ABC": 0.5789
            },
            "x_price": 61475.0,
            "x_idx": 238,
            "x_order": 8,
            "a_price": 60146.0,
            "a_idx": 246,
            "a_order": 8,
            "b_price": 60949.9,
            "b_idx": 268,
            "b_order": 3,
            "c_price": 60484.5,
            "c_idx": 284,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.867,
            "ratio_score": 0.828,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 61375.66,
            "prz_range": [
              61213.35,
              61537.97
            ],
            "prz_width_pct": 0.529,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.86,
            "price_to_prz_pct_raw": 0.8644,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 61375.66,
              "a_price": 60458.0,
              "tp1_ad_382": 61025.11,
              "tp2_ad_618": 60808.55,
              "tp3_a_or_structure_liquidity": 60458.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.647,
              "ABC": 0.7992
            },
            "x_price": 61550.0,
            "x_idx": 173,
            "x_order": 8,
            "a_price": 60458.0,
            "a_idx": 202,
            "a_order": 8,
            "b_price": 61164.5,
            "b_idx": 215,
            "b_order": 3,
            "c_price": 60599.9,
            "c_idx": 254,
            "c_order": 3,
            "d_idx": null
          }
        ],
        "report_detail_candidates": [
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.963,
            "ratio_score": 1.0,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 61049.15,
            "prz_range": [
              60867.08,
              61231.23
            ],
            "prz_width_pct": 0.596,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.33,
            "price_to_prz_pct_raw": 0.3278,
            "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": 61049.15,
              "a_price": 60353.4,
              "tp1_ad_382": 60783.38,
              "tp2_ad_618": 60619.18,
              "tp3_a_or_structure_liquidity": 60353.4,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4539,
              "ABC": 0.6779
            },
            "x_price": 61250.0,
            "x_idx": 228,
            "x_order": 8,
            "a_price": 60353.4,
            "a_idx": 265,
            "a_order": 8,
            "b_price": 60760.4,
            "b_idx": 280,
            "b_order": 5,
            "c_price": 60484.5,
            "c_idx": 284,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.94,
            "ratio_score": 0.912,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 60906.48,
            "prz_range": [
              60784.19,
              61028.76
            ],
            "prz_width_pct": 0.402,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.09,
            "price_to_prz_pct_raw": 0.0933,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 60906.48,
              "a_price": 60146.0,
              "tp1_ad_382": 60615.97,
              "tp2_ad_618": 60436.5,
              "tp3_a_or_structure_liquidity": 60146.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6032,
              "ABC": 0.6029
            },
            "x_price": 61164.5,
            "x_idx": 215,
            "x_order": 3,
            "a_price": 60146.0,
            "a_idx": 246,
            "a_order": 8,
            "b_price": 60760.4,
            "b_idx": 280,
            "b_order": 5,
            "c_price": 60390.0,
            "c_idx": 294,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.929,
            "ratio_score": 1.0,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 60354.53,
            "prz_range": [
              60189.84,
              60519.22
            ],
            "prz_width_pct": 0.546,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.81,
            "price_to_prz_pct_raw": -0.8138,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 60354.53,
              "a_price": 61173.5,
              "tp1_ad_382": 60667.38,
              "tp2_ad_618": 60860.65,
              "tp3_a_or_structure_liquidity": 61173.5,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4912,
              "ABC": 0.557
            },
            "x_price": 60146.0,
            "x_idx": 246,
            "x_order": 8,
            "a_price": 61173.5,
            "a_idx": 255,
            "a_order": 8,
            "b_price": 60668.8,
            "b_idx": 258,
            "b_order": 3,
            "c_price": 60949.9,
            "c_idx": 268,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.926,
            "ratio_score": 0.922,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 61149.4,
            "prz_range": [
              60985.94,
              61312.86
            ],
            "prz_width_pct": 0.535,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.49,
            "price_to_prz_pct_raw": 0.4925,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 61149.4,
              "a_price": 60146.0,
              "tp1_ad_382": 60766.1,
              "tp2_ad_618": 60529.3,
              "tp3_a_or_structure_liquidity": 60146.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6049,
              "ABC": 0.5789
            },
            "x_price": 61475.0,
            "x_idx": 238,
            "x_order": 8,
            "a_price": 60146.0,
            "a_idx": 246,
            "a_order": 8,
            "b_price": 60949.9,
            "b_idx": 268,
            "b_order": 3,
            "c_price": 60484.5,
            "c_idx": 284,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.867,
            "ratio_score": 0.828,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 61375.66,
            "prz_range": [
              61213.35,
              61537.97
            ],
            "prz_width_pct": 0.529,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.86,
            "price_to_prz_pct_raw": 0.8644,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 61375.66,
              "a_price": 60458.0,
              "tp1_ad_382": 61025.11,
              "tp2_ad_618": 60808.55,
              "tp3_a_or_structure_liquidity": 60458.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.647,
              "ABC": 0.7992
            },
            "x_price": 61550.0,
            "x_idx": 173,
            "x_order": 8,
            "a_price": 60458.0,
            "a_idx": 202,
            "a_order": 8,
            "b_price": 61164.5,
            "b_idx": 215,
            "b_order": 3,
            "c_price": 60599.9,
            "c_idx": 254,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.864,
            "ratio_score": 0.935,
            "prz_score": 0.979,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 60146.0,
            "prz_range": [
              59997.31,
              60390.23
            ],
            "prz_width_pct": 0.653,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.08,
            "price_to_prz_pct_raw": -1.078,
            "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.732,
                "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": "bullish",
              "source": "gartley",
              "d_price": 60193.77,
              "a_price": 61550.0,
              "tp1_ad_382": 60711.85,
              "tp2_ad_618": 61031.92,
              "tp3_a_or_structure_liquidity": 61550.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.603,
              "ABC": 0.647,
              "BCD": 1.4416,
              "XAD": 0.7753
            },
            "x_price": 59739.1,
            "x_idx": 172,
            "x_order": 8,
            "a_price": 61550.0,
            "a_idx": 173,
            "a_order": 8,
            "b_price": 60458.0,
            "b_idx": 202,
            "b_order": 8,
            "c_price": 61164.5,
            "c_idx": 215,
            "c_order": 3,
            "d_idx": 246
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.833,
            "ratio_score": 0.739,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 60969.2,
            "prz_range": [
              60771.89,
              61123.28
            ],
            "prz_width_pct": 0.577,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.16,
            "price_to_prz_pct_raw": 0.1609,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 0.704,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 9,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 60947.58,
              "a_price": 60146.0,
              "tp1_ad_382": 60641.38,
              "tp2_ad_618": 60452.2,
              "tp3_a_or_structure_liquidity": 60146.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6032,
              "ABC": 0.4491,
              "BCD": 1.7568,
              "XAD": 0.8082
            },
            "x_price": 61164.5,
            "x_idx": 215,
            "x_order": 3,
            "a_price": 60146.0,
            "a_idx": 246,
            "a_order": 8,
            "b_price": 60760.4,
            "b_idx": 280,
            "b_order": 5,
            "c_price": 60484.5,
            "c_idx": 284,
            "c_order": 3,
            "d_idx": 290
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.83,
            "ratio_score": 0.813,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 60417.6,
            "prz_range": [
              60189.84,
              60519.22
            ],
            "prz_width_pct": 0.546,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.81,
            "price_to_prz_pct_raw": -0.8138,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 0.546,
                "adverse_move_ratio_ad": 0.072,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 60354.53,
              "a_price": 61173.5,
              "tp1_ad_382": 60667.38,
              "tp2_ad_618": 60860.65,
              "tp3_a_or_structure_liquidity": 61173.5,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.8799,
              "ABC": 0.557,
              "BCD": 1.8936,
              "XAD": 1.3178
            },
            "x_price": 60599.9,
            "x_idx": 254,
            "x_order": 3,
            "a_price": 61173.5,
            "a_idx": 255,
            "a_order": 8,
            "b_price": 60668.8,
            "b_idx": 258,
            "b_order": 3,
            "c_price": 60949.9,
            "c_idx": 268,
            "c_order": 3,
            "d_idx": 270
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.828,
            "ratio_score": 0.636,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 61045.34,
            "prz_range": [
              60940.19,
              61150.5
            ],
            "prz_width_pct": 0.345,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.32,
            "price_to_prz_pct_raw": 0.3215,
            "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": 61045.34,
              "a_price": 61550.0,
              "tp1_ad_382": 61238.12,
              "tp2_ad_618": 61357.22,
              "tp3_a_or_structure_liquidity": 61550.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5566,
              "ABC": 0.8687
            },
            "x_price": 62234.3,
            "x_idx": 143,
            "x_order": 3,
            "a_price": 61550.0,
            "a_idx": 173,
            "a_order": 8,
            "b_price": 61169.1,
            "b_idx": 196,
            "b_order": 3,
            "c_price": 61500.0,
            "c_idx": 205,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.818,
            "ratio_score": 0.785,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 60363.0,
            "prz_range": [
              60189.84,
              60519.22
            ],
            "prz_width_pct": 0.546,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.81,
            "price_to_prz_pct_raw": -0.8138,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 0.685,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 60354.53,
              "a_price": 61173.5,
              "tp1_ad_382": 60667.38,
              "tp2_ad_618": 60860.65,
              "tp3_a_or_structure_liquidity": 61173.5,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4912,
              "ABC": 0.557,
              "BCD": 2.0879,
              "XAD": 0.7888
            },
            "x_price": 60146.0,
            "x_idx": 246,
            "x_order": 8,
            "a_price": 61173.5,
            "a_idx": 255,
            "a_order": 8,
            "b_price": 60668.8,
            "b_idx": 258,
            "b_order": 3,
            "c_price": 60949.9,
            "c_idx": 268,
            "c_order": 3,
            "d_idx": 277
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.817,
            "ratio_score": 0.706,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 60969.2,
            "prz_range": [
              60867.08,
              61231.23
            ],
            "prz_width_pct": 0.596,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.33,
            "price_to_prz_pct_raw": 0.3278,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 0.941,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 9,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "bat",
              "d_price": 61049.15,
              "a_price": 60353.4,
              "tp1_ad_382": 60783.38,
              "tp2_ad_618": 60619.18,
              "tp3_a_or_structure_liquidity": 60353.4,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4539,
              "ABC": 0.6779,
              "BCD": 1.7568,
              "XAD": 0.6868
            },
            "x_price": 61250.0,
            "x_idx": 228,
            "x_order": 8,
            "a_price": 60353.4,
            "a_idx": 265,
            "a_order": 8,
            "b_price": 60760.4,
            "b_idx": 280,
            "b_order": 5,
            "c_price": 60484.5,
            "c_idx": 284,
            "c_order": 3,
            "d_idx": 290
          },
          {
            "pattern": "shark",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.938,
            "ratio_score": 1.0,
            "prz_score": 0.911,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 61063.43,
            "prz_range": [
              60810.07,
              61316.79
            ],
            "prz_width_pct": 0.83,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.35,
            "price_to_prz_pct_raw": 0.3512,
            "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": 61063.43,
              "a_price": 60599.9,
              "tp1_ad_382": 60886.36,
              "tp2_ad_618": 60776.97,
              "tp3_a_or_structure_liquidity": 60599.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5711,
              "ABC": 1.3297
            },
            "x_price": 61212.7,
            "x_idx": 233,
            "x_order": 3,
            "a_price": 60599.9,
            "a_idx": 254,
            "a_order": 3,
            "b_price": 60949.9,
            "b_idx": 268,
            "b_order": 3,
            "c_price": 60484.5,
            "c_idx": 284,
            "c_order": 3,
            "d_idx": null
          }
        ],
        "actionable_patterns_list": [
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.963,
            "prz_proximity": "active",
            "prz_range": [
              60867.08,
              61231.23
            ],
            "prz_reversal_direction": "down",
            "price_to_prz_pct": 0.33,
            "high_confluence_prz": true,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "bat",
              "d_price": 61049.15,
              "a_price": 60353.4,
              "tp1_ad_382": 60783.38,
              "tp2_ad_618": 60619.18,
              "tp3_a_or_structure_liquidity": 60353.4,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "BAT FORMING HIGH PRZ $60,867.08-$61,231.23: expected reversal DOWN if price reacts in zone"
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.94,
            "prz_proximity": "active",
            "prz_range": [
              60784.19,
              61028.76
            ],
            "prz_reversal_direction": "down",
            "price_to_prz_pct": 0.09,
            "high_confluence_prz": true,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 60906.48,
              "a_price": 60146.0,
              "tp1_ad_382": 60615.97,
              "tp2_ad_618": 60436.5,
              "tp3_a_or_structure_liquidity": 60146.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "GARTLEY FORMING HIGH PRZ $60,784.19-$61,028.76: expected reversal DOWN if price reacts in zone"
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.929,
            "prz_proximity": "nearby",
            "prz_range": [
              60189.84,
              60519.22
            ],
            "prz_reversal_direction": "up",
            "price_to_prz_pct": -0.81,
            "high_confluence_prz": true,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 60354.53,
              "a_price": 61173.5,
              "tp1_ad_382": 60667.38,
              "tp2_ad_618": 60860.65,
              "tp3_a_or_structure_liquidity": 61173.5,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "BAT FORMING HIGH PRZ $60,189.84-$60,519.22: expected reversal UP if price reacts in zone"
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.926,
            "prz_proximity": "active",
            "prz_range": [
              60985.94,
              61312.86
            ],
            "prz_reversal_direction": "down",
            "price_to_prz_pct": 0.49,
            "high_confluence_prz": true,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 61149.4,
              "a_price": 60146.0,
              "tp1_ad_382": 60766.1,
              "tp2_ad_618": 60529.3,
              "tp3_a_or_structure_liquidity": 60146.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "GARTLEY FORMING HIGH PRZ $60,985.94-$61,312.86: expected reversal DOWN if price reacts in zone"
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.867,
            "prz_proximity": "nearby",
            "prz_range": [
              61213.35,
              61537.97
            ],
            "prz_reversal_direction": "down",
            "price_to_prz_pct": 0.86,
            "high_confluence_prz": true,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 61375.66,
              "a_price": 60458.0,
              "tp1_ad_382": 61025.11,
              "tp2_ad_618": 60808.55,
              "tp3_a_or_structure_liquidity": 60458.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "GARTLEY FORMING HIGH PRZ $61,213.35-$61,537.97: expected reversal DOWN if price reacts in zone"
          }
        ],
        "best_council_prz": {
          "pattern": "bat",
          "signal": "bearish",
          "completion_status": "forming",
          "pattern_quality": "strict",
          "quality": "high",
          "pattern_score": 0.963,
          "ratio_score": 1.0,
          "prz_score": 1.0,
          "prz_proximity": "active",
          "action_status": "active",
          "high_confluence_prz": true,
          "d_price": 61049.15,
          "prz_range": [
            60867.08,
            61231.23
          ],
          "prz_width_pct": 0.596,
          "prz_confluence_count": 3,
          "prz_fib_families": [
            "ABCD",
            "BC_EXT",
            "XAD"
          ],
          "price_to_prz_pct": 0.33,
          "price_to_prz_pct_raw": 0.3278,
          "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": 61049.15,
            "a_price": 60353.4,
            "tp1_ad_382": 60783.38,
            "tp2_ad_618": 60619.18,
            "tp3_a_or_structure_liquidity": 60353.4,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          "ratios": {
            "XAB": 0.4539,
            "ABC": 0.6779
          },
          "x_price": 61250.0,
          "x_idx": 228,
          "x_order": 8,
          "a_price": 60353.4,
          "a_idx": 265,
          "a_order": 8,
          "b_price": 60760.4,
          "b_idx": 280,
          "b_order": 5,
          "c_price": 60484.5,
          "c_idx": 284,
          "c_order": 3,
          "d_idx": null
        },
        "best_tp_ladder": {
          "direction": "bearish",
          "source": "bat",
          "d_price": 61049.15,
          "a_price": 60353.4,
          "tp1_ad_382": 60783.38,
          "tp2_ad_618": 60619.18,
          "tp3_a_or_structure_liquidity": 60353.4,
          "note": "Use as strong TP ladder context; not standalone path authority."
        },
        "tp_ladder": [
          {
            "direction": "bearish",
            "source": "bat",
            "d_price": 61049.15,
            "a_price": 60353.4,
            "tp1_ad_382": 60783.38,
            "tp2_ad_618": 60619.18,
            "tp3_a_or_structure_liquidity": 60353.4,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bearish",
            "source": "gartley",
            "d_price": 60906.48,
            "a_price": 60146.0,
            "tp1_ad_382": 60615.97,
            "tp2_ad_618": 60436.5,
            "tp3_a_or_structure_liquidity": 60146.0,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bullish",
            "source": "bat",
            "d_price": 60354.53,
            "a_price": 61173.5,
            "tp1_ad_382": 60667.38,
            "tp2_ad_618": 60860.65,
            "tp3_a_or_structure_liquidity": 61173.5,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bearish",
            "source": "gartley",
            "d_price": 61149.4,
            "a_price": 60146.0,
            "tp1_ad_382": 60766.1,
            "tp2_ad_618": 60529.3,
            "tp3_a_or_structure_liquidity": 60146.0,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bearish",
            "source": "gartley",
            "d_price": 61375.66,
            "a_price": 60458.0,
            "tp1_ad_382": 61025.11,
            "tp2_ad_618": 60808.55,
            "tp3_a_or_structure_liquidity": 60458.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.138,
          "bearish": 0.728
        },
        "directional_score_total": 0.865,
        "directional_dominance": 0.682
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.64,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.72,\n  \"setup_signals\": [\n    \"현재가 $60,849.70가 고점 반전 후보인 bearish Gartley 활성 PRZ $60,784.19-$61,028.76 안에 위치하며, D 목표 $60,906.48까지 +0.09%로 매우 근접\",\n    \"최고 점수 strict high bearish Bat가 $60,867.08-$61,231.23 PRZ를 형성 중이며, D 목표 $61,049.15, 패턴 점수 0.963, PRZ confluence 3개(ABCD, BC_EXT, XAD)\",\n    \"추가 bearish Gartley 활성 PRZ가 $60,985.94-$61,312.86에 겹쳐 있어 $60,985-$61,231 구간에 상단 공급/반전 후보 클러스터 형성\",\n    \"하모닉 directional score가 bearish 0.728 vs bullish 0.138로 하방 우위이며 directional dominance 0.682\",\n    \"반대편 bullish Bat PRZ는 $60,189.84-$60,519.22로 현재가 대비 -0.81% 아래에 있어, 하락 시 첫 반등/청산 후보 구간으로 작동\"\n  ],\n  \"reasoning\": \"15분 BTC/USDT는 현재 $60,849.70으로, strict high bearish Gartley PRZ $60,784.19-$61,028.76에 이미 진입해 있으며 최고 품질 bearish Bat PRZ $60,867.08-$61,231.23 바로 아래/초입에 있다. 두 패턴 모두 XAD, BC extension, AB=CD 3개 Fib family가 수렴한 high-confluence PRZ이고, bearish 점수 0.728이 bullish 0.138을 크게 앞선다. 다만 confirmed_reaction_prz_count가 0이고 핵심 bearish Bat/Gartley는 forming 상태이므로, 이는 확정 구조 전환이 아니라 상단 반전 후보 setup이다. 따라서 structure_bias는 확정 BOS/CHoCH/MSS 부재로 neutral로 두며, setup_bias만 bearish로 평가한다. 하락 반응이 확인되면 TP 후보는 $60,783.38, $60,619.18, $60,353.40 및 $60,146.00 순서가 유효하다.\",\n  \"key_levels\": {\n    \"support\": [\n      60783.38,\n      60619.18,\n      60519.22,\n      60436.5,\n      60353.4,\n      60189.84,\n      60146.0\n    ],\n    \"resistance\": [\n      60906.48,\n      61028.76,\n      61049.15,\n      61231.23,\n      61312.86,\n      61375.66,\n      61537.97\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$61,537.97\",\n  \"risk_scenario\": \"$61,231.23 상단을 돌파한 뒤 $61,312.86 위에서 수용되고, 최종적으로 $61,537.97 상단 PRZ까지 회수하면 bearish harmonic setup은 실패한다. 이 경우 forming bearish PRZ가 저항이 아니라 continuation waypoint로 전환될 수 있으며, $61,550.00 구조 유동성 및 그 이상으로 short squeeze가 확장될 위험이 있다. 반대로 $60,784 아래로 밀리고 재진입 실패가 나오면 bearish PRZ 반응이 확인되며 $60,619-$60,353 구간으로 하락 TP가 열릴 수 있다.\",\n  \"data_quality\": \"high\"\n}"
    },
    "fibonacci": {
      "agent_id": "fibonacci",
      "display_name": "Fibonacci Analyst",
      "signal": "bearish",
      "confidence": 0.58,
      "structure_bias": "neutral",
      "setup_bias": "bearish",
      "setup_score": 0.68,
      "setup_signals": [
        "하락 스윙 $60,969 → $60,390 기준 0.786 되돌림 $60,845.25를 현재가 $60,849.70에서 테스트 중",
        "가격이 EQ 0.5 되돌림 $60,679.60 위에 있어 단기 프리미엄 구간 진입",
        "0.618 황금비율 $60,747.95 위에서 반등했지만, 아직 스윙 고점 $60,969 돌파 확인 없음",
        "하방 미충족 확장 목표가 $60,390.00, $60,232.46, $60,150.21, $60,032.05에 남아 있음",
        "EMA120 $60,993.15와 EMA240 $61,710.69 아래에 있어 상위 단기 구조 저항이 유지됨"
      ],
      "reasoning": "현재 BTC는 하락 스윙 $60,969 → $60,390의 0.786 되돌림 $60,845.25에 거의 정확히 위치해 있으며, nearest_fib_distance가 0.010으로 매우 근접한 반응 구간입니다. 구조적으로는 스윙 고점 $60,969를 확정 돌파하지 못했고 EMA120 $60,993.15 아래에 있어 bullish BOS가 확인되지 않았으므로 structure_bias는 중립입니다. 다만 가격은 EQ인 0.5 되돌림 $60,679.60 및 0.618 황금비율 $60,747.95 위의 프리미엄 구간에 진입해 있으며, 0.786에서 거부될 경우 $60,747.95, $60,679.60, 그리고 confluence zone $60,647.67까지 되돌림 압력이 커질 수 있습니다. confluence_quality가 1.000이고 fib_reaction_state가 testing인 점을 고려하면, 현재는 확정 구조 전환보다 0.786 저항성 반응을 노리는 선제적 bearish setup이 우세합니다.",
      "key_levels": {
        "support": [
          60845.25,
          60747.95,
          60679.6,
          60647.67,
          60390.0,
          60232.46,
          60150.21,
          60032.05,
          59810.8
        ],
        "resistance": [
          60969.0,
          60993.15,
          61710.69,
          65829.4
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$60,969.00 상향 돌파 및 15분봉 종가 안착",
      "risk_scenario": "반대로 $60,969를 돌파하면 하락 스윙의 0.786 저항 반응은 실패로 간주되며, EMA120 $60,993.15 돌파 후 $61,710.69 EMA240 방향으로 숏 커버링성 상승이 이어질 수 있습니다. 이 경우 $60,845.25는 저항이 아니라 단기 지지로 전환됩니다.",
      "data_quality": "high",
      "metrics": {
        "swing_pair": "High→Low: $60,969 → $60,390",
        "direction": "down",
        "nearest_fib": "ret_0.786",
        "nearest_fib_price": 60845.25,
        "nearest_fib_distance": 0.01,
        "golden_ratio_level": 60747.95,
        "fib_ret_382": 60611.25,
        "fib_ret_618": 60747.95,
        "confluence_zones": [
          {
            "price": 60647.67,
            "count": 5,
            "levels": [
              "ret_0.236",
              "ret_0.382",
              "ret_0.236",
              "ret_0.5",
              "ret_0.618"
            ],
            "cluster_score": 1.0
          },
          {
            "price": 60257.56,
            "count": 3,
            "levels": [
              "ext_1.414",
              "ext_1.272",
              "ext_1.0"
            ],
            "cluster_score": 0.85
          },
          {
            "price": 59921.43,
            "count": 2,
            "levels": [
              "ext_2.0",
              "ext_1.618"
            ],
            "cluster_score": 0.6
          }
        ],
        "support_levels": [
          60845.2512,
          60747.9456,
          60679.6
        ],
        "resistance_levels": [],
        "level_candidates": [
          {
            "name": "ret_0.236",
            "price": 60526.69,
            "distance_pct": 0.53,
            "is_support": true,
            "cluster_score": 1.0
          },
          {
            "name": "ret_0.382",
            "price": 60611.25,
            "distance_pct": 0.39,
            "is_support": true,
            "cluster_score": 1.0
          },
          {
            "name": "ret_0.5",
            "price": 60679.6,
            "distance_pct": 0.28,
            "is_support": true,
            "cluster_score": 1.0
          },
          {
            "name": "ret_0.618",
            "price": 60747.95,
            "distance_pct": 0.17,
            "is_support": true,
            "cluster_score": 1.0
          },
          {
            "name": "ret_0.786",
            "price": 60845.25,
            "distance_pct": 0.01,
            "is_support": true,
            "cluster_score": 1.0
          },
          {
            "name": "ext_1.0",
            "price": 60390.0,
            "distance_pct": 0.76,
            "is_support": true,
            "cluster_score": 1.0
          },
          {
            "name": "ext_1.272",
            "price": 60232.46,
            "distance_pct": 1.01,
            "is_support": true,
            "cluster_score": 0.85
          },
          {
            "name": "ext_1.414",
            "price": 60150.21,
            "distance_pct": 1.15,
            "is_support": true,
            "cluster_score": 0.85
          },
          {
            "name": "ext_1.618",
            "price": 60032.05,
            "distance_pct": 1.34,
            "is_support": true,
            "cluster_score": 0.85
          },
          {
            "name": "ext_2.0",
            "price": 59810.8,
            "distance_pct": 1.71,
            "is_support": true,
            "cluster_score": 0.6
          }
        ],
        "confluence_quality": 1.0,
        "fib_reaction_state": "testing",
        "reaction_probability": 0.65
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.58,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.68,\n  \"setup_signals\": [\n    \"하락 스윙 $60,969 → $60,390 기준 0.786 되돌림 $60,845.25를 현재가 $60,849.70에서 테스트 중\",\n    \"가격이 EQ 0.5 되돌림 $60,679.60 위에 있어 단기 프리미엄 구간 진입\",\n    \"0.618 황금비율 $60,747.95 위에서 반등했지만, 아직 스윙 고점 $60,969 돌파 확인 없음\",\n    \"하방 미충족 확장 목표가 $60,390.00, $60,232.46, $60,150.21, $60,032.05에 남아 있음\",\n    \"EMA120 $60,993.15와 EMA240 $61,710.69 아래에 있어 상위 단기 구조 저항이 유지됨\"\n  ],\n  \"reasoning\": \"현재 BTC는 하락 스윙 $60,969 → $60,390의 0.786 되돌림 $60,845.25에 거의 정확히 위치해 있으며, nearest_fib_distance가 0.010으로 매우 근접한 반응 구간입니다. 구조적으로는 스윙 고점 $60,969를 확정 돌파하지 못했고 EMA120 $60,993.15 아래에 있어 bullish BOS가 확인되지 않았으므로 structure_bias는 중립입니다. 다만 가격은 EQ인 0.5 되돌림 $60,679.60 및 0.618 황금비율 $60,747.95 위의 프리미엄 구간에 진입해 있으며, 0.786에서 거부될 경우 $60,747.95, $60,679.60, 그리고 confluence zone $60,647.67까지 되돌림 압력이 커질 수 있습니다. confluence_quality가 1.000이고 fib_reaction_state가 testing인 점을 고려하면, 현재는 확정 구조 전환보다 0.786 저항성 반응을 노리는 선제적 bearish setup이 우세합니다.\",\n  \"key_levels\": {\n    \"support\": [\n      60845.25,\n      60747.95,\n      60679.6,\n      60647.67,\n      60390.0,\n      60232.46,\n      60150.21,\n      60032.05,\n      59810.8\n    ],\n    \"resistance\": [\n      60969.0,\n      60993.15,\n      61710.69,\n      65829.4\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$60,969.00 상향 돌파 및 15분봉 종가 안착\",\n  \"risk_scenario\": \"반대로 $60,969를 돌파하면 하락 스윙의 0.786 저항 반응은 실패로 간주되며, EMA120 $60,993.15 돌파 후 $61,710.69 EMA240 방향으로 숏 커버링성 상승이 이어질 수 있습니다. 이 경우 $60,845.25는 저항이 아니라 단기 지지로 전환됩니다.\",\n  \"data_quality\": \"high\"\n}"
    },
    "wyckoff": {
      "agent_id": "wyckoff",
      "display_name": "Wyckoff Expert",
      "signal": "bullish",
      "confidence": 0.66,
      "structure_bias": "bullish",
      "setup_bias": "bullish",
      "setup_score": 0.58,
      "setup_signals": [
        "현재가 $60,849.70는 누적 박스 하단 $60,300.00와 상단 $61,985.10 사이에 있으며, EQ 약 $61,142.55 아래의 할인 구간에 위치",
        "LPS 후보 저점 $60,390.00 위에서 가격이 유지되고 있어 Phase D 누적 구조의 단기 지지 반응은 유효",
        "Spring $60,353.40 및 TERMINAL_SPRING $60,363.00 이후 SOS $60,969.20까지 반등한 구조가 확인되었으나, 현재가는 아직 SOS 고점 $60,969.20을 명확히 재돌파하지 못함",
        "상단 확인 레벨은 SOS $60,969.20 및 EQ $61,142.55 회복이며, 이 구간 회복 전까지는 박스 내부 반등 setup에 가까움"
      ],
      "reasoning": "메트릭상 regime은 ACC, regime_fitness는 0.928이며, 감지된 체인은 SC $60,300.00 → AR $61,985.10 → ST $60,146.00 → Spring $60,353.40 → TERMINAL_SPRING $60,363.00 → SOS $60,969.20 → LPS $60,390.00로 누적 Phase D 후보가 우세합니다. 구조적 편향은 bullish이지만, 현재가 $60,849.70는 아직 SOS $60,969.20과 박스 EQ 약 $61,142.55 아래에 있어 강한 상방 수용이 확정된 상태는 아닙니다. 즉, 현재 해석은 '확정된 추세 전환'이 아니라 LPS 이후 박스 내부에서 SOS/EQ 재시험을 노리는 누적 구조입니다. $60,390.00 LPS와 $60,353.40~$60,363.00 Spring 구간을 방어하면 단기적으로 $60,969.20, 이후 $61,142.55 회복 시도가 자연스럽고, 반대로 $60,146.00 ST 저점을 이탈하면 현재 LPS/Phase D 해석은 훼손됩니다.",
      "key_levels": {
        "support": [
          60390.0,
          60363.0,
          60353.4,
          60300.0,
          60146.0
        ],
        "resistance": [
          60969.2,
          61142.55,
          61985.1
        ]
      },
      "time_horizon": "short to medium term",
      "invalidation_level": "$60,146.00",
      "risk_scenario": "가격이 $60,969.20 SOS를 회복하지 못하고 $60,390.00 LPS 아래로 재진입하면 LPS 이후 수요 확인이 약해집니다. 특히 $60,146.00 ST 저점까지 이탈하면 Spring 이후 Phase D 누적 해석이 실패할 가능성이 높아지고, 박스 하단 재탐색 또는 재분배성 약세 구조로 전환될 수 있습니다.",
      "data_quality": "high",
      "metrics": {
        "acc_score": 92.8,
        "dis_score": 88.3,
        "regime": "ACC",
        "regime_state": "acc_candidate",
        "structure_bias": "bullish",
        "phase_context": "acc_candidate / accumulation / Phase D",
        "phases_detected": [
          "SC",
          "AR",
          "ST",
          "Spring",
          "TERMINAL_SPRING",
          "SOS",
          "LPS"
        ],
        "last_phase": "LPS",
        "phase_candidates": [
          {
            "label": "SC",
            "side": "low",
            "idx": 165,
            "price": 60300.0,
            "color": "#ffd166"
          },
          {
            "label": "AR",
            "side": "high",
            "idx": 192,
            "price": 61985.1,
            "color": "#06d6a0"
          },
          {
            "label": "ST",
            "side": "low",
            "idx": 246,
            "price": 60146.0,
            "color": "#118ab2"
          },
          {
            "label": "Spring",
            "side": "low",
            "idx": 265,
            "price": 60353.4,
            "color": "#f9844a"
          },
          {
            "label": "TERMINAL_SPRING",
            "side": "low",
            "idx": 277,
            "price": 60363.0,
            "color": "#f3722c"
          },
          {
            "label": "SOS",
            "side": "high",
            "idx": 290,
            "price": 60969.2,
            "color": "#06d6a0"
          },
          {
            "label": "LPS",
            "side": "low",
            "idx": 294,
            "price": 60390.0,
            "color": "#8338ec"
          }
        ],
        "phase_structures": [
          {
            "structure_id": "15m_cycle_1",
            "sequence": 1,
            "timeframe": "15m",
            "regime": "accumulation",
            "role": "current_structure_candidate",
            "is_active": true,
            "is_completed": false,
            "is_confirmed": true,
            "structure_bias": "bullish",
            "phase_context": "accumulation",
            "start_idx": 165,
            "end_idx": 294,
            "phase_count": 7,
            "phases": [
              {
                "label": "SC",
                "side": "low",
                "idx": 165,
                "price": 60300.0,
                "color": "#ffd166",
                "dt": "2026-06-05 23:15:00+09:00"
              },
              {
                "label": "AR",
                "side": "high",
                "idx": 192,
                "price": 61985.1,
                "color": "#06d6a0",
                "dt": "2026-06-06 06:00:00+09:00"
              },
              {
                "label": "ST",
                "side": "low",
                "idx": 246,
                "price": 60146.0,
                "color": "#118ab2",
                "dt": "2026-06-06 19:30:00+09:00"
              },
              {
                "label": "Spring",
                "side": "low",
                "idx": 265,
                "price": 60353.4,
                "color": "#f9844a",
                "dt": "2026-06-07 00:15:00+09:00"
              },
              {
                "label": "TERMINAL_SPRING",
                "side": "low",
                "idx": 277,
                "price": 60363.0,
                "color": "#f3722c",
                "dt": "2026-06-07 03:15:00+09:00"
              },
              {
                "label": "SOS",
                "side": "high",
                "idx": 290,
                "price": 60969.2,
                "color": "#06d6a0",
                "dt": "2026-06-07 06:30:00+09:00"
              },
              {
                "label": "LPS",
                "side": "low",
                "idx": 294,
                "price": 60390.0,
                "color": "#8338ec",
                "dt": "2026-06-07 07:30:00+09:00"
              }
            ]
          }
        ],
        "active_structure_id": "15m_cycle_1",
        "primary_structure_id": "15m_cycle_1",
        "structure_count": 1,
        "regime_fitness": 0.9282190635451505,
        "current_event": "LPS",
        "major_phase": "D",
        "pos_in_range": 0.5,
        "main_range_low": 60300.0,
        "main_range_high": 61985.1
      },
      "raw_llm_response": "{\n  \"signal\": \"bullish\",\n  \"confidence\": 0.66,\n  \"structure_bias\": \"bullish\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.58,\n  \"setup_signals\": [\n    \"현재가 $60,849.70는 누적 박스 하단 $60,300.00와 상단 $61,985.10 사이에 있으며, EQ 약 $61,142.55 아래의 할인 구간에 위치\",\n    \"LPS 후보 저점 $60,390.00 위에서 가격이 유지되고 있어 Phase D 누적 구조의 단기 지지 반응은 유효\",\n    \"Spring $60,353.40 및 TERMINAL_SPRING $60,363.00 이후 SOS $60,969.20까지 반등한 구조가 확인되었으나, 현재가는 아직 SOS 고점 $60,969.20을 명확히 재돌파하지 못함\",\n    \"상단 확인 레벨은 SOS $60,969.20 및 EQ $61,142.55 회복이며, 이 구간 회복 전까지는 박스 내부 반등 setup에 가까움\"\n  ],\n  \"reasoning\": \"메트릭상 regime은 ACC, regime_fitness는 0.928이며, 감지된 체인은 SC $60,300.00 → AR $61,985.10 → ST $60,146.00 → Spring $60,353.40 → TERMINAL_SPRING $60,363.00 → SOS $60,969.20 → LPS $60,390.00로 누적 Phase D 후보가 우세합니다. 구조적 편향은 bullish이지만, 현재가 $60,849.70는 아직 SOS $60,969.20과 박스 EQ 약 $61,142.55 아래에 있어 강한 상방 수용이 확정된 상태는 아닙니다. 즉, 현재 해석은 '확정된 추세 전환'이 아니라 LPS 이후 박스 내부에서 SOS/EQ 재시험을 노리는 누적 구조입니다. $60,390.00 LPS와 $60,353.40~$60,363.00 Spring 구간을 방어하면 단기적으로 $60,969.20, 이후 $61,142.55 회복 시도가 자연스럽고, 반대로 $60,146.00 ST 저점을 이탈하면 현재 LPS/Phase D 해석은 훼손됩니다.\",\n  \"key_levels\": {\n    \"support\": [\n      60390.0,\n      60363.0,\n      60353.4,\n      60300.0,\n      60146.0\n    ],\n    \"resistance\": [\n      60969.2,\n      61142.55,\n      61985.1\n    ]\n  },\n  \"time_horizon\": \"short to medium term\",\n  \"invalidation_level\": \"$60,146.00\",\n  \"risk_scenario\": \"가격이 $60,969.20 SOS를 회복하지 못하고 $60,390.00 LPS 아래로 재진입하면 LPS 이후 수요 확인이 약해집니다. 특히 $60,146.00 ST 저점까지 이탈하면 Spring 이후 Phase D 누적 해석이 실패할 가능성이 높아지고, 박스 하단 재탐색 또는 재분배성 약세 구조로 전환될 수 있습니다.\",\n  \"data_quality\": \"high\"\n}"
    }
  },
  "chairman_synthesis": {
    "overall_signal": "bullish",
    "overall_confidence": 0.56,
    "execution_setup": {
      "setup_bias": "bearish",
      "setup_strength": 0.76,
      "active_setups": [
        "ICT: 현재가 $60,849.70가 단기 EQ $60,763.45 위 premium zone에 있으며, 되돌림 65.4%로 하락 구조 내 매도 대기 구간",
        "ICT: $63,040.00, $62,300.00, $61,067.60 하향 BOS 3연속 발생",
        "Derivatives: 현재가가 EMA120 $60,993.15 및 EMA240 $61,710.69 아래에 있고, 롱 계정 비율 0.665로 롱 과밀",
        "Derivatives: CVD 변화 -3068.57로 반등 대비 체결 매수 강도가 부족",
        "Harmonic: bearish Gartley PRZ $60,784.19-$61,028.76 및 bearish Bat PRZ $60,867.08-$61,231.23에 가격이 진입",
        "Fibonacci: 하락 스윙 $60,969 → $60,390의 0.786 되돌림 $60,845.25를 현재가가 테스트 중",
        "Candlestick: EMA20 $60,680.70 위 재진입은 단기 반등 신호지만 EMA120 $60,993.15가 즉시 저항으로 작용"
      ],
      "setup_vs_structure": "구조적 판정은 Wyckoff 누적 Phase D/LPS 해석 때문에 약한 bullish이지만, 실행 셋업은 ICT·파생·하모닉·피보나치가 모두 $60,845-$61,231 상단 반응 구간을 지목해 bearish로 강하게 기울어 있다. 즉, 큰 구조는 누적 가능성을 유지하지만 현재 위치는 박스 내부 프리미엄/저항 테스트 구간이다."
    },
    "signal_breakdown": {
      "bullish_count": 1,
      "bearish_count": 2,
      "neutral_count": 3
    },
    "key_levels": {
      "support": [
        60763.45,
        60680.7,
        60647.67,
        60390.0,
        60363.0,
        60353.4,
        60146.0,
        59080.0,
        58400.0,
        58300.0,
        58200.0
      ],
      "resistance": [
        60845.25,
        60906.48,
        60969.2,
        60993.15,
        61028.76,
        61067.6,
        61142.55,
        61173.5,
        61231.23,
        61710.69,
        61985.1
      ]
    },
    "confluences": [
      "현재가 $60,849.70 부근은 Fibonacci 0.786 되돌림 $60,845.25와 거의 일치하며, Harmonic bearish PRZ $60,784.19-$61,028.76 내부에 위치한다.",
      "EMA120 $60,993.15는 Candlestick과 Derivatives가 공통으로 지목한 핵심 구조 저항이며, ICT의 $61,067.60 하향 BOS 레벨과도 매우 가깝다.",
      "$60,969.0-$60,969.2는 Fibonacci 스윙 고점이자 Wyckoff SOS 고점으로, 단기 구조 전환 여부를 판단하는 공통 기준이다.",
      "$60,353.40-$60,390.00 구간은 ICT range low $60,353.40, Wyckoff Spring $60,353.40/LPS $60,390.00, Harmonic bullish PRZ $60,189.84-$60,519.22가 겹치는 핵심 하단 구조 지지대다.",
      "$61,142.55-$61,173.50 구간은 Wyckoff 박스 EQ $61,142.55와 ICT range high $61,173.50이 겹치는 중간 구조 저항이다.",
      "$61,985.10은 Wyckoff AR/박스 상단이자 ICT 전일 고점으로, 상위 박스 구조의 상단 기준점이다.",
      "ICT, Derivatives, Harmonic, Fibonacci는 모두 현재 위치를 상단 반응 또는 프리미엄 구간으로 해석해 실행 셋업 bearish에 동의한다."
    ],
    "conflicts": [
      "Wyckoff는 SC $60,300.00 → AR $61,985.10 → ST $60,146.00 → Spring $60,353.40 → SOS $60,969.20 → LPS $60,390.00의 누적 Phase D 구조를 제시해 구조적 bullish를 주장한다.",
      "ICT는 $63,040.00, $62,300.00, $61,067.60의 3연속 하향 BOS를 근거로 확정 구조를 bearish로 판단한다.",
      "Derivatives는 EMA120 $60,993.15 및 EMA240 $61,710.69 아래의 가격 위치, 롱 과밀, CVD 약화를 근거로 구조적 약세를 지지한다.",
      "Candlestick과 Fibonacci는 구조 전환을 확정하지 않고 neutral로 남아 있으며, 현재 가격이 $60,969-$60,993 저항을 회복하기 전까지 상승 구조 확정은 어렵다고 본다.",
      "Harmonic은 bearish PRZ가 강하지만 다수 핵심 패턴이 아직 forming 상태이므로, 단독으로 구조를 뒤집는 신호가 아니라 반응 구간/실행 보조 신호로만 해석해야 한다."
    ],
    "executive_summary": "현재 15분 BTC 구조는 Wyckoff 기준으로 SC $60,300.00, AR $61,985.10, ST $60,146.00, Spring $60,353.40, SOS $60,969.20, LPS $60,390.00가 배열된 누적 Phase D 후보이며, 구조적 overall bias는 약한 bullish로 판정한다. 다만 ICT의 3연속 하향 BOS와 Derivatives의 EMA120 $60,993.15 하방 체류, 롱 과밀, CVD 약화가 동시에 존재해 즉시 실행 셋업은 구조와 반대로 bearish다. 현재 가격은 Fibonacci 0.786 $60,845.25 및 Harmonic bearish PRZ $60,784.19-$61,231.23에 위치해 있어, 누적 구조 내부의 상단 반응/저항 조건이 활성화된 상태다. 구조적으로는 $60,353.40-$60,390.00 방어 여부가 LPS 유효성을 가르는 핵심이며, $60,146.00 하향 이탈 시 현재 누적 Phase D 해석은 무효화된다.",
    "raw_llm_response": "{\n  \"overall_signal\": \"bullish\",\n  \"overall_confidence\": 0.56,\n  \"execution_setup\": {\n    \"setup_bias\": \"bearish\",\n    \"setup_strength\": 0.76,\n    \"active_setups\": [\n      \"ICT: 현재가 $60,849.70가 단기 EQ $60,763.45 위 premium zone에 있으며, 되돌림 65.4%로 하락 구조 내 매도 대기 구간\",\n      \"ICT: $63,040.00, $62,300.00, $61,067.60 하향 BOS 3연속 발생\",\n      \"Derivatives: 현재가가 EMA120 $60,993.15 및 EMA240 $61,710.69 아래에 있고, 롱 계정 비율 0.665로 롱 과밀\",\n      \"Derivatives: CVD 변화 -3068.57로 반등 대비 체결 매수 강도가 부족\",\n      \"Harmonic: bearish Gartley PRZ $60,784.19-$61,028.76 및 bearish Bat PRZ $60,867.08-$61,231.23에 가격이 진입\",\n      \"Fibonacci: 하락 스윙 $60,969 → $60,390의 0.786 되돌림 $60,845.25를 현재가가 테스트 중\",\n      \"Candlestick: EMA20 $60,680.70 위 재진입은 단기 반등 신호지만 EMA120 $60,993.15가 즉시 저항으로 작용\"\n    ],\n    \"setup_vs_structure\": \"구조적 판정은 Wyckoff 누적 Phase D/LPS 해석 때문에 약한 bullish이지만, 실행 셋업은 ICT·파생·하모닉·피보나치가 모두 $60,845-$61,231 상단 반응 구간을 지목해 bearish로 강하게 기울어 있다. 즉, 큰 구조는 누적 가능성을 유지하지만 현재 위치는 박스 내부 프리미엄/저항 테스트 구간이다.\"\n  },\n  \"signal_breakdown\": {\n    \"bullish_count\": 1,\n    \"bearish_count\": 2,\n    \"neutral_count\": 3\n  },\n  \"key_levels\": {\n    \"support\": [\n      60763.45,\n      60680.7,\n      60647.67,\n      60390.0,\n      60363.0,\n      60353.4,\n      60146.0,\n      59080.0,\n      58400.0,\n      58300.0,\n      58200.0\n    ],\n    \"resistance\": [\n      60845.25,\n      60906.48,\n      60969.2,\n      60993.15,\n      61028.76,\n      61067.6,\n      61142.55,\n      61173.5,\n      61231.23,\n      61710.69,\n      61985.1\n    ]\n  },\n  \"confluences\": [\n    \"현재가 $60,849.70 부근은 Fibonacci 0.786 되돌림 $60,845.25와 거의 일치하며, Harmonic bearish PRZ $60,784.19-$61,028.76 내부에 위치한다.\",\n    \"EMA120 $60,993.15는 Candlestick과 Derivatives가 공통으로 지목한 핵심 구조 저항이며, ICT의 $61,067.60 하향 BOS 레벨과도 매우 가깝다.\",\n    \"$60,969.0-$60,969.2는 Fibonacci 스윙 고점이자 Wyckoff SOS 고점으로, 단기 구조 전환 여부를 판단하는 공통 기준이다.\",\n    \"$60,353.40-$60,390.00 구간은 ICT range low $60,353.40, Wyckoff Spring $60,353.40/LPS $60,390.00, Harmonic bullish PRZ $60,189.84-$60,519.22가 겹치는 핵심 하단 구조 지지대다.\",\n    \"$61,142.55-$61,173.50 구간은 Wyckoff 박스 EQ $61,142.55와 ICT range high $61,173.50이 겹치는 중간 구조 저항이다.\",\n    \"$61,985.10은 Wyckoff AR/박스 상단이자 ICT 전일 고점으로, 상위 박스 구조의 상단 기준점이다.\",\n    \"ICT, Derivatives, Harmonic, Fibonacci는 모두 현재 위치를 상단 반응 또는 프리미엄 구간으로 해석해 실행 셋업 bearish에 동의한다.\"\n  ],\n  \"conflicts\": [\n    \"Wyckoff는 SC $60,300.00 → AR $61,985.10 → ST $60,146.00 → Spring $60,353.40 → SOS $60,969.20 → LPS $60,390.00의 누적 Phase D 구조를 제시해 구조적 bullish를 주장한다.\",\n    \"ICT는 $63,040.00, $62,300.00, $61,067.60의 3연속 하향 BOS를 근거로 확정 구조를 bearish로 판단한다.\",\n    \"Derivatives는 EMA120 $60,993.15 및 EMA240 $61,710.69 아래의 가격 위치, 롱 과밀, CVD 약화를 근거로 구조적 약세를 지지한다.\",\n    \"Candlestick과 Fibonacci는 구조 전환을 확정하지 않고 neutral로 남아 있으며, 현재 가격이 $60,969-$60,993 저항을 회복하기 전까지 상승 구조 확정은 어렵다고 본다.\",\n    \"Harmonic은 bearish PRZ가 강하지만 다수 핵심 패턴이 아직 forming 상태이므로, 단독으로 구조를 뒤집는 신호가 아니라 반응 구간/실행 보조 신호로만 해석해야 한다.\"\n  ],\n  \"highest_conviction_analyst\": \"ICT Trader — $63,040.00, $62,300.00, $61,067.60의 3연속 bearish BOS, 현재가의 EQ $60,763.45 상단 premium 진입, 65.4% 깊은 되돌림 등 구체적이고 일관된 구조·셋업 근거를 제시했기 때문에 실행 관점의 신뢰도가 가장 높다.\",\n  \"invalidation_level\": \"$60,146.00 하향 이탈 시 Wyckoff Phase D/LPS 기반의 누적 구조 해석이 훼손된다.\",\n  \"executive_summary\": \"현재 15분 BTC 구조는 Wyckoff 기준으로 SC $60,300.00, AR $61,985.10, ST $60,146.00, Spring $60,353.40, SOS $60,969.20, LPS $60,390.00가 배열된 누적 Phase D 후보이며, 구조적 overall bias는 약한 bullish로 판정한다. 다만 ICT의 3연속 하향 BOS와 Derivatives의 EMA120 $60,993.15 하방 체류, 롱 과밀, CVD 약화가 동시에 존재해 즉시 실행 셋업은 구조와 반대로 bearish다. 현재 가격은 Fibonacci 0.786 $60,845.25 및 Harmonic bearish PRZ $60,784.19-$61,231.23에 위치해 있어, 누적 구조 내부의 상단 반응/저항 조건이 활성화된 상태다. 구조적으로는 $60,353.40-$60,390.00 방어 여부가 LPS 유효성을 가르는 핵심이며, $60,146.00 하향 이탈 시 현재 누적 Phase D 해석은 무효화된다.\"\n}"
  },
  "overall_signal": "bullish",
  "overall_confidence": 0.56,
  "operating_path": {
    "path_type": "complex",
    "confidence": 0.55,
    "waypoints": [
      {
        "seq": 1,
        "price": 60647.67,
        "type": "support_test",
        "source": "Fibonacci(fib_confluence strict, score 1.0, 최근접 0.33%), ICT(단기 EQ $60,763.45 이탈), Candlestick(EMA20 $60,680.70)",
        "description": "현재가 $60,849.70는 Fib 0.786 $60,845.25 및 Harmonic bearish Gartley/Bat PRZ($60,784-$61,231) 상단 반응 구간에 위치. 실행 셋업(BEARISH 76%, 고확신)에 따라 즉시 하방이 우선이다. ICT 단기 EQ $60,763.45를 이탈하며 프리미엄→디스카운트로 전환, Fib 0.618 $60,747.95·0.5 EQ $60,679.60을 하향한 뒤 strict fib_confluence $60,647.67(score 1.0, 최근접)를 1차 지지로 테스트.",
        "est_hours": 2.0,
        "turning_zone": [
          60588.0,
          60648.0
        ],
        "likely_wick": 60620.0,
        "rejection_confirm": 60680.0,
        "invalid_overshoot": 60560.0,
        "calibration_reasoning": "strict 5중 fib confluence $60,647.67(score 1.0)을 존 상단으로 고정하고 Fib 0.382 $60,611.25를 내부 와이크 앵커로 사용, 하단은 base 대비 0.30×ATR($60)로 산정. bearish 76% 셋업이라 confluence를 소폭 관통할 가능성을 반영해 likely_wick을 0.382 직상($60,620)에 배치. 0.5 EQ/Chairman 지지 $60,679.60~60,680.7 회복 시 지지 방어(반등) 확인, 존 하향 이탈 시 WP2로 연장."
      },
      {
        "seq": 2,
        "price": 60353.4,
        "type": "liquidity_sweep",
        "source": "Wyckoff(Spring $60,353.40 / LPS $60,390 / Terminal Spring $60,363), ICT(range low $60,353.40 sell-side 유동성, TP 래더), Harmonic(bullish PRZ $60,189.84-$60,519.22, TP $60,353.40)",
        "description": "하락 셋업 연장으로 $60,390 LPS 하단의 sell-side 유동성을 스윕. ICT range low·Wyckoff Spring $60,353.40·Harmonic bullish PRZ가 겹치는 핵심 하단 구조 지지대로, 이 구간 방어 여부가 Phase D 누적 구조의 유효성을 가른다. 강한 bearish 셋업의 가장 깊은 1차 목표인 동시에 구조적 반등 트리거 후보 구간.",
        "est_hours": 5.0,
        "turning_zone": [
          60258.0,
          60375.0
        ],
        "likely_wick": 60315.0,
        "rejection_confirm": 60392.0,
        "invalid_overshoot": 60225.0,
        "calibration_reasoning": "맥락상 sell-side 스윕(ICT range low·Wyckoff Spring·bullish PRZ, '가장 깊은 1차 목표')이므로 일반 규칙의 '상방'을 오버라이드해 와이크를 base 하방으로 확장. 하단은 fib 확장 클러스터 $60,257.56(ext 1.0/1.272/1.414), 상단은 LPS $60,390 직하로 0.59×ATR. Spring 특성상 적정 관통($60,315)을 likely_wick으로 설정. Harmonic bat PRZ 60,354.53은 pre-confirmation이라 base 이동 없이 보조 근거로만 반영. $60,390 LPS 재탈환이 반전 확인, 클러스터 하향 이탈은 $60,146행 무효화."
      },
      {
        "seq": 3,
        "price": 60969.2,
        "type": "resistance_test",
        "source": "Wyckoff(SOS $60,969.20, LPS 방어 후 Phase D 구조적 bullish 연장), Fibonacci(스윙 고점 $60,969), Confluence(EMA120 $60,993.15 저항 캡)",
        "description": "$60,353-60,390 LPS/Spring 스윕 후 재탈환이 확인되면 Wyckoff 누적 Phase D의 구조적 bullish가 작동. 셋업 bearish가 소진된 뒤 구조 우위가 복귀하며 SOS $60,969.20을 재시험하고 EMA120 $60,993.15 저항 캡까지 반등. 구조적 상방 전환의 1차 관문이자 박스 내부 SOS/EQ 재시험 시나리오.",
        "est_hours": 12.0,
        "turning_zone": [
          60969.0,
          61090.0
        ],
        "likely_wick": 61005.0,
        "rejection_confirm": 60906.0,
        "invalid_overshoot": 61150.0,
        "calibration_reasoning": "터미널 구간이라 0.61×ATR로 폭 확대. SOS $60,969.20부터 상방으로 존 설정하고 EMA120 캡 $60,993.15와 라운드넘버 $61,000 마그넷이 겹쳐 likely_wick을 $61,005로 상향(라운드 직상 유동성 그랩). bat PRZ $61,049.15(pre-confirmation)은 존 내부 보조 저항으로만 포함. gartley PRZ/Chairman $60,906.48 하향 이탈이 거부 확인, $61,142.55 상향 돌파는 돌파 연장으로 무효화."
      }
    ],
    "period_extremes": {
      "4h": {
        "expected_high": 60906.48,
        "expected_low": 60390.0,
        "high_first": true
      },
      "8h": {
        "expected_high": 60906.48,
        "expected_low": 60353.4,
        "high_first": true
      },
      "24h": {
        "expected_high": 60969.2,
        "expected_low": 60353.4,
        "high_first": false
      }
    },
    "triggers": {
      "bullish": {
        "price": 60993.15,
        "description": "EMA120 $60,993.15 / SOS $60,969.20 상단을 회복·안착하면 LPS 방어 확정 및 markup 전환. 박스 EQ $61,142.55, ICT range high $61,173.50, Harmonic PRZ $61,231.23로 확장 가속."
      },
      "bearish": {
        "price": 60353.4,
        "description": "Spring·ICT range low $60,353.40을 스윕 후 종가 이탈하면 하락 가속. ST 저점 $60,146.00 및 전일 저점 $59,080, 청산 유동성 $58,400-$58,200으로 진행하며 WP3 반등 시나리오 약화."
      }
    },
    "scenario_invalidation": 60146.0,
    "raw_llm_response": "```json\n{\n  \"path_type\": \"complex\",\n  \"confidence\": 0.55,\n  \"waypoints\": [\n    {\n      \"seq\": 1,\n      \"price\": 60647.67,\n      \"type\": \"support_test\",\n      \"source\": \"Fibonacci(fib_confluence strict, score 1.0, 최근접 0.33%), ICT(단기 EQ $60,763.45 이탈), Candlestick(EMA20 $60,680.70)\",\n      \"description\": \"현재가 $60,849.70는 Fib 0.786 $60,845.25 및 Harmonic bearish Gartley/Bat PRZ($60,784-$61,231) 상단 반응 구간에 위치. 실행 셋업(BEARISH 76%, 고확신)에 따라 즉시 하방이 우선이다. ICT 단기 EQ $60,763.45를 이탈하며 프리미엄→디스카운트로 전환, Fib 0.618 $60,747.95·0.5 EQ $60,679.60을 하향한 뒤 strict fib_confluence $60,647.67(score 1.0, 최근접)를 1차 지지로 테스트.\",\n      \"est_hours\": 2.0\n    },\n    {\n      \"seq\": 2,\n      \"price\": 60353.4,\n      \"type\": \"liquidity_sweep\",\n      \"source\": \"Wyckoff(Spring $60,353.40 / LPS $60,390 / Terminal Spring $60,363), ICT(range low $60,353.40 sell-side 유동성, TP 래더), Harmonic(bullish PRZ $60,189.84-$60,519.22, TP $60,353.40)\",\n      \"description\": \"하락 셋업 연장으로 $60,390 LPS 하단의 sell-side 유동성을 스윕. ICT range low·Wyckoff Spring $60,353.40·Harmonic bullish PRZ가 겹치는 핵심 하단 구조 지지대로, 이 구간 방어 여부가 Phase D 누적 구조의 유효성을 가른다. 강한 bearish 셋업의 가장 깊은 1차 목표인 동시에 구조적 반등 트리거 후보 구간.\",\n      \"est_hours\": 5.0\n    },\n    {\n      \"seq\": 3,\n      \"price\": 60969.2,\n      \"type\": \"resistance_test\",\n      \"source\": \"Wyckoff(SOS $60,969.20, LPS 방어 후 Phase D 구조적 bullish 연장), Fibonacci(스윙 고점 $60,969), Confluence(EMA120 $60,993.15 저항 캡)\",\n      \"description\": \"$60,353-60,390 LPS/Spring 스윕 후 재탈환이 확인되면 Wyckoff 누적 Phase D의 구조적 bullish가 작동. 셋업 bearish가 소진된 뒤 구조 우위가 복귀하며 SOS $60,969.20을 재시험하고 EMA120 $60,993.15 저항 캡까지 반등. 구조적 상방 전환의 1차 관문이자 박스 내부 SOS/EQ 재시험 시나리오.\",\n      \"est_hours\": 12.0\n    }\n  ],\n  \"period_extremes\": {\n    \"4h\":  {\"expected_high\": 60906.48, \"expected_low\": 60390.0,  \"high_first\": true},\n    \"8h\":  {\"expected_high\": 60906.48, \"expected_low\": 60353.4,  \"high_first\": true},\n    \"24h\": {\"expected_high\": 60969.2,  \"expected_low\": 60353.4,  \"high_first\": false}\n  },\n  \"triggers\": {\n    \"bullish\": {\"price\": 60993.15, \"description\": \"EMA120 $60,993.15 / SOS $60,969.20 상단을 회복·안착하면 LPS 방어 확정 및 markup 전환. 박스 EQ $61,142.55, ICT range high $61,173.50, Harmonic PRZ $61,231.23로 확장 가속.\"},\n    \"bearish\": {\"price\": 60353.4,  \"description\": \"Spring·ICT range low $60,353.40을 스윕 후 종가 이탈하면 하락 가속. ST 저점 $60,146.00 및 전일 저점 $59,080, 청산 유동성 $58,400-$58,200으로 진행하며 WP3 반등 시나리오 약화.\"}\n  },\n  \"scenario_invalidation\": 60146.0\n}\n```"
  },
  "tp_calibration": {
    "calibrated_waypoints": [
      {
        "seq": 1,
        "base_target": 60647.67,
        "turning_zone": [
          60588.0,
          60648.0
        ],
        "likely_wick": 60620.0,
        "rejection_confirm": 60680.0,
        "invalid_overshoot": 60560.0,
        "calibration_reasoning": "strict 5중 fib confluence $60,647.67(score 1.0)을 존 상단으로 고정하고 Fib 0.382 $60,611.25를 내부 와이크 앵커로 사용, 하단은 base 대비 0.30×ATR($60)로 산정. bearish 76% 셋업이라 confluence를 소폭 관통할 가능성을 반영해 likely_wick을 0.382 직상($60,620)에 배치. 0.5 EQ/Chairman 지지 $60,679.60~60,680.7 회복 시 지지 방어(반등) 확인, 존 하향 이탈 시 WP2로 연장."
      },
      {
        "seq": 2,
        "base_target": 60353.4,
        "turning_zone": [
          60258.0,
          60375.0
        ],
        "likely_wick": 60315.0,
        "rejection_confirm": 60392.0,
        "invalid_overshoot": 60225.0,
        "calibration_reasoning": "맥락상 sell-side 스윕(ICT range low·Wyckoff Spring·bullish PRZ, '가장 깊은 1차 목표')이므로 일반 규칙의 '상방'을 오버라이드해 와이크를 base 하방으로 확장. 하단은 fib 확장 클러스터 $60,257.56(ext 1.0/1.272/1.414), 상단은 LPS $60,390 직하로 0.59×ATR. Spring 특성상 적정 관통($60,315)을 likely_wick으로 설정. Harmonic bat PRZ 60,354.53은 pre-confirmation이라 base 이동 없이 보조 근거로만 반영. $60,390 LPS 재탈환이 반전 확인, 클러스터 하향 이탈은 $60,146행 무효화."
      },
      {
        "seq": 3,
        "base_target": 60969.2,
        "turning_zone": [
          60969.0,
          61090.0
        ],
        "likely_wick": 61005.0,
        "rejection_confirm": 60906.0,
        "invalid_overshoot": 61150.0,
        "calibration_reasoning": "터미널 구간이라 0.61×ATR로 폭 확대. SOS $60,969.20부터 상방으로 존 설정하고 EMA120 캡 $60,993.15와 라운드넘버 $61,000 마그넷이 겹쳐 likely_wick을 $61,005로 상향(라운드 직상 유동성 그랩). bat PRZ $61,049.15(pre-confirmation)은 존 내부 보조 저항으로만 포함. gartley PRZ/Chairman $60,906.48 하향 이탈이 거부 확인, $61,142.55 상향 돌파는 돌파 연장으로 무효화."
      }
    ],
    "raw_llm_response": "```json\n{\n  \"calibrated_waypoints\": [\n    {\n      \"seq\": 1,\n      \"base_target\": 60647.67,\n      \"turning_zone\": [60588.0, 60648.0],\n      \"likely_wick\": 60620.0,\n      \"rejection_confirm\": 60680.0,\n      \"invalid_overshoot\": 60560.0,\n      \"calibration_reasoning\": \"strict 5중 fib confluence $60,647.67(score 1.0)을 존 상단으로 고정하고 Fib 0.382 $60,611.25를 내부 와이크 앵커로 사용, 하단은 base 대비 0.30×ATR($60)로 산정. bearish 76% 셋업이라 confluence를 소폭 관통할 가능성을 반영해 likely_wick을 0.382 직상($60,620)에 배치. 0.5 EQ/Chairman 지지 $60,679.60~60,680.7 회복 시 지지 방어(반등) 확인, 존 하향 이탈 시 WP2로 연장.\"\n    },\n    {\n      \"seq\": 2,\n      \"base_target\": 60353.40,\n      \"turning_zone\": [60258.0, 60375.0],\n      \"likely_wick\": 60315.0,\n      \"rejection_confirm\": 60392.0,\n      \"invalid_overshoot\": 60225.0,\n      \"calibration_reasoning\": \"맥락상 sell-side 스윕(ICT range low·Wyckoff Spring·bullish PRZ, '가장 깊은 1차 목표')이므로 일반 규칙의 '상방'을 오버라이드해 와이크를 base 하방으로 확장. 하단은 fib 확장 클러스터 $60,257.56(ext 1.0/1.272/1.414), 상단은 LPS $60,390 직하로 0.59×ATR. Spring 특성상 적정 관통($60,315)을 likely_wick으로 설정. Harmonic bat PRZ 60,354.53은 pre-confirmation이라 base 이동 없이 보조 근거로만 반영. $60,390 LPS 재탈환이 반전 확인, 클러스터 하향 이탈은 $60,146행 무효화.\"\n    },\n    {\n      \"seq\": 3,\n      \"base_target\": 60969.20,\n      \"turning_zone\": [60969.0, 61090.0],\n      \"likely_wick\": 61005.0,\n      \"rejection_confirm\": 60906.0,\n      \"invalid_overshoot\": 61150.0,\n      \"calibration_reasoning\": \"터미널 구간이라 0.61×ATR로 폭 확대. SOS $60,969.20부터 상방으로 존 설정하고 EMA120 캡 $60,993.15와 라운드넘버 $61,000 마그넷이 겹쳐 likely_wick을 $61,005로 상향(라운드 직상 유동성 그랩). bat PRZ $61,049.15(pre-confirmation)은 존 내부 보조 저항으로만 포함. gartley PRZ/Chairman $60,906.48 하향 이탈이 거부 확인, $61,142.55 상향 돌파는 돌파 연장으로 무효화.\"\n    }\n  ]\n}\n```"
  },
  "timing": {
    "stages": {
      "stage1_agents": 51.0,
      "chairman": 41.3,
      "operating_path": 175.2,
      "tp_calibrator": 246.1
    },
    "agents": {},
    "total_s": 513.7
  }
}