BTC/USDT 1D Council Report

Signal: BEARISH (68%)  |  Price: $66,445.70  |  2026-06-16 21:00 KST  |  300 candles

Council: 2 bullish, 2 neutral, 2 bearish  |  Support: $66,100 / $66,000 / $65,596  |  Resistance: $66,691 / $67,113 / $67,255

result.json   raw.txt   report.md


BTC Chart

Executive Summary

현재 BTC 일봉 구조는 하락 스윙 $82,829 → $59,080 이후 EQ $70,954.35 아래에 머무는 bearish 구조로 진단한다. Wyckoff 관점에서는 과거 누적 구조의 흔적이 남아 있으나, 현재 활성 구간은 $81,999 BC 이후 $59,080 AR, $67,255.40 ST로 이어지는 분배 후보 또는 재구조화 국면에 가깝다. 가격은 $65,595.70 Spring 및 $65,999.53-$67,113.44 bullish Gartley PRZ 근처에 있어 단기 반등 셋업은 존재하지만, EMA20 $66,690.77과 $67,255.40을 회복하지 못한 상태에서는 구조 전환으로 인정하기 어렵다. 핵심 구조 저항은 $70,954.35, $73,756.70-$74,868.00이며, bearish 구조의 주요 무효화는 $74,868.00 상단 수용이다.

Confluences

Conflicts


Agent Matrix

AgentSignalConfidenceSupportResistance
Wyckoff ExpertNEUTRAL62%$65,596 / $60,692$66,691 / $67,255
ICT TraderBEARISH74%$65,314 / $64,918$66,691 / $67,255
Derivatives TraderBEARISH60%$66,400 / $66,100$66,691 / $67,100
Candlestick ReaderBULLISH58%$60,692 / $64,446$67,255 / $74,247
Fibonacci AnalystNEUTRAL52%$64,685 / $59,080$68,152 / $70,954
Harmonic SpecialistBULLISH42%$66,000 / $65,676$66,691 / $67,113

Agent Details

Wyckoff Expert — NEUTRAL (62%)

Support: $65,596 / $60,692 / $59,080 | Resistance: $66,691 / $67,255 / $74,868 | Horizon: medium term

지표상 공식 regime은 ACC이며 acc_score 92.5, regime_fitness 0.925로 구조적 해석은 누적 우위가 맞다. 주요 누적 앵커는 SC $80,600.00, AR $93,080.00, ST $84,408.60이며 이후 Spring $65,595.70, TERMINAL_SPRING $74,868.00, SOS $82,828.70까지 감지되었지만, 현재가 $66,445.70는 주 범위 하단 $80,600.00 및 SOS $82,828.70 아래에 있어 Phase D 강세 수용은 아직 확인되지 않았다. 따라서 structure_bias는 bullish로 유지하되, immediate path는 Spring $65,595.70 재테스트/방어 여부가 핵심인 중립적 테스트 국면으로 본다. 단기적으로는 $67,255.40 및 EMA20 $66,690.77 회복이 필요하며, 그 전까지는 LPS 또는 BU로 확정하기 어렵다.
ICT Trader — BEARISH (74%)

Support: $65,314 / $64,918 / $60,692 | Resistance: $66,691 / $67,255 / $70,954 | Horizon: short/medium term

확인된 구조는 bearish로 판단한다. BOS/CHoCH 시퀀스에서 $108,566.00 bearish CHoCH, $101,516.50 bearish BOS, $84,408.60 bearish CHoCH, 최근 $64,918.20 bearish CHoCH가 발생했으며, 현재가 $66,445.70은 EQ $70,954.35 아래에 머물러 구조적 회복이 확인되지 않았다. 단기적으로는 최근 5개 캔들이 반등했지만, EMA20 $66,690.77을 명확히 회복하지 못했고 전일 고점 $67,255.40도 아직 돌파하지 못해 기관 관점에서는 반등 매도 구간으로 해석된다. 다만 현재 위치가 discount 구간이므로 신규 숏은 추격보다는 $67,255.40 또는 $70,954.35 부근 회복 실패를 확인하는 방식이 더 유리하다.
Derivatives Trader — BEARISH (60%)

Support: $66,400 / $66,100 / $63,500 | Resistance: $66,691 / $67,100 / $67,255 | Horizon: short term, 향후 4-8시간

확인된 구조는 아직 약세입니다. BTC는 $66,445.70에서 거래 중이며 EMA20 $66,690.77조차 회복하지 못했고, EMA120 $74,246.51 및 EMA240 $81,301.23 아래에 있어 중기 하락 구조가 유지됩니다. 파생 포지셔닝에서는 OI가 24시간 +1.595% 증가했지만 funding은 중립에 가깝고, CVD divergence 0.700에도 가격 상승이 +0.24%로 제한되어 매수 체결 흡수 가능성이 있습니다. 롱 계정 비율이 0.571이고 long crowding이 0.660인 상황에서 하방 $66,400, 특히 strongest liquidation level인 $66,100이 먼저 테스트될 확률이 높습니다.
Candlestick Reader — BULLISH (58%)

Support: $60,692 / $64,446 / $66,691 | Resistance: $67,255 / $74,247 / $81,301 | Horizon: short term

현재 BTC는 $66,445.70으로 EMA20 $66,690.77 바로 아래에 있어 단기 저항을 아직 명확히 돌파하지 못했지만, 최근 4개 양봉과 bullish_engulfing 3회, morning_star 1회가 단기 반등 셋업을 지지한다. 다만 EMA120 $74,246.51 대비 -10.5%, EMA240 $81,301.23 대비 -18.3% 아래에 위치해 확인된 중기·장기 구조는 여전히 bearish로 판단한다. 패턴 점수는 bull_score 3.05가 bear_score 0.80보다 우세하지만, best_pattern_quality가 0.655로 중간 수준이고 high_volume_patterns가 없어 거래량 확인은 부족하다. 핵심은 EMA20 $66,690.77 및 7일 고점 $67,255.40 상단 수용 여부이며, 이를 돌파하지 못하면 반등은 약세 구조 내 기술적 되돌림에 그칠 수 있다.
Fibonacci Analyst — NEUTRAL (52%)

Support: $64,685 / $59,080 / $52,620 | Resistance: $68,152 / $70,954 / $73,757 | Horizon: short/medium term

확정 구조는 $82,829 고점에서 $59,080 저점으로 이어진 하락 스윙이 기준이므로 아직 bearish로 판단한다. 현재가는 $66,445.70으로 0.236 되돌림 $64,684.69 위에 있지만, 핵심 저항인 0.382 $68,152.00 아래에 있어 구조적 회복은 확인되지 않았다. 단기 셋업은 EQ $70,954.35 아래의 할인 구간에서 0.236 지지가 유지되고 있어 $68,152.00 재시험 가능성이 있는 bullish 성격이다. 그러나 0.618 골든레벨 $73,756.70과 EMA120 $74,246.51이 상단에 겹쳐 있어 중기 상승 전환 확인 전까지는 중립 신호가 적절하다.
Harmonic Specialist — BULLISH (42%)

Support: $66,000 / $65,676 / $65,596 | Resistance: $66,691 / $67,113 / $67,255 | Horizon: medium term

현재 BTC는 $66,445.70으로 고품질 strict bullish Gartley의 활성 PRZ $65,999.53-$67,113.44 안에 있으며, 해당 PRZ는 ABCD, BC extension, XAD가 겹친 3중 컨플루언스 구간입니다. 다만 이 최상위 패턴은 아직 forming 상태이고 confirmed_reaction=false이므로, 거버넌스상 독립적으로 메인 경로를 뒤집을 수 없고 ‘상승 반응 후보 구간’으로만 취급합니다. 구조 측면에서는 가격이 EMA20 $66,690.77 아래이고 EMA120 $74,246.51 및 EMA240 $81,301.23보다 크게 낮아 일봉 확인 구조는 아직 약세로 판정합니다. 따라서 구조_bias는 bearish이나, 실행 setup_bias는 $66k대 PRZ 방어를 전제로 bullish이며, 확인 신호는 $67,113.44 상단 회복 후 $67,871.53 TP1 방향으로의 수용 여부입니다.

Operating Path — complex (50%)

#PriceTypeSourceEst. HoursDescription
1$67,255resistance_testCandlestick(7일 고점 $67,255.40·morning_star·4연속 양봉), Harmonic(PRZ 상단 $67,113.44), ICT·Wyckoff(EMA20 $66,690.77 / $67,255.40 재탈환 레벨), Fibonacci(다음 저항 $68,152)6실행 셋업이 BULLISH 62%(structure는 bearish)이고 setup_strength≥0.5이므로 첫 웨이포인트는 셋업 방향을 따른다. 최근 4연속 양봉·morning_star·고품질 Gartley PRZ 내부의 강세 모멘텀이 단기적으로 EMA20 $66,690.77 재시험을 거쳐 PRZ 상단 $67,113.44 및 7일/전일 고점 $67,255.40을 테스트하는 반등. 다만 CVD 매수 흡수(0.700)와 EMA20 미수용 정황상 이 구간은 구조적 매도 저항대이며 반등은 여기서 제한될 가능성이 높다.
2$65,596liquidity_sweepDerivatives(최강 청산 $66,100·CVD 흡수·롱 쏠림 0.660), Harmonic(PRZ 하단 $65,999.53), Wyckoff(Spring $65,595.70), ICT(discount·EMA20 미회복)15$67,255.40 저항 거부로 흡수가 확인되면 일봉 약세 구조가 재개된다. Derivatives가 명시한 최강 청산 레벨 $66,100과 하방 유동성($66,100-$66,400)을 휩쓴 뒤 Harmonic PRZ 하단 $65,999.53을 거쳐 Wyckoff Spring $65,595.70을 태깅하는 유동성 스윕. 롱 쏠림(0.660) 청산 플러시와 매수 흡수 시나리오가 여기서 실현되는 지점으로, 강세 셋업의 '반응 진원지'이기도 하다.
3$66,691resistance_testWyckoff(Spring 방어 후 반응·EMA20 $66,690.77), Harmonic(PRZ 반응 후보), Candlestick(할인 반등), ICT(EMA20 $66,690.77 저항)22Spring $65,595.70 + PRZ 하단 $65,999.53 + 청산 풀 $66,100이 밀집한 지지 컨플루언스에서 Harmonic·Candlestick 강세 셋업의 반응이 발동해 할인 구간 반등이 나온다. 그러나 일봉 구조가 여전히 bearish(68%)이고 EMA20·전일 고점을 아직 수용하지 못했으므로, 반등은 EMA20 $66,690.77 부근에서 상단이 제한되는 캡드 바운스에 그친다.

Period Extremes

HorizonExpected LowExpected HighSequence
4h$66,250$67,113High first
8h$66,400$67,255High first
24h$65,400$67,255High first

Triggers

Invalidation: $68,152

Raw Operating Path Response
```json
{
  "path_type": "complex",
  "confidence": 0.5,
  "waypoints": [
    {
      "seq": 1,
      "price": 67255.40,
      "type": "resistance_test",
      "source": "Candlestick(7일 고점 $67,255.40·morning_star·4연속 양봉), Harmonic(PRZ 상단 $67,113.44), ICT·Wyckoff(EMA20 $66,690.77 / $67,255.40 재탈환 레벨), Fibonacci(다음 저항 $68,152)",
      "description": "실행 셋업이 BULLISH 62%(structure는 bearish)이고 setup_strength≥0.5이므로 첫 웨이포인트는 셋업 방향을 따른다. 최근 4연속 양봉·morning_star·고품질 Gartley PRZ 내부의 강세 모멘텀이 단기적으로 EMA20 $66,690.77 재시험을 거쳐 PRZ 상단 $67,113.44 및 7일/전일 고점 $67,255.40을 테스트하는 반등. 다만 CVD 매수 흡수(0.700)와 EMA20 미수용 정황상 이 구간은 구조적 매도 저항대이며 반등은 여기서 제한될 가능성이 높다.",
      "est_hours": 6
    },
    {
      "seq": 2,
      "price": 65595.70,
      "type": "liquidity_sweep",
      "source": "Derivatives(최강 청산 $66,100·CVD 흡수·롱 쏠림 0.660), Harmonic(PRZ 하단 $65,999.53), Wyckoff(Spring $65,595.70), ICT(discount·EMA20 미회복)",
      "description": "$67,255.40 저항 거부로 흡수가 확인되면 일봉 약세 구조가 재개된다. Derivatives가 명시한 최강 청산 레벨 $66,100과 하방 유동성($66,100-$66,400)을 휩쓴 뒤 Harmonic PRZ 하단 $65,999.53을 거쳐 Wyckoff Spring $65,595.70을 태깅하는 유동성 스윕. 롱 쏠림(0.660) 청산 플러시와 매수 흡수 시나리오가 여기서 실현되는 지점으로, 강세 셋업의 '반응 진원지'이기도 하다.",
      "est_hours": 15
    },
    {
      "seq": 3,
      "price": 66690.77,
      "type": "resistance_test",
      "source": "Wyckoff(Spring 방어 후 반응·EMA20 $66,690.77), Harmonic(PRZ 반응 후보), Candlestick(할인 반등), ICT(EMA20 $66,690.77 저항)",
      "description": "Spring $65,595.70 + PRZ 하단 $65,999.53 + 청산 풀 $66,100이 밀집한 지지 컨플루언스에서 Harmonic·Candlestick 강세 셋업의 반응이 발동해 할인 구간 반등이 나온다. 그러나 일봉 구조가 여전히 bearish(68%)이고 EMA20·전일 고점을 아직 수용하지 못했으므로, 반등은 EMA20 $66,690.77 부근에서 상단이 제한되는 캡드 바운스에 그친다.",
      "est_hours": 22
    }
  ],
  "period_extremes": {
    "4h":  {"expected_high": 67113.44, "expected_low": 66250.00, "high_first": true},
    "8h":  {"expected_high": 67255.40, "expected_low": 66400.00, "high_first": true},
    "24h": {"expected_high": 67255.40, "expected_low": 65400.00, "high_first": true}
  },
  "triggers": {
    "bullish": {
      "price": 67255.40,
      "description": "EMA20 $66,690.77 재탈환에 이어 7일/전일 고점 $67,255.40을 일봉 수용하면 $68,152(0.382)·EQ $70,954.35 방향으로 강세 가속. WP1 거부 시나리오를 부정하는 1차 강세 신호."
    },
    "bearish": {
      "price": 64684.69,
      "description": "Spring $65,595.70 상실 후 ICT bearish CHoCH $64,918.20 및 0.236 지지 $64,684.69 클러스터를 수용·이탈하면 WP3 방어 시나리오가 무효화되며 $60,691.90·$59,080 방향으로 약세 가속."
    }
  },
  "scenario_invalidation": 68152.00
}
```

**핵심 판단:** 구조(BEARISH 68%)와 실행 셋업(BULLISH 62%, strength≥0.5)이 충돌하므로 setup-driven 규칙에 따라 **WP1은 셋업 방향(상방 반등)**으로 시작하되, Harmonic PRZ가 미확인(forming) 상태라 약한 근거임을 반영해 반등 천장을 합의 저항 $67,255.40으로 제한했습니다. 이후 ICT/Derivatives의 흡수·청산($66,100) 근거가 **WP2 하락 스윕(→Spring $65,595.70)**으로 실현되고, 지지 컨플루언스에서 셋업의 반응이 **WP3 캡드 바운스**로 마무리되는 corrective 구조입니다. Derivatives는 "$66,100 선테스트(하방 우선)"를 주장해 WP1 방향에 직접 반대하므로 신뢰도는 0.5로 보수적으로 설정했습니다.

