BTC/USDT 4H Council Report

Signal: BEARISH (68%)  |  Price: $58,592.80  |  2026-07-01 21:00 KST  |  300 candles

Council: 1 bullish, 0 neutral, 5 bearish  |  Support: $58,407 / $58,160 / $57,759  |  Resistance: $59,080 / $59,258 / $59,415

result.json   raw.txt   report.md


BTC Chart

Executive Summary

현재 BTC/USDT 4시간 구조는 Wyckoff상 축적 후보와 Phase C Spring 가능성이 존재하지만, 가격이 메인 레인지 저점 $59,080 아래에 머물러 Spring 이후 SOS가 확인되지 않은 상태다. 다수 구조 모델은 EMA20 $59,414.94, EMA120 $62,427.61, EMA240 $65,770.59 하회와 ICT bearish BOS $62,232.10 하향 확정을 근거로 확인된 구조를 bearish로 판정한다. 현재 위치는 약세 구조 내부의 할인 구간이자 $58,160 Spring/전일 저가와 $57,758.60 range low 사이의 하단 유동성 테스트 영역이며, 동시에 bullish engulfing과 Harmonic PRZ가 겹치는 반응 후보 구간이다. 구조적 위험은 $59,080-$59,414.94 회복 실패 시 Spring 후보가 단순 하방 유동성 소모로 끝날 수 있다는 점이고, 약세 구조 무효화는 최소 $62,232.10 회수 및 $62,427.61 안착에서 판단한다.

Confluences

Conflicts


Agent Matrix

AgentSignalConfidenceSupportResistance
Wyckoff ExpertNEUTRAL62%$58,160 / $59,080$59,415 / $63,650
ICT TraderBEARISH82%$58,160 / $57,759$59,415 / $60,667
Derivatives TraderBEARISH64%$57,600 / $57,200$58,600 / $58,900
Candlestick ReaderNEUTRAL56%$57,759 / $58,593$59,415 / $60,349
Fibonacci AnalystBEARISH58%$57,759 / $58,850$59,258 / $59,579
Harmonic SpecialistNEUTRAL44%$58,407 / $57,879$59,415 / $59,591

Agent Details

Wyckoff Expert — NEUTRAL (62%)

Support: $58,160 / $59,080 | Resistance: $59,415 / $63,650 / $64,250 | Horizon: medium term

현재 Wyckoff regime은 ACC이며 acc_score 84.9, regime_fitness 0.849로 축적 구조 우위가 확인되지만, regime_state는 acc_candidate이고 현재 이벤트는 Phase C의 Spring입니다. 주요 앵커는 SC $59,080, AR $64,250이며, 최근 Spring은 $58,160에서 형성되었고 현재가 $58,592.80은 Spring 저점 위에 있지만 아직 SC/레인지 저점 $59,080을 회복하지 못했습니다. 따라서 구조적 편향은 bullish이나, 이는 아직 SOS나 LPS 이후의 확정 상승 구조가 아니라 Spring 테스트 이후 회복 여부를 확인해야 하는 단계입니다. 단기적으로는 $59,080 재진입 및 EMA20 $59,414.94 회복이 필요하며, 실패 시 $58,160 재테스트 또는 하단 유동성 재확인이 우선될 수 있습니다.
ICT Trader — BEARISH (82%)

Support: $58,160 / $57,759 | Resistance: $59,415 / $60,667 / $60,913 | Horizon: short/medium term

확정 구조는 bearish로 판단한다. BOS 시퀀스가 BOS_bearish, BOS_bearish, BOS_bearish, BOS_bullish 이후 다시 $62,232.10 하향 bearish BOS로 마감되어 하락 구조가 재확인되었고, 현재가 $58,592.80는 EMA20 $59,414.94, EMA120 $62,427.61, EMA240 $65,770.59 모두 아래에 있다. 현재 가격은 EQ $60,913.30 아래 discount 구간이므로 신규 숏 추격에는 주의가 필요하지만, 전일 저가 $58,160.00이 이미 깨졌고 range low $57,758.60이 가까워 추가 sell-side liquidity 탐색 가능성이 높다. 활성 bullish OB와 미충족 bullish FVG가 없고, 반대로 구조 점수는 bear_score 10.8 대 bull_score 4.5로 약세 우위가 뚜렷하다.
Derivatives Trader — BEARISH (64%)

Support: $57,600 / $57,200 / $53,600 | Resistance: $58,600 / $58,900 / $59,415 | Horizon: short term, 약 4-8시간

현재 BTC는 $58,592.80으로 EMA20 $59,414.94, EMA120 $62,427.61, EMA240 $65,770.59를 모두 하회하고 있어 확인된 구조는 약세로 판단한다. 파생 포지셔닝은 24시간 가격이 -0.96% 하락하는 동안 OI가 +2.789% 증가했고, CVD도 -7,897.14로 악화되어 하락 방향 신규 포지션과 매도 주도 흐름이 우세하다. 롱 계정 비율이 70.8%로 높고 account_long_crowding이 1.000인 점은 롱 청산 리스크를 키우며, 특히 $57,600과 $57,200 하방 유동성으로 가격이 끌릴 가능성이 있다. 단기적으로는 $58,600-$58,900 상단 청산 구간을 잠시 찌른 뒤 실패할 경우 $57,600, $57,200 테스트가 우선 시나리오다.
Candlestick Reader — NEUTRAL (56%)

Support: $57,759 / $58,593 | Resistance: $59,415 / $60,349 / $62,428 | Horizon: short term

확인된 구조는 약세입니다. 현재 BTC는 $58,592.80으로 EMA20 $59,414.94보다 1.4% 낮고, EMA120 $62,427.61 및 EMA240 $65,770.59 아래에 있어 중기 구조적 우위는 매도 측에 있습니다. 다만 7일 저점 $57,758.60 근처에서 고거래량 bullish_engulfing이 strict 등급으로 감지되었고 품질 점수도 0.760으로 가장 높아, 단기적으로는 반등 셋업이 살아 있습니다. 반면 bear_score 1.2000이 bull_score 0.850보다 높고 최근 5개 캔들 중 마지막 2개가 음봉이므로, $59,414.94 EMA20 회복 전까지는 상승 확정보다는 중립적 충돌 구간으로 판단합니다.
Fibonacci Analyst — BEARISH (58%)

Support: $57,759 / $58,850 | Resistance: $59,258 / $59,579 / $59,804 | Horizon: short term

BTC/USDT는 최근 상승 스윙 $58,850 → $60,758 기준으로 현재가 $58,592.80이 스윙 저점 $58,850 아래에 위치해 있어 해당 상방 피보나치 구조는 사실상 무효화된 상태입니다. 가장 가까운 피보나치 레벨은 0.786 되돌림 $59,258.38이며, 그 위로 골든 비율 0.618 $59,578.97, 0.5 $59,804.15가 모두 저항으로 배열되어 있습니다. 다만 현재가는 EQ $59,804.15 아래 디스카운트 영역에 있어, $58,850 하방 이탈이 단순 유동성 스윕으로 끝나고 $59,258.38을 회복하면 단기 반등 셋업으로 전환될 수 있습니다. 그러나 confluence_quality 0.600과 reaction_probability 0.45는 강한 반전 확률보다는 중간 이하의 반응 가능성을 시사하므로, 확인 전까지는 약세 우위로 봅니다.
Harmonic Specialist — NEUTRAL (44%)

Support: $58,407 / $57,879 / $57,759 | Resistance: $59,415 / $59,591 / $60,376 | Horizon: short/medium term

4시간 구조 관점에서는 현재가 $58,592.80가 EMA20 $59,414.94, EMA120 $62,427.61, EMA240 $65,770.59 아래에 있어 확인된 추세 구조는 아직 bearish로 읽힌다. 다만 하모닉 셋업 관점에서는 $58,406.59-$59,590.72 Butterfly PRZ와 $58,803.52-$60,375.78 Crab PRZ가 현재 가격대와 겹치며, 일부 완성 패턴은 PRZ 진입 후 방어 및 AD 0.236 반응까지 확인되어 단기 반등 후보 구간이다. 최고 점수 패턴은 bullish Butterfly(score 0.897)이지만 quality가 low이고 PRZ 폭이 2.007%로 넓어, 하모닉 단독으로 메인 경로를 bullish로 전환할 수 없다. 따라서 현재 결론은 bearish 구조 안의 bullish 반응/되돌림 셋업이며, $59,590.72-$60,375.78 상단을 회복하기 전까지는 중립 신호로 제한한다.

Operating Path — complex (57%)

#PriceTypeSourceEst. HoursDescription
1$59,415resistance_testWyckoff, Candlestick, Fibonacci, ICT, Derivatives, Harmonic (EMA20 공통 저항); 실행 셋업층 (Spring 유지 + strict bullish_engulfing + Butterfly/Crab PRZ)6.0실행 셋업이 BULLISH(62%)로 구조(BEARISH 68%)와 충돌하고 setup_strength >= 0.5이므로 첫 웨이포인트는 셋업 방향(상방 반응)으로 설정. $58,160 Spring 방어 + 7일 저점 bullish_engulfing + PRZ 반응이 만드는 선행 반등이 $59,080 레인지 저점 재진입을 시도하며 6개 에이전트 전원이 지목한 EMA20 $59,414.94(단기 최강 confluence 저항)를 테스트. 후보 등급 fib $59,691.56보다 strict 다중합의 EMA20을 우선. 이 지점이 반등의 상단이자 약세 구조 재개의 거절 포인트.
2$58,160support_testWyckoff (Spring 저점), ICT (전일 저가); Derivatives (OI+2.789%, CVD -7,897 하락 압력)15.0EMA20 거절 후 확인된 약세 구조가 재개. ICT bearish BOS $62,232.10 및 파생 하락 신규 포지션 유입을 근거로 Wyckoff Spring 저점이자 ICT 전일 저가인 $58,160 재테스트. 한 번 방어됐던 핵심 하단 유동성 기준을 다시 눌러 Spring 완성(SOS) 실패 여부를 검증하는 구간.
3$57,759liquidity_sweepCandlestick (7일 저점), Fibonacci (주요 하단), ICT (range low), Harmonic (하단 PRZ 인접); Derivatives ($57,600-$57,200 청산 인접)22.0$58,160 이탈 시 Candlestick 7일 저점·Fibonacci 하단·ICT range low가 중첩되는 $57,758.60으로 sell-side 유동성 스윕. 롱 crowding 1.000·롱 비율 70.8% 상황에서 $57,600-$57,200 청산 유동성을 향한 하단 밀집 구간의 1차 목표 저점.

Period Extremes

HorizonExpected LowExpected HighSequence
4h$58,407$59,258High first
8h$58,407$59,415High first
24h$57,759$59,415High first

Triggers

Invalidation: $60,349

Raw Operating Path Response
```json
{
  "path_type": "complex",
  "confidence": 0.57,
  "waypoints": [
    {
      "seq": 1,
      "price": 59414.94,
      "type": "resistance_test",
      "source": "Wyckoff, Candlestick, Fibonacci, ICT, Derivatives, Harmonic (EMA20 공통 저항); 실행 셋업층 (Spring 유지 + strict bullish_engulfing + Butterfly/Crab PRZ)",
      "description": "실행 셋업이 BULLISH(62%)로 구조(BEARISH 68%)와 충돌하고 setup_strength >= 0.5이므로 첫 웨이포인트는 셋업 방향(상방 반응)으로 설정. $58,160 Spring 방어 + 7일 저점 bullish_engulfing + PRZ 반응이 만드는 선행 반등이 $59,080 레인지 저점 재진입을 시도하며 6개 에이전트 전원이 지목한 EMA20 $59,414.94(단기 최강 confluence 저항)를 테스트. 후보 등급 fib $59,691.56보다 strict 다중합의 EMA20을 우선. 이 지점이 반등의 상단이자 약세 구조 재개의 거절 포인트.",
      "est_hours": 6.0
    },
    {
      "seq": 2,
      "price": 58160.0,
      "type": "support_test",
      "source": "Wyckoff (Spring 저점), ICT (전일 저가); Derivatives (OI+2.789%, CVD -7,897 하락 압력)",
      "description": "EMA20 거절 후 확인된 약세 구조가 재개. ICT bearish BOS $62,232.10 및 파생 하락 신규 포지션 유입을 근거로 Wyckoff Spring 저점이자 ICT 전일 저가인 $58,160 재테스트. 한 번 방어됐던 핵심 하단 유동성 기준을 다시 눌러 Spring 완성(SOS) 실패 여부를 검증하는 구간.",
      "est_hours": 15.0
    },
    {
      "seq": 3,
      "price": 57758.6,
      "type": "liquidity_sweep",
      "source": "Candlestick (7일 저점), Fibonacci (주요 하단), ICT (range low), Harmonic (하단 PRZ 인접); Derivatives ($57,600-$57,200 청산 인접)",
      "description": "$58,160 이탈 시 Candlestick 7일 저점·Fibonacci 하단·ICT range low가 중첩되는 $57,758.60으로 sell-side 유동성 스윕. 롱 crowding 1.000·롱 비율 70.8% 상황에서 $57,600-$57,200 청산 유동성을 향한 하단 밀집 구간의 1차 목표 저점.",
      "est_hours": 22.0
    }
  ],
  "period_extremes": {
    "4h":  {"expected_high": 59258.38, "expected_low": 58406.59, "high_first": true},
    "8h":  {"expected_high": 59414.94, "expected_low": 58406.59, "high_first": true},
    "24h": {"expected_high": 59414.94, "expected_low": 57758.6,  "high_first": true}
  },
  "triggers": {
    "bullish": {"price": 59590.72, "description": "EMA20 $59,414.94 + 0.618 fib $59,578.97 + Butterfly PRZ 상단 $59,590.72를 돌파·안착 시 반등이 단순 반응을 넘어서며, $59,804.15 Fib EQ·$60,348.95 7일 EQ로 확장. 하락 연장 웨이포인트(WP2·WP3) 무효화 시작."},
    "bearish": {"price": 58160.0, "description": "Wyckoff Spring 저점 / ICT 전일 저가 $58,160 하향 이탈 확정 시 Spring이 단순 하방 유동성 소모로 귀결. $57,758.60 range low 및 $57,600-$57,200 청산 유동성으로 하락 가속."}
  },
  "scenario_invalidation": 60348.95
}
```

