BTC/USDT 15M Council Report

Signal: BEARISH (74%)  |  Price: $59,849.90  |  2026-06-29 01:00 KST  |  300 candles

Council: 1 bullish, 1 neutral, 4 bearish  |  Support: $59,820 / $59,798 / $59,782  |  Resistance: $60,037 / $60,074 / $60,082

result.json   raw.txt   report.md


BTC Chart

Executive Summary

BTC/USDT 15분 구조는 현재 분배 이후 Phase E 약세 수용 구간으로 진단된다. 가격은 Wyckoff 분배 하단 AR $60,074.50 아래에 있으며, LPSY $60,228.50 이후 SOW $59,852.00와 Phase E 저점 $59,781.80이 확인되어 박스 내부 조정보다는 하단 이탈 구조에 가깝다. EMA 저항 클러스터 $60,082.20-$60,231.96, ICT bearish OB $60,174.60-$60,435.80, Wyckoff LPSY $60,228.50이 상단 공급 구조로 겹친다. 다만 현재가는 Fibonacci $59,797.89 및 Harmonic bullish PRZ $59,703.20-$60,098.72 안에 있어 반등 후보 조건도 존재하며, 이는 구조 전환 신호가 아니라 약세 구조 내부의 실행 리스크로 분류한다. 구조적 무효화는 $60,435.80 회복 경고 후 $60,543.30 상방 수용에서 판단한다.

Confluences

Conflicts


Agent Matrix

AgentSignalConfidenceSupportResistance
Wyckoff ExpertBEARISH78%$59,852 / $59,820$60,074 / $60,228
ICT TraderBEARISH78%$59,820 / $59,782$60,037 / $60,129
Derivatives TraderBEARISH62%$58,900 / $58,030$60,082 / $60,178
Candlestick ReaderBEARISH58%$59,688 / $59,695$60,082 / $60,178
Fibonacci AnalystNEUTRAL58%$59,798 / $59,727$59,934 / $60,053
Harmonic SpecialistBULLISH61%$59,703 / $59,767$60,039 / $60,065

Agent Details

Wyckoff Expert — BEARISH (78%)

Support: $59,852 / $59,820 / $59,782 | Resistance: $60,074 / $60,228 / $60,388 | Horizon: short to medium term

15분 구조는 regime=DIS, regime_fitness 0.996으로 분배 구조 적합도가 매우 높고, 이벤트 체인은 BC $60,387.80 → AR $60,074.50 → ST $60,924.70 → UTAD $60,543.30 → LPSY $60,228.50 → SOW $59,852.00 → Phase E $59,781.80 순서로 정렬되어 있습니다. 현재가 $59,849.90는 메인 range low인 $60,074.50 아래에 있어 단순 박스 내부 조정이 아니라 분배 하단 이탈 이후 약세 수용을 테스트하는 위치입니다. 구조적 편향은 bearish로 확인되지만, 즉시 경로는 $59,852.00~$59,781.80 저점대에서 일시 반등이 나와도 $60,074.50 및 $60,228.50 회복 실패 시 재차 하방 압력이 우세합니다. 핵심은 $60,074.50 재진입 여부이며, 그 위에서도 LPSY/EQ 부근인 $60,228.50을 회복하지 못하면 Phase E 약세 해석은 유지됩니다.
ICT Trader — BEARISH (78%)

Support: $59,820 / $59,782 / $59,715 | Resistance: $60,037 / $60,129 / $60,175 | Horizon: short term

확정 구조 기준으로는 최근 시퀀스가 BOS_bullish 이후 CHoCH_bearish, BOS_bearish, CHoCH_bullish를 거쳤지만 마지막 이벤트가 $60,037.00 하향 BOS이므로 structure_bias는 bearish로 판단한다. 현재가 $59,849.90는 EQ $60,129.05 아래 discount에 있어 추격 숏 위치는 좋지 않지만, $60,174.60-$60,435.80 bearish OB가 아직 활성 상태이며 상단 유동성 재테스트 후 하락 재개 셋업이 우세하다. 하방으로는 $59,819.80 최근 bearish BOS 레벨과 Asian kill zone 저점 $59,781.80, 전일 저가 $59,714.80이 가까운 sell-side liquidity 구간이다. 다만 $60,435.80 OB 상단과 range high $60,543.30 위로 수용되면 현재 약세 시나리오는 훼손된다.
Derivatives Trader — BEARISH (62%)

Support: $58,900 / $58,030 / $57,700 | Resistance: $60,082 / $60,178 / $60,232 | Horizon: short term, 약 4-8시간

BTC는 현재 $59,849.90로 EMA20 $60,082.20, EMA120 $60,178.19, EMA240 $60,231.96을 모두 하회하며 단기 구조는 약세 쪽으로 기울어져 있습니다. 파생 포지셔닝은 롱 계정 비율 0.672로 과밀하고, CVD가 -880.9590 감소해 매수 참여가 가격을 지지하지 못하는 모습입니다. OI가 24시간 -1.1790% 감소한 점은 공격적 신규 숏보다는 롱 언와인딩 가능성을 시사하며, 하방 $58,900 청산 레벨이 가까워 단기적으로 먼저 테스트될 확률이 높습니다. 다만 상방 $61,300, $62,500에도 청산 유동성이 있어 $61,346.40 고점을 회복하면 숏 스퀴즈 리스크가 커집니다.
Candlestick Reader — BEARISH (58%)

Support: $59,688 / $59,695 / $58,030 | Resistance: $60,082 / $60,178 / $60,232 | Horizon: 단기, 15분봉 기준 향후 4~12개 캔들

BTC/USDT는 현재 $59,849.90로 EMA20 $60,082.20, EMA120 $60,178.19, EMA240 $60,231.96 모두 아래에 있어 15분봉 구조는 약세 우위로 판단된다. 최근 패턴은 evening_star, bearish_engulfing, bearish_harami가 포함되어 있으며 bear_score 2.1500이 bull_score 0.750보다 크게 높아 매도 압력이 우세하다. 다만 best_pattern_quality가 0.562로 중간 이하이고 high_volume_patterns가 없어 강한 추세 확정이라기보다는 저항 아래에서의 단기 약세 셋업에 가깝다. $59,688.20 부근의 7일 범위 EQ를 이탈하면 $59,694.73 부근 ATR 기반 단기 지지와 $58,030.00 7일 저점 재시험 가능성이 커진다.
Fibonacci Analyst — NEUTRAL (58%)

Support: $59,798 / $59,727 / $59,624 | Resistance: $59,934 / $60,053 / $60,126 | Horizon: short term

확정 구조 관점에서는 최근 스윙이 High $60,436 → Low $59,934의 하락 방향이며, 현재가 $59,849.90가 EMA20 $60,082.20, EMA120 $60,178.19, EMA240 $60,231.96 아래에 있어 structure_bias는 bearish로 판단한다. 다만 실행 셋업 관점에서는 현재가가 EQ인 ret_0.5 $60,185.05 아래 할인 구간에 있고, ext_1.272 $59,797.89 지지에 0.09%까지 접근해 단기 반등 셋업이 형성되어 setup_bias는 bullish이다. 핵심 저항은 ext_1.0 $59,934.30, ret_0.236 $60,052.65, ret_0.382 $60,125.87이며, 특히 golden ratio ret_0.618 $60,244.23은 반등 시 가장 중요한 고확률 저항이다. 반대로 $59,797.89가 무너지면 ext_1.414 $59,726.68, ext_1.618 $59,624.37 순으로 하락 확장이 열리므로 현재 신호는 방향 확정 전 중립으로 본다.
Harmonic Specialist — BULLISH (61%)

Support: $59,703 / $59,767 / $59,807 | Resistance: $60,039 / $60,065 / $60,099 | Horizon: short term

15분 BTC/USDT는 현재 $59,849.90로, 핵심 bullish PRZ 클러스터 $59,703.20-$60,098.72 안에 머물고 있습니다. 가장 가까운 패턴은 bullish Bat이며 D 예상가 $59,871.13, PRZ $59,703.20-$60,039.05로 현재가와 0.04% 차이에 불과하고, Gartley $59,766.59-$60,009.11 및 Crab $59,807.02-$60,065.09도 같은 구간에 중첩됩니다. 구조적으로는 확인된 BOS/CHoCH 자료가 없고 가격이 EMA20 $60,082.20, EMA120 $60,178.19, EMA240 $60,231.96 아래에 있어 structure_bias는 중립으로 둡니다. 다만 완성된 bullish Butterfly와 Bat가 PRZ 터치 후 AD 0.382 반응, PRZ 중심 회수, D 실패구간 방어를 보였기 때문에 setup_bias는 상승이며, 검증된 TP 후보는 $60,154.37-$60,242.79, 이후 $60,283.38-$60,416.03입니다.

Operating Path — complex (60%)

#PriceTypeSourceEst. HoursDescription
1$59,966resistance_testFibonacci(strict 컨플루언스 $59,966.10 score 1.0), Wyckoff(AR $60,074.50), ICT(하향 BOS $60,037 + bearish OB 하단), Derivatives·Candlestick(EMA20 $60,082.20)3.0현재가 $59,849.90가 Fibonacci ext_1.272 $59,797.89·Harmonic bullish PRZ 위에서 확인한 반등 리스크를 반영. 약세 구조 내 되돌림이 strict 피보나치 컨플루언스 $59,966.10에서 1차 공급에 직면하고, 바로 위 EMA20 $60,082.20·Wyckoff AR $60,074.50·ICT BOS $60,037 벽 하단에서 매도 재개가 기대되는 숏 재진입 구간. 반등이 EMA 클러스터를 넘지 못하는 것이 약세 경로의 핵심 전제.
2$59,782support_testWyckoff(Phase E 저점 $59,781.80), ICT(Asian kill zone 저점 $59,781.80), Fibonacci(ext_1.272 $59,797.89 인접)8.0AR/EMA 공급 거부 후 SOW $59,852.00와 현재가를 하향 이탈하며 Wyckoff Phase E 저점 $59,781.80(= ICT Asian kill zone 저점, $59,780-$59,800 밀집 지지대)을 재시험. 이 구간 방어 여부가 마크다운 가속의 분기점.
3$59,618liquidity_sweepFibonacci(strict 컨플루언스 $59,618.01, ext_1.618 $59,624.37), ICT(전일 저가 $59,714.80 sell-side liquidity)15.0Phase E 저점 이탈 시 ICT 전일 저가 $59,714.80 sell-side 유동성을 sweep 하며 strict 피보나치 컨플루언스 $59,618.01·ext_1.618 $59,624.37까지 하락 확장.
4$59,433swing_lowFibonacci(지지 $59,432.80), Derivatives(청산 클러스터 $58,900 접근, CVD -880·롱 과밀 언와인딩)22.0분배 마크다운이 지속되면 피보나치 지지 $59,432.80까지 진행. 매도 모멘텀이 가속되면 Derivatives 청산 클러스터 $58,900가 24시간 확장 목표.

Period Extremes

HorizonExpected LowExpected HighSequence
4h$59,800$60,037Low first
8h$59,782$60,037High first
24h$59,433$60,037High first

Triggers

Invalidation: $60,543

Raw Operating Path Response
```json
{
  "path_type": "complex",
  "confidence": 0.6,
  "waypoints": [
    {
      "seq": 1,
      "price": 59966.10,
      "type": "resistance_test",
      "source": "Fibonacci(strict 컨플루언스 $59,966.10 score 1.0), Wyckoff(AR $60,074.50), ICT(하향 BOS $60,037 + bearish OB 하단), Derivatives·Candlestick(EMA20 $60,082.20)",
      "description": "현재가 $59,849.90가 Fibonacci ext_1.272 $59,797.89·Harmonic bullish PRZ 위에서 확인한 반등 리스크를 반영. 약세 구조 내 되돌림이 strict 피보나치 컨플루언스 $59,966.10에서 1차 공급에 직면하고, 바로 위 EMA20 $60,082.20·Wyckoff AR $60,074.50·ICT BOS $60,037 벽 하단에서 매도 재개가 기대되는 숏 재진입 구간. 반등이 EMA 클러스터를 넘지 못하는 것이 약세 경로의 핵심 전제.",
      "est_hours": 3.0
    },
    {
      "seq": 2,
      "price": 59781.80,
      "type": "support_test",
      "source": "Wyckoff(Phase E 저점 $59,781.80), ICT(Asian kill zone 저점 $59,781.80), Fibonacci(ext_1.272 $59,797.89 인접)",
      "description": "AR/EMA 공급 거부 후 SOW $59,852.00와 현재가를 하향 이탈하며 Wyckoff Phase E 저점 $59,781.80(= ICT Asian kill zone 저점, $59,780-$59,800 밀집 지지대)을 재시험. 이 구간 방어 여부가 마크다운 가속의 분기점.",
      "est_hours": 8.0
    },
    {
      "seq": 3,
      "price": 59618.01,
      "type": "liquidity_sweep",
      "source": "Fibonacci(strict 컨플루언스 $59,618.01, ext_1.618 $59,624.37), ICT(전일 저가 $59,714.80 sell-side liquidity)",
      "description": "Phase E 저점 이탈 시 ICT 전일 저가 $59,714.80 sell-side 유동성을 sweep 하며 strict 피보나치 컨플루언스 $59,618.01·ext_1.618 $59,624.37까지 하락 확장.",
      "est_hours": 15.0
    },
    {
      "seq": 4,
      "price": 59432.80,
      "type": "swing_low",
      "source": "Fibonacci(지지 $59,432.80), Derivatives(청산 클러스터 $58,900 접근, CVD -880·롱 과밀 언와인딩)",
      "description": "분배 마크다운이 지속되면 피보나치 지지 $59,432.80까지 진행. 매도 모멘텀이 가속되면 Derivatives 청산 클러스터 $58,900가 24시간 확장 목표.",
      "est_hours": 22.0
    }
  ],
  "period_extremes": {
    "4h":  {"expected_high": 60037.00, "expected_low": 59800.00, "high_first": false},
    "8h":  {"expected_high": 60037.00, "expected_low": 59781.80, "high_first": true},
    "24h": {"expected_high": 60037.00, "expected_low": 59432.80, "high_first": true}
  },
  "triggers": {
    "bullish": {"price": 60244.23, "description": "반등이 EMA 클러스터를 회복하고 Fibonacci golden ratio $60,244.23·Wyckoff LPSY $60,228.50·EMA240 $60,231.96를 상방 돌파하면 되돌림이 단순 조정을 넘어 구조 회복 시도로 전환되어 약세 경로 경고. $60,435.80 bearish OB 상단 돌파 시 숏 스퀴즈(파생 $61,300 청산 유동성) 리스크 가속."},
    "bearish": {"price": 59781.80, "description": "Wyckoff Phase E 저점·ICT Asian kill zone 저점 $59,781.80 이탈 시 분배 마크다운 재개 확인 → $59,714.80 전일 저가, $59,618 sell-side 유동성으로 하락 가속."}
  },
  "scenario_invalidation": 60543.30
}
```

