BTC/USDT 15M Council Report

Signal: BEARISH (74%)  |  Price: $59,389.90  |  2026-06-26 21:00 KST  |  300 candles

Council: 1 bullish, 1 neutral, 4 bearish  |  Support: $59,210 / $59,059 / $58,944  |  Resistance: $59,511 / $59,733 / $59,895

result.json   raw.txt   report.md


BTC Chart

Executive Summary

현재 15분 BTC 구조는 다수결과 가중치 기준으로 bearish이며, 핵심 근거는 Wyckoff의 확인된 분배 이후 활성 재분배 Phase E 진행, EMA20/120/240 하방 수용, 그리고 파생시장의 하락 중 OI 증가·CVD 약세다. 다만 가격은 활성 Phase E 저점 $59,210.40 근처와 ICT bullish OB $58,288-$58,944, Harmonic bullish Gartley PRZ $58,714-$59,058에 접근해 있어 구조적 약세 안의 반응 후보 구간에 위치한다. 상방에서는 $59,732.59, $59,894.71-$60,090.66, $60,734.00이 순차적 구조 저항이며, 하방에서는 $58,944, $58,714-$58,288, $58,030이 핵심 방어 구간이다. 전체 약세 구조의 주요 무효화 조건은 활성 UTAD 고점 $60,734.00 상방 회복 및 수용이며, 그 전까지는 반등 신호보다 분배 이후 하방 수용 구조가 우세하다.

Confluences

Conflicts


Agent Matrix

AgentSignalConfidenceSupportResistance
Wyckoff ExpertBEARISH82%$59,210 / $58,030$59,733 / $60,091
ICT TraderBULLISH72%$58,944 / $58,616$59,511 / $59,733
Derivatives TraderBEARISH62%$58,100 / $58,030$59,733 / $60,091
Candlestick ReaderBEARISH58%$59,143 / $58,897$59,733 / $60,091
Fibonacci AnalystBEARISH62%$58,030$59,895 / $60,074
Harmonic SpecialistNEUTRAL58%$59,059 / $58,887$59,326 / $59,597

Agent Details

Wyckoff Expert — BEARISH (82%)

Support: $59,210 / $58,030 / $58,288 | Resistance: $59,733 / $60,091 / $60,459 | Horizon: short to medium term

15분 BTC 구조는 regime=DIS, regime_state=confirmed_dis, dis_score=100.0 및 regime_fitness=1.000으로 확인된 분배/재분배 약세 구조입니다. 선행 구조는 BC $62,837.10 → AR $62,161.20 → ST $63,090.90 → UT $63,209.60 → LPSY $61,931.10 → SOW $61,578.40 → Phase E $58,030.00 순서로 완성되어, 현재 가격 $59,389.90은 원 분배 박스 하단 $62,161.20 아래에 머물고 있습니다. 활성 구조에서도 UT $60,234.80 및 UTAD $60,734.00 이후 SOW $60,458.80 실패가 발생했고, 현재는 Phase E 저점 $59,210.40 부근에서 약한 반등만 보이는 상태입니다. 다만 현재가가 단기 Phase E 저점에 근접해 있어 즉시 하방 추세 재개보다 $59,210.40 재시험 또는 $59,732.59~$60,090.66 회복 테스트가 먼저 나올 수 있으므로 setup_bias는 구조와 달리 중립으로 둡니다.
ICT Trader — BULLISH (72%)

Support: $58,944 / $58,616 / $58,288 | Resistance: $59,511 / $59,733 / $60,091 | Horizon: short/medium term

확정 구조는 최근 BOS_bullish가 $60,245.00 및 $61,256.00에서 발생했고, 이후 명확한 bearish BOS가 없기 때문에 아직 bullish로 해석한다. 다만 현재가 $59,389.90는 EMA20 $59,732.59, EMA120 $60,090.66, EMA240 $60,632.05 아래에 있어 단기 모멘텀은 약하며, 구조적 상승장 안의 깊은 되돌림 단계로 보는 것이 적절하다. 실행 관점의 setup_bias는 bullish인데, 가격이 EQ $59,511.00 아래 discount에 있고 활성 bullish OB $58,288.00-$58,944.00 바로 위에서 반응 중이기 때문이다. 단, confirmed bullish OB가 0개이고 최근 liquidity sweep 데이터가 없으며 open FVG도 0개라서, 강한 추격 매수보다는 $58,944.00-$58,288.00 방어 여부 확인이 중요하다.
Derivatives Trader — BEARISH (62%)

Support: $58,100 / $58,030 / $57,600 | Resistance: $59,733 / $60,091 / $60,632 | Horizon: short term

현재 BTC는 $59,389.90에서 거래되며 EMA20 $59,732.59, EMA120 $60,090.66, EMA240 $60,632.05를 모두 하회하고 있어 확인된 구조는 약세로 판단한다. 특히 24시간 가격이 -3.05% 하락하는 동안 OI가 +6.222% 증가했고 CVD가 -3,748.0190 감소해, 하락 구간에서 신규 레버리지와 매도 체결 압력이 동시에 붙는 모습이다. 롱 계정 비율이 0.671로 높고 account_long_crowding이 1.000이기 때문에 반등보다 롱 포지션 청산을 동반한 $58,100 및 $58,030 테스트 리스크가 더 크다. 다만 강한 상방 청산 레벨이 $60,900, $61,200, $61,800에 있어 $60,632.05 이상을 회복하면 숏 스퀴즈성 반등으로 구조 판단이 흔들릴 수 있다.
Candlestick Reader — BEARISH (58%)

Support: $59,143 / $58,897 / $58,030 | Resistance: $59,733 / $60,091 / $60,620 | Horizon: short term

BTC/USDT는 현재 $59,389.90으로 EMA20 $59,732.59, EMA120 $60,090.66, EMA240 $60,632.05를 모두 하회하고 있어 확인된 구조는 약세로 평가된다. 최근 6개 패턴 중 bearish_engulfing@299가 가장 최신에 발생했고, bear_score 2.10이 bull_score 1.20보다 높아 단기 캔들 흐름도 매도 우위다. 다만 best_pattern_quality가 0.602에 그치고 high_volume_patterns가 없어 강한 확정 신호라기보다는 약한 하방 지속 신호에 가깝다. 현재 가격은 7일 저점 $58,030.00 위에 있어 지지권 반응 가능성은 있으나, $59,732.59~$60,090.66 회복 전까지는 반등보다 재하락 리스크가 더 크다.
Fibonacci Analyst — BEARISH (62%)

Support: $58,030 | Resistance: $59,895 / $60,074 / $60,200 | Horizon: short term

현재가는 $59,389.90로, 최근 상승 스윙 저점 $59,666 아래에 위치해 있어 피보나치 관점의 상승 되돌림 구조가 훼손된 상태입니다. 핵심 황금비 ret_0.618 $60,074.10과 ret_0.786 $59,894.71이 모두 현재가 위 저항으로 전환되어 있으며, 가장 가까운 피보나치 레벨도 $59,894.71로 약 0.85% 위에 있습니다. confluence_quality는 0.850으로 높지만, 주요 클러스터가 $59,992.47, $60,336.07, $61,143.83 등 모두 상방에 위치해 현재는 지지보다 저항 압력이 우세합니다. 다만 현재가가 EQ/ret_0.5 $60,200.10 아래의 할인 구간에 있어 단기 평균회귀성 반등 셋업은 존재하지만, 아직 구조 전환 확인은 없습니다.
Harmonic Specialist — NEUTRAL (58%)

Support: $59,059 / $58,887 / $58,714 | Resistance: $59,326 / $59,597 / $59,733 | Horizon: short term

현재 harmonic 기준에서 가장 중요한 actionable 구조는 strict/high bullish Gartley이며 PRZ는 $58,714.42-$59,058.77, D값은 $58,886.60입니다. 다만 현재가 $59,389.90는 아직 해당 PRZ에 진입하지 않았고, confirmed_reaction_prz_count가 0이므로 이 패턴은 사전확인 반전 후보일 뿐 메인 경로를 뒤집을 권한은 없습니다. 방향 점수도 bullish 0.131, bearish 0으로 약한 편이며, 실행 준비도는 watch로 분류됩니다. 구조적으로는 명확한 BOS/CHoCH 또는 PRZ 반응 확인이 제공되지 않았기 때문에 structure_bias는 neutral로 두지만, $58,714-$59,059 구간 접근 시 단기 bullish 반응 셋업은 유효합니다.

Operating Path — complex (57%)

#PriceTypeSourceEst. HoursDescription
1$59,895resistance_testWyckoff (회복 테스트 $59,732~$60,090 우선 시나리오 + Phase E 저점 위 약한 반등 진행), Fibonacci (ret_0.786 $59,894.71 / fib_confluence strict $59,992.47), Harmonic (bearish PRZ $59,757-$60,064 하단), Candlestick·Derivatives·ICT (EMA20 $59,732.59 공통 저항)2.0약세 구조 내 진행 중인 '약한 반등'이 EMA20 $59,732.59를 일시 회복하며 피보나치 ret_0.786 $59,894.71 및 bearish PRZ 하단의 공급 구간을 시험. 현재가가 모든 EMA를 하회하고 하방 수용 상태이므로 이 회복 시험은 실패 가능성이 높은 숏 진입 후보 구간이며, 상단 연장 위험은 strict fib_confluence $59,992.47까지.
2$58,887liquidity_sweepICT (bullish OB $58,288.00-$58,944.00), Harmonic (strict/high bullish Gartley PRZ $58,714.42-$59,058.77, D값 $58,886.60), Wyckoff (활성 Phase E 저점 $59,210.40 이탈)8.0공급 구간 거부 후 약세 재개로 Phase E 저점 $59,210.40을 이탈, ICT bullish OB와 strict bullish Gartley PRZ가 중첩된 핵심 반응 구간(D값 $58,886.60)으로 스윕. 구조적 강세 반응 후보 구간이나, 우세 약세 경로(파생 OI 증가·CVD 약세·롱 쏠림)에서는 1차 매수 청산성 스윕으로 해석한다.
3$58,030swing_lowICT (전일 저점), Fibonacci (주요 지지), Candlestick (7일 저점), Wyckoff (선행 Phase E 저점), Derivatives (하방 청산/지지권) — 6중 합류 핵심 지지18.0반응 구간 $58,714-$59,058이 방어에 실패할 경우 6중 합류 핵심 지지 $58,030.00으로 약세 연장. account_long_crowding 1.000의 롱 청산을 동반한 하방 가속이 동력이며, 이 레벨이 24시간 우세 약세 목표이자 1차 지지 방어선.

Period Extremes

HorizonExpected LowExpected HighSequence
4h$59,350$59,895High first
8h$58,887$59,895High first
24h$58,030$59,895High first

Triggers

Invalidation: $60,734

Raw Operating Path Response
```json
{
  "path_type": "complex",
  "confidence": 0.57,
  "waypoints": [
    {
      "seq": 1,
      "price": 59894.71,
      "type": "resistance_test",
      "source": "Wyckoff (회복 테스트 $59,732~$60,090 우선 시나리오 + Phase E 저점 위 약한 반등 진행), Fibonacci (ret_0.786 $59,894.71 / fib_confluence strict $59,992.47), Harmonic (bearish PRZ $59,757-$60,064 하단), Candlestick·Derivatives·ICT (EMA20 $59,732.59 공통 저항)",
      "description": "약세 구조 내 진행 중인 '약한 반등'이 EMA20 $59,732.59를 일시 회복하며 피보나치 ret_0.786 $59,894.71 및 bearish PRZ 하단의 공급 구간을 시험. 현재가가 모든 EMA를 하회하고 하방 수용 상태이므로 이 회복 시험은 실패 가능성이 높은 숏 진입 후보 구간이며, 상단 연장 위험은 strict fib_confluence $59,992.47까지.",
      "est_hours": 2.0
    },
    {
      "seq": 2,
      "price": 58886.60,
      "type": "liquidity_sweep",
      "source": "ICT (bullish OB $58,288.00-$58,944.00), Harmonic (strict/high bullish Gartley PRZ $58,714.42-$59,058.77, D값 $58,886.60), Wyckoff (활성 Phase E 저점 $59,210.40 이탈)",
      "description": "공급 구간 거부 후 약세 재개로 Phase E 저점 $59,210.40을 이탈, ICT bullish OB와 strict bullish Gartley PRZ가 중첩된 핵심 반응 구간(D값 $58,886.60)으로 스윕. 구조적 강세 반응 후보 구간이나, 우세 약세 경로(파생 OI 증가·CVD 약세·롱 쏠림)에서는 1차 매수 청산성 스윕으로 해석한다.",
      "est_hours": 8.0
    },
    {
      "seq": 3,
      "price": 58030.00,
      "type": "swing_low",
      "source": "ICT (전일 저점), Fibonacci (주요 지지), Candlestick (7일 저점), Wyckoff (선행 Phase E 저점), Derivatives (하방 청산/지지권) — 6중 합류 핵심 지지",
      "description": "반응 구간 $58,714-$59,058이 방어에 실패할 경우 6중 합류 핵심 지지 $58,030.00으로 약세 연장. account_long_crowding 1.000의 롱 청산을 동반한 하방 가속이 동력이며, 이 레벨이 24시간 우세 약세 목표이자 1차 지지 방어선.",
      "est_hours": 18.0
    }
  ],
  "period_extremes": {
    "4h":  {"expected_high": 59894.71, "expected_low": 59350.0, "high_first": true},
    "8h":  {"expected_high": 59894.71, "expected_low": 58886.6, "high_first": true},
    "24h": {"expected_high": 59894.71, "expected_low": 58030.0, "high_first": true}
  },
  "triggers": {
    "bullish": {"price": 60090.66, "description": "EMA120 $60,090.66 상방 회복 및 수용 시 반등이 구조적으로 전환되어 약세 경로를 위협($60,245.00 BOS 회복 시 숏 스퀴즈성 가속). 완전 무효화는 UTAD $60,734.00."},
    "bearish": {"price": 58288.00, "description": "ICT bullish OB 하단 $58,288.00 이탈 및 수용 시 강세 반응 후보가 소멸되며 $58,030.00, 이어 Derivatives 청산권 $57,600으로 하락 가속."}
  },
  "scenario_invalidation": 60734.00
}
```