Raw Chairman Response
{
  "overall_signal": "bearish",
  "overall_confidence": 0.68,
  "execution_setup": {
    "setup_bias": "bullish",
    "setup_strength": 0.62,
    "active_setups": [
      "Wyckoff Phase C Spring 후보: $58,160 하단 유동성 테스트 후 현재가 $58,592.80이 저점 위에서 유지 중이나, $59,080 레인지 저점 재진입은 미확인",
      "캔들스틱 strict bullish_engulfing: 7일 저점 $57,758.60 부근에서 고거래량 동반, 품질 점수 0.760",
      "하모닉 bullish Butterfly PRZ $58,406.59-$59,590.72 및 bullish Crab PRZ $58,803.52-$60,375.78 내부/근접 반응 구간",
      "가격이 여러 EQ 아래 할인 구간에 위치: 7일 EQ $60,348.95, Fibonacci EQ $59,804.15, ICT EQ $60,913.30 하회",
      "반대 조건: EMA20 $59,414.94 하회, CVD -7,897.14, 24시간 가격 하락 중 OI +2.789% 증가로 반등 셋업의 구조 확인은 아직 부족"
    ],
    "setup_vs_structure": "실행 셋업은 단기 반등 후보가 우세하지만, 확인된 4시간 구조는 여전히 약세다. 즉, 현재는 약세 구조 안에서 Spring·PRZ·bullish engulfing이 만드는 선행 반응 구간이며, $59,080-$59,414.94 회복 전까지 구조 전환으로 보기는 어렵다."
  },
  "signal_breakdown": {
    "bullish_count": 1,
    "bearish_count": 5,
    "neutral_count": 0
  },
  "key_levels": {
    "support": [
      58406.59,
      58160.0,
      57758.6,
      57600.0,
      57200.0,
      57166.08,
      56775.86
    ],
    "resistance": [
      59080.0,
      59258.38,
      59414.94,
      59578.97,
      59804.15,
      60348.95,
      60913.3,
      62232.1,
      62427.61,
      64250.0
    ]
  },
  "confluences": [
    "EMA20 $59,414.94는 Wyckoff, Candlestick, ICT, Derivatives, Harmonic 모두가 단기 구조 회복 전 저항으로 지목한다.",
    "$58,160은 Wyckoff의 Spring 저점이자 ICT의 전일 저가로, 현재 구조상 핵심 하단 유동성 기준이다.",
    "$57,758.60은 Candlestick의 7일 저점, Fibonacci의 주요 하단 기준, ICT의 range low, Harmonic의 하단 PRZ 인접 지지로 중복된다.",
    "$58,850 부근은 Fibonacci 상방 스윙 저점이자 Harmonic completed bullish Crab의 D 가격으로, 이탈 이후 회복 여부가 반응 셋업의 질을 좌우한다.",
    "$59,080-$59,414.94 구간은 Wyckoff 레인지 저점 재진입 가격과 EMA20 저항이 겹치는 첫 구조 회복 관문이다.",
    "$59,258.38-$59,804.15는 Fibonacci 0.786, 0.618, 0.5 되돌림 저항과 Harmonic PRZ 상단, EMA20 주변 저항이 겹치는 단기 공급 클러스터다.",
    "Candlestick, ICT, Derivatives, Harmonic은 모두 가격이 EMA20 $59,414.94, EMA120 $62,427.61, EMA240 $65,770.59 아래에 있다는 점을 약세 구조 근거로 공유한다.",
    "Derivatives의 하방 청산 레벨 $57,600-$57,200은 ICT range low $57,758.60 및 Harmonic 하단 PRZ $57,166.08-$57,770.33과 인접해 하단 유동성 밀집 구간을 형성한다."
  ],
  "conflicts": [
    "Wyckoff는 축적 후보 구조와 Phase C Spring 가능성을 근거로 구조 편향을 bullish로 보지만, ICT·Derivatives·Fibonacci·Candlestick·Harmonic은 확인된 4시간 구조를 bearish로 본다.",
    "Candlestick의 strict bullish_engulfing과 Harmonic의 bullish PRZ 반응은 반등 셋업을 지지하지만, ICT의 bearish BOS $62,232.10 하향 확정 및 Derivatives의 음의 CVD와 OI 증가가 이를 구조 전환으로 인정하지 않는다.",
    "가격이 할인 구간에 있다는 점은 Fibonacci·ICT·Candlestick에서 반등 후보 조건으로 해석될 수 있으나, 동시에 EMA20 $59,414.94 및 레인지 저점 $59,080 아래에 있어 아직 약세 구조 내부의 할인 상태에 불과하다.",
    "Wyckoff Spring은 $58,160 위 방어만으로는 완성 신호가 아니며, $59,080 레인지 내부 재진입과 $59,414.94 회복 전까지는 SOS가 아닌 후보 이벤트로 제한된다."
  ],
  "highest_conviction_analyst": "ICT Trader — 신뢰도 82%로 가장 높고, BOS 시퀀스가 $62,232.10 하향 bearish BOS로 재확인되었으며, 현재가가 EMA20 $59,414.94·EMA120 $62,427.61·EMA240 $65,770.59를 모두 하회한다. 또한 전일 저가 $58,160 하향 돌파와 range low $57,758.60 근접이라는 구체적 구조 기준을 제시해 약세 구조 판단의 데이터 밀도가 가장 높다.",
  "invalidation_level": "$62,427.61 4시간 종가 회복; 보수적으로는 $62,232.10 bearish BOS 레벨 회수 후 EMA120 $62,427.61 안착이 확인될 때 현재 약세 구조 판단이 훼손된다.",
  "executive_summary": "현재 BTC/USDT 4시간 구조는 Wyckoff상 축적 후보와 Phase C Spring 가능성이 존재하지만, 가격이 메인 레인지 저점 $59,080 아래에 머물러 Spring 이후 SOS가 확인되지 않은 상태다. 다수 구조 모델은 EMA20 $59,414.94, EMA120 $62,427.61, EMA240 $65,770.59 하회와 ICT bearish BOS $62,232.10 하향 확정을 근거로 확인된 구조를 bearish로 판정한다. 현재 위치는 약세 구조 내부의 할인 구간이자 $58,160 Spring/전일 저가와 $57,758.60 range low 사이의 하단 유동성 테스트 영역이며, 동시에 bullish engulfing과 Harmonic PRZ가 겹치는 반응 후보 구간이다. 구조적 위험은 $59,080-$59,414.94 회복 실패 시 Spring 후보가 단순 하방 유동성 소모로 끝날 수 있다는 점이고, 약세 구조 무효화는 최소 $62,232.10 회수 및 $62,427.61 안착에서 판단한다."
}
Full Result JSON
{
  "symbol": "BTC/USDT",
  "timeframe": "4h",
  "timestamp": "2026-07-01 21:00 KST",
  "last_price": 58592.8,
  "num_candles": 300,
  "stage1_analyses": {
    "wyckoff": {
      "agent_id": "wyckoff",
      "display_name": "Wyckoff Expert",
      "signal": "neutral",
      "confidence": 0.62,
      "structure_bias": "bullish",
      "setup_bias": "bullish",
      "setup_score": 0.56,
      "setup_signals": [
        "Phase C Spring 후보: $58,160에서 하단 유동성 테스트 발생",
        "현재가 $58,592.80은 메인 레인지 저점 $59,080 아래에 있어 아직 레인지 내부 재진입 미확인",
        "Spring 저점 $58,160 위에서 유지 중이나, $59,080 회복 전까지는 확인된 SOS가 아님",
        "현재가는 EMA20 $59,414.94 아래에 있어 단기 공급 압력이 아직 남아 있음",
        "상단 확인 저항은 ST $63,650 및 AR $64,250"
      ],
      "reasoning": "현재 Wyckoff regime은 ACC이며 acc_score 84.9, regime_fitness 0.849로 축적 구조 우위가 확인되지만, regime_state는 acc_candidate이고 현재 이벤트는 Phase C의 Spring입니다. 주요 앵커는 SC $59,080, AR $64,250이며, 최근 Spring은 $58,160에서 형성되었고 현재가 $58,592.80은 Spring 저점 위에 있지만 아직 SC/레인지 저점 $59,080을 회복하지 못했습니다. 따라서 구조적 편향은 bullish이나, 이는 아직 SOS나 LPS 이후의 확정 상승 구조가 아니라 Spring 테스트 이후 회복 여부를 확인해야 하는 단계입니다. 단기적으로는 $59,080 재진입 및 EMA20 $59,414.94 회복이 필요하며, 실패 시 $58,160 재테스트 또는 하단 유동성 재확인이 우선될 수 있습니다.",
      "key_levels": {
        "support": [
          58160.0,
          59080.0
        ],
        "resistance": [
          59414.94,
          63650.0,
          64250.0
        ]
      },
      "time_horizon": "medium term",
      "invalidation_level": "$58,160 4시간봉 종가 이탈 및 하방 수용",
      "risk_scenario": "$58,160 아래로 4시간봉이 수용되면 현재 Spring 해석은 실패로 바뀌며, 축적 Phase C가 아니라 추가 하락형 재분배 또는 새로운 저점 탐색 구조로 전환될 위험이 커집니다. 반대로 $59,080을 회복하고 $59,414.94 위에서 유지되면 Spring 테스트 성공 가능성이 높아지고, 이후 $63,650 ST 및 $64,250 AR 구간으로의 SOS 후보 테스트가 열립니다.",
      "data_quality": "medium",
      "metrics": {
        "acc_score": 84.9,
        "dis_score": 81.2,
        "regime": "ACC",
        "regime_state": "acc_candidate",
        "structure_bias": "bullish",
        "phase_context": "acc_candidate / accumulation / Phase C",
        "phases_detected": [
          "SC",
          "AR",
          "ST",
          "Spring"
        ],
        "last_phase": "Spring",
        "phase_candidates": [
          {
            "label": "SC",
            "side": "low",
            "idx": 145,
            "price": 59080.0,
            "color": "#ffd166"
          },
          {
            "label": "AR",
            "side": "high",
            "idx": 158,
            "price": 64250.0,
            "color": "#06d6a0"
          },
          {
            "label": "ST",
            "side": "low",
            "idx": 199,
            "price": 63650.0,
            "color": "#118ab2"
          },
          {
            "label": "Spring",
            "side": "low",
            "idx": 294,
            "price": 58160.0,
            "color": "#f9844a"
          }
        ],
        "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": 145,
            "end_idx": 294,
            "phase_count": 4,
            "phases": [
              {
                "label": "SC",
                "side": "low",
                "idx": 145,
                "price": 59080.0,
                "color": "#ffd166",
                "dt": "2026-06-06 01:00:00+09:00"
              },
              {
                "label": "AR",
                "side": "high",
                "idx": 158,
                "price": 64250.0,
                "color": "#06d6a0",
                "dt": "2026-06-08 05:00:00+09:00"
              },
              {
                "label": "ST",
                "side": "low",
                "idx": 199,
                "price": 63650.0,
                "color": "#118ab2",
                "dt": "2026-06-15 01:00:00+09:00"
              },
              {
                "label": "Spring",
                "side": "low",
                "idx": 294,
                "price": 58160.0,
                "color": "#f9844a",
                "dt": "2026-06-30 21:00:00+09:00"
              }
            ]
          }
        ],
        "active_structure_id": "4h_cycle_1",
        "primary_structure_id": "4h_cycle_1",
        "structure_count": 1,
        "regime_fitness": 0.8491638795986621,
        "current_event": "Spring",
        "major_phase": "C",
        "pos_in_range": 0.5,
        "main_range_low": 59080.0,
        "main_range_high": 64250.0
      },
      "raw_llm_response": "{\n  \"signal\": \"neutral\",\n  \"confidence\": 0.62,\n  \"structure_bias\": \"bullish\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.56,\n  \"setup_signals\": [\n    \"Phase C Spring 후보: $58,160에서 하단 유동성 테스트 발생\",\n    \"현재가 $58,592.80은 메인 레인지 저점 $59,080 아래에 있어 아직 레인지 내부 재진입 미확인\",\n    \"Spring 저점 $58,160 위에서 유지 중이나, $59,080 회복 전까지는 확인된 SOS가 아님\",\n    \"현재가는 EMA20 $59,414.94 아래에 있어 단기 공급 압력이 아직 남아 있음\",\n    \"상단 확인 저항은 ST $63,650 및 AR $64,250\"\n  ],\n  \"reasoning\": \"현재 Wyckoff regime은 ACC이며 acc_score 84.9, regime_fitness 0.849로 축적 구조 우위가 확인되지만, regime_state는 acc_candidate이고 현재 이벤트는 Phase C의 Spring입니다. 주요 앵커는 SC $59,080, AR $64,250이며, 최근 Spring은 $58,160에서 형성되었고 현재가 $58,592.80은 Spring 저점 위에 있지만 아직 SC/레인지 저점 $59,080을 회복하지 못했습니다. 따라서 구조적 편향은 bullish이나, 이는 아직 SOS나 LPS 이후의 확정 상승 구조가 아니라 Spring 테스트 이후 회복 여부를 확인해야 하는 단계입니다. 단기적으로는 $59,080 재진입 및 EMA20 $59,414.94 회복이 필요하며, 실패 시 $58,160 재테스트 또는 하단 유동성 재확인이 우선될 수 있습니다.\",\n  \"key_levels\": {\n    \"support\": [\n      58160.0,\n      59080.0\n    ],\n    \"resistance\": [\n      59414.94,\n      63650.0,\n      64250.0\n    ]\n  },\n  \"time_horizon\": \"medium term\",\n  \"invalidation_level\": \"$58,160 4시간봉 종가 이탈 및 하방 수용\",\n  \"risk_scenario\": \"$58,160 아래로 4시간봉이 수용되면 현재 Spring 해석은 실패로 바뀌며, 축적 Phase C가 아니라 추가 하락형 재분배 또는 새로운 저점 탐색 구조로 전환될 위험이 커집니다. 반대로 $59,080을 회복하고 $59,414.94 위에서 유지되면 Spring 테스트 성공 가능성이 높아지고, 이후 $63,650 ST 및 $64,250 AR 구간으로의 SOS 후보 테스트가 열립니다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "candlestick": {
      "agent_id": "candlestick",
      "display_name": "Candlestick Reader",
      "signal": "neutral",
      "confidence": 0.56,
      "structure_bias": "bearish",
      "setup_bias": "bullish",
      "setup_score": 0.64,
      "setup_signals": [
        "현재가 $58,592.80는 7일 범위 EQ $60,348.95 아래의 할인 구간에 위치",
        "7일 저점 $57,758.60 부근에서 strict 등급 bullish_engulfing 발생, pattern_quality 0.760 및 고거래량 동반",
        "현재가가 EMA20 $59,414.94 아래에 있어 반등은 아직 구조 전환이 아닌 선행 셋업 단계",
        "bearish_harami 후보가 2개 존재하나 pattern_quality 0.588, 0.399로 bullish_engulfing 대비 신뢰도 낮음"
      ],
      "reasoning": "확인된 구조는 약세입니다. 현재 BTC는 $58,592.80으로 EMA20 $59,414.94보다 1.4% 낮고, EMA120 $62,427.61 및 EMA240 $65,770.59 아래에 있어 중기 구조적 우위는 매도 측에 있습니다. 다만 7일 저점 $57,758.60 근처에서 고거래량 bullish_engulfing이 strict 등급으로 감지되었고 품질 점수도 0.760으로 가장 높아, 단기적으로는 반등 셋업이 살아 있습니다. 반면 bear_score 1.2000이 bull_score 0.850보다 높고 최근 5개 캔들 중 마지막 2개가 음봉이므로, $59,414.94 EMA20 회복 전까지는 상승 확정보다는 중립적 충돌 구간으로 판단합니다.",
      "key_levels": {
        "support": [
          57758.6,
          58592.8
        ],
        "resistance": [
          59414.94,
          60348.95,
          62427.61,
          62939.3,
          65770.59
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$57,758.60 하향 이탈 시 현재의 bullish 반등 셋업은 무효화됩니다",
      "risk_scenario": "반대로 매수세가 EMA20 $59,414.94를 회복하고 7일 EQ $60,348.95 위에서 4시간봉 종가 안착에 성공하면, bearish 구조 안의 단순 반등이 아니라 $62,427.61 EMA120 및 $62,939.30 7일 고점 재시험으로 확장될 수 있습니다. 반면 $57,758.60이 깨지면 bullish_engulfing은 실패 신호가 되고, ATR $841.13 기준으로 추가 하락 변동성이 확대될 가능성이 큽니다.",
      "data_quality": "medium",
      "metrics": {
        "total_patterns_detected": 140,
        "recent_patterns": 3,
        "pattern_list": [
          "bullish_engulfing@297",
          "bearish_harami@290",
          "bearish_harami@296"
        ],
        "atr_value": 841.13,
        "vol_avg_20": 30941.42,
        "high_volume_patterns": [
          "bullish_engulfing"
        ],
        "pattern_candidates": [
          {
            "pattern": "bullish_engulfing",
            "signal": "bullish",
            "pattern_quality": 0.76,
            "tier": "strict",
            "high_volume": true
          },
          {
            "pattern": "bearish_harami",
            "signal": "bearish",
            "pattern_quality": 0.588,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "bearish_harami",
            "signal": "bearish",
            "pattern_quality": 0.399,
            "tier": "candidate",
            "high_volume": false
          }
        ],
        "best_pattern_quality": 0.76,
        "bull_score": 0.85,
        "bear_score": 1.2
      },
      "raw_llm_response": "{\n  \"signal\": \"neutral\",\n  \"confidence\": 0.56,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.64,\n  \"setup_signals\": [\n    \"현재가 $58,592.80는 7일 범위 EQ $60,348.95 아래의 할인 구간에 위치\",\n    \"7일 저점 $57,758.60 부근에서 strict 등급 bullish_engulfing 발생, pattern_quality 0.760 및 고거래량 동반\",\n    \"현재가가 EMA20 $59,414.94 아래에 있어 반등은 아직 구조 전환이 아닌 선행 셋업 단계\",\n    \"bearish_harami 후보가 2개 존재하나 pattern_quality 0.588, 0.399로 bullish_engulfing 대비 신뢰도 낮음\"\n  ],\n  \"reasoning\": \"확인된 구조는 약세입니다. 현재 BTC는 $58,592.80으로 EMA20 $59,414.94보다 1.4% 낮고, EMA120 $62,427.61 및 EMA240 $65,770.59 아래에 있어 중기 구조적 우위는 매도 측에 있습니다. 다만 7일 저점 $57,758.60 근처에서 고거래량 bullish_engulfing이 strict 등급으로 감지되었고 품질 점수도 0.760으로 가장 높아, 단기적으로는 반등 셋업이 살아 있습니다. 반면 bear_score 1.2000이 bull_score 0.850보다 높고 최근 5개 캔들 중 마지막 2개가 음봉이므로, $59,414.94 EMA20 회복 전까지는 상승 확정보다는 중립적 충돌 구간으로 판단합니다.\",\n  \"key_levels\": {\n    \"support\": [\n      57758.6,\n      58592.8\n    ],\n    \"resistance\": [\n      59414.94,\n      60348.95,\n      62427.61,\n      62939.3,\n      65770.59\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$57,758.60 하향 이탈 시 현재의 bullish 반등 셋업은 무효화됩니다\",\n  \"risk_scenario\": \"반대로 매수세가 EMA20 $59,414.94를 회복하고 7일 EQ $60,348.95 위에서 4시간봉 종가 안착에 성공하면, bearish 구조 안의 단순 반등이 아니라 $62,427.61 EMA120 및 $62,939.30 7일 고점 재시험으로 확장될 수 있습니다. 반면 $57,758.60이 깨지면 bullish_engulfing은 실패 신호가 되고, ATR $841.13 기준으로 추가 하락 변동성이 확대될 가능성이 큽니다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "fibonacci": {
      "agent_id": "fibonacci",
      "display_name": "Fibonacci Analyst",
      "signal": "bearish",
      "confidence": 0.58,
      "structure_bias": "bearish",
      "setup_bias": "bullish",
      "setup_score": 0.45,
      "setup_signals": [
        "현재가 $58,592.80는 스윙 저점 $58,850 아래에 있어 상방 스윙 Low→High 구조가 훼손됨",
        "EQ/0.5 되돌림 $59,804.15 아래의 디스카운트 구간에 위치하여 단기 반등 후보 조건은 존재",
        "0.786 되돌림 $59,258.38 회복 실패 시 하락 지속 가능성이 우세",
        "골든 비율 0.618 레벨 $59,578.97이 현재가 위 저항으로 전환됨",
        "주요 피보나치 지지 레벨이 현재가 아래에 계산되지 않아 하방 공백이 존재"
      ],
      "reasoning": "BTC/USDT는 최근 상승 스윙 $58,850 → $60,758 기준으로 현재가 $58,592.80이 스윙 저점 $58,850 아래에 위치해 있어 해당 상방 피보나치 구조는 사실상 무효화된 상태입니다. 가장 가까운 피보나치 레벨은 0.786 되돌림 $59,258.38이며, 그 위로 골든 비율 0.618 $59,578.97, 0.5 $59,804.15가 모두 저항으로 배열되어 있습니다. 다만 현재가는 EQ $59,804.15 아래 디스카운트 영역에 있어, $58,850 하방 이탈이 단순 유동성 스윕으로 끝나고 $59,258.38을 회복하면 단기 반등 셋업으로 전환될 수 있습니다. 그러나 confluence_quality 0.600과 reaction_probability 0.45는 강한 반전 확률보다는 중간 이하의 반응 가능성을 시사하므로, 확인 전까지는 약세 우위로 봅니다.",
      "key_levels": {
        "support": [
          57758.6,
          58850.0
        ],
        "resistance": [
          59258.38,
          59578.97,
          59804.15,
          60029.33,
          60307.94,
          61277.36,
          61548.34
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$59,804.15",
      "risk_scenario": "$59,258.38의 0.786 레벨을 빠르게 회복하고 이어서 골든 비율 $59,578.97 및 EQ $59,804.15 위로 안착하면, 현재의 하방 이탈은 스프링성 유동성 스윕으로 해석될 수 있으며 $60,029.33, $60,307.94까지 되돌림 반등이 열립니다.",
      "data_quality": "medium",
      "metrics": {
        "swing_pair": "Low→High: $58,850 → $60,758",
        "direction": "up",
        "nearest_fib": "ret_0.786",
        "nearest_fib_price": 59258.38,
        "nearest_fib_distance": 1.14,
        "golden_ratio_level": 59578.97,
        "fib_ret_382": 60029.33,
        "fib_ret_618": 59578.97,
        "confluence_zones": [
          {
            "price": 59691.56,
            "count": 2,
            "levels": [
              "ret_0.618",
              "ret_0.5"
            ],
            "cluster_score": 0.6
          },
          {
            "price": 60168.64,
            "count": 2,
            "levels": [
              "ret_0.382",
              "ret_0.236"
            ],
            "cluster_score": 0.6
          },
          {
            "price": 61412.85,
            "count": 2,
            "levels": [
              "ext_1.272",
              "ext_1.414"
            ],
            "cluster_score": 0.6
          }
        ],
        "support_levels": [],
        "resistance_levels": [
          59258.3762,
          59578.9706,
          59804.15
        ],
        "level_candidates": [
          {
            "name": "ret_0.236",
            "price": 60307.94,
            "distance_pct": 2.93,
            "is_support": false,
            "cluster_score": 0.6
          },
          {
            "name": "ret_0.382",
            "price": 60029.33,
            "distance_pct": 2.45,
            "is_support": false,
            "cluster_score": 0.6
          },
          {
            "name": "ret_0.5",
            "price": 59804.15,
            "distance_pct": 2.07,
            "is_support": false,
            "cluster_score": 0.6
          },
          {
            "name": "ret_0.618",
            "price": 59578.97,
            "distance_pct": 1.68,
            "is_support": false,
            "cluster_score": 0.6
          },
          {
            "name": "ret_0.786",
            "price": 59258.38,
            "distance_pct": 1.14,
            "is_support": false,
            "cluster_score": 0.0
          },
          {
            "name": "ext_1.0",
            "price": 60758.3,
            "distance_pct": 3.7,
            "is_support": false,
            "cluster_score": 0.0
          },
          {
            "name": "ext_1.272",
            "price": 61277.36,
            "distance_pct": 4.58,
            "is_support": false,
            "cluster_score": 0.6
          },
          {
            "name": "ext_1.414",
            "price": 61548.34,
            "distance_pct": 5.04,
            "is_support": false,
            "cluster_score": 0.6
          },
          {
            "name": "ext_1.618",
            "price": 61937.63,
            "distance_pct": 5.71,
            "is_support": false,
            "cluster_score": 0.0
          },
          {
            "name": "ext_2.0",
            "price": 62666.6,
            "distance_pct": 6.95,
            "is_support": false,
            "cluster_score": 0.0
          }
        ],
        "confluence_quality": 0.6,
        "fib_reaction_state": "approaching",
        "reaction_probability": 0.45
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.58,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.45,\n  \"setup_signals\": [\n    \"현재가 $58,592.80는 스윙 저점 $58,850 아래에 있어 상방 스윙 Low→High 구조가 훼손됨\",\n    \"EQ/0.5 되돌림 $59,804.15 아래의 디스카운트 구간에 위치하여 단기 반등 후보 조건은 존재\",\n    \"0.786 되돌림 $59,258.38 회복 실패 시 하락 지속 가능성이 우세\",\n    \"골든 비율 0.618 레벨 $59,578.97이 현재가 위 저항으로 전환됨\",\n    \"주요 피보나치 지지 레벨이 현재가 아래에 계산되지 않아 하방 공백이 존재\"\n  ],\n  \"reasoning\": \"BTC/USDT는 최근 상승 스윙 $58,850 → $60,758 기준으로 현재가 $58,592.80이 스윙 저점 $58,850 아래에 위치해 있어 해당 상방 피보나치 구조는 사실상 무효화된 상태입니다. 가장 가까운 피보나치 레벨은 0.786 되돌림 $59,258.38이며, 그 위로 골든 비율 0.618 $59,578.97, 0.5 $59,804.15가 모두 저항으로 배열되어 있습니다. 다만 현재가는 EQ $59,804.15 아래 디스카운트 영역에 있어, $58,850 하방 이탈이 단순 유동성 스윕으로 끝나고 $59,258.38을 회복하면 단기 반등 셋업으로 전환될 수 있습니다. 그러나 confluence_quality 0.600과 reaction_probability 0.45는 강한 반전 확률보다는 중간 이하의 반응 가능성을 시사하므로, 확인 전까지는 약세 우위로 봅니다.\",\n  \"key_levels\": {\n    \"support\": [\n      57758.6,\n      58850.0\n    ],\n    \"resistance\": [\n      59258.38,\n      59578.97,\n      59804.15,\n      60029.33,\n      60307.94,\n      61277.36,\n      61548.34\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$59,804.15\",\n  \"risk_scenario\": \"$59,258.38의 0.786 레벨을 빠르게 회복하고 이어서 골든 비율 $59,578.97 및 EQ $59,804.15 위로 안착하면, 현재의 하방 이탈은 스프링성 유동성 스윕으로 해석될 수 있으며 $60,029.33, $60,307.94까지 되돌림 반등이 열립니다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "ict": {
      "agent_id": "ict",
      "display_name": "ICT Trader",
      "signal": "bearish",
      "confidence": 0.82,
      "structure_bias": "bearish",
      "setup_bias": "bearish",
      "setup_score": 0.92,
      "setup_signals": [
        "전일 저가 $58,160.00 하향 돌파 후 현재가 $58,592.80로 약한 회복에 그침",
        "현재가 $58,592.80가 EQ $60,913.30 아래의 discount 구간에 위치하나, 구조적 회복 확인 전까지는 약세 지속 우위",
        "현재가가 EMA20 $59,414.94 아래에 있어 단기 반등이 평균선 저항에 막히는 형태",
        "최근 확정 구조에서 $62,232.10 하향 bearish BOS 발생",
        "7일 저가 및 range low $57,758.60이 바로 아래 유동성 타깃으로 남아 있음"
      ],
      "reasoning": "확정 구조는 bearish로 판단한다. BOS 시퀀스가 BOS_bearish, BOS_bearish, BOS_bearish, BOS_bullish 이후 다시 $62,232.10 하향 bearish BOS로 마감되어 하락 구조가 재확인되었고, 현재가 $58,592.80는 EMA20 $59,414.94, EMA120 $62,427.61, EMA240 $65,770.59 모두 아래에 있다. 현재 가격은 EQ $60,913.30 아래 discount 구간이므로 신규 숏 추격에는 주의가 필요하지만, 전일 저가 $58,160.00이 이미 깨졌고 range low $57,758.60이 가까워 추가 sell-side liquidity 탐색 가능성이 높다. 활성 bullish OB와 미충족 bullish FVG가 없고, 반대로 구조 점수는 bear_score 10.8 대 bull_score 4.5로 약세 우위가 뚜렷하다.",
      "key_levels": {
        "support": [
          58160.0,
          57758.6
        ],
        "resistance": [
          59414.94,
          60666.6,
          60913.3,
          62232.1,
          64068.0,
          76234.7,
          78077.1
        ]
      },
      "time_horizon": "short/medium term",
      "invalidation_level": "$62,232.10 상방 회복 및 4시간봉 종가 안착",
      "risk_scenario": "반대 시나리오는 $58,160.00 하단 돌파가 단순 sell-side liquidity sweep으로 끝나고, 가격이 EMA20 $59,414.94와 전일 고가 $60,666.60을 회복한 뒤 EQ $60,913.30 위에서 수용되는 경우다. 이 경우 단기 숏은 실패 가능성이 커지며, $62,232.10 BOS 레벨과 range high $64,068.00까지 되돌림이 열릴 수 있다.",
      "data_quality": "medium",
      "metrics": {
        "order_blocks_total": 2,
        "confirmed_bullish_ob": 0,
        "confirmed_bearish_ob": 0,
        "candidate_bullish_ob": 0,
        "candidate_bearish_ob": 2,
        "active_bullish_ob": 0,
        "active_bearish_ob": 0,
        "nearest_bull_ob_range": null,
        "nearest_bear_ob_range": {
          "bottom": 76234.7,
          "top": 78077.1,
          "quality": "candidate",
          "score": 0.56
        },
        "active_bullish_ob_list": [],
        "active_bearish_ob_list": [],
        "ob_mitigated_count": 0,
        "unfilled_bull_fvg_count": 0,
        "unfilled_bear_fvg_count": 0,
        "bull_fvg_ranges": [],
        "bear_fvg_ranges": [],
        "fvg_open_count": 0,
        "fvg_mitigated_count": 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": 60913.3,
        "range_high": 64068.0,
        "range_low": 57758.6,
        "bull_score": 4.5,
        "bear_score": 10.8,
        "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",
          "broken previous day low $58,160.00"
        ],
        "retracement_direction": "bullish",
        "current_retracement_pct": 83.8,
        "deepest_retracement_pct": 109.4,
        "previous_day_high": 60666.6,
        "previous_day_low": 58160.0,
        "broken_prev_high": false,
        "broken_prev_low": true,
        "sessions": {}
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.82,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.92,\n  \"setup_signals\": [\n    \"전일 저가 $58,160.00 하향 돌파 후 현재가 $58,592.80로 약한 회복에 그침\",\n    \"현재가 $58,592.80가 EQ $60,913.30 아래의 discount 구간에 위치하나, 구조적 회복 확인 전까지는 약세 지속 우위\",\n    \"현재가가 EMA20 $59,414.94 아래에 있어 단기 반등이 평균선 저항에 막히는 형태\",\n    \"최근 확정 구조에서 $62,232.10 하향 bearish BOS 발생\",\n    \"7일 저가 및 range low $57,758.60이 바로 아래 유동성 타깃으로 남아 있음\"\n  ],\n  \"reasoning\": \"확정 구조는 bearish로 판단한다. BOS 시퀀스가 BOS_bearish, BOS_bearish, BOS_bearish, BOS_bullish 이후 다시 $62,232.10 하향 bearish BOS로 마감되어 하락 구조가 재확인되었고, 현재가 $58,592.80는 EMA20 $59,414.94, EMA120 $62,427.61, EMA240 $65,770.59 모두 아래에 있다. 현재 가격은 EQ $60,913.30 아래 discount 구간이므로 신규 숏 추격에는 주의가 필요하지만, 전일 저가 $58,160.00이 이미 깨졌고 range low $57,758.60이 가까워 추가 sell-side liquidity 탐색 가능성이 높다. 활성 bullish OB와 미충족 bullish FVG가 없고, 반대로 구조 점수는 bear_score 10.8 대 bull_score 4.5로 약세 우위가 뚜렷하다.\",\n  \"key_levels\": {\n    \"support\": [\n      58160.0,\n      57758.6\n    ],\n    \"resistance\": [\n      59414.94,\n      60666.6,\n      60913.3,\n      62232.1,\n      64068.0,\n      76234.7,\n      78077.1\n    ]\n  },\n  \"time_horizon\": \"short/medium term\",\n  \"invalidation_level\": \"$62,232.10 상방 회복 및 4시간봉 종가 안착\",\n  \"risk_scenario\": \"반대 시나리오는 $58,160.00 하단 돌파가 단순 sell-side liquidity sweep으로 끝나고, 가격이 EMA20 $59,414.94와 전일 고가 $60,666.60을 회복한 뒤 EQ $60,913.30 위에서 수용되는 경우다. 이 경우 단기 숏은 실패 가능성이 커지며, $62,232.10 BOS 레벨과 range high $64,068.00까지 되돌림이 열릴 수 있다.\",\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": [
        "가격 $58,592.80이 EMA20 $59,414.94 아래에 머물며 단기 반등이 구조적으로 수용되지 않음",
        "24시간 가격 -0.96% 하락 중 OI가 +2.789% 증가하여 하락 방향 신규 포지션 유입 신호",
        "CVD 변화 -7,897.14로 매도 체결 우위가 지속되며 가격 반등 참여가 약함",
        "롱 계정 비율 70.8%, account_long_crowding 1.000으로 롱 포지셔닝이 과밀한 contrarian 약세 조건",
        "현물-선물 basis -0.0499%, basis 변화 -0.0123으로 선물 프리미엄이 약하고 매수 레버리지 수요가 둔화",
        "하방 청산 클러스터 $57,600 및 가장 강한 청산 레벨 $57,200이 근접해 있어 유동성 흡수 가능성 존재"
      ],
      "reasoning": "현재 BTC는 $58,592.80으로 EMA20 $59,414.94, EMA120 $62,427.61, EMA240 $65,770.59를 모두 하회하고 있어 확인된 구조는 약세로 판단한다. 파생 포지셔닝은 24시간 가격이 -0.96% 하락하는 동안 OI가 +2.789% 증가했고, CVD도 -7,897.14로 악화되어 하락 방향 신규 포지션과 매도 주도 흐름이 우세하다. 롱 계정 비율이 70.8%로 높고 account_long_crowding이 1.000인 점은 롱 청산 리스크를 키우며, 특히 $57,600과 $57,200 하방 유동성으로 가격이 끌릴 가능성이 있다. 단기적으로는 $58,600-$58,900 상단 청산 구간을 잠시 찌른 뒤 실패할 경우 $57,600, $57,200 테스트가 우선 시나리오다.",
      "key_levels": {
        "support": [
          57600,
          57200,
          53600
        ],
        "resistance": [
          58600,
          58900,
          59414.94,
          60700,
          62427.61
        ]
      },
      "time_horizon": "short term, 약 4-8시간",
      "invalidation_level": "$60,700 상방에서 4시간봉 종가 수용",
      "risk_scenario": "$58,900을 강하게 돌파하고 EMA20 $59,414.94 위로 회복하면 하방 청산 유도 실패로 숏 커버링이 발생할 수 있으며, 이 경우 $60,700 상단 청산 구간까지 빠른 반등이 나올 수 있다.",
      "data_quality": "medium",
      "metrics": {
        "cvd_divergence": 0.3,
        "cvd_change": -7897.14,
        "oi_trend": 0.779,
        "oi_change_pct_24h": 2.789,
        "oi_latest": 105592.788,
        "funding_pressure": 0.452,
        "funding_avg": 4.765e-05,
        "funding_change_24h": -6.496e-05,
        "long_account_ratio": 0.726,
        "short_account_ratio": 0.274,
        "long_account_latest": 0.708,
        "short_account_latest": 0.292,
        "long_account_change_24h": -0.0071,
        "short_account_change_24h": 0.0071,
        "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.488,
        "spot_futures_basis_pct": -0.0499,
        "basis_change_lookback": -0.0123,
        "aggregate_score": 0.404,
        "bull_signals": 1,
        "bear_signals": 2,
        "liq_below": [
          [
            57600,
            24755.69788575
          ],
          [
            57200,
            37414.19938725
          ],
          [
            53600,
            30732.32241375
          ]
        ],
        "liq_above": [
          [
            58600,
            26400.3432479
          ],
          [
            58900,
            27435.545139449998
          ],
          [
            60700,
            36603.8623595
          ]
        ],
        "strongest_liq_level": 57200,
        "fragility_score": 0.759,
        "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    \"가격 $58,592.80이 EMA20 $59,414.94 아래에 머물며 단기 반등이 구조적으로 수용되지 않음\",\n    \"24시간 가격 -0.96% 하락 중 OI가 +2.789% 증가하여 하락 방향 신규 포지션 유입 신호\",\n    \"CVD 변화 -7,897.14로 매도 체결 우위가 지속되며 가격 반등 참여가 약함\",\n    \"롱 계정 비율 70.8%, account_long_crowding 1.000으로 롱 포지셔닝이 과밀한 contrarian 약세 조건\",\n    \"현물-선물 basis -0.0499%, basis 변화 -0.0123으로 선물 프리미엄이 약하고 매수 레버리지 수요가 둔화\",\n    \"하방 청산 클러스터 $57,600 및 가장 강한 청산 레벨 $57,200이 근접해 있어 유동성 흡수 가능성 존재\"\n  ],\n  \"reasoning\": \"현재 BTC는 $58,592.80으로 EMA20 $59,414.94, EMA120 $62,427.61, EMA240 $65,770.59를 모두 하회하고 있어 확인된 구조는 약세로 판단한다. 파생 포지셔닝은 24시간 가격이 -0.96% 하락하는 동안 OI가 +2.789% 증가했고, CVD도 -7,897.14로 악화되어 하락 방향 신규 포지션과 매도 주도 흐름이 우세하다. 롱 계정 비율이 70.8%로 높고 account_long_crowding이 1.000인 점은 롱 청산 리스크를 키우며, 특히 $57,600과 $57,200 하방 유동성으로 가격이 끌릴 가능성이 있다. 단기적으로는 $58,600-$58,900 상단 청산 구간을 잠시 찌른 뒤 실패할 경우 $57,600, $57,200 테스트가 우선 시나리오다.\",\n  \"key_levels\": {\n    \"support\": [\n      57600,\n      57200,\n      53600\n    ],\n    \"resistance\": [\n      58600,\n      58900,\n      59414.94,\n      60700,\n      62427.61\n    ]\n  },\n  \"time_horizon\": \"short term, 약 4-8시간\",\n  \"invalidation_level\": \"$60,700 상방에서 4시간봉 종가 수용\",\n  \"risk_scenario\": \"$58,900을 강하게 돌파하고 EMA20 $59,414.94 위로 회복하면 하방 청산 유도 실패로 숏 커버링이 발생할 수 있으며, 이 경우 $60,700 상단 청산 구간까지 빠른 반등이 나올 수 있다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "harmonic": {
      "agent_id": "harmonic",
      "display_name": "Harmonic Specialist",
      "signal": "neutral",
      "confidence": 0.44,
      "structure_bias": "bearish",
      "setup_bias": "bullish",
      "setup_score": 0.56,
      "setup_signals": [
        "현재가 $58,592.80가 활성 PRZ 클러스터 내부/근접: bullish Butterfly PRZ $58,406.59-$59,590.72",
        "완성 bullish Butterfly: D $59,060.00, XAD 1.2608로 1.272 Butterfly 기준에 근접, B 되돌림 XAB 0.7728로 0.786 기준에 근접",
        "완성 bullish Crab: D $58,850.00, PRZ $58,803.52-$60,375.78, XAD 1.6411로 1.618 Crab 기준에 근접",
        "가장 가까운 PRZ는 $58,655.41로 현재가와 약 0.11% 거리이며, 범위는 $57,879.07-$59,431.75",
        "확인된 PRZ 반응이 일부 존재: Butterfly/Crab 모두 PRZ touch, rejection/defense, AD 0.236 반응 도달, PRZ center reclaim/reject 조건 충족",
        "단, council_relevant_prz_count=0, actionable_patterns_list=[]로 엄격 기준의 독립 실행 신호는 부재"
      ],
      "reasoning": "4시간 구조 관점에서는 현재가 $58,592.80가 EMA20 $59,414.94, EMA120 $62,427.61, EMA240 $65,770.59 아래에 있어 확인된 추세 구조는 아직 bearish로 읽힌다. 다만 하모닉 셋업 관점에서는 $58,406.59-$59,590.72 Butterfly PRZ와 $58,803.52-$60,375.78 Crab PRZ가 현재 가격대와 겹치며, 일부 완성 패턴은 PRZ 진입 후 방어 및 AD 0.236 반응까지 확인되어 단기 반등 후보 구간이다. 최고 점수 패턴은 bullish Butterfly(score 0.897)이지만 quality가 low이고 PRZ 폭이 2.007%로 넓어, 하모닉 단독으로 메인 경로를 bullish로 전환할 수 없다. 따라서 현재 결론은 bearish 구조 안의 bullish 반응/되돌림 셋업이며, $59,590.72-$60,375.78 상단을 회복하기 전까지는 중립 신호로 제한한다.",
      "key_levels": {
        "support": [
          58406.59,
          57879.07,
          57758.6,
          57166.08,
          56775.86
        ],
        "resistance": [
          59414.94,
          59590.72,
          60375.78,
          62152.73,
          62427.61,
          64101.32
        ]
      },
      "time_horizon": "short/medium term",
      "invalidation_level": "$57,166.08 4시간 종가 하회",
      "risk_scenario": "반대로 $59,590.72-$60,375.78 PRZ 상단과 EMA20 $59,414.94를 회복하면, 하모닉 반응은 $62,152.73-$62,427.61 구간까지의 반등 TP 경로를 지지할 수 있다. 그러나 $57,166.08 아래로 4시간 종가가 밀리면 현재 bullish PRZ 방어 논리는 약화되고, 다음 하방 PRZ인 $56,775.86-$57,041.69 및 $55,739.29-$56,933.24까지 재탐색할 위험이 커진다.",
      "data_quality": "medium",
      "metrics": {
        "patterns_found": 145,
        "completed_patterns_found": 50,
        "forming_d_prz_found": 95,
        "swing_orders_scanned": [
          3,
          5,
          8
        ],
        "swing_search_window": 30,
        "multiscale_swings_scanned": 56,
        "swing_highs_scanned": 29,
        "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": 2,
          "medium": 42,
          "low": 101
        },
        "prz_status_counts": {
          "active": 32,
          "nearby": 4,
          "watch": 16,
          "far": 93,
          "forming": 62
        },
        "high_confluence_prz_count": 20,
        "strict_patterns_found": 59,
        "candidate_patterns_found": 86,
        "active_patterns_at_prz": 32,
        "nearby_patterns": 4,
        "all_patterns": [
          "butterfly",
          "butterfly",
          "gartley",
          "bat",
          "crab",
          "crab",
          "bat",
          "crab",
          "shark",
          "butterfly",
          "butterfly",
          "butterfly",
          "crab",
          "bat",
          "butterfly",
          "gartley",
          "butterfly",
          "bat",
          "crab",
          "gartley",
          "butterfly",
          "shark",
          "gartley",
          "crab",
          "shark",
          "butterfly",
          "shark",
          "butterfly",
          "crab",
          "bat",
          "bat",
          "bat",
          "shark",
          "butterfly",
          "bat",
          "crab",
          "butterfly",
          "bat",
          "crab",
          "gartley",
          "shark",
          "bat",
          "shark",
          "bat",
          "crab",
          "butterfly",
          "gartley",
          "shark",
          "crab",
          "gartley",
          "crab",
          "crab",
          "gartley",
          "shark",
          "shark",
          "crab",
          "crab",
          "crab",
          "gartley",
          "bat",
          "crab",
          "shark",
          "gartley",
          "butterfly",
          "crab",
          "crab",
          "gartley",
          "bat",
          "shark",
          "butterfly",
          "crab",
          "shark",
          "gartley",
          "crab",
          "gartley",
          "shark",
          "gartley",
          "bat",
          "crab",
          "crab",
          "crab",
          "butterfly",
          "butterfly",
          "gartley",
          "gartley",
          "bat",
          "bat",
          "gartley",
          "shark",
          "crab",
          "butterfly",
          "shark",
          "butterfly",
          "shark",
          "bat",
          "shark",
          "crab",
          "shark",
          "crab",
          "crab",
          "shark",
          "bat",
          "shark",
          "butterfly",
          "crab",
          "bat",
          "crab",
          "shark",
          "crab",
          "shark",
          "crab",
          "shark",
          "crab",
          "shark",
          "bat",
          "crab",
          "butterfly",
          "shark",
          "butterfly",
          "butterfly",
          "butterfly",
          "butterfly",
          "crab",
          "bat",
          "crab",
          "gartley",
          "gartley",
          "crab",
          "bat",
          "shark",
          "crab",
          "crab",
          "crab",
          "butterfly",
          "crab",
          "bat",
          "butterfly",
          "crab",
          "shark",
          "shark",
          "crab",
          "butterfly",
          "shark",
          "shark",
          "gartley"
        ],
        "all_signals": [
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish"
        ],
        "best_pattern": "butterfly",
        "best_pattern_quality": "strict",
        "best_quality": "low",
        "best_pattern_score": 0.897,
        "best_completion_status": "completed",
        "nearest_pattern": "shark",
        "nearest_prz": 58655.41,
        "price_to_prz": 0.11,
        "prz_range": [
          57879.07,
          59431.75
        ],
        "council_relevant_prz_count": 0,
        "directional_influence_prz_count": 0,
        "confirmed_reaction_prz_count": 0,
        "validated_harmonic_tp_count": 0,
        "pattern_candidates": [
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.897,
            "ratio_score": 0.959,
            "prz_score": 0.873,
            "prz_proximity": "active",
            "action_status": "active",
            "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": 0.69,
            "price_to_prz_pct_raw": 0.6927,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.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": 169,
            "x_order": 3,
            "a_price": 67255.4,
            "a_idx": 204,
            "a_order": 8,
            "b_price": 62232.1,
            "b_idx": 222,
            "b_order": 8,
            "c_price": 64568.0,
            "c_idx": 238,
            "c_order": 3,
            "d_idx": 259
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.897,
            "ratio_score": 0.938,
            "prz_score": 0.873,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 58998.66,
            "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": 0.69,
            "price_to_prz_pct_raw": 0.6927,
            "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": 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
            },
            "x_price": 60755.0,
            "x_idx": 169,
            "x_order": 3,
            "a_price": 67255.4,
            "a_idx": 204,
            "a_order": 8,
            "b_price": 62232.1,
            "b_idx": 222,
            "b_order": 8,
            "c_price": 64568.0,
            "c_idx": 238,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "crab",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.872,
            "ratio_score": 1.0,
            "prz_score": 0.785,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 59631.12,
            "prz_range": [
              58886.43,
              60375.81
            ],
            "prz_width_pct": 2.498,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.77,
            "price_to_prz_pct_raw": 1.7721,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "crab",
              "d_price": 59631.12,
              "a_price": 64738.0,
              "tp1_ad_382": 61581.95,
              "tp2_ad_618": 62787.17,
              "tp3_a_or_structure_liquidity": 64738.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4465,
              "ABC": 0.7523
            },
            "x_price": 61150.2,
            "x_idx": 157,
            "x_order": 3,
            "a_price": 64738.0,
            "a_idx": 194,
            "a_order": 5,
            "b_price": 63136.2,
            "b_idx": 234,
            "b_order": 3,
            "c_price": 61931.1,
            "c_idx": 262,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "crab",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.859,
            "ratio_score": 0.972,
            "prz_score": 0.76,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 58850.0,
            "prz_range": [
              58803.52,
              60375.78
            ],
            "prz_width_pct": 2.638,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.7,
            "price_to_prz_pct_raw": 1.7013,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.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.324,
                "adverse_move_ratio_ad": 0.185,
                "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": "crab",
              "d_price": 59589.65,
              "a_price": 64738.0,
              "tp1_ad_382": 61556.32,
              "tp2_ad_618": 62771.33,
              "tp3_a_or_structure_liquidity": 64738.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4465,
              "ABC": 0.7523,
              "BCD": 2.5567,
              "XAD": 1.6411
            },
            "x_price": 61150.2,
            "x_idx": 157,
            "x_order": 3,
            "a_price": 64738.0,
            "a_idx": 194,
            "a_order": 5,
            "b_price": 63136.2,
            "b_idx": 234,
            "b_order": 3,
            "c_price": 61931.1,
            "c_idx": 262,
            "c_order": 3,
            "d_idx": 285
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.854,
            "ratio_score": 1.0,
            "prz_score": 0.858,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": false,
            "d_price": 60567.2,
            "prz_range": [
              59934.01,
              61200.4
            ],
            "prz_width_pct": 2.091,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 3.37,
            "price_to_prz_pct_raw": 3.3697,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 60567.2,
              "a_price": 64738.0,
              "tp1_ad_382": 62160.45,
              "tp2_ad_618": 63144.76,
              "tp3_a_or_structure_liquidity": 64738.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.3959,
              "ABC": 0.7523
            },
            "x_price": 60691.9,
            "x_idx": 173,
            "x_order": 8,
            "a_price": 64738.0,
            "a_idx": 194,
            "a_order": 5,
            "b_price": 63136.2,
            "b_idx": 234,
            "b_order": 3,
            "c_price": 61931.1,
            "c_idx": 262,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "crab",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.852,
            "ratio_score": 1.0,
            "prz_score": 0.853,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": false,
            "d_price": 56336.26,
            "prz_range": [
              55739.29,
              56933.24
            ],
            "prz_width_pct": 2.119,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -3.85,
            "price_to_prz_pct_raw": -3.8512,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "crab",
              "d_price": 56336.26,
              "a_price": 67255.4,
              "tp1_ad_382": 60507.37,
              "tp2_ad_618": 63084.29,
              "tp3_a_or_structure_liquidity": 67255.4,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6148,
              "ABC": 0.5688
            },
            "x_price": 60691.9,
            "x_idx": 173,
            "x_order": 8,
            "a_price": 67255.4,
            "a_idx": 204,
            "a_order": 8,
            "b_price": 63220.0,
            "b_idx": 242,
            "b_order": 5,
            "c_price": 60924.7,
            "c_idx": 276,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.838,
            "ratio_score": 0.974,
            "prz_score": 0.733,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 58030.0,
            "prz_range": [
              58953.26,
              60620.53
            ],
            "prz_width_pct": 2.789,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 2.04,
            "price_to_prz_pct_raw": 2.038,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.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.314,
                "adverse_move_ratio_ad": 0.0,
                "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": 59786.9,
              "a_price": 67255.4,
              "tp1_ad_382": 62639.86,
              "tp2_ad_618": 64402.43,
              "tp3_a_or_structure_liquidity": 67255.4,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7728,
              "ABC": 0.6699,
              "BCD": 2.2487,
              "XAD": 1.4192
            },
            "x_price": 60755.0,
            "x_idx": 169,
            "x_order": 3,
            "a_price": 67255.4,
            "a_idx": 204,
            "a_order": 8,
            "b_price": 62232.1,
            "b_idx": 222,
            "b_order": 8,
            "c_price": 65597.2,
            "c_idx": 246,
            "c_order": 8,
            "d_idx": 264
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.837,
            "ratio_score": 0.97,
            "prz_score": 0.783,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": false,
            "d_price": 57468.2,
            "prz_range": [
              57166.08,
              57770.33
            ],
            "prz_width_pct": 1.051,
            "prz_confluence_count": 2,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT"
            ],
            "price_to_prz_pct": -1.92,
            "price_to_prz_pct_raw": -1.9193,
            "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": 57468.2,
              "a_price": 66419.2,
              "tp1_ad_382": 60887.48,
              "tp2_ad_618": 62999.92,
              "tp3_a_or_structure_liquidity": 66419.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7795,
              "ABC": 0.7175
            },
            "x_price": 62315.0,
            "x_idx": 181,
            "x_order": 3,
            "a_price": 66419.2,
            "a_idx": 217,
            "a_order": 5,
            "b_price": 63220.0,
            "b_idx": 242,
            "b_order": 5,
            "c_price": 60924.7,
            "c_idx": 276,
            "c_order": 8,
            "d_idx": null
          }
        ],
        "council_relevant_prz": [],
        "report_detail_candidates": [
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.897,
            "ratio_score": 0.959,
            "prz_score": 0.873,
            "prz_proximity": "active",
            "action_status": "active",
            "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": 0.69,
            "price_to_prz_pct_raw": 0.6927,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.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": 169,
            "x_order": 3,
            "a_price": 67255.4,
            "a_idx": 204,
            "a_order": 8,
            "b_price": 62232.1,
            "b_idx": 222,
            "b_order": 8,
            "c_price": 64568.0,
            "c_idx": 238,
            "c_order": 3,
            "d_idx": 259
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.897,
            "ratio_score": 0.938,
            "prz_score": 0.873,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 58998.66,
            "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": 0.69,
            "price_to_prz_pct_raw": 0.6927,
            "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": 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
            },
            "x_price": 60755.0,
            "x_idx": 169,
            "x_order": 3,
            "a_price": 67255.4,
            "a_idx": 204,
            "a_order": 8,
            "b_price": 62232.1,
            "b_idx": 222,
            "b_order": 8,
            "c_price": 64568.0,
            "c_idx": 238,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "crab",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.872,
            "ratio_score": 1.0,
            "prz_score": 0.785,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 59631.12,
            "prz_range": [
              58886.43,
              60375.81
            ],
            "prz_width_pct": 2.498,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.77,
            "price_to_prz_pct_raw": 1.7721,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "crab",
              "d_price": 59631.12,
              "a_price": 64738.0,
              "tp1_ad_382": 61581.95,
              "tp2_ad_618": 62787.17,
              "tp3_a_or_structure_liquidity": 64738.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4465,
              "ABC": 0.7523
            },
            "x_price": 61150.2,
            "x_idx": 157,
            "x_order": 3,
            "a_price": 64738.0,
            "a_idx": 194,
            "a_order": 5,
            "b_price": 63136.2,
            "b_idx": 234,
            "b_order": 3,
            "c_price": 61931.1,
            "c_idx": 262,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "crab",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.859,
            "ratio_score": 0.972,
            "prz_score": 0.76,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 58850.0,
            "prz_range": [
              58803.52,
              60375.78
            ],
            "prz_width_pct": 2.638,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.7,
            "price_to_prz_pct_raw": 1.7013,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.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.324,
                "adverse_move_ratio_ad": 0.185,
                "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": "crab",
              "d_price": 59589.65,
              "a_price": 64738.0,
              "tp1_ad_382": 61556.32,
              "tp2_ad_618": 62771.33,
              "tp3_a_or_structure_liquidity": 64738.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4465,
              "ABC": 0.7523,
              "BCD": 2.5567,
              "XAD": 1.6411
            },
            "x_price": 61150.2,
            "x_idx": 157,
            "x_order": 3,
            "a_price": 64738.0,
            "a_idx": 194,
            "a_order": 5,
            "b_price": 63136.2,
            "b_idx": 234,
            "b_order": 3,
            "c_price": 61931.1,
            "c_idx": 262,
            "c_order": 3,
            "d_idx": 285
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.854,
            "ratio_score": 1.0,
            "prz_score": 0.858,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": false,
            "d_price": 60567.2,
            "prz_range": [
              59934.01,
              61200.4
            ],
            "prz_width_pct": 2.091,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 3.37,
            "price_to_prz_pct_raw": 3.3697,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 60567.2,
              "a_price": 64738.0,
              "tp1_ad_382": 62160.45,
              "tp2_ad_618": 63144.76,
              "tp3_a_or_structure_liquidity": 64738.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.3959,
              "ABC": 0.7523
            },
            "x_price": 60691.9,
            "x_idx": 173,
            "x_order": 8,
            "a_price": 64738.0,
            "a_idx": 194,
            "a_order": 5,
            "b_price": 63136.2,
            "b_idx": 234,
            "b_order": 3,
            "c_price": 61931.1,
            "c_idx": 262,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "crab",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.852,
            "ratio_score": 1.0,
            "prz_score": 0.853,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": false,
            "d_price": 56336.26,
            "prz_range": [
              55739.29,
              56933.24
            ],
            "prz_width_pct": 2.119,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -3.85,
            "price_to_prz_pct_raw": -3.8512,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "crab",
              "d_price": 56336.26,
              "a_price": 67255.4,
              "tp1_ad_382": 60507.37,
              "tp2_ad_618": 63084.29,
              "tp3_a_or_structure_liquidity": 67255.4,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6148,
              "ABC": 0.5688
            },
            "x_price": 60691.9,
            "x_idx": 173,
            "x_order": 8,
            "a_price": 67255.4,
            "a_idx": 204,
            "a_order": 8,
            "b_price": 63220.0,
            "b_idx": 242,
            "b_order": 5,
            "c_price": 60924.7,
            "c_idx": 276,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.838,
            "ratio_score": 0.974,
            "prz_score": 0.733,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 58030.0,
            "prz_range": [
              58953.26,
              60620.53
            ],
            "prz_width_pct": 2.789,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 2.04,
            "price_to_prz_pct_raw": 2.038,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.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.314,
                "adverse_move_ratio_ad": 0.0,
                "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": 59786.9,
              "a_price": 67255.4,
              "tp1_ad_382": 62639.86,
              "tp2_ad_618": 64402.43,
              "tp3_a_or_structure_liquidity": 67255.4,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7728,
              "ABC": 0.6699,
              "BCD": 2.2487,
              "XAD": 1.4192
            },
            "x_price": 60755.0,
            "x_idx": 169,
            "x_order": 3,
            "a_price": 67255.4,
            "a_idx": 204,
            "a_order": 8,
            "b_price": 62232.1,
            "b_idx": 222,
            "b_order": 8,
            "c_price": 65597.2,
            "c_idx": 246,
            "c_order": 8,
            "d_idx": 264
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.837,
            "ratio_score": 0.97,
            "prz_score": 0.783,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": false,
            "d_price": 57468.2,
            "prz_range": [
              57166.08,
              57770.33
            ],
            "prz_width_pct": 1.051,
            "prz_confluence_count": 2,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT"
            ],
            "price_to_prz_pct": -1.92,
            "price_to_prz_pct_raw": -1.9193,
            "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": 57468.2,
              "a_price": 66419.2,
              "tp1_ad_382": 60887.48,
              "tp2_ad_618": 62999.92,
              "tp3_a_or_structure_liquidity": 66419.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7795,
              "ABC": 0.7175
            },
            "x_price": 62315.0,
            "x_idx": 181,
            "x_order": 3,
            "a_price": 66419.2,
            "a_idx": 217,
            "a_order": 5,
            "b_price": 63220.0,
            "b_idx": 242,
            "b_order": 5,
            "c_price": 60924.7,
            "c_idx": 276,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "crab",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.834,
            "ratio_score": 0.973,
            "prz_score": 0.783,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 59160.34,
            "prz_range": [
              58886.79,
              59433.89
            ],
            "prz_width_pct": 0.925,
            "prz_confluence_count": 2,
            "prz_fib_families": [
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.97,
            "price_to_prz_pct_raw": 0.9686,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "crab",
              "d_price": 59160.34,
              "a_price": 64738.0,
              "tp1_ad_382": 61291.01,
              "tp2_ad_618": 62607.34,
              "tp3_a_or_structure_liquidity": 64738.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4465,
              "ABC": 0.8939
            },
            "x_price": 61150.2,
            "x_idx": 157,
            "x_order": 3,
            "a_price": 64738.0,
            "a_idx": 194,
            "a_order": 5,
            "b_price": 63136.2,
            "b_idx": 234,
            "b_order": 3,
            "c_price": 64568.0,
            "c_idx": 238,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.823,
            "ratio_score": 0.938,
            "prz_score": 0.733,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 59786.9,
            "prz_range": [
              58953.26,
              60620.53
            ],
            "prz_width_pct": 2.789,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 2.04,
            "price_to_prz_pct_raw": 2.038,
            "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": 59786.9,
              "a_price": 67255.4,
              "tp1_ad_382": 62639.86,
              "tp2_ad_618": 64402.43,
              "tp3_a_or_structure_liquidity": 67255.4,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7728,
              "ABC": 0.6699
            },
            "x_price": 60755.0,
            "x_idx": 169,
            "x_order": 3,
            "a_price": 67255.4,
            "a_idx": 204,
            "a_order": 8,
            "b_price": 62232.1,
            "b_idx": 222,
            "b_order": 8,
            "c_price": 65597.2,
            "c_idx": 246,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.817,
            "ratio_score": 0.818,
            "prz_score": 0.802,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 59314.67,
            "prz_range": [
              58601.83,
              60027.51
            ],
            "prz_width_pct": 2.404,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.23,
            "price_to_prz_pct_raw": 1.232,
            "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": 59314.67,
              "a_price": 66419.2,
              "tp1_ad_382": 62028.6,
              "tp2_ad_618": 63705.27,
              "tp3_a_or_structure_liquidity": 66419.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7999,
              "ABC": 0.3671
            },
            "x_price": 62315.0,
            "x_idx": 181,
            "x_order": 3,
            "a_price": 66419.2,
            "a_idx": 217,
            "a_order": 5,
            "b_price": 63136.2,
            "b_idx": 234,
            "b_order": 3,
            "c_price": 61931.1,
            "c_idx": 262,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "crab",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.816,
            "ratio_score": 1.0,
            "prz_score": 0.783,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": false,
            "d_price": 56908.78,
            "prz_range": [
              56775.86,
              57041.69
            ],
            "prz_width_pct": 0.467,
            "prz_confluence_count": 2,
            "prz_fib_families": [
              "ABCD",
              "XAD"
            ],
            "price_to_prz_pct": -2.87,
            "price_to_prz_pct_raw": -2.8741,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "crab",
              "d_price": 56908.78,
              "a_price": 66956.7,
              "tp1_ad_382": 60747.08,
              "tp2_ad_618": 63118.39,
              "tp3_a_or_structure_liquidity": 66956.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5965,
              "ABC": 0.6653
            },
            "x_price": 60691.9,
            "x_idx": 173,
            "x_order": 8,
            "a_price": 66956.7,
            "a_idx": 209,
            "a_order": 3,
            "b_price": 63220.0,
            "b_idx": 242,
            "b_order": 5,
            "c_price": 60734.0,
            "c_idx": 268,
            "c_order": 3,
            "d_idx": null
          }
        ],
        "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.44,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.56,\n  \"setup_signals\": [\n    \"현재가 $58,592.80가 활성 PRZ 클러스터 내부/근접: bullish Butterfly PRZ $58,406.59-$59,590.72\",\n    \"완성 bullish Butterfly: D $59,060.00, XAD 1.2608로 1.272 Butterfly 기준에 근접, B 되돌림 XAB 0.7728로 0.786 기준에 근접\",\n    \"완성 bullish Crab: D $58,850.00, PRZ $58,803.52-$60,375.78, XAD 1.6411로 1.618 Crab 기준에 근접\",\n    \"가장 가까운 PRZ는 $58,655.41로 현재가와 약 0.11% 거리이며, 범위는 $57,879.07-$59,431.75\",\n    \"확인된 PRZ 반응이 일부 존재: Butterfly/Crab 모두 PRZ touch, rejection/defense, AD 0.236 반응 도달, PRZ center reclaim/reject 조건 충족\",\n    \"단, council_relevant_prz_count=0, actionable_patterns_list=[]로 엄격 기준의 독립 실행 신호는 부재\"\n  ],\n  \"reasoning\": \"4시간 구조 관점에서는 현재가 $58,592.80가 EMA20 $59,414.94, EMA120 $62,427.61, EMA240 $65,770.59 아래에 있어 확인된 추세 구조는 아직 bearish로 읽힌다. 다만 하모닉 셋업 관점에서는 $58,406.59-$59,590.72 Butterfly PRZ와 $58,803.52-$60,375.78 Crab PRZ가 현재 가격대와 겹치며, 일부 완성 패턴은 PRZ 진입 후 방어 및 AD 0.236 반응까지 확인되어 단기 반등 후보 구간이다. 최고 점수 패턴은 bullish Butterfly(score 0.897)이지만 quality가 low이고 PRZ 폭이 2.007%로 넓어, 하모닉 단독으로 메인 경로를 bullish로 전환할 수 없다. 따라서 현재 결론은 bearish 구조 안의 bullish 반응/되돌림 셋업이며, $59,590.72-$60,375.78 상단을 회복하기 전까지는 중립 신호로 제한한다.\",\n  \"key_levels\": {\n    \"support\": [\n      58406.59,\n      57879.07,\n      57758.6,\n      57166.08,\n      56775.86\n    ],\n    \"resistance\": [\n      59414.94,\n      59590.72,\n      60375.78,\n      62152.73,\n      62427.61,\n      64101.32\n    ]\n  },\n  \"time_horizon\": \"short/medium term\",\n  \"invalidation_level\": \"$57,166.08 4시간 종가 하회\",\n  \"risk_scenario\": \"반대로 $59,590.72-$60,375.78 PRZ 상단과 EMA20 $59,414.94를 회복하면, 하모닉 반응은 $62,152.73-$62,427.61 구간까지의 반등 TP 경로를 지지할 수 있다. 그러나 $57,166.08 아래로 4시간 종가가 밀리면 현재 bullish PRZ 방어 논리는 약화되고, 다음 하방 PRZ인 $56,775.86-$57,041.69 및 $55,739.29-$56,933.24까지 재탐색할 위험이 커진다.\",\n  \"data_quality\": \"medium\"\n}"
    }
  },
  "chairman_synthesis": {
    "overall_signal": "bearish",
    "overall_confidence": 0.68,
    "execution_setup": {
      "setup_bias": "bullish",
      "setup_strength": 0.62,
      "active_setups": [
        "Wyckoff Phase C Spring 후보: $58,160 하단 유동성 테스트 후 현재가 $58,592.80이 저점 위에서 유지 중이나, $59,080 레인지 저점 재진입은 미확인",
        "캔들스틱 strict bullish_engulfing: 7일 저점 $57,758.60 부근에서 고거래량 동반, 품질 점수 0.760",
        "하모닉 bullish Butterfly PRZ $58,406.59-$59,590.72 및 bullish Crab PRZ $58,803.52-$60,375.78 내부/근접 반응 구간",
        "가격이 여러 EQ 아래 할인 구간에 위치: 7일 EQ $60,348.95, Fibonacci EQ $59,804.15, ICT EQ $60,913.30 하회",
        "반대 조건: EMA20 $59,414.94 하회, CVD -7,897.14, 24시간 가격 하락 중 OI +2.789% 증가로 반등 셋업의 구조 확인은 아직 부족"
      ],
      "setup_vs_structure": "실행 셋업은 단기 반등 후보가 우세하지만, 확인된 4시간 구조는 여전히 약세다. 즉, 현재는 약세 구조 안에서 Spring·PRZ·bullish engulfing이 만드는 선행 반응 구간이며, $59,080-$59,414.94 회복 전까지 구조 전환으로 보기는 어렵다."
    },
    "signal_breakdown": {
      "bullish_count": 1,
      "bearish_count": 5,
      "neutral_count": 0
    },
    "key_levels": {
      "support": [
        58406.59,
        58160.0,
        57758.6,
        57600.0,
        57200.0,
        57166.08,
        56775.86
      ],
      "resistance": [
        59080.0,
        59258.38,
        59414.94,
        59578.97,
        59804.15,
        60348.95,
        60913.3,
        62232.1,
        62427.61,
        64250.0
      ]
    },
    "confluences": [
      "EMA20 $59,414.94는 Wyckoff, Candlestick, ICT, Derivatives, Harmonic 모두가 단기 구조 회복 전 저항으로 지목한다.",
      "$58,160은 Wyckoff의 Spring 저점이자 ICT의 전일 저가로, 현재 구조상 핵심 하단 유동성 기준이다.",
      "$57,758.60은 Candlestick의 7일 저점, Fibonacci의 주요 하단 기준, ICT의 range low, Harmonic의 하단 PRZ 인접 지지로 중복된다.",
      "$58,850 부근은 Fibonacci 상방 스윙 저점이자 Harmonic completed bullish Crab의 D 가격으로, 이탈 이후 회복 여부가 반응 셋업의 질을 좌우한다.",
      "$59,080-$59,414.94 구간은 Wyckoff 레인지 저점 재진입 가격과 EMA20 저항이 겹치는 첫 구조 회복 관문이다.",
      "$59,258.38-$59,804.15는 Fibonacci 0.786, 0.618, 0.5 되돌림 저항과 Harmonic PRZ 상단, EMA20 주변 저항이 겹치는 단기 공급 클러스터다.",
      "Candlestick, ICT, Derivatives, Harmonic은 모두 가격이 EMA20 $59,414.94, EMA120 $62,427.61, EMA240 $65,770.59 아래에 있다는 점을 약세 구조 근거로 공유한다.",
      "Derivatives의 하방 청산 레벨 $57,600-$57,200은 ICT range low $57,758.60 및 Harmonic 하단 PRZ $57,166.08-$57,770.33과 인접해 하단 유동성 밀집 구간을 형성한다."
    ],
    "conflicts": [
      "Wyckoff는 축적 후보 구조와 Phase C Spring 가능성을 근거로 구조 편향을 bullish로 보지만, ICT·Derivatives·Fibonacci·Candlestick·Harmonic은 확인된 4시간 구조를 bearish로 본다.",
      "Candlestick의 strict bullish_engulfing과 Harmonic의 bullish PRZ 반응은 반등 셋업을 지지하지만, ICT의 bearish BOS $62,232.10 하향 확정 및 Derivatives의 음의 CVD와 OI 증가가 이를 구조 전환으로 인정하지 않는다.",
      "가격이 할인 구간에 있다는 점은 Fibonacci·ICT·Candlestick에서 반등 후보 조건으로 해석될 수 있으나, 동시에 EMA20 $59,414.94 및 레인지 저점 $59,080 아래에 있어 아직 약세 구조 내부의 할인 상태에 불과하다.",
      "Wyckoff Spring은 $58,160 위 방어만으로는 완성 신호가 아니며, $59,080 레인지 내부 재진입과 $59,414.94 회복 전까지는 SOS가 아닌 후보 이벤트로 제한된다."
    ],
    "executive_summary": "현재 BTC/USDT 4시간 구조는 Wyckoff상 축적 후보와 Phase C Spring 가능성이 존재하지만, 가격이 메인 레인지 저점 $59,080 아래에 머물러 Spring 이후 SOS가 확인되지 않은 상태다. 다수 구조 모델은 EMA20 $59,414.94, EMA120 $62,427.61, EMA240 $65,770.59 하회와 ICT bearish BOS $62,232.10 하향 확정을 근거로 확인된 구조를 bearish로 판정한다. 현재 위치는 약세 구조 내부의 할인 구간이자 $58,160 Spring/전일 저가와 $57,758.60 range low 사이의 하단 유동성 테스트 영역이며, 동시에 bullish engulfing과 Harmonic PRZ가 겹치는 반응 후보 구간이다. 구조적 위험은 $59,080-$59,414.94 회복 실패 시 Spring 후보가 단순 하방 유동성 소모로 끝날 수 있다는 점이고, 약세 구조 무효화는 최소 $62,232.10 회수 및 $62,427.61 안착에서 판단한다.",
    "raw_llm_response": "{\n  \"overall_signal\": \"bearish\",\n  \"overall_confidence\": 0.68,\n  \"execution_setup\": {\n    \"setup_bias\": \"bullish\",\n    \"setup_strength\": 0.62,\n    \"active_setups\": [\n      \"Wyckoff Phase C Spring 후보: $58,160 하단 유동성 테스트 후 현재가 $58,592.80이 저점 위에서 유지 중이나, $59,080 레인지 저점 재진입은 미확인\",\n      \"캔들스틱 strict bullish_engulfing: 7일 저점 $57,758.60 부근에서 고거래량 동반, 품질 점수 0.760\",\n      \"하모닉 bullish Butterfly PRZ $58,406.59-$59,590.72 및 bullish Crab PRZ $58,803.52-$60,375.78 내부/근접 반응 구간\",\n      \"가격이 여러 EQ 아래 할인 구간에 위치: 7일 EQ $60,348.95, Fibonacci EQ $59,804.15, ICT EQ $60,913.30 하회\",\n      \"반대 조건: EMA20 $59,414.94 하회, CVD -7,897.14, 24시간 가격 하락 중 OI +2.789% 증가로 반등 셋업의 구조 확인은 아직 부족\"\n    ],\n    \"setup_vs_structure\": \"실행 셋업은 단기 반등 후보가 우세하지만, 확인된 4시간 구조는 여전히 약세다. 즉, 현재는 약세 구조 안에서 Spring·PRZ·bullish engulfing이 만드는 선행 반응 구간이며, $59,080-$59,414.94 회복 전까지 구조 전환으로 보기는 어렵다.\"\n  },\n  \"signal_breakdown\": {\n    \"bullish_count\": 1,\n    \"bearish_count\": 5,\n    \"neutral_count\": 0\n  },\n  \"key_levels\": {\n    \"support\": [\n      58406.59,\n      58160.0,\n      57758.6,\n      57600.0,\n      57200.0,\n      57166.08,\n      56775.86\n    ],\n    \"resistance\": [\n      59080.0,\n      59258.38,\n      59414.94,\n      59578.97,\n      59804.15,\n      60348.95,\n      60913.3,\n      62232.1,\n      62427.61,\n      64250.0\n    ]\n  },\n  \"confluences\": [\n    \"EMA20 $59,414.94는 Wyckoff, Candlestick, ICT, Derivatives, Harmonic 모두가 단기 구조 회복 전 저항으로 지목한다.\",\n    \"$58,160은 Wyckoff의 Spring 저점이자 ICT의 전일 저가로, 현재 구조상 핵심 하단 유동성 기준이다.\",\n    \"$57,758.60은 Candlestick의 7일 저점, Fibonacci의 주요 하단 기준, ICT의 range low, Harmonic의 하단 PRZ 인접 지지로 중복된다.\",\n    \"$58,850 부근은 Fibonacci 상방 스윙 저점이자 Harmonic completed bullish Crab의 D 가격으로, 이탈 이후 회복 여부가 반응 셋업의 질을 좌우한다.\",\n    \"$59,080-$59,414.94 구간은 Wyckoff 레인지 저점 재진입 가격과 EMA20 저항이 겹치는 첫 구조 회복 관문이다.\",\n    \"$59,258.38-$59,804.15는 Fibonacci 0.786, 0.618, 0.5 되돌림 저항과 Harmonic PRZ 상단, EMA20 주변 저항이 겹치는 단기 공급 클러스터다.\",\n    \"Candlestick, ICT, Derivatives, Harmonic은 모두 가격이 EMA20 $59,414.94, EMA120 $62,427.61, EMA240 $65,770.59 아래에 있다는 점을 약세 구조 근거로 공유한다.\",\n    \"Derivatives의 하방 청산 레벨 $57,600-$57,200은 ICT range low $57,758.60 및 Harmonic 하단 PRZ $57,166.08-$57,770.33과 인접해 하단 유동성 밀집 구간을 형성한다.\"\n  ],\n  \"conflicts\": [\n    \"Wyckoff는 축적 후보 구조와 Phase C Spring 가능성을 근거로 구조 편향을 bullish로 보지만, ICT·Derivatives·Fibonacci·Candlestick·Harmonic은 확인된 4시간 구조를 bearish로 본다.\",\n    \"Candlestick의 strict bullish_engulfing과 Harmonic의 bullish PRZ 반응은 반등 셋업을 지지하지만, ICT의 bearish BOS $62,232.10 하향 확정 및 Derivatives의 음의 CVD와 OI 증가가 이를 구조 전환으로 인정하지 않는다.\",\n    \"가격이 할인 구간에 있다는 점은 Fibonacci·ICT·Candlestick에서 반등 후보 조건으로 해석될 수 있으나, 동시에 EMA20 $59,414.94 및 레인지 저점 $59,080 아래에 있어 아직 약세 구조 내부의 할인 상태에 불과하다.\",\n    \"Wyckoff Spring은 $58,160 위 방어만으로는 완성 신호가 아니며, $59,080 레인지 내부 재진입과 $59,414.94 회복 전까지는 SOS가 아닌 후보 이벤트로 제한된다.\"\n  ],\n  \"highest_conviction_analyst\": \"ICT Trader — 신뢰도 82%로 가장 높고, BOS 시퀀스가 $62,232.10 하향 bearish BOS로 재확인되었으며, 현재가가 EMA20 $59,414.94·EMA120 $62,427.61·EMA240 $65,770.59를 모두 하회한다. 또한 전일 저가 $58,160 하향 돌파와 range low $57,758.60 근접이라는 구체적 구조 기준을 제시해 약세 구조 판단의 데이터 밀도가 가장 높다.\",\n  \"invalidation_level\": \"$62,427.61 4시간 종가 회복; 보수적으로는 $62,232.10 bearish BOS 레벨 회수 후 EMA120 $62,427.61 안착이 확인될 때 현재 약세 구조 판단이 훼손된다.\",\n  \"executive_summary\": \"현재 BTC/USDT 4시간 구조는 Wyckoff상 축적 후보와 Phase C Spring 가능성이 존재하지만, 가격이 메인 레인지 저점 $59,080 아래에 머물러 Spring 이후 SOS가 확인되지 않은 상태다. 다수 구조 모델은 EMA20 $59,414.94, EMA120 $62,427.61, EMA240 $65,770.59 하회와 ICT bearish BOS $62,232.10 하향 확정을 근거로 확인된 구조를 bearish로 판정한다. 현재 위치는 약세 구조 내부의 할인 구간이자 $58,160 Spring/전일 저가와 $57,758.60 range low 사이의 하단 유동성 테스트 영역이며, 동시에 bullish engulfing과 Harmonic PRZ가 겹치는 반응 후보 구간이다. 구조적 위험은 $59,080-$59,414.94 회복 실패 시 Spring 후보가 단순 하방 유동성 소모로 끝날 수 있다는 점이고, 약세 구조 무효화는 최소 $62,232.10 회수 및 $62,427.61 안착에서 판단한다.\"\n}"
  },
  "overall_signal": "bearish",
  "overall_confidence": 0.68,
  "operating_path": {
    "path_type": "complex",
    "confidence": 0.57,
    "waypoints": [
      {
        "seq": 1,
        "price": 59414.94,
        "type": "resistance_test",
        "source": "Wyckoff, Candlestick, Fibonacci, ICT, Derivatives, Harmonic (EMA20 공통 저항); 실행 셋업층 (Spring 유지 + strict bullish_engulfing + Butterfly/Crab PRZ)",
        "description": "실행 셋업이 BULLISH(62%)로 구조(BEARISH 68%)와 충돌하고 setup_strength >= 0.5이므로 첫 웨이포인트는 셋업 방향(상방 반응)으로 설정. $58,160 Spring 방어 + 7일 저점 bullish_engulfing + PRZ 반응이 만드는 선행 반등이 $59,080 레인지 저점 재진입을 시도하며 6개 에이전트 전원이 지목한 EMA20 $59,414.94(단기 최강 confluence 저항)를 테스트. 후보 등급 fib $59,691.56보다 strict 다중합의 EMA20을 우선. 이 지점이 반등의 상단이자 약세 구조 재개의 거절 포인트.",
        "est_hours": 6.0,
        "turning_zone": [
          59414.94,
          59691.56
        ],
        "likely_wick": 59578.97,
        "rejection_confirm": 59080.0,
        "invalid_overshoot": 59804.15,
        "calibration_reasoning": "6개 에이전트 합의 EMA20 저항($59,414.94)을 하단, fib 0.618·ret_0.5 confluence($59,691.56)를 상단으로 존을 설정(폭 $276.62 = 0.33×ATR). golden ratio이자 Chairman 저항인 $59,578.97을 wick 자석으로 배치했고, $59,080 레인지 저점 재이탈 시 EMA20 거절이 확인되며, $59,804.15 돌파 시 상방 반응이 무효화된다."
      },
      {
        "seq": 2,
        "price": 58160.0,
        "type": "support_test",
        "source": "Wyckoff (Spring 저점), ICT (전일 저가); Derivatives (OI+2.789%, CVD -7,897 하락 압력)",
        "description": "EMA20 거절 후 확인된 약세 구조가 재개. ICT bearish BOS $62,232.10 및 파생 하락 신규 포지션 유입을 근거로 Wyckoff Spring 저점이자 ICT 전일 저가인 $58,160 재테스트. 한 번 방어됐던 핵심 하단 유동성 기준을 다시 눌러 Spring 완성(SOS) 실패 여부를 검증하는 구간.",
        "est_hours": 15.0,
        "turning_zone": [
          57910.0,
          58160.0
        ],
        "likely_wick": 58000.0,
        "rejection_confirm": 58406.59,
        "invalid_overshoot": 57758.6,
        "calibration_reasoning": "$58,160과 $57,758.60 사이 별도 레벨이 없어 ATR 0.30배($250) 폭으로 존을 아래로 설정. 한 번 방어된 Spring 저점 바로 아래의 라운드넘버 $58,000을 유동성 자석으로 wick 지정했고, $58,406.59 Chairman 지지 회복 시 방어(SOS)가 확인되며, $57,758.60 이탈 시 WP3로의 하락 지속으로 이 지지 반등이 무효화된다."
      },
      {
        "seq": 3,
        "price": 57758.6,
        "type": "liquidity_sweep",
        "source": "Candlestick (7일 저점), Fibonacci (주요 하단), ICT (range low), Harmonic (하단 PRZ 인접); Derivatives ($57,600-$57,200 청산 인접)",
        "description": "$58,160 이탈 시 Candlestick 7일 저점·Fibonacci 하단·ICT range low가 중첩되는 $57,758.60으로 sell-side 유동성 스윕. 롱 crowding 1.000·롱 비율 70.8% 상황에서 $57,600-$57,200 청산 유동성을 향한 하단 밀집 구간의 1차 목표 저점.",
        "est_hours": 22.0,
        "turning_zone": [
          57166.08,
          57758.6
        ],
        "likely_wick": 57600.0,
        "rejection_confirm": 58160.0,
        "invalid_overshoot": 56775.86,
        "calibration_reasoning": "매도측(sell-side) 유동성 스윕이므로 규칙 방향과 달리 존을 base 아래 Chairman 청산 밀집 구간($57,600·$57,200·$57,166.08)까지 확장한 터미널 존(폭 $592.52 = 0.70×ATR). 롱 crowding 1.0·롱 70.8% 환경에서 라운드넘버이자 Chairman 지지인 $57,600을 1차 wick 자석으로 지정했고, $58,160 회복 시 스윕 반전이 확인되며, $56,775.86 이탈 시 하단 밀집 방어 실패로 무효화된다."
      }
    ],
    "period_extremes": {
      "4h": {
        "expected_high": 59258.38,
        "expected_low": 58406.59,
        "high_first": true
      },
      "8h": {
        "expected_high": 59414.94,
        "expected_low": 58406.59,
        "high_first": true
      },
      "24h": {
        "expected_high": 59414.94,
        "expected_low": 57758.6,
        "high_first": true
      }
    },
    "triggers": {
      "bullish": {
        "price": 59590.72,
        "description": "EMA20 $59,414.94 + 0.618 fib $59,578.97 + Butterfly PRZ 상단 $59,590.72를 돌파·안착 시 반등이 단순 반응을 넘어서며, $59,804.15 Fib EQ·$60,348.95 7일 EQ로 확장. 하락 연장 웨이포인트(WP2·WP3) 무효화 시작."
      },
      "bearish": {
        "price": 58160.0,
        "description": "Wyckoff Spring 저점 / ICT 전일 저가 $58,160 하향 이탈 확정 시 Spring이 단순 하방 유동성 소모로 귀결. $57,758.60 range low 및 $57,600-$57,200 청산 유동성으로 하락 가속."
      }
    },
    "scenario_invalidation": 60348.95,
    "raw_llm_response": "```json\n{\n  \"path_type\": \"complex\",\n  \"confidence\": 0.57,\n  \"waypoints\": [\n    {\n      \"seq\": 1,\n      \"price\": 59414.94,\n      \"type\": \"resistance_test\",\n      \"source\": \"Wyckoff, Candlestick, Fibonacci, ICT, Derivatives, Harmonic (EMA20 공통 저항); 실행 셋업층 (Spring 유지 + strict bullish_engulfing + Butterfly/Crab PRZ)\",\n      \"description\": \"실행 셋업이 BULLISH(62%)로 구조(BEARISH 68%)와 충돌하고 setup_strength >= 0.5이므로 첫 웨이포인트는 셋업 방향(상방 반응)으로 설정. $58,160 Spring 방어 + 7일 저점 bullish_engulfing + PRZ 반응이 만드는 선행 반등이 $59,080 레인지 저점 재진입을 시도하며 6개 에이전트 전원이 지목한 EMA20 $59,414.94(단기 최강 confluence 저항)를 테스트. 후보 등급 fib $59,691.56보다 strict 다중합의 EMA20을 우선. 이 지점이 반등의 상단이자 약세 구조 재개의 거절 포인트.\",\n      \"est_hours\": 6.0\n    },\n    {\n      \"seq\": 2,\n      \"price\": 58160.0,\n      \"type\": \"support_test\",\n      \"source\": \"Wyckoff (Spring 저점), ICT (전일 저가); Derivatives (OI+2.789%, CVD -7,897 하락 압력)\",\n      \"description\": \"EMA20 거절 후 확인된 약세 구조가 재개. ICT bearish BOS $62,232.10 및 파생 하락 신규 포지션 유입을 근거로 Wyckoff Spring 저점이자 ICT 전일 저가인 $58,160 재테스트. 한 번 방어됐던 핵심 하단 유동성 기준을 다시 눌러 Spring 완성(SOS) 실패 여부를 검증하는 구간.\",\n      \"est_hours\": 15.0\n    },\n    {\n      \"seq\": 3,\n      \"price\": 57758.6,\n      \"type\": \"liquidity_sweep\",\n      \"source\": \"Candlestick (7일 저점), Fibonacci (주요 하단), ICT (range low), Harmonic (하단 PRZ 인접); Derivatives ($57,600-$57,200 청산 인접)\",\n      \"description\": \"$58,160 이탈 시 Candlestick 7일 저점·Fibonacci 하단·ICT range low가 중첩되는 $57,758.60으로 sell-side 유동성 스윕. 롱 crowding 1.000·롱 비율 70.8% 상황에서 $57,600-$57,200 청산 유동성을 향한 하단 밀집 구간의 1차 목표 저점.\",\n      \"est_hours\": 22.0\n    }\n  ],\n  \"period_extremes\": {\n    \"4h\":  {\"expected_high\": 59258.38, \"expected_low\": 58406.59, \"high_first\": true},\n    \"8h\":  {\"expected_high\": 59414.94, \"expected_low\": 58406.59, \"high_first\": true},\n    \"24h\": {\"expected_high\": 59414.94, \"expected_low\": 57758.6,  \"high_first\": true}\n  },\n  \"triggers\": {\n    \"bullish\": {\"price\": 59590.72, \"description\": \"EMA20 $59,414.94 + 0.618 fib $59,578.97 + Butterfly PRZ 상단 $59,590.72를 돌파·안착 시 반등이 단순 반응을 넘어서며, $59,804.15 Fib EQ·$60,348.95 7일 EQ로 확장. 하락 연장 웨이포인트(WP2·WP3) 무효화 시작.\"},\n    \"bearish\": {\"price\": 58160.0, \"description\": \"Wyckoff Spring 저점 / ICT 전일 저가 $58,160 하향 이탈 확정 시 Spring이 단순 하방 유동성 소모로 귀결. $57,758.60 range low 및 $57,600-$57,200 청산 유동성으로 하락 가속.\"}\n  },\n  \"scenario_invalidation\": 60348.95\n}\n```"
  },
  "tp_calibration": {
    "calibrated_waypoints": [
      {
        "seq": 1,
        "base_target": 59414.94,
        "turning_zone": [
          59414.94,
          59691.56
        ],
        "likely_wick": 59578.97,
        "rejection_confirm": 59080.0,
        "invalid_overshoot": 59804.15,
        "calibration_reasoning": "6개 에이전트 합의 EMA20 저항($59,414.94)을 하단, fib 0.618·ret_0.5 confluence($59,691.56)를 상단으로 존을 설정(폭 $276.62 = 0.33×ATR). golden ratio이자 Chairman 저항인 $59,578.97을 wick 자석으로 배치했고, $59,080 레인지 저점 재이탈 시 EMA20 거절이 확인되며, $59,804.15 돌파 시 상방 반응이 무효화된다."
      },
      {
        "seq": 2,
        "base_target": 58160.0,
        "turning_zone": [
          57910.0,
          58160.0
        ],
        "likely_wick": 58000.0,
        "rejection_confirm": 58406.59,
        "invalid_overshoot": 57758.6,
        "calibration_reasoning": "$58,160과 $57,758.60 사이 별도 레벨이 없어 ATR 0.30배($250) 폭으로 존을 아래로 설정. 한 번 방어된 Spring 저점 바로 아래의 라운드넘버 $58,000을 유동성 자석으로 wick 지정했고, $58,406.59 Chairman 지지 회복 시 방어(SOS)가 확인되며, $57,758.60 이탈 시 WP3로의 하락 지속으로 이 지지 반등이 무효화된다."
      },
      {
        "seq": 3,
        "base_target": 57758.6,
        "turning_zone": [
          57166.08,
          57758.6
        ],
        "likely_wick": 57600.0,
        "rejection_confirm": 58160.0,
        "invalid_overshoot": 56775.86,
        "calibration_reasoning": "매도측(sell-side) 유동성 스윕이므로 규칙 방향과 달리 존을 base 아래 Chairman 청산 밀집 구간($57,600·$57,200·$57,166.08)까지 확장한 터미널 존(폭 $592.52 = 0.70×ATR). 롱 crowding 1.0·롱 70.8% 환경에서 라운드넘버이자 Chairman 지지인 $57,600을 1차 wick 자석으로 지정했고, $58,160 회복 시 스윕 반전이 확인되며, $56,775.86 이탈 시 하단 밀집 방어 실패로 무효화된다."
      }
    ],
    "raw_llm_response": "```json\n{\n  \"calibrated_waypoints\": [\n    {\n      \"seq\": 1,\n      \"base_target\": 59414.94,\n      \"turning_zone\": [59414.94, 59691.56],\n      \"likely_wick\": 59578.97,\n      \"rejection_confirm\": 59080.0,\n      \"invalid_overshoot\": 59804.15,\n      \"calibration_reasoning\": \"6개 에이전트 합의 EMA20 저항($59,414.94)을 하단, fib 0.618·ret_0.5 confluence($59,691.56)를 상단으로 존을 설정(폭 $276.62 = 0.33×ATR). golden ratio이자 Chairman 저항인 $59,578.97을 wick 자석으로 배치했고, $59,080 레인지 저점 재이탈 시 EMA20 거절이 확인되며, $59,804.15 돌파 시 상방 반응이 무효화된다.\"\n    },\n    {\n      \"seq\": 2,\n      \"base_target\": 58160.0,\n      \"turning_zone\": [57910.0, 58160.0],\n      \"likely_wick\": 58000.0,\n      \"rejection_confirm\": 58406.59,\n      \"invalid_overshoot\": 57758.6,\n      \"calibration_reasoning\": \"$58,160과 $57,758.60 사이 별도 레벨이 없어 ATR 0.30배($250) 폭으로 존을 아래로 설정. 한 번 방어된 Spring 저점 바로 아래의 라운드넘버 $58,000을 유동성 자석으로 wick 지정했고, $58,406.59 Chairman 지지 회복 시 방어(SOS)가 확인되며, $57,758.60 이탈 시 WP3로의 하락 지속으로 이 지지 반등이 무효화된다.\"\n    },\n    {\n      \"seq\": 3,\n      \"base_target\": 57758.6,\n      \"turning_zone\": [57166.08, 57758.6],\n      \"likely_wick\": 57600.0,\n      \"rejection_confirm\": 58160.0,\n      \"invalid_overshoot\": 56775.86,\n      \"calibration_reasoning\": \"매도측(sell-side) 유동성 스윕이므로 규칙 방향과 달리 존을 base 아래 Chairman 청산 밀집 구간($57,600·$57,200·$57,166.08)까지 확장한 터미널 존(폭 $592.52 = 0.70×ATR). 롱 crowding 1.0·롱 70.8% 환경에서 라운드넘버이자 Chairman 지지인 $57,600을 1차 wick 자석으로 지정했고, $58,160 회복 시 스윕 반전이 확인되며, $56,775.86 이탈 시 하단 밀집 방어 실패로 무효화된다.\"\n    }\n  ]\n}\n```"
  },
  "timing": {
    "stages": {
      "stage1_agents": 52.9,
      "chairman": 97.8,
      "operating_path": 216.0,
      "tp_calibrator": 233.8
    },
    "agents": {},
    "total_s": 600.7
  }
}