Raw Chairman Response
{
  "overall_signal": "bearish",
  "overall_confidence": 0.68,
  "execution_setup": {
    "setup_bias": "bullish",
    "setup_strength": 0.62,
    "active_setups": [
      "가격이 하락 스윙 $82,829 → $59,080의 EQ $70,954.35 아래 할인 구간에 있으나, 피보나치 0.236 지지 $64,684.69 위를 방어 중",
      "고품질 bullish Gartley PRZ $65,999.53-$67,113.44 내부에서 거래 중이며 현재가 $66,445.70가 PRZ 중심부에 위치",
      "최근 4개 일봉성 양봉 회복 흐름과 morning_star 후보가 단기 반등 셋업을 지지하지만, 거래량 확인은 부족",
      "EMA20 $66,690.77 및 전일 고점 $67,255.40을 아직 명확히 회복하지 못해 반등은 구조 확인 전 단계",
      "파생 포지셔닝상 CVD 매수 우위에도 가격 상승이 제한되어 $66,100-$66,400 하방 유동성 테스트 위험이 남아 있음"
    ],
    "setup_vs_structure": "구조는 약세이나 실행 셋업은 단기적으로 강세 반응 후보가 우세하다. 즉, 현재 구간은 하락 구조 내부의 할인·PRZ 반응 구간이며, 즉시 방향성은 구조 추세보다 반등 시도와 흡수 리스크가 충돌하는 상태다."
  },
  "signal_breakdown": {
    "bullish_count": 2,
    "bearish_count": 2,
    "neutral_count": 2
  },
  "key_levels": {
    "support": [
      66100,
      65999.53,
      65595.7,
      64918.2,
      64684.69,
      60691.9,
      59080
    ],
    "resistance": [
      66690.77,
      67113.44,
      67255.4,
      68152,
      68683.96,
      70954.35,
      73756.7,
      74246.51,
      74868,
      82828.7
    ]
  },
  "confluences": [
    "ICT, Derivatives, Candlestick, Harmonic 모두 EMA20 $66,690.77 부근을 단기 구조 회복 여부의 1차 저항으로 제시한다.",
    "ICT와 Candlestick은 전일 고점 및 최근 단기 고점 $67,255.40 돌파 실패를 공통적인 단기 저항 조건으로 본다.",
    "Fibonacci의 0.236 지지 $64,684.69, ICT의 최근 bearish CHoCH 레벨 $64,918.20, Harmonic 하단 PRZ $65,999.53 및 Wyckoff Spring $65,595.70이 $64.7k-$66.0k 방어 구간으로 밀집한다.",
    "Fibonacci와 ICT 모두 하락 스윙의 EQ $70,954.35를 구조적 회복 전의 핵심 분기점으로 본다.",
    "Fibonacci의 0.618 $73,756.70, EMA120 $74,246.51, Wyckoff TERMINAL_SPRING $74,868.00이 $73.8k-$74.9k 중기 구조 저항대로 겹친다.",
    "Derivatives의 strongest liquidation level $66,100과 Harmonic PRZ 하단 $65,999.53이 거의 동일한 가격대에 위치해 단기 유동성·반응 구간으로 중첩된다.",
    "ICT, Derivatives, Harmonic, Candlestick은 모두 큰 구조가 아직 bearish라고 판단하며, 현재 반등 신호를 구조 전환이 아닌 사전 확인 셋업으로 제한한다."
  ],
  "conflicts": [
    "Wyckoff는 장기 누적 구조를 근거로 structure_bias를 bullish로 제시하지만, 세부 구조에서는 현재 활성 구조가 $81,999 BC, $59,080 AR, $67,255.40 ST로 구성된 분배 후보에 가깝다. 따라서 장기 누적 해석과 현재 활성 일봉 구조가 충돌한다.",
    "Harmonic과 Candlestick은 $66k대에서 강세 반응 셋업을 제시하지만, ICT와 Derivatives는 EMA20 $66,690.77 미회복, CVD 흡수 가능성, 롱 계정 쏠림을 근거로 반등 매도 위험을 강조한다.",
    "Fibonacci는 할인 구간과 0.236 지지 방어를 이유로 단기 bullish setup을 인정하지만, 동일한 하락 스윙 기준으로는 $68,152.00 및 $70,954.35 회복 전까지 구조적 bearish를 유지한다.",
    "Candlestick의 최근 bullish engulfing 및 morning star 후보는 단기 회복을 시사하지만, 고거래량 패턴이 없어 ICT의 구조적 bearish CHoCH/BOS 신호를 뒤집기에는 증거 강도가 부족하다."
  ],
  "highest_conviction_analyst": "ICT Trader — bearish 구조 신호의 신뢰도가 가장 높다. 다수의 CHoCH/BOS 시퀀스, EQ $70,954.35 하회, EMA20 $66,690.77 미회복, EMA120 $74,246.51 및 EMA240 $81,301.23 하회 등 구조·레벨·평균선 근거가 구체적이며, confidence 74%와 setup score 89%로 가장 강한 약세 판정을 제시한다.",
  "invalidation_level": "일봉 기준 $74,868.00 상회 및 수용. 이는 EMA120 $74,246.51, Fibonacci 0.618 $73,756.70, Wyckoff TERMINAL_SPRING $74,868.00 저항대를 회복하는 구간으로, 현재 bearish 구조 판정을 무효화하거나 최소 중립화할 수 있다.",
  "executive_summary": "현재 BTC 일봉 구조는 하락 스윙 $82,829 → $59,080 이후 EQ $70,954.35 아래에 머무는 bearish 구조로 진단한다. Wyckoff 관점에서는 과거 누적 구조의 흔적이 남아 있으나, 현재 활성 구간은 $81,999 BC 이후 $59,080 AR, $67,255.40 ST로 이어지는 분배 후보 또는 재구조화 국면에 가깝다. 가격은 $65,595.70 Spring 및 $65,999.53-$67,113.44 bullish Gartley PRZ 근처에 있어 단기 반등 셋업은 존재하지만, EMA20 $66,690.77과 $67,255.40을 회복하지 못한 상태에서는 구조 전환으로 인정하기 어렵다. 핵심 구조 저항은 $70,954.35, $73,756.70-$74,868.00이며, bearish 구조의 주요 무효화는 $74,868.00 상단 수용이다."
}
Full Result JSON
{
  "symbol": "BTC/USDT",
  "timeframe": "1d",
  "timestamp": "2026-06-16 21:00 KST",
  "last_price": 66445.7,
  "num_candles": 300,
  "stage1_analyses": {
    "fibonacci": {
      "agent_id": "fibonacci",
      "display_name": "Fibonacci Analyst",
      "signal": "neutral",
      "confidence": 0.52,
      "structure_bias": "bearish",
      "setup_bias": "bullish",
      "setup_score": 0.55,
      "setup_signals": [
        "가격이 피보나치 EQ $70,954.35 아래에 있어 아직 할인 구간에 위치",
        "0.236 되돌림 지지 $64,684.69 위에서 거래 중이며 현재가 $66,445.70이 해당 지지를 방어",
        "단기 미도달 저항/유동성 목표가 ret_0.382 $68,152.00에 위치하며 현재가 대비 약 2.57% 상방",
        "최근 5개 일봉 중 4개가 양봉으로 마감되어 단기 반등 시도는 유지",
        "다만 0.618 골든레벨 $73,756.70까지는 11.0% 거리로, 고확률 추세 전환 확인 구간에는 아직 미도달"
      ],
      "reasoning": "확정 구조는 $82,829 고점에서 $59,080 저점으로 이어진 하락 스윙이 기준이므로 아직 bearish로 판단한다. 현재가는 $66,445.70으로 0.236 되돌림 $64,684.69 위에 있지만, 핵심 저항인 0.382 $68,152.00 아래에 있어 구조적 회복은 확인되지 않았다. 단기 셋업은 EQ $70,954.35 아래의 할인 구간에서 0.236 지지가 유지되고 있어 $68,152.00 재시험 가능성이 있는 bullish 성격이다. 그러나 0.618 골든레벨 $73,756.70과 EMA120 $74,246.51이 상단에 겹쳐 있어 중기 상승 전환 확인 전까지는 중립 신호가 적절하다.",
      "key_levels": {
        "support": [
          64684.69,
          59080.0,
          52620.35
        ],
        "resistance": [
          68152.0,
          70954.35,
          73756.7
        ]
      },
      "time_horizon": "short/medium term",
      "invalidation_level": "$64,684.69 일봉 종가 이탈",
      "risk_scenario": "반대로 $64,684.69를 일봉 종가로 이탈하면 단기 bullish 셋업은 무효화되고, 하락 구조가 재강화되며 $59,080.00 스윙 저점 및 confluence zone 재시험 가능성이 커진다. $59,080.00마저 무너지면 확장 목표는 $52,620.35, 이후 $49,248.04까지 열릴 수 있다.",
      "data_quality": "medium",
      "metrics": {
        "swing_pair": "High→Low: $82,829 → $59,080",
        "direction": "down",
        "nearest_fib": "ret_0.382",
        "nearest_fib_price": 68152.0,
        "nearest_fib_distance": 2.57,
        "golden_ratio_level": 73756.7,
        "fib_ret_382": 68152.0,
        "fib_ret_618": 73756.7,
        "confluence_zones": [
          {
            "price": 59080.0,
            "count": 2,
            "levels": [
              "ext_1.0",
              "ext_1.0"
            ],
            "cluster_score": 0.6
          }
        ],
        "support_levels": [
          64684.6932,
          59080.0,
          52620.3536
        ],
        "resistance_levels": [
          68152.0034,
          70954.35,
          73756.6966
        ],
        "level_candidates": [
          {
            "name": "ret_0.236",
            "price": 64684.69,
            "distance_pct": 2.65,
            "is_support": true,
            "cluster_score": 0.0
          },
          {
            "name": "ret_0.382",
            "price": 68152.0,
            "distance_pct": 2.57,
            "is_support": false,
            "cluster_score": 0.0
          },
          {
            "name": "ret_0.5",
            "price": 70954.35,
            "distance_pct": 6.79,
            "is_support": false,
            "cluster_score": 0.0
          },
          {
            "name": "ret_0.618",
            "price": 73756.7,
            "distance_pct": 11.0,
            "is_support": false,
            "cluster_score": 0.0
          },
          {
            "name": "ret_0.786",
            "price": 77746.48,
            "distance_pct": 17.01,
            "is_support": false,
            "cluster_score": 0.0
          },
          {
            "name": "ext_1.0",
            "price": 59080.0,
            "distance_pct": 11.09,
            "is_support": true,
            "cluster_score": 0.6
          },
          {
            "name": "ext_1.272",
            "price": 52620.35,
            "distance_pct": 20.81,
            "is_support": true,
            "cluster_score": 0.0
          },
          {
            "name": "ext_1.414",
            "price": 49248.04,
            "distance_pct": 25.88,
            "is_support": true,
            "cluster_score": 0.0
          },
          {
            "name": "ext_1.618",
            "price": 44403.3,
            "distance_pct": 33.17,
            "is_support": true,
            "cluster_score": 0.0
          },
          {
            "name": "ext_2.0",
            "price": 35331.3,
            "distance_pct": 46.83,
            "is_support": true,
            "cluster_score": 0.0
          }
        ],
        "confluence_quality": 0.6,
        "fib_reaction_state": "distant",
        "reaction_probability": 0.25
      },
      "raw_llm_response": "{\n  \"signal\": \"neutral\",\n  \"confidence\": 0.52,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.55,\n  \"setup_signals\": [\n    \"가격이 피보나치 EQ $70,954.35 아래에 있어 아직 할인 구간에 위치\",\n    \"0.236 되돌림 지지 $64,684.69 위에서 거래 중이며 현재가 $66,445.70이 해당 지지를 방어\",\n    \"단기 미도달 저항/유동성 목표가 ret_0.382 $68,152.00에 위치하며 현재가 대비 약 2.57% 상방\",\n    \"최근 5개 일봉 중 4개가 양봉으로 마감되어 단기 반등 시도는 유지\",\n    \"다만 0.618 골든레벨 $73,756.70까지는 11.0% 거리로, 고확률 추세 전환 확인 구간에는 아직 미도달\"\n  ],\n  \"reasoning\": \"확정 구조는 $82,829 고점에서 $59,080 저점으로 이어진 하락 스윙이 기준이므로 아직 bearish로 판단한다. 현재가는 $66,445.70으로 0.236 되돌림 $64,684.69 위에 있지만, 핵심 저항인 0.382 $68,152.00 아래에 있어 구조적 회복은 확인되지 않았다. 단기 셋업은 EQ $70,954.35 아래의 할인 구간에서 0.236 지지가 유지되고 있어 $68,152.00 재시험 가능성이 있는 bullish 성격이다. 그러나 0.618 골든레벨 $73,756.70과 EMA120 $74,246.51이 상단에 겹쳐 있어 중기 상승 전환 확인 전까지는 중립 신호가 적절하다.\",\n  \"key_levels\": {\n    \"support\": [\n      64684.69,\n      59080.0,\n      52620.35\n    ],\n    \"resistance\": [\n      68152.0,\n      70954.35,\n      73756.7\n    ]\n  },\n  \"time_horizon\": \"short/medium term\",\n  \"invalidation_level\": \"$64,684.69 일봉 종가 이탈\",\n  \"risk_scenario\": \"반대로 $64,684.69를 일봉 종가로 이탈하면 단기 bullish 셋업은 무효화되고, 하락 구조가 재강화되며 $59,080.00 스윙 저점 및 confluence zone 재시험 가능성이 커진다. $59,080.00마저 무너지면 확장 목표는 $52,620.35, 이후 $49,248.04까지 열릴 수 있다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "ict": {
      "agent_id": "ict",
      "display_name": "ICT Trader",
      "signal": "bearish",
      "confidence": 0.74,
      "structure_bias": "bearish",
      "setup_bias": "bearish",
      "setup_score": 0.886,
      "setup_signals": [
        "현재가 $66,445.70이 EQ $70,954.35 아래 discount 영역에 머물며 구조적 약세 구간을 회복하지 못함",
        "EMA20 $66,690.77 바로 아래에서 거래 중이며 단기 평균선 재탈환 실패",
        "EMA120 $74,246.51 및 EMA240 $81,301.23 대비 각각 -10.5%, -18.3% 하방에 있어 상위 추세 압력이 우세",
        "최근 확인된 bearish CHoCH 레벨 $64,918.20 이후 회복 반등이 제한적이며, 이전 고점 $67,255.40을 돌파하지 못함",
        "상단 $80,651.20-$82,828.70에 candidate bearish OB가 남아 있어 중기 공급 구간으로 작용 가능"
      ],
      "reasoning": "확인된 구조는 bearish로 판단한다. BOS/CHoCH 시퀀스에서 $108,566.00 bearish CHoCH, $101,516.50 bearish BOS, $84,408.60 bearish CHoCH, 최근 $64,918.20 bearish CHoCH가 발생했으며, 현재가 $66,445.70은 EQ $70,954.35 아래에 머물러 구조적 회복이 확인되지 않았다. 단기적으로는 최근 5개 캔들이 반등했지만, EMA20 $66,690.77을 명확히 회복하지 못했고 전일 고점 $67,255.40도 아직 돌파하지 못해 기관 관점에서는 반등 매도 구간으로 해석된다. 다만 현재 위치가 discount 구간이므로 신규 숏은 추격보다는 $67,255.40 또는 $70,954.35 부근 회복 실패를 확인하는 방식이 더 유리하다.",
      "key_levels": {
        "support": [
          65314.3,
          64918.2,
          60691.9,
          59080.0
        ],
        "resistance": [
          66690.77,
          67255.4,
          70954.35,
          74246.51,
          80651.2,
          82828.7
        ]
      },
      "time_horizon": "short/medium term",
      "invalidation_level": "$70,954.35",
      "risk_scenario": "반대 시나리오는 BTC가 $67,255.40 전일 고점을 먼저 돌파하고, 이후 EQ $70,954.35 위에서 수용되며 EMA20과 중간값을 동시에 회복하는 경우다. 이 경우 현재 bearish setup은 숏 커버링으로 전환될 수 있고, 다음 유동성 목표는 EMA120 $74,246.51 및 상단 candidate bearish OB $80,651.20-$82,828.70이 된다.",
      "data_quality": "medium",
      "metrics": {
        "order_blocks_total": 1,
        "confirmed_bullish_ob": 0,
        "confirmed_bearish_ob": 0,
        "candidate_bullish_ob": 0,
        "candidate_bearish_ob": 1,
        "active_bullish_ob": 0,
        "active_bearish_ob": 0,
        "nearest_bull_ob_range": null,
        "nearest_bear_ob_range": {
          "bottom": 80651.2,
          "top": 82828.7,
          "quality": "candidate",
          "score": 0.51
        },
        "active_bullish_ob_list": [],
        "active_bearish_ob_list": [],
        "ob_mitigated_count": 1,
        "unfilled_bull_fvg_count": 0,
        "unfilled_bear_fvg_count": 0,
        "bull_fvg_ranges": [],
        "bear_fvg_ranges": [],
        "fvg_open_count": 0,
        "fvg_mitigated_count": 69,
        "fvg_open_zones": [],
        "bos_choch_events": [
          "CHoCH_bearish",
          "BOS_bearish",
          "BOS_bullish",
          "CHoCH_bearish",
          "BOS_bullish",
          "CHoCH_bearish"
        ],
        "bos_choch_levels": [
          {
            "type": "CHoCH_bearish",
            "level": 108566.0
          },
          {
            "type": "BOS_bearish",
            "level": 101516.5
          },
          {
            "type": "BOS_bullish",
            "level": 94555.0
          },
          {
            "type": "CHoCH_bearish",
            "level": 84408.6
          },
          {
            "type": "BOS_bullish",
            "level": 75998.9
          },
          {
            "type": "CHoCH_bearish",
            "level": 64918.2
          }
        ],
        "bos_sequence": [
          "CHoCH_bullish",
          "CHoCH_bearish",
          "BOS_bearish",
          "BOS_bullish",
          "CHoCH_bearish",
          "BOS_bullish",
          "CHoCH_bearish"
        ],
        "consecutive_bull_bos": 0,
        "consecutive_bear_bos": 0,
        "recent_liq_sweeps": [],
        "recent_sweep_levels": [],
        "liquidity_resting": [],
        "current_zone": "discount",
        "eq_level": 70954.35,
        "range_high": 82828.7,
        "range_low": 59080.0,
        "bull_score": 5.0,
        "bear_score": 9.6,
        "setup_bias": "bearish",
        "setup_score": 0.886,
        "setup_signals": [
          "bearish CHoCH below $108,566.00",
          "bearish BOS below $101,516.50",
          "bearish CHoCH below $84,408.60",
          "bearish CHoCH below $64,918.20"
        ],
        "retracement_direction": "bearish",
        "current_retracement_pct": 34.4,
        "deepest_retracement_pct": 34.4,
        "previous_day_high": 67255.4,
        "previous_day_low": 65314.3,
        "broken_prev_high": false,
        "broken_prev_low": false,
        "sessions": {}
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.74,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.886,\n  \"setup_signals\": [\n    \"현재가 $66,445.70이 EQ $70,954.35 아래 discount 영역에 머물며 구조적 약세 구간을 회복하지 못함\",\n    \"EMA20 $66,690.77 바로 아래에서 거래 중이며 단기 평균선 재탈환 실패\",\n    \"EMA120 $74,246.51 및 EMA240 $81,301.23 대비 각각 -10.5%, -18.3% 하방에 있어 상위 추세 압력이 우세\",\n    \"최근 확인된 bearish CHoCH 레벨 $64,918.20 이후 회복 반등이 제한적이며, 이전 고점 $67,255.40을 돌파하지 못함\",\n    \"상단 $80,651.20-$82,828.70에 candidate bearish OB가 남아 있어 중기 공급 구간으로 작용 가능\"\n  ],\n  \"reasoning\": \"확인된 구조는 bearish로 판단한다. BOS/CHoCH 시퀀스에서 $108,566.00 bearish CHoCH, $101,516.50 bearish BOS, $84,408.60 bearish CHoCH, 최근 $64,918.20 bearish CHoCH가 발생했으며, 현재가 $66,445.70은 EQ $70,954.35 아래에 머물러 구조적 회복이 확인되지 않았다. 단기적으로는 최근 5개 캔들이 반등했지만, EMA20 $66,690.77을 명확히 회복하지 못했고 전일 고점 $67,255.40도 아직 돌파하지 못해 기관 관점에서는 반등 매도 구간으로 해석된다. 다만 현재 위치가 discount 구간이므로 신규 숏은 추격보다는 $67,255.40 또는 $70,954.35 부근 회복 실패를 확인하는 방식이 더 유리하다.\",\n  \"key_levels\": {\n    \"support\": [\n      65314.3,\n      64918.2,\n      60691.9,\n      59080.0\n    ],\n    \"resistance\": [\n      66690.77,\n      67255.4,\n      70954.35,\n      74246.51,\n      80651.2,\n      82828.7\n    ]\n  },\n  \"time_horizon\": \"short/medium term\",\n  \"invalidation_level\": \"$70,954.35\",\n  \"risk_scenario\": \"반대 시나리오는 BTC가 $67,255.40 전일 고점을 먼저 돌파하고, 이후 EQ $70,954.35 위에서 수용되며 EMA20과 중간값을 동시에 회복하는 경우다. 이 경우 현재 bearish setup은 숏 커버링으로 전환될 수 있고, 다음 유동성 목표는 EMA120 $74,246.51 및 상단 candidate bearish OB $80,651.20-$82,828.70이 된다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "derivatives": {
      "agent_id": "derivatives",
      "display_name": "Derivatives Trader",
      "signal": "bearish",
      "confidence": 0.6,
      "structure_bias": "bearish",
      "setup_bias": "bearish",
      "setup_score": 0.68,
      "setup_signals": [
        "현재가 $66,445.70이 EMA20 $66,690.77 아래에 위치하며 단기 반등이 아직 구조적 수용으로 확인되지 않음",
        "EMA120 $74,246.51 및 EMA240 $81,301.23 대비 각각 -10.5%, -18.3% 아래로 중기 구조는 여전히 약세",
        "CVD divergence 0.700 및 CVD change +441.962에도 24h 가격 상승은 +0.24%에 그쳐 공격적 매수 체결이 가격 상승으로 충분히 연결되지 않는 흡수 가능성",
        "OI가 24h +1.595% 증가해 신규 포지션 유입 중이나 funding avg가 거의 0에 가까워 방향성 확신보다 레버리지 누적 성격이 강함",
        "롱 계정 비율 0.571, account_long_crowding 0.660으로 롱 포지셔닝이 상대적으로 혼잡하며, 이는 단기적으로 하방 청산 리스크를 키움",
        "가장 강한 하방 청산 레벨이 $66,100이며, 현재가와 매우 가까운 $66,400 및 $66,100에 유동성 클러스터가 존재"
      ],
      "reasoning": "확인된 구조는 아직 약세입니다. BTC는 $66,445.70에서 거래 중이며 EMA20 $66,690.77조차 회복하지 못했고, EMA120 $74,246.51 및 EMA240 $81,301.23 아래에 있어 중기 하락 구조가 유지됩니다. 파생 포지셔닝에서는 OI가 24시간 +1.595% 증가했지만 funding은 중립에 가깝고, CVD divergence 0.700에도 가격 상승이 +0.24%로 제한되어 매수 체결 흡수 가능성이 있습니다. 롱 계정 비율이 0.571이고 long crowding이 0.660인 상황에서 하방 $66,400, 특히 strongest liquidation level인 $66,100이 먼저 테스트될 확률이 높습니다.",
      "key_levels": {
        "support": [
          66400,
          66100,
          63500,
          60691.9
        ],
        "resistance": [
          66690.77,
          67100,
          67255.4,
          69400,
          70200
        ]
      },
      "time_horizon": "short term, 향후 4-8시간",
      "invalidation_level": "67100",
      "risk_scenario": "$67,100 상방 청산 레벨을 강하게 돌파하고 EMA20 $66,690.77 위에서 수용이 확인되면, 현재의 약세 셋업은 실패로 간주됩니다. 이 경우 숏 포지션이 되감기되며 $69,400, 이후 $70,200 상방 유동성까지 빠르게 확장될 수 있습니다.",
      "data_quality": "medium",
      "metrics": {
        "cvd_divergence": 0.7,
        "cvd_change": 441.962,
        "oi_trend": 0.659,
        "oi_change_pct_24h": 1.595,
        "oi_latest": 103300.779,
        "funding_pressure": 0.508,
        "funding_avg": -8.38e-06,
        "funding_change_24h": -3.918e-05,
        "long_account_ratio": 0.579,
        "short_account_ratio": 0.421,
        "long_account_latest": 0.571,
        "short_account_latest": 0.429,
        "long_account_change_24h": -0.0173,
        "short_account_change_24h": 0.0173,
        "account_flow_label": "short_accounts_rising_long_accounts_falling",
        "account_short_crowding": 0.0,
        "account_long_crowding": 0.66,
        "ls_imbalance": 0.0,
        "ls_imbalance_interpretation": "high=short-account crowding / low=long-account crowding",
        "spot_futures_basis_score": 0.486,
        "spot_futures_basis_pct": -0.0542,
        "basis_change_lookback": -0.0092,
        "aggregate_score": 0.471,
        "bull_signals": 2,
        "bear_signals": 1,
        "liq_below": [
          [
            66400,
            84300.4107152
          ],
          [
            66100,
            122826.1169306
          ],
          [
            63500,
            109886.1233658
          ]
        ],
        "liq_above": [
          [
            67100,
            107218.85685375
          ],
          [
            69400,
            95355.971676
          ],
          [
            70200,
            88390.795255
          ]
        ],
        "strongest_liq_level": 66100,
        "fragility_score": 0.927,
        "positioning_extreme": "balanced"
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.6,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.68,\n  \"setup_signals\": [\n    \"현재가 $66,445.70이 EMA20 $66,690.77 아래에 위치하며 단기 반등이 아직 구조적 수용으로 확인되지 않음\",\n    \"EMA120 $74,246.51 및 EMA240 $81,301.23 대비 각각 -10.5%, -18.3% 아래로 중기 구조는 여전히 약세\",\n    \"CVD divergence 0.700 및 CVD change +441.962에도 24h 가격 상승은 +0.24%에 그쳐 공격적 매수 체결이 가격 상승으로 충분히 연결되지 않는 흡수 가능성\",\n    \"OI가 24h +1.595% 증가해 신규 포지션 유입 중이나 funding avg가 거의 0에 가까워 방향성 확신보다 레버리지 누적 성격이 강함\",\n    \"롱 계정 비율 0.571, account_long_crowding 0.660으로 롱 포지셔닝이 상대적으로 혼잡하며, 이는 단기적으로 하방 청산 리스크를 키움\",\n    \"가장 강한 하방 청산 레벨이 $66,100이며, 현재가와 매우 가까운 $66,400 및 $66,100에 유동성 클러스터가 존재\"\n  ],\n  \"reasoning\": \"확인된 구조는 아직 약세입니다. BTC는 $66,445.70에서 거래 중이며 EMA20 $66,690.77조차 회복하지 못했고, EMA120 $74,246.51 및 EMA240 $81,301.23 아래에 있어 중기 하락 구조가 유지됩니다. 파생 포지셔닝에서는 OI가 24시간 +1.595% 증가했지만 funding은 중립에 가깝고, CVD divergence 0.700에도 가격 상승이 +0.24%로 제한되어 매수 체결 흡수 가능성이 있습니다. 롱 계정 비율이 0.571이고 long crowding이 0.660인 상황에서 하방 $66,400, 특히 strongest liquidation level인 $66,100이 먼저 테스트될 확률이 높습니다.\",\n  \"key_levels\": {\n    \"support\": [\n      66400,\n      66100,\n      63500,\n      60691.9\n    ],\n    \"resistance\": [\n      66690.77,\n      67100,\n      67255.4,\n      69400,\n      70200\n    ]\n  },\n  \"time_horizon\": \"short term, 향후 4-8시간\",\n  \"invalidation_level\": \"67100\",\n  \"risk_scenario\": \"$67,100 상방 청산 레벨을 강하게 돌파하고 EMA20 $66,690.77 위에서 수용이 확인되면, 현재의 약세 셋업은 실패로 간주됩니다. 이 경우 숏 포지션이 되감기되며 $69,400, 이후 $70,200 상방 유동성까지 빠르게 확장될 수 있습니다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "wyckoff": {
      "agent_id": "wyckoff",
      "display_name": "Wyckoff Expert",
      "signal": "neutral",
      "confidence": 0.62,
      "structure_bias": "bullish",
      "setup_bias": "neutral",
      "setup_score": 0.55,
      "setup_signals": [
        "현재가 $66,445.70는 주 누적 범위 하단 $80,600.00 아래에 있어 Phase D/SOS 이후 수용이 확인되지 않음",
        "현재가가 Spring 저점 $65,595.70 바로 위에 있어 재테스트 구간에 위치하지만, 아직 강한 재흡수 확인은 부족함",
        "EMA20 $66,690.77이 단기 저항으로 바로 위에 있으며 현재가는 약 -0.4% 아래",
        "최근 7일 고점 $67,255.40 회복 실패 시 Spring 재시험 또는 하방 유동성 확인 가능성",
        "구조상 ACC 점수 92.5 및 regime_fitness 0.925로 누적 우위이나, SOS $82,828.70 이후 가격이 범위 내부 수용을 유지하지 못함"
      ],
      "reasoning": "지표상 공식 regime은 ACC이며 acc_score 92.5, regime_fitness 0.925로 구조적 해석은 누적 우위가 맞다. 주요 누적 앵커는 SC $80,600.00, AR $93,080.00, ST $84,408.60이며 이후 Spring $65,595.70, TERMINAL_SPRING $74,868.00, SOS $82,828.70까지 감지되었지만, 현재가 $66,445.70는 주 범위 하단 $80,600.00 및 SOS $82,828.70 아래에 있어 Phase D 강세 수용은 아직 확인되지 않았다. 따라서 structure_bias는 bullish로 유지하되, immediate path는 Spring $65,595.70 재테스트/방어 여부가 핵심인 중립적 테스트 국면으로 본다. 단기적으로는 $67,255.40 및 EMA20 $66,690.77 회복이 필요하며, 그 전까지는 LPS 또는 BU로 확정하기 어렵다.",
      "key_levels": {
        "support": [
          65595.7,
          60691.9,
          59080.0
        ],
        "resistance": [
          66690.77,
          67255.4,
          74868.0,
          80600.0,
          82828.7,
          93080.0
        ]
      },
      "time_horizon": "medium term",
      "invalidation_level": "$65,595.70",
      "risk_scenario": "반대 시나리오는 Spring $65,595.70 이탈 후 회복 실패이다. 이 경우 ACC Phase D 해석은 크게 약화되며, $60,691.90 및 $59,080.00 유동성 재탐색 가능성이 커진다. 반대로 $67,255.40과 $74,868.00을 순차 회복하면 Spring 방어 및 재흡수 가능성이 높아지고, 이후 $80,600.00~$82,828.70 재진입 여부가 구조 회복의 핵심 확인 지점이 된다.",
      "data_quality": "medium",
      "metrics": {
        "acc_score": 92.5,
        "dis_score": 85.0,
        "regime": "ACC",
        "regime_state": "acc_candidate",
        "structure_bias": "bullish",
        "phase_context": "acc_candidate / accumulation / Phase D",
        "phases_detected": [
          "SC",
          "AR",
          "ST",
          "Spring",
          "TERMINAL_SPRING",
          "SOS"
        ],
        "last_phase": "SOS",
        "phase_candidates": [
          {
            "label": "SC",
            "side": "low",
            "idx": 92,
            "price": 80600.0,
            "color": "#ffd166"
          },
          {
            "label": "AR",
            "side": "high",
            "idx": 99,
            "price": 93080.0,
            "color": "#06d6a0"
          },
          {
            "label": "ST",
            "side": "low",
            "idx": 119,
            "price": 84408.6,
            "color": "#118ab2"
          },
          {
            "label": "Spring",
            "side": "low",
            "idx": 182,
            "price": 65595.7,
            "color": "#f9844a"
          },
          {
            "label": "TERMINAL_SPRING",
            "side": "low",
            "idx": 251,
            "price": 74868.0,
            "color": "#f3722c"
          },
          {
            "label": "SOS",
            "side": "high",
            "idx": 258,
            "price": 82828.7,
            "color": "#06d6a0"
          }
        ],
        "phase_structures": [
          {
            "structure_id": "1d_cycle_1",
            "sequence": 1,
            "timeframe": "1d",
            "regime": "accumulation",
            "role": "prior_completed_structure",
            "is_active": false,
            "is_completed": true,
            "is_confirmed": true,
            "structure_bias": "bullish",
            "phase_context": "accumulation",
            "start_idx": 92,
            "end_idx": 258,
            "phase_count": 6,
            "phases": [
              {
                "label": "SC",
                "side": "low",
                "idx": 92,
                "price": 80600.0,
                "color": "#ffd166",
                "dt": "2025-11-21 09:00:00+09:00"
              },
              {
                "label": "AR",
                "side": "high",
                "idx": 99,
                "price": 93080.0,
                "color": "#06d6a0",
                "dt": "2025-11-28 09:00:00+09:00"
              },
              {
                "label": "ST",
                "side": "low",
                "idx": 119,
                "price": 84408.6,
                "color": "#118ab2",
                "dt": "2025-12-18 09:00:00+09:00"
              },
              {
                "label": "Spring",
                "side": "low",
                "idx": 182,
                "price": 65595.7,
                "color": "#f9844a",
                "dt": "2026-02-19 09:00:00+09:00"
              },
              {
                "label": "TERMINAL_SPRING",
                "side": "low",
                "idx": 251,
                "price": 74868.0,
                "color": "#f3722c",
                "dt": "2026-04-29 09:00:00+09:00"
              },
              {
                "label": "SOS",
                "side": "high",
                "idx": 258,
                "price": 82828.7,
                "color": "#06d6a0",
                "dt": "2026-05-06 09:00:00+09:00"
              }
            ]
          },
          {
            "structure_id": "1d_cycle_2",
            "sequence": 2,
            "timeframe": "1d",
            "regime": "distribution",
            "role": "current_structure_candidate",
            "is_active": true,
            "is_completed": false,
            "is_confirmed": true,
            "structure_bias": "bearish",
            "phase_context": "distribution",
            "start_idx": 266,
            "end_idx": 298,
            "phase_count": 3,
            "phases": [
              {
                "label": "BC",
                "side": "high",
                "idx": 266,
                "price": 81999.0,
                "color": "#ffd166",
                "dt": "2026-05-14 09:00:00+09:00"
              },
              {
                "label": "AR",
                "side": "low",
                "idx": 288,
                "price": 59080.0,
                "color": "#06d6a0",
                "dt": "2026-06-05 09:00:00+09:00"
              },
              {
                "label": "ST",
                "side": "high",
                "idx": 298,
                "price": 67255.4,
                "color": "#118ab2",
                "dt": "2026-06-15 09:00:00+09:00"
              }
            ]
          }
        ],
        "active_structure_id": "1d_cycle_2",
        "primary_structure_id": "1d_cycle_1",
        "structure_count": 2,
        "regime_fitness": 0.9249999999999999,
        "current_event": "SOS",
        "major_phase": "D",
        "pos_in_range": 0.5,
        "main_range_low": 80600.0,
        "main_range_high": 93080.0
      },
      "raw_llm_response": "{\n  \"signal\": \"neutral\",\n  \"confidence\": 0.62,\n  \"structure_bias\": \"bullish\",\n  \"setup_bias\": \"neutral\",\n  \"setup_score\": 0.55,\n  \"setup_signals\": [\n    \"현재가 $66,445.70는 주 누적 범위 하단 $80,600.00 아래에 있어 Phase D/SOS 이후 수용이 확인되지 않음\",\n    \"현재가가 Spring 저점 $65,595.70 바로 위에 있어 재테스트 구간에 위치하지만, 아직 강한 재흡수 확인은 부족함\",\n    \"EMA20 $66,690.77이 단기 저항으로 바로 위에 있으며 현재가는 약 -0.4% 아래\",\n    \"최근 7일 고점 $67,255.40 회복 실패 시 Spring 재시험 또는 하방 유동성 확인 가능성\",\n    \"구조상 ACC 점수 92.5 및 regime_fitness 0.925로 누적 우위이나, SOS $82,828.70 이후 가격이 범위 내부 수용을 유지하지 못함\"\n  ],\n  \"reasoning\": \"지표상 공식 regime은 ACC이며 acc_score 92.5, regime_fitness 0.925로 구조적 해석은 누적 우위가 맞다. 주요 누적 앵커는 SC $80,600.00, AR $93,080.00, ST $84,408.60이며 이후 Spring $65,595.70, TERMINAL_SPRING $74,868.00, SOS $82,828.70까지 감지되었지만, 현재가 $66,445.70는 주 범위 하단 $80,600.00 및 SOS $82,828.70 아래에 있어 Phase D 강세 수용은 아직 확인되지 않았다. 따라서 structure_bias는 bullish로 유지하되, immediate path는 Spring $65,595.70 재테스트/방어 여부가 핵심인 중립적 테스트 국면으로 본다. 단기적으로는 $67,255.40 및 EMA20 $66,690.77 회복이 필요하며, 그 전까지는 LPS 또는 BU로 확정하기 어렵다.\",\n  \"key_levels\": {\n    \"support\": [\n      65595.7,\n      60691.9,\n      59080.0\n    ],\n    \"resistance\": [\n      66690.77,\n      67255.4,\n      74868.0,\n      80600.0,\n      82828.7,\n      93080.0\n    ]\n  },\n  \"time_horizon\": \"medium term\",\n  \"invalidation_level\": \"$65,595.70\",\n  \"risk_scenario\": \"반대 시나리오는 Spring $65,595.70 이탈 후 회복 실패이다. 이 경우 ACC Phase D 해석은 크게 약화되며, $60,691.90 및 $59,080.00 유동성 재탐색 가능성이 커진다. 반대로 $67,255.40과 $74,868.00을 순차 회복하면 Spring 방어 및 재흡수 가능성이 높아지고, 이후 $80,600.00~$82,828.70 재진입 여부가 구조 회복의 핵심 확인 지점이 된다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "harmonic": {
      "agent_id": "harmonic",
      "display_name": "Harmonic Specialist",
      "signal": "bullish",
      "confidence": 0.42,
      "structure_bias": "bearish",
      "setup_bias": "bullish",
      "setup_score": 0.62,
      "setup_signals": [
        "활성 고품질 bullish Gartley PRZ 진입: $65,999.53-$67,113.44, 현재가 $66,445.70",
        "PRZ 3중 Fib 컨플루언스 확인: ABCD + BC_EXT + XAD, prz_score 1.0, pattern_score 0.942",
        "Gartley 핵심 비율 양호: XAB 0.6129로 0.618 XA에 근접, ABC 0.7366",
        "현재가는 PRZ 중심 D 후보 $66,556.49 부근이며 price_to_prz_pct 0.17%로 반응 감시 구간",
        "완료된 bullish Gartley 후보는 $65,604.43-$67,113.23 PRZ에서 confirmed_reaction=true, reaction_score 0.9이나 candidate-tier라 보조 근거로만 사용"
      ],
      "reasoning": "현재 BTC는 $66,445.70으로 고품질 strict bullish Gartley의 활성 PRZ $65,999.53-$67,113.44 안에 있으며, 해당 PRZ는 ABCD, BC extension, XAD가 겹친 3중 컨플루언스 구간입니다. 다만 이 최상위 패턴은 아직 forming 상태이고 confirmed_reaction=false이므로, 거버넌스상 독립적으로 메인 경로를 뒤집을 수 없고 ‘상승 반응 후보 구간’으로만 취급합니다. 구조 측면에서는 가격이 EMA20 $66,690.77 아래이고 EMA120 $74,246.51 및 EMA240 $81,301.23보다 크게 낮아 일봉 확인 구조는 아직 약세로 판정합니다. 따라서 구조_bias는 bearish이나, 실행 setup_bias는 $66k대 PRZ 방어를 전제로 bullish이며, 확인 신호는 $67,113.44 상단 회복 후 $67,871.53 TP1 방향으로의 수용 여부입니다.",
      "key_levels": {
        "support": [
          65999.53,
          65676.1,
          65595.7,
          64824.43,
          64325.45,
          62684.52
        ],
        "resistance": [
          66690.77,
          67113.44,
          67255.4,
          67871.53,
          68683.96,
          69999.0,
          74246.51
        ]
      },
      "time_horizon": "medium term",
      "invalidation_level": "$65,595.70",
      "risk_scenario": "$65,999.53-$67,113.44 PRZ에서 명확한 반등 확인 없이 $65,595.70 X 저점을 하향 이탈하면 bullish Gartley setup은 실패로 간주됩니다. 이 경우 $64,824.43-$64,325.45 인근의 하위 bullish Bat/Gartley PRZ로 유동성이 이동할 수 있으며, 더 깊게는 watch-tier Butterfly PRZ $62,684.52-$64,464.12까지 하락 반응 구간이 열립니다. 반대로 $67,113.44를 회복하고 $67,871.53을 돌파하면 $68,683.96, 이후 $69,999.00까지 Gartley TP ladder가 활성화됩니다.",
      "data_quality": "high",
      "metrics": {
        "patterns_found": 208,
        "completed_patterns_found": 81,
        "forming_d_prz_found": 127,
        "swing_orders_scanned": [
          3,
          5,
          8
        ],
        "swing_search_window": 30,
        "multiscale_swings_scanned": 59,
        "swing_highs_scanned": 28,
        "swing_lows_scanned": 31,
        "timeframe": "1d",
        "prz_active_threshold_pct": 1.0,
        "prz_nearby_threshold_pct": 2.0,
        "prz_watch_threshold_pct": 4.0,
        "prz_max_width_pct": 1.8,
        "quality_counts": {
          "high": 3,
          "medium": 53,
          "low": 152
        },
        "prz_status_counts": {
          "active": 26,
          "nearby": 9,
          "watch": 17,
          "far": 156,
          "forming": 95
        },
        "high_confluence_prz_count": 21,
        "strict_patterns_found": 56,
        "candidate_patterns_found": 152,
        "active_patterns_at_prz": 26,
        "nearby_patterns": 9,
        "all_patterns": [
          "gartley",
          "bat",
          "shark",
          "butterfly",
          "crab",
          "gartley",
          "butterfly",
          "bat",
          "butterfly",
          "bat",
          "gartley",
          "bat",
          "butterfly",
          "gartley",
          "butterfly",
          "butterfly",
          "gartley",
          "shark",
          "shark",
          "gartley",
          "shark",
          "bat",
          "shark",
          "gartley",
          "shark",
          "gartley",
          "bat",
          "crab",
          "crab",
          "crab",
          "crab",
          "crab",
          "crab",
          "shark",
          "shark",
          "butterfly",
          "butterfly",
          "gartley",
          "bat",
          "shark",
          "bat",
          "bat",
          "gartley",
          "crab",
          "shark",
          "butterfly",
          "bat",
          "butterfly",
          "shark",
          "bat",
          "butterfly",
          "bat",
          "bat",
          "butterfly",
          "shark",
          "crab",
          "crab",
          "crab",
          "shark",
          "butterfly",
          "crab",
          "gartley",
          "bat",
          "shark",
          "gartley",
          "shark",
          "butterfly",
          "bat",
          "butterfly",
          "crab",
          "shark",
          "butterfly",
          "crab",
          "shark",
          "bat",
          "butterfly",
          "crab",
          "crab",
          "gartley",
          "bat",
          "gartley",
          "butterfly",
          "crab",
          "crab",
          "shark",
          "crab",
          "gartley",
          "shark",
          "shark",
          "shark",
          "crab",
          "crab",
          "crab",
          "butterfly",
          "butterfly",
          "shark",
          "crab",
          "gartley",
          "shark",
          "shark",
          "butterfly",
          "crab",
          "shark",
          "shark",
          "shark",
          "crab",
          "shark",
          "crab",
          "butterfly",
          "crab",
          "bat",
          "bat",
          "butterfly",
          "shark",
          "butterfly",
          "crab",
          "gartley",
          "butterfly",
          "butterfly",
          "bat",
          "crab",
          "crab",
          "shark",
          "bat",
          "bat",
          "bat",
          "shark",
          "crab",
          "crab",
          "butterfly",
          "shark",
          "butterfly",
          "butterfly",
          "gartley",
          "crab",
          "crab",
          "shark",
          "butterfly",
          "bat",
          "crab",
          "crab",
          "crab",
          "crab",
          "butterfly",
          "butterfly",
          "shark",
          "butterfly",
          "butterfly",
          "butterfly",
          "butterfly",
          "bat",
          "butterfly",
          "crab",
          "shark",
          "butterfly",
          "gartley",
          "gartley",
          "crab",
          "shark",
          "bat",
          "shark",
          "bat",
          "crab",
          "gartley",
          "crab",
          "crab",
          "butterfly",
          "shark",
          "crab",
          "butterfly",
          "crab",
          "crab",
          "shark",
          "shark",
          "crab",
          "butterfly",
          "butterfly",
          "crab",
          "bat",
          "gartley",
          "crab",
          "crab",
          "crab",
          "butterfly",
          "bat",
          "bat",
          "butterfly",
          "bat",
          "butterfly",
          "gartley",
          "butterfly",
          "gartley",
          "shark",
          "shark",
          "shark",
          "shark",
          "crab",
          "butterfly",
          "crab",
          "crab",
          "crab",
          "shark",
          "gartley",
          "crab",
          "butterfly",
          "crab",
          "shark",
          "crab"
        ],
        "all_signals": [
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish"
        ],
        "best_pattern": "gartley",
        "best_pattern_quality": "strict",
        "best_quality": "high",
        "best_pattern_score": 0.942,
        "best_completion_status": "forming",
        "nearest_pattern": "bat",
        "nearest_prz": 66406.96,
        "price_to_prz": -0.06,
        "prz_range": [
          66298.48,
          66515.44
        ],
        "council_relevant_prz_count": 1,
        "directional_influence_prz_count": 1,
        "confirmed_reaction_prz_count": 0,
        "validated_harmonic_tp_count": 0,
        "pattern_candidates": [
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.942,
            "ratio_score": 0.97,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 66556.49,
            "prz_range": [
              65999.53,
              67113.44
            ],
            "prz_width_pct": 1.674,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.17,
            "price_to_prz_pct_raw": 0.1667,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 66556.49,
              "a_price": 69999.0,
              "tp1_ad_382": 67871.53,
              "tp2_ad_618": 68683.96,
              "tp3_a_or_structure_liquidity": 69999.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6129,
              "ABC": 0.7366
            },
            "x_price": 65595.7,
            "x_idx": 182,
            "x_order": 3,
            "a_price": 69999.0,
            "a_idx": 188,
            "a_order": 3,
            "b_price": 67300.0,
            "b_idx": 213,
            "b_order": 3,
            "c_price": 69288.0,
            "c_idx": 223,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.863,
            "ratio_score": 0.979,
            "prz_score": 0.861,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 68541.75,
            "prz_range": [
              67557.47,
              69526.03
            ],
            "prz_width_pct": 2.872,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 3.15,
            "price_to_prz_pct_raw": 3.1545,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 68541.75,
              "a_price": 82828.7,
              "tp1_ad_382": 73999.36,
              "tp2_ad_618": 77371.08,
              "tp3_a_or_structure_liquidity": 82828.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5028,
              "ABC": 0.4491
            },
            "x_price": 65676.1,
            "x_idx": 224,
            "x_order": 3,
            "a_price": 82828.7,
            "a_idx": 258,
            "a_order": 8,
            "b_price": 74203.6,
            "b_idx": 275,
            "b_order": 3,
            "c_price": 78077.1,
            "c_idx": 278,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "low",
            "pattern_score": 0.773,
            "ratio_score": 0.776,
            "prz_score": 0.87,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 63574.32,
            "prz_range": [
              62684.52,
              64464.12
            ],
            "prz_width_pct": 2.799,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -4.32,
            "price_to_prz_pct_raw": -4.3214,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 63574.32,
              "a_price": 75998.9,
              "tp1_ad_382": 68320.51,
              "tp2_ad_618": 71252.71,
              "tp3_a_or_structure_liquidity": 75998.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.8341,
              "ABC": 0.5403
            },
            "x_price": 65569.2,
            "x_idx": 199,
            "x_order": 5,
            "a_price": 75998.9,
            "a_idx": 208,
            "a_order": 8,
            "b_price": 67300.0,
            "b_idx": 213,
            "b_order": 3,
            "c_price": 71999.9,
            "c_idx": 216,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.771,
            "ratio_score": 0.766,
            "prz_score": 0.922,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 69629.3,
            "prz_range": [
              68792.11,
              70466.5
            ],
            "prz_width_pct": 2.405,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 4.79,
            "price_to_prz_pct_raw": 4.7913,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 69629.3,
              "a_price": 65595.7,
              "tp1_ad_382": 68088.47,
              "tp2_ad_618": 67136.54,
              "tp3_a_or_structure_liquidity": 65595.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5786,
              "ABC": 0.4487
            },
            "x_price": 70938.5,
            "x_idx": 178,
            "x_order": 5,
            "a_price": 65595.7,
            "a_idx": 182,
            "a_order": 3,
            "b_price": 68687.0,
            "b_idx": 184,
            "b_order": 3,
            "c_price": 67300.0,
            "c_idx": 213,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.693,
            "ratio_score": 0.663,
            "prz_score": 0.922,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 69288.0,
            "prz_range": [
              68792.11,
              70466.5
            ],
            "prz_width_pct": 2.405,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 4.79,
            "price_to_prz_pct_raw": 4.7913,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected"
              ],
              "reaction_score": 0.8,
              "reaction_detail": {
                "reaction_score": 0.8,
                "reaction_move_ratio_ad": 0.978,
                "adverse_move_ratio_ad": 1.512,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected"
                ]
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 69629.3,
              "a_price": 65595.7,
              "tp1_ad_382": 68088.47,
              "tp2_ad_618": 67136.54,
              "tp3_a_or_structure_liquidity": 65595.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5786,
              "ABC": 0.4487,
              "BCD": 1.4333,
              "XAD": 0.6911
            },
            "x_price": 70938.5,
            "x_idx": 178,
            "x_order": 5,
            "a_price": 65595.7,
            "a_idx": 182,
            "a_order": 3,
            "b_price": 68687.0,
            "b_idx": 184,
            "b_order": 3,
            "c_price": 67300.0,
            "c_idx": 213,
            "c_order": 3,
            "d_idx": 223
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.673,
            "ratio_score": 0.452,
            "prz_score": 0.939,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 65676.1,
            "prz_range": [
              65604.43,
              67113.23
            ],
            "prz_width_pct": 2.274,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.13,
            "price_to_prz_pct_raw": -0.1307,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "post_D_close_progress"
              ],
              "reaction_score": 0.9,
              "reaction_detail": {
                "reaction_score": 0.9,
                "reaction_move_ratio_ad": 2.39,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 66358.83,
              "a_price": 69999.0,
              "tp1_ad_382": 67749.37,
              "tp2_ad_618": 68608.46,
              "tp3_a_or_structure_liquidity": 69999.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6129,
              "ABC": 0.7366,
              "BCD": 1.8169,
              "XAD": 0.9817
            },
            "x_price": 65595.7,
            "x_idx": 182,
            "x_order": 3,
            "a_price": 69999.0,
            "a_idx": 188,
            "a_order": 3,
            "b_price": 67300.0,
            "b_idx": 213,
            "b_order": 3,
            "c_price": 69288.0,
            "c_idx": 223,
            "c_order": 3,
            "d_idx": 224
          },
          {
            "pattern": "shark",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.858,
            "ratio_score": 1.0,
            "prz_score": 0.783,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 67139.89,
            "prz_range": [
              66685.67,
              67594.11
            ],
            "prz_width_pct": 1.353,
            "prz_confluence_count": 2,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT"
            ],
            "price_to_prz_pct": 1.04,
            "price_to_prz_pct_raw": 1.0448,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "shark",
              "d_price": 67139.89,
              "a_price": 74046.5,
              "tp1_ad_382": 69778.22,
              "tp2_ad_618": 71408.18,
              "tp3_a_or_structure_liquidity": 74046.5,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.595,
              "ABC": 1.2303
            },
            "x_price": 59800.0,
            "x_idx": 169,
            "x_order": 8,
            "a_price": 74046.5,
            "a_idx": 195,
            "a_order": 8,
            "b_price": 65569.2,
            "b_idx": 199,
            "b_order": 5,
            "c_price": 75998.9,
            "c_idx": 208,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.841,
            "ratio_score": 0.95,
            "prz_score": 0.752,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 65542.24,
            "prz_range": [
              64324.68,
              66759.8
            ],
            "prz_width_pct": 3.715,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.36,
            "price_to_prz_pct_raw": -1.3597,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 65542.24,
              "a_price": 74046.5,
              "tp1_ad_382": 68790.87,
              "tp2_ad_618": 70797.87,
              "tp3_a_or_structure_liquidity": 74046.5,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6096,
              "ABC": 0.6966
            },
            "x_price": 62979.5,
            "x_idx": 191,
            "x_order": 3,
            "a_price": 74046.5,
            "a_idx": 195,
            "a_order": 8,
            "b_price": 67300.0,
            "b_idx": 213,
            "b_order": 3,
            "c_price": 71999.9,
            "c_idx": 216,
            "c_order": 5,
            "d_idx": null
          }
        ],
        "council_relevant_prz": [
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.942,
            "ratio_score": 0.97,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 66556.49,
            "prz_range": [
              65999.53,
              67113.44
            ],
            "prz_width_pct": 1.674,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.17,
            "price_to_prz_pct_raw": 0.1667,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 66556.49,
              "a_price": 69999.0,
              "tp1_ad_382": 67871.53,
              "tp2_ad_618": 68683.96,
              "tp3_a_or_structure_liquidity": 69999.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6129,
              "ABC": 0.7366
            },
            "x_price": 65595.7,
            "x_idx": 182,
            "x_order": 3,
            "a_price": 69999.0,
            "a_idx": 188,
            "a_order": 3,
            "b_price": 67300.0,
            "b_idx": 213,
            "b_order": 3,
            "c_price": 69288.0,
            "c_idx": 223,
            "c_order": 3,
            "d_idx": null
          }
        ],
        "report_detail_candidates": [
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.942,
            "ratio_score": 0.97,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 66556.49,
            "prz_range": [
              65999.53,
              67113.44
            ],
            "prz_width_pct": 1.674,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.17,
            "price_to_prz_pct_raw": 0.1667,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 66556.49,
              "a_price": 69999.0,
              "tp1_ad_382": 67871.53,
              "tp2_ad_618": 68683.96,
              "tp3_a_or_structure_liquidity": 69999.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6129,
              "ABC": 0.7366
            },
            "x_price": 65595.7,
            "x_idx": 182,
            "x_order": 3,
            "a_price": 69999.0,
            "a_idx": 188,
            "a_order": 3,
            "b_price": 67300.0,
            "b_idx": 213,
            "b_order": 3,
            "c_price": 69288.0,
            "c_idx": 223,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.863,
            "ratio_score": 0.979,
            "prz_score": 0.861,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 68541.75,
            "prz_range": [
              67557.47,
              69526.03
            ],
            "prz_width_pct": 2.872,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 3.15,
            "price_to_prz_pct_raw": 3.1545,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 68541.75,
              "a_price": 82828.7,
              "tp1_ad_382": 73999.36,
              "tp2_ad_618": 77371.08,
              "tp3_a_or_structure_liquidity": 82828.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5028,
              "ABC": 0.4491
            },
            "x_price": 65676.1,
            "x_idx": 224,
            "x_order": 3,
            "a_price": 82828.7,
            "a_idx": 258,
            "a_order": 8,
            "b_price": 74203.6,
            "b_idx": 275,
            "b_order": 3,
            "c_price": 78077.1,
            "c_idx": 278,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "low",
            "pattern_score": 0.773,
            "ratio_score": 0.776,
            "prz_score": 0.87,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 63574.32,
            "prz_range": [
              62684.52,
              64464.12
            ],
            "prz_width_pct": 2.799,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -4.32,
            "price_to_prz_pct_raw": -4.3214,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 63574.32,
              "a_price": 75998.9,
              "tp1_ad_382": 68320.51,
              "tp2_ad_618": 71252.71,
              "tp3_a_or_structure_liquidity": 75998.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.8341,
              "ABC": 0.5403
            },
            "x_price": 65569.2,
            "x_idx": 199,
            "x_order": 5,
            "a_price": 75998.9,
            "a_idx": 208,
            "a_order": 8,
            "b_price": 67300.0,
            "b_idx": 213,
            "b_order": 3,
            "c_price": 71999.9,
            "c_idx": 216,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.771,
            "ratio_score": 0.766,
            "prz_score": 0.922,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 69629.3,
            "prz_range": [
              68792.11,
              70466.5
            ],
            "prz_width_pct": 2.405,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 4.79,
            "price_to_prz_pct_raw": 4.7913,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 69629.3,
              "a_price": 65595.7,
              "tp1_ad_382": 68088.47,
              "tp2_ad_618": 67136.54,
              "tp3_a_or_structure_liquidity": 65595.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5786,
              "ABC": 0.4487
            },
            "x_price": 70938.5,
            "x_idx": 178,
            "x_order": 5,
            "a_price": 65595.7,
            "a_idx": 182,
            "a_order": 3,
            "b_price": 68687.0,
            "b_idx": 184,
            "b_order": 3,
            "c_price": 67300.0,
            "c_idx": 213,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.693,
            "ratio_score": 0.663,
            "prz_score": 0.922,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 69288.0,
            "prz_range": [
              68792.11,
              70466.5
            ],
            "prz_width_pct": 2.405,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 4.79,
            "price_to_prz_pct_raw": 4.7913,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected"
              ],
              "reaction_score": 0.8,
              "reaction_detail": {
                "reaction_score": 0.8,
                "reaction_move_ratio_ad": 0.978,
                "adverse_move_ratio_ad": 1.512,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected"
                ]
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 69629.3,
              "a_price": 65595.7,
              "tp1_ad_382": 68088.47,
              "tp2_ad_618": 67136.54,
              "tp3_a_or_structure_liquidity": 65595.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5786,
              "ABC": 0.4487,
              "BCD": 1.4333,
              "XAD": 0.6911
            },
            "x_price": 70938.5,
            "x_idx": 178,
            "x_order": 5,
            "a_price": 65595.7,
            "a_idx": 182,
            "a_order": 3,
            "b_price": 68687.0,
            "b_idx": 184,
            "b_order": 3,
            "c_price": 67300.0,
            "c_idx": 213,
            "c_order": 3,
            "d_idx": 223
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.673,
            "ratio_score": 0.452,
            "prz_score": 0.939,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 65676.1,
            "prz_range": [
              65604.43,
              67113.23
            ],
            "prz_width_pct": 2.274,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.13,
            "price_to_prz_pct_raw": -0.1307,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "post_D_close_progress"
              ],
              "reaction_score": 0.9,
              "reaction_detail": {
                "reaction_score": 0.9,
                "reaction_move_ratio_ad": 2.39,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 66358.83,
              "a_price": 69999.0,
              "tp1_ad_382": 67749.37,
              "tp2_ad_618": 68608.46,
              "tp3_a_or_structure_liquidity": 69999.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6129,
              "ABC": 0.7366,
              "BCD": 1.8169,
              "XAD": 0.9817
            },
            "x_price": 65595.7,
            "x_idx": 182,
            "x_order": 3,
            "a_price": 69999.0,
            "a_idx": 188,
            "a_order": 3,
            "b_price": 67300.0,
            "b_idx": 213,
            "b_order": 3,
            "c_price": 69288.0,
            "c_idx": 223,
            "c_order": 3,
            "d_idx": 224
          },
          {
            "pattern": "shark",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.858,
            "ratio_score": 1.0,
            "prz_score": 0.783,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 67139.89,
            "prz_range": [
              66685.67,
              67594.11
            ],
            "prz_width_pct": 1.353,
            "prz_confluence_count": 2,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT"
            ],
            "price_to_prz_pct": 1.04,
            "price_to_prz_pct_raw": 1.0448,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "shark",
              "d_price": 67139.89,
              "a_price": 74046.5,
              "tp1_ad_382": 69778.22,
              "tp2_ad_618": 71408.18,
              "tp3_a_or_structure_liquidity": 74046.5,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.595,
              "ABC": 1.2303
            },
            "x_price": 59800.0,
            "x_idx": 169,
            "x_order": 8,
            "a_price": 74046.5,
            "a_idx": 195,
            "a_order": 8,
            "b_price": 65569.2,
            "b_idx": 199,
            "b_order": 5,
            "c_price": 75998.9,
            "c_idx": 208,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.841,
            "ratio_score": 0.95,
            "prz_score": 0.752,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 65542.24,
            "prz_range": [
              64324.68,
              66759.8
            ],
            "prz_width_pct": 3.715,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.36,
            "price_to_prz_pct_raw": -1.3597,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 65542.24,
              "a_price": 74046.5,
              "tp1_ad_382": 68790.87,
              "tp2_ad_618": 70797.87,
              "tp3_a_or_structure_liquidity": 74046.5,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6096,
              "ABC": 0.6966
            },
            "x_price": 62979.5,
            "x_idx": 191,
            "x_order": 3,
            "a_price": 74046.5,
            "a_idx": 195,
            "a_order": 8,
            "b_price": 67300.0,
            "b_idx": 213,
            "b_order": 3,
            "c_price": 71999.9,
            "c_idx": 216,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.837,
            "ratio_score": 1.0,
            "prz_score": 0.732,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 68206.0,
            "prz_range": [
              66886.33,
              69525.66
            ],
            "prz_width_pct": 3.87,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 2.65,
            "price_to_prz_pct_raw": 2.6492,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 68206.0,
              "a_price": 82828.7,
              "tp1_ad_382": 73791.87,
              "tp2_ad_618": 77242.83,
              "tp3_a_or_structure_liquidity": 82828.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4816,
              "ABC": 0.4491
            },
            "x_price": 64918.2,
            "x_idx": 220,
            "x_order": 8,
            "a_price": 82828.7,
            "a_idx": 258,
            "a_order": 8,
            "b_price": 74203.6,
            "b_idx": 275,
            "b_order": 3,
            "c_price": 78077.1,
            "c_idx": 278,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.832,
            "ratio_score": 0.992,
            "prz_score": 0.783,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": false,
            "d_price": 67591.59,
            "prz_range": [
              67173.9,
              68009.28
            ],
            "prz_width_pct": 1.236,
            "prz_confluence_count": 2,
            "prz_fib_families": [
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.72,
            "price_to_prz_pct_raw": 1.7245,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 67591.59,
              "a_price": 79455.0,
              "tp1_ad_382": 72123.41,
              "tp2_ad_618": 74923.18,
              "tp3_a_or_structure_liquidity": 79455.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.3811,
              "ABC": 0.7376
            },
            "x_price": 65676.1,
            "x_idx": 224,
            "x_order": 3,
            "a_price": 79455.0,
            "a_idx": 249,
            "a_order": 5,
            "b_price": 74203.6,
            "b_idx": 275,
            "b_order": 3,
            "c_price": 78077.1,
            "c_idx": 278,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.831,
            "ratio_score": 1.0,
            "prz_score": 0.783,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": false,
            "d_price": 64824.43,
            "prz_range": [
              64325.45,
              65323.41
            ],
            "prz_width_pct": 1.539,
            "prz_confluence_count": 2,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT"
            ],
            "price_to_prz_pct": -2.44,
            "price_to_prz_pct_raw": -2.44,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 64824.43,
              "a_price": 74046.5,
              "tp1_ad_382": 68347.26,
              "tp2_ad_618": 70523.67,
              "tp3_a_or_structure_liquidity": 74046.5,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4736,
              "ABC": 0.6966
            },
            "x_price": 59800.0,
            "x_idx": 169,
            "x_order": 8,
            "a_price": 74046.5,
            "a_idx": 195,
            "a_order": 8,
            "b_price": 67300.0,
            "b_idx": 213,
            "b_order": 3,
            "c_price": 71999.9,
            "c_idx": 216,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.831,
            "ratio_score": 0.942,
            "prz_score": 0.814,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": false,
            "d_price": 64283.69,
            "prz_range": [
              63244.56,
              65322.83
            ],
            "prz_width_pct": 3.233,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -3.25,
            "price_to_prz_pct_raw": -3.2538,
            "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": 64283.69,
              "a_price": 74046.5,
              "tp1_ad_382": 68013.08,
              "tp2_ad_618": 70317.11,
              "tp3_a_or_structure_liquidity": 74046.5,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7983,
              "ABC": 0.6966
            },
            "x_price": 65595.7,
            "x_idx": 182,
            "x_order": 3,
            "a_price": 74046.5,
            "a_idx": 195,
            "a_order": 8,
            "b_price": 67300.0,
            "b_idx": 213,
            "b_order": 3,
            "c_price": 71999.9,
            "c_idx": 216,
            "c_order": 5,
            "d_idx": null
          }
        ],
        "actionable_patterns_list": [
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.942,
            "prz_proximity": "active",
            "prz_range": [
              65999.53,
              67113.44
            ],
            "prz_reversal_direction": "up",
            "price_to_prz_pct": 0.17,
            "high_confluence_prz": true,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 66556.49,
              "a_price": 69999.0,
              "tp1_ad_382": 67871.53,
              "tp2_ad_618": 68683.96,
              "tp3_a_or_structure_liquidity": 69999.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "GARTLEY FORMING HIGH PRZ $65,999.53-$67,113.44: expected reversal UP if price reacts in zone"
          }
        ],
        "best_council_prz": {
          "pattern": "gartley",
          "signal": "bullish",
          "completion_status": "forming",
          "pattern_quality": "strict",
          "quality": "high",
          "pattern_score": 0.942,
          "ratio_score": 0.97,
          "prz_score": 1.0,
          "prz_proximity": "active",
          "action_status": "active",
          "high_confluence_prz": true,
          "d_price": 66556.49,
          "prz_range": [
            65999.53,
            67113.44
          ],
          "prz_width_pct": 1.674,
          "prz_confluence_count": 3,
          "prz_fib_families": [
            "ABCD",
            "BC_EXT",
            "XAD"
          ],
          "price_to_prz_pct": 0.17,
          "price_to_prz_pct_raw": 0.1667,
          "harmonic_vote_state": {
            "authority": "pre_confirmation_reversal_candidate",
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "confirmation_reasons": [],
            "reaction_score": 0.0,
            "reaction_detail": {
              "reaction_score": 0.0,
              "reasons": []
            },
            "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
            "standalone_path_override_allowed": false
          },
          "directional_vote_weight": 0.35,
          "confirmed_reaction": false,
          "standalone_path_override_allowed": false,
          "tp_ladder": {
            "direction": "bullish",
            "source": "gartley",
            "d_price": 66556.49,
            "a_price": 69999.0,
            "tp1_ad_382": 67871.53,
            "tp2_ad_618": 68683.96,
            "tp3_a_or_structure_liquidity": 69999.0,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          "ratios": {
            "XAB": 0.6129,
            "ABC": 0.7366
          },
          "x_price": 65595.7,
          "x_idx": 182,
          "x_order": 3,
          "a_price": 69999.0,
          "a_idx": 188,
          "a_order": 3,
          "b_price": 67300.0,
          "b_idx": 213,
          "b_order": 3,
          "c_price": 69288.0,
          "c_idx": 223,
          "c_order": 3,
          "d_idx": null
        },
        "best_tp_ladder": {
          "direction": "bullish",
          "source": "gartley",
          "d_price": 66556.49,
          "a_price": 69999.0,
          "tp1_ad_382": 67871.53,
          "tp2_ad_618": 68683.96,
          "tp3_a_or_structure_liquidity": 69999.0,
          "note": "Use as strong TP ladder context; not standalone path authority."
        },
        "tp_ladder": [
          {
            "direction": "bullish",
            "source": "gartley",
            "d_price": 66556.49,
            "a_price": 69999.0,
            "tp1_ad_382": 67871.53,
            "tp2_ad_618": 68683.96,
            "tp3_a_or_structure_liquidity": 69999.0,
            "note": "Use as strong TP ladder context; not standalone path authority."
          }
        ],
        "validated_tp_ladder": [],
        "harmonic_governance": {
          "role": "PRZ reaction + TP ladder confluence, not standalone path engine",
          "pre_confirmation_weight_range": [
            0.25,
            0.35
          ],
          "post_confirmation_vote_weight_range": [
            0.5,
            0.6
          ],
          "standalone_path_override_allowed": false,
          "opposes_core_path_policy": "branch/reversal-risk/reaction-zone unless lower-TF structure and derivatives also confirm",
          "aligns_with_core_path_policy": "modest confidence lift plus strong TP ladder influence"
        },
        "execution_readiness": "ready",
        "directional_scores": {
          "bullish": 0.199,
          "bearish": 0
        },
        "directional_score_total": 0.199,
        "directional_dominance": 1.0
      },
      "raw_llm_response": "{\n  \"signal\": \"bullish\",\n  \"confidence\": 0.42,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.62,\n  \"setup_signals\": [\n    \"활성 고품질 bullish Gartley PRZ 진입: $65,999.53-$67,113.44, 현재가 $66,445.70\",\n    \"PRZ 3중 Fib 컨플루언스 확인: ABCD + BC_EXT + XAD, prz_score 1.0, pattern_score 0.942\",\n    \"Gartley 핵심 비율 양호: XAB 0.6129로 0.618 XA에 근접, ABC 0.7366\",\n    \"현재가는 PRZ 중심 D 후보 $66,556.49 부근이며 price_to_prz_pct 0.17%로 반응 감시 구간\",\n    \"완료된 bullish Gartley 후보는 $65,604.43-$67,113.23 PRZ에서 confirmed_reaction=true, reaction_score 0.9이나 candidate-tier라 보조 근거로만 사용\"\n  ],\n  \"reasoning\": \"현재 BTC는 $66,445.70으로 고품질 strict bullish Gartley의 활성 PRZ $65,999.53-$67,113.44 안에 있으며, 해당 PRZ는 ABCD, BC extension, XAD가 겹친 3중 컨플루언스 구간입니다. 다만 이 최상위 패턴은 아직 forming 상태이고 confirmed_reaction=false이므로, 거버넌스상 독립적으로 메인 경로를 뒤집을 수 없고 ‘상승 반응 후보 구간’으로만 취급합니다. 구조 측면에서는 가격이 EMA20 $66,690.77 아래이고 EMA120 $74,246.51 및 EMA240 $81,301.23보다 크게 낮아 일봉 확인 구조는 아직 약세로 판정합니다. 따라서 구조_bias는 bearish이나, 실행 setup_bias는 $66k대 PRZ 방어를 전제로 bullish이며, 확인 신호는 $67,113.44 상단 회복 후 $67,871.53 TP1 방향으로의 수용 여부입니다.\",\n  \"key_levels\": {\n    \"support\": [\n      65999.53,\n      65676.1,\n      65595.7,\n      64824.43,\n      64325.45,\n      62684.52\n    ],\n    \"resistance\": [\n      66690.77,\n      67113.44,\n      67255.4,\n      67871.53,\n      68683.96,\n      69999.0,\n      74246.51\n    ]\n  },\n  \"time_horizon\": \"medium term\",\n  \"invalidation_level\": \"$65,595.70\",\n  \"risk_scenario\": \"$65,999.53-$67,113.44 PRZ에서 명확한 반등 확인 없이 $65,595.70 X 저점을 하향 이탈하면 bullish Gartley setup은 실패로 간주됩니다. 이 경우 $64,824.43-$64,325.45 인근의 하위 bullish Bat/Gartley PRZ로 유동성이 이동할 수 있으며, 더 깊게는 watch-tier Butterfly PRZ $62,684.52-$64,464.12까지 하락 반응 구간이 열립니다. 반대로 $67,113.44를 회복하고 $67,871.53을 돌파하면 $68,683.96, 이후 $69,999.00까지 Gartley TP ladder가 활성화됩니다.\",\n  \"data_quality\": \"high\"\n}"
    },
    "candlestick": {
      "agent_id": "candlestick",
      "display_name": "Candlestick Reader",
      "signal": "bullish",
      "confidence": 0.58,
      "structure_bias": "bearish",
      "setup_bias": "bullish",
      "setup_score": 0.62,
      "setup_signals": [
        "현재가 $66,445.70가 EMA120 $74,246.51 및 EMA240 $81,301.23 아래에 있어 큰 구조는 약세이나, 장기 평균 대비 할인 구간에서 반등 시도",
        "최근 5개 일봉이 ▼-0.1% 이후 ▲+1.4%, ▲+2.0%, ▲+0.9%, ▲+0.2%로 4연속 양봉성 회복 흐름",
        "최근 패턴 중 morning_star@290 품질 0.655로 가장 강한 강세 반전 후보",
        "bullish_engulfing@290, @294, @296이 반복 출현하며 단기 매수 압력 누적",
        "7일 저점 $60,691.90에서 7일 고점 $67,255.40 방향으로 반등했으나 EMA20 $66,690.77과 7일 고점 $67,255.40 저항 확인 필요"
      ],
      "reasoning": "현재 BTC는 $66,445.70으로 EMA20 $66,690.77 바로 아래에 있어 단기 저항을 아직 명확히 돌파하지 못했지만, 최근 4개 양봉과 bullish_engulfing 3회, morning_star 1회가 단기 반등 셋업을 지지한다. 다만 EMA120 $74,246.51 대비 -10.5%, EMA240 $81,301.23 대비 -18.3% 아래에 위치해 확인된 중기·장기 구조는 여전히 bearish로 판단한다. 패턴 점수는 bull_score 3.05가 bear_score 0.80보다 우세하지만, best_pattern_quality가 0.655로 중간 수준이고 high_volume_patterns가 없어 거래량 확인은 부족하다. 핵심은 EMA20 $66,690.77 및 7일 고점 $67,255.40 상단 수용 여부이며, 이를 돌파하지 못하면 반등은 약세 구조 내 기술적 되돌림에 그칠 수 있다.",
      "key_levels": {
        "support": [
          60691.9,
          64445.7,
          66690.77
        ],
        "resistance": [
          67255.4,
          74246.51,
          81301.23
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$60,691.90",
      "risk_scenario": "반대로 $66,690.77 EMA20과 $67,255.40 7일 고점을 돌파하지 못하고 거절되면, 최근 bullish engulfing 및 morning star 셋업은 실패 신호가 되며 $60,691.90 재시험 가능성이 커진다. 특히 $60,691.90이 일봉 종가 기준으로 이탈되면 단기 강세 셋업은 무효화되고, EMA120 $74,246.51 아래의 기존 bearish structure가 재가속될 수 있다.",
      "data_quality": "medium",
      "metrics": {
        "total_patterns_detected": 134,
        "recent_patterns": 7,
        "pattern_list": [
          "bullish_engulfing@290",
          "bullish_engulfing@294",
          "bullish_engulfing@296",
          "morning_star@290",
          "evening_star@292",
          "doji@293",
          "doji@295"
        ],
        "atr_value": 2252.22,
        "vol_avg_20": 198509.41,
        "high_volume_patterns": [],
        "pattern_candidates": [
          {
            "pattern": "morning_star",
            "signal": "bullish",
            "pattern_quality": 0.655,
            "tier": "strict",
            "high_volume": false
          },
          {
            "pattern": "bullish_engulfing",
            "signal": "bullish",
            "pattern_quality": 0.63,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "bullish_engulfing",
            "signal": "bullish",
            "pattern_quality": 0.623,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "bullish_engulfing",
            "signal": "bullish",
            "pattern_quality": 0.604,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "evening_star",
            "signal": "bearish",
            "pattern_quality": 0.459,
            "tier": "candidate",
            "high_volume": false
          }
        ],
        "best_pattern_quality": 0.655,
        "bull_score": 3.05,
        "bear_score": 0.8
      },
      "raw_llm_response": "{\n  \"signal\": \"bullish\",\n  \"confidence\": 0.58,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.62,\n  \"setup_signals\": [\n    \"현재가 $66,445.70가 EMA120 $74,246.51 및 EMA240 $81,301.23 아래에 있어 큰 구조는 약세이나, 장기 평균 대비 할인 구간에서 반등 시도\",\n    \"최근 5개 일봉이 ▼-0.1% 이후 ▲+1.4%, ▲+2.0%, ▲+0.9%, ▲+0.2%로 4연속 양봉성 회복 흐름\",\n    \"최근 패턴 중 morning_star@290 품질 0.655로 가장 강한 강세 반전 후보\",\n    \"bullish_engulfing@290, @294, @296이 반복 출현하며 단기 매수 압력 누적\",\n    \"7일 저점 $60,691.90에서 7일 고점 $67,255.40 방향으로 반등했으나 EMA20 $66,690.77과 7일 고점 $67,255.40 저항 확인 필요\"\n  ],\n  \"reasoning\": \"현재 BTC는 $66,445.70으로 EMA20 $66,690.77 바로 아래에 있어 단기 저항을 아직 명확히 돌파하지 못했지만, 최근 4개 양봉과 bullish_engulfing 3회, morning_star 1회가 단기 반등 셋업을 지지한다. 다만 EMA120 $74,246.51 대비 -10.5%, EMA240 $81,301.23 대비 -18.3% 아래에 위치해 확인된 중기·장기 구조는 여전히 bearish로 판단한다. 패턴 점수는 bull_score 3.05가 bear_score 0.80보다 우세하지만, best_pattern_quality가 0.655로 중간 수준이고 high_volume_patterns가 없어 거래량 확인은 부족하다. 핵심은 EMA20 $66,690.77 및 7일 고점 $67,255.40 상단 수용 여부이며, 이를 돌파하지 못하면 반등은 약세 구조 내 기술적 되돌림에 그칠 수 있다.\",\n  \"key_levels\": {\n    \"support\": [\n      60691.9,\n      64445.7,\n      66690.77\n    ],\n    \"resistance\": [\n      67255.4,\n      74246.51,\n      81301.23\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$60,691.90\",\n  \"risk_scenario\": \"반대로 $66,690.77 EMA20과 $67,255.40 7일 고점을 돌파하지 못하고 거절되면, 최근 bullish engulfing 및 morning star 셋업은 실패 신호가 되며 $60,691.90 재시험 가능성이 커진다. 특히 $60,691.90이 일봉 종가 기준으로 이탈되면 단기 강세 셋업은 무효화되고, EMA120 $74,246.51 아래의 기존 bearish structure가 재가속될 수 있다.\",\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": [
        "가격이 하락 스윙 $82,829 → $59,080의 EQ $70,954.35 아래 할인 구간에 있으나, 피보나치 0.236 지지 $64,684.69 위를 방어 중",
        "고품질 bullish Gartley PRZ $65,999.53-$67,113.44 내부에서 거래 중이며 현재가 $66,445.70가 PRZ 중심부에 위치",
        "최근 4개 일봉성 양봉 회복 흐름과 morning_star 후보가 단기 반등 셋업을 지지하지만, 거래량 확인은 부족",
        "EMA20 $66,690.77 및 전일 고점 $67,255.40을 아직 명확히 회복하지 못해 반등은 구조 확인 전 단계",
        "파생 포지셔닝상 CVD 매수 우위에도 가격 상승이 제한되어 $66,100-$66,400 하방 유동성 테스트 위험이 남아 있음"
      ],
      "setup_vs_structure": "구조는 약세이나 실행 셋업은 단기적으로 강세 반응 후보가 우세하다. 즉, 현재 구간은 하락 구조 내부의 할인·PRZ 반응 구간이며, 즉시 방향성은 구조 추세보다 반등 시도와 흡수 리스크가 충돌하는 상태다."
    },
    "signal_breakdown": {
      "bullish_count": 2,
      "bearish_count": 2,
      "neutral_count": 2
    },
    "key_levels": {
      "support": [
        66100,
        65999.53,
        65595.7,
        64918.2,
        64684.69,
        60691.9,
        59080
      ],
      "resistance": [
        66690.77,
        67113.44,
        67255.4,
        68152,
        68683.96,
        70954.35,
        73756.7,
        74246.51,
        74868,
        82828.7
      ]
    },
    "confluences": [
      "ICT, Derivatives, Candlestick, Harmonic 모두 EMA20 $66,690.77 부근을 단기 구조 회복 여부의 1차 저항으로 제시한다.",
      "ICT와 Candlestick은 전일 고점 및 최근 단기 고점 $67,255.40 돌파 실패를 공통적인 단기 저항 조건으로 본다.",
      "Fibonacci의 0.236 지지 $64,684.69, ICT의 최근 bearish CHoCH 레벨 $64,918.20, Harmonic 하단 PRZ $65,999.53 및 Wyckoff Spring $65,595.70이 $64.7k-$66.0k 방어 구간으로 밀집한다.",
      "Fibonacci와 ICT 모두 하락 스윙의 EQ $70,954.35를 구조적 회복 전의 핵심 분기점으로 본다.",
      "Fibonacci의 0.618 $73,756.70, EMA120 $74,246.51, Wyckoff TERMINAL_SPRING $74,868.00이 $73.8k-$74.9k 중기 구조 저항대로 겹친다.",
      "Derivatives의 strongest liquidation level $66,100과 Harmonic PRZ 하단 $65,999.53이 거의 동일한 가격대에 위치해 단기 유동성·반응 구간으로 중첩된다.",
      "ICT, Derivatives, Harmonic, Candlestick은 모두 큰 구조가 아직 bearish라고 판단하며, 현재 반등 신호를 구조 전환이 아닌 사전 확인 셋업으로 제한한다."
    ],
    "conflicts": [
      "Wyckoff는 장기 누적 구조를 근거로 structure_bias를 bullish로 제시하지만, 세부 구조에서는 현재 활성 구조가 $81,999 BC, $59,080 AR, $67,255.40 ST로 구성된 분배 후보에 가깝다. 따라서 장기 누적 해석과 현재 활성 일봉 구조가 충돌한다.",
      "Harmonic과 Candlestick은 $66k대에서 강세 반응 셋업을 제시하지만, ICT와 Derivatives는 EMA20 $66,690.77 미회복, CVD 흡수 가능성, 롱 계정 쏠림을 근거로 반등 매도 위험을 강조한다.",
      "Fibonacci는 할인 구간과 0.236 지지 방어를 이유로 단기 bullish setup을 인정하지만, 동일한 하락 스윙 기준으로는 $68,152.00 및 $70,954.35 회복 전까지 구조적 bearish를 유지한다.",
      "Candlestick의 최근 bullish engulfing 및 morning star 후보는 단기 회복을 시사하지만, 고거래량 패턴이 없어 ICT의 구조적 bearish CHoCH/BOS 신호를 뒤집기에는 증거 강도가 부족하다."
    ],
    "executive_summary": "현재 BTC 일봉 구조는 하락 스윙 $82,829 → $59,080 이후 EQ $70,954.35 아래에 머무는 bearish 구조로 진단한다. Wyckoff 관점에서는 과거 누적 구조의 흔적이 남아 있으나, 현재 활성 구간은 $81,999 BC 이후 $59,080 AR, $67,255.40 ST로 이어지는 분배 후보 또는 재구조화 국면에 가깝다. 가격은 $65,595.70 Spring 및 $65,999.53-$67,113.44 bullish Gartley PRZ 근처에 있어 단기 반등 셋업은 존재하지만, EMA20 $66,690.77과 $67,255.40을 회복하지 못한 상태에서는 구조 전환으로 인정하기 어렵다. 핵심 구조 저항은 $70,954.35, $73,756.70-$74,868.00이며, bearish 구조의 주요 무효화는 $74,868.00 상단 수용이다.",
    "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      \"가격이 하락 스윙 $82,829 → $59,080의 EQ $70,954.35 아래 할인 구간에 있으나, 피보나치 0.236 지지 $64,684.69 위를 방어 중\",\n      \"고품질 bullish Gartley PRZ $65,999.53-$67,113.44 내부에서 거래 중이며 현재가 $66,445.70가 PRZ 중심부에 위치\",\n      \"최근 4개 일봉성 양봉 회복 흐름과 morning_star 후보가 단기 반등 셋업을 지지하지만, 거래량 확인은 부족\",\n      \"EMA20 $66,690.77 및 전일 고점 $67,255.40을 아직 명확히 회복하지 못해 반등은 구조 확인 전 단계\",\n      \"파생 포지셔닝상 CVD 매수 우위에도 가격 상승이 제한되어 $66,100-$66,400 하방 유동성 테스트 위험이 남아 있음\"\n    ],\n    \"setup_vs_structure\": \"구조는 약세이나 실행 셋업은 단기적으로 강세 반응 후보가 우세하다. 즉, 현재 구간은 하락 구조 내부의 할인·PRZ 반응 구간이며, 즉시 방향성은 구조 추세보다 반등 시도와 흡수 리스크가 충돌하는 상태다.\"\n  },\n  \"signal_breakdown\": {\n    \"bullish_count\": 2,\n    \"bearish_count\": 2,\n    \"neutral_count\": 2\n  },\n  \"key_levels\": {\n    \"support\": [\n      66100,\n      65999.53,\n      65595.7,\n      64918.2,\n      64684.69,\n      60691.9,\n      59080\n    ],\n    \"resistance\": [\n      66690.77,\n      67113.44,\n      67255.4,\n      68152,\n      68683.96,\n      70954.35,\n      73756.7,\n      74246.51,\n      74868,\n      82828.7\n    ]\n  },\n  \"confluences\": [\n    \"ICT, Derivatives, Candlestick, Harmonic 모두 EMA20 $66,690.77 부근을 단기 구조 회복 여부의 1차 저항으로 제시한다.\",\n    \"ICT와 Candlestick은 전일 고점 및 최근 단기 고점 $67,255.40 돌파 실패를 공통적인 단기 저항 조건으로 본다.\",\n    \"Fibonacci의 0.236 지지 $64,684.69, ICT의 최근 bearish CHoCH 레벨 $64,918.20, Harmonic 하단 PRZ $65,999.53 및 Wyckoff Spring $65,595.70이 $64.7k-$66.0k 방어 구간으로 밀집한다.\",\n    \"Fibonacci와 ICT 모두 하락 스윙의 EQ $70,954.35를 구조적 회복 전의 핵심 분기점으로 본다.\",\n    \"Fibonacci의 0.618 $73,756.70, EMA120 $74,246.51, Wyckoff TERMINAL_SPRING $74,868.00이 $73.8k-$74.9k 중기 구조 저항대로 겹친다.\",\n    \"Derivatives의 strongest liquidation level $66,100과 Harmonic PRZ 하단 $65,999.53이 거의 동일한 가격대에 위치해 단기 유동성·반응 구간으로 중첩된다.\",\n    \"ICT, Derivatives, Harmonic, Candlestick은 모두 큰 구조가 아직 bearish라고 판단하며, 현재 반등 신호를 구조 전환이 아닌 사전 확인 셋업으로 제한한다.\"\n  ],\n  \"conflicts\": [\n    \"Wyckoff는 장기 누적 구조를 근거로 structure_bias를 bullish로 제시하지만, 세부 구조에서는 현재 활성 구조가 $81,999 BC, $59,080 AR, $67,255.40 ST로 구성된 분배 후보에 가깝다. 따라서 장기 누적 해석과 현재 활성 일봉 구조가 충돌한다.\",\n    \"Harmonic과 Candlestick은 $66k대에서 강세 반응 셋업을 제시하지만, ICT와 Derivatives는 EMA20 $66,690.77 미회복, CVD 흡수 가능성, 롱 계정 쏠림을 근거로 반등 매도 위험을 강조한다.\",\n    \"Fibonacci는 할인 구간과 0.236 지지 방어를 이유로 단기 bullish setup을 인정하지만, 동일한 하락 스윙 기준으로는 $68,152.00 및 $70,954.35 회복 전까지 구조적 bearish를 유지한다.\",\n    \"Candlestick의 최근 bullish engulfing 및 morning star 후보는 단기 회복을 시사하지만, 고거래량 패턴이 없어 ICT의 구조적 bearish CHoCH/BOS 신호를 뒤집기에는 증거 강도가 부족하다.\"\n  ],\n  \"highest_conviction_analyst\": \"ICT Trader — bearish 구조 신호의 신뢰도가 가장 높다. 다수의 CHoCH/BOS 시퀀스, EQ $70,954.35 하회, EMA20 $66,690.77 미회복, EMA120 $74,246.51 및 EMA240 $81,301.23 하회 등 구조·레벨·평균선 근거가 구체적이며, confidence 74%와 setup score 89%로 가장 강한 약세 판정을 제시한다.\",\n  \"invalidation_level\": \"일봉 기준 $74,868.00 상회 및 수용. 이는 EMA120 $74,246.51, Fibonacci 0.618 $73,756.70, Wyckoff TERMINAL_SPRING $74,868.00 저항대를 회복하는 구간으로, 현재 bearish 구조 판정을 무효화하거나 최소 중립화할 수 있다.\",\n  \"executive_summary\": \"현재 BTC 일봉 구조는 하락 스윙 $82,829 → $59,080 이후 EQ $70,954.35 아래에 머무는 bearish 구조로 진단한다. Wyckoff 관점에서는 과거 누적 구조의 흔적이 남아 있으나, 현재 활성 구간은 $81,999 BC 이후 $59,080 AR, $67,255.40 ST로 이어지는 분배 후보 또는 재구조화 국면에 가깝다. 가격은 $65,595.70 Spring 및 $65,999.53-$67,113.44 bullish Gartley PRZ 근처에 있어 단기 반등 셋업은 존재하지만, EMA20 $66,690.77과 $67,255.40을 회복하지 못한 상태에서는 구조 전환으로 인정하기 어렵다. 핵심 구조 저항은 $70,954.35, $73,756.70-$74,868.00이며, bearish 구조의 주요 무효화는 $74,868.00 상단 수용이다.\"\n}"
  },
  "overall_signal": "bearish",
  "overall_confidence": 0.68,
  "operating_path": {
    "path_type": "complex",
    "confidence": 0.5,
    "waypoints": [
      {
        "seq": 1,
        "price": 67255.4,
        "type": "resistance_test",
        "source": "Candlestick(7일 고점 $67,255.40·morning_star·4연속 양봉), Harmonic(PRZ 상단 $67,113.44), ICT·Wyckoff(EMA20 $66,690.77 / $67,255.40 재탈환 레벨), Fibonacci(다음 저항 $68,152)",
        "description": "실행 셋업이 BULLISH 62%(structure는 bearish)이고 setup_strength≥0.5이므로 첫 웨이포인트는 셋업 방향을 따른다. 최근 4연속 양봉·morning_star·고품질 Gartley PRZ 내부의 강세 모멘텀이 단기적으로 EMA20 $66,690.77 재시험을 거쳐 PRZ 상단 $67,113.44 및 7일/전일 고점 $67,255.40을 테스트하는 반등. 다만 CVD 매수 흡수(0.700)와 EMA20 미수용 정황상 이 구간은 구조적 매도 저항대이며 반등은 여기서 제한될 가능성이 높다.",
        "est_hours": 6,
        "turning_zone": [
          67255.4,
          67931.07
        ],
        "likely_wick": 67500.0,
        "rejection_confirm": 67113.44,
        "invalid_overshoot": 68152.0,
        "calibration_reasoning": "전일/7일 고점·Chairman 저항 $67,255.40을 base로, 다음 저항 $68,152(Fib 0.382) 사이에 강한 레벨이 없어 ATR 0.3배($676)로 상단을 잡았습니다. 고점 위 스톱을 사냥하는 약 0.3% 오버슛 $67,500을 likely_wick으로, PRZ 상단 $67,113.44 회복 실패를 거부 확인으로 봅니다."
      },
      {
        "seq": 2,
        "price": 65595.7,
        "type": "liquidity_sweep",
        "source": "Derivatives(최강 청산 $66,100·CVD 흡수·롱 쏠림 0.660), Harmonic(PRZ 하단 $65,999.53), Wyckoff(Spring $65,595.70), ICT(discount·EMA20 미회복)",
        "description": "$67,255.40 저항 거부로 흡수가 확인되면 일봉 약세 구조가 재개된다. Derivatives가 명시한 최강 청산 레벨 $66,100과 하방 유동성($66,100-$66,400)을 휩쓴 뒤 Harmonic PRZ 하단 $65,999.53을 거쳐 Wyckoff Spring $65,595.70을 태깅하는 유동성 스윕. 롱 쏠림(0.660) 청산 플러시와 매수 흡수 시나리오가 여기서 실현되는 지점으로, 강세 셋업의 '반응 진원지'이기도 하다.",
        "est_hours": 15,
        "turning_zone": [
          64918.2,
          65595.7
        ],
        "likely_wick": 65400.0,
        "rejection_confirm": 65999.53,
        "invalid_overshoot": 64684.69,
        "calibration_reasoning": "이 liquidity_sweep는 하방(Wyckoff Spring) 스윕이므로 — 하방 타깃 rejection_confirm 규칙(base 위)에 부합하도록 — zone을 Spring $65,595.70 아래로 확장했습니다. ATR 0.3배가 마침 Chairman 지지 $64,918.20과 일치해 하단으로 채택했고, Spring 아래 스톱을 약 0.3% 휩쓰는 $65,400을 likely_wick, PRZ 하단 $65,999.53 회복을 거부 확인으로 봅니다."
      },
      {
        "seq": 3,
        "price": 66690.77,
        "type": "resistance_test",
        "source": "Wyckoff(Spring 방어 후 반응·EMA20 $66,690.77), Harmonic(PRZ 반응 후보), Candlestick(할인 반등), ICT(EMA20 $66,690.77 저항)",
        "description": "Spring $65,595.70 + PRZ 하단 $65,999.53 + 청산 풀 $66,100이 밀집한 지지 컨플루언스에서 Harmonic·Candlestick 강세 셋업의 반응이 발동해 할인 구간 반등이 나온다. 그러나 일봉 구조가 여전히 bearish(68%)이고 EMA20·전일 고점을 아직 수용하지 못했으므로, 반등은 EMA20 $66,690.77 부근에서 상단이 제한되는 캡드 바운스에 그친다.",
        "est_hours": 22,
        "turning_zone": [
          66690.77,
          67816.88
        ],
        "likely_wick": 67000.0,
        "rejection_confirm": 66100.0,
        "invalid_overshoot": 68152.0,
        "calibration_reasoning": "터미널 웨이포인트라 ATR 0.5배($1,126) 폭을 적용해 EMA20 $66,690.77 위로 전일 고점 클러스터($67,255.40)까지 포함시켰습니다. '캡드 바운스' 특성상 EMA20 직상 라운드넘버(자석) $67,000을 likely_wick, 최강 청산·Chairman 지지 $66,100 상실을 거부 확인으로 설정했습니다."
      }
    ],
    "period_extremes": {
      "4h": {
        "expected_high": 67113.44,
        "expected_low": 66250.0,
        "high_first": true
      },
      "8h": {
        "expected_high": 67255.4,
        "expected_low": 66400.0,
        "high_first": true
      },
      "24h": {
        "expected_high": 67255.4,
        "expected_low": 65400.0,
        "high_first": true
      }
    },
    "triggers": {
      "bullish": {
        "price": 67255.4,
        "description": "EMA20 $66,690.77 재탈환에 이어 7일/전일 고점 $67,255.40을 일봉 수용하면 $68,152(0.382)·EQ $70,954.35 방향으로 강세 가속. WP1 거부 시나리오를 부정하는 1차 강세 신호."
      },
      "bearish": {
        "price": 64684.69,
        "description": "Spring $65,595.70 상실 후 ICT bearish CHoCH $64,918.20 및 0.236 지지 $64,684.69 클러스터를 수용·이탈하면 WP3 방어 시나리오가 무효화되며 $60,691.90·$59,080 방향으로 약세 가속."
      }
    },
    "scenario_invalidation": 68152.0,
    "raw_llm_response": "```json\n{\n  \"path_type\": \"complex\",\n  \"confidence\": 0.5,\n  \"waypoints\": [\n    {\n      \"seq\": 1,\n      \"price\": 67255.40,\n      \"type\": \"resistance_test\",\n      \"source\": \"Candlestick(7일 고점 $67,255.40·morning_star·4연속 양봉), Harmonic(PRZ 상단 $67,113.44), ICT·Wyckoff(EMA20 $66,690.77 / $67,255.40 재탈환 레벨), Fibonacci(다음 저항 $68,152)\",\n      \"description\": \"실행 셋업이 BULLISH 62%(structure는 bearish)이고 setup_strength≥0.5이므로 첫 웨이포인트는 셋업 방향을 따른다. 최근 4연속 양봉·morning_star·고품질 Gartley PRZ 내부의 강세 모멘텀이 단기적으로 EMA20 $66,690.77 재시험을 거쳐 PRZ 상단 $67,113.44 및 7일/전일 고점 $67,255.40을 테스트하는 반등. 다만 CVD 매수 흡수(0.700)와 EMA20 미수용 정황상 이 구간은 구조적 매도 저항대이며 반등은 여기서 제한될 가능성이 높다.\",\n      \"est_hours\": 6\n    },\n    {\n      \"seq\": 2,\n      \"price\": 65595.70,\n      \"type\": \"liquidity_sweep\",\n      \"source\": \"Derivatives(최강 청산 $66,100·CVD 흡수·롱 쏠림 0.660), Harmonic(PRZ 하단 $65,999.53), Wyckoff(Spring $65,595.70), ICT(discount·EMA20 미회복)\",\n      \"description\": \"$67,255.40 저항 거부로 흡수가 확인되면 일봉 약세 구조가 재개된다. Derivatives가 명시한 최강 청산 레벨 $66,100과 하방 유동성($66,100-$66,400)을 휩쓴 뒤 Harmonic PRZ 하단 $65,999.53을 거쳐 Wyckoff Spring $65,595.70을 태깅하는 유동성 스윕. 롱 쏠림(0.660) 청산 플러시와 매수 흡수 시나리오가 여기서 실현되는 지점으로, 강세 셋업의 '반응 진원지'이기도 하다.\",\n      \"est_hours\": 15\n    },\n    {\n      \"seq\": 3,\n      \"price\": 66690.77,\n      \"type\": \"resistance_test\",\n      \"source\": \"Wyckoff(Spring 방어 후 반응·EMA20 $66,690.77), Harmonic(PRZ 반응 후보), Candlestick(할인 반등), ICT(EMA20 $66,690.77 저항)\",\n      \"description\": \"Spring $65,595.70 + PRZ 하단 $65,999.53 + 청산 풀 $66,100이 밀집한 지지 컨플루언스에서 Harmonic·Candlestick 강세 셋업의 반응이 발동해 할인 구간 반등이 나온다. 그러나 일봉 구조가 여전히 bearish(68%)이고 EMA20·전일 고점을 아직 수용하지 못했으므로, 반등은 EMA20 $66,690.77 부근에서 상단이 제한되는 캡드 바운스에 그친다.\",\n      \"est_hours\": 22\n    }\n  ],\n  \"period_extremes\": {\n    \"4h\":  {\"expected_high\": 67113.44, \"expected_low\": 66250.00, \"high_first\": true},\n    \"8h\":  {\"expected_high\": 67255.40, \"expected_low\": 66400.00, \"high_first\": true},\n    \"24h\": {\"expected_high\": 67255.40, \"expected_low\": 65400.00, \"high_first\": true}\n  },\n  \"triggers\": {\n    \"bullish\": {\n      \"price\": 67255.40,\n      \"description\": \"EMA20 $66,690.77 재탈환에 이어 7일/전일 고점 $67,255.40을 일봉 수용하면 $68,152(0.382)·EQ $70,954.35 방향으로 강세 가속. WP1 거부 시나리오를 부정하는 1차 강세 신호.\"\n    },\n    \"bearish\": {\n      \"price\": 64684.69,\n      \"description\": \"Spring $65,595.70 상실 후 ICT bearish CHoCH $64,918.20 및 0.236 지지 $64,684.69 클러스터를 수용·이탈하면 WP3 방어 시나리오가 무효화되며 $60,691.90·$59,080 방향으로 약세 가속.\"\n    }\n  },\n  \"scenario_invalidation\": 68152.00\n}\n```\n\n**핵심 판단:** 구조(BEARISH 68%)와 실행 셋업(BULLISH 62%, strength≥0.5)이 충돌하므로 setup-driven 규칙에 따라 **WP1은 셋업 방향(상방 반등)**으로 시작하되, Harmonic PRZ가 미확인(forming) 상태라 약한 근거임을 반영해 반등 천장을 합의 저항 $67,255.40으로 제한했습니다. 이후 ICT/Derivatives의 흡수·청산($66,100) 근거가 **WP2 하락 스윕(→Spring $65,595.70)**으로 실현되고, 지지 컨플루언스에서 셋업의 반응이 **WP3 캡드 바운스**로 마무리되는 corrective 구조입니다. Derivatives는 \"$66,100 선테스트(하방 우선)\"를 주장해 WP1 방향에 직접 반대하므로 신뢰도는 0.5로 보수적으로 설정했습니다."
  },
  "tp_calibration": {
    "executive_summary": "Operating Path(complex, 신뢰도 50%)의 3개 웨이포인트를 ATR $2,252.22 기반으로 캘리브레이션했습니다. WP1·WP3는 상방 저항 테스트라 turning_zone을 base 위로, WP2는 하방 유동성 스윕(Wyckoff Spring)이라 base 아래로 설정했습니다. 모든 zone 경계는 Chairman·Fibonacci 레벨에 앵커링했으며, Gartley PRZ($66,556.49)와 TP 래더(TP1 $67,871.53 등)는 status=PRE_CONFIRMATION이므로 웨이포인트를 이동시키는 데 사용하지 않고 조건부 맥락으로만 참고했습니다. 상방 핵심 무효 레벨은 $68,152(Fib 0.382), 하방은 $64,684.69(Fib·Chairman 지지)입니다.",
    "calibrated_waypoints": [
      {
        "seq": 1,
        "base_target": 67255.4,
        "turning_zone": [
          67255.4,
          67931.07
        ],
        "likely_wick": 67500.0,
        "rejection_confirm": 67113.44,
        "invalid_overshoot": 68152.0,
        "calibration_reasoning": "전일/7일 고점·Chairman 저항 $67,255.40을 base로, 다음 저항 $68,152(Fib 0.382) 사이에 강한 레벨이 없어 ATR 0.3배($676)로 상단을 잡았습니다. 고점 위 스톱을 사냥하는 약 0.3% 오버슛 $67,500을 likely_wick으로, PRZ 상단 $67,113.44 회복 실패를 거부 확인으로 봅니다."
      },
      {
        "seq": 2,
        "base_target": 65595.7,
        "turning_zone": [
          64918.2,
          65595.7
        ],
        "likely_wick": 65400.0,
        "rejection_confirm": 65999.53,
        "invalid_overshoot": 64684.69,
        "calibration_reasoning": "이 liquidity_sweep는 하방(Wyckoff Spring) 스윕이므로 — 하방 타깃 rejection_confirm 규칙(base 위)에 부합하도록 — zone을 Spring $65,595.70 아래로 확장했습니다. ATR 0.3배가 마침 Chairman 지지 $64,918.20과 일치해 하단으로 채택했고, Spring 아래 스톱을 약 0.3% 휩쓰는 $65,400을 likely_wick, PRZ 하단 $65,999.53 회복을 거부 확인으로 봅니다."
      },
      {
        "seq": 3,
        "base_target": 66690.77,
        "turning_zone": [
          66690.77,
          67816.88
        ],
        "likely_wick": 67000.0,
        "rejection_confirm": 66100.0,
        "invalid_overshoot": 68152.0,
        "calibration_reasoning": "터미널 웨이포인트라 ATR 0.5배($1,126) 폭을 적용해 EMA20 $66,690.77 위로 전일 고점 클러스터($67,255.40)까지 포함시켰습니다. '캡드 바운스' 특성상 EMA20 직상 라운드넘버(자석) $67,000을 likely_wick, 최강 청산·Chairman 지지 $66,100 상실을 거부 확인으로 설정했습니다."
      }
    ],
    "key_insight": "이 경로의 변곡 정밀도는 $66,100(최강 청산)–$66,690.77(EMA20)–$67,255.40(전일 고점) 저항 군집과 $65,595.70(Spring)–$65,000(라운드넘버)–$64,918.20(Chairman 지지) 지지 군집 사이의 '레인지 핑퐁'에 달려 있습니다. WP2 스윕이 $64,684.69를 종가로 깨면 강세 셋업의 반응 진원지가 무효화되어 경로 전체가 추세 하락으로 전환되며, 반대로 $68,152를 수용하면 WP1·WP3의 캡드 저항 논리가 모두 무효화됩니다.",
    "raw_llm_response": "```json\n{\n  \"executive_summary\": \"Operating Path(complex, 신뢰도 50%)의 3개 웨이포인트를 ATR $2,252.22 기반으로 캘리브레이션했습니다. WP1·WP3는 상방 저항 테스트라 turning_zone을 base 위로, WP2는 하방 유동성 스윕(Wyckoff Spring)이라 base 아래로 설정했습니다. 모든 zone 경계는 Chairman·Fibonacci 레벨에 앵커링했으며, Gartley PRZ($66,556.49)와 TP 래더(TP1 $67,871.53 등)는 status=PRE_CONFIRMATION이므로 웨이포인트를 이동시키는 데 사용하지 않고 조건부 맥락으로만 참고했습니다. 상방 핵심 무효 레벨은 $68,152(Fib 0.382), 하방은 $64,684.69(Fib·Chairman 지지)입니다.\",\n  \"calibrated_waypoints\": [\n    {\n      \"seq\": 1,\n      \"base_target\": 67255.40,\n      \"turning_zone\": [67255.40, 67931.07],\n      \"likely_wick\": 67500.00,\n      \"rejection_confirm\": 67113.44,\n      \"invalid_overshoot\": 68152.00,\n      \"calibration_reasoning\": \"전일/7일 고점·Chairman 저항 $67,255.40을 base로, 다음 저항 $68,152(Fib 0.382) 사이에 강한 레벨이 없어 ATR 0.3배($676)로 상단을 잡았습니다. 고점 위 스톱을 사냥하는 약 0.3% 오버슛 $67,500을 likely_wick으로, PRZ 상단 $67,113.44 회복 실패를 거부 확인으로 봅니다.\"\n    },\n    {\n      \"seq\": 2,\n      \"base_target\": 65595.70,\n      \"turning_zone\": [64918.20, 65595.70],\n      \"likely_wick\": 65400.00,\n      \"rejection_confirm\": 65999.53,\n      \"invalid_overshoot\": 64684.69,\n      \"calibration_reasoning\": \"이 liquidity_sweep는 하방(Wyckoff Spring) 스윕이므로 — 하방 타깃 rejection_confirm 규칙(base 위)에 부합하도록 — zone을 Spring $65,595.70 아래로 확장했습니다. ATR 0.3배가 마침 Chairman 지지 $64,918.20과 일치해 하단으로 채택했고, Spring 아래 스톱을 약 0.3% 휩쓰는 $65,400을 likely_wick, PRZ 하단 $65,999.53 회복을 거부 확인으로 봅니다.\"\n    },\n    {\n      \"seq\": 3,\n      \"base_target\": 66690.77,\n      \"turning_zone\": [66690.77, 67816.88],\n      \"likely_wick\": 67000.00,\n      \"rejection_confirm\": 66100.00,\n      \"invalid_overshoot\": 68152.00,\n      \"calibration_reasoning\": \"터미널 웨이포인트라 ATR 0.5배($1,126) 폭을 적용해 EMA20 $66,690.77 위로 전일 고점 클러스터($67,255.40)까지 포함시켰습니다. '캡드 바운스' 특성상 EMA20 직상 라운드넘버(자석) $67,000을 likely_wick, 최강 청산·Chairman 지지 $66,100 상실을 거부 확인으로 설정했습니다.\"\n    }\n  ],\n  \"key_insight\": \"이 경로의 변곡 정밀도는 $66,100(최강 청산)–$66,690.77(EMA20)–$67,255.40(전일 고점) 저항 군집과 $65,595.70(Spring)–$65,000(라운드넘버)–$64,918.20(Chairman 지지) 지지 군집 사이의 '레인지 핑퐁'에 달려 있습니다. WP2 스윕이 $64,684.69를 종가로 깨면 강세 셋업의 반응 진원지가 무효화되어 경로 전체가 추세 하락으로 전환되며, 반대로 $68,152를 수용하면 WP1·WP3의 캡드 저항 논리가 모두 무효화됩니다.\"\n}\n```"
  },
  "timing": {
    "stages": {
      "stage1_agents": 82.3,
      "chairman": 40.0,
      "operating_path": 366.1,
      "tp_calibrator": 231.2
    },
    "agents": {},
    "total_s": 719.7
  }
}