Raw Chairman Response
{
  "overall_signal": "bearish",
  "overall_confidence": 0.74,
  "execution_setup": {
    "setup_bias": "neutral",
    "setup_strength": 0.52,
    "active_setups": [
      "약세 실행 조건: 현재가 $59,389.90가 EMA20 $59,732.59, EMA120 $60,090.66, EMA240 $60,632.05를 모두 하회",
      "약세 실행 조건: 24시간 가격 -3.05% 하락 중 OI +6.222% 증가 및 CVD -3,748.019로 매도 체결 우위",
      "약세 실행 조건: 피보나치 ret_0.786 $59,894.71, ret_0.618 $60,074.10, EQ $60,200.10이 모두 상방 저항으로 전환",
      "강세 반응 후보: ICT discount 구간에서 bullish OB 후보 $58,288.00-$58,944.00가 아직 무효화되지 않음",
      "강세 반응 후보: strict/high bullish Gartley PRZ $58,714.42-$59,058.77, 예상 D값 $58,886.60",
      "단기 구조 조건: Wyckoff 활성 Phase E 저점 $59,210.40 근처로 즉시 추격보다는 저점 재시험/반등 확인 구간"
    ],
    "setup_vs_structure": "구조적 평가는 약세지만 실행 셋업은 혼재되어 있다. 파생·캔들·피보나치는 하방 수용을 지지하는 반면, ICT discount OB와 하모닉 bullish PRZ가 $58,714-$59,058 부근에서 반응 리스크를 만든다."
  },
  "signal_breakdown": {
    "bullish_count": 1,
    "bearish_count": 4,
    "neutral_count": 1
  },
  "key_levels": {
    "support": [
      59210.4,
      59058.77,
      58944.0,
      58886.6,
      58714.42,
      58288.0,
      58100.0,
      58030.0
    ],
    "resistance": [
      59511.0,
      59732.59,
      59894.71,
      60074.1,
      60090.66,
      60245.0,
      60458.8,
      60734.0,
      60900.0,
      61200.0,
      62161.2
    ]
  },
  "confluences": [
    "EMA20 $59,732.59는 ICT, Derivatives, Candlestick, Wyckoff가 공통으로 단기 회복 기준 또는 저항으로 언급한 핵심 레벨이다.",
    "EMA120 $60,090.66은 ICT, Derivatives, Candlestick, Wyckoff가 모두 중기 구조 회복 기준으로 제시한 강한 저항 합류 구간이다.",
    "$58,030.00은 ICT의 전일 저점, Fibonacci의 주요 지지, Candlestick의 7일 저점, Wyckoff의 prior Phase E 저점, Derivatives의 하방 청산/지지권과 겹치는 핵심 구조 지지다.",
    "ICT bullish OB $58,288.00-$58,944.00와 Harmonic bullish Gartley PRZ $58,714.42-$59,058.77가 중첩되어 $58,714-$58,944 부근은 반응 후보 구간으로 중요하다.",
    "Fibonacci 저항 $59,894.71-$60,074.10은 Harmonic의 bearish PRZ $59,757.24-$60,064.56 및 EMA120 $60,090.66과 겹쳐 $59,900-$60,100 구간의 공급 압력을 강화한다.",
    "Wyckoff 활성 Phase E 저점 $59,210.40과 Candlestick 지지 $59,143.46이 근접해 현재 가격대 바로 아래의 단기 구조 테스트 구간을 형성한다."
  ],
  "conflicts": [
    "ICT는 최근 BOS_bullish $60,245.00 및 $61,256.00 이후 명확한 bearish BOS가 없다는 이유로 구조를 bullish로 보지만, Wyckoff는 확인된 분배/재분배 Phase E 구조로 해석하여 정반대의 regime 판단을 내린다.",
    "ICT와 Harmonic은 $58,714-$59,058 부근의 discount/PRZ 반응 가능성을 제시하지만, Derivatives는 가격 하락 중 OI 증가, CVD 감소, 롱 계정 쏠림을 근거로 하방 취약성을 더 크게 본다.",
    "Fibonacci는 현재가가 최근 상승 스윙 저점 $59,666 아래에 있어 상승 되돌림 구조가 훼손됐다고 보지만, ICT는 더 큰 dealing range의 discount 및 bullish OB 방어 가능성을 중시한다.",
    "Harmonic의 핵심 bullish Gartley는 strict/high 품질이지만 아직 PRZ 터치와 반응 확인이 없어 구조적 약세 판단을 뒤집을 권한은 제한적이다."
  ],
  "highest_conviction_analyst": "Wyckoff Expert — 신호 신뢰도 82%로 가장 높고, prior distribution 및 활성 redistribution 구조를 구체적인 단계로 제시했다. 특히 BC $62,837.10, AR $62,161.20, UT $63,209.60, LPSY $61,931.10, SOW $61,578.40, Phase E $58,030.00의 완성 구조와, 현재 활성 구조의 UT $60,234.80 → UTAD $60,734.00 → SOW $60,458.80 → Phase E $59,210.40 진행이 가격 레벨과 단계 면에서 가장 명확하다.",
  "invalidation_level": "$60,734.00 상방 회복 및 수용. 이는 활성 재분배 구조의 UTAD 고점이며, 그 위에서 $61,200-$61,256 영역까지 회복하면 현재의 15분 약세 구조 해석은 크게 약화된다.",
  "executive_summary": "현재 15분 BTC 구조는 다수결과 가중치 기준으로 bearish이며, 핵심 근거는 Wyckoff의 확인된 분배 이후 활성 재분배 Phase E 진행, EMA20/120/240 하방 수용, 그리고 파생시장의 하락 중 OI 증가·CVD 약세다. 다만 가격은 활성 Phase E 저점 $59,210.40 근처와 ICT bullish OB $58,288-$58,944, Harmonic bullish Gartley PRZ $58,714-$59,058에 접근해 있어 구조적 약세 안의 반응 후보 구간에 위치한다. 상방에서는 $59,732.59, $59,894.71-$60,090.66, $60,734.00이 순차적 구조 저항이며, 하방에서는 $58,944, $58,714-$58,288, $58,030이 핵심 방어 구간이다. 전체 약세 구조의 주요 무효화 조건은 활성 UTAD 고점 $60,734.00 상방 회복 및 수용이며, 그 전까지는 반등 신호보다 분배 이후 하방 수용 구조가 우세하다."
}
Full Result JSON
{
  "symbol": "BTC/USDT",
  "timeframe": "15m",
  "timestamp": "2026-06-26 21:00 KST",
  "last_price": 59389.9,
  "num_candles": 300,
  "stage1_analyses": {
    "ict": {
      "agent_id": "ict",
      "display_name": "ICT Trader",
      "signal": "bullish",
      "confidence": 0.72,
      "structure_bias": "bullish",
      "setup_bias": "bullish",
      "setup_score": 0.88,
      "setup_signals": [
        "현재가 $59,389.90는 EQ $59,511.00 아래의 discount 구간에 위치",
        "활성 bullish OB 후보 구간 $58,288.00-$58,944.00이 근접해 있으며 아직 무효화되지 않음, score=0.577",
        "bullish OB와 연결된 FVG 컨텍스트 $58,944.00-$58,983.40 존재, 다만 현재 미체결 FVG는 0개",
        "현재 되돌림 56.1%, 최대 되돌림 62.3%로 discount 재매집 구간에 해당",
        "최근 구조 이벤트에 bullish BOS $60,245.00 및 $61,256.00이 포함되어 있어 하락이 아직 구조적 붕괴로 확정되지 않음"
      ],
      "reasoning": "확정 구조는 최근 BOS_bullish가 $60,245.00 및 $61,256.00에서 발생했고, 이후 명확한 bearish BOS가 없기 때문에 아직 bullish로 해석한다. 다만 현재가 $59,389.90는 EMA20 $59,732.59, EMA120 $60,090.66, EMA240 $60,632.05 아래에 있어 단기 모멘텀은 약하며, 구조적 상승장 안의 깊은 되돌림 단계로 보는 것이 적절하다. 실행 관점의 setup_bias는 bullish인데, 가격이 EQ $59,511.00 아래 discount에 있고 활성 bullish OB $58,288.00-$58,944.00 바로 위에서 반응 중이기 때문이다. 단, confirmed bullish OB가 0개이고 최근 liquidity sweep 데이터가 없으며 open FVG도 0개라서, 강한 추격 매수보다는 $58,944.00-$58,288.00 방어 여부 확인이 중요하다.",
      "key_levels": {
        "support": [
          58944.0,
          58616.0,
          58288.0,
          58030.0
        ],
        "resistance": [
          59511.0,
          59732.59,
          60090.66,
          60245.0,
          60734.0,
          61256.0
        ]
      },
      "time_horizon": "short/medium term",
      "invalidation_level": "$58,288.00",
      "risk_scenario": "가격이 bullish OB 하단 $58,288.00을 이탈하고 수용되면 현재 bullish setup은 무효화되며, 이전일 저점 $58,030.00 및 7일 저점 $58,030.00 부근의 sell-side liquidity를 사냥하는 하락 시나리오가 우세해진다. 그 경우 $58,030.00 아래에서 bearish CHoCH 또는 BOS가 확인되면 구조_bias도 bearish로 전환될 수 있다.",
      "data_quality": "medium",
      "metrics": {
        "order_blocks_total": 1,
        "confirmed_bullish_ob": 0,
        "confirmed_bearish_ob": 0,
        "candidate_bullish_ob": 1,
        "candidate_bearish_ob": 0,
        "active_bullish_ob": 1,
        "active_bearish_ob": 0,
        "nearest_bull_ob_range": {
          "bottom": 58288.0,
          "top": 58944.0,
          "quality": "candidate",
          "score": 0.577
        },
        "nearest_bear_ob_range": null,
        "active_bullish_ob_list": [
          {
            "type": "bullish_ob",
            "idx": 264,
            "top": 58944.0,
            "bottom": 58288.0,
            "mid": 58616.0,
            "quality": "candidate",
            "score": 0.577,
            "displacement_score": 0.363,
            "has_fvg": true,
            "has_sweep_context": false,
            "fvg_range": {
              "bottom": 58944.0,
              "top": 58983.4
            },
            "swept_level": null,
            "source_move_idx": 264,
            "proximity": "nearby"
          }
        ],
        "active_bearish_ob_list": [],
        "ob_mitigated_count": 2,
        "unfilled_bull_fvg_count": 0,
        "unfilled_bear_fvg_count": 0,
        "bull_fvg_ranges": [],
        "bear_fvg_ranges": [],
        "fvg_open_count": 0,
        "fvg_mitigated_count": 66,
        "fvg_open_zones": [],
        "bos_choch_events": [
          "CHoCH_bullish",
          "CHoCH_bearish",
          "BOS_bullish",
          "CHoCH_bearish",
          "BOS_bullish"
        ],
        "bos_choch_levels": [
          {
            "type": "CHoCH_bullish",
            "level": 62837.1
          },
          {
            "type": "CHoCH_bearish",
            "level": 62402.8
          },
          {
            "type": "BOS_bullish",
            "level": 61256.0
          },
          {
            "type": "CHoCH_bearish",
            "level": 60648.0
          },
          {
            "type": "BOS_bullish",
            "level": 60245.0
          }
        ],
        "bos_sequence": [
          "CHoCH_bullish",
          "CHoCH_bearish",
          "BOS_bullish",
          "CHoCH_bearish",
          "BOS_bullish"
        ],
        "consecutive_bull_bos": 1,
        "consecutive_bear_bos": 0,
        "recent_liq_sweeps": [],
        "recent_sweep_levels": [],
        "liquidity_resting": [],
        "current_zone": "discount",
        "eq_level": 59511.0,
        "range_high": 60734.0,
        "range_low": 58288.0,
        "bull_score": 8.346,
        "bear_score": 4.4,
        "setup_bias": "bullish",
        "setup_score": 0.88,
        "setup_signals": [
          "bullish CHoCH above $62,837.10",
          "bullish BOS above $61,256.00",
          "bullish BOS above $60,245.00",
          "bullish OB candidate $58,288.00-$58,944.00 (nearby, score=0.58)"
        ],
        "retracement_direction": "bullish",
        "current_retracement_pct": 56.1,
        "deepest_retracement_pct": 62.3,
        "previous_day_high": 61931.1,
        "previous_day_low": 58030.0,
        "broken_prev_high": false,
        "broken_prev_low": false,
        "sessions": {
          "London": {
            "active": false,
            "high": null,
            "low": null
          },
          "New York": {
            "active": true,
            "high": 60734.0,
            "low": 59210.4
          },
          "Asian kill zone": {
            "active": false,
            "high": null,
            "low": null
          }
        }
      },
      "raw_llm_response": "{\n  \"signal\": \"bullish\",\n  \"confidence\": 0.72,\n  \"structure_bias\": \"bullish\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.88,\n  \"setup_signals\": [\n    \"현재가 $59,389.90는 EQ $59,511.00 아래의 discount 구간에 위치\",\n    \"활성 bullish OB 후보 구간 $58,288.00-$58,944.00이 근접해 있으며 아직 무효화되지 않음, score=0.577\",\n    \"bullish OB와 연결된 FVG 컨텍스트 $58,944.00-$58,983.40 존재, 다만 현재 미체결 FVG는 0개\",\n    \"현재 되돌림 56.1%, 최대 되돌림 62.3%로 discount 재매집 구간에 해당\",\n    \"최근 구조 이벤트에 bullish BOS $60,245.00 및 $61,256.00이 포함되어 있어 하락이 아직 구조적 붕괴로 확정되지 않음\"\n  ],\n  \"reasoning\": \"확정 구조는 최근 BOS_bullish가 $60,245.00 및 $61,256.00에서 발생했고, 이후 명확한 bearish BOS가 없기 때문에 아직 bullish로 해석한다. 다만 현재가 $59,389.90는 EMA20 $59,732.59, EMA120 $60,090.66, EMA240 $60,632.05 아래에 있어 단기 모멘텀은 약하며, 구조적 상승장 안의 깊은 되돌림 단계로 보는 것이 적절하다. 실행 관점의 setup_bias는 bullish인데, 가격이 EQ $59,511.00 아래 discount에 있고 활성 bullish OB $58,288.00-$58,944.00 바로 위에서 반응 중이기 때문이다. 단, confirmed bullish OB가 0개이고 최근 liquidity sweep 데이터가 없으며 open FVG도 0개라서, 강한 추격 매수보다는 $58,944.00-$58,288.00 방어 여부 확인이 중요하다.\",\n  \"key_levels\": {\n    \"support\": [\n      58944.0,\n      58616.0,\n      58288.0,\n      58030.0\n    ],\n    \"resistance\": [\n      59511.0,\n      59732.59,\n      60090.66,\n      60245.0,\n      60734.0,\n      61256.0\n    ]\n  },\n  \"time_horizon\": \"short/medium term\",\n  \"invalidation_level\": \"$58,288.00\",\n  \"risk_scenario\": \"가격이 bullish OB 하단 $58,288.00을 이탈하고 수용되면 현재 bullish setup은 무효화되며, 이전일 저점 $58,030.00 및 7일 저점 $58,030.00 부근의 sell-side liquidity를 사냥하는 하락 시나리오가 우세해진다. 그 경우 $58,030.00 아래에서 bearish CHoCH 또는 BOS가 확인되면 구조_bias도 bearish로 전환될 수 있다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "fibonacci": {
      "agent_id": "fibonacci",
      "display_name": "Fibonacci Analyst",
      "signal": "bearish",
      "confidence": 0.62,
      "structure_bias": "bearish",
      "setup_bias": "bullish",
      "setup_score": 0.35,
      "setup_signals": [
        "할인 구간 진입: 현재가 $59,389.90는 EQ/ret_0.5 $60,200.10 아래에 위치",
        "깊은 되돌림 초과: 가격이 ret_0.786 $59,894.71 및 황금비 ret_0.618 $60,074.10 아래로 이탈",
        "평균회귀 후보: 최근 상승 스윙 $59,666 → $60,734 기준 주요 피보나치 저항이 모두 현재가 위에 밀집",
        "단기 반등 목표 후보: 가장 가까운 피보나치 저항 ret_0.786 $59,894.71까지 약 0.85% 거리"
      ],
      "reasoning": "현재가는 $59,389.90로, 최근 상승 스윙 저점 $59,666 아래에 위치해 있어 피보나치 관점의 상승 되돌림 구조가 훼손된 상태입니다. 핵심 황금비 ret_0.618 $60,074.10과 ret_0.786 $59,894.71이 모두 현재가 위 저항으로 전환되어 있으며, 가장 가까운 피보나치 레벨도 $59,894.71로 약 0.85% 위에 있습니다. confluence_quality는 0.850으로 높지만, 주요 클러스터가 $59,992.47, $60,336.07, $61,143.83 등 모두 상방에 위치해 현재는 지지보다 저항 압력이 우세합니다. 다만 현재가가 EQ/ret_0.5 $60,200.10 아래의 할인 구간에 있어 단기 평균회귀성 반등 셋업은 존재하지만, 아직 구조 전환 확인은 없습니다.",
      "key_levels": {
        "support": [
          58030.0
        ],
        "resistance": [
          59894.71,
          60074.1,
          60200.1,
          60326.1,
          60734.0,
          61024.44,
          61176.07
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$60,734.00",
      "risk_scenario": "가격이 ret_0.786 $59,894.71을 회복한 뒤 황금비 ret_0.618 $60,074.10과 EQ/ret_0.5 $60,200.10 위에서 수용되면 단기 하락 압력은 약화됩니다. 특히 $60,734.00 스윙 고점을 돌파하면 현재의 bearish 구조 해석은 무효화되고, $61,024.44, $61,176.07, $61,393.90 확장 목표로 상승 시나리오가 열릴 수 있습니다.",
      "data_quality": "medium",
      "metrics": {
        "swing_pair": "Low→High: $59,666 → $60,734",
        "direction": "up",
        "nearest_fib": "ret_0.786",
        "nearest_fib_price": 59894.71,
        "nearest_fib_distance": 0.85,
        "golden_ratio_level": 60074.1,
        "fib_ret_382": 60326.1,
        "fib_ret_618": 60074.1,
        "confluence_zones": [
          {
            "price": 59992.47,
            "count": 3,
            "levels": [
              "ret_0.786",
              "ret_0.382",
              "ret_0.618"
            ],
            "cluster_score": 0.85
          },
          {
            "price": 60336.07,
            "count": 3,
            "levels": [
              "ret_0.5",
              "ret_0.382",
              "ret_0.236"
            ],
            "cluster_score": 0.85
          },
          {
            "price": 61143.83,
            "count": 3,
            "levels": [
              "ext_1.272",
              "ext_1.414",
              "ret_0.618"
            ],
            "cluster_score": 0.85
          },
          {
            "price": 60676.9,
            "count": 2,
            "levels": [
              "ret_0.5",
              "ext_1.0"
            ],
            "cluster_score": 0.6
          },
          {
            "price": 61951.48,
            "count": 2,
            "levels": [
              "ext_2.0",
              "ret_0.786"
            ],
            "cluster_score": 0.6
          }
        ],
        "support_levels": [],
        "resistance_levels": [
          59894.7092,
          60074.0996,
          60200.1
        ],
        "level_candidates": [
          {
            "name": "ret_0.236",
            "price": 60482.0,
            "distance_pct": 1.84,
            "is_support": false,
            "cluster_score": 0.85
          },
          {
            "name": "ret_0.382",
            "price": 60326.1,
            "distance_pct": 1.58,
            "is_support": false,
            "cluster_score": 0.85
          },
          {
            "name": "ret_0.5",
            "price": 60200.1,
            "distance_pct": 1.36,
            "is_support": false,
            "cluster_score": 0.85
          },
          {
            "name": "ret_0.618",
            "price": 60074.1,
            "distance_pct": 1.15,
            "is_support": false,
            "cluster_score": 0.85
          },
          {
            "name": "ret_0.786",
            "price": 59894.71,
            "distance_pct": 0.85,
            "is_support": false,
            "cluster_score": 0.85
          },
          {
            "name": "ext_1.0",
            "price": 60734.0,
            "distance_pct": 2.26,
            "is_support": false,
            "cluster_score": 0.6
          },
          {
            "name": "ext_1.272",
            "price": 61024.44,
            "distance_pct": 2.75,
            "is_support": false,
            "cluster_score": 0.85
          },
          {
            "name": "ext_1.414",
            "price": 61176.07,
            "distance_pct": 3.01,
            "is_support": false,
            "cluster_score": 0.85
          },
          {
            "name": "ext_1.618",
            "price": 61393.9,
            "distance_pct": 3.37,
            "is_support": false,
            "cluster_score": 0.85
          },
          {
            "name": "ext_2.0",
            "price": 61801.8,
            "distance_pct": 4.06,
            "is_support": false,
            "cluster_score": 0.6
          }
        ],
        "confluence_quality": 0.85,
        "fib_reaction_state": "approaching",
        "reaction_probability": 0.45
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.62,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.35,\n  \"setup_signals\": [\n    \"할인 구간 진입: 현재가 $59,389.90는 EQ/ret_0.5 $60,200.10 아래에 위치\",\n    \"깊은 되돌림 초과: 가격이 ret_0.786 $59,894.71 및 황금비 ret_0.618 $60,074.10 아래로 이탈\",\n    \"평균회귀 후보: 최근 상승 스윙 $59,666 → $60,734 기준 주요 피보나치 저항이 모두 현재가 위에 밀집\",\n    \"단기 반등 목표 후보: 가장 가까운 피보나치 저항 ret_0.786 $59,894.71까지 약 0.85% 거리\"\n  ],\n  \"reasoning\": \"현재가는 $59,389.90로, 최근 상승 스윙 저점 $59,666 아래에 위치해 있어 피보나치 관점의 상승 되돌림 구조가 훼손된 상태입니다. 핵심 황금비 ret_0.618 $60,074.10과 ret_0.786 $59,894.71이 모두 현재가 위 저항으로 전환되어 있으며, 가장 가까운 피보나치 레벨도 $59,894.71로 약 0.85% 위에 있습니다. confluence_quality는 0.850으로 높지만, 주요 클러스터가 $59,992.47, $60,336.07, $61,143.83 등 모두 상방에 위치해 현재는 지지보다 저항 압력이 우세합니다. 다만 현재가가 EQ/ret_0.5 $60,200.10 아래의 할인 구간에 있어 단기 평균회귀성 반등 셋업은 존재하지만, 아직 구조 전환 확인은 없습니다.\",\n  \"key_levels\": {\n    \"support\": [\n      58030.0\n    ],\n    \"resistance\": [\n      59894.71,\n      60074.1,\n      60200.1,\n      60326.1,\n      60734.0,\n      61024.44,\n      61176.07\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$60,734.00\",\n  \"risk_scenario\": \"가격이 ret_0.786 $59,894.71을 회복한 뒤 황금비 ret_0.618 $60,074.10과 EQ/ret_0.5 $60,200.10 위에서 수용되면 단기 하락 압력은 약화됩니다. 특히 $60,734.00 스윙 고점을 돌파하면 현재의 bearish 구조 해석은 무효화되고, $61,024.44, $61,176.07, $61,393.90 확장 목표로 상승 시나리오가 열릴 수 있습니다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "derivatives": {
      "agent_id": "derivatives",
      "display_name": "Derivatives Trader",
      "signal": "bearish",
      "confidence": 0.62,
      "structure_bias": "bearish",
      "setup_bias": "bearish",
      "setup_score": 0.72,
      "setup_signals": [
        "현재가 $59,389.90가 EMA20 $59,732.59, EMA120 $60,090.66, EMA240 $60,632.05 아래에서 거래되며 단기 구조가 하방 수용 상태",
        "24시간 가격 -3.05% 하락 중 OI가 +6.222% 증가하여 하락 방향 신규 포지션 유입 또는 롱 물타기성 레버리지 증가 가능성",
        "CVD 변화 -3,748.0190로 매도 체결 우위가 지속되며 가격 회복 대비 참여 강도 약함",
        "롱 계정 비율 0.671, 평균 롱 비율 0.690으로 계정 포지셔닝이 롱 쪽에 과밀되어 반대매매/롱 청산 리스크 증가",
        "하방 청산 밀집 구간 $58,100 및 7일 저점 $58,030이 가까워 단기 유동성 타깃으로 작동 가능",
        "프래질리티 점수 0.874로 레버리지 포지션이 작은 가격 충격에도 청산 연쇄를 만들기 쉬운 상태"
      ],
      "reasoning": "현재 BTC는 $59,389.90에서 거래되며 EMA20 $59,732.59, EMA120 $60,090.66, EMA240 $60,632.05를 모두 하회하고 있어 확인된 구조는 약세로 판단한다. 특히 24시간 가격이 -3.05% 하락하는 동안 OI가 +6.222% 증가했고 CVD가 -3,748.0190 감소해, 하락 구간에서 신규 레버리지와 매도 체결 압력이 동시에 붙는 모습이다. 롱 계정 비율이 0.671로 높고 account_long_crowding이 1.000이기 때문에 반등보다 롱 포지션 청산을 동반한 $58,100 및 $58,030 테스트 리스크가 더 크다. 다만 강한 상방 청산 레벨이 $60,900, $61,200, $61,800에 있어 $60,632.05 이상을 회복하면 숏 스퀴즈성 반등으로 구조 판단이 흔들릴 수 있다.",
      "key_levels": {
        "support": [
          58100,
          58030,
          57600,
          54000
        ],
        "resistance": [
          59732.59,
          60090.66,
          60632.05,
          60900,
          61200,
          61800
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$60,632.05",
      "risk_scenario": "$60,632.05 위로 15분봉 기준 명확히 회복하고 수용되면 현재 약세 구조 판단은 약화되며, 상방 청산 밀집 구간인 $60,900, $61,200, $61,800을 향한 숏 스퀴즈가 발생할 수 있다. 특히 가장 강한 청산 레벨이 $61,200에 위치해 있어, 이 구간까지 빠른 반등이 나오면 하방 추세 추종 포지션은 손절 압력을 받을 가능성이 높다.",
      "data_quality": "medium",
      "metrics": {
        "cvd_divergence": 0.3,
        "cvd_change": -3748.019,
        "oi_trend": 1.0,
        "oi_change_pct_24h": 6.222,
        "oi_latest": 106236.205,
        "funding_pressure": 0.457,
        "funding_avg": 4.261e-05,
        "funding_change_24h": 4.324e-05,
        "long_account_ratio": 0.69,
        "short_account_ratio": 0.31,
        "long_account_latest": 0.671,
        "short_account_latest": 0.329,
        "long_account_change_24h": 0.0009,
        "short_account_change_24h": -0.0009,
        "account_flow_label": "stable",
        "account_short_crowding": 0.0,
        "account_long_crowding": 1.0,
        "ls_imbalance": 0.0,
        "ls_imbalance_interpretation": "high=short-account crowding / low=long-account crowding",
        "spot_futures_basis_score": 0.49,
        "spot_futures_basis_pct": -0.0393,
        "basis_change_lookback": 0.0164,
        "aggregate_score": 0.45,
        "bull_signals": 1,
        "bear_signals": 2,
        "liq_below": [
          [
            58100,
            3191.2615879
          ],
          [
            57600,
            2469.374727
          ],
          [
            54000,
            2756.7741600000004
          ]
        ],
        "liq_above": [
          [
            60900,
            2324.1485930500003
          ],
          [
            61200,
            3739.458377250001
          ],
          [
            61800,
            2994.0524925000004
          ]
        ],
        "strongest_liq_level": 61200,
        "fragility_score": 0.874,
        "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.72,\n  \"setup_signals\": [\n    \"현재가 $59,389.90가 EMA20 $59,732.59, EMA120 $60,090.66, EMA240 $60,632.05 아래에서 거래되며 단기 구조가 하방 수용 상태\",\n    \"24시간 가격 -3.05% 하락 중 OI가 +6.222% 증가하여 하락 방향 신규 포지션 유입 또는 롱 물타기성 레버리지 증가 가능성\",\n    \"CVD 변화 -3,748.0190로 매도 체결 우위가 지속되며 가격 회복 대비 참여 강도 약함\",\n    \"롱 계정 비율 0.671, 평균 롱 비율 0.690으로 계정 포지셔닝이 롱 쪽에 과밀되어 반대매매/롱 청산 리스크 증가\",\n    \"하방 청산 밀집 구간 $58,100 및 7일 저점 $58,030이 가까워 단기 유동성 타깃으로 작동 가능\",\n    \"프래질리티 점수 0.874로 레버리지 포지션이 작은 가격 충격에도 청산 연쇄를 만들기 쉬운 상태\"\n  ],\n  \"reasoning\": \"현재 BTC는 $59,389.90에서 거래되며 EMA20 $59,732.59, EMA120 $60,090.66, EMA240 $60,632.05를 모두 하회하고 있어 확인된 구조는 약세로 판단한다. 특히 24시간 가격이 -3.05% 하락하는 동안 OI가 +6.222% 증가했고 CVD가 -3,748.0190 감소해, 하락 구간에서 신규 레버리지와 매도 체결 압력이 동시에 붙는 모습이다. 롱 계정 비율이 0.671로 높고 account_long_crowding이 1.000이기 때문에 반등보다 롱 포지션 청산을 동반한 $58,100 및 $58,030 테스트 리스크가 더 크다. 다만 강한 상방 청산 레벨이 $60,900, $61,200, $61,800에 있어 $60,632.05 이상을 회복하면 숏 스퀴즈성 반등으로 구조 판단이 흔들릴 수 있다.\",\n  \"key_levels\": {\n    \"support\": [\n      58100,\n      58030,\n      57600,\n      54000\n    ],\n    \"resistance\": [\n      59732.59,\n      60090.66,\n      60632.05,\n      60900,\n      61200,\n      61800\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$60,632.05\",\n  \"risk_scenario\": \"$60,632.05 위로 15분봉 기준 명확히 회복하고 수용되면 현재 약세 구조 판단은 약화되며, 상방 청산 밀집 구간인 $60,900, $61,200, $61,800을 향한 숏 스퀴즈가 발생할 수 있다. 특히 가장 강한 청산 레벨이 $61,200에 위치해 있어, 이 구간까지 빠른 반등이 나오면 하방 추세 추종 포지션은 손절 압력을 받을 가능성이 높다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "harmonic": {
      "agent_id": "harmonic",
      "display_name": "Harmonic Specialist",
      "signal": "neutral",
      "confidence": 0.58,
      "structure_bias": "neutral",
      "setup_bias": "bullish",
      "setup_score": 0.46,
      "setup_signals": [
        "엄격한 고품질 bullish Gartley 형성 PRZ가 $58,714.42-$59,058.77에 대기 중이며, 예상 D값은 $58,886.60",
        "해당 PRZ는 XAD, BC_EXT, ABCD 3개 Fib 패밀리 confluence를 갖고 있으며 PRZ 점수 1.0, 패턴 점수 0.885",
        "현재가 $59,389.90는 핵심 bullish Gartley PRZ 상단 $59,058.77보다 약 0.85% 위에 있어 아직 진입/터치 전 상태",
        "후보 등급 active bullish Gartley PRZ $59,354.43-$59,660.38 안에 현재가가 위치하지만 candidate-tier라 방향성 투표를 지배할 수 없음",
        "EMA20 $59,732.59, EMA120 $60,090.66, EMA240 $60,632.05 아래에서 거래되어 구조 확정 전 반등 셋업은 아직 방어적 성격"
      ],
      "reasoning": "현재 harmonic 기준에서 가장 중요한 actionable 구조는 strict/high bullish Gartley이며 PRZ는 $58,714.42-$59,058.77, D값은 $58,886.60입니다. 다만 현재가 $59,389.90는 아직 해당 PRZ에 진입하지 않았고, confirmed_reaction_prz_count가 0이므로 이 패턴은 사전확인 반전 후보일 뿐 메인 경로를 뒤집을 권한은 없습니다. 방향 점수도 bullish 0.131, bearish 0으로 약한 편이며, 실행 준비도는 watch로 분류됩니다. 구조적으로는 명확한 BOS/CHoCH 또는 PRZ 반응 확인이 제공되지 않았기 때문에 structure_bias는 neutral로 두지만, $58,714-$59,059 구간 접근 시 단기 bullish 반응 셋업은 유효합니다.",
      "key_levels": {
        "support": [
          59058.77,
          58886.6,
          58714.42,
          58030.0
        ],
        "resistance": [
          59325.55,
          59596.74,
          59732.59,
          60035.7,
          60090.66,
          60632.05
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "58714.42",
      "risk_scenario": "$58,714.42-$59,058.77 bullish Gartley PRZ에 진입한 뒤 반응 없이 $58,714.42 아래로 수용되면 PRZ 방어 실패로 해석되며, $58,030.00 7일 저점 재테스트 또는 하방 유동성 확장 위험이 커집니다. 반대로 PRZ 터치 후 $59,058.77 재탈환, 15분 또는 1시간 CHoCH/MSS, CVD 다이버전스나 OI squeeze가 동반되면 harmonic은 중간 강도 bullish 보조 근거로 승격될 수 있고 TP는 $59,325.55, $59,596.74, $60,035.70 순으로 봅니다.",
      "data_quality": "high",
      "metrics": {
        "patterns_found": 111,
        "completed_patterns_found": 41,
        "forming_d_prz_found": 70,
        "swing_orders_scanned": [
          3,
          5,
          8
        ],
        "swing_search_window": 34,
        "multiscale_swings_scanned": 55,
        "swing_highs_scanned": 29,
        "swing_lows_scanned": 26,
        "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": 9,
          "medium": 34,
          "low": 68
        },
        "prz_status_counts": {
          "active": 22,
          "nearby": 6,
          "watch": 25,
          "far": 58,
          "forming": 41
        },
        "high_confluence_prz_count": 27,
        "strict_patterns_found": 50,
        "candidate_patterns_found": 61,
        "active_patterns_at_prz": 22,
        "nearby_patterns": 6,
        "all_patterns": [
          "bat",
          "bat",
          "gartley",
          "crab",
          "shark",
          "shark",
          "bat",
          "bat",
          "shark",
          "gartley",
          "gartley",
          "butterfly",
          "bat",
          "gartley",
          "butterfly",
          "bat",
          "crab",
          "gartley",
          "shark",
          "crab",
          "bat",
          "bat",
          "gartley",
          "bat",
          "gartley",
          "bat",
          "shark",
          "butterfly",
          "crab",
          "bat",
          "gartley",
          "bat",
          "crab",
          "crab",
          "shark",
          "crab",
          "bat",
          "crab",
          "crab",
          "crab",
          "crab",
          "crab",
          "crab",
          "crab",
          "butterfly",
          "gartley",
          "butterfly",
          "bat",
          "crab",
          "butterfly",
          "shark",
          "gartley",
          "gartley",
          "gartley",
          "shark",
          "shark",
          "bat",
          "gartley",
          "crab",
          "crab",
          "butterfly",
          "gartley",
          "shark",
          "butterfly",
          "butterfly",
          "butterfly",
          "crab",
          "crab",
          "crab",
          "butterfly",
          "shark",
          "bat",
          "butterfly",
          "shark",
          "butterfly",
          "crab",
          "crab",
          "butterfly",
          "shark",
          "crab",
          "butterfly",
          "bat",
          "bat",
          "shark",
          "crab",
          "gartley",
          "gartley",
          "butterfly",
          "gartley",
          "shark",
          "butterfly",
          "shark",
          "shark",
          "bat",
          "crab",
          "crab",
          "butterfly",
          "crab",
          "butterfly",
          "butterfly",
          "crab",
          "shark",
          "shark",
          "crab",
          "crab",
          "butterfly",
          "gartley",
          "crab",
          "shark",
          "crab",
          "butterfly"
        ],
        "all_signals": [
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish"
        ],
        "best_pattern": "bat",
        "best_pattern_quality": "strict",
        "best_quality": "high",
        "best_pattern_score": 0.885,
        "best_completion_status": "forming",
        "nearest_pattern": "crab",
        "nearest_prz": 59380.53,
        "price_to_prz": -0.02,
        "prz_range": [
          59112.61,
          59648.45
        ],
        "council_relevant_prz_count": 1,
        "directional_influence_prz_count": 1,
        "confirmed_reaction_prz_count": 0,
        "validated_harmonic_tp_count": 0,
        "pattern_candidates": [
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.885,
            "ratio_score": 0.877,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 58886.6,
            "prz_range": [
              58714.42,
              59058.77
            ],
            "prz_width_pct": 0.585,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.85,
            "price_to_prz_pct_raw": -0.8475,
            "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": 58886.6,
              "a_price": 60035.7,
              "tp1_ad_382": 59325.55,
              "tp2_ad_618": 59596.74,
              "tp3_a_or_structure_liquidity": 60035.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5972,
              "ABC": 0.6611
            },
            "x_price": 61578.4,
            "x_idx": 193,
            "x_order": 3,
            "a_price": 60035.7,
            "a_idx": 220,
            "a_order": 5,
            "b_price": 59114.4,
            "b_idx": 224,
            "b_order": 5,
            "c_price": 59723.5,
            "c_idx": 236,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.866,
            "ratio_score": 0.897,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 60074.94,
            "prz_range": [
              59951.97,
              60197.91
            ],
            "prz_width_pct": 0.409,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.15,
            "price_to_prz_pct_raw": 1.1535,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 60074.94,
              "a_price": 61138.9,
              "tp1_ad_382": 60481.37,
              "tp2_ad_618": 60732.47,
              "tp3_a_or_structure_liquidity": 61138.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4332,
              "ABC": 0.3689
            },
            "x_price": 62272.1,
            "x_idx": 104,
            "x_order": 5,
            "a_price": 61138.9,
            "a_idx": 156,
            "a_order": 5,
            "b_price": 60648.0,
            "b_idx": 169,
            "b_order": 8,
            "c_price": 60466.9,
            "c_idx": 214,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.849,
            "ratio_score": 0.788,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 59910.9,
            "prz_range": [
              59757.24,
              60064.56
            ],
            "prz_width_pct": 0.513,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.88,
            "price_to_prz_pct_raw": 0.8773,
            "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": 59910.9,
              "a_price": 59152.7,
              "tp1_ad_382": 59621.27,
              "tp2_ad_618": 59442.33,
              "tp3_a_or_structure_liquidity": 59152.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6464,
              "ABC": 0.8989
            },
            "x_price": 60035.7,
            "x_idx": 220,
            "x_order": 5,
            "a_price": 59152.7,
            "a_idx": 233,
            "a_order": 8,
            "b_price": 59723.5,
            "b_idx": 236,
            "b_order": 5,
            "c_price": 59210.4,
            "c_idx": 295,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.842,
            "ratio_score": 0.602,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 59507.4,
            "prz_range": [
              59354.43,
              59660.38
            ],
            "prz_width_pct": 0.514,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.2,
            "price_to_prz_pct_raw": 0.1979,
            "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": 59507.4,
              "a_price": 60466.9,
              "tp1_ad_382": 59873.93,
              "tp2_ad_618": 60100.37,
              "tp3_a_or_structure_liquidity": 60466.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6851,
              "ABC": 0.6952
            },
            "x_price": 61578.4,
            "x_idx": 193,
            "x_order": 3,
            "a_price": 60466.9,
            "a_idx": 214,
            "a_order": 3,
            "b_price": 59705.4,
            "b_idx": 247,
            "b_order": 3,
            "c_price": 60234.8,
            "c_idx": 269,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.817,
            "ratio_score": 0.813,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 60164.3,
            "prz_range": [
              59831.89,
              60188.3
            ],
            "prz_width_pct": 0.594,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.04,
            "price_to_prz_pct_raw": 1.0443,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 1.383,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 60010.1,
              "a_price": 58835.2,
              "tp1_ad_382": 59561.29,
              "tp2_ad_618": 59284.01,
              "tp3_a_or_structure_liquidity": 58835.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.576,
              "ABC": 0.6622,
              "BCD": 1.6256,
              "XAD": 0.8145
            },
            "x_price": 60466.9,
            "x_idx": 214,
            "x_order": 3,
            "a_price": 58835.2,
            "a_idx": 217,
            "a_order": 3,
            "b_price": 59775.0,
            "b_idx": 228,
            "b_order": 5,
            "c_price": 59152.7,
            "c_idx": 233,
            "c_order": 8,
            "d_idx": 250
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.84,
            "ratio_score": 0.828,
            "prz_score": 0.878,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 59775.24,
            "prz_range": [
              59501.96,
              60048.52
            ],
            "prz_width_pct": 0.914,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.65,
            "price_to_prz_pct_raw": 0.6488,
            "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": 59775.24,
              "a_price": 61931.1,
              "tp1_ad_382": 60598.78,
              "tp2_ad_618": 61107.56,
              "tp3_a_or_structure_liquidity": 61931.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.749,
              "ABC": 0.659
            },
            "x_price": 60752.8,
            "x_idx": 150,
            "x_order": 3,
            "a_price": 61931.1,
            "a_idx": 186,
            "a_order": 8,
            "b_price": 61048.5,
            "b_idx": 205,
            "b_order": 3,
            "c_price": 60466.9,
            "c_idx": 214,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "low",
            "pattern_score": 0.807,
            "ratio_score": 0.81,
            "prz_score": 0.879,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 60063.01,
            "prz_range": [
              59789.27,
              60336.74
            ],
            "prz_width_pct": 0.911,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.13,
            "price_to_prz_pct_raw": 1.1334,
            "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": 60063.01,
              "a_price": 59114.4,
              "tp1_ad_382": 59700.64,
              "tp2_ad_618": 59476.77,
              "tp3_a_or_structure_liquidity": 59114.4,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4884,
              "ABC": 0.942
            },
            "x_price": 60466.9,
            "x_idx": 214,
            "x_order": 3,
            "a_price": 59114.4,
            "a_idx": 224,
            "a_order": 5,
            "b_price": 59775.0,
            "b_idx": 228,
            "b_order": 5,
            "c_price": 59152.7,
            "c_idx": 233,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "shark",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.806,
            "ratio_score": 0.882,
            "prz_score": 0.907,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 60336.71,
            "prz_range": [
              60083.38,
              60590.03
            ],
            "prz_width_pct": 0.84,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.59,
            "price_to_prz_pct_raw": 1.5942,
            "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": "shark",
              "d_price": 60336.71,
              "a_price": 59705.4,
              "tp1_ad_382": 60095.55,
              "tp2_ad_618": 59946.56,
              "tp3_a_or_structure_liquidity": 59705.4,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6026,
              "ABC": 1.0854
            },
            "x_price": 60466.9,
            "x_idx": 214,
            "x_order": 3,
            "a_price": 59705.4,
            "a_idx": 247,
            "a_order": 3,
            "b_price": 60164.3,
            "b_idx": 250,
            "b_order": 5,
            "c_price": 59666.2,
            "c_idx": 276,
            "c_order": 8,
            "d_idx": null
          }
        ],
        "council_relevant_prz": [
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.885,
            "ratio_score": 0.877,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 58886.6,
            "prz_range": [
              58714.42,
              59058.77
            ],
            "prz_width_pct": 0.585,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.85,
            "price_to_prz_pct_raw": -0.8475,
            "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": 58886.6,
              "a_price": 60035.7,
              "tp1_ad_382": 59325.55,
              "tp2_ad_618": 59596.74,
              "tp3_a_or_structure_liquidity": 60035.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5972,
              "ABC": 0.6611
            },
            "x_price": 61578.4,
            "x_idx": 193,
            "x_order": 3,
            "a_price": 60035.7,
            "a_idx": 220,
            "a_order": 5,
            "b_price": 59114.4,
            "b_idx": 224,
            "b_order": 5,
            "c_price": 59723.5,
            "c_idx": 236,
            "c_order": 5,
            "d_idx": null
          }
        ],
        "report_detail_candidates": [
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.885,
            "ratio_score": 0.877,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 58886.6,
            "prz_range": [
              58714.42,
              59058.77
            ],
            "prz_width_pct": 0.585,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.85,
            "price_to_prz_pct_raw": -0.8475,
            "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": 58886.6,
              "a_price": 60035.7,
              "tp1_ad_382": 59325.55,
              "tp2_ad_618": 59596.74,
              "tp3_a_or_structure_liquidity": 60035.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5972,
              "ABC": 0.6611
            },
            "x_price": 61578.4,
            "x_idx": 193,
            "x_order": 3,
            "a_price": 60035.7,
            "a_idx": 220,
            "a_order": 5,
            "b_price": 59114.4,
            "b_idx": 224,
            "b_order": 5,
            "c_price": 59723.5,
            "c_idx": 236,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.866,
            "ratio_score": 0.897,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 60074.94,
            "prz_range": [
              59951.97,
              60197.91
            ],
            "prz_width_pct": 0.409,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.15,
            "price_to_prz_pct_raw": 1.1535,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 60074.94,
              "a_price": 61138.9,
              "tp1_ad_382": 60481.37,
              "tp2_ad_618": 60732.47,
              "tp3_a_or_structure_liquidity": 61138.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4332,
              "ABC": 0.3689
            },
            "x_price": 62272.1,
            "x_idx": 104,
            "x_order": 5,
            "a_price": 61138.9,
            "a_idx": 156,
            "a_order": 5,
            "b_price": 60648.0,
            "b_idx": 169,
            "b_order": 8,
            "c_price": 60466.9,
            "c_idx": 214,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.849,
            "ratio_score": 0.788,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 59910.9,
            "prz_range": [
              59757.24,
              60064.56
            ],
            "prz_width_pct": 0.513,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.88,
            "price_to_prz_pct_raw": 0.8773,
            "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": 59910.9,
              "a_price": 59152.7,
              "tp1_ad_382": 59621.27,
              "tp2_ad_618": 59442.33,
              "tp3_a_or_structure_liquidity": 59152.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6464,
              "ABC": 0.8989
            },
            "x_price": 60035.7,
            "x_idx": 220,
            "x_order": 5,
            "a_price": 59152.7,
            "a_idx": 233,
            "a_order": 8,
            "b_price": 59723.5,
            "b_idx": 236,
            "b_order": 5,
            "c_price": 59210.4,
            "c_idx": 295,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.842,
            "ratio_score": 0.602,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 59507.4,
            "prz_range": [
              59354.43,
              59660.38
            ],
            "prz_width_pct": 0.514,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.2,
            "price_to_prz_pct_raw": 0.1979,
            "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": 59507.4,
              "a_price": 60466.9,
              "tp1_ad_382": 59873.93,
              "tp2_ad_618": 60100.37,
              "tp3_a_or_structure_liquidity": 60466.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6851,
              "ABC": 0.6952
            },
            "x_price": 61578.4,
            "x_idx": 193,
            "x_order": 3,
            "a_price": 60466.9,
            "a_idx": 214,
            "a_order": 3,
            "b_price": 59705.4,
            "b_idx": 247,
            "b_order": 3,
            "c_price": 60234.8,
            "c_idx": 269,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.817,
            "ratio_score": 0.813,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 60164.3,
            "prz_range": [
              59831.89,
              60188.3
            ],
            "prz_width_pct": 0.594,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.04,
            "price_to_prz_pct_raw": 1.0443,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 1.383,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 60010.1,
              "a_price": 58835.2,
              "tp1_ad_382": 59561.29,
              "tp2_ad_618": 59284.01,
              "tp3_a_or_structure_liquidity": 58835.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.576,
              "ABC": 0.6622,
              "BCD": 1.6256,
              "XAD": 0.8145
            },
            "x_price": 60466.9,
            "x_idx": 214,
            "x_order": 3,
            "a_price": 58835.2,
            "a_idx": 217,
            "a_order": 3,
            "b_price": 59775.0,
            "b_idx": 228,
            "b_order": 5,
            "c_price": 59152.7,
            "c_idx": 233,
            "c_order": 8,
            "d_idx": 250
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.84,
            "ratio_score": 0.828,
            "prz_score": 0.878,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 59775.24,
            "prz_range": [
              59501.96,
              60048.52
            ],
            "prz_width_pct": 0.914,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.65,
            "price_to_prz_pct_raw": 0.6488,
            "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": 59775.24,
              "a_price": 61931.1,
              "tp1_ad_382": 60598.78,
              "tp2_ad_618": 61107.56,
              "tp3_a_or_structure_liquidity": 61931.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.749,
              "ABC": 0.659
            },
            "x_price": 60752.8,
            "x_idx": 150,
            "x_order": 3,
            "a_price": 61931.1,
            "a_idx": 186,
            "a_order": 8,
            "b_price": 61048.5,
            "b_idx": 205,
            "b_order": 3,
            "c_price": 60466.9,
            "c_idx": 214,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "low",
            "pattern_score": 0.807,
            "ratio_score": 0.81,
            "prz_score": 0.879,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 60063.01,
            "prz_range": [
              59789.27,
              60336.74
            ],
            "prz_width_pct": 0.911,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.13,
            "price_to_prz_pct_raw": 1.1334,
            "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": 60063.01,
              "a_price": 59114.4,
              "tp1_ad_382": 59700.64,
              "tp2_ad_618": 59476.77,
              "tp3_a_or_structure_liquidity": 59114.4,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4884,
              "ABC": 0.942
            },
            "x_price": 60466.9,
            "x_idx": 214,
            "x_order": 3,
            "a_price": 59114.4,
            "a_idx": 224,
            "a_order": 5,
            "b_price": 59775.0,
            "b_idx": 228,
            "b_order": 5,
            "c_price": 59152.7,
            "c_idx": 233,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "shark",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.806,
            "ratio_score": 0.882,
            "prz_score": 0.907,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 60336.71,
            "prz_range": [
              60083.38,
              60590.03
            ],
            "prz_width_pct": 0.84,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.59,
            "price_to_prz_pct_raw": 1.5942,
            "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": "shark",
              "d_price": 60336.71,
              "a_price": 59705.4,
              "tp1_ad_382": 60095.55,
              "tp2_ad_618": 59946.56,
              "tp3_a_or_structure_liquidity": 59705.4,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6026,
              "ABC": 1.0854
            },
            "x_price": 60466.9,
            "x_idx": 214,
            "x_order": 3,
            "a_price": 59705.4,
            "a_idx": 247,
            "a_order": 3,
            "b_price": 60164.3,
            "b_idx": 250,
            "b_order": 5,
            "c_price": 59666.2,
            "c_idx": 276,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "low",
            "pattern_score": 0.785,
            "ratio_score": 0.815,
            "prz_score": 0.879,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 60245.0,
            "prz_range": [
              59789.27,
              60336.74
            ],
            "prz_width_pct": 0.911,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 1.13,
            "price_to_prz_pct_raw": 1.1334,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "post_D_close_progress"
              ],
              "reaction_score": 0.9,
              "reaction_detail": {
                "reaction_score": 0.9,
                "reaction_move_ratio_ad": 0.563,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "post_D_close_progress"
                ]
              },
              "path_role": "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": 60063.01,
              "a_price": 59114.4,
              "tp1_ad_382": 59700.64,
              "tp2_ad_618": 59476.77,
              "tp3_a_or_structure_liquidity": 59114.4,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4884,
              "ABC": 0.942,
              "BCD": 1.7553,
              "XAD": 0.8359
            },
            "x_price": 60466.9,
            "x_idx": 214,
            "x_order": 3,
            "a_price": 59114.4,
            "a_idx": 224,
            "a_order": 5,
            "b_price": 59775.0,
            "b_idx": 228,
            "b_order": 5,
            "c_price": 59152.7,
            "c_idx": 233,
            "c_order": 8,
            "d_idx": 243
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "medium",
            "pattern_score": 0.766,
            "ratio_score": 0.589,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 59666.2,
            "prz_range": [
              59378.99,
              59690.01
            ],
            "prz_width_pct": 0.522,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.24,
            "price_to_prz_pct_raw": 0.2435,
            "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": 1.334,
                "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": 59534.5,
              "a_price": 60466.9,
              "tp1_ad_382": 59890.68,
              "tp2_ad_618": 60110.72,
              "tp3_a_or_structure_liquidity": 60466.9,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6851,
              "ABC": 0.6026,
              "BCD": 1.0854,
              "XAD": 0.7204
            },
            "x_price": 61578.4,
            "x_idx": 193,
            "x_order": 3,
            "a_price": 60466.9,
            "a_idx": 214,
            "a_order": 3,
            "b_price": 59705.4,
            "b_idx": 247,
            "b_order": 3,
            "c_price": 60164.3,
            "c_idx": 250,
            "c_order": 5,
            "d_idx": 276
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "low",
            "pattern_score": 0.727,
            "ratio_score": 0.632,
            "prz_score": 0.878,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 59114.4,
            "prz_range": [
              59501.96,
              60048.52
            ],
            "prz_width_pct": 0.914,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.65,
            "price_to_prz_pct_raw": 0.6488,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "initial_PRZ_reaction",
                "post_D_close_progress"
              ],
              "reaction_score": 0.35,
              "reaction_detail": {
                "reaction_score": 0.35,
                "reaction_move_ratio_ad": 0.235,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "initial_PRZ_reaction",
                  "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": 59775.24,
              "a_price": 61931.1,
              "tp1_ad_382": 60598.78,
              "tp2_ad_618": 61107.56,
              "tp3_a_or_structure_liquidity": 61931.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.749,
              "ABC": 0.659,
              "BCD": 2.3255,
              "XAD": 2.3905
            },
            "x_price": 60752.8,
            "x_idx": 150,
            "x_order": 3,
            "a_price": 61931.1,
            "a_idx": 186,
            "a_order": 8,
            "b_price": 61048.5,
            "b_idx": 205,
            "b_order": 3,
            "c_price": 60466.9,
            "c_idx": 214,
            "c_order": 3,
            "d_idx": 224
          },
          {
            "pattern": "shark",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "low",
            "pattern_score": 0.878,
            "ratio_score": 1.0,
            "prz_score": 0.798,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": false,
            "d_price": 58975.08,
            "prz_range": [
              58645.28,
              59304.89
            ],
            "prz_width_pct": 1.118,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.7,
            "price_to_prz_pct_raw": -0.6985,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "shark",
              "d_price": 58975.08,
              "a_price": 60035.7,
              "tp1_ad_382": 59380.24,
              "tp2_ad_618": 59630.54,
              "tp3_a_or_structure_liquidity": 60035.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5724,
              "ABC": 1.1456
            },
            "x_price": 61578.4,
            "x_idx": 193,
            "x_order": 3,
            "a_price": 60035.7,
            "a_idx": 220,
            "a_order": 5,
            "b_price": 59152.7,
            "b_idx": 233,
            "b_order": 8,
            "c_price": 60164.3,
            "c_idx": 250,
            "c_order": 5,
            "d_idx": null
          }
        ],
        "actionable_patterns_list": [
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.885,
            "prz_proximity": "nearby",
            "prz_range": [
              58714.42,
              59058.77
            ],
            "prz_reversal_direction": "up",
            "price_to_prz_pct": -0.85,
            "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": 58886.6,
              "a_price": 60035.7,
              "tp1_ad_382": 59325.55,
              "tp2_ad_618": 59596.74,
              "tp3_a_or_structure_liquidity": 60035.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "GARTLEY FORMING HIGH PRZ $58,714.42-$59,058.77: expected reversal UP if price reacts in zone"
          }
        ],
        "best_council_prz": {
          "pattern": "gartley",
          "signal": "bullish",
          "completion_status": "forming",
          "pattern_quality": "strict",
          "quality": "high",
          "pattern_score": 0.885,
          "ratio_score": 0.877,
          "prz_score": 1.0,
          "prz_proximity": "nearby",
          "action_status": "nearby",
          "high_confluence_prz": true,
          "d_price": 58886.6,
          "prz_range": [
            58714.42,
            59058.77
          ],
          "prz_width_pct": 0.585,
          "prz_confluence_count": 3,
          "prz_fib_families": [
            "ABCD",
            "BC_EXT",
            "XAD"
          ],
          "price_to_prz_pct": -0.85,
          "price_to_prz_pct_raw": -0.8475,
          "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": 58886.6,
            "a_price": 60035.7,
            "tp1_ad_382": 59325.55,
            "tp2_ad_618": 59596.74,
            "tp3_a_or_structure_liquidity": 60035.7,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          "ratios": {
            "XAB": 0.5972,
            "ABC": 0.6611
          },
          "x_price": 61578.4,
          "x_idx": 193,
          "x_order": 3,
          "a_price": 60035.7,
          "a_idx": 220,
          "a_order": 5,
          "b_price": 59114.4,
          "b_idx": 224,
          "b_order": 5,
          "c_price": 59723.5,
          "c_idx": 236,
          "c_order": 5,
          "d_idx": null
        },
        "best_tp_ladder": {
          "direction": "bullish",
          "source": "gartley",
          "d_price": 58886.6,
          "a_price": 60035.7,
          "tp1_ad_382": 59325.55,
          "tp2_ad_618": 59596.74,
          "tp3_a_or_structure_liquidity": 60035.7,
          "note": "Use as strong TP ladder context; not standalone path authority."
        },
        "tp_ladder": [
          {
            "direction": "bullish",
            "source": "gartley",
            "d_price": 58886.6,
            "a_price": 60035.7,
            "tp1_ad_382": 59325.55,
            "tp2_ad_618": 59596.74,
            "tp3_a_or_structure_liquidity": 60035.7,
            "note": "Use as strong TP ladder context; not standalone path authority."
          }
        ],
        "validated_tp_ladder": [],
        "harmonic_governance": {
          "role": "PRZ reaction + TP ladder confluence, not standalone path engine",
          "pre_confirmation_weight_range": [
            0.25,
            0.35
          ],
          "post_confirmation_vote_weight_range": [
            0.5,
            0.6
          ],
          "standalone_path_override_allowed": false,
          "opposes_core_path_policy": "branch/reversal-risk/reaction-zone unless lower-TF structure and derivatives also confirm",
          "aligns_with_core_path_policy": "modest confidence lift plus strong TP ladder influence"
        },
        "execution_readiness": "watch",
        "directional_scores": {
          "bullish": 0.131,
          "bearish": 0
        },
        "directional_score_total": 0.131,
        "directional_dominance": 1.0
      },
      "raw_llm_response": "{\n  \"signal\": \"neutral\",\n  \"confidence\": 0.58,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.46,\n  \"setup_signals\": [\n    \"엄격한 고품질 bullish Gartley 형성 PRZ가 $58,714.42-$59,058.77에 대기 중이며, 예상 D값은 $58,886.60\",\n    \"해당 PRZ는 XAD, BC_EXT, ABCD 3개 Fib 패밀리 confluence를 갖고 있으며 PRZ 점수 1.0, 패턴 점수 0.885\",\n    \"현재가 $59,389.90는 핵심 bullish Gartley PRZ 상단 $59,058.77보다 약 0.85% 위에 있어 아직 진입/터치 전 상태\",\n    \"후보 등급 active bullish Gartley PRZ $59,354.43-$59,660.38 안에 현재가가 위치하지만 candidate-tier라 방향성 투표를 지배할 수 없음\",\n    \"EMA20 $59,732.59, EMA120 $60,090.66, EMA240 $60,632.05 아래에서 거래되어 구조 확정 전 반등 셋업은 아직 방어적 성격\"\n  ],\n  \"reasoning\": \"현재 harmonic 기준에서 가장 중요한 actionable 구조는 strict/high bullish Gartley이며 PRZ는 $58,714.42-$59,058.77, D값은 $58,886.60입니다. 다만 현재가 $59,389.90는 아직 해당 PRZ에 진입하지 않았고, confirmed_reaction_prz_count가 0이므로 이 패턴은 사전확인 반전 후보일 뿐 메인 경로를 뒤집을 권한은 없습니다. 방향 점수도 bullish 0.131, bearish 0으로 약한 편이며, 실행 준비도는 watch로 분류됩니다. 구조적으로는 명확한 BOS/CHoCH 또는 PRZ 반응 확인이 제공되지 않았기 때문에 structure_bias는 neutral로 두지만, $58,714-$59,059 구간 접근 시 단기 bullish 반응 셋업은 유효합니다.\",\n  \"key_levels\": {\n    \"support\": [\n      59058.77,\n      58886.6,\n      58714.42,\n      58030.0\n    ],\n    \"resistance\": [\n      59325.55,\n      59596.74,\n      59732.59,\n      60035.7,\n      60090.66,\n      60632.05\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"58714.42\",\n  \"risk_scenario\": \"$58,714.42-$59,058.77 bullish Gartley PRZ에 진입한 뒤 반응 없이 $58,714.42 아래로 수용되면 PRZ 방어 실패로 해석되며, $58,030.00 7일 저점 재테스트 또는 하방 유동성 확장 위험이 커집니다. 반대로 PRZ 터치 후 $59,058.77 재탈환, 15분 또는 1시간 CHoCH/MSS, CVD 다이버전스나 OI squeeze가 동반되면 harmonic은 중간 강도 bullish 보조 근거로 승격될 수 있고 TP는 $59,325.55, $59,596.74, $60,035.70 순으로 봅니다.\",\n  \"data_quality\": \"high\"\n}"
    },
    "candlestick": {
      "agent_id": "candlestick",
      "display_name": "Candlestick Reader",
      "signal": "bearish",
      "confidence": 0.58,
      "structure_bias": "bearish",
      "setup_bias": "bearish",
      "setup_score": 0.55,
      "setup_signals": [
        "현재가 $59,389.90가 EMA20 $59,732.59 아래에 위치하여 단기 반등이 아직 평균선 위로 수용되지 못함",
        "현재가가 EMA120 $60,090.66 및 EMA240 $60,632.05 아래에 있어 중기 구조가 하방 우위",
        "최근 패턴에서 bearish_engulfing@299가 발생했으나 거래량 확인은 없음",
        "bear_score 2.10이 bull_score 1.20보다 높아 캔들 신호의 방향성이 매도 쪽으로 기울어짐",
        "7일 범위 EQ 약 $60,619.80 아래의 디스카운트 구간에 있지만, 아직 bullish reversal 확인 없이 약세 캔들이 우세"
      ],
      "reasoning": "BTC/USDT는 현재 $59,389.90으로 EMA20 $59,732.59, EMA120 $60,090.66, EMA240 $60,632.05를 모두 하회하고 있어 확인된 구조는 약세로 평가된다. 최근 6개 패턴 중 bearish_engulfing@299가 가장 최신에 발생했고, bear_score 2.10이 bull_score 1.20보다 높아 단기 캔들 흐름도 매도 우위다. 다만 best_pattern_quality가 0.602에 그치고 high_volume_patterns가 없어 강한 확정 신호라기보다는 약한 하방 지속 신호에 가깝다. 현재 가격은 7일 저점 $58,030.00 위에 있어 지지권 반응 가능성은 있으나, $59,732.59~$60,090.66 회복 전까지는 반등보다 재하락 리스크가 더 크다.",
      "key_levels": {
        "support": [
          59143.46,
          58897.02,
          58030.0
        ],
        "resistance": [
          59732.59,
          60090.66,
          60619.8,
          60632.05,
          63209.6
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$60,090.66",
      "risk_scenario": "가격이 EMA20 $59,732.59를 회복한 뒤 EMA120 $60,090.66 위에서 15분봉 종가 수용을 만들면 bearish engulfing 기반의 단기 하방 시나리오는 약화된다. 이 경우 $60,619.80 EQ와 EMA240 $60,632.05까지 숏 커버성 반등이 진행될 수 있다.",
      "data_quality": "medium",
      "metrics": {
        "total_patterns_detected": 124,
        "recent_patterns": 6,
        "pattern_list": [
          "bearish_engulfing@293",
          "bearish_engulfing@299",
          "doji@292",
          "bullish_harami@292",
          "bearish_harami@297",
          "bullish_harami@298"
        ],
        "atr_value": 246.44,
        "vol_avg_20": 2539.72,
        "high_volume_patterns": [],
        "pattern_candidates": [
          {
            "pattern": "bullish_harami",
            "signal": "bullish",
            "pattern_quality": 0.602,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "bullish_harami",
            "signal": "bullish",
            "pattern_quality": 0.533,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "bearish_engulfing",
            "signal": "bearish",
            "pattern_quality": 0.488,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "bearish_engulfing",
            "signal": "bearish",
            "pattern_quality": 0.416,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "doji",
            "signal": "neutral",
            "pattern_quality": 0.355,
            "tier": "candidate",
            "high_volume": false
          }
        ],
        "best_pattern_quality": 0.602,
        "bull_score": 1.2,
        "bear_score": 2.1
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.58,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.55,\n  \"setup_signals\": [\n    \"현재가 $59,389.90가 EMA20 $59,732.59 아래에 위치하여 단기 반등이 아직 평균선 위로 수용되지 못함\",\n    \"현재가가 EMA120 $60,090.66 및 EMA240 $60,632.05 아래에 있어 중기 구조가 하방 우위\",\n    \"최근 패턴에서 bearish_engulfing@299가 발생했으나 거래량 확인은 없음\",\n    \"bear_score 2.10이 bull_score 1.20보다 높아 캔들 신호의 방향성이 매도 쪽으로 기울어짐\",\n    \"7일 범위 EQ 약 $60,619.80 아래의 디스카운트 구간에 있지만, 아직 bullish reversal 확인 없이 약세 캔들이 우세\"\n  ],\n  \"reasoning\": \"BTC/USDT는 현재 $59,389.90으로 EMA20 $59,732.59, EMA120 $60,090.66, EMA240 $60,632.05를 모두 하회하고 있어 확인된 구조는 약세로 평가된다. 최근 6개 패턴 중 bearish_engulfing@299가 가장 최신에 발생했고, bear_score 2.10이 bull_score 1.20보다 높아 단기 캔들 흐름도 매도 우위다. 다만 best_pattern_quality가 0.602에 그치고 high_volume_patterns가 없어 강한 확정 신호라기보다는 약한 하방 지속 신호에 가깝다. 현재 가격은 7일 저점 $58,030.00 위에 있어 지지권 반응 가능성은 있으나, $59,732.59~$60,090.66 회복 전까지는 반등보다 재하락 리스크가 더 크다.\",\n  \"key_levels\": {\n    \"support\": [\n      59143.46,\n      58897.02,\n      58030.0\n    ],\n    \"resistance\": [\n      59732.59,\n      60090.66,\n      60619.8,\n      60632.05,\n      63209.6\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$60,090.66\",\n  \"risk_scenario\": \"가격이 EMA20 $59,732.59를 회복한 뒤 EMA120 $60,090.66 위에서 15분봉 종가 수용을 만들면 bearish engulfing 기반의 단기 하방 시나리오는 약화된다. 이 경우 $60,619.80 EQ와 EMA240 $60,632.05까지 숏 커버성 반등이 진행될 수 있다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "wyckoff": {
      "agent_id": "wyckoff",
      "display_name": "Wyckoff Expert",
      "signal": "bearish",
      "confidence": 0.82,
      "structure_bias": "bearish",
      "setup_bias": "neutral",
      "setup_score": 0.35,
      "setup_signals": [
        "현재가 $59,389.90은 선행 분배 구간 하단 $62,161.20 및 AR 저점 $62,161.20 아래에서 거래되어 Phase E 이탈 수용 상태",
        "활성 재분배 후보에서 UT $60,234.80 이후 UTAD $60,734.00 실패, 이후 SOW $60,458.80 아래로 재하락",
        "현재가는 활성 Phase E 저점 $59,210.40 근처에 있어 즉시 추격 매도보다는 저점 재시험/반등 테스트 구간",
        "EMA20 $59,732.59, EMA120 $60,090.66, EMA240 $60,632.05가 모두 현재가 위에 있어 단기 회복 시 공급 확인 저항으로 작동 가능"
      ],
      "reasoning": "15분 BTC 구조는 regime=DIS, regime_state=confirmed_dis, dis_score=100.0 및 regime_fitness=1.000으로 확인된 분배/재분배 약세 구조입니다. 선행 구조는 BC $62,837.10 → AR $62,161.20 → ST $63,090.90 → UT $63,209.60 → LPSY $61,931.10 → SOW $61,578.40 → Phase E $58,030.00 순서로 완성되어, 현재 가격 $59,389.90은 원 분배 박스 하단 $62,161.20 아래에 머물고 있습니다. 활성 구조에서도 UT $60,234.80 및 UTAD $60,734.00 이후 SOW $60,458.80 실패가 발생했고, 현재는 Phase E 저점 $59,210.40 부근에서 약한 반등만 보이는 상태입니다. 다만 현재가가 단기 Phase E 저점에 근접해 있어 즉시 하방 추세 재개보다 $59,210.40 재시험 또는 $59,732.59~$60,090.66 회복 테스트가 먼저 나올 수 있으므로 setup_bias는 구조와 달리 중립으로 둡니다.",
      "key_levels": {
        "support": [
          59210.4,
          58030.0,
          58288.0
        ],
        "resistance": [
          59732.59,
          60090.66,
          60458.8,
          60734.0,
          61931.1,
          62161.2,
          62837.1,
          63209.6
        ]
      },
      "time_horizon": "short to medium term",
      "invalidation_level": "$60,734.00 상방 회복 및 수용",
      "risk_scenario": "반대 시나리오는 현재 Phase E 저점 $59,210.40 부근에서 매도 압력이 고갈되고, 가격이 EMA20 $59,732.59와 EMA120 $60,090.66을 회복한 뒤 UTAD 실패 기준점 $60,734.00 위에서 수용되는 경우입니다. 이 경우 활성 재분배의 하방 지속 해석은 약화되고, $61,931.10 LPSY 및 원 분배 하단 $62,161.20 재시험으로 경로가 바뀔 수 있습니다.",
      "data_quality": "high",
      "metrics": {
        "acc_score": 92.5,
        "dis_score": 100.0,
        "regime": "DIS",
        "regime_state": "confirmed_dis",
        "structure_bias": "bearish",
        "phase_context": "confirmed_dis / distribution / Phase E",
        "phases_detected": [
          "BC",
          "AR",
          "ST",
          "SOW_IN_PHASE_B",
          "UT",
          "LPSY",
          "SOW",
          "Phase E"
        ],
        "last_phase": "Phase E",
        "phase_candidates": [
          {
            "label": "BC",
            "side": "high",
            "idx": 21,
            "price": 62837.1,
            "color": "#ffd166"
          },
          {
            "label": "AR",
            "side": "low",
            "idx": 25,
            "price": 62161.2,
            "color": "#06d6a0"
          },
          {
            "label": "ST",
            "side": "high",
            "idx": 66,
            "price": 63090.9,
            "color": "#118ab2"
          },
          {
            "label": "SOW_IN_PHASE_B",
            "side": "low",
            "idx": 104,
            "price": 62272.1,
            "color": "#ef476f"
          },
          {
            "label": "UT",
            "side": "high",
            "idx": 107,
            "price": 63209.6,
            "color": "#f9844a"
          },
          {
            "label": "LPSY",
            "side": "high",
            "idx": 186,
            "price": 61931.1,
            "color": "#8338ec"
          },
          {
            "label": "SOW",
            "side": "low",
            "idx": 193,
            "price": 61578.4,
            "color": "#ef476f"
          },
          {
            "label": "Phase E",
            "side": "low",
            "idx": 211,
            "price": 58030.0,
            "color": "#7209b7"
          }
        ],
        "phase_structures": [
          {
            "structure_id": "15m_cycle_1",
            "sequence": 1,
            "timeframe": "15m",
            "regime": "distribution",
            "role": "prior_completed_structure",
            "is_active": false,
            "is_completed": true,
            "is_confirmed": true,
            "structure_bias": "bearish",
            "phase_context": "distribution",
            "start_idx": 21,
            "end_idx": 211,
            "phase_count": 8,
            "phases": [
              {
                "label": "BC",
                "side": "high",
                "idx": 21,
                "price": 62837.1,
                "color": "#ffd166",
                "dt": "2026-06-23 23:15:00+09:00"
              },
              {
                "label": "AR",
                "side": "low",
                "idx": 25,
                "price": 62161.2,
                "color": "#06d6a0",
                "dt": "2026-06-24 00:15:00+09:00"
              },
              {
                "label": "ST",
                "side": "high",
                "idx": 66,
                "price": 63090.9,
                "color": "#118ab2",
                "dt": "2026-06-24 10:30:00+09:00"
              },
              {
                "label": "SOW_IN_PHASE_B",
                "side": "low",
                "idx": 104,
                "price": 62272.1,
                "color": "#ef476f",
                "dt": "2026-06-24 20:00:00+09:00"
              },
              {
                "label": "UT",
                "side": "high",
                "idx": 107,
                "price": 63209.6,
                "color": "#f9844a",
                "dt": "2026-06-24 20:45:00+09:00"
              },
              {
                "label": "LPSY",
                "side": "high",
                "idx": 186,
                "price": 61931.1,
                "color": "#8338ec",
                "dt": "2026-06-25 16:30:00+09:00"
              },
              {
                "label": "SOW",
                "side": "low",
                "idx": 193,
                "price": 61578.4,
                "color": "#ef476f",
                "dt": "2026-06-25 18:15:00+09:00"
              },
              {
                "label": "Phase E",
                "side": "low",
                "idx": 211,
                "price": 58030.0,
                "color": "#7209b7",
                "dt": "2026-06-25 22:45:00+09:00"
              }
            ]
          },
          {
            "structure_id": "15m_cycle_2",
            "sequence": 2,
            "timeframe": "15m",
            "regime": "redistribution",
            "role": "current_structure_candidate",
            "is_active": true,
            "is_completed": false,
            "is_confirmed": true,
            "structure_bias": "bearish",
            "phase_context": "redistribution",
            "start_idx": 200,
            "end_idx": 295,
            "phase_count": 8,
            "phases": [
              {
                "label": "SC",
                "side": "low",
                "idx": 200,
                "price": 61033.5,
                "color": "#ffd166",
                "dt": "2026-06-25 20:00:00+09:00"
              },
              {
                "label": "AR",
                "side": "high",
                "idx": 220,
                "price": 60035.7,
                "color": "#06d6a0",
                "dt": "2026-06-26 01:00:00+09:00"
              },
              {
                "label": "ST",
                "side": "low",
                "idx": 247,
                "price": 59705.4,
                "color": "#118ab2",
                "dt": "2026-06-26 07:45:00+09:00"
              },
              {
                "label": "SOW_IN_PHASE_B",
                "side": "low",
                "idx": 264,
                "price": 58288.0,
                "color": "#ef476f",
                "dt": "2026-06-26 12:00:00+09:00"
              },
              {
                "label": "UT",
                "side": "high",
                "idx": 269,
                "price": 60234.8,
                "color": "#f9844a",
                "dt": "2026-06-26 13:15:00+09:00"
              },
              {
                "label": "UTAD",
                "side": "high",
                "idx": 282,
                "price": 60734.0,
                "color": "#f9844a",
                "dt": "2026-06-26 16:30:00+09:00"
              },
              {
                "label": "SOW",
                "side": "low",
                "idx": 283,
                "price": 60458.8,
                "color": "#ef476f",
                "dt": "2026-06-26 16:45:00+09:00"
              },
              {
                "label": "Phase E",
                "side": "low",
                "idx": 295,
                "price": 59210.4,
                "color": "#7209b7",
                "dt": "2026-06-26 19:45:00+09:00"
              }
            ]
          }
        ],
        "active_structure_id": "15m_cycle_2",
        "primary_structure_id": "15m_cycle_1",
        "structure_count": 2,
        "regime_fitness": 1.0,
        "current_event": "Phase E",
        "major_phase": "E",
        "pos_in_range": 0.5,
        "main_range_low": 62161.2,
        "main_range_high": 62837.1
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.82,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"neutral\",\n  \"setup_score\": 0.35,\n  \"setup_signals\": [\n    \"현재가 $59,389.90은 선행 분배 구간 하단 $62,161.20 및 AR 저점 $62,161.20 아래에서 거래되어 Phase E 이탈 수용 상태\",\n    \"활성 재분배 후보에서 UT $60,234.80 이후 UTAD $60,734.00 실패, 이후 SOW $60,458.80 아래로 재하락\",\n    \"현재가는 활성 Phase E 저점 $59,210.40 근처에 있어 즉시 추격 매도보다는 저점 재시험/반등 테스트 구간\",\n    \"EMA20 $59,732.59, EMA120 $60,090.66, EMA240 $60,632.05가 모두 현재가 위에 있어 단기 회복 시 공급 확인 저항으로 작동 가능\"\n  ],\n  \"reasoning\": \"15분 BTC 구조는 regime=DIS, regime_state=confirmed_dis, dis_score=100.0 및 regime_fitness=1.000으로 확인된 분배/재분배 약세 구조입니다. 선행 구조는 BC $62,837.10 → AR $62,161.20 → ST $63,090.90 → UT $63,209.60 → LPSY $61,931.10 → SOW $61,578.40 → Phase E $58,030.00 순서로 완성되어, 현재 가격 $59,389.90은 원 분배 박스 하단 $62,161.20 아래에 머물고 있습니다. 활성 구조에서도 UT $60,234.80 및 UTAD $60,734.00 이후 SOW $60,458.80 실패가 발생했고, 현재는 Phase E 저점 $59,210.40 부근에서 약한 반등만 보이는 상태입니다. 다만 현재가가 단기 Phase E 저점에 근접해 있어 즉시 하방 추세 재개보다 $59,210.40 재시험 또는 $59,732.59~$60,090.66 회복 테스트가 먼저 나올 수 있으므로 setup_bias는 구조와 달리 중립으로 둡니다.\",\n  \"key_levels\": {\n    \"support\": [\n      59210.4,\n      58030.0,\n      58288.0\n    ],\n    \"resistance\": [\n      59732.59,\n      60090.66,\n      60458.8,\n      60734.0,\n      61931.1,\n      62161.2,\n      62837.1,\n      63209.6\n    ]\n  },\n  \"time_horizon\": \"short to medium term\",\n  \"invalidation_level\": \"$60,734.00 상방 회복 및 수용\",\n  \"risk_scenario\": \"반대 시나리오는 현재 Phase E 저점 $59,210.40 부근에서 매도 압력이 고갈되고, 가격이 EMA20 $59,732.59와 EMA120 $60,090.66을 회복한 뒤 UTAD 실패 기준점 $60,734.00 위에서 수용되는 경우입니다. 이 경우 활성 재분배의 하방 지속 해석은 약화되고, $61,931.10 LPSY 및 원 분배 하단 $62,161.20 재시험으로 경로가 바뀔 수 있습니다.\",\n  \"data_quality\": \"high\"\n}"
    }
  },
  "chairman_synthesis": {
    "overall_signal": "bearish",
    "overall_confidence": 0.74,
    "execution_setup": {
      "setup_bias": "neutral",
      "setup_strength": 0.52,
      "active_setups": [
        "약세 실행 조건: 현재가 $59,389.90가 EMA20 $59,732.59, EMA120 $60,090.66, EMA240 $60,632.05를 모두 하회",
        "약세 실행 조건: 24시간 가격 -3.05% 하락 중 OI +6.222% 증가 및 CVD -3,748.019로 매도 체결 우위",
        "약세 실행 조건: 피보나치 ret_0.786 $59,894.71, ret_0.618 $60,074.10, EQ $60,200.10이 모두 상방 저항으로 전환",
        "강세 반응 후보: ICT discount 구간에서 bullish OB 후보 $58,288.00-$58,944.00가 아직 무효화되지 않음",
        "강세 반응 후보: strict/high bullish Gartley PRZ $58,714.42-$59,058.77, 예상 D값 $58,886.60",
        "단기 구조 조건: Wyckoff 활성 Phase E 저점 $59,210.40 근처로 즉시 추격보다는 저점 재시험/반등 확인 구간"
      ],
      "setup_vs_structure": "구조적 평가는 약세지만 실행 셋업은 혼재되어 있다. 파생·캔들·피보나치는 하방 수용을 지지하는 반면, ICT discount OB와 하모닉 bullish PRZ가 $58,714-$59,058 부근에서 반응 리스크를 만든다."
    },
    "signal_breakdown": {
      "bullish_count": 1,
      "bearish_count": 4,
      "neutral_count": 1
    },
    "key_levels": {
      "support": [
        59210.4,
        59058.77,
        58944.0,
        58886.6,
        58714.42,
        58288.0,
        58100.0,
        58030.0
      ],
      "resistance": [
        59511.0,
        59732.59,
        59894.71,
        60074.1,
        60090.66,
        60245.0,
        60458.8,
        60734.0,
        60900.0,
        61200.0,
        62161.2
      ]
    },
    "confluences": [
      "EMA20 $59,732.59는 ICT, Derivatives, Candlestick, Wyckoff가 공통으로 단기 회복 기준 또는 저항으로 언급한 핵심 레벨이다.",
      "EMA120 $60,090.66은 ICT, Derivatives, Candlestick, Wyckoff가 모두 중기 구조 회복 기준으로 제시한 강한 저항 합류 구간이다.",
      "$58,030.00은 ICT의 전일 저점, Fibonacci의 주요 지지, Candlestick의 7일 저점, Wyckoff의 prior Phase E 저점, Derivatives의 하방 청산/지지권과 겹치는 핵심 구조 지지다.",
      "ICT bullish OB $58,288.00-$58,944.00와 Harmonic bullish Gartley PRZ $58,714.42-$59,058.77가 중첩되어 $58,714-$58,944 부근은 반응 후보 구간으로 중요하다.",
      "Fibonacci 저항 $59,894.71-$60,074.10은 Harmonic의 bearish PRZ $59,757.24-$60,064.56 및 EMA120 $60,090.66과 겹쳐 $59,900-$60,100 구간의 공급 압력을 강화한다.",
      "Wyckoff 활성 Phase E 저점 $59,210.40과 Candlestick 지지 $59,143.46이 근접해 현재 가격대 바로 아래의 단기 구조 테스트 구간을 형성한다."
    ],
    "conflicts": [
      "ICT는 최근 BOS_bullish $60,245.00 및 $61,256.00 이후 명확한 bearish BOS가 없다는 이유로 구조를 bullish로 보지만, Wyckoff는 확인된 분배/재분배 Phase E 구조로 해석하여 정반대의 regime 판단을 내린다.",
      "ICT와 Harmonic은 $58,714-$59,058 부근의 discount/PRZ 반응 가능성을 제시하지만, Derivatives는 가격 하락 중 OI 증가, CVD 감소, 롱 계정 쏠림을 근거로 하방 취약성을 더 크게 본다.",
      "Fibonacci는 현재가가 최근 상승 스윙 저점 $59,666 아래에 있어 상승 되돌림 구조가 훼손됐다고 보지만, ICT는 더 큰 dealing range의 discount 및 bullish OB 방어 가능성을 중시한다.",
      "Harmonic의 핵심 bullish Gartley는 strict/high 품질이지만 아직 PRZ 터치와 반응 확인이 없어 구조적 약세 판단을 뒤집을 권한은 제한적이다."
    ],
    "executive_summary": "현재 15분 BTC 구조는 다수결과 가중치 기준으로 bearish이며, 핵심 근거는 Wyckoff의 확인된 분배 이후 활성 재분배 Phase E 진행, EMA20/120/240 하방 수용, 그리고 파생시장의 하락 중 OI 증가·CVD 약세다. 다만 가격은 활성 Phase E 저점 $59,210.40 근처와 ICT bullish OB $58,288-$58,944, Harmonic bullish Gartley PRZ $58,714-$59,058에 접근해 있어 구조적 약세 안의 반응 후보 구간에 위치한다. 상방에서는 $59,732.59, $59,894.71-$60,090.66, $60,734.00이 순차적 구조 저항이며, 하방에서는 $58,944, $58,714-$58,288, $58,030이 핵심 방어 구간이다. 전체 약세 구조의 주요 무효화 조건은 활성 UTAD 고점 $60,734.00 상방 회복 및 수용이며, 그 전까지는 반등 신호보다 분배 이후 하방 수용 구조가 우세하다.",
    "raw_llm_response": "{\n  \"overall_signal\": \"bearish\",\n  \"overall_confidence\": 0.74,\n  \"execution_setup\": {\n    \"setup_bias\": \"neutral\",\n    \"setup_strength\": 0.52,\n    \"active_setups\": [\n      \"약세 실행 조건: 현재가 $59,389.90가 EMA20 $59,732.59, EMA120 $60,090.66, EMA240 $60,632.05를 모두 하회\",\n      \"약세 실행 조건: 24시간 가격 -3.05% 하락 중 OI +6.222% 증가 및 CVD -3,748.019로 매도 체결 우위\",\n      \"약세 실행 조건: 피보나치 ret_0.786 $59,894.71, ret_0.618 $60,074.10, EQ $60,200.10이 모두 상방 저항으로 전환\",\n      \"강세 반응 후보: ICT discount 구간에서 bullish OB 후보 $58,288.00-$58,944.00가 아직 무효화되지 않음\",\n      \"강세 반응 후보: strict/high bullish Gartley PRZ $58,714.42-$59,058.77, 예상 D값 $58,886.60\",\n      \"단기 구조 조건: Wyckoff 활성 Phase E 저점 $59,210.40 근처로 즉시 추격보다는 저점 재시험/반등 확인 구간\"\n    ],\n    \"setup_vs_structure\": \"구조적 평가는 약세지만 실행 셋업은 혼재되어 있다. 파생·캔들·피보나치는 하방 수용을 지지하는 반면, ICT discount OB와 하모닉 bullish PRZ가 $58,714-$59,058 부근에서 반응 리스크를 만든다.\"\n  },\n  \"signal_breakdown\": {\n    \"bullish_count\": 1,\n    \"bearish_count\": 4,\n    \"neutral_count\": 1\n  },\n  \"key_levels\": {\n    \"support\": [\n      59210.4,\n      59058.77,\n      58944.0,\n      58886.6,\n      58714.42,\n      58288.0,\n      58100.0,\n      58030.0\n    ],\n    \"resistance\": [\n      59511.0,\n      59732.59,\n      59894.71,\n      60074.1,\n      60090.66,\n      60245.0,\n      60458.8,\n      60734.0,\n      60900.0,\n      61200.0,\n      62161.2\n    ]\n  },\n  \"confluences\": [\n    \"EMA20 $59,732.59는 ICT, Derivatives, Candlestick, Wyckoff가 공통으로 단기 회복 기준 또는 저항으로 언급한 핵심 레벨이다.\",\n    \"EMA120 $60,090.66은 ICT, Derivatives, Candlestick, Wyckoff가 모두 중기 구조 회복 기준으로 제시한 강한 저항 합류 구간이다.\",\n    \"$58,030.00은 ICT의 전일 저점, Fibonacci의 주요 지지, Candlestick의 7일 저점, Wyckoff의 prior Phase E 저점, Derivatives의 하방 청산/지지권과 겹치는 핵심 구조 지지다.\",\n    \"ICT bullish OB $58,288.00-$58,944.00와 Harmonic bullish Gartley PRZ $58,714.42-$59,058.77가 중첩되어 $58,714-$58,944 부근은 반응 후보 구간으로 중요하다.\",\n    \"Fibonacci 저항 $59,894.71-$60,074.10은 Harmonic의 bearish PRZ $59,757.24-$60,064.56 및 EMA120 $60,090.66과 겹쳐 $59,900-$60,100 구간의 공급 압력을 강화한다.\",\n    \"Wyckoff 활성 Phase E 저점 $59,210.40과 Candlestick 지지 $59,143.46이 근접해 현재 가격대 바로 아래의 단기 구조 테스트 구간을 형성한다.\"\n  ],\n  \"conflicts\": [\n    \"ICT는 최근 BOS_bullish $60,245.00 및 $61,256.00 이후 명확한 bearish BOS가 없다는 이유로 구조를 bullish로 보지만, Wyckoff는 확인된 분배/재분배 Phase E 구조로 해석하여 정반대의 regime 판단을 내린다.\",\n    \"ICT와 Harmonic은 $58,714-$59,058 부근의 discount/PRZ 반응 가능성을 제시하지만, Derivatives는 가격 하락 중 OI 증가, CVD 감소, 롱 계정 쏠림을 근거로 하방 취약성을 더 크게 본다.\",\n    \"Fibonacci는 현재가가 최근 상승 스윙 저점 $59,666 아래에 있어 상승 되돌림 구조가 훼손됐다고 보지만, ICT는 더 큰 dealing range의 discount 및 bullish OB 방어 가능성을 중시한다.\",\n    \"Harmonic의 핵심 bullish Gartley는 strict/high 품질이지만 아직 PRZ 터치와 반응 확인이 없어 구조적 약세 판단을 뒤집을 권한은 제한적이다.\"\n  ],\n  \"highest_conviction_analyst\": \"Wyckoff Expert — 신호 신뢰도 82%로 가장 높고, prior distribution 및 활성 redistribution 구조를 구체적인 단계로 제시했다. 특히 BC $62,837.10, AR $62,161.20, UT $63,209.60, LPSY $61,931.10, SOW $61,578.40, Phase E $58,030.00의 완성 구조와, 현재 활성 구조의 UT $60,234.80 → UTAD $60,734.00 → SOW $60,458.80 → Phase E $59,210.40 진행이 가격 레벨과 단계 면에서 가장 명확하다.\",\n  \"invalidation_level\": \"$60,734.00 상방 회복 및 수용. 이는 활성 재분배 구조의 UTAD 고점이며, 그 위에서 $61,200-$61,256 영역까지 회복하면 현재의 15분 약세 구조 해석은 크게 약화된다.\",\n  \"executive_summary\": \"현재 15분 BTC 구조는 다수결과 가중치 기준으로 bearish이며, 핵심 근거는 Wyckoff의 확인된 분배 이후 활성 재분배 Phase E 진행, EMA20/120/240 하방 수용, 그리고 파생시장의 하락 중 OI 증가·CVD 약세다. 다만 가격은 활성 Phase E 저점 $59,210.40 근처와 ICT bullish OB $58,288-$58,944, Harmonic bullish Gartley PRZ $58,714-$59,058에 접근해 있어 구조적 약세 안의 반응 후보 구간에 위치한다. 상방에서는 $59,732.59, $59,894.71-$60,090.66, $60,734.00이 순차적 구조 저항이며, 하방에서는 $58,944, $58,714-$58,288, $58,030이 핵심 방어 구간이다. 전체 약세 구조의 주요 무효화 조건은 활성 UTAD 고점 $60,734.00 상방 회복 및 수용이며, 그 전까지는 반등 신호보다 분배 이후 하방 수용 구조가 우세하다.\"\n}"
  },
  "overall_signal": "bearish",
  "overall_confidence": 0.74,
  "operating_path": {
    "path_type": "complex",
    "confidence": 0.57,
    "waypoints": [
      {
        "seq": 1,
        "price": 59894.71,
        "type": "resistance_test",
        "source": "Wyckoff (회복 테스트 $59,732~$60,090 우선 시나리오 + Phase E 저점 위 약한 반등 진행), Fibonacci (ret_0.786 $59,894.71 / fib_confluence strict $59,992.47), Harmonic (bearish PRZ $59,757-$60,064 하단), Candlestick·Derivatives·ICT (EMA20 $59,732.59 공통 저항)",
        "description": "약세 구조 내 진행 중인 '약한 반등'이 EMA20 $59,732.59를 일시 회복하며 피보나치 ret_0.786 $59,894.71 및 bearish PRZ 하단의 공급 구간을 시험. 현재가가 모든 EMA를 하회하고 하방 수용 상태이므로 이 회복 시험은 실패 가능성이 높은 숏 진입 후보 구간이며, 상단 연장 위험은 strict fib_confluence $59,992.47까지.",
        "est_hours": 2.0,
        "turning_zone": [
          59894.71,
          60000.0
        ],
        "likely_wick": 59995.0,
        "rejection_confirm": 59732.59,
        "invalid_overshoot": 60090.66,
        "calibration_reasoning": "strict fib_confluence $59,992.47(ret_0.786/0.382/0.618 3중 합류)와 $60,000 라운드넘버 자석이 turning_zone 상단을 결정했으며 폭은 약 0.43×ATR. 약한 회복은 EMA20 $59,732.59 재이탈 시 실패가 확정(rejection_confirm)되고, $60,074-$60,090.66 저항 쉘프를 상향 수용하면 숏 진입 turning point로서 무효."
      },
      {
        "seq": 2,
        "price": 58886.6,
        "type": "liquidity_sweep",
        "source": "ICT (bullish OB $58,288.00-$58,944.00), Harmonic (strict/high bullish Gartley PRZ $58,714.42-$59,058.77, D값 $58,886.60), Wyckoff (활성 Phase E 저점 $59,210.40 이탈)",
        "description": "공급 구간 거부 후 약세 재개로 Phase E 저점 $59,210.40을 이탈, ICT bullish OB와 strict bullish Gartley PRZ가 중첩된 핵심 반응 구간(D값 $58,886.60)으로 스윕. 구조적 강세 반응 후보 구간이나, 우세 약세 경로(파생 OI 증가·CVD 약세·롱 쏠림)에서는 1차 매수 청산성 스윕으로 해석한다.",
        "est_hours": 8.0,
        "turning_zone": [
          58714.42,
          58886.6
        ],
        "likely_wick": 58800.0,
        "rejection_confirm": 59058.77,
        "invalid_overshoot": 58288.0,
        "calibration_reasoning": "base가 현재가 하방의 demand로 향하는 하향 스윕이므로(룰의 일반 liquidity_sweep 라벨과 달리) zone을 base 아래로 확장. ICT bullish OB와 chairman 반응 구간 하단 $58,714.42가 경계이며, strict Gartley PRZ($58,886.60)는 PRE_CONFIRMATION이라 조건부 합류로만 사용해 waypoint를 이동시키지 않음. 청산성 스윕 특성상 OB 직하 $58,800 부근 wick이 유력하고, $59,058.77 회복 시 반등 확정, $58,714.42 이탈해 $58,288 도달 시 WP3로 연장되며 무효."
      },
      {
        "seq": 3,
        "price": 58030.0,
        "type": "swing_low",
        "source": "ICT (전일 저점), Fibonacci (주요 지지), Candlestick (7일 저점), Wyckoff (선행 Phase E 저점), Derivatives (하방 청산/지지권) — 6중 합류 핵심 지지",
        "description": "반응 구간 $58,714-$59,058이 방어에 실패할 경우 6중 합류 핵심 지지 $58,030.00으로 약세 연장. account_long_crowding 1.000의 롱 청산을 동반한 하방 가속이 동력이며, 이 레벨이 24시간 우세 약세 목표이자 1차 지지 방어선.",
        "est_hours": 18.0,
        "turning_zone": [
          57850.0,
          58030.0
        ],
        "likely_wick": 57955.0,
        "rejection_confirm": 58288.0,
        "invalid_overshoot": 57800.0,
        "calibration_reasoning": "터미널 waypoint로 6중 합류 핵심 지지 $58,030.00 아래로 약 0.73×ATR 폭의 넓은 zone 설정. account_long_crowding 1.000 롱 청산 가속과 $58,000 라운드넘버 자석이 결합해 wick이 $58,000을 관통한 ~$57,955까지 침투 후 반등할 가능성이 높음. $58,288.00 chairman 재탈환 시 swing low 확정(rejection_confirm)되고, $57,800 수용 시 6중 지지 붕괴로 무효."
      }
    ],
    "period_extremes": {
      "4h": {
        "expected_high": 59894.71,
        "expected_low": 59350.0,
        "high_first": true
      },
      "8h": {
        "expected_high": 59894.71,
        "expected_low": 58886.6,
        "high_first": true
      },
      "24h": {
        "expected_high": 59894.71,
        "expected_low": 58030.0,
        "high_first": true
      }
    },
    "triggers": {
      "bullish": {
        "price": 60090.66,
        "description": "EMA120 $60,090.66 상방 회복 및 수용 시 반등이 구조적으로 전환되어 약세 경로를 위협($60,245.00 BOS 회복 시 숏 스퀴즈성 가속). 완전 무효화는 UTAD $60,734.00."
      },
      "bearish": {
        "price": 58288.0,
        "description": "ICT bullish OB 하단 $58,288.00 이탈 및 수용 시 강세 반응 후보가 소멸되며 $58,030.00, 이어 Derivatives 청산권 $57,600으로 하락 가속."
      }
    },
    "scenario_invalidation": 60734.0,
    "raw_llm_response": "```json\n{\n  \"path_type\": \"complex\",\n  \"confidence\": 0.57,\n  \"waypoints\": [\n    {\n      \"seq\": 1,\n      \"price\": 59894.71,\n      \"type\": \"resistance_test\",\n      \"source\": \"Wyckoff (회복 테스트 $59,732~$60,090 우선 시나리오 + Phase E 저점 위 약한 반등 진행), Fibonacci (ret_0.786 $59,894.71 / fib_confluence strict $59,992.47), Harmonic (bearish PRZ $59,757-$60,064 하단), Candlestick·Derivatives·ICT (EMA20 $59,732.59 공통 저항)\",\n      \"description\": \"약세 구조 내 진행 중인 '약한 반등'이 EMA20 $59,732.59를 일시 회복하며 피보나치 ret_0.786 $59,894.71 및 bearish PRZ 하단의 공급 구간을 시험. 현재가가 모든 EMA를 하회하고 하방 수용 상태이므로 이 회복 시험은 실패 가능성이 높은 숏 진입 후보 구간이며, 상단 연장 위험은 strict fib_confluence $59,992.47까지.\",\n      \"est_hours\": 2.0\n    },\n    {\n      \"seq\": 2,\n      \"price\": 58886.60,\n      \"type\": \"liquidity_sweep\",\n      \"source\": \"ICT (bullish OB $58,288.00-$58,944.00), Harmonic (strict/high bullish Gartley PRZ $58,714.42-$59,058.77, D값 $58,886.60), Wyckoff (활성 Phase E 저점 $59,210.40 이탈)\",\n      \"description\": \"공급 구간 거부 후 약세 재개로 Phase E 저점 $59,210.40을 이탈, ICT bullish OB와 strict bullish Gartley PRZ가 중첩된 핵심 반응 구간(D값 $58,886.60)으로 스윕. 구조적 강세 반응 후보 구간이나, 우세 약세 경로(파생 OI 증가·CVD 약세·롱 쏠림)에서는 1차 매수 청산성 스윕으로 해석한다.\",\n      \"est_hours\": 8.0\n    },\n    {\n      \"seq\": 3,\n      \"price\": 58030.00,\n      \"type\": \"swing_low\",\n      \"source\": \"ICT (전일 저점), Fibonacci (주요 지지), Candlestick (7일 저점), Wyckoff (선행 Phase E 저점), Derivatives (하방 청산/지지권) — 6중 합류 핵심 지지\",\n      \"description\": \"반응 구간 $58,714-$59,058이 방어에 실패할 경우 6중 합류 핵심 지지 $58,030.00으로 약세 연장. account_long_crowding 1.000의 롱 청산을 동반한 하방 가속이 동력이며, 이 레벨이 24시간 우세 약세 목표이자 1차 지지 방어선.\",\n      \"est_hours\": 18.0\n    }\n  ],\n  \"period_extremes\": {\n    \"4h\":  {\"expected_high\": 59894.71, \"expected_low\": 59350.0, \"high_first\": true},\n    \"8h\":  {\"expected_high\": 59894.71, \"expected_low\": 58886.6, \"high_first\": true},\n    \"24h\": {\"expected_high\": 59894.71, \"expected_low\": 58030.0, \"high_first\": true}\n  },\n  \"triggers\": {\n    \"bullish\": {\"price\": 60090.66, \"description\": \"EMA120 $60,090.66 상방 회복 및 수용 시 반등이 구조적으로 전환되어 약세 경로를 위협($60,245.00 BOS 회복 시 숏 스퀴즈성 가속). 완전 무효화는 UTAD $60,734.00.\"},\n    \"bearish\": {\"price\": 58288.00, \"description\": \"ICT bullish OB 하단 $58,288.00 이탈 및 수용 시 강세 반응 후보가 소멸되며 $58,030.00, 이어 Derivatives 청산권 $57,600으로 하락 가속.\"}\n  },\n  \"scenario_invalidation\": 60734.00\n}\n```"
  },
  "tp_calibration": {
    "calibrated_waypoints": [
      {
        "seq": 1,
        "base_target": 59894.71,
        "turning_zone": [
          59894.71,
          60000.0
        ],
        "likely_wick": 59995.0,
        "rejection_confirm": 59732.59,
        "invalid_overshoot": 60090.66,
        "calibration_reasoning": "strict fib_confluence $59,992.47(ret_0.786/0.382/0.618 3중 합류)와 $60,000 라운드넘버 자석이 turning_zone 상단을 결정했으며 폭은 약 0.43×ATR. 약한 회복은 EMA20 $59,732.59 재이탈 시 실패가 확정(rejection_confirm)되고, $60,074-$60,090.66 저항 쉘프를 상향 수용하면 숏 진입 turning point로서 무효."
      },
      {
        "seq": 2,
        "base_target": 58886.6,
        "turning_zone": [
          58714.42,
          58886.6
        ],
        "likely_wick": 58800.0,
        "rejection_confirm": 59058.77,
        "invalid_overshoot": 58288.0,
        "calibration_reasoning": "base가 현재가 하방의 demand로 향하는 하향 스윕이므로(룰의 일반 liquidity_sweep 라벨과 달리) zone을 base 아래로 확장. ICT bullish OB와 chairman 반응 구간 하단 $58,714.42가 경계이며, strict Gartley PRZ($58,886.60)는 PRE_CONFIRMATION이라 조건부 합류로만 사용해 waypoint를 이동시키지 않음. 청산성 스윕 특성상 OB 직하 $58,800 부근 wick이 유력하고, $59,058.77 회복 시 반등 확정, $58,714.42 이탈해 $58,288 도달 시 WP3로 연장되며 무효."
      },
      {
        "seq": 3,
        "base_target": 58030.0,
        "turning_zone": [
          57850.0,
          58030.0
        ],
        "likely_wick": 57955.0,
        "rejection_confirm": 58288.0,
        "invalid_overshoot": 57800.0,
        "calibration_reasoning": "터미널 waypoint로 6중 합류 핵심 지지 $58,030.00 아래로 약 0.73×ATR 폭의 넓은 zone 설정. account_long_crowding 1.000 롱 청산 가속과 $58,000 라운드넘버 자석이 결합해 wick이 $58,000을 관통한 ~$57,955까지 침투 후 반등할 가능성이 높음. $58,288.00 chairman 재탈환 시 swing low 확정(rejection_confirm)되고, $57,800 수용 시 6중 지지 붕괴로 무효."
      }
    ],
    "raw_llm_response": "```json\n{\n  \"calibrated_waypoints\": [\n    {\n      \"seq\": 1,\n      \"base_target\": 59894.71,\n      \"turning_zone\": [59894.71, 60000.00],\n      \"likely_wick\": 59995.00,\n      \"rejection_confirm\": 59732.59,\n      \"invalid_overshoot\": 60090.66,\n      \"calibration_reasoning\": \"strict fib_confluence $59,992.47(ret_0.786/0.382/0.618 3중 합류)와 $60,000 라운드넘버 자석이 turning_zone 상단을 결정했으며 폭은 약 0.43×ATR. 약한 회복은 EMA20 $59,732.59 재이탈 시 실패가 확정(rejection_confirm)되고, $60,074-$60,090.66 저항 쉘프를 상향 수용하면 숏 진입 turning point로서 무효.\"\n    },\n    {\n      \"seq\": 2,\n      \"base_target\": 58886.60,\n      \"turning_zone\": [58714.42, 58886.60],\n      \"likely_wick\": 58800.00,\n      \"rejection_confirm\": 59058.77,\n      \"invalid_overshoot\": 58288.00,\n      \"calibration_reasoning\": \"base가 현재가 하방의 demand로 향하는 하향 스윕이므로(룰의 일반 liquidity_sweep 라벨과 달리) zone을 base 아래로 확장. ICT bullish OB와 chairman 반응 구간 하단 $58,714.42가 경계이며, strict Gartley PRZ($58,886.60)는 PRE_CONFIRMATION이라 조건부 합류로만 사용해 waypoint를 이동시키지 않음. 청산성 스윕 특성상 OB 직하 $58,800 부근 wick이 유력하고, $59,058.77 회복 시 반등 확정, $58,714.42 이탈해 $58,288 도달 시 WP3로 연장되며 무효.\"\n    },\n    {\n      \"seq\": 3,\n      \"base_target\": 58030.00,\n      \"turning_zone\": [57850.00, 58030.00],\n      \"likely_wick\": 57955.00,\n      \"rejection_confirm\": 58288.00,\n      \"invalid_overshoot\": 57800.00,\n      \"calibration_reasoning\": \"터미널 waypoint로 6중 합류 핵심 지지 $58,030.00 아래로 약 0.73×ATR 폭의 넓은 zone 설정. account_long_crowding 1.000 롱 청산 가속과 $58,000 라운드넘버 자석이 결합해 wick이 $58,000을 관통한 ~$57,955까지 침투 후 반등할 가능성이 높음. $58,288.00 chairman 재탈환 시 swing low 확정(rejection_confirm)되고, $57,800 수용 시 6중 지지 붕괴로 무효.\"\n    }\n  ]\n}\n```"
  },
  "timing": {
    "stages": {
      "stage1_agents": 49.9,
      "chairman": 79.6,
      "operating_path": 415.9,
      "tp_calibrator": 221.3
    },
    "agents": {},
    "total_s": 766.8
  }
}