BTC/USDT 4H Council Report

Signal: BEARISH (64%)  |  Price: $60,122.80  |  2026-07-02 17:00 KST  |  300 candles

Council: 1 bullish, 1 neutral, 4 bearish  |  Support: $60,116 / $59,754 / $59,612  |  Resistance: $60,484 / $60,520 / $60,700

result.json   raw.txt   report.md


BTC Chart

Executive Summary

현재 BTC 4시간 구조는 다수 구조 판독상 bearish가 우세하나, Wyckoff 관점에서는 SC $59,080.00 이후 Spring $57,758.60과 SOS $61,322.00이 형성된 confirmed accumulation Phase D로 해석되어 구조 충돌이 뚜렷하다. 현 위치는 Wyckoff상 SOS 이후 LPS 재테스트 후보 구간이지만, 가격은 아직 SOS $61,322.00과 레인지 EQ $61,665.00 위에 수용되지 못했고, ICT 기준으로는 $62,232.10 bearish BOS 하방에 남아 있다. $60,116.36-$60,122.80 부근은 Fibonacci 0.786과 Harmonic PRZ가 겹치는 즉각 반응 구간이며, $60,484.10-$60,700은 EQ·전일 고점·청산 밀집이 겹친 유동성 저항 구간이다. 하단에서는 $59,753.53-$59,612.41이 단기 지지 클러스터이고, $57,758.60은 Wyckoff Spring·ICT range low·Fibonacci 컨플루언스가 겹치는 핵심 구조 방어선이다. 구조적 bearish 판단의 무효화는 우선 $62,232.10-$62,254.98 회복이며, 상위 확정 전환은 $64,250.00 회복이 필요하다.

Confluences

Conflicts


Agent Matrix

AgentSignalConfidenceSupportResistance
Wyckoff ExpertBULLISH72%$59,754 / $59,080$61,322 / $61,665
ICT TraderBEARISH84%$59,298 / $57,759$60,484 / $60,520
Derivatives TraderBEARISH64%$58,900 / $58,600$60,700 / $61,898
Candlestick ReaderBULLISH64%$59,754 / $57,759$61,898 / $62,255
Fibonacci AnalystBEARISH62%$60,116 / $59,612$60,758 / $61,898
Harmonic SpecialistNEUTRAL62%$59,973 / $59,591$60,603 / $60,711

Agent Details

Wyckoff Expert — BULLISH (72%)

Support: $59,754 / $59,080 / $57,759 | Resistance: $61,322 / $61,665 / $64,250 | Horizon: medium term

현재 지표상 regime은 ACC, regime_state는 confirmed_acc이며 acc_score 88.8, regime_fitness 0.888로 누적 구조 우위가 확인됩니다. 주요 앵커는 SC $59,080.00, AR $64,250.00이며, 이후 Spring $57,758.60과 SOS $61,322.00이 형성되어 현재는 축적 Phase D로 해석됩니다. 다만 현재가 $60,122.80은 SOS $61,322.00 아래에 있어 SOS 이후의 확정적 상방 수용보다는 LPS 성격의 재테스트 가능성을 먼저 봐야 합니다. 구조적 편향은 bullish이지만, 실행 관점의 setup_bias는 SOS 상단 회복 전까지 neutral이며, $61,322 회복 및 $61,665 EQ 안착이 단기 강세 재개 확인 레벨입니다.
ICT Trader — BEARISH (84%)

Support: $59,298 / $57,759 / $57,759 | Resistance: $60,484 / $60,520 / $62,232 | Horizon: 중기, 4시간봉 기준

확정 구조는 bearish로 판단한다. BOS 시퀀스가 bearish 중심이며, 특히 최근 $62,232.10 하방 bearish BOS 이후 가격이 아직 이 레벨을 회복하지 못했다. 현재가 $60,122.80는 EQ $60,484.10 아래 discount에 있어 단기 반등 여지는 있지만, 전일 고점 $60,520.00을 돌파한 뒤 다시 아래로 밀린 점은 buy-side liquidity sweep 후보로 해석된다. 또한 EMA120 $62,254.98과 EMA240 $65,557.05 아래에 머물러 있어 기관 관점의 중기 order flow는 여전히 매도 우위다.
Derivatives Trader — BEARISH (64%)

Support: $58,900 / $58,600 / $57,759 | Resistance: $60,700 / $61,898 / $62,255 | Horizon: short term, 향후 4-8시간

BTC는 현재 $60,122.80에서 EMA20 $59,753.53을 소폭 상회하지만, EMA120 $62,254.98과 EMA240 $65,557.05 아래에 머물러 구조적으로는 아직 하락 추세 내 반등으로 해석된다. 24시간 가격이 +2.35% 상승했음에도 OI가 -3.42% 감소한 것은 신규 레버리지 롱 축적이 아니라 포지션 청산/언와인딩성 반등일 가능성이 높아 지속성이 약하다. 롱 계정 비율은 0.651로 여전히 높고 account_long_crowding이 1.000인 반면, long_account_change_24h는 -0.0573, short_account_change_24h는 +0.057로 계정 플로우는 롱 이탈과 숏 증가를 보여 단기 변동성 확대 가능성이 있다. 가장 가까운 상방 청산 밀집 구간은 $60,700이며, 이 레벨을 스윕한 뒤 $58,900 또는 $58,600 하방 유동성으로 되돌리는 시나리오가 우세하다.
Candlestick Reader — BULLISH (64%)

Support: $59,754 / $57,759 | Resistance: $61,898 / $62,255 / $65,557 | Horizon: short term

캔들 패턴 관점에서는 최근 bullish_engulfing이 3회 반복되었고, 그중 최상위 패턴 품질이 0.693이며 고거래량 조건까지 동반되어 단기 매수 셋업이 우세합니다. 현재가 $60,122.80은 EMA20 $59,753.53 위에 있어 단기 반등 흐름은 살아 있지만, EMA120 $62,254.98 및 EMA240 $65,557.05 아래에 머물러 있어 확정 구조는 아직 bearish로 판단합니다. 즉, 구조적으로는 중기 하락 압력이 남아 있으나, 실행 관점에서는 $57,758.60 저점 방어 이후 $61,897.60 테스트를 노리는 bullish setup이 활성화된 상태입니다. 다만 최근 마지막 캔들이 -1.5% 하락했고 bearish_harami와 doji도 함께 감지되어, $59,753.53 아래로 재이탈하면 반등 신뢰도는 빠르게 약화됩니다.
Fibonacci Analyst — BEARISH (62%)

Support: $60,116 / $59,612 / $59,258 | Resistance: $60,758 / $61,898 / $62,255 | Horizon: 단기

확정 구조는 아직 상승 전환으로 보기 어렵고, 최근 주요 스윙이 $60,758 고점에서 $57,758.60 저점으로 형성된 하락 스윙이므로 structure_bias는 bearish로 판단한다. 현재가는 $60,122.80으로 0.786 되돌림 $60,116.36과 거의 동일하며, nearest_fib_distance가 0.010으로 매우 근접해 단기 반응 가능성이 높다. 특히 EQ인 0.5 레벨 $59,258.45와 골든 비율 0.618 레벨 $59,612.41 위의 프리미엄 영역에서 거래되고 있어, 구조 전환 확인 전에는 되돌림 매도 setup이 우세하다. 하락이 재개될 경우 1차 지지는 $59,612.41, 이후 $59,258.45, $58,904.49이며, 더 깊은 유동성 목표는 컨플루언스가 있는 $57,758.60이다.
Harmonic Specialist — NEUTRAL (62%)

Support: $59,973 / $59,591 / $59,215 | Resistance: $60,603 / $60,711 / $61,028 | Horizon: short/medium term

4시간 기준 총 149개 패턴 중 완료 58개, 형성 중 91개가 탐지되었지만, strict-tier에서 실제 방향 투표에 사용할 actionable harmonic은 0개입니다. 현재가 $60,122.80는 최근접 PRZ $60,121.46와 사실상 겹치지만, 이 PRZ는 확인된 반전 신호가 아니라 약한 반응 후보 구간으로만 취급해야 합니다. 상단에는 bearish gartley PRZ $60,710.58-$61,637.48와 bullish bat PRZ $60,602.82-$61,675.69가 겹쳐 있어 $60.6k-$61.7k는 방향 확정보다 변동성·거절 확인 구간입니다. 반대로 하단 $58,406.59-$59,590.72의 bullish butterfly는 이미 방어 반응을 보였지만, 단독으로 메인 구조를 bullish로 전환할 권한은 없습니다. 따라서 구조는 확정 BOS/CHoCH/MSS 부재로 neutral, setup도 상·하방 PRZ가 충돌하는 neutral로 평가합니다.

Operating Path — complex (62%)

#PriceTypeSourceEst. HoursDescription
1$60,700liquidity_sweepDerivatives(최대 상방 청산 밀집 $60,700), ICT(전일 고점 $60,520·EQ $60,484.10 buy-side 유동성), Harmonic(상단 PRZ $60,602.82-$61,027.99)2현재가 바로 위 $60,484-$60,700 유동성·저항 클러스터로의 상방 스윕. 파생 최대 상방 청산 밀집 $60,700을 태그해 buy-side 유동성을 흡수한 뒤, EQ $60,484.10 재탈환 실패 시 약세 재개(ICT). Harmonic 상단 PRZ와 겹쳐 방향 확정보다 거절 확인 성격이 강한 숏 진입 최적 존이며, 셋업(77% bearish)의 진입 트리거.
2$59,612support_testFibonacci(0.618 골든 $59,612.41), Candlestick(EMA20 $59,753.53), Harmonic(하단 PRZ 상단 $59,590.72)9$60,700 거절 후 첫 지지 클러스터 $59,612-$59,753 테스트. EMA20 $59,753.53 하회 시 최근 bullish_engulfing 기반 반등 신뢰도가 빠르게 약화(Candlestick)되며, 0.618 되돌림 방어 여부가 단기 분수령.
3$58,900support_testDerivatives(하방 유동성 $58,900), Fibonacci($58,904.49, 0.5 EQ $59,258.45 하단)16지지 클러스터 이탈 시 파생이 지목한 하방 유동성 목표 $58,900 도달. Fib 0.5 EQ $59,258.45 하회로 discount 심화, OI -3.42%(숏커버성 반등 소멸) 논리가 하방 연장을 뒷받침.
4$57,759swing_lowWyckoff(Spring 저점 $57,758.60), ICT(range low $57,758.60), Fibonacci(컨플루언스 $57,758.60), Harmonic($57,758.60)23하단 구조 최중요 방어선 $57,758.60 재테스트로 24시간 하방 익스트림. Wyckoff Spring·ICT range low·Fib·Harmonic 4중 컨플루언스라 강한 반등 후보 구간. 방어 시 Wyckoff 축적 Phase D가 부활하는 반전 존이며, 명확한 종가 이탈 시 축적 시나리오 전체 무효화.

Period Extremes

HorizonExpected LowExpected HighSequence
4h$60,000$60,700High first
8h$59,750$60,700High first
24h$57,759$60,700High first

Triggers

Invalidation: $62,255

Raw Operating Path Response
```json
{
  "path_type": "complex",
  "confidence": 0.62,
  "waypoints": [
    {
      "seq": 1,
      "price": 60700,
      "type": "liquidity_sweep",
      "source": "Derivatives(최대 상방 청산 밀집 $60,700), ICT(전일 고점 $60,520·EQ $60,484.10 buy-side 유동성), Harmonic(상단 PRZ $60,602.82-$61,027.99)",
      "description": "현재가 바로 위 $60,484-$60,700 유동성·저항 클러스터로의 상방 스윕. 파생 최대 상방 청산 밀집 $60,700을 태그해 buy-side 유동성을 흡수한 뒤, EQ $60,484.10 재탈환 실패 시 약세 재개(ICT). Harmonic 상단 PRZ와 겹쳐 방향 확정보다 거절 확인 성격이 강한 숏 진입 최적 존이며, 셋업(77% bearish)의 진입 트리거.",
      "est_hours": 2
    },
    {
      "seq": 2,
      "price": 59612.41,
      "type": "support_test",
      "source": "Fibonacci(0.618 골든 $59,612.41), Candlestick(EMA20 $59,753.53), Harmonic(하단 PRZ 상단 $59,590.72)",
      "description": "$60,700 거절 후 첫 지지 클러스터 $59,612-$59,753 테스트. EMA20 $59,753.53 하회 시 최근 bullish_engulfing 기반 반등 신뢰도가 빠르게 약화(Candlestick)되며, 0.618 되돌림 방어 여부가 단기 분수령.",
      "est_hours": 9
    },
    {
      "seq": 3,
      "price": 58900,
      "type": "support_test",
      "source": "Derivatives(하방 유동성 $58,900), Fibonacci($58,904.49, 0.5 EQ $59,258.45 하단)",
      "description": "지지 클러스터 이탈 시 파생이 지목한 하방 유동성 목표 $58,900 도달. Fib 0.5 EQ $59,258.45 하회로 discount 심화, OI -3.42%(숏커버성 반등 소멸) 논리가 하방 연장을 뒷받침.",
      "est_hours": 16
    },
    {
      "seq": 4,
      "price": 57758.6,
      "type": "swing_low",
      "source": "Wyckoff(Spring 저점 $57,758.60), ICT(range low $57,758.60), Fibonacci(컨플루언스 $57,758.60), Harmonic($57,758.60)",
      "description": "하단 구조 최중요 방어선 $57,758.60 재테스트로 24시간 하방 익스트림. Wyckoff Spring·ICT range low·Fib·Harmonic 4중 컨플루언스라 강한 반등 후보 구간. 방어 시 Wyckoff 축적 Phase D가 부활하는 반전 존이며, 명확한 종가 이탈 시 축적 시나리오 전체 무효화.",
      "est_hours": 23
    }
  ],
  "period_extremes": {
    "4h":  {"expected_high": 60700, "expected_low": 60000, "high_first": true},
    "8h":  {"expected_high": 60700, "expected_low": 59750, "high_first": true},
    "24h": {"expected_high": 60700, "expected_low": 57758.6, "high_first": true}
  },
  "triggers": {
    "bullish": {"price": 61665, "description": "SOS $61,322.00 재탈환 후 메인 레인지 EQ $61,665.00 위 수용 시 Wyckoff 축적 Phase D 강세 재개 확인. 하방 시나리오가 약화되고 $62,232.10 무효화 레벨에 근접."},
    "bearish": {"price": 59612.41, "description": "EMA20 $59,753.53·0.618 $59,612.41 지지 클러스터 종가 이탈 시 반등 붕괴 확정. $58,900·$57,758.60 하방 유동성으로 매도 가속."}
  },
  "scenario_invalidation": 62254.98
}
```