Raw Chairman Response
{
  "overall_signal": "bearish",
  "overall_confidence": 0.74,
  "execution_setup": {
    "setup_bias": "bearish",
    "setup_strength": 0.68,
    "active_setups": [
      "가격이 EMA20 $60,082.20, EMA120 $60,178.19, EMA240 $60,231.96 아래에 있어 단기 구조가 저항 아래 수용 상태",
      "Wyckoff 분배 하단 AR $60,074.50 이탈 후 LPSY $60,228.50 아래에서 Phase E 약세 구간으로 해석",
      "ICT 기준 최근 하향 BOS $60,037.00 이후 bearish OB $60,174.60-$60,435.80이 상단 공급 구간으로 유지",
      "파생 포지셔닝은 롱 계정 비율 0.672로 롱 과밀이며 CVD 변화 -880.9590으로 매수 체결 지지 약화",
      "단기 반등 리스크: Fibonacci ext_1.272 $59,797.89와 Harmonic bullish PRZ $59,703.20-$60,098.72가 현재가와 중첩"
    ],
    "setup_vs_structure": "구조와 다수 실행 셋업은 모두 약세로 정렬되어 있으나, 현재가는 피보나치·하모닉 반전 후보 구간 안에 있어 즉시 추격 매도에는 반등 리스크가 있다. 즉 구조적 판정은 약세지만, 실행 관점에서는 $59,700-$60,100 방어 여부가 단기 노이즈를 크게 만들 수 있다."
  },
  "signal_breakdown": {
    "bullish_count": 1,
    "bearish_count": 4,
    "neutral_count": 1
  },
  "key_levels": {
    "support": [
      59819.8,
      59797.89,
      59781.8,
      59714.8,
      58900,
      58030
    ],
    "resistance": [
      60037,
      60074.5,
      60082.2,
      60129.05,
      60174.6,
      60228.5,
      60435.8,
      60543.3
    ]
  },
  "confluences": [
    "Wyckoff의 SOW $59,852.00와 현재가 $59,849.90가 거의 동일해 분배 하단 이탈 직후의 약세 수용 테스트 구간으로 겹친다.",
    "Wyckoff $59,819.80, ICT bearish BOS $59,819.80, Harmonic Bat 기준 X $59,819.80이 동일 가격대로 겹쳐 단기 구조 기준점으로 중요하다.",
    "Wyckoff Phase E 저점 $59,781.80과 ICT Asian kill zone 저점 $59,781.80이 동일하며, Fibonacci ext_1.272 $59,797.89와도 근접해 $59,780-$59,800 구간에 지지·반응 후보가 밀집되어 있다.",
    "Derivatives, Candlestick, Fibonacci 모두 EMA20 $60,082.20, EMA120 $60,178.19, EMA240 $60,231.96 아래 거래를 언급해 $60,080-$60,230 구간이 단기 저항 클러스터로 확인된다.",
    "Wyckoff LPSY $60,228.50, Fibonacci golden ratio $60,244.23, Harmonic TP/저항 $60,242.79가 $60,230-$60,245 부근에서 강한 상단 구조 저항으로 겹친다.",
    "ICT bearish OB $60,174.60-$60,435.80과 Harmonic의 상방 TP 후보 $60,154.37-$60,416.03이 겹쳐, 반등이 발생하더라도 해당 구간은 공급과 이익실현 후보가 동시에 존재한다."
  ],
  "conflicts": [
    "구조 분석 6명 중 5명이 약세 또는 약세 구조를 지지하지만, Harmonic은 $59,703.20-$60,098.72 bullish PRZ 내부 반응을 근거로 상승 실행 셋업을 제시한다.",
    "Fibonacci는 구조 자체는 약세로 보면서도 현재가가 할인 구간 및 ext_1.272 $59,797.89 지지 근처라 실행 셋업은 상승으로 분리한다.",
    "ICT는 현재가가 EQ $60,129.05 아래 discount에 있어 추격 숏 위치는 불리하다고 보지만, 마지막 구조 이벤트와 OB는 약세를 지지한다.",
    "파생 OI가 24시간 -1.1790% 감소해 공격적 신규 숏 추세라기보다 롱 언와인딩 성격이 강하므로, 하방 구조 신호의 질은 강하지만 포지션 확장형 추세 확인은 제한적이다."
  ],
  "highest_conviction_analyst": "Wyckoff Expert — 분배 구조 적합도가 매우 높고, BC $60,387.80 → AR $60,074.50 → ST $60,924.70 → UTAD $60,543.30 → LPSY $60,228.50 → SOW $59,852.00 → Phase E $59,781.80로 이어지는 단계가 가격과 시간 순서상 가장 명확하게 정렬되어 있다.",
  "invalidation_level": "$60,543.30 상방 수용. 그 전 단계로 $60,435.80 bearish OB 상단 회복은 약세 구조 훼손 경고이며, $60,543.30 위 안착은 현재 분배 Phase E 해석을 무효화한다.",
  "executive_summary": "BTC/USDT 15분 구조는 현재 분배 이후 Phase E 약세 수용 구간으로 진단된다. 가격은 Wyckoff 분배 하단 AR $60,074.50 아래에 있으며, LPSY $60,228.50 이후 SOW $59,852.00와 Phase E 저점 $59,781.80이 확인되어 박스 내부 조정보다는 하단 이탈 구조에 가깝다. EMA 저항 클러스터 $60,082.20-$60,231.96, ICT bearish OB $60,174.60-$60,435.80, Wyckoff LPSY $60,228.50이 상단 공급 구조로 겹친다. 다만 현재가는 Fibonacci $59,797.89 및 Harmonic bullish PRZ $59,703.20-$60,098.72 안에 있어 반등 후보 조건도 존재하며, 이는 구조 전환 신호가 아니라 약세 구조 내부의 실행 리스크로 분류한다. 구조적 무효화는 $60,435.80 회복 경고 후 $60,543.30 상방 수용에서 판단한다."
}
Full Result JSON
{
  "symbol": "BTC/USDT",
  "timeframe": "15m",
  "timestamp": "2026-06-29 01:00 KST",
  "last_price": 59849.9,
  "num_candles": 300,
  "stage1_analyses": {
    "derivatives": {
      "agent_id": "derivatives",
      "display_name": "Derivatives Trader",
      "signal": "bearish",
      "confidence": 0.62,
      "structure_bias": "bearish",
      "setup_bias": "bearish",
      "setup_score": 0.68,
      "setup_signals": [
        "현재가 $59,849.90가 EMA20 $60,082.20, EMA120 $60,178.19, EMA240 $60,231.96 아래에서 거래되어 단기 구조가 약세 수용 상태",
        "롱 계정 비율 0.672, 숏 계정 비율 0.328로 롱 포지셔닝이 과밀하며 account_long_crowding 1.000",
        "CVD 변화 -880.9590으로 가격 반등 참여가 약하고 매도 체결 우위가 지속",
        "OI 24h 변화 -1.1790%로 신규 숏 추세보다는 포지션 언와인딩 성격이 강해 하락 시 유동성 공백 위험",
        "선물 베이시스 -0.0670%로 현물 대비 선물이 할인되어 파생시장 심리가 약세",
        "하방 청산 밀집 $58,900 및 $57,700이 현재가와 가까워 단기 유동성 타깃으로 작동 가능"
      ],
      "reasoning": "BTC는 현재 $59,849.90로 EMA20 $60,082.20, EMA120 $60,178.19, EMA240 $60,231.96을 모두 하회하며 단기 구조는 약세 쪽으로 기울어져 있습니다. 파생 포지셔닝은 롱 계정 비율 0.672로 과밀하고, CVD가 -880.9590 감소해 매수 참여가 가격을 지지하지 못하는 모습입니다. OI가 24시간 -1.1790% 감소한 점은 공격적 신규 숏보다는 롱 언와인딩 가능성을 시사하며, 하방 $58,900 청산 레벨이 가까워 단기적으로 먼저 테스트될 확률이 높습니다. 다만 상방 $61,300, $62,500에도 청산 유동성이 있어 $61,346.40 고점을 회복하면 숏 스퀴즈 리스크가 커집니다.",
      "key_levels": {
        "support": [
          58900,
          58030,
          57700,
          54300
        ],
        "resistance": [
          60082.2,
          60178.19,
          60231.96,
          61300,
          61346.4,
          62500
        ]
      },
      "time_horizon": "short term, 약 4-8시간",
      "invalidation_level": "$61,346.40 상향 돌파 및 수용",
      "risk_scenario": "$60,232 부근 EMA240을 회복한 뒤 $61,300 청산 구간을 강하게 돌파하면, 과밀 롱에도 불구하고 단기 숏 커버링이 발생하며 $62,500까지 상방 유동성 사냥이 진행될 수 있습니다.",
      "data_quality": "medium",
      "metrics": {
        "cvd_divergence": 0.3,
        "cvd_change": -880.959,
        "oi_trend": 0.382,
        "oi_change_pct_24h": -1.179,
        "oi_latest": 103256.268,
        "funding_pressure": 0.469,
        "funding_avg": 3.118e-05,
        "funding_change_24h": -2.387e-05,
        "long_account_ratio": 0.668,
        "short_account_ratio": 0.332,
        "long_account_latest": 0.672,
        "short_account_latest": 0.328,
        "long_account_change_24h": 0.003,
        "short_account_change_24h": -0.003,
        "account_flow_label": "long_accounts_rising_short_accounts_falling",
        "account_short_crowding": 0.0,
        "account_long_crowding": 1.0,
        "ls_imbalance": 0.0,
        "ls_imbalance_interpretation": "high=short-account crowding / low=long-account crowding",
        "spot_futures_basis_score": 0.483,
        "spot_futures_basis_pct": -0.067,
        "basis_change_lookback": -0.0207,
        "aggregate_score": 0.327,
        "bull_signals": 0,
        "bear_signals": 3,
        "liq_below": [
          [
            58900,
            1131.2984947500001
          ],
          [
            57700,
            1508.397993
          ],
          [
            54300,
            959.9683862500002
          ]
        ],
        "liq_above": [
          [
            61300,
            1061.86815375
          ],
          [
            62500,
            1386.49575
          ],
          [
            66100,
            2073.1627274999996
          ]
        ],
        "strongest_liq_level": 66100,
        "fragility_score": 0.567,
        "positioning_extreme": "balanced"
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.62,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.68,\n  \"setup_signals\": [\n    \"현재가 $59,849.90가 EMA20 $60,082.20, EMA120 $60,178.19, EMA240 $60,231.96 아래에서 거래되어 단기 구조가 약세 수용 상태\",\n    \"롱 계정 비율 0.672, 숏 계정 비율 0.328로 롱 포지셔닝이 과밀하며 account_long_crowding 1.000\",\n    \"CVD 변화 -880.9590으로 가격 반등 참여가 약하고 매도 체결 우위가 지속\",\n    \"OI 24h 변화 -1.1790%로 신규 숏 추세보다는 포지션 언와인딩 성격이 강해 하락 시 유동성 공백 위험\",\n    \"선물 베이시스 -0.0670%로 현물 대비 선물이 할인되어 파생시장 심리가 약세\",\n    \"하방 청산 밀집 $58,900 및 $57,700이 현재가와 가까워 단기 유동성 타깃으로 작동 가능\"\n  ],\n  \"reasoning\": \"BTC는 현재 $59,849.90로 EMA20 $60,082.20, EMA120 $60,178.19, EMA240 $60,231.96을 모두 하회하며 단기 구조는 약세 쪽으로 기울어져 있습니다. 파생 포지셔닝은 롱 계정 비율 0.672로 과밀하고, CVD가 -880.9590 감소해 매수 참여가 가격을 지지하지 못하는 모습입니다. OI가 24시간 -1.1790% 감소한 점은 공격적 신규 숏보다는 롱 언와인딩 가능성을 시사하며, 하방 $58,900 청산 레벨이 가까워 단기적으로 먼저 테스트될 확률이 높습니다. 다만 상방 $61,300, $62,500에도 청산 유동성이 있어 $61,346.40 고점을 회복하면 숏 스퀴즈 리스크가 커집니다.\",\n  \"key_levels\": {\n    \"support\": [\n      58900,\n      58030,\n      57700,\n      54300\n    ],\n    \"resistance\": [\n      60082.2,\n      60178.19,\n      60231.96,\n      61300,\n      61346.4,\n      62500\n    ]\n  },\n  \"time_horizon\": \"short term, 약 4-8시간\",\n  \"invalidation_level\": \"$61,346.40 상향 돌파 및 수용\",\n  \"risk_scenario\": \"$60,232 부근 EMA240을 회복한 뒤 $61,300 청산 구간을 강하게 돌파하면, 과밀 롱에도 불구하고 단기 숏 커버링이 발생하며 $62,500까지 상방 유동성 사냥이 진행될 수 있습니다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "candlestick": {
      "agent_id": "candlestick",
      "display_name": "Candlestick Reader",
      "signal": "bearish",
      "confidence": 0.58,
      "structure_bias": "bearish",
      "setup_bias": "bearish",
      "setup_score": 0.62,
      "setup_signals": [
        "현재가 $59,849.90가 7일 범위 EQ $59,688.20 위에 있어 약한 프리미엄 구간에 위치",
        "EMA20 $60,082.20, EMA120 $60,178.19, EMA240 $60,231.96 아래에서 거래되며 단기 저항 클러스터 형성",
        "최근 후보 패턴 중 evening_star@294가 bearish 신호이며 품질 0.562로 가장 높음",
        "bearish_engulfing@291 및 bearish_harami@293가 추가 하락 압력을 보강",
        "고거래량 패턴이 없어 하락 신호의 확정 강도는 제한적"
      ],
      "reasoning": "BTC/USDT는 현재 $59,849.90로 EMA20 $60,082.20, EMA120 $60,178.19, EMA240 $60,231.96 모두 아래에 있어 15분봉 구조는 약세 우위로 판단된다. 최근 패턴은 evening_star, bearish_engulfing, bearish_harami가 포함되어 있으며 bear_score 2.1500이 bull_score 0.750보다 크게 높아 매도 압력이 우세하다. 다만 best_pattern_quality가 0.562로 중간 이하이고 high_volume_patterns가 없어 강한 추세 확정이라기보다는 저항 아래에서의 단기 약세 셋업에 가깝다. $59,688.20 부근의 7일 범위 EQ를 이탈하면 $59,694.73 부근 ATR 기반 단기 지지와 $58,030.00 7일 저점 재시험 가능성이 커진다.",
      "key_levels": {
        "support": [
          59688.2,
          59694.73,
          58030.0
        ],
        "resistance": [
          60082.2,
          60178.19,
          60231.96,
          61346.4
        ]
      },
      "time_horizon": "단기, 15분봉 기준 향후 4~12개 캔들",
      "invalidation_level": "$60,231.96 이상 15분봉 종가 회복",
      "risk_scenario": "가격이 EMA240 $60,231.96 위로 종가 회복하고 유지되면 현재 bearish 셋업은 무효화되며, 숏 커버링으로 $61,346.40 7일 고점 방향 반등이 열릴 수 있다.",
      "data_quality": "medium",
      "metrics": {
        "total_patterns_detected": 153,
        "recent_patterns": 5,
        "pattern_list": [
          "bullish_engulfing@290",
          "bearish_engulfing@291",
          "evening_star@294",
          "doji@290",
          "bearish_harami@293"
        ],
        "atr_value": 155.17,
        "vol_avg_20": 885.88,
        "high_volume_patterns": [],
        "pattern_candidates": [
          {
            "pattern": "evening_star",
            "signal": "bearish",
            "pattern_quality": 0.562,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "bullish_engulfing",
            "signal": "bullish",
            "pattern_quality": 0.555,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "bearish_engulfing",
            "signal": "bearish",
            "pattern_quality": 0.516,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "bearish_harami",
            "signal": "bearish",
            "pattern_quality": 0.486,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "doji",
            "signal": "neutral",
            "pattern_quality": 0.355,
            "tier": "candidate",
            "high_volume": false
          }
        ],
        "best_pattern_quality": 0.562,
        "bull_score": 0.75,
        "bear_score": 2.15
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.58,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.62,\n  \"setup_signals\": [\n    \"현재가 $59,849.90가 7일 범위 EQ $59,688.20 위에 있어 약한 프리미엄 구간에 위치\",\n    \"EMA20 $60,082.20, EMA120 $60,178.19, EMA240 $60,231.96 아래에서 거래되며 단기 저항 클러스터 형성\",\n    \"최근 후보 패턴 중 evening_star@294가 bearish 신호이며 품질 0.562로 가장 높음\",\n    \"bearish_engulfing@291 및 bearish_harami@293가 추가 하락 압력을 보강\",\n    \"고거래량 패턴이 없어 하락 신호의 확정 강도는 제한적\"\n  ],\n  \"reasoning\": \"BTC/USDT는 현재 $59,849.90로 EMA20 $60,082.20, EMA120 $60,178.19, EMA240 $60,231.96 모두 아래에 있어 15분봉 구조는 약세 우위로 판단된다. 최근 패턴은 evening_star, bearish_engulfing, bearish_harami가 포함되어 있으며 bear_score 2.1500이 bull_score 0.750보다 크게 높아 매도 압력이 우세하다. 다만 best_pattern_quality가 0.562로 중간 이하이고 high_volume_patterns가 없어 강한 추세 확정이라기보다는 저항 아래에서의 단기 약세 셋업에 가깝다. $59,688.20 부근의 7일 범위 EQ를 이탈하면 $59,694.73 부근 ATR 기반 단기 지지와 $58,030.00 7일 저점 재시험 가능성이 커진다.\",\n  \"key_levels\": {\n    \"support\": [\n      59688.2,\n      59694.73,\n      58030.0\n    ],\n    \"resistance\": [\n      60082.2,\n      60178.19,\n      60231.96,\n      61346.4\n    ]\n  },\n  \"time_horizon\": \"단기, 15분봉 기준 향후 4~12개 캔들\",\n  \"invalidation_level\": \"$60,231.96 이상 15분봉 종가 회복\",\n  \"risk_scenario\": \"가격이 EMA240 $60,231.96 위로 종가 회복하고 유지되면 현재 bearish 셋업은 무효화되며, 숏 커버링으로 $61,346.40 7일 고점 방향 반등이 열릴 수 있다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "wyckoff": {
      "agent_id": "wyckoff",
      "display_name": "Wyckoff Expert",
      "signal": "bearish",
      "confidence": 0.78,
      "structure_bias": "bearish",
      "setup_bias": "bearish",
      "setup_score": 0.72,
      "setup_signals": [
        "가격이 메인 분배 하단 AR $60,074.50 아래에 위치: 현재가 $59,849.90",
        "LPSY $60,228.50 이후 SOW $59,852.00 발생, 재공급 우위 확인",
        "현재 이벤트가 Phase E 저점 $59,781.80로 표시되어 분배 이후 하방 이탈 구간에 진입",
        "EQ 약 $60,231.15 부근에서 LPSY $60,228.50가 형성되어 중간값 회복 실패",
        "UTAD $60,543.30 이후 고점 갱신 실패 및 하단 이탈 진행"
      ],
      "reasoning": "15분 구조는 regime=DIS, regime_fitness 0.996으로 분배 구조 적합도가 매우 높고, 이벤트 체인은 BC $60,387.80 → AR $60,074.50 → ST $60,924.70 → UTAD $60,543.30 → LPSY $60,228.50 → SOW $59,852.00 → Phase E $59,781.80 순서로 정렬되어 있습니다. 현재가 $59,849.90는 메인 range low인 $60,074.50 아래에 있어 단순 박스 내부 조정이 아니라 분배 하단 이탈 이후 약세 수용을 테스트하는 위치입니다. 구조적 편향은 bearish로 확인되지만, 즉시 경로는 $59,852.00~$59,781.80 저점대에서 일시 반등이 나와도 $60,074.50 및 $60,228.50 회복 실패 시 재차 하방 압력이 우세합니다. 핵심은 $60,074.50 재진입 여부이며, 그 위에서도 LPSY/EQ 부근인 $60,228.50을 회복하지 못하면 Phase E 약세 해석은 유지됩니다.",
      "key_levels": {
        "support": [
          59852.0,
          59819.8,
          59781.8,
          58030.0
        ],
        "resistance": [
          60074.5,
          60228.5,
          60387.8,
          60543.3,
          60924.7
        ]
      },
      "time_horizon": "short to medium term",
      "invalidation_level": "60543.30",
      "risk_scenario": "$60,074.50을 빠르게 회복하고 $60,228.50 LPSY/EQ 위에서 수용이 생기면 현재 Phase E 하방 지속 해석은 약화됩니다. 특히 $60,543.30 UTAD 레벨까지 회복하면 최근 LPSY→SOW→Phase E 약세 시나리오는 실패로 봐야 하며, $60,924.70 ST 고점 회복 시 분배 구조 자체의 재평가가 필요합니다.",
      "data_quality": "high",
      "metrics": {
        "acc_score": 96.2,
        "dis_score": 99.6,
        "regime": "DIS",
        "regime_state": "dis_candidate",
        "structure_bias": "bearish",
        "phase_context": "dis_candidate / distribution / Phase E",
        "phases_detected": [
          "BC",
          "AR",
          "ST",
          "SOW_IN_PHASE_B",
          "UT",
          "UTAD",
          "LPSY",
          "SOW",
          "Phase E"
        ],
        "last_phase": "Phase E",
        "phase_candidates": [
          {
            "label": "BC",
            "side": "high",
            "idx": 152,
            "price": 60387.8,
            "color": "#ffd166"
          },
          {
            "label": "AR",
            "side": "low",
            "idx": 165,
            "price": 60074.5,
            "color": "#06d6a0"
          },
          {
            "label": "ST",
            "side": "high",
            "idx": 202,
            "price": 60924.7,
            "color": "#118ab2"
          },
          {
            "label": "SOW_IN_PHASE_B",
            "side": "low",
            "idx": 229,
            "price": 59819.8,
            "color": "#ef476f"
          },
          {
            "label": "UT",
            "side": "high",
            "idx": 245,
            "price": 60314.3,
            "color": "#f9844a"
          },
          {
            "label": "UTAD",
            "side": "high",
            "idx": 270,
            "price": 60543.3,
            "color": "#f9844a"
          },
          {
            "label": "LPSY",
            "side": "high",
            "idx": 293,
            "price": 60228.5,
            "color": "#8338ec"
          },
          {
            "label": "SOW",
            "side": "low",
            "idx": 296,
            "price": 59852.0,
            "color": "#ef476f"
          },
          {
            "label": "Phase E",
            "side": "low",
            "idx": 299,
            "price": 59781.8,
            "color": "#7209b7"
          }
        ],
        "phase_structures": [
          {
            "structure_id": "15m_cycle_1",
            "sequence": 1,
            "timeframe": "15m",
            "regime": "distribution",
            "role": "current_structure_candidate",
            "is_active": true,
            "is_completed": false,
            "is_confirmed": true,
            "structure_bias": "bearish",
            "phase_context": "distribution",
            "start_idx": 152,
            "end_idx": 299,
            "phase_count": 9,
            "phases": [
              {
                "label": "BC",
                "side": "high",
                "idx": 152,
                "price": 60387.8,
                "color": "#ffd166",
                "dt": "2026-06-27 12:00:00+09:00"
              },
              {
                "label": "AR",
                "side": "low",
                "idx": 165,
                "price": 60074.5,
                "color": "#06d6a0",
                "dt": "2026-06-27 15:15:00+09:00"
              },
              {
                "label": "ST",
                "side": "high",
                "idx": 202,
                "price": 60924.7,
                "color": "#118ab2",
                "dt": "2026-06-28 00:30:00+09:00"
              },
              {
                "label": "SOW_IN_PHASE_B",
                "side": "low",
                "idx": 229,
                "price": 59819.8,
                "color": "#ef476f",
                "dt": "2026-06-28 07:15:00+09:00"
              },
              {
                "label": "UT",
                "side": "high",
                "idx": 245,
                "price": 60314.3,
                "color": "#f9844a",
                "dt": "2026-06-28 11:15:00+09:00"
              },
              {
                "label": "UTAD",
                "side": "high",
                "idx": 270,
                "price": 60543.3,
                "color": "#f9844a",
                "dt": "2026-06-28 17:30:00+09:00"
              },
              {
                "label": "LPSY",
                "side": "high",
                "idx": 293,
                "price": 60228.5,
                "color": "#8338ec",
                "dt": "2026-06-28 23:15:00+09:00"
              },
              {
                "label": "SOW",
                "side": "low",
                "idx": 296,
                "price": 59852.0,
                "color": "#ef476f",
                "dt": "2026-06-29 00:00:00+09:00"
              },
              {
                "label": "Phase E",
                "side": "low",
                "idx": 299,
                "price": 59781.8,
                "color": "#7209b7",
                "dt": "2026-06-29 00:45:00+09:00"
              }
            ]
          }
        ],
        "active_structure_id": "15m_cycle_1",
        "primary_structure_id": "15m_cycle_1",
        "structure_count": 1,
        "regime_fitness": 0.9958193979933111,
        "current_event": "Phase E",
        "major_phase": "E",
        "pos_in_range": 0.5,
        "main_range_low": 60074.5,
        "main_range_high": 60387.8
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.78,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.72,\n  \"setup_signals\": [\n    \"가격이 메인 분배 하단 AR $60,074.50 아래에 위치: 현재가 $59,849.90\",\n    \"LPSY $60,228.50 이후 SOW $59,852.00 발생, 재공급 우위 확인\",\n    \"현재 이벤트가 Phase E 저점 $59,781.80로 표시되어 분배 이후 하방 이탈 구간에 진입\",\n    \"EQ 약 $60,231.15 부근에서 LPSY $60,228.50가 형성되어 중간값 회복 실패\",\n    \"UTAD $60,543.30 이후 고점 갱신 실패 및 하단 이탈 진행\"\n  ],\n  \"reasoning\": \"15분 구조는 regime=DIS, regime_fitness 0.996으로 분배 구조 적합도가 매우 높고, 이벤트 체인은 BC $60,387.80 → AR $60,074.50 → ST $60,924.70 → UTAD $60,543.30 → LPSY $60,228.50 → SOW $59,852.00 → Phase E $59,781.80 순서로 정렬되어 있습니다. 현재가 $59,849.90는 메인 range low인 $60,074.50 아래에 있어 단순 박스 내부 조정이 아니라 분배 하단 이탈 이후 약세 수용을 테스트하는 위치입니다. 구조적 편향은 bearish로 확인되지만, 즉시 경로는 $59,852.00~$59,781.80 저점대에서 일시 반등이 나와도 $60,074.50 및 $60,228.50 회복 실패 시 재차 하방 압력이 우세합니다. 핵심은 $60,074.50 재진입 여부이며, 그 위에서도 LPSY/EQ 부근인 $60,228.50을 회복하지 못하면 Phase E 약세 해석은 유지됩니다.\",\n  \"key_levels\": {\n    \"support\": [\n      59852.0,\n      59819.8,\n      59781.8,\n      58030.0\n    ],\n    \"resistance\": [\n      60074.5,\n      60228.5,\n      60387.8,\n      60543.3,\n      60924.7\n    ]\n  },\n  \"time_horizon\": \"short to medium term\",\n  \"invalidation_level\": \"60543.30\",\n  \"risk_scenario\": \"$60,074.50을 빠르게 회복하고 $60,228.50 LPSY/EQ 위에서 수용이 생기면 현재 Phase E 하방 지속 해석은 약화됩니다. 특히 $60,543.30 UTAD 레벨까지 회복하면 최근 LPSY→SOW→Phase E 약세 시나리오는 실패로 봐야 하며, $60,924.70 ST 고점 회복 시 분배 구조 자체의 재평가가 필요합니다.\",\n  \"data_quality\": \"high\"\n}"
    },
    "ict": {
      "agent_id": "ict",
      "display_name": "ICT Trader",
      "signal": "bearish",
      "confidence": 0.78,
      "structure_bias": "bearish",
      "setup_bias": "bearish",
      "setup_score": 0.806,
      "setup_signals": [
        "현재가 $59,849.90가 EQ $60,129.05 아래의 discount 영역에 있으나, 최근 구조는 $60,037.00 하향 BOS로 약세 지속",
        "활성 bearish OB 후보가 $60,174.60-$60,435.80에 위치하며 현재가 위쪽의 단기 공급 구간으로 작동 가능",
        "bearish OB 내부 mid $60,305.20 및 상단 $60,435.80은 숏 재진입 또는 매도 방어가 예상되는 구간",
        "최근 구조 이벤트가 CHoCH_bearish $60,162.00 이후 BOS_bearish $59,819.80, BOS_bearish $60,037.00로 이어져 하방 order flow 우세",
        "EMA20 $60,082.20, EMA120 $60,178.19, EMA240 $60,231.96가 모두 현재가 위에 있어 단기 반등 시 동적 저항 가능"
      ],
      "reasoning": "확정 구조 기준으로는 최근 시퀀스가 BOS_bullish 이후 CHoCH_bearish, BOS_bearish, CHoCH_bullish를 거쳤지만 마지막 이벤트가 $60,037.00 하향 BOS이므로 structure_bias는 bearish로 판단한다. 현재가 $59,849.90는 EQ $60,129.05 아래 discount에 있어 추격 숏 위치는 좋지 않지만, $60,174.60-$60,435.80 bearish OB가 아직 활성 상태이며 상단 유동성 재테스트 후 하락 재개 셋업이 우세하다. 하방으로는 $59,819.80 최근 bearish BOS 레벨과 Asian kill zone 저점 $59,781.80, 전일 저가 $59,714.80이 가까운 sell-side liquidity 구간이다. 다만 $60,435.80 OB 상단과 range high $60,543.30 위로 수용되면 현재 약세 시나리오는 훼손된다.",
      "key_levels": {
        "support": [
          59819.8,
          59781.8,
          59714.8,
          58944.0,
          58288.0,
          58030.0
        ],
        "resistance": [
          60037.0,
          60129.05,
          60174.6,
          60305.2,
          60435.8,
          60543.3,
          60924.7
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$60,543.30",
      "risk_scenario": "$60,174.60-$60,435.80 bearish OB가 흡수되고 가격이 range high $60,543.30 위에서 15분봉 기준 수용되면, 하방 BOS는 실패한 breakdown으로 전환될 수 있다. 이 경우 $60,924.70 전일 고점 및 7일 고점 $61,346.40 쪽 buy-side liquidity를 회수하는 bullish reversal 시나리오가 열릴 수 있다.",
      "data_quality": "medium",
      "metrics": {
        "order_blocks_total": 2,
        "confirmed_bullish_ob": 0,
        "confirmed_bearish_ob": 0,
        "candidate_bullish_ob": 1,
        "candidate_bearish_ob": 1,
        "active_bullish_ob": 0,
        "active_bearish_ob": 1,
        "nearest_bull_ob_range": {
          "bottom": 58288.0,
          "top": 58944.0,
          "quality": "candidate",
          "score": 0.577
        },
        "nearest_bear_ob_range": {
          "bottom": 60174.6,
          "top": 60435.8,
          "quality": "candidate",
          "score": 0.633
        },
        "active_bullish_ob_list": [],
        "active_bearish_ob_list": [
          {
            "type": "bearish_ob",
            "idx": 286,
            "top": 60435.8,
            "bottom": 60174.6,
            "mid": 60305.2,
            "quality": "candidate",
            "score": 0.633,
            "displacement_score": 0.522,
            "has_fvg": true,
            "has_sweep_context": false,
            "fvg_range": {
              "bottom": 60142.0,
              "top": 60213.2
            },
            "swept_level": null,
            "source_move_idx": 286,
            "proximity": "nearby"
          }
        ],
        "ob_mitigated_count": 0,
        "unfilled_bull_fvg_count": 0,
        "unfilled_bear_fvg_count": 0,
        "bull_fvg_ranges": [],
        "bear_fvg_ranges": [],
        "fvg_open_count": 0,
        "fvg_mitigated_count": 65,
        "fvg_open_zones": [],
        "bos_choch_events": [
          "BOS_bullish",
          "CHoCH_bearish",
          "BOS_bearish",
          "CHoCH_bullish",
          "BOS_bearish"
        ],
        "bos_choch_levels": [
          {
            "type": "BOS_bullish",
            "level": 60557.8
          },
          {
            "type": "CHoCH_bearish",
            "level": 60162.0
          },
          {
            "type": "BOS_bearish",
            "level": 59819.8
          },
          {
            "type": "CHoCH_bullish",
            "level": 60314.3
          },
          {
            "type": "BOS_bearish",
            "level": 60037.0
          }
        ],
        "bos_sequence": [
          "BOS_bullish",
          "CHoCH_bearish",
          "BOS_bearish",
          "CHoCH_bullish",
          "BOS_bearish"
        ],
        "consecutive_bull_bos": 0,
        "consecutive_bear_bos": 1,
        "recent_liq_sweeps": [],
        "recent_sweep_levels": [],
        "liquidity_resting": [],
        "current_zone": "discount",
        "eq_level": 60129.05,
        "range_high": 60543.3,
        "range_low": 59714.8,
        "bull_score": 6.2,
        "bear_score": 8.38,
        "setup_bias": "bearish",
        "setup_score": 0.806,
        "setup_signals": [
          "bearish CHoCH below $60,162.00",
          "bearish BOS below $59,819.80",
          "bearish BOS below $60,037.00",
          "bearish OB candidate $60,174.60-$60,435.80 (nearby, score=0.63)"
        ],
        "retracement_direction": "bullish",
        "current_retracement_pct": 142.7,
        "deepest_retracement_pct": 146.4,
        "previous_day_high": 60924.7,
        "previous_day_low": 59714.8,
        "broken_prev_high": false,
        "broken_prev_low": false,
        "sessions": {
          "London": {
            "active": false,
            "high": null,
            "low": null
          },
          "New York": {
            "active": false,
            "high": null,
            "low": null
          },
          "Asian kill zone": {
            "active": true,
            "high": 60103.2,
            "low": 59781.8
          }
        }
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.78,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.806,\n  \"setup_signals\": [\n    \"현재가 $59,849.90가 EQ $60,129.05 아래의 discount 영역에 있으나, 최근 구조는 $60,037.00 하향 BOS로 약세 지속\",\n    \"활성 bearish OB 후보가 $60,174.60-$60,435.80에 위치하며 현재가 위쪽의 단기 공급 구간으로 작동 가능\",\n    \"bearish OB 내부 mid $60,305.20 및 상단 $60,435.80은 숏 재진입 또는 매도 방어가 예상되는 구간\",\n    \"최근 구조 이벤트가 CHoCH_bearish $60,162.00 이후 BOS_bearish $59,819.80, BOS_bearish $60,037.00로 이어져 하방 order flow 우세\",\n    \"EMA20 $60,082.20, EMA120 $60,178.19, EMA240 $60,231.96가 모두 현재가 위에 있어 단기 반등 시 동적 저항 가능\"\n  ],\n  \"reasoning\": \"확정 구조 기준으로는 최근 시퀀스가 BOS_bullish 이후 CHoCH_bearish, BOS_bearish, CHoCH_bullish를 거쳤지만 마지막 이벤트가 $60,037.00 하향 BOS이므로 structure_bias는 bearish로 판단한다. 현재가 $59,849.90는 EQ $60,129.05 아래 discount에 있어 추격 숏 위치는 좋지 않지만, $60,174.60-$60,435.80 bearish OB가 아직 활성 상태이며 상단 유동성 재테스트 후 하락 재개 셋업이 우세하다. 하방으로는 $59,819.80 최근 bearish BOS 레벨과 Asian kill zone 저점 $59,781.80, 전일 저가 $59,714.80이 가까운 sell-side liquidity 구간이다. 다만 $60,435.80 OB 상단과 range high $60,543.30 위로 수용되면 현재 약세 시나리오는 훼손된다.\",\n  \"key_levels\": {\n    \"support\": [\n      59819.8,\n      59781.8,\n      59714.8,\n      58944.0,\n      58288.0,\n      58030.0\n    ],\n    \"resistance\": [\n      60037.0,\n      60129.05,\n      60174.6,\n      60305.2,\n      60435.8,\n      60543.3,\n      60924.7\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$60,543.30\",\n  \"risk_scenario\": \"$60,174.60-$60,435.80 bearish OB가 흡수되고 가격이 range high $60,543.30 위에서 15분봉 기준 수용되면, 하방 BOS는 실패한 breakdown으로 전환될 수 있다. 이 경우 $60,924.70 전일 고점 및 7일 고점 $61,346.40 쪽 buy-side liquidity를 회수하는 bullish reversal 시나리오가 열릴 수 있다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "fibonacci": {
      "agent_id": "fibonacci",
      "display_name": "Fibonacci Analyst",
      "signal": "neutral",
      "confidence": 0.58,
      "structure_bias": "bearish",
      "setup_bias": "bullish",
      "setup_score": 0.68,
      "setup_signals": [
        "할인 구간 진입: 현재가 $59,849.90가 EQ/ret_0.5 $60,185.05 아래에 위치",
        "ext_1.272 지지 테스트: 현재가가 $59,797.89까지 0.09% 거리로 근접",
        "강한 피보나치 클러스터: $59,966.10 구간에 ext_1.272, ext_1.0, ret_0.236, ret_0.618이 중첩",
        "반등 후보 구간: confluence_quality 1.000 및 fib_reaction_state가 testing, reaction_probability 0.65",
        "상방 회복 목표: ret_0.382 $60,125.87 및 golden ratio ret_0.618 $60,244.23"
      ],
      "reasoning": "확정 구조 관점에서는 최근 스윙이 High $60,436 → Low $59,934의 하락 방향이며, 현재가 $59,849.90가 EMA20 $60,082.20, EMA120 $60,178.19, EMA240 $60,231.96 아래에 있어 structure_bias는 bearish로 판단한다. 다만 실행 셋업 관점에서는 현재가가 EQ인 ret_0.5 $60,185.05 아래 할인 구간에 있고, ext_1.272 $59,797.89 지지에 0.09%까지 접근해 단기 반등 셋업이 형성되어 setup_bias는 bullish이다. 핵심 저항은 ext_1.0 $59,934.30, ret_0.236 $60,052.65, ret_0.382 $60,125.87이며, 특히 golden ratio ret_0.618 $60,244.23은 반등 시 가장 중요한 고확률 저항이다. 반대로 $59,797.89가 무너지면 ext_1.414 $59,726.68, ext_1.618 $59,624.37 순으로 하락 확장이 열리므로 현재 신호는 방향 확정 전 중립으로 본다.",
      "key_levels": {
        "support": [
          59797.89,
          59726.68,
          59624.37,
          59432.8
        ],
        "resistance": [
          59934.3,
          60052.65,
          60125.87,
          60244.23,
          60328.48
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$59,624.37",
      "risk_scenario": "$59,797.89 ext_1.272 지지가 실패하고 $59,624.37 ext_1.618까지 이탈하면 단기 반등 셋업은 무효화되며, 다음 하락 확장 목표는 $59,432.80 ext_2.0 및 하단 클러스터 $59,209.87로 열릴 수 있다. 반대로 $60,125.87을 회복하면 $60,244.23 golden ratio 저항 재시험 가능성이 커진다.",
      "data_quality": "high",
      "metrics": {
        "swing_pair": "High→Low: $60,436 → $59,934",
        "direction": "down",
        "nearest_fib": "ext_1.272",
        "nearest_fib_price": 59797.89,
        "nearest_fib_distance": 0.09,
        "golden_ratio_level": 60244.23,
        "fib_ret_382": 60125.87,
        "fib_ret_618": 60244.23,
        "confluence_zones": [
          {
            "price": 59618.01,
            "count": 4,
            "levels": [
              "ext_2.0",
              "ext_1.618",
              "ret_0.5",
              "ext_1.414"
            ],
            "cluster_score": 1.0
          },
          {
            "price": 59966.1,
            "count": 4,
            "levels": [
              "ext_1.272",
              "ext_1.0",
              "ret_0.236",
              "ret_0.618"
            ],
            "cluster_score": 1.0
          },
          {
            "price": 60220.91,
            "count": 4,
            "levels": [
              "ret_0.382",
              "ret_0.5",
              "ret_0.618",
              "ret_0.786"
            ],
            "cluster_score": 1.0
          },
          {
            "price": 59209.87,
            "count": 2,
            "levels": [
              "ext_2.618",
              "ret_0.382"
            ],
            "cluster_score": 0.6
          }
        ],
        "support_levels": [
          59797.892,
          59726.679000000004,
          59624.373
        ],
        "resistance_levels": [
          59934.3,
          60052.654,
          60125.873
        ],
        "level_candidates": [
          {
            "name": "ret_0.236",
            "price": 60052.65,
            "distance_pct": 0.34,
            "is_support": false,
            "cluster_score": 1.0
          },
          {
            "name": "ret_0.382",
            "price": 60125.87,
            "distance_pct": 0.46,
            "is_support": false,
            "cluster_score": 1.0
          },
          {
            "name": "ret_0.5",
            "price": 60185.05,
            "distance_pct": 0.56,
            "is_support": false,
            "cluster_score": 1.0
          },
          {
            "name": "ret_0.618",
            "price": 60244.23,
            "distance_pct": 0.66,
            "is_support": false,
            "cluster_score": 1.0
          },
          {
            "name": "ret_0.786",
            "price": 60328.48,
            "distance_pct": 0.8,
            "is_support": false,
            "cluster_score": 1.0
          },
          {
            "name": "ext_1.0",
            "price": 59934.3,
            "distance_pct": 0.14,
            "is_support": false,
            "cluster_score": 1.0
          },
          {
            "name": "ext_1.272",
            "price": 59797.89,
            "distance_pct": 0.09,
            "is_support": true,
            "cluster_score": 1.0
          },
          {
            "name": "ext_1.414",
            "price": 59726.68,
            "distance_pct": 0.21,
            "is_support": true,
            "cluster_score": 1.0
          },
          {
            "name": "ext_1.618",
            "price": 59624.37,
            "distance_pct": 0.38,
            "is_support": true,
            "cluster_score": 1.0
          },
          {
            "name": "ext_2.0",
            "price": 59432.8,
            "distance_pct": 0.7,
            "is_support": true,
            "cluster_score": 1.0
          }
        ],
        "confluence_quality": 1.0,
        "fib_reaction_state": "testing",
        "reaction_probability": 0.65
      },
      "raw_llm_response": "{\n  \"signal\": \"neutral\",\n  \"confidence\": 0.58,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.68,\n  \"setup_signals\": [\n    \"할인 구간 진입: 현재가 $59,849.90가 EQ/ret_0.5 $60,185.05 아래에 위치\",\n    \"ext_1.272 지지 테스트: 현재가가 $59,797.89까지 0.09% 거리로 근접\",\n    \"강한 피보나치 클러스터: $59,966.10 구간에 ext_1.272, ext_1.0, ret_0.236, ret_0.618이 중첩\",\n    \"반등 후보 구간: confluence_quality 1.000 및 fib_reaction_state가 testing, reaction_probability 0.65\",\n    \"상방 회복 목표: ret_0.382 $60,125.87 및 golden ratio ret_0.618 $60,244.23\"\n  ],\n  \"reasoning\": \"확정 구조 관점에서는 최근 스윙이 High $60,436 → Low $59,934의 하락 방향이며, 현재가 $59,849.90가 EMA20 $60,082.20, EMA120 $60,178.19, EMA240 $60,231.96 아래에 있어 structure_bias는 bearish로 판단한다. 다만 실행 셋업 관점에서는 현재가가 EQ인 ret_0.5 $60,185.05 아래 할인 구간에 있고, ext_1.272 $59,797.89 지지에 0.09%까지 접근해 단기 반등 셋업이 형성되어 setup_bias는 bullish이다. 핵심 저항은 ext_1.0 $59,934.30, ret_0.236 $60,052.65, ret_0.382 $60,125.87이며, 특히 golden ratio ret_0.618 $60,244.23은 반등 시 가장 중요한 고확률 저항이다. 반대로 $59,797.89가 무너지면 ext_1.414 $59,726.68, ext_1.618 $59,624.37 순으로 하락 확장이 열리므로 현재 신호는 방향 확정 전 중립으로 본다.\",\n  \"key_levels\": {\n    \"support\": [\n      59797.89,\n      59726.68,\n      59624.37,\n      59432.8\n    ],\n    \"resistance\": [\n      59934.3,\n      60052.65,\n      60125.87,\n      60244.23,\n      60328.48\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$59,624.37\",\n  \"risk_scenario\": \"$59,797.89 ext_1.272 지지가 실패하고 $59,624.37 ext_1.618까지 이탈하면 단기 반등 셋업은 무효화되며, 다음 하락 확장 목표는 $59,432.80 ext_2.0 및 하단 클러스터 $59,209.87로 열릴 수 있다. 반대로 $60,125.87을 회복하면 $60,244.23 golden ratio 저항 재시험 가능성이 커진다.\",\n  \"data_quality\": \"high\"\n}"
    },
    "harmonic": {
      "agent_id": "harmonic",
      "display_name": "Harmonic Specialist",
      "signal": "bullish",
      "confidence": 0.61,
      "structure_bias": "neutral",
      "setup_bias": "bullish",
      "setup_score": 0.78,
      "setup_signals": [
        "현재가 $59,849.90가 고컨플루언스 bullish Bat 형성 PRZ $59,703.20-$60,039.05 내부에 위치, PRZ까지 거리 0.04%",
        "bullish Gartley 형성 PRZ $59,766.59-$60,009.11 및 bullish Crab 형성 PRZ $59,807.02-$60,065.09가 현재가와 중첩",
        "완성된 bullish Butterfly PRZ $59,792.38-$60,098.72에서 반응 확인됨: AD 0.382 반응 도달, PRZ 중심 회수, D/PRZ 실패구간 방어, reaction_score 1.0",
        "완성된 bullish Bat PRZ $59,899.14-$60,197.02도 반응 확인됨: XAD 0.8861, directional_vote_weight 0.58",
        "단기 EMA 저항대가 위에 밀집: EMA20 $60,082.20, EMA120 $60,178.19, EMA240 $60,231.96"
      ],
      "reasoning": "15분 BTC/USDT는 현재 $59,849.90로, 핵심 bullish PRZ 클러스터 $59,703.20-$60,098.72 안에 머물고 있습니다. 가장 가까운 패턴은 bullish Bat이며 D 예상가 $59,871.13, PRZ $59,703.20-$60,039.05로 현재가와 0.04% 차이에 불과하고, Gartley $59,766.59-$60,009.11 및 Crab $59,807.02-$60,065.09도 같은 구간에 중첩됩니다. 구조적으로는 확인된 BOS/CHoCH 자료가 없고 가격이 EMA20 $60,082.20, EMA120 $60,178.19, EMA240 $60,231.96 아래에 있어 structure_bias는 중립으로 둡니다. 다만 완성된 bullish Butterfly와 Bat가 PRZ 터치 후 AD 0.382 반응, PRZ 중심 회수, D 실패구간 방어를 보였기 때문에 setup_bias는 상승이며, 검증된 TP 후보는 $60,154.37-$60,242.79, 이후 $60,283.38-$60,416.03입니다.",
      "key_levels": {
        "support": [
          59703.2,
          59766.59,
          59807.02,
          59899.14,
          58030.0
        ],
        "resistance": [
          60039.05,
          60065.09,
          60098.72,
          60154.37,
          60242.79,
          60416.03,
          60697.6
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$59,703.20 하향 이탈 및 15분 종가 기준 수용",
      "risk_scenario": "가격이 $59,703.20 아래로 내려가 PRZ 하단을 수용하면 bullish Bat/Gartley/Butterfly 클러스터 방어 실패로 해석되며, $59,807-$60,098 구간은 지지에서 저항으로 전환될 수 있습니다. 이 경우 확인된 조정 반등 TP인 $60,154-$60,416 도달 가능성은 약화되고, 7일 저점 $58,030.00 방향의 유동성 재탐색 리스크가 커집니다.",
      "data_quality": "high",
      "metrics": {
        "patterns_found": 36,
        "completed_patterns_found": 14,
        "forming_d_prz_found": 22,
        "swing_orders_scanned": [
          3,
          5,
          8
        ],
        "swing_search_window": 34,
        "multiscale_swings_scanned": 60,
        "swing_highs_scanned": 30,
        "swing_lows_scanned": 30,
        "timeframe": "15m",
        "prz_active_threshold_pct": 0.3,
        "prz_nearby_threshold_pct": 0.6,
        "prz_watch_threshold_pct": 1.2,
        "prz_max_width_pct": 0.6,
        "quality_counts": {
          "high": 17,
          "medium": 13,
          "low": 6
        },
        "prz_status_counts": {
          "active": 12,
          "nearby": 4,
          "watch": 15,
          "far": 5,
          "forming": 5
        },
        "high_confluence_prz_count": 30,
        "strict_patterns_found": 26,
        "candidate_patterns_found": 10,
        "active_patterns_at_prz": 12,
        "nearby_patterns": 4,
        "all_patterns": [
          "shark",
          "crab",
          "bat",
          "gartley",
          "butterfly",
          "bat",
          "butterfly",
          "shark",
          "gartley",
          "bat",
          "shark",
          "bat",
          "crab",
          "gartley",
          "gartley",
          "butterfly",
          "gartley",
          "crab",
          "gartley",
          "butterfly",
          "bat",
          "butterfly",
          "shark",
          "shark",
          "crab",
          "shark",
          "shark",
          "butterfly",
          "bat",
          "butterfly",
          "crab",
          "shark",
          "crab",
          "bat",
          "crab",
          "crab"
        ],
        "all_signals": [
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish"
        ],
        "best_pattern": "shark",
        "best_pattern_quality": "strict",
        "best_quality": "medium",
        "best_pattern_score": 0.98,
        "best_completion_status": "forming",
        "nearest_pattern": "bat",
        "nearest_prz": 59871.13,
        "price_to_prz": 0.04,
        "prz_range": [
          59703.2,
          60039.05
        ],
        "council_relevant_prz_count": 10,
        "directional_influence_prz_count": 10,
        "confirmed_reaction_prz_count": 4,
        "validated_harmonic_tp_count": 4,
        "pattern_candidates": [
          {
            "pattern": "crab",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.975,
            "ratio_score": 1.0,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 59936.06,
            "prz_range": [
              59807.02,
              60065.09
            ],
            "prz_width_pct": 0.431,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.14,
            "price_to_prz_pct_raw": 0.144,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "crab",
              "d_price": 59936.06,
              "a_price": 60697.6,
              "tp1_ad_382": 60226.97,
              "tp2_ad_618": 60406.69,
              "tp3_a_or_structure_liquidity": 60697.6,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5179,
              "ABC": 0.4218
            },
            "x_price": 60162.0,
            "x_idx": 186,
            "x_order": 8,
            "a_price": 60697.6,
            "a_idx": 196,
            "a_order": 3,
            "b_price": 60420.2,
            "b_idx": 212,
            "b_order": 3,
            "c_price": 60303.2,
            "c_idx": 232,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.966,
            "ratio_score": 0.961,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 59871.13,
            "prz_range": [
              59703.2,
              60039.05
            ],
            "prz_width_pct": 0.561,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.04,
            "price_to_prz_pct_raw": 0.0355,
            "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": 59871.13,
              "a_price": 60250.4,
              "tp1_ad_382": 60016.01,
              "tp2_ad_618": 60105.52,
              "tp3_a_or_structure_liquidity": 60250.4,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4956,
              "ABC": 0.8974
            },
            "x_price": 59819.8,
            "x_idx": 229,
            "x_order": 8,
            "a_price": 60250.4,
            "a_idx": 250,
            "a_order": 3,
            "b_price": 60037.0,
            "b_idx": 277,
            "b_order": 8,
            "c_price": 60228.5,
            "c_idx": 293,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.963,
            "ratio_score": 0.959,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 59887.85,
            "prz_range": [
              59766.59,
              60009.11
            ],
            "prz_width_pct": 0.405,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.06,
            "price_to_prz_pct_raw": 0.0634,
            "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": 59887.85,
              "a_price": 60543.3,
              "tp1_ad_382": 60138.23,
              "tp2_ad_618": 60292.92,
              "tp3_a_or_structure_liquidity": 60543.3,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6111,
              "ABC": 0.7877
            },
            "x_price": 59714.8,
            "x_idx": 257,
            "x_order": 8,
            "a_price": 60543.3,
            "a_idx": 270,
            "a_order": 8,
            "b_price": 60037.0,
            "b_idx": 277,
            "b_order": 8,
            "c_price": 60435.8,
            "c_idx": 286,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.958,
            "ratio_score": 0.979,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 59945.55,
            "prz_range": [
              59792.38,
              60098.72
            ],
            "prz_width_pct": 0.511,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.16,
            "price_to_prz_pct_raw": 0.1598,
            "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": 59945.55,
              "a_price": 60492.2,
              "tp1_ad_382": 60154.37,
              "tp2_ad_618": 60283.38,
              "tp3_a_or_structure_liquidity": 60492.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7905,
              "ABC": 0.4276
            },
            "x_price": 60074.5,
            "x_idx": 165,
            "x_order": 8,
            "a_price": 60492.2,
            "a_idx": 167,
            "a_order": 3,
            "b_price": 60162.0,
            "b_idx": 186,
            "b_order": 8,
            "c_price": 60303.2,
            "c_idx": 232,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.955,
            "ratio_score": 0.998,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 60091.22,
            "prz_range": [
              60012.86,
              60169.57
            ],
            "prz_width_pct": 0.261,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.4,
            "price_to_prz_pct_raw": 0.4032,
            "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": 60091.22,
              "a_price": 60697.6,
              "tp1_ad_382": 60322.86,
              "tp2_ad_618": 60465.96,
              "tp3_a_or_structure_liquidity": 60697.6,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4452,
              "ABC": 0.3818
            },
            "x_price": 60074.5,
            "x_idx": 165,
            "x_order": 8,
            "a_price": 60697.6,
            "a_idx": 196,
            "a_order": 3,
            "b_price": 60420.2,
            "b_idx": 212,
            "b_order": 3,
            "c_price": 60314.3,
            "c_idx": 245,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.947,
            "ratio_score": 0.991,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 59950.0,
            "prz_range": [
              59792.38,
              60098.72
            ],
            "prz_width_pct": 0.511,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.16,
            "price_to_prz_pct_raw": 0.1598,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 0.672,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 59945.55,
              "a_price": 60492.2,
              "tp1_ad_382": 60154.37,
              "tp2_ad_618": 60283.38,
              "tp3_a_or_structure_liquidity": 60492.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7905,
              "ABC": 0.4276,
              "BCD": 2.5014,
              "XAD": 1.2981
            },
            "x_price": 60074.5,
            "x_idx": 165,
            "x_order": 8,
            "a_price": 60492.2,
            "a_idx": 167,
            "a_order": 3,
            "b_price": 60162.0,
            "b_idx": 186,
            "b_order": 8,
            "c_price": 60303.2,
            "c_idx": 232,
            "c_order": 5,
            "d_idx": 240
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.946,
            "ratio_score": 0.977,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 60184.14,
            "prz_range": [
              60109.93,
              60258.36
            ],
            "prz_width_pct": 0.247,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.56,
            "price_to_prz_pct_raw": 0.5585,
            "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": 60184.14,
              "a_price": 60557.8,
              "tp1_ad_382": 60326.88,
              "tp2_ad_618": 60415.06,
              "tp3_a_or_structure_liquidity": 60557.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6141,
              "ABC": 0.6924
            },
            "x_price": 60074.5,
            "x_idx": 165,
            "x_order": 8,
            "a_price": 60557.8,
            "a_idx": 171,
            "a_order": 8,
            "b_price": 60261.0,
            "b_idx": 177,
            "b_order": 5,
            "c_price": 60466.5,
            "c_idx": 181,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.945,
            "ratio_score": 1.0,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 59950.0,
            "prz_range": [
              59899.14,
              60197.02
            ],
            "prz_width_pct": 0.496,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.33,
            "price_to_prz_pct_raw": 0.3311,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 0.599,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 60048.08,
              "a_price": 60557.8,
              "tp1_ad_382": 60242.79,
              "tp2_ad_618": 60363.09,
              "tp3_a_or_structure_liquidity": 60557.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4327,
              "ABC": 0.7035,
              "BCD": 2.4895,
              "XAD": 0.8861
            },
            "x_price": 59871.9,
            "x_idx": 138,
            "x_order": 3,
            "a_price": 60557.8,
            "a_idx": 171,
            "a_order": 8,
            "b_price": 60261.0,
            "b_idx": 177,
            "b_order": 5,
            "c_price": 60469.8,
            "c_idx": 226,
            "c_order": 8,
            "d_idx": 240
          }
        ],
        "council_relevant_prz": [
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.947,
            "ratio_score": 0.991,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 59950.0,
            "prz_range": [
              59792.38,
              60098.72
            ],
            "prz_width_pct": 0.511,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.16,
            "price_to_prz_pct_raw": 0.1598,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 0.672,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 59945.55,
              "a_price": 60492.2,
              "tp1_ad_382": 60154.37,
              "tp2_ad_618": 60283.38,
              "tp3_a_or_structure_liquidity": 60492.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7905,
              "ABC": 0.4276,
              "BCD": 2.5014,
              "XAD": 1.2981
            },
            "x_price": 60074.5,
            "x_idx": 165,
            "x_order": 8,
            "a_price": 60492.2,
            "a_idx": 167,
            "a_order": 3,
            "b_price": 60162.0,
            "b_idx": 186,
            "b_order": 8,
            "c_price": 60303.2,
            "c_idx": 232,
            "c_order": 5,
            "d_idx": 240
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.945,
            "ratio_score": 1.0,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 59950.0,
            "prz_range": [
              59899.14,
              60197.02
            ],
            "prz_width_pct": 0.496,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.33,
            "price_to_prz_pct_raw": 0.3311,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 0.599,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 60048.08,
              "a_price": 60557.8,
              "tp1_ad_382": 60242.79,
              "tp2_ad_618": 60363.09,
              "tp3_a_or_structure_liquidity": 60557.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4327,
              "ABC": 0.7035,
              "BCD": 2.4895,
              "XAD": 0.8861
            },
            "x_price": 59871.9,
            "x_idx": 138,
            "x_order": 3,
            "a_price": 60557.8,
            "a_idx": 171,
            "a_order": 8,
            "b_price": 60261.0,
            "b_idx": 177,
            "b_order": 5,
            "c_price": 60469.8,
            "c_idx": 226,
            "c_order": 8,
            "d_idx": 240
          },
          {
            "pattern": "crab",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.921,
            "ratio_score": 0.884,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 60017.2,
            "prz_range": [
              59855.91,
              60065.1
            ],
            "prz_width_pct": 0.349,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.18,
            "price_to_prz_pct_raw": 0.1848,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.236_reaction_reached",
                "PRZ_center_reclaimed_or_rejected"
              ],
              "reaction_score": 0.65,
              "reaction_detail": {
                "reaction_score": 0.65,
                "reaction_move_ratio_ad": 0.343,
                "adverse_move_ratio_ad": 0.444,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.236_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "crab",
              "d_price": 59960.51,
              "a_price": 60697.6,
              "tp1_ad_382": 60242.08,
              "tp2_ad_618": 60416.03,
              "tp3_a_or_structure_liquidity": 60697.6,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6354,
              "ABC": 0.4218,
              "BCD": 2.4444,
              "XAD": 1.5584
            },
            "x_price": 60261.0,
            "x_idx": 177,
            "x_order": 5,
            "a_price": 60697.6,
            "a_idx": 196,
            "a_order": 3,
            "b_price": 60420.2,
            "b_idx": 212,
            "b_order": 3,
            "c_price": 60303.2,
            "c_idx": 232,
            "c_order": 5,
            "d_idx": 245
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.906,
            "ratio_score": 0.908,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 60162.0,
            "prz_range": [
              60109.93,
              60258.36
            ],
            "prz_width_pct": 0.247,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.56,
            "price_to_prz_pct_raw": 0.5585,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 1.353,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 60184.14,
              "a_price": 60557.8,
              "tp1_ad_382": 60326.88,
              "tp2_ad_618": 60415.06,
              "tp3_a_or_structure_liquidity": 60557.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6141,
              "ABC": 0.6924,
              "BCD": 1.4818,
              "XAD": 0.819
            },
            "x_price": 60074.5,
            "x_idx": 165,
            "x_order": 8,
            "a_price": 60557.8,
            "a_idx": 171,
            "a_order": 8,
            "b_price": 60261.0,
            "b_idx": 177,
            "b_order": 5,
            "c_price": 60466.5,
            "c_idx": 181,
            "c_order": 3,
            "d_idx": 186
          },
          {
            "pattern": "crab",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.975,
            "ratio_score": 1.0,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 59936.06,
            "prz_range": [
              59807.02,
              60065.09
            ],
            "prz_width_pct": 0.431,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.14,
            "price_to_prz_pct_raw": 0.144,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "crab",
              "d_price": 59936.06,
              "a_price": 60697.6,
              "tp1_ad_382": 60226.97,
              "tp2_ad_618": 60406.69,
              "tp3_a_or_structure_liquidity": 60697.6,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5179,
              "ABC": 0.4218
            },
            "x_price": 60162.0,
            "x_idx": 186,
            "x_order": 8,
            "a_price": 60697.6,
            "a_idx": 196,
            "a_order": 3,
            "b_price": 60420.2,
            "b_idx": 212,
            "b_order": 3,
            "c_price": 60303.2,
            "c_idx": 232,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.966,
            "ratio_score": 0.961,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 59871.13,
            "prz_range": [
              59703.2,
              60039.05
            ],
            "prz_width_pct": 0.561,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.04,
            "price_to_prz_pct_raw": 0.0355,
            "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": 59871.13,
              "a_price": 60250.4,
              "tp1_ad_382": 60016.01,
              "tp2_ad_618": 60105.52,
              "tp3_a_or_structure_liquidity": 60250.4,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4956,
              "ABC": 0.8974
            },
            "x_price": 59819.8,
            "x_idx": 229,
            "x_order": 8,
            "a_price": 60250.4,
            "a_idx": 250,
            "a_order": 3,
            "b_price": 60037.0,
            "b_idx": 277,
            "b_order": 8,
            "c_price": 60228.5,
            "c_idx": 293,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.963,
            "ratio_score": 0.959,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 59887.85,
            "prz_range": [
              59766.59,
              60009.11
            ],
            "prz_width_pct": 0.405,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.06,
            "price_to_prz_pct_raw": 0.0634,
            "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": 59887.85,
              "a_price": 60543.3,
              "tp1_ad_382": 60138.23,
              "tp2_ad_618": 60292.92,
              "tp3_a_or_structure_liquidity": 60543.3,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6111,
              "ABC": 0.7877
            },
            "x_price": 59714.8,
            "x_idx": 257,
            "x_order": 8,
            "a_price": 60543.3,
            "a_idx": 270,
            "a_order": 8,
            "b_price": 60037.0,
            "b_idx": 277,
            "b_order": 8,
            "c_price": 60435.8,
            "c_idx": 286,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.958,
            "ratio_score": 0.979,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 59945.55,
            "prz_range": [
              59792.38,
              60098.72
            ],
            "prz_width_pct": 0.511,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.16,
            "price_to_prz_pct_raw": 0.1598,
            "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": 59945.55,
              "a_price": 60492.2,
              "tp1_ad_382": 60154.37,
              "tp2_ad_618": 60283.38,
              "tp3_a_or_structure_liquidity": 60492.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7905,
              "ABC": 0.4276
            },
            "x_price": 60074.5,
            "x_idx": 165,
            "x_order": 8,
            "a_price": 60492.2,
            "a_idx": 167,
            "a_order": 3,
            "b_price": 60162.0,
            "b_idx": 186,
            "b_order": 8,
            "c_price": 60303.2,
            "c_idx": 232,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.955,
            "ratio_score": 0.998,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 60091.22,
            "prz_range": [
              60012.86,
              60169.57
            ],
            "prz_width_pct": 0.261,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.4,
            "price_to_prz_pct_raw": 0.4032,
            "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": 60091.22,
              "a_price": 60697.6,
              "tp1_ad_382": 60322.86,
              "tp2_ad_618": 60465.96,
              "tp3_a_or_structure_liquidity": 60697.6,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4452,
              "ABC": 0.3818
            },
            "x_price": 60074.5,
            "x_idx": 165,
            "x_order": 8,
            "a_price": 60697.6,
            "a_idx": 196,
            "a_order": 3,
            "b_price": 60420.2,
            "b_idx": 212,
            "b_order": 3,
            "c_price": 60314.3,
            "c_idx": 245,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.946,
            "ratio_score": 0.977,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 60184.14,
            "prz_range": [
              60109.93,
              60258.36
            ],
            "prz_width_pct": 0.247,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.56,
            "price_to_prz_pct_raw": 0.5585,
            "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": 60184.14,
              "a_price": 60557.8,
              "tp1_ad_382": 60326.88,
              "tp2_ad_618": 60415.06,
              "tp3_a_or_structure_liquidity": 60557.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6141,
              "ABC": 0.6924
            },
            "x_price": 60074.5,
            "x_idx": 165,
            "x_order": 8,
            "a_price": 60557.8,
            "a_idx": 171,
            "a_order": 8,
            "b_price": 60261.0,
            "b_idx": 177,
            "b_order": 5,
            "c_price": 60466.5,
            "c_idx": 181,
            "c_order": 3,
            "d_idx": null
          }
        ],
        "report_detail_candidates": [
          {
            "pattern": "crab",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.975,
            "ratio_score": 1.0,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 59936.06,
            "prz_range": [
              59807.02,
              60065.09
            ],
            "prz_width_pct": 0.431,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.14,
            "price_to_prz_pct_raw": 0.144,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "crab",
              "d_price": 59936.06,
              "a_price": 60697.6,
              "tp1_ad_382": 60226.97,
              "tp2_ad_618": 60406.69,
              "tp3_a_or_structure_liquidity": 60697.6,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5179,
              "ABC": 0.4218
            },
            "x_price": 60162.0,
            "x_idx": 186,
            "x_order": 8,
            "a_price": 60697.6,
            "a_idx": 196,
            "a_order": 3,
            "b_price": 60420.2,
            "b_idx": 212,
            "b_order": 3,
            "c_price": 60303.2,
            "c_idx": 232,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.966,
            "ratio_score": 0.961,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 59871.13,
            "prz_range": [
              59703.2,
              60039.05
            ],
            "prz_width_pct": 0.561,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.04,
            "price_to_prz_pct_raw": 0.0355,
            "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": 59871.13,
              "a_price": 60250.4,
              "tp1_ad_382": 60016.01,
              "tp2_ad_618": 60105.52,
              "tp3_a_or_structure_liquidity": 60250.4,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4956,
              "ABC": 0.8974
            },
            "x_price": 59819.8,
            "x_idx": 229,
            "x_order": 8,
            "a_price": 60250.4,
            "a_idx": 250,
            "a_order": 3,
            "b_price": 60037.0,
            "b_idx": 277,
            "b_order": 8,
            "c_price": 60228.5,
            "c_idx": 293,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.963,
            "ratio_score": 0.959,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 59887.85,
            "prz_range": [
              59766.59,
              60009.11
            ],
            "prz_width_pct": 0.405,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.06,
            "price_to_prz_pct_raw": 0.0634,
            "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": 59887.85,
              "a_price": 60543.3,
              "tp1_ad_382": 60138.23,
              "tp2_ad_618": 60292.92,
              "tp3_a_or_structure_liquidity": 60543.3,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6111,
              "ABC": 0.7877
            },
            "x_price": 59714.8,
            "x_idx": 257,
            "x_order": 8,
            "a_price": 60543.3,
            "a_idx": 270,
            "a_order": 8,
            "b_price": 60037.0,
            "b_idx": 277,
            "b_order": 8,
            "c_price": 60435.8,
            "c_idx": 286,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.958,
            "ratio_score": 0.979,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 59945.55,
            "prz_range": [
              59792.38,
              60098.72
            ],
            "prz_width_pct": 0.511,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.16,
            "price_to_prz_pct_raw": 0.1598,
            "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": 59945.55,
              "a_price": 60492.2,
              "tp1_ad_382": 60154.37,
              "tp2_ad_618": 60283.38,
              "tp3_a_or_structure_liquidity": 60492.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7905,
              "ABC": 0.4276
            },
            "x_price": 60074.5,
            "x_idx": 165,
            "x_order": 8,
            "a_price": 60492.2,
            "a_idx": 167,
            "a_order": 3,
            "b_price": 60162.0,
            "b_idx": 186,
            "b_order": 8,
            "c_price": 60303.2,
            "c_idx": 232,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.955,
            "ratio_score": 0.998,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 60091.22,
            "prz_range": [
              60012.86,
              60169.57
            ],
            "prz_width_pct": 0.261,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.4,
            "price_to_prz_pct_raw": 0.4032,
            "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": 60091.22,
              "a_price": 60697.6,
              "tp1_ad_382": 60322.86,
              "tp2_ad_618": 60465.96,
              "tp3_a_or_structure_liquidity": 60697.6,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4452,
              "ABC": 0.3818
            },
            "x_price": 60074.5,
            "x_idx": 165,
            "x_order": 8,
            "a_price": 60697.6,
            "a_idx": 196,
            "a_order": 3,
            "b_price": 60420.2,
            "b_idx": 212,
            "b_order": 3,
            "c_price": 60314.3,
            "c_idx": 245,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.947,
            "ratio_score": 0.991,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 59950.0,
            "prz_range": [
              59792.38,
              60098.72
            ],
            "prz_width_pct": 0.511,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.16,
            "price_to_prz_pct_raw": 0.1598,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 0.672,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 59945.55,
              "a_price": 60492.2,
              "tp1_ad_382": 60154.37,
              "tp2_ad_618": 60283.38,
              "tp3_a_or_structure_liquidity": 60492.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7905,
              "ABC": 0.4276,
              "BCD": 2.5014,
              "XAD": 1.2981
            },
            "x_price": 60074.5,
            "x_idx": 165,
            "x_order": 8,
            "a_price": 60492.2,
            "a_idx": 167,
            "a_order": 3,
            "b_price": 60162.0,
            "b_idx": 186,
            "b_order": 8,
            "c_price": 60303.2,
            "c_idx": 232,
            "c_order": 5,
            "d_idx": 240
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.946,
            "ratio_score": 0.977,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 60184.14,
            "prz_range": [
              60109.93,
              60258.36
            ],
            "prz_width_pct": 0.247,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.56,
            "price_to_prz_pct_raw": 0.5585,
            "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": 60184.14,
              "a_price": 60557.8,
              "tp1_ad_382": 60326.88,
              "tp2_ad_618": 60415.06,
              "tp3_a_or_structure_liquidity": 60557.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6141,
              "ABC": 0.6924
            },
            "x_price": 60074.5,
            "x_idx": 165,
            "x_order": 8,
            "a_price": 60557.8,
            "a_idx": 171,
            "a_order": 8,
            "b_price": 60261.0,
            "b_idx": 177,
            "b_order": 5,
            "c_price": 60466.5,
            "c_idx": 181,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.945,
            "ratio_score": 1.0,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 59950.0,
            "prz_range": [
              59899.14,
              60197.02
            ],
            "prz_width_pct": 0.496,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.33,
            "price_to_prz_pct_raw": 0.3311,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 0.599,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 60048.08,
              "a_price": 60557.8,
              "tp1_ad_382": 60242.79,
              "tp2_ad_618": 60363.09,
              "tp3_a_or_structure_liquidity": 60557.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4327,
              "ABC": 0.7035,
              "BCD": 2.4895,
              "XAD": 0.8861
            },
            "x_price": 59871.9,
            "x_idx": 138,
            "x_order": 3,
            "a_price": 60557.8,
            "a_idx": 171,
            "a_order": 8,
            "b_price": 60261.0,
            "b_idx": 177,
            "b_order": 5,
            "c_price": 60469.8,
            "c_idx": 226,
            "c_order": 8,
            "d_idx": 240
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.925,
            "ratio_score": 1.0,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 60489.91,
            "prz_range": [
              60358.09,
              60621.73
            ],
            "prz_width_pct": 0.436,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.07,
            "price_to_prz_pct_raw": 1.0694,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "bat",
              "d_price": 60489.91,
              "a_price": 59819.8,
              "tp1_ad_382": 60233.93,
              "tp2_ad_618": 60075.78,
              "tp3_a_or_structure_liquidity": 59819.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4905,
              "ABC": 0.4956
            },
            "x_price": 60697.6,
            "x_idx": 196,
            "x_order": 3,
            "a_price": 59819.8,
            "a_idx": 229,
            "a_order": 8,
            "b_price": 60250.4,
            "b_idx": 250,
            "b_order": 3,
            "c_price": 60037.0,
            "c_idx": 277,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "crab",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.921,
            "ratio_score": 0.884,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 60017.2,
            "prz_range": [
              59855.91,
              60065.1
            ],
            "prz_width_pct": 0.349,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.18,
            "price_to_prz_pct_raw": 0.1848,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.236_reaction_reached",
                "PRZ_center_reclaimed_or_rejected"
              ],
              "reaction_score": 0.65,
              "reaction_detail": {
                "reaction_score": 0.65,
                "reaction_move_ratio_ad": 0.343,
                "adverse_move_ratio_ad": 0.444,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.236_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "crab",
              "d_price": 59960.51,
              "a_price": 60697.6,
              "tp1_ad_382": 60242.08,
              "tp2_ad_618": 60416.03,
              "tp3_a_or_structure_liquidity": 60697.6,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6354,
              "ABC": 0.4218,
              "BCD": 2.4444,
              "XAD": 1.5584
            },
            "x_price": 60261.0,
            "x_idx": 177,
            "x_order": 5,
            "a_price": 60697.6,
            "a_idx": 196,
            "a_order": 3,
            "b_price": 60420.2,
            "b_idx": 212,
            "b_order": 3,
            "c_price": 60303.2,
            "c_idx": 232,
            "c_order": 5,
            "d_idx": 245
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.906,
            "ratio_score": 0.908,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 60162.0,
            "prz_range": [
              60109.93,
              60258.36
            ],
            "prz_width_pct": 0.247,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.56,
            "price_to_prz_pct_raw": 0.5585,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 1.353,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 60184.14,
              "a_price": 60557.8,
              "tp1_ad_382": 60326.88,
              "tp2_ad_618": 60415.06,
              "tp3_a_or_structure_liquidity": 60557.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6141,
              "ABC": 0.6924,
              "BCD": 1.4818,
              "XAD": 0.819
            },
            "x_price": 60074.5,
            "x_idx": 165,
            "x_order": 8,
            "a_price": 60557.8,
            "a_idx": 171,
            "a_order": 8,
            "b_price": 60261.0,
            "b_idx": 177,
            "b_order": 5,
            "c_price": 60466.5,
            "c_idx": 181,
            "c_order": 3,
            "d_idx": 186
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.894,
            "ratio_score": 0.925,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 60330.21,
            "prz_range": [
              60254.01,
              60406.41
            ],
            "prz_width_pct": 0.253,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.8,
            "price_to_prz_pct_raw": 0.8025,
            "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": 60330.21,
              "a_price": 59913.9,
              "tp1_ad_382": 60171.18,
              "tp2_ad_618": 60072.93,
              "tp3_a_or_structure_liquidity": 59913.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6053,
              "ABC": 0.6342
            },
            "x_price": 60469.8,
            "x_idx": 226,
            "x_order": 8,
            "a_price": 59913.9,
            "a_idx": 233,
            "a_order": 3,
            "b_price": 60250.4,
            "b_idx": 250,
            "b_order": 3,
            "c_price": 60037.0,
            "c_idx": 277,
            "c_order": 8,
            "d_idx": null
          }
        ],
        "actionable_patterns_list": [
          {
            "pattern": "crab",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.975,
            "prz_proximity": "active",
            "prz_range": [
              59807.02,
              60065.09
            ],
            "prz_reversal_direction": "up",
            "price_to_prz_pct": 0.14,
            "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": "crab",
              "d_price": 59936.06,
              "a_price": 60697.6,
              "tp1_ad_382": 60226.97,
              "tp2_ad_618": 60406.69,
              "tp3_a_or_structure_liquidity": 60697.6,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "CRAB FORMING HIGH PRZ $59,807.02-$60,065.09: expected reversal UP if price reacts in zone"
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.966,
            "prz_proximity": "active",
            "prz_range": [
              59703.2,
              60039.05
            ],
            "prz_reversal_direction": "up",
            "price_to_prz_pct": 0.04,
            "high_confluence_prz": true,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 59871.13,
              "a_price": 60250.4,
              "tp1_ad_382": 60016.01,
              "tp2_ad_618": 60105.52,
              "tp3_a_or_structure_liquidity": 60250.4,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "BAT FORMING HIGH PRZ $59,703.20-$60,039.05: expected reversal UP if price reacts in zone"
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.963,
            "prz_proximity": "active",
            "prz_range": [
              59766.59,
              60009.11
            ],
            "prz_reversal_direction": "up",
            "price_to_prz_pct": 0.06,
            "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": 59887.85,
              "a_price": 60543.3,
              "tp1_ad_382": 60138.23,
              "tp2_ad_618": 60292.92,
              "tp3_a_or_structure_liquidity": 60543.3,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "GARTLEY FORMING HIGH PRZ $59,766.59-$60,009.11: expected reversal UP if price reacts in zone"
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.958,
            "prz_proximity": "active",
            "prz_range": [
              59792.38,
              60098.72
            ],
            "prz_reversal_direction": "up",
            "price_to_prz_pct": 0.16,
            "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": "butterfly",
              "d_price": 59945.55,
              "a_price": 60492.2,
              "tp1_ad_382": 60154.37,
              "tp2_ad_618": 60283.38,
              "tp3_a_or_structure_liquidity": 60492.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "BUTTERFLY FORMING HIGH PRZ $59,792.38-$60,098.72: expected reversal UP if price reacts in zone"
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.955,
            "prz_proximity": "active",
            "prz_range": [
              60012.86,
              60169.57
            ],
            "prz_reversal_direction": "up",
            "price_to_prz_pct": 0.4,
            "high_confluence_prz": true,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 60091.22,
              "a_price": 60697.6,
              "tp1_ad_382": 60322.86,
              "tp2_ad_618": 60465.96,
              "tp3_a_or_structure_liquidity": 60697.6,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "BAT FORMING HIGH PRZ $60,012.86-$60,169.57: expected reversal UP if price reacts in zone"
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.947,
            "prz_proximity": "active",
            "prz_range": [
              59792.38,
              60098.72
            ],
            "prz_reversal_direction": "up",
            "price_to_prz_pct": 0.16,
            "high_confluence_prz": true,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 0.672,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 59945.55,
              "a_price": 60492.2,
              "tp1_ad_382": 60154.37,
              "tp2_ad_618": 60283.38,
              "tp3_a_or_structure_liquidity": 60492.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "BUTTERFLY COMPLETED HIGH PRZ $59,792.38-$60,098.72: expected reversal UP if price reacts in zone"
          }
        ],
        "best_council_prz": {
          "pattern": "crab",
          "signal": "bullish",
          "completion_status": "forming",
          "pattern_quality": "strict",
          "quality": "high",
          "pattern_score": 0.975,
          "ratio_score": 1.0,
          "prz_score": 1.0,
          "prz_proximity": "active",
          "action_status": "active",
          "high_confluence_prz": true,
          "d_price": 59936.06,
          "prz_range": [
            59807.02,
            60065.09
          ],
          "prz_width_pct": 0.431,
          "prz_confluence_count": 3,
          "prz_fib_families": [
            "ABCD",
            "BC_EXT",
            "XAD"
          ],
          "price_to_prz_pct": 0.14,
          "price_to_prz_pct_raw": 0.144,
          "harmonic_vote_state": {
            "authority": "pre_confirmation_reversal_candidate",
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "confirmation_reasons": [],
            "reaction_score": 0.0,
            "reaction_detail": {
              "reaction_score": 0.0,
              "reasons": []
            },
            "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
            "standalone_path_override_allowed": false
          },
          "directional_vote_weight": 0.35,
          "confirmed_reaction": false,
          "standalone_path_override_allowed": false,
          "tp_ladder": {
            "direction": "bullish",
            "source": "crab",
            "d_price": 59936.06,
            "a_price": 60697.6,
            "tp1_ad_382": 60226.97,
            "tp2_ad_618": 60406.69,
            "tp3_a_or_structure_liquidity": 60697.6,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          "ratios": {
            "XAB": 0.5179,
            "ABC": 0.4218
          },
          "x_price": 60162.0,
          "x_idx": 186,
          "x_order": 8,
          "a_price": 60697.6,
          "a_idx": 196,
          "a_order": 3,
          "b_price": 60420.2,
          "b_idx": 212,
          "b_order": 3,
          "c_price": 60303.2,
          "c_idx": 232,
          "c_order": 5,
          "d_idx": null
        },
        "best_tp_ladder": {
          "direction": "bullish",
          "source": "crab",
          "d_price": 59936.06,
          "a_price": 60697.6,
          "tp1_ad_382": 60226.97,
          "tp2_ad_618": 60406.69,
          "tp3_a_or_structure_liquidity": 60697.6,
          "note": "Use as strong TP ladder context; not standalone path authority."
        },
        "best_confirmed_tp_ladder": {
          "direction": "bullish",
          "source": "butterfly",
          "d_price": 59945.55,
          "a_price": 60492.2,
          "tp1_ad_382": 60154.37,
          "tp2_ad_618": 60283.38,
          "tp3_a_or_structure_liquidity": 60492.2,
          "note": "Use as strong TP ladder context; not standalone path authority."
        },
        "tp_ladder": [
          {
            "direction": "bullish",
            "source": "crab",
            "d_price": 59936.06,
            "a_price": 60697.6,
            "tp1_ad_382": 60226.97,
            "tp2_ad_618": 60406.69,
            "tp3_a_or_structure_liquidity": 60697.6,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bullish",
            "source": "bat",
            "d_price": 59871.13,
            "a_price": 60250.4,
            "tp1_ad_382": 60016.01,
            "tp2_ad_618": 60105.52,
            "tp3_a_or_structure_liquidity": 60250.4,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bullish",
            "source": "gartley",
            "d_price": 59887.85,
            "a_price": 60543.3,
            "tp1_ad_382": 60138.23,
            "tp2_ad_618": 60292.92,
            "tp3_a_or_structure_liquidity": 60543.3,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bullish",
            "source": "butterfly",
            "d_price": 59945.55,
            "a_price": 60492.2,
            "tp1_ad_382": 60154.37,
            "tp2_ad_618": 60283.38,
            "tp3_a_or_structure_liquidity": 60492.2,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bullish",
            "source": "bat",
            "d_price": 60091.22,
            "a_price": 60697.6,
            "tp1_ad_382": 60322.86,
            "tp2_ad_618": 60465.96,
            "tp3_a_or_structure_liquidity": 60697.6,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bullish",
            "source": "butterfly",
            "d_price": 59945.55,
            "a_price": 60492.2,
            "tp1_ad_382": 60154.37,
            "tp2_ad_618": 60283.38,
            "tp3_a_or_structure_liquidity": 60492.2,
            "note": "Use as strong TP ladder context; not standalone path authority."
          }
        ],
        "validated_tp_ladder": [
          {
            "direction": "bullish",
            "source": "butterfly",
            "d_price": 59945.55,
            "a_price": 60492.2,
            "tp1_ad_382": 60154.37,
            "tp2_ad_618": 60283.38,
            "tp3_a_or_structure_liquidity": 60492.2,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bullish",
            "source": "bat",
            "d_price": 60048.08,
            "a_price": 60557.8,
            "tp1_ad_382": 60242.79,
            "tp2_ad_618": 60363.09,
            "tp3_a_or_structure_liquidity": 60557.8,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bullish",
            "source": "crab",
            "d_price": 59960.51,
            "a_price": 60697.6,
            "tp1_ad_382": 60242.08,
            "tp2_ad_618": 60416.03,
            "tp3_a_or_structure_liquidity": 60697.6,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bullish",
            "source": "gartley",
            "d_price": 60184.14,
            "a_price": 60557.8,
            "tp1_ad_382": 60326.88,
            "tp2_ad_618": 60415.06,
            "tp3_a_or_structure_liquidity": 60557.8,
            "note": "Use as strong TP ladder context; not standalone path authority."
          }
        ],
        "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": 3.36,
          "bearish": 0
        },
        "directional_score_total": 3.36,
        "directional_dominance": 1.0
      },
      "raw_llm_response": "{\n  \"signal\": \"bullish\",\n  \"confidence\": 0.61,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.78,\n  \"setup_signals\": [\n    \"현재가 $59,849.90가 고컨플루언스 bullish Bat 형성 PRZ $59,703.20-$60,039.05 내부에 위치, PRZ까지 거리 0.04%\",\n    \"bullish Gartley 형성 PRZ $59,766.59-$60,009.11 및 bullish Crab 형성 PRZ $59,807.02-$60,065.09가 현재가와 중첩\",\n    \"완성된 bullish Butterfly PRZ $59,792.38-$60,098.72에서 반응 확인됨: AD 0.382 반응 도달, PRZ 중심 회수, D/PRZ 실패구간 방어, reaction_score 1.0\",\n    \"완성된 bullish Bat PRZ $59,899.14-$60,197.02도 반응 확인됨: XAD 0.8861, directional_vote_weight 0.58\",\n    \"단기 EMA 저항대가 위에 밀집: EMA20 $60,082.20, EMA120 $60,178.19, EMA240 $60,231.96\"\n  ],\n  \"reasoning\": \"15분 BTC/USDT는 현재 $59,849.90로, 핵심 bullish PRZ 클러스터 $59,703.20-$60,098.72 안에 머물고 있습니다. 가장 가까운 패턴은 bullish Bat이며 D 예상가 $59,871.13, PRZ $59,703.20-$60,039.05로 현재가와 0.04% 차이에 불과하고, Gartley $59,766.59-$60,009.11 및 Crab $59,807.02-$60,065.09도 같은 구간에 중첩됩니다. 구조적으로는 확인된 BOS/CHoCH 자료가 없고 가격이 EMA20 $60,082.20, EMA120 $60,178.19, EMA240 $60,231.96 아래에 있어 structure_bias는 중립으로 둡니다. 다만 완성된 bullish Butterfly와 Bat가 PRZ 터치 후 AD 0.382 반응, PRZ 중심 회수, D 실패구간 방어를 보였기 때문에 setup_bias는 상승이며, 검증된 TP 후보는 $60,154.37-$60,242.79, 이후 $60,283.38-$60,416.03입니다.\",\n  \"key_levels\": {\n    \"support\": [\n      59703.2,\n      59766.59,\n      59807.02,\n      59899.14,\n      58030.0\n    ],\n    \"resistance\": [\n      60039.05,\n      60065.09,\n      60098.72,\n      60154.37,\n      60242.79,\n      60416.03,\n      60697.6\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$59,703.20 하향 이탈 및 15분 종가 기준 수용\",\n  \"risk_scenario\": \"가격이 $59,703.20 아래로 내려가 PRZ 하단을 수용하면 bullish Bat/Gartley/Butterfly 클러스터 방어 실패로 해석되며, $59,807-$60,098 구간은 지지에서 저항으로 전환될 수 있습니다. 이 경우 확인된 조정 반등 TP인 $60,154-$60,416 도달 가능성은 약화되고, 7일 저점 $58,030.00 방향의 유동성 재탐색 리스크가 커집니다.\",\n  \"data_quality\": \"high\"\n}"
    }
  },
  "chairman_synthesis": {
    "overall_signal": "bearish",
    "overall_confidence": 0.74,
    "execution_setup": {
      "setup_bias": "bearish",
      "setup_strength": 0.68,
      "active_setups": [
        "가격이 EMA20 $60,082.20, EMA120 $60,178.19, EMA240 $60,231.96 아래에 있어 단기 구조가 저항 아래 수용 상태",
        "Wyckoff 분배 하단 AR $60,074.50 이탈 후 LPSY $60,228.50 아래에서 Phase E 약세 구간으로 해석",
        "ICT 기준 최근 하향 BOS $60,037.00 이후 bearish OB $60,174.60-$60,435.80이 상단 공급 구간으로 유지",
        "파생 포지셔닝은 롱 계정 비율 0.672로 롱 과밀이며 CVD 변화 -880.9590으로 매수 체결 지지 약화",
        "단기 반등 리스크: Fibonacci ext_1.272 $59,797.89와 Harmonic bullish PRZ $59,703.20-$60,098.72가 현재가와 중첩"
      ],
      "setup_vs_structure": "구조와 다수 실행 셋업은 모두 약세로 정렬되어 있으나, 현재가는 피보나치·하모닉 반전 후보 구간 안에 있어 즉시 추격 매도에는 반등 리스크가 있다. 즉 구조적 판정은 약세지만, 실행 관점에서는 $59,700-$60,100 방어 여부가 단기 노이즈를 크게 만들 수 있다."
    },
    "signal_breakdown": {
      "bullish_count": 1,
      "bearish_count": 4,
      "neutral_count": 1
    },
    "key_levels": {
      "support": [
        59819.8,
        59797.89,
        59781.8,
        59714.8,
        58900,
        58030
      ],
      "resistance": [
        60037,
        60074.5,
        60082.2,
        60129.05,
        60174.6,
        60228.5,
        60435.8,
        60543.3
      ]
    },
    "confluences": [
      "Wyckoff의 SOW $59,852.00와 현재가 $59,849.90가 거의 동일해 분배 하단 이탈 직후의 약세 수용 테스트 구간으로 겹친다.",
      "Wyckoff $59,819.80, ICT bearish BOS $59,819.80, Harmonic Bat 기준 X $59,819.80이 동일 가격대로 겹쳐 단기 구조 기준점으로 중요하다.",
      "Wyckoff Phase E 저점 $59,781.80과 ICT Asian kill zone 저점 $59,781.80이 동일하며, Fibonacci ext_1.272 $59,797.89와도 근접해 $59,780-$59,800 구간에 지지·반응 후보가 밀집되어 있다.",
      "Derivatives, Candlestick, Fibonacci 모두 EMA20 $60,082.20, EMA120 $60,178.19, EMA240 $60,231.96 아래 거래를 언급해 $60,080-$60,230 구간이 단기 저항 클러스터로 확인된다.",
      "Wyckoff LPSY $60,228.50, Fibonacci golden ratio $60,244.23, Harmonic TP/저항 $60,242.79가 $60,230-$60,245 부근에서 강한 상단 구조 저항으로 겹친다.",
      "ICT bearish OB $60,174.60-$60,435.80과 Harmonic의 상방 TP 후보 $60,154.37-$60,416.03이 겹쳐, 반등이 발생하더라도 해당 구간은 공급과 이익실현 후보가 동시에 존재한다."
    ],
    "conflicts": [
      "구조 분석 6명 중 5명이 약세 또는 약세 구조를 지지하지만, Harmonic은 $59,703.20-$60,098.72 bullish PRZ 내부 반응을 근거로 상승 실행 셋업을 제시한다.",
      "Fibonacci는 구조 자체는 약세로 보면서도 현재가가 할인 구간 및 ext_1.272 $59,797.89 지지 근처라 실행 셋업은 상승으로 분리한다.",
      "ICT는 현재가가 EQ $60,129.05 아래 discount에 있어 추격 숏 위치는 불리하다고 보지만, 마지막 구조 이벤트와 OB는 약세를 지지한다.",
      "파생 OI가 24시간 -1.1790% 감소해 공격적 신규 숏 추세라기보다 롱 언와인딩 성격이 강하므로, 하방 구조 신호의 질은 강하지만 포지션 확장형 추세 확인은 제한적이다."
    ],
    "executive_summary": "BTC/USDT 15분 구조는 현재 분배 이후 Phase E 약세 수용 구간으로 진단된다. 가격은 Wyckoff 분배 하단 AR $60,074.50 아래에 있으며, LPSY $60,228.50 이후 SOW $59,852.00와 Phase E 저점 $59,781.80이 확인되어 박스 내부 조정보다는 하단 이탈 구조에 가깝다. EMA 저항 클러스터 $60,082.20-$60,231.96, ICT bearish OB $60,174.60-$60,435.80, Wyckoff LPSY $60,228.50이 상단 공급 구조로 겹친다. 다만 현재가는 Fibonacci $59,797.89 및 Harmonic bullish PRZ $59,703.20-$60,098.72 안에 있어 반등 후보 조건도 존재하며, 이는 구조 전환 신호가 아니라 약세 구조 내부의 실행 리스크로 분류한다. 구조적 무효화는 $60,435.80 회복 경고 후 $60,543.30 상방 수용에서 판단한다.",
    "raw_llm_response": "{\n  \"overall_signal\": \"bearish\",\n  \"overall_confidence\": 0.74,\n  \"execution_setup\": {\n    \"setup_bias\": \"bearish\",\n    \"setup_strength\": 0.68,\n    \"active_setups\": [\n      \"가격이 EMA20 $60,082.20, EMA120 $60,178.19, EMA240 $60,231.96 아래에 있어 단기 구조가 저항 아래 수용 상태\",\n      \"Wyckoff 분배 하단 AR $60,074.50 이탈 후 LPSY $60,228.50 아래에서 Phase E 약세 구간으로 해석\",\n      \"ICT 기준 최근 하향 BOS $60,037.00 이후 bearish OB $60,174.60-$60,435.80이 상단 공급 구간으로 유지\",\n      \"파생 포지셔닝은 롱 계정 비율 0.672로 롱 과밀이며 CVD 변화 -880.9590으로 매수 체결 지지 약화\",\n      \"단기 반등 리스크: Fibonacci ext_1.272 $59,797.89와 Harmonic bullish PRZ $59,703.20-$60,098.72가 현재가와 중첩\"\n    ],\n    \"setup_vs_structure\": \"구조와 다수 실행 셋업은 모두 약세로 정렬되어 있으나, 현재가는 피보나치·하모닉 반전 후보 구간 안에 있어 즉시 추격 매도에는 반등 리스크가 있다. 즉 구조적 판정은 약세지만, 실행 관점에서는 $59,700-$60,100 방어 여부가 단기 노이즈를 크게 만들 수 있다.\"\n  },\n  \"signal_breakdown\": {\n    \"bullish_count\": 1,\n    \"bearish_count\": 4,\n    \"neutral_count\": 1\n  },\n  \"key_levels\": {\n    \"support\": [\n      59819.8,\n      59797.89,\n      59781.8,\n      59714.8,\n      58900,\n      58030\n    ],\n    \"resistance\": [\n      60037,\n      60074.5,\n      60082.2,\n      60129.05,\n      60174.6,\n      60228.5,\n      60435.8,\n      60543.3\n    ]\n  },\n  \"confluences\": [\n    \"Wyckoff의 SOW $59,852.00와 현재가 $59,849.90가 거의 동일해 분배 하단 이탈 직후의 약세 수용 테스트 구간으로 겹친다.\",\n    \"Wyckoff $59,819.80, ICT bearish BOS $59,819.80, Harmonic Bat 기준 X $59,819.80이 동일 가격대로 겹쳐 단기 구조 기준점으로 중요하다.\",\n    \"Wyckoff Phase E 저점 $59,781.80과 ICT Asian kill zone 저점 $59,781.80이 동일하며, Fibonacci ext_1.272 $59,797.89와도 근접해 $59,780-$59,800 구간에 지지·반응 후보가 밀집되어 있다.\",\n    \"Derivatives, Candlestick, Fibonacci 모두 EMA20 $60,082.20, EMA120 $60,178.19, EMA240 $60,231.96 아래 거래를 언급해 $60,080-$60,230 구간이 단기 저항 클러스터로 확인된다.\",\n    \"Wyckoff LPSY $60,228.50, Fibonacci golden ratio $60,244.23, Harmonic TP/저항 $60,242.79가 $60,230-$60,245 부근에서 강한 상단 구조 저항으로 겹친다.\",\n    \"ICT bearish OB $60,174.60-$60,435.80과 Harmonic의 상방 TP 후보 $60,154.37-$60,416.03이 겹쳐, 반등이 발생하더라도 해당 구간은 공급과 이익실현 후보가 동시에 존재한다.\"\n  ],\n  \"conflicts\": [\n    \"구조 분석 6명 중 5명이 약세 또는 약세 구조를 지지하지만, Harmonic은 $59,703.20-$60,098.72 bullish PRZ 내부 반응을 근거로 상승 실행 셋업을 제시한다.\",\n    \"Fibonacci는 구조 자체는 약세로 보면서도 현재가가 할인 구간 및 ext_1.272 $59,797.89 지지 근처라 실행 셋업은 상승으로 분리한다.\",\n    \"ICT는 현재가가 EQ $60,129.05 아래 discount에 있어 추격 숏 위치는 불리하다고 보지만, 마지막 구조 이벤트와 OB는 약세를 지지한다.\",\n    \"파생 OI가 24시간 -1.1790% 감소해 공격적 신규 숏 추세라기보다 롱 언와인딩 성격이 강하므로, 하방 구조 신호의 질은 강하지만 포지션 확장형 추세 확인은 제한적이다.\"\n  ],\n  \"highest_conviction_analyst\": \"Wyckoff Expert — 분배 구조 적합도가 매우 높고, BC $60,387.80 → AR $60,074.50 → ST $60,924.70 → UTAD $60,543.30 → LPSY $60,228.50 → SOW $59,852.00 → Phase E $59,781.80로 이어지는 단계가 가격과 시간 순서상 가장 명확하게 정렬되어 있다.\",\n  \"invalidation_level\": \"$60,543.30 상방 수용. 그 전 단계로 $60,435.80 bearish OB 상단 회복은 약세 구조 훼손 경고이며, $60,543.30 위 안착은 현재 분배 Phase E 해석을 무효화한다.\",\n  \"executive_summary\": \"BTC/USDT 15분 구조는 현재 분배 이후 Phase E 약세 수용 구간으로 진단된다. 가격은 Wyckoff 분배 하단 AR $60,074.50 아래에 있으며, LPSY $60,228.50 이후 SOW $59,852.00와 Phase E 저점 $59,781.80이 확인되어 박스 내부 조정보다는 하단 이탈 구조에 가깝다. EMA 저항 클러스터 $60,082.20-$60,231.96, ICT bearish OB $60,174.60-$60,435.80, Wyckoff LPSY $60,228.50이 상단 공급 구조로 겹친다. 다만 현재가는 Fibonacci $59,797.89 및 Harmonic bullish PRZ $59,703.20-$60,098.72 안에 있어 반등 후보 조건도 존재하며, 이는 구조 전환 신호가 아니라 약세 구조 내부의 실행 리스크로 분류한다. 구조적 무효화는 $60,435.80 회복 경고 후 $60,543.30 상방 수용에서 판단한다.\"\n}"
  },
  "overall_signal": "bearish",
  "overall_confidence": 0.74,
  "operating_path": {
    "path_type": "complex",
    "confidence": 0.6,
    "waypoints": [
      {
        "seq": 1,
        "price": 59966.1,
        "type": "resistance_test",
        "source": "Fibonacci(strict 컨플루언스 $59,966.10 score 1.0), Wyckoff(AR $60,074.50), ICT(하향 BOS $60,037 + bearish OB 하단), Derivatives·Candlestick(EMA20 $60,082.20)",
        "description": "현재가 $59,849.90가 Fibonacci ext_1.272 $59,797.89·Harmonic bullish PRZ 위에서 확인한 반등 리스크를 반영. 약세 구조 내 되돌림이 strict 피보나치 컨플루언스 $59,966.10에서 1차 공급에 직면하고, 바로 위 EMA20 $60,082.20·Wyckoff AR $60,074.50·ICT BOS $60,037 벽 하단에서 매도 재개가 기대되는 숏 재진입 구간. 반등이 EMA 클러스터를 넘지 못하는 것이 약세 경로의 핵심 전제.",
        "est_hours": 3.0,
        "turning_zone": [
          59966.1,
          60037.0
        ],
        "likely_wick": 60017.2,
        "rejection_confirm": 59852.0,
        "invalid_overshoot": 60082.2,
        "calibration_reasoning": "strict 4중 피보나치 컨플루언스 $59,966.10을 zone 하단으로, crab D/PRZ $60,017.2(CONFIRMED_REACTION)와 ICT BOS $60,037을 상단으로 고정(폭 0.46×ATR). likely_wick은 라운드넘버 $60,000 위 확정 반응대 crab PRZ $60,017.2이며, EMA20 $60,082.20·Wyckoff AR $60,074.50 클러스터 상향 종가 돌파는 약세 전제를 무효화. 반등 거부 확인은 SOW $59,852 회귀."
      },
      {
        "seq": 2,
        "price": 59781.8,
        "type": "support_test",
        "source": "Wyckoff(Phase E 저점 $59,781.80), ICT(Asian kill zone 저점 $59,781.80), Fibonacci(ext_1.272 $59,797.89 인접)",
        "description": "AR/EMA 공급 거부 후 SOW $59,852.00와 현재가를 하향 이탈하며 Wyckoff Phase E 저점 $59,781.80(= ICT Asian kill zone 저점, $59,780-$59,800 밀집 지지대)을 재시험. 이 구간 방어 여부가 마크다운 가속의 분기점.",
        "est_hours": 8.0,
        "turning_zone": [
          59714.8,
          59781.8
        ],
        "likely_wick": 59726.68,
        "rejection_confirm": 59819.8,
        "invalid_overshoot": 59700.0,
        "calibration_reasoning": "Phase E 저점·dense support($59,780-800) 하단 $59,781.80 아래로 피보나치 지지 $59,726.68과 ICT 전일 저가/sell-side 유동성 $59,714.80까지 0.43×ATR 확장. 방어 시 likely_wick은 피보나치 지지 $59,726.68(유동성 바로 위), $59,819.80 회복이 바운스 확인이며 $59,714.80 하향 종가 이탈은 sweep 시나리오(WP3)로 전환되어 invalid."
      },
      {
        "seq": 3,
        "price": 59618.01,
        "type": "liquidity_sweep",
        "source": "Fibonacci(strict 컨플루언스 $59,618.01, ext_1.618 $59,624.37), ICT(전일 저가 $59,714.80 sell-side liquidity)",
        "description": "Phase E 저점 이탈 시 ICT 전일 저가 $59,714.80 sell-side 유동성을 sweep 하며 strict 피보나치 컨플루언스 $59,618.01·ext_1.618 $59,624.37까지 하락 확장.",
        "est_hours": 15.0,
        "turning_zone": [
          59560.0,
          59624.37
        ],
        "likely_wick": 59600.0,
        "rejection_confirm": 59650.0,
        "invalid_overshoot": 59540.0,
        "calibration_reasoning": "하방(sell-side) 유동성 sweep이므로 zone을 base 아래로 설정; strict 4중 컨플루언스 $59,618.01·ext_1.618 $59,624.37을 상단으로 고정(폭 0.41×ATR). sweep 언더컷은 라운드넘버 $59,600 마그넷을 likely_wick으로 끌어당기며, 컨플루언스 재상방 $59,650 회복이 반전 확인, $59,540 종가 이탈은 WP4로의 연속 하락."
      },
      {
        "seq": 4,
        "price": 59432.8,
        "type": "swing_low",
        "source": "Fibonacci(지지 $59,432.80), Derivatives(청산 클러스터 $58,900 접근, CVD -880·롱 과밀 언와인딩)",
        "description": "분배 마크다운이 지속되면 피보나치 지지 $59,432.80까지 진행. 매도 모멘텀이 가속되면 Derivatives 청산 클러스터 $58,900가 24시간 확장 목표.",
        "est_hours": 22.0,
        "turning_zone": [
          59308.66,
          59432.8
        ],
        "likely_wick": 59400.0,
        "rejection_confirm": 59500.0,
        "invalid_overshoot": 59209.87,
        "calibration_reasoning": "터미널 swing_low로 0.8×ATR 폭 적용(피보나치 지지 $59,432.80~$59,308.66); 라운드넘버 $59,400을 likely_wick으로, $59,500 회복이 저점 확인. 피보나치 컨플루언스 $59,209.87 이탈 시 Derivatives 청산 클러스터 $58,900로 확장되므로 invalid_overshoot로 설정."
      }
    ],
    "period_extremes": {
      "4h": {
        "expected_high": 60037.0,
        "expected_low": 59800.0,
        "high_first": false
      },
      "8h": {
        "expected_high": 60037.0,
        "expected_low": 59781.8,
        "high_first": true
      },
      "24h": {
        "expected_high": 60037.0,
        "expected_low": 59432.8,
        "high_first": true
      }
    },
    "triggers": {
      "bullish": {
        "price": 60244.23,
        "description": "반등이 EMA 클러스터를 회복하고 Fibonacci golden ratio $60,244.23·Wyckoff LPSY $60,228.50·EMA240 $60,231.96를 상방 돌파하면 되돌림이 단순 조정을 넘어 구조 회복 시도로 전환되어 약세 경로 경고. $60,435.80 bearish OB 상단 돌파 시 숏 스퀴즈(파생 $61,300 청산 유동성) 리스크 가속."
      },
      "bearish": {
        "price": 59781.8,
        "description": "Wyckoff Phase E 저점·ICT Asian kill zone 저점 $59,781.80 이탈 시 분배 마크다운 재개 확인 → $59,714.80 전일 저가, $59,618 sell-side 유동성으로 하락 가속."
      }
    },
    "scenario_invalidation": 60543.3,
    "raw_llm_response": "```json\n{\n  \"path_type\": \"complex\",\n  \"confidence\": 0.6,\n  \"waypoints\": [\n    {\n      \"seq\": 1,\n      \"price\": 59966.10,\n      \"type\": \"resistance_test\",\n      \"source\": \"Fibonacci(strict 컨플루언스 $59,966.10 score 1.0), Wyckoff(AR $60,074.50), ICT(하향 BOS $60,037 + bearish OB 하단), Derivatives·Candlestick(EMA20 $60,082.20)\",\n      \"description\": \"현재가 $59,849.90가 Fibonacci ext_1.272 $59,797.89·Harmonic bullish PRZ 위에서 확인한 반등 리스크를 반영. 약세 구조 내 되돌림이 strict 피보나치 컨플루언스 $59,966.10에서 1차 공급에 직면하고, 바로 위 EMA20 $60,082.20·Wyckoff AR $60,074.50·ICT BOS $60,037 벽 하단에서 매도 재개가 기대되는 숏 재진입 구간. 반등이 EMA 클러스터를 넘지 못하는 것이 약세 경로의 핵심 전제.\",\n      \"est_hours\": 3.0\n    },\n    {\n      \"seq\": 2,\n      \"price\": 59781.80,\n      \"type\": \"support_test\",\n      \"source\": \"Wyckoff(Phase E 저점 $59,781.80), ICT(Asian kill zone 저점 $59,781.80), Fibonacci(ext_1.272 $59,797.89 인접)\",\n      \"description\": \"AR/EMA 공급 거부 후 SOW $59,852.00와 현재가를 하향 이탈하며 Wyckoff Phase E 저점 $59,781.80(= ICT Asian kill zone 저점, $59,780-$59,800 밀집 지지대)을 재시험. 이 구간 방어 여부가 마크다운 가속의 분기점.\",\n      \"est_hours\": 8.0\n    },\n    {\n      \"seq\": 3,\n      \"price\": 59618.01,\n      \"type\": \"liquidity_sweep\",\n      \"source\": \"Fibonacci(strict 컨플루언스 $59,618.01, ext_1.618 $59,624.37), ICT(전일 저가 $59,714.80 sell-side liquidity)\",\n      \"description\": \"Phase E 저점 이탈 시 ICT 전일 저가 $59,714.80 sell-side 유동성을 sweep 하며 strict 피보나치 컨플루언스 $59,618.01·ext_1.618 $59,624.37까지 하락 확장.\",\n      \"est_hours\": 15.0\n    },\n    {\n      \"seq\": 4,\n      \"price\": 59432.80,\n      \"type\": \"swing_low\",\n      \"source\": \"Fibonacci(지지 $59,432.80), Derivatives(청산 클러스터 $58,900 접근, CVD -880·롱 과밀 언와인딩)\",\n      \"description\": \"분배 마크다운이 지속되면 피보나치 지지 $59,432.80까지 진행. 매도 모멘텀이 가속되면 Derivatives 청산 클러스터 $58,900가 24시간 확장 목표.\",\n      \"est_hours\": 22.0\n    }\n  ],\n  \"period_extremes\": {\n    \"4h\":  {\"expected_high\": 60037.00, \"expected_low\": 59800.00, \"high_first\": false},\n    \"8h\":  {\"expected_high\": 60037.00, \"expected_low\": 59781.80, \"high_first\": true},\n    \"24h\": {\"expected_high\": 60037.00, \"expected_low\": 59432.80, \"high_first\": true}\n  },\n  \"triggers\": {\n    \"bullish\": {\"price\": 60244.23, \"description\": \"반등이 EMA 클러스터를 회복하고 Fibonacci golden ratio $60,244.23·Wyckoff LPSY $60,228.50·EMA240 $60,231.96를 상방 돌파하면 되돌림이 단순 조정을 넘어 구조 회복 시도로 전환되어 약세 경로 경고. $60,435.80 bearish OB 상단 돌파 시 숏 스퀴즈(파생 $61,300 청산 유동성) 리스크 가속.\"},\n    \"bearish\": {\"price\": 59781.80, \"description\": \"Wyckoff Phase E 저점·ICT Asian kill zone 저점 $59,781.80 이탈 시 분배 마크다운 재개 확인 → $59,714.80 전일 저가, $59,618 sell-side 유동성으로 하락 가속.\"}\n  },\n  \"scenario_invalidation\": 60543.30\n}\n```"
  },
  "tp_calibration": {
    "calibrated_waypoints": [
      {
        "seq": 1,
        "base_target": 59966.1,
        "turning_zone": [
          59966.1,
          60037.0
        ],
        "likely_wick": 60017.2,
        "rejection_confirm": 59852.0,
        "invalid_overshoot": 60082.2,
        "calibration_reasoning": "strict 4중 피보나치 컨플루언스 $59,966.10을 zone 하단으로, crab D/PRZ $60,017.2(CONFIRMED_REACTION)와 ICT BOS $60,037을 상단으로 고정(폭 0.46×ATR). likely_wick은 라운드넘버 $60,000 위 확정 반응대 crab PRZ $60,017.2이며, EMA20 $60,082.20·Wyckoff AR $60,074.50 클러스터 상향 종가 돌파는 약세 전제를 무효화. 반등 거부 확인은 SOW $59,852 회귀."
      },
      {
        "seq": 2,
        "base_target": 59781.8,
        "turning_zone": [
          59714.8,
          59781.8
        ],
        "likely_wick": 59726.68,
        "rejection_confirm": 59819.8,
        "invalid_overshoot": 59700.0,
        "calibration_reasoning": "Phase E 저점·dense support($59,780-800) 하단 $59,781.80 아래로 피보나치 지지 $59,726.68과 ICT 전일 저가/sell-side 유동성 $59,714.80까지 0.43×ATR 확장. 방어 시 likely_wick은 피보나치 지지 $59,726.68(유동성 바로 위), $59,819.80 회복이 바운스 확인이며 $59,714.80 하향 종가 이탈은 sweep 시나리오(WP3)로 전환되어 invalid."
      },
      {
        "seq": 3,
        "base_target": 59618.01,
        "turning_zone": [
          59560.0,
          59624.37
        ],
        "likely_wick": 59600.0,
        "rejection_confirm": 59650.0,
        "invalid_overshoot": 59540.0,
        "calibration_reasoning": "하방(sell-side) 유동성 sweep이므로 zone을 base 아래로 설정; strict 4중 컨플루언스 $59,618.01·ext_1.618 $59,624.37을 상단으로 고정(폭 0.41×ATR). sweep 언더컷은 라운드넘버 $59,600 마그넷을 likely_wick으로 끌어당기며, 컨플루언스 재상방 $59,650 회복이 반전 확인, $59,540 종가 이탈은 WP4로의 연속 하락."
      },
      {
        "seq": 4,
        "base_target": 59432.8,
        "turning_zone": [
          59308.66,
          59432.8
        ],
        "likely_wick": 59400.0,
        "rejection_confirm": 59500.0,
        "invalid_overshoot": 59209.87,
        "calibration_reasoning": "터미널 swing_low로 0.8×ATR 폭 적용(피보나치 지지 $59,432.80~$59,308.66); 라운드넘버 $59,400을 likely_wick으로, $59,500 회복이 저점 확인. 피보나치 컨플루언스 $59,209.87 이탈 시 Derivatives 청산 클러스터 $58,900로 확장되므로 invalid_overshoot로 설정."
      }
    ],
    "raw_llm_response": "```json\n{\n  \"calibrated_waypoints\": [\n    {\n      \"seq\": 1,\n      \"base_target\": 59966.10,\n      \"turning_zone\": [59966.10, 60037.00],\n      \"likely_wick\": 60017.20,\n      \"rejection_confirm\": 59852.00,\n      \"invalid_overshoot\": 60082.20,\n      \"calibration_reasoning\": \"strict 4중 피보나치 컨플루언스 $59,966.10을 zone 하단으로, crab D/PRZ $60,017.2(CONFIRMED_REACTION)와 ICT BOS $60,037을 상단으로 고정(폭 0.46×ATR). likely_wick은 라운드넘버 $60,000 위 확정 반응대 crab PRZ $60,017.2이며, EMA20 $60,082.20·Wyckoff AR $60,074.50 클러스터 상향 종가 돌파는 약세 전제를 무효화. 반등 거부 확인은 SOW $59,852 회귀.\"\n    },\n    {\n      \"seq\": 2,\n      \"base_target\": 59781.80,\n      \"turning_zone\": [59714.80, 59781.80],\n      \"likely_wick\": 59726.68,\n      \"rejection_confirm\": 59819.80,\n      \"invalid_overshoot\": 59700.00,\n      \"calibration_reasoning\": \"Phase E 저점·dense support($59,780-800) 하단 $59,781.80 아래로 피보나치 지지 $59,726.68과 ICT 전일 저가/sell-side 유동성 $59,714.80까지 0.43×ATR 확장. 방어 시 likely_wick은 피보나치 지지 $59,726.68(유동성 바로 위), $59,819.80 회복이 바운스 확인이며 $59,714.80 하향 종가 이탈은 sweep 시나리오(WP3)로 전환되어 invalid.\"\n    },\n    {\n      \"seq\": 3,\n      \"base_target\": 59618.01,\n      \"turning_zone\": [59560.00, 59624.37],\n      \"likely_wick\": 59600.00,\n      \"rejection_confirm\": 59650.00,\n      \"invalid_overshoot\": 59540.00,\n      \"calibration_reasoning\": \"하방(sell-side) 유동성 sweep이므로 zone을 base 아래로 설정; strict 4중 컨플루언스 $59,618.01·ext_1.618 $59,624.37을 상단으로 고정(폭 0.41×ATR). sweep 언더컷은 라운드넘버 $59,600 마그넷을 likely_wick으로 끌어당기며, 컨플루언스 재상방 $59,650 회복이 반전 확인, $59,540 종가 이탈은 WP4로의 연속 하락.\"\n    },\n    {\n      \"seq\": 4,\n      \"base_target\": 59432.80,\n      \"turning_zone\": [59308.66, 59432.80],\n      \"likely_wick\": 59400.00,\n      \"rejection_confirm\": 59500.00,\n      \"invalid_overshoot\": 59209.87,\n      \"calibration_reasoning\": \"터미널 swing_low로 0.8×ATR 폭 적용(피보나치 지지 $59,432.80~$59,308.66); 라운드넘버 $59,400을 likely_wick으로, $59,500 회복이 저점 확인. 피보나치 컨플루언스 $59,209.87 이탈 시 Derivatives 청산 클러스터 $58,900로 확장되므로 invalid_overshoot로 설정.\"\n    }\n  ]\n}\n```"
  },
  "timing": {
    "stages": {
      "stage1_agents": 53.4,
      "chairman": 71.2,
      "operating_path": 452.8,
      "tp_calibrator": 352.1
    },
    "agents": {},
    "total_s": 929.5
  }
}