Raw Chairman Response
{
  "overall_signal": "bearish",
  "overall_confidence": 0.64,
  "execution_setup": {
    "setup_bias": "bearish",
    "setup_strength": 0.77,
    "active_setups": [
      "피보나치 기준 현재가 $60,122.80이 하락 스윙 $60,758→$57,758.60의 0.786 되돌림 $60,116.36을 테스트 중",
      "ICT 기준 전일 고점 $60,520.00 상회 후 재하락하여 buy-side liquidity raid 후보 형성",
      "ICT 기준 가격이 EQ $60,484.10 아래에 있어 $60,484.10 회복 실패 시 약세 구조 유지",
      "파생 기준 가장 강한 상방 청산 밀집이 $60,700에 있어 단기 유동성 흡수 후 되돌림 위험 존재",
      "파생 기준 24시간 가격 +2.35%에도 OI -3.42%로 신규 롱 축적보다 숏커버성 반등 가능성 우세",
      "Wyckoff 기준 SOS $61,322.00 및 메인 레인지 EQ $61,665.00 위 수용이 아직 미확인"
    ],
    "setup_vs_structure": "구조 신호는 bearish가 우세하지만, Wyckoff는 4시간 축적 Phase D를 제시해 구조 해석에 충돌이 있다. 실행 셋업은 Fibonacci·ICT·Derivatives 3개 이상이 bearish로 정렬되어 있어, 현재 반등은 아직 구조 전환 확인보다는 저항·유동성 테스트 성격이 강하다."
  },
  "signal_breakdown": {
    "bullish_count": 1,
    "bearish_count": 4,
    "neutral_count": 1
  },
  "key_levels": {
    "support": [
      60116.36,
      59753.53,
      59612.41,
      59298.4,
      59258.45,
      59080.0,
      58900.0,
      58600.0,
      57758.6
    ],
    "resistance": [
      60484.1,
      60520.0,
      60700.0,
      61322.0,
      61665.0,
      61897.6,
      62232.1,
      62254.98,
      64250.0
    ]
  },
  "confluences": [
    "Fibonacci의 0.786 되돌림 $60,116.36과 현재가 $60,122.80이 거의 일치하며, Harmonic도 최근접 PRZ $60,121.46을 제시해 $60.12k 부근이 즉각적인 반응 구간으로 중첩된다.",
    "ICT의 EQ $60,484.10, 전일 고점 $60,520.00, Derivatives의 상방 청산 밀집 $60,700, Harmonic의 상단 PRZ $60,602.82-$61,027.99가 $60.5k-$60.7k 저항·유동성 구간으로 모인다.",
    "Wyckoff의 SOS $61,322.00, 메인 레인지 EQ $61,665.00, Harmonic의 PRZ $61,637.48-$61,675.69가 $61.3k-$61.7k 구조 확인 저항대로 중첩된다.",
    "ICT의 최근 bearish BOS 레벨 $62,232.10과 Candlestick의 EMA120 $62,254.98이 거의 동일해 $62.23k-$62.25k가 중기 bearish 구조의 핵심 회복 기준으로 작동한다.",
    "Wyckoff Spring 저점 $57,758.60, ICT range low $57,758.60, Fibonacci 확장·컨플루언스 $57,758.60이 동일해 $57,758.60은 하단 구조 방어의 최중요 기준이다.",
    "Candlestick EMA20 $59,753.53, Fibonacci 0.618 $59,612.41, Harmonic 하단 PRZ 상단 $59,590.72가 $59.6k-$59.75k 단기 지지 클러스터를 형성한다."
  ],
  "conflicts": [
    "Wyckoff는 SC $59,080.00, Spring $57,758.60, SOS $61,322.00을 근거로 4시간 confirmed accumulation 및 Phase D를 제시하지만, ICT는 $62,232.10 하방 bearish BOS 이후 회복 실패를 근거로 bearish 구조를 유지한다.",
    "Candlestick은 최근 bullish engulfing 3회와 EMA20 $59,753.53 상회로 실행 셋업은 bullish라고 보지만, 자체 구조 판단은 EMA120 $62,254.98 및 EMA240 $65,557.05 아래이므로 bearish로 분리된다.",
    "Fibonacci는 $60,116.36의 0.786 되돌림 테스트를 프리미엄 구간의 되돌림 매도 조건으로 해석하는 반면, Wyckoff는 $57,758.60 Spring 이후 레인지 재진입을 매도 유동성 흡수로 본다.",
    "Harmonic은 $60,121.46 근처 PRZ와 상·하방 PRZ 충돌로 방향성 중립을 유지하며, 이는 ICT·Fibonacci·Derivatives의 bearish 실행 셋업과 직접적인 방향 합의를 만들지 못한다."
  ],
  "highest_conviction_analyst": "ICT Trader — 84% 신뢰도와 0.92의 강한 bearish setup을 제시하며, 최근 $62,232.10 하방 bearish BOS, EQ $60,484.10 미회복, 전일 고점 $60,520.00 돌파 후 재하락이라는 구체적 구조·유동성 근거가 Fibonacci와 Derivatives의 bearish 셋업과 가장 잘 정렬된다.",
  "invalidation_level": "$62,232.10-$62,254.98 구간을 4시간 종가 기준으로 회복·수용하면 현재 bearish 구조 판단은 크게 약화된다. 완전한 구조 반전 확인은 Wyckoff AR 및 상단 레인지인 $64,250.00 회복 여부가 핵심이다.",
  "executive_summary": "현재 BTC 4시간 구조는 다수 구조 판독상 bearish가 우세하나, Wyckoff 관점에서는 SC $59,080.00 이후 Spring $57,758.60과 SOS $61,322.00이 형성된 confirmed accumulation Phase D로 해석되어 구조 충돌이 뚜렷하다. 현 위치는 Wyckoff상 SOS 이후 LPS 재테스트 후보 구간이지만, 가격은 아직 SOS $61,322.00과 레인지 EQ $61,665.00 위에 수용되지 못했고, ICT 기준으로는 $62,232.10 bearish BOS 하방에 남아 있다. $60,116.36-$60,122.80 부근은 Fibonacci 0.786과 Harmonic PRZ가 겹치는 즉각 반응 구간이며, $60,484.10-$60,700은 EQ·전일 고점·청산 밀집이 겹친 유동성 저항 구간이다. 하단에서는 $59,753.53-$59,612.41이 단기 지지 클러스터이고, $57,758.60은 Wyckoff Spring·ICT range low·Fibonacci 컨플루언스가 겹치는 핵심 구조 방어선이다. 구조적 bearish 판단의 무효화는 우선 $62,232.10-$62,254.98 회복이며, 상위 확정 전환은 $64,250.00 회복이 필요하다."
}
Full Result JSON
{
  "symbol": "BTC/USDT",
  "timeframe": "4h",
  "timestamp": "2026-07-02 17:00 KST",
  "last_price": 60122.8,
  "num_candles": 300,
  "stage1_analyses": {
    "wyckoff": {
      "agent_id": "wyckoff",
      "display_name": "Wyckoff Expert",
      "signal": "bullish",
      "confidence": 0.72,
      "structure_bias": "bullish",
      "setup_bias": "neutral",
      "setup_score": 0.46,
      "setup_signals": [
        "가격이 메인 레인지 EQ 약 $61,665 아래인 $60,122.80에 위치하여 할인 구간에 있음",
        "Spring 저점 $57,758.60 이후 메인 레인지 저점 $59,080.00을 재진입하며 매도 유동성 흡수 흔적 발생",
        "SOS가 $61,322.00에서 발생했으나 현재가 $60,122.80으로 SOS 레벨 위 수용은 아직 미확인",
        "Phase D 구조는 확인되었지만 LPS 또는 BU 테스트가 아직 명확히 완성되지 않음"
      ],
      "reasoning": "현재 지표상 regime은 ACC, regime_state는 confirmed_acc이며 acc_score 88.8, regime_fitness 0.888로 누적 구조 우위가 확인됩니다. 주요 앵커는 SC $59,080.00, AR $64,250.00이며, 이후 Spring $57,758.60과 SOS $61,322.00이 형성되어 현재는 축적 Phase D로 해석됩니다. 다만 현재가 $60,122.80은 SOS $61,322.00 아래에 있어 SOS 이후의 확정적 상방 수용보다는 LPS 성격의 재테스트 가능성을 먼저 봐야 합니다. 구조적 편향은 bullish이지만, 실행 관점의 setup_bias는 SOS 상단 회복 전까지 neutral이며, $61,322 회복 및 $61,665 EQ 안착이 단기 강세 재개 확인 레벨입니다.",
      "key_levels": {
        "support": [
          59753.53,
          59080.0,
          57758.6
        ],
        "resistance": [
          61322.0,
          61665.0,
          64250.0
        ]
      },
      "time_horizon": "medium term",
      "invalidation_level": "$57,758.60",
      "risk_scenario": "$61,322.00 SOS 레벨을 회복하지 못하고 $59,080.00 SC/레인지 저점 아래로 재이탈하면 Phase D 해석은 약화되며, 특히 Spring 저점 $57,758.60 하향 이탈 시 Spring 실패로 누적 구조가 무효화될 수 있습니다.",
      "data_quality": "high",
      "metrics": {
        "acc_score": 88.8,
        "dis_score": 81.2,
        "regime": "ACC",
        "regime_state": "confirmed_acc",
        "structure_bias": "bullish",
        "phase_context": "confirmed_acc / accumulation / Phase D",
        "phases_detected": [
          "SC",
          "AR",
          "ST",
          "Spring",
          "SOS"
        ],
        "last_phase": "SOS",
        "phase_candidates": [
          {
            "label": "SC",
            "side": "low",
            "idx": 140,
            "price": 59080.0,
            "color": "#ffd166"
          },
          {
            "label": "AR",
            "side": "high",
            "idx": 153,
            "price": 64250.0,
            "color": "#06d6a0"
          },
          {
            "label": "ST",
            "side": "low",
            "idx": 194,
            "price": 63650.0,
            "color": "#118ab2"
          },
          {
            "label": "Spring",
            "side": "low",
            "idx": 292,
            "price": 57758.6,
            "color": "#f9844a"
          },
          {
            "label": "SOS",
            "side": "high",
            "idx": 297,
            "price": 61322.0,
            "color": "#06d6a0"
          }
        ],
        "phase_structures": [
          {
            "structure_id": "4h_cycle_1",
            "sequence": 1,
            "timeframe": "4h",
            "regime": "accumulation",
            "role": "current_structure_candidate",
            "is_active": true,
            "is_completed": false,
            "is_confirmed": true,
            "structure_bias": "bullish",
            "phase_context": "accumulation",
            "start_idx": 140,
            "end_idx": 297,
            "phase_count": 5,
            "phases": [
              {
                "label": "SC",
                "side": "low",
                "idx": 140,
                "price": 59080.0,
                "color": "#ffd166",
                "dt": "2026-06-06 01:00:00+09:00"
              },
              {
                "label": "AR",
                "side": "high",
                "idx": 153,
                "price": 64250.0,
                "color": "#06d6a0",
                "dt": "2026-06-08 05:00:00+09:00"
              },
              {
                "label": "ST",
                "side": "low",
                "idx": 194,
                "price": 63650.0,
                "color": "#118ab2",
                "dt": "2026-06-15 01:00:00+09:00"
              },
              {
                "label": "Spring",
                "side": "low",
                "idx": 292,
                "price": 57758.6,
                "color": "#f9844a",
                "dt": "2026-07-01 09:00:00+09:00"
              },
              {
                "label": "SOS",
                "side": "high",
                "idx": 297,
                "price": 61322.0,
                "color": "#06d6a0",
                "dt": "2026-07-02 05:00:00+09:00"
              }
            ]
          }
        ],
        "active_structure_id": "4h_cycle_1",
        "primary_structure_id": "4h_cycle_1",
        "structure_count": 1,
        "regime_fitness": 0.8875000000000001,
        "current_event": "SOS",
        "major_phase": "D",
        "pos_in_range": 0.5,
        "main_range_low": 59080.0,
        "main_range_high": 64250.0
      },
      "raw_llm_response": "{\n  \"signal\": \"bullish\",\n  \"confidence\": 0.72,\n  \"structure_bias\": \"bullish\",\n  \"setup_bias\": \"neutral\",\n  \"setup_score\": 0.46,\n  \"setup_signals\": [\n    \"가격이 메인 레인지 EQ 약 $61,665 아래인 $60,122.80에 위치하여 할인 구간에 있음\",\n    \"Spring 저점 $57,758.60 이후 메인 레인지 저점 $59,080.00을 재진입하며 매도 유동성 흡수 흔적 발생\",\n    \"SOS가 $61,322.00에서 발생했으나 현재가 $60,122.80으로 SOS 레벨 위 수용은 아직 미확인\",\n    \"Phase D 구조는 확인되었지만 LPS 또는 BU 테스트가 아직 명확히 완성되지 않음\"\n  ],\n  \"reasoning\": \"현재 지표상 regime은 ACC, regime_state는 confirmed_acc이며 acc_score 88.8, regime_fitness 0.888로 누적 구조 우위가 확인됩니다. 주요 앵커는 SC $59,080.00, AR $64,250.00이며, 이후 Spring $57,758.60과 SOS $61,322.00이 형성되어 현재는 축적 Phase D로 해석됩니다. 다만 현재가 $60,122.80은 SOS $61,322.00 아래에 있어 SOS 이후의 확정적 상방 수용보다는 LPS 성격의 재테스트 가능성을 먼저 봐야 합니다. 구조적 편향은 bullish이지만, 실행 관점의 setup_bias는 SOS 상단 회복 전까지 neutral이며, $61,322 회복 및 $61,665 EQ 안착이 단기 강세 재개 확인 레벨입니다.\",\n  \"key_levels\": {\n    \"support\": [\n      59753.53,\n      59080.0,\n      57758.6\n    ],\n    \"resistance\": [\n      61322.0,\n      61665.0,\n      64250.0\n    ]\n  },\n  \"time_horizon\": \"medium term\",\n  \"invalidation_level\": \"$57,758.60\",\n  \"risk_scenario\": \"$61,322.00 SOS 레벨을 회복하지 못하고 $59,080.00 SC/레인지 저점 아래로 재이탈하면 Phase D 해석은 약화되며, 특히 Spring 저점 $57,758.60 하향 이탈 시 Spring 실패로 누적 구조가 무효화될 수 있습니다.\",\n  \"data_quality\": \"high\"\n}"
    },
    "candlestick": {
      "agent_id": "candlestick",
      "display_name": "Candlestick Reader",
      "signal": "bullish",
      "confidence": 0.64,
      "structure_bias": "bearish",
      "setup_bias": "bullish",
      "setup_score": 0.72,
      "setup_signals": [
        "현재가 $60,122.80이 EMA20 $59,753.53 위에 있어 단기 재매수 셋업이 유지됨",
        "최근 5개 패턴 중 bullish_engulfing이 3회(@292, @295, @298) 발생했고, 최상위 패턴 품질 0.693은 strict 등급",
        "bullish_engulfing 중 1개가 20봉 평균 거래대금 $37,764.56 대비 고거래량으로 확인되어 매수 반응 신뢰도 상승",
        "가격이 EMA120 $62,254.98보다 3.4%, EMA240 $65,557.05보다 8.3% 낮아 중기 구조는 아직 회복 전이나, 할인 구간에서 반등 셋업이 형성됨",
        "7일 저점 $57,758.60을 방어한 뒤 현재 $60,122.80까지 반등했으며, 7일 고점 $61,897.60이 단기 유동성 목표로 남아 있음"
      ],
      "reasoning": "캔들 패턴 관점에서는 최근 bullish_engulfing이 3회 반복되었고, 그중 최상위 패턴 품질이 0.693이며 고거래량 조건까지 동반되어 단기 매수 셋업이 우세합니다. 현재가 $60,122.80은 EMA20 $59,753.53 위에 있어 단기 반등 흐름은 살아 있지만, EMA120 $62,254.98 및 EMA240 $65,557.05 아래에 머물러 있어 확정 구조는 아직 bearish로 판단합니다. 즉, 구조적으로는 중기 하락 압력이 남아 있으나, 실행 관점에서는 $57,758.60 저점 방어 이후 $61,897.60 테스트를 노리는 bullish setup이 활성화된 상태입니다. 다만 최근 마지막 캔들이 -1.5% 하락했고 bearish_harami와 doji도 함께 감지되어, $59,753.53 아래로 재이탈하면 반등 신뢰도는 빠르게 약화됩니다.",
      "key_levels": {
        "support": [
          59753.53,
          57758.6
        ],
        "resistance": [
          61897.6,
          62254.98,
          65557.05
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$57,758.60",
      "risk_scenario": "$59,753.53 EMA20 아래로 재이탈한 뒤 $57,758.60 7일 저점을 깨면 bullish engulfing 기반 반등 셋업은 실패로 전환되며, 매도세가 재개되어 중기 bearish 구조가 강화될 수 있습니다.",
      "data_quality": "medium",
      "metrics": {
        "total_patterns_detected": 140,
        "recent_patterns": 5,
        "pattern_list": [
          "bullish_engulfing@292",
          "bullish_engulfing@295",
          "bullish_engulfing@298",
          "doji@297",
          "bearish_harami@291"
        ],
        "atr_value": 993.14,
        "vol_avg_20": 37764.56,
        "high_volume_patterns": [
          "bullish_engulfing"
        ],
        "pattern_candidates": [
          {
            "pattern": "bullish_engulfing",
            "signal": "bullish",
            "pattern_quality": 0.693,
            "tier": "strict",
            "high_volume": true
          },
          {
            "pattern": "bullish_engulfing",
            "signal": "bullish",
            "pattern_quality": 0.586,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "bullish_engulfing",
            "signal": "bullish",
            "pattern_quality": 0.403,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "bearish_harami",
            "signal": "bearish",
            "pattern_quality": 0.383,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "doji",
            "signal": "neutral",
            "pattern_quality": 0.355,
            "tier": "candidate",
            "high_volume": false
          }
        ],
        "best_pattern_quality": 0.693,
        "bull_score": 2.35,
        "bear_score": 0.6
      },
      "raw_llm_response": "{\n  \"signal\": \"bullish\",\n  \"confidence\": 0.64,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.72,\n  \"setup_signals\": [\n    \"현재가 $60,122.80이 EMA20 $59,753.53 위에 있어 단기 재매수 셋업이 유지됨\",\n    \"최근 5개 패턴 중 bullish_engulfing이 3회(@292, @295, @298) 발생했고, 최상위 패턴 품질 0.693은 strict 등급\",\n    \"bullish_engulfing 중 1개가 20봉 평균 거래대금 $37,764.56 대비 고거래량으로 확인되어 매수 반응 신뢰도 상승\",\n    \"가격이 EMA120 $62,254.98보다 3.4%, EMA240 $65,557.05보다 8.3% 낮아 중기 구조는 아직 회복 전이나, 할인 구간에서 반등 셋업이 형성됨\",\n    \"7일 저점 $57,758.60을 방어한 뒤 현재 $60,122.80까지 반등했으며, 7일 고점 $61,897.60이 단기 유동성 목표로 남아 있음\"\n  ],\n  \"reasoning\": \"캔들 패턴 관점에서는 최근 bullish_engulfing이 3회 반복되었고, 그중 최상위 패턴 품질이 0.693이며 고거래량 조건까지 동반되어 단기 매수 셋업이 우세합니다. 현재가 $60,122.80은 EMA20 $59,753.53 위에 있어 단기 반등 흐름은 살아 있지만, EMA120 $62,254.98 및 EMA240 $65,557.05 아래에 머물러 있어 확정 구조는 아직 bearish로 판단합니다. 즉, 구조적으로는 중기 하락 압력이 남아 있으나, 실행 관점에서는 $57,758.60 저점 방어 이후 $61,897.60 테스트를 노리는 bullish setup이 활성화된 상태입니다. 다만 최근 마지막 캔들이 -1.5% 하락했고 bearish_harami와 doji도 함께 감지되어, $59,753.53 아래로 재이탈하면 반등 신뢰도는 빠르게 약화됩니다.\",\n  \"key_levels\": {\n    \"support\": [\n      59753.53,\n      57758.6\n    ],\n    \"resistance\": [\n      61897.6,\n      62254.98,\n      65557.05\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$57,758.60\",\n  \"risk_scenario\": \"$59,753.53 EMA20 아래로 재이탈한 뒤 $57,758.60 7일 저점을 깨면 bullish engulfing 기반 반등 셋업은 실패로 전환되며, 매도세가 재개되어 중기 bearish 구조가 강화될 수 있습니다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "fibonacci": {
      "agent_id": "fibonacci",
      "display_name": "Fibonacci Analyst",
      "signal": "bearish",
      "confidence": 0.62,
      "structure_bias": "bearish",
      "setup_bias": "bearish",
      "setup_score": 0.67,
      "setup_signals": [
        "현재가 $60,122.80이 하락 스윙 $60,758→$57,758.60의 0.786 되돌림 $60,116.36을 테스트 중",
        "가격이 EQ 0.5 레벨 $59,258.45 위에 있어 하락 스윙 기준 프리미엄 구간에 위치",
        "0.618 골든 레벨 $59,612.41을 이미 상회했지만, 0.786 $60,116.36 부근에서 반응 상태가 testing으로 표시됨",
        "상위 EMA120 $62,254.98 및 EMA240 $65,557.05 아래에 위치해 중기 구조 저항이 남아 있음",
        "하단 유동성/컨플루언스 구간은 $57,758.60이며 ext_1.0 중복으로 cluster_score 0.6 확인"
      ],
      "reasoning": "확정 구조는 아직 상승 전환으로 보기 어렵고, 최근 주요 스윙이 $60,758 고점에서 $57,758.60 저점으로 형성된 하락 스윙이므로 structure_bias는 bearish로 판단한다. 현재가는 $60,122.80으로 0.786 되돌림 $60,116.36과 거의 동일하며, nearest_fib_distance가 0.010으로 매우 근접해 단기 반응 가능성이 높다. 특히 EQ인 0.5 레벨 $59,258.45와 골든 비율 0.618 레벨 $59,612.41 위의 프리미엄 영역에서 거래되고 있어, 구조 전환 확인 전에는 되돌림 매도 setup이 우세하다. 하락이 재개될 경우 1차 지지는 $59,612.41, 이후 $59,258.45, $58,904.49이며, 더 깊은 유동성 목표는 컨플루언스가 있는 $57,758.60이다.",
      "key_levels": {
        "support": [
          60116.36,
          59612.41,
          59258.45,
          58904.49,
          57758.6
        ],
        "resistance": [
          60758,
          61897.6,
          62254.98,
          65557.05
        ]
      },
      "time_horizon": "단기",
      "invalidation_level": "$60,758.00 상향 돌파 및 4시간봉 종가 안착",
      "risk_scenario": "반대로 $60,758을 돌파해 구조적 수용이 발생하면 현재 0.786 되돌림 저항 시나리오는 무효화되며, 가격은 7일 고점 $61,897.60 및 EMA120 $62,254.98까지 확장될 수 있다. 이 경우 하락 스윙의 되돌림이 아니라 상승 전환 초기 국면으로 재해석해야 한다.",
      "data_quality": "high",
      "metrics": {
        "swing_pair": "High→Low: $60,758 → $57,759",
        "direction": "down",
        "nearest_fib": "ret_0.786",
        "nearest_fib_price": 60116.36,
        "nearest_fib_distance": 0.01,
        "golden_ratio_level": 59612.41,
        "fib_ret_382": 58904.49,
        "fib_ret_618": 59612.41,
        "confluence_zones": [
          {
            "price": 57758.6,
            "count": 2,
            "levels": [
              "ext_1.0",
              "ext_1.0"
            ],
            "cluster_score": 0.6
          }
        ],
        "support_levels": [
          60116.3642,
          59612.414600000004,
          59258.45
        ],
        "resistance_levels": [],
        "level_candidates": [
          {
            "name": "ret_0.236",
            "price": 58466.53,
            "distance_pct": 2.75,
            "is_support": true,
            "cluster_score": 0.0
          },
          {
            "name": "ret_0.382",
            "price": 58904.49,
            "distance_pct": 2.03,
            "is_support": true,
            "cluster_score": 0.0
          },
          {
            "name": "ret_0.5",
            "price": 59258.45,
            "distance_pct": 1.44,
            "is_support": true,
            "cluster_score": 0.0
          },
          {
            "name": "ret_0.618",
            "price": 59612.41,
            "distance_pct": 0.85,
            "is_support": true,
            "cluster_score": 0.0
          },
          {
            "name": "ret_0.786",
            "price": 60116.36,
            "distance_pct": 0.01,
            "is_support": true,
            "cluster_score": 0.0
          },
          {
            "name": "ext_1.0",
            "price": 57758.6,
            "distance_pct": 3.93,
            "is_support": true,
            "cluster_score": 0.6
          },
          {
            "name": "ext_1.272",
            "price": 56942.68,
            "distance_pct": 5.29,
            "is_support": true,
            "cluster_score": 0.0
          },
          {
            "name": "ext_1.414",
            "price": 56516.72,
            "distance_pct": 6.0,
            "is_support": true,
            "cluster_score": 0.0
          },
          {
            "name": "ext_1.618",
            "price": 55904.79,
            "distance_pct": 7.02,
            "is_support": true,
            "cluster_score": 0.0
          },
          {
            "name": "ext_2.0",
            "price": 54758.9,
            "distance_pct": 8.92,
            "is_support": true,
            "cluster_score": 0.0
          }
        ],
        "confluence_quality": 0.6,
        "fib_reaction_state": "testing",
        "reaction_probability": 0.65
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.62,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.67,\n  \"setup_signals\": [\n    \"현재가 $60,122.80이 하락 스윙 $60,758→$57,758.60의 0.786 되돌림 $60,116.36을 테스트 중\",\n    \"가격이 EQ 0.5 레벨 $59,258.45 위에 있어 하락 스윙 기준 프리미엄 구간에 위치\",\n    \"0.618 골든 레벨 $59,612.41을 이미 상회했지만, 0.786 $60,116.36 부근에서 반응 상태가 testing으로 표시됨\",\n    \"상위 EMA120 $62,254.98 및 EMA240 $65,557.05 아래에 위치해 중기 구조 저항이 남아 있음\",\n    \"하단 유동성/컨플루언스 구간은 $57,758.60이며 ext_1.0 중복으로 cluster_score 0.6 확인\"\n  ],\n  \"reasoning\": \"확정 구조는 아직 상승 전환으로 보기 어렵고, 최근 주요 스윙이 $60,758 고점에서 $57,758.60 저점으로 형성된 하락 스윙이므로 structure_bias는 bearish로 판단한다. 현재가는 $60,122.80으로 0.786 되돌림 $60,116.36과 거의 동일하며, nearest_fib_distance가 0.010으로 매우 근접해 단기 반응 가능성이 높다. 특히 EQ인 0.5 레벨 $59,258.45와 골든 비율 0.618 레벨 $59,612.41 위의 프리미엄 영역에서 거래되고 있어, 구조 전환 확인 전에는 되돌림 매도 setup이 우세하다. 하락이 재개될 경우 1차 지지는 $59,612.41, 이후 $59,258.45, $58,904.49이며, 더 깊은 유동성 목표는 컨플루언스가 있는 $57,758.60이다.\",\n  \"key_levels\": {\n    \"support\": [\n      60116.36,\n      59612.41,\n      59258.45,\n      58904.49,\n      57758.6\n    ],\n    \"resistance\": [\n      60758,\n      61897.6,\n      62254.98,\n      65557.05\n    ]\n  },\n  \"time_horizon\": \"단기\",\n  \"invalidation_level\": \"$60,758.00 상향 돌파 및 4시간봉 종가 안착\",\n  \"risk_scenario\": \"반대로 $60,758을 돌파해 구조적 수용이 발생하면 현재 0.786 되돌림 저항 시나리오는 무효화되며, 가격은 7일 고점 $61,897.60 및 EMA120 $62,254.98까지 확장될 수 있다. 이 경우 하락 스윙의 되돌림이 아니라 상승 전환 초기 국면으로 재해석해야 한다.\",\n  \"data_quality\": \"high\"\n}"
    },
    "ict": {
      "agent_id": "ict",
      "display_name": "ICT Trader",
      "signal": "bearish",
      "confidence": 0.84,
      "structure_bias": "bearish",
      "setup_bias": "bearish",
      "setup_score": 0.92,
      "setup_signals": [
        "현재가 $60,122.80가 EQ $60,484.10 아래에 있어 discount 구간에 있으나, EQ 재탈환 실패 시 약세 지속 조건",
        "전일 고점 $60,520.00을 상회한 뒤 현재 $60,122.80으로 되돌아와 buy-side liquidity raid 후보 형성",
        "최근 확인된 구조 이벤트가 $62,232.10 하방 bearish BOS로, 상방 회복 전까지 매도 우위",
        "EMA20 $59,753.53 위에는 있으나 EMA120 $62,254.98 및 EMA240 $65,557.05 아래에 있어 중기 하락 압력 유지",
        "활성 bullish OB와 unfilled bullish FVG가 없으며, 하단 후보 bullish OB $57,758.60-$59,298.40이 유동성/반응 구간으로 남아 있음"
      ],
      "reasoning": "확정 구조는 bearish로 판단한다. BOS 시퀀스가 bearish 중심이며, 특히 최근 $62,232.10 하방 bearish BOS 이후 가격이 아직 이 레벨을 회복하지 못했다. 현재가 $60,122.80는 EQ $60,484.10 아래 discount에 있어 단기 반등 여지는 있지만, 전일 고점 $60,520.00을 돌파한 뒤 다시 아래로 밀린 점은 buy-side liquidity sweep 후보로 해석된다. 또한 EMA120 $62,254.98과 EMA240 $65,557.05 아래에 머물러 있어 기관 관점의 중기 order flow는 여전히 매도 우위다.",
      "key_levels": {
        "support": [
          59298.4,
          57758.6,
          57758.6
        ],
        "resistance": [
          60484.1,
          60520.0,
          62232.1,
          63209.6,
          64250.0
        ]
      },
      "time_horizon": "중기, 4시간봉 기준",
      "invalidation_level": "$62,232.10 상방 4시간봉 종가 회복",
      "risk_scenario": "반대 시나리오는 가격이 EQ $60,484.10과 전일 고점 $60,520.00을 재차 회복한 뒤 $62,232.10 bearish BOS 레벨 위에서 4시간봉 종가 수용을 만드는 경우다. 이 경우 현재의 buy-side raid 해석은 실패하며, $63,209.60 range high와 $64,250.00 bullish BOS 레벨까지 숏 커버링 반등이 열릴 수 있다.",
      "data_quality": "medium",
      "metrics": {
        "order_blocks_total": 3,
        "confirmed_bullish_ob": 0,
        "confirmed_bearish_ob": 0,
        "candidate_bullish_ob": 1,
        "candidate_bearish_ob": 2,
        "active_bullish_ob": 0,
        "active_bearish_ob": 0,
        "nearest_bull_ob_range": {
          "bottom": 57758.6,
          "top": 59298.4,
          "quality": "candidate",
          "score": 0.546
        },
        "nearest_bear_ob_range": {
          "bottom": 76234.7,
          "top": 78077.1,
          "quality": "candidate",
          "score": 0.56
        },
        "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": 56,
        "fvg_open_zones": [],
        "bos_choch_events": [
          "BOS_bearish",
          "BOS_bearish",
          "BOS_bearish",
          "BOS_bullish",
          "BOS_bearish"
        ],
        "bos_choch_levels": [
          {
            "type": "BOS_bearish",
            "level": 76014.2
          },
          {
            "type": "BOS_bearish",
            "level": 74203.6
          },
          {
            "type": "BOS_bearish",
            "level": 72436.0
          },
          {
            "type": "BOS_bullish",
            "level": 64250.0
          },
          {
            "type": "BOS_bearish",
            "level": 62232.1
          }
        ],
        "bos_sequence": [
          "BOS_bearish",
          "BOS_bearish",
          "BOS_bearish",
          "BOS_bullish",
          "BOS_bearish"
        ],
        "consecutive_bull_bos": 0,
        "consecutive_bear_bos": 1,
        "recent_liq_sweeps": [],
        "recent_sweep_levels": [],
        "liquidity_resting": [
          {
            "type": "BSL",
            "level": 78128.55
          }
        ],
        "current_zone": "discount",
        "eq_level": 60484.1,
        "range_high": 63209.6,
        "range_low": 57758.6,
        "bull_score": 3.8,
        "bear_score": 10.0,
        "setup_bias": "bearish",
        "setup_score": 0.92,
        "setup_signals": [
          "bearish BOS below $76,014.20",
          "bearish BOS below $74,203.60",
          "bearish BOS below $72,436.00",
          "bearish BOS below $62,232.10"
        ],
        "retracement_direction": "bullish",
        "current_retracement_pct": 47.3,
        "deepest_retracement_pct": 109.4,
        "previous_day_high": 60520.0,
        "previous_day_low": 57758.6,
        "broken_prev_high": true,
        "broken_prev_low": false,
        "sessions": {}
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.84,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.92,\n  \"setup_signals\": [\n    \"현재가 $60,122.80가 EQ $60,484.10 아래에 있어 discount 구간에 있으나, EQ 재탈환 실패 시 약세 지속 조건\",\n    \"전일 고점 $60,520.00을 상회한 뒤 현재 $60,122.80으로 되돌아와 buy-side liquidity raid 후보 형성\",\n    \"최근 확인된 구조 이벤트가 $62,232.10 하방 bearish BOS로, 상방 회복 전까지 매도 우위\",\n    \"EMA20 $59,753.53 위에는 있으나 EMA120 $62,254.98 및 EMA240 $65,557.05 아래에 있어 중기 하락 압력 유지\",\n    \"활성 bullish OB와 unfilled bullish FVG가 없으며, 하단 후보 bullish OB $57,758.60-$59,298.40이 유동성/반응 구간으로 남아 있음\"\n  ],\n  \"reasoning\": \"확정 구조는 bearish로 판단한다. BOS 시퀀스가 bearish 중심이며, 특히 최근 $62,232.10 하방 bearish BOS 이후 가격이 아직 이 레벨을 회복하지 못했다. 현재가 $60,122.80는 EQ $60,484.10 아래 discount에 있어 단기 반등 여지는 있지만, 전일 고점 $60,520.00을 돌파한 뒤 다시 아래로 밀린 점은 buy-side liquidity sweep 후보로 해석된다. 또한 EMA120 $62,254.98과 EMA240 $65,557.05 아래에 머물러 있어 기관 관점의 중기 order flow는 여전히 매도 우위다.\",\n  \"key_levels\": {\n    \"support\": [\n      59298.4,\n      57758.6,\n      57758.6\n    ],\n    \"resistance\": [\n      60484.1,\n      60520.0,\n      62232.1,\n      63209.6,\n      64250.0\n    ]\n  },\n  \"time_horizon\": \"중기, 4시간봉 기준\",\n  \"invalidation_level\": \"$62,232.10 상방 4시간봉 종가 회복\",\n  \"risk_scenario\": \"반대 시나리오는 가격이 EQ $60,484.10과 전일 고점 $60,520.00을 재차 회복한 뒤 $62,232.10 bearish BOS 레벨 위에서 4시간봉 종가 수용을 만드는 경우다. 이 경우 현재의 buy-side raid 해석은 실패하며, $63,209.60 range high와 $64,250.00 bullish BOS 레벨까지 숏 커버링 반등이 열릴 수 있다.\",\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,122.80이 EMA20 $59,753.53 위에는 있으나 EMA120 $62,254.98 및 EMA240 $65,557.05 아래에 있어 상위 구조는 아직 하락 우위",
        "가장 강한 상방 청산 레벨이 $60,700에 집중되어 있어 단기 유동성 흡수 후 되돌림 위험 존재",
        "24시간 가격은 +2.35% 상승했지만 OI는 -3.42% 감소하여 신규 롱 유입보다 숏커버/포지션 언와인딩 성격이 강함",
        "롱 계정 비율 0.651, account_long_crowding 1.000으로 롱 포지셔닝이 여전히 혼잡한 contrarian bearish 조건",
        "CVD divergence 0.700으로 가격 반등 대비 참여 강도에 불일치가 발생",
        "현물-선물 basis -0.0452%로 선물 프리미엄이 약하고 파생시장 매수 추격 강도가 제한적"
      ],
      "reasoning": "BTC는 현재 $60,122.80에서 EMA20 $59,753.53을 소폭 상회하지만, EMA120 $62,254.98과 EMA240 $65,557.05 아래에 머물러 구조적으로는 아직 하락 추세 내 반등으로 해석된다. 24시간 가격이 +2.35% 상승했음에도 OI가 -3.42% 감소한 것은 신규 레버리지 롱 축적이 아니라 포지션 청산/언와인딩성 반등일 가능성이 높아 지속성이 약하다. 롱 계정 비율은 0.651로 여전히 높고 account_long_crowding이 1.000인 반면, long_account_change_24h는 -0.0573, short_account_change_24h는 +0.057로 계정 플로우는 롱 이탈과 숏 증가를 보여 단기 변동성 확대 가능성이 있다. 가장 가까운 상방 청산 밀집 구간은 $60,700이며, 이 레벨을 스윕한 뒤 $58,900 또는 $58,600 하방 유동성으로 되돌리는 시나리오가 우세하다.",
      "key_levels": {
        "support": [
          58900,
          58600,
          57758.6,
          57600
        ],
        "resistance": [
          60700,
          61897.6,
          62254.98,
          62400,
          65557.05,
          66000
        ]
      },
      "time_horizon": "short term, 향후 4-8시간",
      "invalidation_level": "$62,400 상방 청산 레벨을 4시간 종가로 회복하고 EMA120 $62,254.98 위에서 수용될 경우",
      "risk_scenario": "반대 시나리오는 $60,700 상방 청산을 단순 스윕하지 않고 강하게 돌파한 뒤 $61,897.60 7일 고점과 EMA120 $62,254.98을 회복하는 경우이다. 이 경우 감소하던 OI가 다시 증가하면서 숏 포지션이 압박받고, $62,400 이후 $66,000 상방 청산 구간까지 숏스퀴즈가 확장될 수 있다.",
      "data_quality": "medium",
      "metrics": {
        "cvd_divergence": 0.7,
        "cvd_change": 7528.322,
        "oi_trend": 0.158,
        "oi_change_pct_24h": -3.42,
        "oi_latest": 104854.213,
        "funding_pressure": 0.444,
        "funding_avg": 5.642e-05,
        "funding_change_24h": 6.148e-05,
        "long_account_ratio": 0.675,
        "short_account_ratio": 0.325,
        "long_account_latest": 0.651,
        "short_account_latest": 0.349,
        "long_account_change_24h": -0.0573,
        "short_account_change_24h": 0.0573,
        "account_flow_label": "short_accounts_rising_long_accounts_falling",
        "account_short_crowding": 0.0,
        "account_long_crowding": 1.0,
        "ls_imbalance": 0.0,
        "ls_imbalance_interpretation": "high=short-account crowding / low=long-account crowding",
        "spot_futures_basis_score": 0.489,
        "spot_futures_basis_pct": -0.0452,
        "basis_change_lookback": -0.0003,
        "aggregate_score": 0.358,
        "bull_signals": 1,
        "bear_signals": 3,
        "liq_below": [
          [
            58900,
            41155.29367695
          ],
          [
            58600,
            31158.1387564
          ],
          [
            57600,
            37094.6072
          ]
        ],
        "liq_above": [
          [
            60700,
            46077.21206
          ],
          [
            62400,
            30421.079240000003
          ],
          [
            66000,
            38026.349050000004
          ]
        ],
        "strongest_liq_level": 60700,
        "fragility_score": 0.645,
        "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,122.80이 EMA20 $59,753.53 위에는 있으나 EMA120 $62,254.98 및 EMA240 $65,557.05 아래에 있어 상위 구조는 아직 하락 우위\",\n    \"가장 강한 상방 청산 레벨이 $60,700에 집중되어 있어 단기 유동성 흡수 후 되돌림 위험 존재\",\n    \"24시간 가격은 +2.35% 상승했지만 OI는 -3.42% 감소하여 신규 롱 유입보다 숏커버/포지션 언와인딩 성격이 강함\",\n    \"롱 계정 비율 0.651, account_long_crowding 1.000으로 롱 포지셔닝이 여전히 혼잡한 contrarian bearish 조건\",\n    \"CVD divergence 0.700으로 가격 반등 대비 참여 강도에 불일치가 발생\",\n    \"현물-선물 basis -0.0452%로 선물 프리미엄이 약하고 파생시장 매수 추격 강도가 제한적\"\n  ],\n  \"reasoning\": \"BTC는 현재 $60,122.80에서 EMA20 $59,753.53을 소폭 상회하지만, EMA120 $62,254.98과 EMA240 $65,557.05 아래에 머물러 구조적으로는 아직 하락 추세 내 반등으로 해석된다. 24시간 가격이 +2.35% 상승했음에도 OI가 -3.42% 감소한 것은 신규 레버리지 롱 축적이 아니라 포지션 청산/언와인딩성 반등일 가능성이 높아 지속성이 약하다. 롱 계정 비율은 0.651로 여전히 높고 account_long_crowding이 1.000인 반면, long_account_change_24h는 -0.0573, short_account_change_24h는 +0.057로 계정 플로우는 롱 이탈과 숏 증가를 보여 단기 변동성 확대 가능성이 있다. 가장 가까운 상방 청산 밀집 구간은 $60,700이며, 이 레벨을 스윕한 뒤 $58,900 또는 $58,600 하방 유동성으로 되돌리는 시나리오가 우세하다.\",\n  \"key_levels\": {\n    \"support\": [\n      58900,\n      58600,\n      57758.6,\n      57600\n    ],\n    \"resistance\": [\n      60700,\n      61897.6,\n      62254.98,\n      62400,\n      65557.05,\n      66000\n    ]\n  },\n  \"time_horizon\": \"short term, 향후 4-8시간\",\n  \"invalidation_level\": \"$62,400 상방 청산 레벨을 4시간 종가로 회복하고 EMA120 $62,254.98 위에서 수용될 경우\",\n  \"risk_scenario\": \"반대 시나리오는 $60,700 상방 청산을 단순 스윕하지 않고 강하게 돌파한 뒤 $61,897.60 7일 고점과 EMA120 $62,254.98을 회복하는 경우이다. 이 경우 감소하던 OI가 다시 증가하면서 숏 포지션이 압박받고, $62,400 이후 $66,000 상방 청산 구간까지 숏스퀴즈가 확장될 수 있다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "harmonic": {
      "agent_id": "harmonic",
      "display_name": "Harmonic Specialist",
      "signal": "neutral",
      "confidence": 0.62,
      "structure_bias": "neutral",
      "setup_bias": "neutral",
      "setup_score": 0.44,
      "setup_signals": [
        "현재가 $60,122.80가 최근접 PRZ $60,121.46와 거의 동일하며, 넓은 PRZ 범위 $59,214.94-$61,027.99 내부에 위치",
        "상단 $60,602.82-$61,675.69 구간에 bullish bat / bearish gartley / shark PRZ가 중첩되어 방향성보다 반응-zone 성격이 강함",
        "하단 bullish butterfly 완료 패턴의 방어 구간 $58,406.59-$59,590.72가 유지되었고, 관련 TP1은 $62,152.73로 남아 있음",
        "bearish gartley 완료 후보는 $60,710.58-$61,637.48 PRZ에서 반응 확인되었고, bearish TP1 $59,973.01 부근까지 이미 접근",
        "actionable_patterns_list가 비어 있고 council_relevant_prz_count와 directional_influence_prz_count가 모두 0이므로 구조 전환 전 단독 방향 신호는 부적합"
      ],
      "reasoning": "4시간 기준 총 149개 패턴 중 완료 58개, 형성 중 91개가 탐지되었지만, strict-tier에서 실제 방향 투표에 사용할 actionable harmonic은 0개입니다. 현재가 $60,122.80는 최근접 PRZ $60,121.46와 사실상 겹치지만, 이 PRZ는 확인된 반전 신호가 아니라 약한 반응 후보 구간으로만 취급해야 합니다. 상단에는 bearish gartley PRZ $60,710.58-$61,637.48와 bullish bat PRZ $60,602.82-$61,675.69가 겹쳐 있어 $60.6k-$61.7k는 방향 확정보다 변동성·거절 확인 구간입니다. 반대로 하단 $58,406.59-$59,590.72의 bullish butterfly는 이미 방어 반응을 보였지만, 단독으로 메인 구조를 bullish로 전환할 권한은 없습니다. 따라서 구조는 확정 BOS/CHoCH/MSS 부재로 neutral, setup도 상·하방 PRZ가 충돌하는 neutral로 평가합니다.",
      "key_levels": {
        "support": [
          59973.01,
          59590.72,
          59214.94,
          59060.0,
          58406.59,
          58030.0,
          57758.6
        ],
        "resistance": [
          60602.82,
          60710.58,
          61027.99,
          61139.25,
          61637.48,
          61675.69,
          62152.73,
          62254.98
        ]
      },
      "time_horizon": "short/medium term",
      "invalidation_level": "$61,675.69 상방 4시간 종가 수용 또는 $58,406.59 하방 이탈",
      "risk_scenario": "상방 시나리오에서는 $60,710.58-$61,675.69 혼합 PRZ를 4시간 종가로 수용하고 $62,152.73 이상을 회복하면, 하단 bullish butterfly 반응이 TP2 $64,101.32-$64,979.75 방향으로 확장될 수 있습니다. 반대로 $59,973.01을 재이탈하고 $59,214.94-$58,406.59 구간 방어에 실패하면, bearish gartley 반응이 $58,030.00 및 7일 저점 $57,758.60 재시험으로 이어질 수 있습니다.",
      "data_quality": "medium",
      "metrics": {
        "patterns_found": 149,
        "completed_patterns_found": 58,
        "forming_d_prz_found": 91,
        "swing_orders_scanned": [
          3,
          5,
          8
        ],
        "swing_search_window": 30,
        "multiscale_swings_scanned": 55,
        "swing_highs_scanned": 28,
        "swing_lows_scanned": 27,
        "timeframe": "4h",
        "prz_active_threshold_pct": 0.75,
        "prz_nearby_threshold_pct": 1.5,
        "prz_watch_threshold_pct": 3.0,
        "prz_max_width_pct": 1.3,
        "quality_counts": {
          "high": 3,
          "medium": 43,
          "low": 103
        },
        "prz_status_counts": {
          "active": 19,
          "nearby": 29,
          "watch": 37,
          "far": 64,
          "forming": 39
        },
        "high_confluence_prz_count": 19,
        "strict_patterns_found": 58,
        "candidate_patterns_found": 91,
        "active_patterns_at_prz": 19,
        "nearby_patterns": 29,
        "all_patterns": [
          "bat",
          "shark",
          "gartley",
          "crab",
          "butterfly",
          "bat",
          "butterfly",
          "butterfly",
          "crab",
          "gartley",
          "gartley",
          "shark",
          "shark",
          "butterfly",
          "shark",
          "bat",
          "butterfly",
          "crab",
          "butterfly",
          "butterfly",
          "gartley",
          "bat",
          "shark",
          "crab",
          "shark",
          "shark",
          "crab",
          "crab",
          "bat",
          "butterfly",
          "shark",
          "shark",
          "crab",
          "gartley",
          "bat",
          "bat",
          "crab",
          "bat",
          "gartley",
          "bat",
          "bat",
          "butterfly",
          "crab",
          "bat",
          "crab",
          "bat",
          "crab",
          "gartley",
          "butterfly",
          "shark",
          "gartley",
          "crab",
          "crab",
          "gartley",
          "butterfly",
          "butterfly",
          "gartley",
          "shark",
          "bat",
          "crab",
          "shark",
          "crab",
          "bat",
          "butterfly",
          "gartley",
          "gartley",
          "butterfly",
          "butterfly",
          "shark",
          "crab",
          "crab",
          "crab",
          "shark",
          "butterfly",
          "gartley",
          "gartley",
          "bat",
          "bat",
          "crab",
          "gartley",
          "crab",
          "butterfly",
          "shark",
          "crab",
          "shark",
          "shark",
          "crab",
          "crab",
          "crab",
          "crab",
          "crab",
          "gartley",
          "shark",
          "crab",
          "shark",
          "crab",
          "bat",
          "crab",
          "shark",
          "shark",
          "shark",
          "crab",
          "bat",
          "crab",
          "shark",
          "bat",
          "butterfly",
          "crab",
          "crab",
          "crab",
          "butterfly",
          "butterfly",
          "shark",
          "butterfly",
          "bat",
          "crab",
          "butterfly",
          "shark",
          "shark",
          "gartley",
          "crab",
          "butterfly",
          "crab",
          "crab",
          "gartley",
          "butterfly",
          "butterfly",
          "bat",
          "crab",
          "gartley",
          "shark",
          "crab",
          "bat",
          "butterfly",
          "crab",
          "shark",
          "crab",
          "shark",
          "crab",
          "butterfly",
          "bat",
          "gartley",
          "crab",
          "gartley",
          "shark",
          "crab",
          "butterfly",
          "gartley",
          "shark"
        ],
        "all_signals": [
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish"
        ],
        "best_pattern": "bat",
        "best_pattern_quality": "strict",
        "best_quality": "low",
        "best_pattern_score": 0.915,
        "best_completion_status": "forming",
        "nearest_pattern": "butterfly",
        "nearest_prz": 60121.46,
        "price_to_prz": -0.0,
        "prz_range": [
          59214.94,
          61027.99
        ],
        "council_relevant_prz_count": 0,
        "directional_influence_prz_count": 0,
        "confirmed_reaction_prz_count": 0,
        "validated_harmonic_tp_count": 0,
        "pattern_candidates": [
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.9,
            "ratio_score": 0.945,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 61815.71,
            "prz_range": [
              61478.18,
              62153.24
            ],
            "prz_width_pct": 1.092,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 2.82,
            "price_to_prz_pct_raw": 2.8158,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 61815.71,
              "a_price": 63915.3,
              "tp1_ad_382": 62617.75,
              "tp2_ad_618": 63113.26,
              "tp3_a_or_structure_liquidity": 63915.3,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6087,
              "ABC": 0.5807
            },
            "x_price": 61150.2,
            "x_idx": 152,
            "x_order": 3,
            "a_price": 63915.3,
            "a_idx": 176,
            "a_order": 3,
            "b_price": 62232.1,
            "b_idx": 217,
            "b_order": 8,
            "c_price": 63209.6,
            "c_idx": 252,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.844,
            "ratio_score": 0.826,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 59060.0,
            "prz_range": [
              60933.28,
              61663.11
            ],
            "prz_width_pct": 1.191,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.95,
            "price_to_prz_pct_raw": 1.955,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.236_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "post_D_close_progress"
              ],
              "reaction_score": 0.75,
              "reaction_detail": {
                "reaction_score": 0.75,
                "reaction_move_ratio_ad": 0.35,
                "adverse_move_ratio_ad": 0.126,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.236_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 61298.2,
              "a_price": 67255.4,
              "tp1_ad_382": 63573.85,
              "tp2_ad_618": 64979.75,
              "tp3_a_or_structure_liquidity": 67255.4,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.8338,
              "ABC": 0.5974,
              "BCD": 2.6563,
              "XAD": 1.6589
            },
            "x_price": 62315.0,
            "x_idx": 176,
            "x_order": 3,
            "a_price": 67255.4,
            "a_idx": 199,
            "a_order": 8,
            "b_price": 63136.2,
            "b_idx": 229,
            "b_order": 3,
            "c_price": 65597.2,
            "c_idx": 241,
            "c_order": 8,
            "d_idx": 254
          },
          {
            "pattern": "shark",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.902,
            "ratio_score": 1.0,
            "prz_score": 0.911,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 61293.42,
            "prz_range": [
              60742.93,
              61843.91
            ],
            "prz_width_pct": 1.796,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.95,
            "price_to_prz_pct_raw": 1.947,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "shark",
              "d_price": 61293.42,
              "a_price": 63915.3,
              "tp1_ad_382": 62294.98,
              "tp2_ad_618": 62913.74,
              "tp3_a_or_structure_liquidity": 63915.3,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5112,
              "ABC": 1.4993
            },
            "x_price": 61150.2,
            "x_idx": 152,
            "x_order": 3,
            "a_price": 63915.3,
            "a_idx": 176,
            "a_order": 3,
            "b_price": 65328.8,
            "b_idx": 205,
            "b_order": 3,
            "c_price": 63209.6,
            "c_idx": 252,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.882,
            "ratio_score": 0.911,
            "prz_score": 0.972,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 61461.12,
            "prz_range": [
              61013.8,
              61908.44
            ],
            "prz_width_pct": 1.456,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 2.23,
            "price_to_prz_pct_raw": 2.226,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 61461.12,
              "a_price": 66956.7,
              "tp1_ad_382": 63560.43,
              "tp2_ad_618": 64857.39,
              "tp3_a_or_structure_liquidity": 66956.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.805,
              "ABC": 0.6362
            },
            "x_price": 62315.0,
            "x_idx": 176,
            "x_order": 3,
            "a_price": 66956.7,
            "a_idx": 204,
            "a_order": 3,
            "b_price": 63220.0,
            "b_idx": 237,
            "b_order": 5,
            "c_price": 65597.2,
            "c_idx": 241,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.873,
            "ratio_score": 0.959,
            "prz_score": 0.873,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 59060.0,
            "prz_range": [
              58406.59,
              59590.72
            ],
            "prz_width_pct": 2.007,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.87,
            "price_to_prz_pct_raw": -1.8697,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.236_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "post_D_close_progress"
              ],
              "reaction_score": 0.75,
              "reaction_detail": {
                "reaction_score": 0.75,
                "reaction_move_ratio_ad": 0.35,
                "adverse_move_ratio_ad": 0.126,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.236_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 58998.66,
              "a_price": 67255.4,
              "tp1_ad_382": 62152.73,
              "tp2_ad_618": 64101.32,
              "tp3_a_or_structure_liquidity": 67255.4,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7728,
              "ABC": 0.465,
              "BCD": 2.358,
              "XAD": 1.2608
            },
            "x_price": 60755.0,
            "x_idx": 164,
            "x_order": 3,
            "a_price": 67255.4,
            "a_idx": 199,
            "a_order": 8,
            "b_price": 62232.1,
            "b_idx": 217,
            "b_order": 8,
            "c_price": 64568.0,
            "c_idx": 233,
            "c_order": 3,
            "d_idx": 254
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.868,
            "ratio_score": 0.844,
            "prz_score": 0.963,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 61176.59,
            "prz_range": [
              60715.71,
              61637.48
            ],
            "prz_width_pct": 1.507,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.75,
            "price_to_prz_pct_raw": 1.7527,
            "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": 61176.59,
              "a_price": 58030.0,
              "tp1_ad_382": 59974.6,
              "tp2_ad_618": 59232.0,
              "tp3_a_or_structure_liquidity": 58030.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6443,
              "ABC": 0.6737
            },
            "x_price": 61931.1,
            "x_idx": 257,
            "x_order": 3,
            "a_price": 58030.0,
            "a_idx": 259,
            "a_order": 8,
            "b_price": 60543.3,
            "b_idx": 276,
            "b_order": 3,
            "c_price": 58850.0,
            "c_idx": 280,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.852,
            "ratio_score": 0.837,
            "prz_score": 0.918,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 61139.25,
            "prz_range": [
              60602.82,
              61675.69
            ],
            "prz_width_pct": 1.755,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.69,
            "price_to_prz_pct_raw": 1.6906,
            "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": 61139.25,
              "a_price": 63915.3,
              "tp1_ad_382": 62199.7,
              "tp2_ad_618": 62854.85,
              "tp3_a_or_structure_liquidity": 63915.3,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5222,
              "ABC": 0.5807
            },
            "x_price": 60691.9,
            "x_idx": 168,
            "x_order": 8,
            "a_price": 63915.3,
            "a_idx": 176,
            "a_order": 3,
            "b_price": 62232.1,
            "b_idx": 217,
            "b_order": 8,
            "c_price": 63209.6,
            "c_idx": 252,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.848,
            "ratio_score": 0.935,
            "prz_score": 0.884,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 61760.53,
            "prz_range": [
              61158.69,
              62362.37
            ],
            "prz_width_pct": 1.949,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 2.72,
            "price_to_prz_pct_raw": 2.724,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 61760.53,
              "a_price": 66419.2,
              "tp1_ad_382": 63540.14,
              "tp2_ad_618": 64639.59,
              "tp3_a_or_structure_liquidity": 66419.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7999,
              "ABC": 0.7496
            },
            "x_price": 62315.0,
            "x_idx": 176,
            "x_order": 3,
            "a_price": 66419.2,
            "a_idx": 212,
            "a_order": 5,
            "b_price": 63136.2,
            "b_idx": 229,
            "b_order": 3,
            "c_price": 65597.2,
            "c_idx": 241,
            "c_order": 8,
            "d_idx": null
          }
        ],
        "council_relevant_prz": [],
        "report_detail_candidates": [
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.9,
            "ratio_score": 0.945,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 61815.71,
            "prz_range": [
              61478.18,
              62153.24
            ],
            "prz_width_pct": 1.092,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 2.82,
            "price_to_prz_pct_raw": 2.8158,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 61815.71,
              "a_price": 63915.3,
              "tp1_ad_382": 62617.75,
              "tp2_ad_618": 63113.26,
              "tp3_a_or_structure_liquidity": 63915.3,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6087,
              "ABC": 0.5807
            },
            "x_price": 61150.2,
            "x_idx": 152,
            "x_order": 3,
            "a_price": 63915.3,
            "a_idx": 176,
            "a_order": 3,
            "b_price": 62232.1,
            "b_idx": 217,
            "b_order": 8,
            "c_price": 63209.6,
            "c_idx": 252,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.844,
            "ratio_score": 0.826,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 59060.0,
            "prz_range": [
              60933.28,
              61663.11
            ],
            "prz_width_pct": 1.191,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.95,
            "price_to_prz_pct_raw": 1.955,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.236_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "post_D_close_progress"
              ],
              "reaction_score": 0.75,
              "reaction_detail": {
                "reaction_score": 0.75,
                "reaction_move_ratio_ad": 0.35,
                "adverse_move_ratio_ad": 0.126,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.236_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 61298.2,
              "a_price": 67255.4,
              "tp1_ad_382": 63573.85,
              "tp2_ad_618": 64979.75,
              "tp3_a_or_structure_liquidity": 67255.4,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.8338,
              "ABC": 0.5974,
              "BCD": 2.6563,
              "XAD": 1.6589
            },
            "x_price": 62315.0,
            "x_idx": 176,
            "x_order": 3,
            "a_price": 67255.4,
            "a_idx": 199,
            "a_order": 8,
            "b_price": 63136.2,
            "b_idx": 229,
            "b_order": 3,
            "c_price": 65597.2,
            "c_idx": 241,
            "c_order": 8,
            "d_idx": 254
          },
          {
            "pattern": "shark",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.902,
            "ratio_score": 1.0,
            "prz_score": 0.911,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 61293.42,
            "prz_range": [
              60742.93,
              61843.91
            ],
            "prz_width_pct": 1.796,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.95,
            "price_to_prz_pct_raw": 1.947,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "shark",
              "d_price": 61293.42,
              "a_price": 63915.3,
              "tp1_ad_382": 62294.98,
              "tp2_ad_618": 62913.74,
              "tp3_a_or_structure_liquidity": 63915.3,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5112,
              "ABC": 1.4993
            },
            "x_price": 61150.2,
            "x_idx": 152,
            "x_order": 3,
            "a_price": 63915.3,
            "a_idx": 176,
            "a_order": 3,
            "b_price": 65328.8,
            "b_idx": 205,
            "b_order": 3,
            "c_price": 63209.6,
            "c_idx": 252,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.882,
            "ratio_score": 0.911,
            "prz_score": 0.972,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 61461.12,
            "prz_range": [
              61013.8,
              61908.44
            ],
            "prz_width_pct": 1.456,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 2.23,
            "price_to_prz_pct_raw": 2.226,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 61461.12,
              "a_price": 66956.7,
              "tp1_ad_382": 63560.43,
              "tp2_ad_618": 64857.39,
              "tp3_a_or_structure_liquidity": 66956.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.805,
              "ABC": 0.6362
            },
            "x_price": 62315.0,
            "x_idx": 176,
            "x_order": 3,
            "a_price": 66956.7,
            "a_idx": 204,
            "a_order": 3,
            "b_price": 63220.0,
            "b_idx": 237,
            "b_order": 5,
            "c_price": 65597.2,
            "c_idx": 241,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.873,
            "ratio_score": 0.959,
            "prz_score": 0.873,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 59060.0,
            "prz_range": [
              58406.59,
              59590.72
            ],
            "prz_width_pct": 2.007,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.87,
            "price_to_prz_pct_raw": -1.8697,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.236_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "post_D_close_progress"
              ],
              "reaction_score": 0.75,
              "reaction_detail": {
                "reaction_score": 0.75,
                "reaction_move_ratio_ad": 0.35,
                "adverse_move_ratio_ad": 0.126,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.236_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 58998.66,
              "a_price": 67255.4,
              "tp1_ad_382": 62152.73,
              "tp2_ad_618": 64101.32,
              "tp3_a_or_structure_liquidity": 67255.4,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7728,
              "ABC": 0.465,
              "BCD": 2.358,
              "XAD": 1.2608
            },
            "x_price": 60755.0,
            "x_idx": 164,
            "x_order": 3,
            "a_price": 67255.4,
            "a_idx": 199,
            "a_order": 8,
            "b_price": 62232.1,
            "b_idx": 217,
            "b_order": 8,
            "c_price": 64568.0,
            "c_idx": 233,
            "c_order": 3,
            "d_idx": 254
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.868,
            "ratio_score": 0.844,
            "prz_score": 0.963,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 61176.59,
            "prz_range": [
              60715.71,
              61637.48
            ],
            "prz_width_pct": 1.507,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.75,
            "price_to_prz_pct_raw": 1.7527,
            "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": 61176.59,
              "a_price": 58030.0,
              "tp1_ad_382": 59974.6,
              "tp2_ad_618": 59232.0,
              "tp3_a_or_structure_liquidity": 58030.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6443,
              "ABC": 0.6737
            },
            "x_price": 61931.1,
            "x_idx": 257,
            "x_order": 3,
            "a_price": 58030.0,
            "a_idx": 259,
            "a_order": 8,
            "b_price": 60543.3,
            "b_idx": 276,
            "b_order": 3,
            "c_price": 58850.0,
            "c_idx": 280,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.852,
            "ratio_score": 0.837,
            "prz_score": 0.918,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 61139.25,
            "prz_range": [
              60602.82,
              61675.69
            ],
            "prz_width_pct": 1.755,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.69,
            "price_to_prz_pct_raw": 1.6906,
            "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": 61139.25,
              "a_price": 63915.3,
              "tp1_ad_382": 62199.7,
              "tp2_ad_618": 62854.85,
              "tp3_a_or_structure_liquidity": 63915.3,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5222,
              "ABC": 0.5807
            },
            "x_price": 60691.9,
            "x_idx": 168,
            "x_order": 8,
            "a_price": 63915.3,
            "a_idx": 176,
            "a_order": 3,
            "b_price": 62232.1,
            "b_idx": 217,
            "b_order": 8,
            "c_price": 63209.6,
            "c_idx": 252,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.848,
            "ratio_score": 0.935,
            "prz_score": 0.884,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 61760.53,
            "prz_range": [
              61158.69,
              62362.37
            ],
            "prz_width_pct": 1.949,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 2.72,
            "price_to_prz_pct_raw": 2.724,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 61760.53,
              "a_price": 66419.2,
              "tp1_ad_382": 63540.14,
              "tp2_ad_618": 64639.59,
              "tp3_a_or_structure_liquidity": 66419.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7999,
              "ABC": 0.7496
            },
            "x_price": 62315.0,
            "x_idx": 176,
            "x_order": 3,
            "a_price": 66419.2,
            "a_idx": 212,
            "a_order": 5,
            "b_price": 63136.2,
            "b_idx": 229,
            "b_order": 3,
            "c_price": 65597.2,
            "c_idx": 241,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.803,
            "ratio_score": 0.838,
            "prz_score": 0.897,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 62086.56,
            "prz_range": [
              61505.57,
              62667.55
            ],
            "prz_width_pct": 1.872,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 3.27,
            "price_to_prz_pct_raw": 3.2663,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "bat",
              "d_price": 62086.56,
              "a_price": 58030.0,
              "tp1_ad_382": 60536.96,
              "tp2_ad_618": 59579.61,
              "tp3_a_or_structure_liquidity": 58030.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.522,
              "ABC": 0.6967
            },
            "x_price": 63209.6,
            "x_idx": 252,
            "x_order": 5,
            "a_price": 58030.0,
            "a_idx": 259,
            "a_order": 8,
            "b_price": 60734.0,
            "b_idx": 263,
            "b_order": 3,
            "c_price": 58850.0,
            "c_idx": 280,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.781,
            "ratio_score": 0.712,
            "prz_score": 0.961,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 60758.3,
            "prz_range": [
              60710.58,
              61637.48
            ],
            "prz_width_pct": 1.515,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.75,
            "price_to_prz_pct_raw": 1.7485,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 1.099,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 61174.03,
              "a_price": 58030.0,
              "tp1_ad_382": 59973.01,
              "tp2_ad_618": 59231.02,
              "tp3_a_or_structure_liquidity": 58030.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6443,
              "ABC": 0.6737,
              "BCD": 1.127,
              "XAD": 0.6994
            },
            "x_price": 61931.1,
            "x_idx": 257,
            "x_order": 3,
            "a_price": 58030.0,
            "a_idx": 259,
            "a_order": 8,
            "b_price": 60543.3,
            "b_idx": 276,
            "b_order": 3,
            "c_price": 58850.0,
            "c_idx": 280,
            "c_order": 8,
            "d_idx": 283
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.773,
            "ratio_score": 0.649,
            "prz_score": 0.911,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 61700.64,
            "prz_range": [
              61146.28,
              62254.99
            ],
            "prz_width_pct": 1.797,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 2.62,
            "price_to_prz_pct_raw": 2.6244,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 61700.64,
              "a_price": 58030.0,
              "tp1_ad_382": 60298.45,
              "tp2_ad_618": 59432.18,
              "tp3_a_or_structure_liquidity": 58030.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5589,
              "ABC": 0.7167
            },
            "x_price": 63209.6,
            "x_idx": 252,
            "x_order": 5,
            "a_price": 58030.0,
            "a_idx": 259,
            "a_order": 8,
            "b_price": 60924.7,
            "b_idx": 271,
            "b_order": 8,
            "c_price": 58850.0,
            "c_idx": 280,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.743,
            "ratio_score": 0.731,
            "prz_score": 0.884,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 59060.0,
            "prz_range": [
              61158.69,
              62362.37
            ],
            "prz_width_pct": 1.949,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 2.72,
            "price_to_prz_pct_raw": 2.724,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "post_D_close_progress"
              ],
              "reaction_score": 0.9,
              "reaction_detail": {
                "reaction_score": 0.9,
                "reaction_move_ratio_ad": 0.39,
                "adverse_move_ratio_ad": 0.14,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "post_D_close_progress"
                ]
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 61760.53,
              "a_price": 66419.2,
              "tp1_ad_382": 63540.14,
              "tp2_ad_618": 64639.59,
              "tp3_a_or_structure_liquidity": 66419.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7999,
              "ABC": 0.7496,
              "BCD": 2.6563,
              "XAD": 1.7931
            },
            "x_price": 62315.0,
            "x_idx": 176,
            "x_order": 3,
            "a_price": 66419.2,
            "a_idx": 212,
            "a_order": 5,
            "b_price": 63136.2,
            "b_idx": 229,
            "b_order": 3,
            "c_price": 65597.2,
            "c_idx": 241,
            "c_order": 8,
            "d_idx": 254
          }
        ],
        "actionable_patterns_list": [],
        "tp_ladder": [],
        "validated_tp_ladder": [],
        "harmonic_governance": {
          "role": "PRZ reaction + TP ladder confluence, not standalone path engine",
          "pre_confirmation_weight_range": [
            0.25,
            0.35
          ],
          "post_confirmation_vote_weight_range": [
            0.5,
            0.6
          ],
          "standalone_path_override_allowed": false,
          "opposes_core_path_policy": "branch/reversal-risk/reaction-zone unless lower-TF structure and derivatives also confirm",
          "aligns_with_core_path_policy": "modest confidence lift plus strong TP ladder influence"
        },
        "execution_readiness": "early"
      },
      "raw_llm_response": "{\n  \"signal\": \"neutral\",\n  \"confidence\": 0.62,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"neutral\",\n  \"setup_score\": 0.44,\n  \"setup_signals\": [\n    \"현재가 $60,122.80가 최근접 PRZ $60,121.46와 거의 동일하며, 넓은 PRZ 범위 $59,214.94-$61,027.99 내부에 위치\",\n    \"상단 $60,602.82-$61,675.69 구간에 bullish bat / bearish gartley / shark PRZ가 중첩되어 방향성보다 반응-zone 성격이 강함\",\n    \"하단 bullish butterfly 완료 패턴의 방어 구간 $58,406.59-$59,590.72가 유지되었고, 관련 TP1은 $62,152.73로 남아 있음\",\n    \"bearish gartley 완료 후보는 $60,710.58-$61,637.48 PRZ에서 반응 확인되었고, bearish TP1 $59,973.01 부근까지 이미 접근\",\n    \"actionable_patterns_list가 비어 있고 council_relevant_prz_count와 directional_influence_prz_count가 모두 0이므로 구조 전환 전 단독 방향 신호는 부적합\"\n  ],\n  \"reasoning\": \"4시간 기준 총 149개 패턴 중 완료 58개, 형성 중 91개가 탐지되었지만, strict-tier에서 실제 방향 투표에 사용할 actionable harmonic은 0개입니다. 현재가 $60,122.80는 최근접 PRZ $60,121.46와 사실상 겹치지만, 이 PRZ는 확인된 반전 신호가 아니라 약한 반응 후보 구간으로만 취급해야 합니다. 상단에는 bearish gartley PRZ $60,710.58-$61,637.48와 bullish bat PRZ $60,602.82-$61,675.69가 겹쳐 있어 $60.6k-$61.7k는 방향 확정보다 변동성·거절 확인 구간입니다. 반대로 하단 $58,406.59-$59,590.72의 bullish butterfly는 이미 방어 반응을 보였지만, 단독으로 메인 구조를 bullish로 전환할 권한은 없습니다. 따라서 구조는 확정 BOS/CHoCH/MSS 부재로 neutral, setup도 상·하방 PRZ가 충돌하는 neutral로 평가합니다.\",\n  \"key_levels\": {\n    \"support\": [\n      59973.01,\n      59590.72,\n      59214.94,\n      59060.0,\n      58406.59,\n      58030.0,\n      57758.6\n    ],\n    \"resistance\": [\n      60602.82,\n      60710.58,\n      61027.99,\n      61139.25,\n      61637.48,\n      61675.69,\n      62152.73,\n      62254.98\n    ]\n  },\n  \"time_horizon\": \"short/medium term\",\n  \"invalidation_level\": \"$61,675.69 상방 4시간 종가 수용 또는 $58,406.59 하방 이탈\",\n  \"risk_scenario\": \"상방 시나리오에서는 $60,710.58-$61,675.69 혼합 PRZ를 4시간 종가로 수용하고 $62,152.73 이상을 회복하면, 하단 bullish butterfly 반응이 TP2 $64,101.32-$64,979.75 방향으로 확장될 수 있습니다. 반대로 $59,973.01을 재이탈하고 $59,214.94-$58,406.59 구간 방어에 실패하면, bearish gartley 반응이 $58,030.00 및 7일 저점 $57,758.60 재시험으로 이어질 수 있습니다.\",\n  \"data_quality\": \"medium\"\n}"
    }
  },
  "chairman_synthesis": {
    "overall_signal": "bearish",
    "overall_confidence": 0.64,
    "execution_setup": {
      "setup_bias": "bearish",
      "setup_strength": 0.77,
      "active_setups": [
        "피보나치 기준 현재가 $60,122.80이 하락 스윙 $60,758→$57,758.60의 0.786 되돌림 $60,116.36을 테스트 중",
        "ICT 기준 전일 고점 $60,520.00 상회 후 재하락하여 buy-side liquidity raid 후보 형성",
        "ICT 기준 가격이 EQ $60,484.10 아래에 있어 $60,484.10 회복 실패 시 약세 구조 유지",
        "파생 기준 가장 강한 상방 청산 밀집이 $60,700에 있어 단기 유동성 흡수 후 되돌림 위험 존재",
        "파생 기준 24시간 가격 +2.35%에도 OI -3.42%로 신규 롱 축적보다 숏커버성 반등 가능성 우세",
        "Wyckoff 기준 SOS $61,322.00 및 메인 레인지 EQ $61,665.00 위 수용이 아직 미확인"
      ],
      "setup_vs_structure": "구조 신호는 bearish가 우세하지만, Wyckoff는 4시간 축적 Phase D를 제시해 구조 해석에 충돌이 있다. 실행 셋업은 Fibonacci·ICT·Derivatives 3개 이상이 bearish로 정렬되어 있어, 현재 반등은 아직 구조 전환 확인보다는 저항·유동성 테스트 성격이 강하다."
    },
    "signal_breakdown": {
      "bullish_count": 1,
      "bearish_count": 4,
      "neutral_count": 1
    },
    "key_levels": {
      "support": [
        60116.36,
        59753.53,
        59612.41,
        59298.4,
        59258.45,
        59080.0,
        58900.0,
        58600.0,
        57758.6
      ],
      "resistance": [
        60484.1,
        60520.0,
        60700.0,
        61322.0,
        61665.0,
        61897.6,
        62232.1,
        62254.98,
        64250.0
      ]
    },
    "confluences": [
      "Fibonacci의 0.786 되돌림 $60,116.36과 현재가 $60,122.80이 거의 일치하며, Harmonic도 최근접 PRZ $60,121.46을 제시해 $60.12k 부근이 즉각적인 반응 구간으로 중첩된다.",
      "ICT의 EQ $60,484.10, 전일 고점 $60,520.00, Derivatives의 상방 청산 밀집 $60,700, Harmonic의 상단 PRZ $60,602.82-$61,027.99가 $60.5k-$60.7k 저항·유동성 구간으로 모인다.",
      "Wyckoff의 SOS $61,322.00, 메인 레인지 EQ $61,665.00, Harmonic의 PRZ $61,637.48-$61,675.69가 $61.3k-$61.7k 구조 확인 저항대로 중첩된다.",
      "ICT의 최근 bearish BOS 레벨 $62,232.10과 Candlestick의 EMA120 $62,254.98이 거의 동일해 $62.23k-$62.25k가 중기 bearish 구조의 핵심 회복 기준으로 작동한다.",
      "Wyckoff Spring 저점 $57,758.60, ICT range low $57,758.60, Fibonacci 확장·컨플루언스 $57,758.60이 동일해 $57,758.60은 하단 구조 방어의 최중요 기준이다.",
      "Candlestick EMA20 $59,753.53, Fibonacci 0.618 $59,612.41, Harmonic 하단 PRZ 상단 $59,590.72가 $59.6k-$59.75k 단기 지지 클러스터를 형성한다."
    ],
    "conflicts": [
      "Wyckoff는 SC $59,080.00, Spring $57,758.60, SOS $61,322.00을 근거로 4시간 confirmed accumulation 및 Phase D를 제시하지만, ICT는 $62,232.10 하방 bearish BOS 이후 회복 실패를 근거로 bearish 구조를 유지한다.",
      "Candlestick은 최근 bullish engulfing 3회와 EMA20 $59,753.53 상회로 실행 셋업은 bullish라고 보지만, 자체 구조 판단은 EMA120 $62,254.98 및 EMA240 $65,557.05 아래이므로 bearish로 분리된다.",
      "Fibonacci는 $60,116.36의 0.786 되돌림 테스트를 프리미엄 구간의 되돌림 매도 조건으로 해석하는 반면, Wyckoff는 $57,758.60 Spring 이후 레인지 재진입을 매도 유동성 흡수로 본다.",
      "Harmonic은 $60,121.46 근처 PRZ와 상·하방 PRZ 충돌로 방향성 중립을 유지하며, 이는 ICT·Fibonacci·Derivatives의 bearish 실행 셋업과 직접적인 방향 합의를 만들지 못한다."
    ],
    "executive_summary": "현재 BTC 4시간 구조는 다수 구조 판독상 bearish가 우세하나, Wyckoff 관점에서는 SC $59,080.00 이후 Spring $57,758.60과 SOS $61,322.00이 형성된 confirmed accumulation Phase D로 해석되어 구조 충돌이 뚜렷하다. 현 위치는 Wyckoff상 SOS 이후 LPS 재테스트 후보 구간이지만, 가격은 아직 SOS $61,322.00과 레인지 EQ $61,665.00 위에 수용되지 못했고, ICT 기준으로는 $62,232.10 bearish BOS 하방에 남아 있다. $60,116.36-$60,122.80 부근은 Fibonacci 0.786과 Harmonic PRZ가 겹치는 즉각 반응 구간이며, $60,484.10-$60,700은 EQ·전일 고점·청산 밀집이 겹친 유동성 저항 구간이다. 하단에서는 $59,753.53-$59,612.41이 단기 지지 클러스터이고, $57,758.60은 Wyckoff Spring·ICT range low·Fibonacci 컨플루언스가 겹치는 핵심 구조 방어선이다. 구조적 bearish 판단의 무효화는 우선 $62,232.10-$62,254.98 회복이며, 상위 확정 전환은 $64,250.00 회복이 필요하다.",
    "raw_llm_response": "{\n  \"overall_signal\": \"bearish\",\n  \"overall_confidence\": 0.64,\n  \"execution_setup\": {\n    \"setup_bias\": \"bearish\",\n    \"setup_strength\": 0.77,\n    \"active_setups\": [\n      \"피보나치 기준 현재가 $60,122.80이 하락 스윙 $60,758→$57,758.60의 0.786 되돌림 $60,116.36을 테스트 중\",\n      \"ICT 기준 전일 고점 $60,520.00 상회 후 재하락하여 buy-side liquidity raid 후보 형성\",\n      \"ICT 기준 가격이 EQ $60,484.10 아래에 있어 $60,484.10 회복 실패 시 약세 구조 유지\",\n      \"파생 기준 가장 강한 상방 청산 밀집이 $60,700에 있어 단기 유동성 흡수 후 되돌림 위험 존재\",\n      \"파생 기준 24시간 가격 +2.35%에도 OI -3.42%로 신규 롱 축적보다 숏커버성 반등 가능성 우세\",\n      \"Wyckoff 기준 SOS $61,322.00 및 메인 레인지 EQ $61,665.00 위 수용이 아직 미확인\"\n    ],\n    \"setup_vs_structure\": \"구조 신호는 bearish가 우세하지만, Wyckoff는 4시간 축적 Phase D를 제시해 구조 해석에 충돌이 있다. 실행 셋업은 Fibonacci·ICT·Derivatives 3개 이상이 bearish로 정렬되어 있어, 현재 반등은 아직 구조 전환 확인보다는 저항·유동성 테스트 성격이 강하다.\"\n  },\n  \"signal_breakdown\": {\n    \"bullish_count\": 1,\n    \"bearish_count\": 4,\n    \"neutral_count\": 1\n  },\n  \"key_levels\": {\n    \"support\": [\n      60116.36,\n      59753.53,\n      59612.41,\n      59298.4,\n      59258.45,\n      59080.0,\n      58900.0,\n      58600.0,\n      57758.6\n    ],\n    \"resistance\": [\n      60484.1,\n      60520.0,\n      60700.0,\n      61322.0,\n      61665.0,\n      61897.6,\n      62232.1,\n      62254.98,\n      64250.0\n    ]\n  },\n  \"confluences\": [\n    \"Fibonacci의 0.786 되돌림 $60,116.36과 현재가 $60,122.80이 거의 일치하며, Harmonic도 최근접 PRZ $60,121.46을 제시해 $60.12k 부근이 즉각적인 반응 구간으로 중첩된다.\",\n    \"ICT의 EQ $60,484.10, 전일 고점 $60,520.00, Derivatives의 상방 청산 밀집 $60,700, Harmonic의 상단 PRZ $60,602.82-$61,027.99가 $60.5k-$60.7k 저항·유동성 구간으로 모인다.\",\n    \"Wyckoff의 SOS $61,322.00, 메인 레인지 EQ $61,665.00, Harmonic의 PRZ $61,637.48-$61,675.69가 $61.3k-$61.7k 구조 확인 저항대로 중첩된다.\",\n    \"ICT의 최근 bearish BOS 레벨 $62,232.10과 Candlestick의 EMA120 $62,254.98이 거의 동일해 $62.23k-$62.25k가 중기 bearish 구조의 핵심 회복 기준으로 작동한다.\",\n    \"Wyckoff Spring 저점 $57,758.60, ICT range low $57,758.60, Fibonacci 확장·컨플루언스 $57,758.60이 동일해 $57,758.60은 하단 구조 방어의 최중요 기준이다.\",\n    \"Candlestick EMA20 $59,753.53, Fibonacci 0.618 $59,612.41, Harmonic 하단 PRZ 상단 $59,590.72가 $59.6k-$59.75k 단기 지지 클러스터를 형성한다.\"\n  ],\n  \"conflicts\": [\n    \"Wyckoff는 SC $59,080.00, Spring $57,758.60, SOS $61,322.00을 근거로 4시간 confirmed accumulation 및 Phase D를 제시하지만, ICT는 $62,232.10 하방 bearish BOS 이후 회복 실패를 근거로 bearish 구조를 유지한다.\",\n    \"Candlestick은 최근 bullish engulfing 3회와 EMA20 $59,753.53 상회로 실행 셋업은 bullish라고 보지만, 자체 구조 판단은 EMA120 $62,254.98 및 EMA240 $65,557.05 아래이므로 bearish로 분리된다.\",\n    \"Fibonacci는 $60,116.36의 0.786 되돌림 테스트를 프리미엄 구간의 되돌림 매도 조건으로 해석하는 반면, Wyckoff는 $57,758.60 Spring 이후 레인지 재진입을 매도 유동성 흡수로 본다.\",\n    \"Harmonic은 $60,121.46 근처 PRZ와 상·하방 PRZ 충돌로 방향성 중립을 유지하며, 이는 ICT·Fibonacci·Derivatives의 bearish 실행 셋업과 직접적인 방향 합의를 만들지 못한다.\"\n  ],\n  \"highest_conviction_analyst\": \"ICT Trader — 84% 신뢰도와 0.92의 강한 bearish setup을 제시하며, 최근 $62,232.10 하방 bearish BOS, EQ $60,484.10 미회복, 전일 고점 $60,520.00 돌파 후 재하락이라는 구체적 구조·유동성 근거가 Fibonacci와 Derivatives의 bearish 셋업과 가장 잘 정렬된다.\",\n  \"invalidation_level\": \"$62,232.10-$62,254.98 구간을 4시간 종가 기준으로 회복·수용하면 현재 bearish 구조 판단은 크게 약화된다. 완전한 구조 반전 확인은 Wyckoff AR 및 상단 레인지인 $64,250.00 회복 여부가 핵심이다.\",\n  \"executive_summary\": \"현재 BTC 4시간 구조는 다수 구조 판독상 bearish가 우세하나, Wyckoff 관점에서는 SC $59,080.00 이후 Spring $57,758.60과 SOS $61,322.00이 형성된 confirmed accumulation Phase D로 해석되어 구조 충돌이 뚜렷하다. 현 위치는 Wyckoff상 SOS 이후 LPS 재테스트 후보 구간이지만, 가격은 아직 SOS $61,322.00과 레인지 EQ $61,665.00 위에 수용되지 못했고, ICT 기준으로는 $62,232.10 bearish BOS 하방에 남아 있다. $60,116.36-$60,122.80 부근은 Fibonacci 0.786과 Harmonic PRZ가 겹치는 즉각 반응 구간이며, $60,484.10-$60,700은 EQ·전일 고점·청산 밀집이 겹친 유동성 저항 구간이다. 하단에서는 $59,753.53-$59,612.41이 단기 지지 클러스터이고, $57,758.60은 Wyckoff Spring·ICT range low·Fibonacci 컨플루언스가 겹치는 핵심 구조 방어선이다. 구조적 bearish 판단의 무효화는 우선 $62,232.10-$62,254.98 회복이며, 상위 확정 전환은 $64,250.00 회복이 필요하다.\"\n}"
  },
  "overall_signal": "bearish",
  "overall_confidence": 0.64,
  "operating_path": {
    "path_type": "complex",
    "confidence": 0.62,
    "waypoints": [
      {
        "seq": 1,
        "price": 60700,
        "type": "liquidity_sweep",
        "source": "Derivatives(최대 상방 청산 밀집 $60,700), ICT(전일 고점 $60,520·EQ $60,484.10 buy-side 유동성), Harmonic(상단 PRZ $60,602.82-$61,027.99)",
        "description": "현재가 바로 위 $60,484-$60,700 유동성·저항 클러스터로의 상방 스윕. 파생 최대 상방 청산 밀집 $60,700을 태그해 buy-side 유동성을 흡수한 뒤, EQ $60,484.10 재탈환 실패 시 약세 재개(ICT). Harmonic 상단 PRZ와 겹쳐 방향 확정보다 거절 확인 성격이 강한 숏 진입 최적 존이며, 셋업(77% bearish)의 진입 트리거.",
        "est_hours": 2,
        "turning_zone": [
          60700.0,
          61050.0
        ],
        "likely_wick": 60900.0,
        "rejection_confirm": 60484.1,
        "invalid_overshoot": 61322.0,
        "calibration_reasoning": "Chairman 저항 클러스터 $60,484-$60,700이 스윕 상단을 제한. 존은 $60,700 위 라운드넘버 $61,000 자석을 포함하되 다음 저항 $61,322 아래로 설정(폭 $350≈0.35 ATR). 파생 청산 데이터가 실제로는 부재하므로 Chairman 저항에 앵커링함. EQ $60,484.10 재탈환 실패 시 약세 재개 확정, $61,322 종가 상회 시 거절 무효."
      },
      {
        "seq": 2,
        "price": 59612.41,
        "type": "support_test",
        "source": "Fibonacci(0.618 골든 $59,612.41), Candlestick(EMA20 $59,753.53), Harmonic(하단 PRZ 상단 $59,590.72)",
        "description": "$60,700 거절 후 첫 지지 클러스터 $59,612-$59,753 테스트. EMA20 $59,753.53 하회 시 최근 bullish_engulfing 기반 반등 신뢰도가 빠르게 약화(Candlestick)되며, 0.618 되돌림 방어 여부가 단기 분수령.",
        "est_hours": 9,
        "turning_zone": [
          59258.45,
          59612.41
        ],
        "likely_wick": 59450.0,
        "rejection_confirm": 59753.53,
        "invalid_overshoot": 59080.0,
        "calibration_reasoning": "0.618 되돌림($59,612.41)과 Chairman 지지가 겹치는 1차 반응 지점. 존 하단은 fib·Chairman 클러스터 $59,258-$59,298에 앵커(폭 $354≈0.36 ATR). EMA20 $59,753.53 재탈환 시 반등 확정, $59,080 하향 이탈 시 WP3로 연장되어 이 지점 반등은 무효."
      },
      {
        "seq": 3,
        "price": 58900,
        "type": "support_test",
        "source": "Derivatives(하방 유동성 $58,900), Fibonacci($58,904.49, 0.5 EQ $59,258.45 하단)",
        "description": "지지 클러스터 이탈 시 파생이 지목한 하방 유동성 목표 $58,900 도달. Fib 0.5 EQ $59,258.45 하회로 discount 심화, OI -3.42%(숏커버성 반등 소멸) 논리가 하방 연장을 뒷받침.",
        "est_hours": 16,
        "turning_zone": [
          58600.0,
          58900.0
        ],
        "likely_wick": 58700.0,
        "rejection_confirm": 59080.0,
        "invalid_overshoot": 58400.0,
        "calibration_reasoning": "fib 0.382($58,904.49)가 Chairman 지지 $58,900과 사실상 일치하는 컨플루언스. 존은 다음 지지 $58,600까지 확장(폭 $300≈0.30 ATR). $59,080 재탈환 시 반등 확정, $58,600 지지 이탈($58,400 종가) 시 WP4로 연장되어 무효."
      },
      {
        "seq": 4,
        "price": 57758.6,
        "type": "swing_low",
        "source": "Wyckoff(Spring 저점 $57,758.60), ICT(range low $57,758.60), Fibonacci(컨플루언스 $57,758.60), Harmonic($57,758.60)",
        "description": "하단 구조 최중요 방어선 $57,758.60 재테스트로 24시간 하방 익스트림. Wyckoff Spring·ICT range low·Fib·Harmonic 4중 컨플루언스라 강한 반등 후보 구간. 방어 시 Wyckoff 축적 Phase D가 부활하는 반전 존이며, 명확한 종가 이탈 시 축적 시나리오 전체 무효화.",
        "est_hours": 23,
        "turning_zone": [
          57160.0,
          57758.6
        ],
        "likely_wick": 57500.0,
        "rejection_confirm": 58600.0,
        "invalid_overshoot": 57000.0,
        "calibration_reasoning": "fib ext_1.0 이중 + Chairman 지지 $57,758.60 + 스윙로우 + Wyckoff Spring/ICT 레인지 로우의 4중 컨플루언스. 터미널 웨이포인트라 0.6 ATR 광폭 존 적용, 스프링 언더슛은 라운드넘버 $57,500로 유인. $58,600 재탈환 시 Wyckoff Phase D 반전 확정, $57,000 종가 이탈 시 축적 시나리오 전체 무효. (Harmonic butterfly PRZ=$60,121은 현재가 부근 report-only라 어떤 웨이포인트도 이동시키지 않음)"
      }
    ],
    "period_extremes": {
      "4h": {
        "expected_high": 60700,
        "expected_low": 60000,
        "high_first": true
      },
      "8h": {
        "expected_high": 60700,
        "expected_low": 59750,
        "high_first": true
      },
      "24h": {
        "expected_high": 60700,
        "expected_low": 57758.6,
        "high_first": true
      }
    },
    "triggers": {
      "bullish": {
        "price": 61665,
        "description": "SOS $61,322.00 재탈환 후 메인 레인지 EQ $61,665.00 위 수용 시 Wyckoff 축적 Phase D 강세 재개 확인. 하방 시나리오가 약화되고 $62,232.10 무효화 레벨에 근접."
      },
      "bearish": {
        "price": 59612.41,
        "description": "EMA20 $59,753.53·0.618 $59,612.41 지지 클러스터 종가 이탈 시 반등 붕괴 확정. $58,900·$57,758.60 하방 유동성으로 매도 가속."
      }
    },
    "scenario_invalidation": 62254.98,
    "raw_llm_response": "```json\n{\n  \"path_type\": \"complex\",\n  \"confidence\": 0.62,\n  \"waypoints\": [\n    {\n      \"seq\": 1,\n      \"price\": 60700,\n      \"type\": \"liquidity_sweep\",\n      \"source\": \"Derivatives(최대 상방 청산 밀집 $60,700), ICT(전일 고점 $60,520·EQ $60,484.10 buy-side 유동성), Harmonic(상단 PRZ $60,602.82-$61,027.99)\",\n      \"description\": \"현재가 바로 위 $60,484-$60,700 유동성·저항 클러스터로의 상방 스윕. 파생 최대 상방 청산 밀집 $60,700을 태그해 buy-side 유동성을 흡수한 뒤, EQ $60,484.10 재탈환 실패 시 약세 재개(ICT). Harmonic 상단 PRZ와 겹쳐 방향 확정보다 거절 확인 성격이 강한 숏 진입 최적 존이며, 셋업(77% bearish)의 진입 트리거.\",\n      \"est_hours\": 2\n    },\n    {\n      \"seq\": 2,\n      \"price\": 59612.41,\n      \"type\": \"support_test\",\n      \"source\": \"Fibonacci(0.618 골든 $59,612.41), Candlestick(EMA20 $59,753.53), Harmonic(하단 PRZ 상단 $59,590.72)\",\n      \"description\": \"$60,700 거절 후 첫 지지 클러스터 $59,612-$59,753 테스트. EMA20 $59,753.53 하회 시 최근 bullish_engulfing 기반 반등 신뢰도가 빠르게 약화(Candlestick)되며, 0.618 되돌림 방어 여부가 단기 분수령.\",\n      \"est_hours\": 9\n    },\n    {\n      \"seq\": 3,\n      \"price\": 58900,\n      \"type\": \"support_test\",\n      \"source\": \"Derivatives(하방 유동성 $58,900), Fibonacci($58,904.49, 0.5 EQ $59,258.45 하단)\",\n      \"description\": \"지지 클러스터 이탈 시 파생이 지목한 하방 유동성 목표 $58,900 도달. Fib 0.5 EQ $59,258.45 하회로 discount 심화, OI -3.42%(숏커버성 반등 소멸) 논리가 하방 연장을 뒷받침.\",\n      \"est_hours\": 16\n    },\n    {\n      \"seq\": 4,\n      \"price\": 57758.6,\n      \"type\": \"swing_low\",\n      \"source\": \"Wyckoff(Spring 저점 $57,758.60), ICT(range low $57,758.60), Fibonacci(컨플루언스 $57,758.60), Harmonic($57,758.60)\",\n      \"description\": \"하단 구조 최중요 방어선 $57,758.60 재테스트로 24시간 하방 익스트림. Wyckoff Spring·ICT range low·Fib·Harmonic 4중 컨플루언스라 강한 반등 후보 구간. 방어 시 Wyckoff 축적 Phase D가 부활하는 반전 존이며, 명확한 종가 이탈 시 축적 시나리오 전체 무효화.\",\n      \"est_hours\": 23\n    }\n  ],\n  \"period_extremes\": {\n    \"4h\":  {\"expected_high\": 60700, \"expected_low\": 60000, \"high_first\": true},\n    \"8h\":  {\"expected_high\": 60700, \"expected_low\": 59750, \"high_first\": true},\n    \"24h\": {\"expected_high\": 60700, \"expected_low\": 57758.6, \"high_first\": true}\n  },\n  \"triggers\": {\n    \"bullish\": {\"price\": 61665, \"description\": \"SOS $61,322.00 재탈환 후 메인 레인지 EQ $61,665.00 위 수용 시 Wyckoff 축적 Phase D 강세 재개 확인. 하방 시나리오가 약화되고 $62,232.10 무효화 레벨에 근접.\"},\n    \"bearish\": {\"price\": 59612.41, \"description\": \"EMA20 $59,753.53·0.618 $59,612.41 지지 클러스터 종가 이탈 시 반등 붕괴 확정. $58,900·$57,758.60 하방 유동성으로 매도 가속.\"}\n  },\n  \"scenario_invalidation\": 62254.98\n}\n```"
  },
  "tp_calibration": {
    "calibrated_waypoints": [
      {
        "seq": 1,
        "base_target": 60700.0,
        "turning_zone": [
          60700.0,
          61050.0
        ],
        "likely_wick": 60900.0,
        "rejection_confirm": 60484.1,
        "invalid_overshoot": 61322.0,
        "calibration_reasoning": "Chairman 저항 클러스터 $60,484-$60,700이 스윕 상단을 제한. 존은 $60,700 위 라운드넘버 $61,000 자석을 포함하되 다음 저항 $61,322 아래로 설정(폭 $350≈0.35 ATR). 파생 청산 데이터가 실제로는 부재하므로 Chairman 저항에 앵커링함. EQ $60,484.10 재탈환 실패 시 약세 재개 확정, $61,322 종가 상회 시 거절 무효."
      },
      {
        "seq": 2,
        "base_target": 59612.41,
        "turning_zone": [
          59258.45,
          59612.41
        ],
        "likely_wick": 59450.0,
        "rejection_confirm": 59753.53,
        "invalid_overshoot": 59080.0,
        "calibration_reasoning": "0.618 되돌림($59,612.41)과 Chairman 지지가 겹치는 1차 반응 지점. 존 하단은 fib·Chairman 클러스터 $59,258-$59,298에 앵커(폭 $354≈0.36 ATR). EMA20 $59,753.53 재탈환 시 반등 확정, $59,080 하향 이탈 시 WP3로 연장되어 이 지점 반등은 무효."
      },
      {
        "seq": 3,
        "base_target": 58900.0,
        "turning_zone": [
          58600.0,
          58900.0
        ],
        "likely_wick": 58700.0,
        "rejection_confirm": 59080.0,
        "invalid_overshoot": 58400.0,
        "calibration_reasoning": "fib 0.382($58,904.49)가 Chairman 지지 $58,900과 사실상 일치하는 컨플루언스. 존은 다음 지지 $58,600까지 확장(폭 $300≈0.30 ATR). $59,080 재탈환 시 반등 확정, $58,600 지지 이탈($58,400 종가) 시 WP4로 연장되어 무효."
      },
      {
        "seq": 4,
        "base_target": 57758.6,
        "turning_zone": [
          57160.0,
          57758.6
        ],
        "likely_wick": 57500.0,
        "rejection_confirm": 58600.0,
        "invalid_overshoot": 57000.0,
        "calibration_reasoning": "fib ext_1.0 이중 + Chairman 지지 $57,758.60 + 스윙로우 + Wyckoff Spring/ICT 레인지 로우의 4중 컨플루언스. 터미널 웨이포인트라 0.6 ATR 광폭 존 적용, 스프링 언더슛은 라운드넘버 $57,500로 유인. $58,600 재탈환 시 Wyckoff Phase D 반전 확정, $57,000 종가 이탈 시 축적 시나리오 전체 무효. (Harmonic butterfly PRZ=$60,121은 현재가 부근 report-only라 어떤 웨이포인트도 이동시키지 않음)"
      }
    ],
    "raw_llm_response": "```json\n{\n  \"calibrated_waypoints\": [\n    {\n      \"seq\": 1,\n      \"base_target\": 60700.00,\n      \"turning_zone\": [60700.00, 61050.00],\n      \"likely_wick\": 60900.00,\n      \"rejection_confirm\": 60484.10,\n      \"invalid_overshoot\": 61322.00,\n      \"calibration_reasoning\": \"Chairman 저항 클러스터 $60,484-$60,700이 스윕 상단을 제한. 존은 $60,700 위 라운드넘버 $61,000 자석을 포함하되 다음 저항 $61,322 아래로 설정(폭 $350≈0.35 ATR). 파생 청산 데이터가 실제로는 부재하므로 Chairman 저항에 앵커링함. EQ $60,484.10 재탈환 실패 시 약세 재개 확정, $61,322 종가 상회 시 거절 무효.\"\n    },\n    {\n      \"seq\": 2,\n      \"base_target\": 59612.41,\n      \"turning_zone\": [59258.45, 59612.41],\n      \"likely_wick\": 59450.00,\n      \"rejection_confirm\": 59753.53,\n      \"invalid_overshoot\": 59080.00,\n      \"calibration_reasoning\": \"0.618 되돌림($59,612.41)과 Chairman 지지가 겹치는 1차 반응 지점. 존 하단은 fib·Chairman 클러스터 $59,258-$59,298에 앵커(폭 $354≈0.36 ATR). EMA20 $59,753.53 재탈환 시 반등 확정, $59,080 하향 이탈 시 WP3로 연장되어 이 지점 반등은 무효.\"\n    },\n    {\n      \"seq\": 3,\n      \"base_target\": 58900.00,\n      \"turning_zone\": [58600.00, 58900.00],\n      \"likely_wick\": 58700.00,\n      \"rejection_confirm\": 59080.00,\n      \"invalid_overshoot\": 58400.00,\n      \"calibration_reasoning\": \"fib 0.382($58,904.49)가 Chairman 지지 $58,900과 사실상 일치하는 컨플루언스. 존은 다음 지지 $58,600까지 확장(폭 $300≈0.30 ATR). $59,080 재탈환 시 반등 확정, $58,600 지지 이탈($58,400 종가) 시 WP4로 연장되어 무효.\"\n    },\n    {\n      \"seq\": 4,\n      \"base_target\": 57758.60,\n      \"turning_zone\": [57160.00, 57758.60],\n      \"likely_wick\": 57500.00,\n      \"rejection_confirm\": 58600.00,\n      \"invalid_overshoot\": 57000.00,\n      \"calibration_reasoning\": \"fib ext_1.0 이중 + Chairman 지지 $57,758.60 + 스윙로우 + Wyckoff Spring/ICT 레인지 로우의 4중 컨플루언스. 터미널 웨이포인트라 0.6 ATR 광폭 존 적용, 스프링 언더슛은 라운드넘버 $57,500로 유인. $58,600 재탈환 시 Wyckoff Phase D 반전 확정, $57,000 종가 이탈 시 축적 시나리오 전체 무효. (Harmonic butterfly PRZ=$60,121은 현재가 부근 report-only라 어떤 웨이포인트도 이동시키지 않음)\"\n    }\n  ]\n}\n```"
  },
  "timing": {
    "stages": {
      "stage1_agents": 70.9,
      "chairman": 90.3,
      "operating_path": 256.6,
      "tp_calibrator": 205.5
    },
    "agents": {},
    "total_s": 623.3
  }
}