BTC/USDT 15M Council Report

Signal: BEARISH (60%)  |  Price: $60,271.90  |  2026-06-27 13:00 KST  |  300 candles

Council: 1 bullish, 4 neutral, 1 bearish  |  Support: $60,245 / $60,134 / $60,111  |  Resistance: $60,384 / $60,388 / $60,580

result.json   raw.txt   report.md


BTC Chart

Executive Summary

현재 15분 BTC 구조는 다수의 중립 구조 판정에도 불구하고, 가장 구체적인 regime 분석인 Wyckoff가 분배 Phase D를 가리키고 있어 전체 구조 bias는 bearish로 평가한다. 현재 위치는 LPSY $60,387.80 이후 SOW $60,134.50이 발생한 뒤 메인 레인지 하단 $60,666.00 아래에 머무는 구간이며, 아직 Phase E 확정이라기보다는 분배 우위의 late Phase D 후보 상태다. 핵심 상단 구조 구간은 EMA240 $60,384.08, LPSY $60,387.80, 7일 EQ $60,619.80, AR $60,666.00, 전일고가 $60,734.00으로 압축되며, 하단 구조 지지는 $60,110.55-$60,003.64 및 $59,849-$59,717 부근에 집중된다. 구조적 리스크는 ICT의 bullish BOS $60,245 유지와 피보나치 지지 회복이 분배 해석과 충돌한다는 점이며, $60,734 상방 수용 및 최종 $61,256 회복은 bearish 구조 해석의 주요 무효화 조건이다.

Confluences

Conflicts


Agent Matrix

AgentSignalConfidenceSupportResistance
Wyckoff ExpertBEARISH74%$60,134 / $60,004$60,388 / $60,666
ICT TraderBULLISH68%$60,245 / $60,055$60,580 / $60,734
Derivatives TraderBEARISH63%$60,111 / $60,004$60,384 / $62,400
Candlestick ReaderBULLISH52%$60,111 / $60,004$60,384 / $60,620
Fibonacci AnalystBULLISH62%$60,108 / $60,061$60,384 / $60,620
Harmonic SpecialistBEARISH59%$60,060 / $60,035$60,298 / $60,302

Agent Details

Wyckoff Expert — BEARISH (74%)

Support: $60,134 / $60,004 / $58,030 | Resistance: $60,388 / $60,666 / $60,734 | Horizon: short to medium term

15분 구조는 regime=DIS, regime_fitness 0.963으로 분배 후보가 우세하며, 라벨 체인은 BC $61,256.00 → AR $60,666.00 → ST $61,931.10 → SOW_IN_PHASE_B $58,030.00 → UT $60,734.00 → LPSY $60,387.80 → SOW $60,134.50로 Phase D 약세 진행을 가리킨다. 현재가 $60,271.90는 메인 레인지 하단 $60,666.00 및 EQ 약 $60,961.00 아래에 있어 구조적으로는 매수 수용보다 공급 테스트 실패 쪽에 가깝다. 다만 acc_score와 dis_score가 모두 96.2로 동일하고 regime_state가 dis_candidate이므로, 분배 해석은 우세하지만 완전한 Phase E 확정으로 과장해서는 안 된다. 즉 구조_bias는 bearish이나, 즉각 경로는 $60,387.80~$60,666.00 저항 재시험 후 거부되는지 확인이 필요하다.
ICT Trader — BULLISH (68%)

Support: $60,245 / $60,055 / $59,717 | Resistance: $60,580 / $60,734 / $61,256 | Horizon: short term

확정 구조는 최근 시퀀스가 BOS_bullish $61,256 → CHoCH_bearish $60,648 → BOS_bullish $60,245로 마감되었고, 현재가 $60,271.90가 마지막 bullish BOS 기준인 $60,245 위에 있어 구조_bias는 bullish로 판단한다. 다만 현재 가격은 EQ $60,055.35 위의 premium 구간이며, range high $60,580.00 및 전일고가 $60,734.00가 바로 위 저항으로 존재해 즉시 추격 매수의 효율은 낮다. FVG는 미충족 구간이 0개이고 최근 liquidity sweep도 없어 기관식 강한 유동성 사냥 후 반전 신호는 아직 부족하지만, bull_score 5.0이 bear_score 3.7보다 우위이고 setup_score 0.793으로 상방 continuation setup이 우세하다. 핵심은 $60,245를 방어하며 $60,580-$60,734 매수 유동성을 돌파하는지이며, 실패 시 EQ $60,055.35 또는 London low $59,717.10까지 되돌림 가능성이 있다.
Derivatives Trader — BEARISH (63%)

Support: $60,111 / $60,004 / $59,100 | Resistance: $60,384 / $62,400 / $62,700 | Horizon: short term

현재 가격 $60,271.90은 EMA20 $60,110.55와 EMA120 $60,003.64 위에 있지만 EMA240 $60,384.08 아래에서 막혀 있어 확정적인 상승 구조보다는 박스권 중립 구조로 판단된다. 다만 파생 포지셔닝은 bearish setup이 우세한데, 롱 계정 비율이 0.676으로 과밀하고 account_long_crowding이 1.000인 반면 CVD는 -1770.49로 약화되어 가격 유지 대비 매수 체결 강도가 따라오지 못하고 있다. OI가 24시간 -0.869% 감소한 점은 상승 추세를 지지하는 신규 레버리지 유입이 아니라 포지션 축소에 가깝고, 베이시스도 -0.0561%로 선물 수요가 약하다. 따라서 구조는 아직 중립이지만, 4-8시간 선행 성격의 파생 데이터 기준으로는 $59,100 → $58,800 하방 유동성 테스트 가능성이 더 높다.
Candlestick Reader — BULLISH (52%)

Support: $60,111 / $60,004 / $58,030 | Resistance: $60,384 / $60,620 / $63,210 | Horizon: short term

현재 BTC는 $60,271.90으로 EMA20 $60,110.55와 EMA120 $60,003.64 위에 있어 단기 매수세가 방어되고 있지만, EMA240 $60,384.08 아래에 있어 확정적인 상승 구조로 보기는 어렵습니다. 최근 패턴은 bullish_engulfing 2개와 doji 2개가 감지되었고 bull_score 1.5, bear_score 0으로 매수 쪽 신호가 우세하지만, 최고 패턴 품질이 0.567에 그치고 고거래량 패턴이 없어 신뢰도는 중간 이하입니다. 7일 고점 $63,209.60과 저점 $58,030.00의 중간값인 EQ $60,619.80 아래에서 거래되고 있어, 구조적으로는 중립이나 셋업 관점에서는 할인 구간 반등 시도가 유효합니다. 핵심은 $60,384.08 EMA240과 $60,619.80 EQ를 회복해 수용되는지이며, 실패 시 다시 $60,110.55~$60,003.64 지지 테스트가 예상됩니다.
Fibonacci Analyst — BULLISH (62%)

Support: $60,108 / $60,061 / $60,028 | Resistance: $60,384 / $60,620 / $63,210 | Horizon: short term

현재 BTC/USDT는 $60,271.90로, 최근 하락 스윙 $60,167→$59,889의 0.786 되돌림 $60,107.68과 0.618 황금비율 $60,060.87을 모두 회복한 상태입니다. 특히 $60,025.79 부근은 ret_0.236, ret_0.382, ret_0.5, ret_0.618, ret_0.786이 겹치는 강한 피보나치 confluence zone이며 cluster_score가 1.0으로 높습니다. 다만 구조적으로는 EMA240 $60,384.08과 7일 범위 EQ 약 $60,619.80을 아직 명확히 수용하지 못했기 때문에 confirmed structure_bias는 bullish가 아닌 neutral로 평가합니다. 셋업 관점에서는 가격이 할인 구간에서 주요 피보나치 지지대를 재확보했고, fib_reaction_state가 testing이며 reaction_probability가 0.65로 나타나 단기 상방 시도가 우세합니다.
Harmonic Specialist — BEARISH (59%)

Support: $60,060 / $60,035 / $60,017 | Resistance: $60,298 / $60,302 / $60,487 | Horizon: short term

하모닉 기준으로 현재 BTC/USDT $60,271.90는 여러 개의 활성 bearish PRZ 안에 들어와 있으며, 특히 Shark $59,979.84-$60,298.08, Bat $60,116.23-$60,487.38, Gartley $60,179.37-$60,549.45가 겹칩니다. 완성된 strict bearish Gartley는 $60,184.90-$60,506.94 PRZ에서 이미 rejection/defense가 확인되었고 reaction_score 0.95로 post-confirmation vote eligible 상태입니다. 다만 하모닉은 독립적인 구조 엔진이 아니므로, 확인된 BOS/CHoCH 또는 상위 구조 수용 정보가 없는 현재 구조_bias는 neutral로 둡니다. setup 측면에서는 directional_scores가 bearish 1.481 대 bullish 0.513으로 우세하고, 핵심 하락 TP 클러스터가 $60,034-$60,011 및 $59,849-$59,840에 밀집해 있어 단기 하방 반응 우위입니다.

Operating Path — complex (57%)

#PriceTypeSourceEst. HoursDescription
1$60,026support_testFibonacci(strict 컨플루언스 $60,025.79 score 1.0, 0.5 되돌림 $60,028.00), Harmonic(하방 TP 클러스터 $60,034-$60,011), Derivatives/Candlestick(EMA120 $60,003.64)3구조(BEARISH 60%)와 셋업(BEARISH 64%)이 일치하므로 첫 경로는 하방으로 직행한다. 현재가 $60,271.90가 ICT bullish BOS $60,245와 Wyckoff SOW $60,134.50를 차례로 이탈하면, Fibonacci strict 컨플루언스 $60,025.79(score 1.0)·Fib 0.5 $60,028·Harmonic 하방 TP 클러스터 $60,034-$60,011·EMA120 $60,003.64가 겹치는 강한 1차 지지 클러스터를 시험한다. WP 후보표상 가장 가깝고(0.41%) 품질 strict한 레벨이라 우선 선택. 이 구간은 Candlestick·Fibonacci가 반등을 노리는 곳이기도 해 즉시 관통보다 1차 반응(되돌림)이 나올 수 있다.
2$59,717liquidity_sweepICT(London 저점 $59,717.10, 지지 $59,530.70), Fibonacci(strict 컨플루언스 $59,760.32 score 1.0), Harmonic(하방 TP $59,849-$59,840)8$60,025-$60,003 클러스터가 15분 종가 기준 이탈되면 파생 우위(롱 과밀 0.676·CVD -1770.49·베이시스 -0.0561%·OI -0.869%)가 견인하는 하방 연속이 발동한다. Harmonic 하방 TP $59,849-$59,840과 Fibonacci strict 컨플루언스 $59,760.32를 지나 ICT London 저점 $59,717.10 유동성을 스윕한다. 분배 Phase D 해석에서 LPSY→SOW 이후 자연스러운 유동성 사냥 구간이며, ICT $59,530.70·Harmonic $59,556 지지가 바로 아래 위치한다.
3$59,100swing_lowDerivatives(하방 유동성 $59,100→$58,800), ICT(후보 bullish OB $58,944-$58,288)16Derivatives 트레이더가 4-8시간 선행 신호로 지목한 하방 유동성 목표 $59,100(연장 시 $58,800). ICT 후보 bullish OB $58,944-$58,288 상단과 Wyckoff Phase D 마크다운 연장이 만나는 24시간 1차 스윙 저점/반응 후보다. 분배 해석이 유효한 한 이 구간까지 확장 가능하나, OB·OB 상단 지지가 두꺼워 여기서 1차 매수 반응이 나올 가능성이 높다.

Period Extremes

HorizonExpected LowExpected HighSequence
4h$60,026$60,300High first
8h$59,717$60,384High first
24h$59,100$60,384High first

Triggers

Invalidation: $60,734

Raw Operating Path Response
```json
{
  "path_type": "complex",
  "confidence": 0.57,
  "waypoints": [
    {
      "seq": 1,
      "price": 60025.79,
      "type": "support_test",
      "source": "Fibonacci(strict 컨플루언스 $60,025.79 score 1.0, 0.5 되돌림 $60,028.00), Harmonic(하방 TP 클러스터 $60,034-$60,011), Derivatives/Candlestick(EMA120 $60,003.64)",
      "description": "구조(BEARISH 60%)와 셋업(BEARISH 64%)이 일치하므로 첫 경로는 하방으로 직행한다. 현재가 $60,271.90가 ICT bullish BOS $60,245와 Wyckoff SOW $60,134.50를 차례로 이탈하면, Fibonacci strict 컨플루언스 $60,025.79(score 1.0)·Fib 0.5 $60,028·Harmonic 하방 TP 클러스터 $60,034-$60,011·EMA120 $60,003.64가 겹치는 강한 1차 지지 클러스터를 시험한다. WP 후보표상 가장 가깝고(0.41%) 품질 strict한 레벨이라 우선 선택. 이 구간은 Candlestick·Fibonacci가 반등을 노리는 곳이기도 해 즉시 관통보다 1차 반응(되돌림)이 나올 수 있다.",
      "est_hours": 3
    },
    {
      "seq": 2,
      "price": 59717.10,
      "type": "liquidity_sweep",
      "source": "ICT(London 저점 $59,717.10, 지지 $59,530.70), Fibonacci(strict 컨플루언스 $59,760.32 score 1.0), Harmonic(하방 TP $59,849-$59,840)",
      "description": "$60,025-$60,003 클러스터가 15분 종가 기준 이탈되면 파생 우위(롱 과밀 0.676·CVD -1770.49·베이시스 -0.0561%·OI -0.869%)가 견인하는 하방 연속이 발동한다. Harmonic 하방 TP $59,849-$59,840과 Fibonacci strict 컨플루언스 $59,760.32를 지나 ICT London 저점 $59,717.10 유동성을 스윕한다. 분배 Phase D 해석에서 LPSY→SOW 이후 자연스러운 유동성 사냥 구간이며, ICT $59,530.70·Harmonic $59,556 지지가 바로 아래 위치한다.",
      "est_hours": 8
    },
    {
      "seq": 3,
      "price": 59100.0,
      "type": "swing_low",
      "source": "Derivatives(하방 유동성 $59,100→$58,800), ICT(후보 bullish OB $58,944-$58,288)",
      "description": "Derivatives 트레이더가 4-8시간 선행 신호로 지목한 하방 유동성 목표 $59,100(연장 시 $58,800). ICT 후보 bullish OB $58,944-$58,288 상단과 Wyckoff Phase D 마크다운 연장이 만나는 24시간 1차 스윙 저점/반응 후보다. 분배 해석이 유효한 한 이 구간까지 확장 가능하나, OB·OB 상단 지지가 두꺼워 여기서 1차 매수 반응이 나올 가능성이 높다.",
      "est_hours": 16
    }
  ],
  "period_extremes": {
    "4h":  {"expected_high": 60300.0, "expected_low": 60025.79, "high_first": true},
    "8h":  {"expected_high": 60384.08, "expected_low": 59717.10, "high_first": true},
    "24h": {"expected_high": 60384.08, "expected_low": 59100.0, "high_first": true}
  },
  "triggers": {
    "bullish": {
      "price": 60387.80,
      "description": "15분 종가가 EMA240 $60,384.08·Wyckoff LPSY $60,387.80·완성 bearish Gartley PRZ 상단을 회복하고 수용하면 즉시 bearish setup이 무력화된다. 이후 ICT range high $60,580·7일 EQ $60,619.80·AR $60,666.00을 향한 상방 가속으로 전환되며 경로 신뢰도 급락."
    },
    "bearish": {
      "price": 60003.64,
      "description": "15분 종가가 $60,025-$60,003 지지 클러스터(Fib strict 컨플루언스 + EMA120 $60,003.64) 아래로 마감하면 하방 가속이 확정된다. $59,760 strict fib → London 저점 $59,717 유동성 스윕 → $59,100 파생 유동성으로 연속 하락 경로가 활성화."
    }
  },
  "scenario_invalidation": 60734.0
}
```

Raw Chairman Response
{
  "overall_signal": "bearish",
  "overall_confidence": 0.60,
  "execution_setup": {
    "setup_bias": "bearish",
    "setup_strength": 0.64,
    "active_setups": [
      "가격 $60,271.90이 EMA20 $60,110.55 및 EMA120 $60,003.64 위에 있으나 EMA240 $60,384.08 아래에 있어 상단 수용이 아직 확인되지 않음",
      "Wyckoff 기준 LPSY $60,387.80 직후 SOW $60,134.50이 출현했고, 현재가가 메인 레인지 하단 $60,666.00 아래에 위치",
      "Harmonic 기준 가격이 bearish Shark PRZ $59,979.84-$60,298.08 및 bearish Bat PRZ $60,116.23-$60,487.38 내부에 위치",
      "완성된 strict bearish Gartley PRZ $60,184.90-$60,506.94에서 반응 확인, 하방 TP 클러스터 $60,034-$60,011 및 $59,849-$59,840 존재",
      "파생 포지셔닝은 롱 계정 비율 0.676으로 과밀하고 CVD 변화 -1770.49, 베이시스 -0.0561%로 매수 체결 강도와 선물 수요가 약함",
      "반대 근거로 ICT는 마지막 bullish BOS $60,245 위 유지, Fibonacci는 $60,107.68-$60,028.00 피보나치 지지 클러스터 회복을 제시"
    ],
    "setup_vs_structure": "구조적 판정은 Wyckoff 분배 Phase D 쪽에 더 무게가 실리지만, 실행 셋업은 양방향 신호가 팽팽하다. 다만 현재 가격이 다중 bearish PRZ와 LPSY/EMA240 저항대 안에 있어 즉시 실행 관점에서는 bearish setup이 소폭 우세하다."
  },
  "signal_breakdown": {
    "bullish_count": 1,
    "bearish_count": 1,
    "neutral_count": 4
  },
  "key_levels": {
    "support": [
      60245.0,
      60134.5,
      60110.55,
      60055.35,
      60003.64,
      59849.18,
      59717.1,
      59100.0,
      58800.0,
      58030.0
    ],
    "resistance": [
      60384.08,
      60387.8,
      60580.0,
      60619.8,
      60666.0,
      60734.0,
      61256.0,
      61931.1,
      63209.6
    ]
  },
  "confluences": [
    "EMA240 $60,384.08와 Wyckoff LPSY $60,387.80, completed bearish Gartley D/PRZ $60,387.80 및 PRZ $60,184.90-$60,506.94가 거의 동일한 저항 구간을 형성한다.",
    "Candlestick, Derivatives, Fibonacci 모두 EMA20 $60,110.55와 EMA120 $60,003.64 부근을 단기 지지 클러스터로 인식한다.",
    "ICT의 bullish BOS 방어선 $60,245와 현재가 $60,271.90, Harmonic bearish PRZ 상단부 $60,298.08이 근접해 있어 $60,245-$60,298 구간이 단기 구조-실행 충돌 구간이다.",
    "7일 범위 EQ $60,619.80, Wyckoff 메인 레인지 하단/AR $60,666.00, 전일고가 $60,734.00이 상단 수용 여부를 판단하는 핵심 저항대로 중첩된다.",
    "Harmonic의 하방 TP $59,849-$59,840과 bullish Gartley PRZ $59,764.43-$59,926.59, Fibonacci 확장/지지 $59,888.70-$59,760.32가 하단 반응 가능 구간으로 겹친다.",
    "Derivatives의 하방 유동성 $59,100 및 $58,800은 ICT 후보 bullish OB $58,288-$58,944와 Wyckoff SOW_IN_PHASE_B 저점 $58,030.00 인근 구조적 하단과 연결된다."
  ],
  "conflicts": [
    "ICT는 마지막 BOS_bullish $60,245 위 유지로 구조를 bullish로 보지만, Wyckoff는 BC $61,256.00 → UT $60,734.00 → LPSY $60,387.80 → SOW $60,134.50의 분배 Phase D로 해석한다.",
    "Candlestick과 Fibonacci는 할인 구간 및 $60,110-$60,028 지지 회복을 근거로 bullish setup을 제시하지만, Derivatives는 롱 과밀 0.676, CVD 약화, 음의 베이시스를 근거로 bearish setup을 제시한다.",
    "Harmonic은 현재 가격이 다중 bearish PRZ 내부에 있다고 보지만, 해당 신호 중 일부는 forming/pre-confirmation이므로 단독으로 구조를 뒤집을 권한은 낮다.",
    "가격은 EMA20/EMA120 위에 있어 단기 지지는 살아 있으나 EMA240 $60,384.08 및 7일 EQ $60,619.80 아래에 있어 추세 수용은 미확정이다."
  ],
  "highest_conviction_analyst": "Wyckoff Expert — regime fitness 0.963의 분배 후보, Phase D 맥락, LPSY $60,387.80 이후 SOW $60,134.50이라는 명확한 구조 체인을 제시했기 때문에 구조 판정에서 가장 높은 가중치를 부여한다. 단, acc_score와 dis_score가 모두 높아 완전한 Phase E 확정이 아니라 분배 우위의 후보 구조로 해석한다.",
  "invalidation_level": "$60,734 상방 수용 시 bearish 분배 구조가 크게 약화되며, $61,256 회복 시 현재 분배 Phase D 해석은 구조적으로 무효화된다.",
  "executive_summary": "현재 15분 BTC 구조는 다수의 중립 구조 판정에도 불구하고, 가장 구체적인 regime 분석인 Wyckoff가 분배 Phase D를 가리키고 있어 전체 구조 bias는 bearish로 평가한다. 현재 위치는 LPSY $60,387.80 이후 SOW $60,134.50이 발생한 뒤 메인 레인지 하단 $60,666.00 아래에 머무는 구간이며, 아직 Phase E 확정이라기보다는 분배 우위의 late Phase D 후보 상태다. 핵심 상단 구조 구간은 EMA240 $60,384.08, LPSY $60,387.80, 7일 EQ $60,619.80, AR $60,666.00, 전일고가 $60,734.00으로 압축되며, 하단 구조 지지는 $60,110.55-$60,003.64 및 $59,849-$59,717 부근에 집중된다. 구조적 리스크는 ICT의 bullish BOS $60,245 유지와 피보나치 지지 회복이 분배 해석과 충돌한다는 점이며, $60,734 상방 수용 및 최종 $61,256 회복은 bearish 구조 해석의 주요 무효화 조건이다."
}
Full Result JSON
{
  "symbol": "BTC/USDT",
  "timeframe": "15m",
  "timestamp": "2026-06-27 13:00 KST",
  "last_price": 60271.9,
  "num_candles": 300,
  "stage1_analyses": {
    "derivatives": {
      "agent_id": "derivatives",
      "display_name": "Derivatives Trader",
      "signal": "bearish",
      "confidence": 0.63,
      "structure_bias": "neutral",
      "setup_bias": "bearish",
      "setup_score": 0.74,
      "setup_signals": [
        "가격 $60,271.90이 EMA20 $60,110.55와 EMA120 $60,003.64 위에 있으나 EMA240 $60,384.08 아래에 있어 상단 수용이 확인되지 않은 중립 구조",
        "롱 계정 비율 0.676, 숏 계정 비율 0.324로 계정 포지셔닝이 롱 쏠림 상태이며 account_long_crowding 1.000",
        "24시간 롱 계정 변화 -0.0269, 숏 계정 변화 +0.027로 롱은 줄고 숏은 증가하는 포지션 흐름",
        "CVD 변화 -1770.49로 가격이 24시간 +0.43% 버티는 동안 체결 델타는 약화되어 매수 참여 부진",
        "OI 24시간 변화 -0.869%로 신규 추세 포지션 유입보다 기존 포지션 언와인딩 성격이 강함",
        "현물-선물 베이시스 -0.0561%로 선물이 현물 대비 할인되어 파생시장 수요가 약함",
        "하방 청산 밀집 구간 $59,100, $58,800, $57,600이 단기 유동성 타깃으로 열려 있음"
      ],
      "reasoning": "현재 가격 $60,271.90은 EMA20 $60,110.55와 EMA120 $60,003.64 위에 있지만 EMA240 $60,384.08 아래에서 막혀 있어 확정적인 상승 구조보다는 박스권 중립 구조로 판단된다. 다만 파생 포지셔닝은 bearish setup이 우세한데, 롱 계정 비율이 0.676으로 과밀하고 account_long_crowding이 1.000인 반면 CVD는 -1770.49로 약화되어 가격 유지 대비 매수 체결 강도가 따라오지 못하고 있다. OI가 24시간 -0.869% 감소한 점은 상승 추세를 지지하는 신규 레버리지 유입이 아니라 포지션 축소에 가깝고, 베이시스도 -0.0561%로 선물 수요가 약하다. 따라서 구조는 아직 중립이지만, 4-8시간 선행 성격의 파생 데이터 기준으로는 $59,100 → $58,800 하방 유동성 테스트 가능성이 더 높다.",
      "key_levels": {
        "support": [
          60110.55,
          60003.64,
          59100,
          58800,
          58030,
          57600
        ],
        "resistance": [
          60384.08,
          62400,
          62700,
          63209.6
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$60,384.08 상방 회복 후 15분봉 기준 명확한 수용이 확인되면 단기 bearish setup은 약화되며, $62,400 돌파 시 분석은 무효화",
      "risk_scenario": "반대로 가격이 EMA240 $60,384.08을 회복하고 OI가 증가하면서 CVD가 양전환하면, 현재의 롱 과밀은 숏 스퀴즈 재료로 바뀔 수 있으며 $62,400 및 $62,700 상방 청산 구간까지 빠르게 확장될 수 있다.",
      "data_quality": "medium",
      "metrics": {
        "cvd_divergence": 0.3,
        "cvd_change": -1770.49,
        "oi_trend": 0.413,
        "oi_change_pct_24h": -0.869,
        "oi_latest": 104578.998,
        "funding_pressure": 0.438,
        "funding_avg": 6.156e-05,
        "funding_change_24h": -6.49e-06,
        "long_account_ratio": 0.676,
        "short_account_ratio": 0.324,
        "long_account_latest": 0.676,
        "short_account_latest": 0.324,
        "long_account_change_24h": -0.0269,
        "short_account_change_24h": 0.0269,
        "account_flow_label": "short_accounts_rising_long_accounts_falling",
        "account_short_crowding": 0.0,
        "account_long_crowding": 1.0,
        "ls_imbalance": 0.0,
        "ls_imbalance_interpretation": "high=short-account crowding / low=long-account crowding",
        "spot_futures_basis_score": 0.486,
        "spot_futures_basis_pct": -0.0561,
        "basis_change_lookback": -0.0001,
        "aggregate_score": 0.327,
        "bull_signals": 0,
        "bear_signals": 4,
        "liq_below": [
          [
            59100,
            1527.0914970000001
          ],
          [
            58800,
            1353.0577965000002
          ],
          [
            57600,
            1804.077062
          ]
        ],
        "liq_above": [
          [
            62400,
            1655.92615
          ],
          [
            62700,
            1475.197212
          ],
          [
            66000,
            2069.9076875000005
          ]
        ],
        "strongest_liq_level": 54000,
        "fragility_score": 0.569,
        "positioning_extreme": "balanced"
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.63,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.74,\n  \"setup_signals\": [\n    \"가격 $60,271.90이 EMA20 $60,110.55와 EMA120 $60,003.64 위에 있으나 EMA240 $60,384.08 아래에 있어 상단 수용이 확인되지 않은 중립 구조\",\n    \"롱 계정 비율 0.676, 숏 계정 비율 0.324로 계정 포지셔닝이 롱 쏠림 상태이며 account_long_crowding 1.000\",\n    \"24시간 롱 계정 변화 -0.0269, 숏 계정 변화 +0.027로 롱은 줄고 숏은 증가하는 포지션 흐름\",\n    \"CVD 변화 -1770.49로 가격이 24시간 +0.43% 버티는 동안 체결 델타는 약화되어 매수 참여 부진\",\n    \"OI 24시간 변화 -0.869%로 신규 추세 포지션 유입보다 기존 포지션 언와인딩 성격이 강함\",\n    \"현물-선물 베이시스 -0.0561%로 선물이 현물 대비 할인되어 파생시장 수요가 약함\",\n    \"하방 청산 밀집 구간 $59,100, $58,800, $57,600이 단기 유동성 타깃으로 열려 있음\"\n  ],\n  \"reasoning\": \"현재 가격 $60,271.90은 EMA20 $60,110.55와 EMA120 $60,003.64 위에 있지만 EMA240 $60,384.08 아래에서 막혀 있어 확정적인 상승 구조보다는 박스권 중립 구조로 판단된다. 다만 파생 포지셔닝은 bearish setup이 우세한데, 롱 계정 비율이 0.676으로 과밀하고 account_long_crowding이 1.000인 반면 CVD는 -1770.49로 약화되어 가격 유지 대비 매수 체결 강도가 따라오지 못하고 있다. OI가 24시간 -0.869% 감소한 점은 상승 추세를 지지하는 신규 레버리지 유입이 아니라 포지션 축소에 가깝고, 베이시스도 -0.0561%로 선물 수요가 약하다. 따라서 구조는 아직 중립이지만, 4-8시간 선행 성격의 파생 데이터 기준으로는 $59,100 → $58,800 하방 유동성 테스트 가능성이 더 높다.\",\n  \"key_levels\": {\n    \"support\": [\n      60110.55,\n      60003.64,\n      59100,\n      58800,\n      58030,\n      57600\n    ],\n    \"resistance\": [\n      60384.08,\n      62400,\n      62700,\n      63209.6\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$60,384.08 상방 회복 후 15분봉 기준 명확한 수용이 확인되면 단기 bearish setup은 약화되며, $62,400 돌파 시 분석은 무효화\",\n  \"risk_scenario\": \"반대로 가격이 EMA240 $60,384.08을 회복하고 OI가 증가하면서 CVD가 양전환하면, 현재의 롱 과밀은 숏 스퀴즈 재료로 바뀔 수 있으며 $62,400 및 $62,700 상방 청산 구간까지 빠르게 확장될 수 있다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "candlestick": {
      "agent_id": "candlestick",
      "display_name": "Candlestick Reader",
      "signal": "bullish",
      "confidence": 0.52,
      "structure_bias": "neutral",
      "setup_bias": "bullish",
      "setup_score": 0.58,
      "setup_signals": [
        "7일 범위 EQ $60,619.80 아래의 할인 구간에서 현재가 $60,271.90 거래 중",
        "EMA20 $60,110.55 및 EMA120 $60,003.64 위에서 단기 지지 유지",
        "최근 300개 캔들 중 말미 구간에서 bullish_engulfing@292, bullish_engulfing@297 발생",
        "최근 doji@295, doji@298 출현으로 $60,000 부근 매도 압력 둔화 신호",
        "다만 EMA240 $60,384.08이 바로 위 저항으로 남아 있어 구조 전환은 미확정"
      ],
      "reasoning": "현재 BTC는 $60,271.90으로 EMA20 $60,110.55와 EMA120 $60,003.64 위에 있어 단기 매수세가 방어되고 있지만, EMA240 $60,384.08 아래에 있어 확정적인 상승 구조로 보기는 어렵습니다. 최근 패턴은 bullish_engulfing 2개와 doji 2개가 감지되었고 bull_score 1.5, bear_score 0으로 매수 쪽 신호가 우세하지만, 최고 패턴 품질이 0.567에 그치고 고거래량 패턴이 없어 신뢰도는 중간 이하입니다. 7일 고점 $63,209.60과 저점 $58,030.00의 중간값인 EQ $60,619.80 아래에서 거래되고 있어, 구조적으로는 중립이나 셋업 관점에서는 할인 구간 반등 시도가 유효합니다. 핵심은 $60,384.08 EMA240과 $60,619.80 EQ를 회복해 수용되는지이며, 실패 시 다시 $60,110.55~$60,003.64 지지 테스트가 예상됩니다.",
      "key_levels": {
        "support": [
          60110.55,
          60003.64,
          58030.0
        ],
        "resistance": [
          60384.08,
          60619.8,
          63209.6
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$60,003.64",
      "risk_scenario": "가격이 EMA120 $60,003.64 아래로 이탈하면 최근 bullish engulfing 셋업은 실패로 간주되며, $60,000 심리적 지지 붕괴 후 7일 저점 $58,030.00 방향으로 하락 압력이 확대될 수 있습니다. 반대로 $60,384.08과 $60,619.80을 강하게 돌파하면 중립 구조가 단기 bullish 구조로 전환될 가능성이 커집니다.",
      "data_quality": "medium",
      "metrics": {
        "total_patterns_detected": 137,
        "recent_patterns": 4,
        "pattern_list": [
          "bullish_engulfing@292",
          "bullish_engulfing@297",
          "doji@295",
          "doji@298"
        ],
        "atr_value": 160.13,
        "vol_avg_20": 815.85,
        "high_volume_patterns": [],
        "pattern_candidates": [
          {
            "pattern": "bullish_engulfing",
            "signal": "bullish",
            "pattern_quality": 0.567,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "bullish_engulfing",
            "signal": "bullish",
            "pattern_quality": 0.443,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "doji",
            "signal": "neutral",
            "pattern_quality": 0.355,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "doji",
            "signal": "neutral",
            "pattern_quality": 0.355,
            "tier": "candidate",
            "high_volume": false
          }
        ],
        "best_pattern_quality": 0.567,
        "bull_score": 1.5,
        "bear_score": 0
      },
      "raw_llm_response": "{\n  \"signal\": \"bullish\",\n  \"confidence\": 0.52,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.58,\n  \"setup_signals\": [\n    \"7일 범위 EQ $60,619.80 아래의 할인 구간에서 현재가 $60,271.90 거래 중\",\n    \"EMA20 $60,110.55 및 EMA120 $60,003.64 위에서 단기 지지 유지\",\n    \"최근 300개 캔들 중 말미 구간에서 bullish_engulfing@292, bullish_engulfing@297 발생\",\n    \"최근 doji@295, doji@298 출현으로 $60,000 부근 매도 압력 둔화 신호\",\n    \"다만 EMA240 $60,384.08이 바로 위 저항으로 남아 있어 구조 전환은 미확정\"\n  ],\n  \"reasoning\": \"현재 BTC는 $60,271.90으로 EMA20 $60,110.55와 EMA120 $60,003.64 위에 있어 단기 매수세가 방어되고 있지만, EMA240 $60,384.08 아래에 있어 확정적인 상승 구조로 보기는 어렵습니다. 최근 패턴은 bullish_engulfing 2개와 doji 2개가 감지되었고 bull_score 1.5, bear_score 0으로 매수 쪽 신호가 우세하지만, 최고 패턴 품질이 0.567에 그치고 고거래량 패턴이 없어 신뢰도는 중간 이하입니다. 7일 고점 $63,209.60과 저점 $58,030.00의 중간값인 EQ $60,619.80 아래에서 거래되고 있어, 구조적으로는 중립이나 셋업 관점에서는 할인 구간 반등 시도가 유효합니다. 핵심은 $60,384.08 EMA240과 $60,619.80 EQ를 회복해 수용되는지이며, 실패 시 다시 $60,110.55~$60,003.64 지지 테스트가 예상됩니다.\",\n  \"key_levels\": {\n    \"support\": [\n      60110.55,\n      60003.64,\n      58030.0\n    ],\n    \"resistance\": [\n      60384.08,\n      60619.8,\n      63209.6\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$60,003.64\",\n  \"risk_scenario\": \"가격이 EMA120 $60,003.64 아래로 이탈하면 최근 bullish engulfing 셋업은 실패로 간주되며, $60,000 심리적 지지 붕괴 후 7일 저점 $58,030.00 방향으로 하락 압력이 확대될 수 있습니다. 반대로 $60,384.08과 $60,619.80을 강하게 돌파하면 중립 구조가 단기 bullish 구조로 전환될 가능성이 커집니다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "ict": {
      "agent_id": "ict",
      "display_name": "ICT Trader",
      "signal": "bullish",
      "confidence": 0.68,
      "structure_bias": "bullish",
      "setup_bias": "bullish",
      "setup_score": 0.793,
      "setup_signals": [
        "최근 구조 이벤트가 BOS_bullish $60,245 이후 현재가 $60,271.90에서 해당 레벨 위를 유지",
        "현재가 $60,271.90가 EQ $60,055.35 위에 있어 단기 매수 우위는 유지되나 프리미엄 구간",
        "EMA20 $60,110.55 및 EMA120 $60,003.64 위에서 거래되어 단기/중기 평균선 지지 확인",
        "하단 후보 bullish OB $58,288.00-$58,944.00가 할인 영역의 잠재 수요 구간으로 존재"
      ],
      "reasoning": "확정 구조는 최근 시퀀스가 BOS_bullish $61,256 → CHoCH_bearish $60,648 → BOS_bullish $60,245로 마감되었고, 현재가 $60,271.90가 마지막 bullish BOS 기준인 $60,245 위에 있어 구조_bias는 bullish로 판단한다. 다만 현재 가격은 EQ $60,055.35 위의 premium 구간이며, range high $60,580.00 및 전일고가 $60,734.00가 바로 위 저항으로 존재해 즉시 추격 매수의 효율은 낮다. FVG는 미충족 구간이 0개이고 최근 liquidity sweep도 없어 기관식 강한 유동성 사냥 후 반전 신호는 아직 부족하지만, bull_score 5.0이 bear_score 3.7보다 우위이고 setup_score 0.793으로 상방 continuation setup이 우세하다. 핵심은 $60,245를 방어하며 $60,580-$60,734 매수 유동성을 돌파하는지이며, 실패 시 EQ $60,055.35 또는 London low $59,717.10까지 되돌림 가능성이 있다.",
      "key_levels": {
        "support": [
          60245.0,
          60055.35,
          59717.1,
          59530.7,
          58944.0,
          58288.0
        ],
        "resistance": [
          60580.0,
          60734.0,
          61256.0,
          63209.6
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "59530.70",
      "risk_scenario": "$60,245 bullish BOS 레벨을 잃고 EQ $60,055.35 아래로 수용되면 현재 bullish setup은 약화된다. 특히 range low $59,530.70까지 하방 이탈하면 단기 구조는 bearish CHoCH로 전환될 가능성이 높고, 이후 $58,944-$58,288 후보 bullish OB까지 sell-side liquidity 탐색이 열릴 수 있다.",
      "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": 0,
        "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": [],
        "active_bearish_ob_list": [],
        "ob_mitigated_count": 1,
        "unfilled_bull_fvg_count": 0,
        "unfilled_bear_fvg_count": 0,
        "bull_fvg_ranges": [],
        "bear_fvg_ranges": [],
        "fvg_open_count": 0,
        "fvg_mitigated_count": 64,
        "fvg_open_zones": [],
        "bos_choch_events": [
          "BOS_bullish",
          "CHoCH_bearish",
          "BOS_bullish"
        ],
        "bos_choch_levels": [
          {
            "type": "BOS_bullish",
            "level": 61256.0
          },
          {
            "type": "CHoCH_bearish",
            "level": 60648.0
          },
          {
            "type": "BOS_bullish",
            "level": 60245.0
          }
        ],
        "bos_sequence": [
          "BOS_bullish",
          "CHoCH_bearish",
          "BOS_bullish"
        ],
        "consecutive_bull_bos": 1,
        "consecutive_bear_bos": 0,
        "recent_liq_sweeps": [],
        "recent_sweep_levels": [],
        "liquidity_resting": [],
        "current_zone": "premium",
        "eq_level": 60055.35,
        "range_high": 60580.0,
        "range_low": 59530.7,
        "bull_score": 5.0,
        "bear_score": 3.7,
        "setup_bias": "bullish",
        "setup_score": 0.793,
        "setup_signals": [
          "bullish BOS above $61,256.00",
          "bullish BOS above $60,245.00"
        ],
        "retracement_direction": "bearish",
        "current_retracement_pct": 79.6,
        "deepest_retracement_pct": 81.7,
        "previous_day_high": 60734.0,
        "previous_day_low": 58288.0,
        "broken_prev_high": false,
        "broken_prev_low": false,
        "sessions": {
          "London": {
            "active": true,
            "high": 60387.8,
            "low": 59717.1
          },
          "New York": {
            "active": false,
            "high": null,
            "low": null
          },
          "Asian kill zone": {
            "active": false,
            "high": null,
            "low": null
          }
        }
      },
      "raw_llm_response": "{\n  \"signal\": \"bullish\",\n  \"confidence\": 0.68,\n  \"structure_bias\": \"bullish\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.793,\n  \"setup_signals\": [\n    \"최근 구조 이벤트가 BOS_bullish $60,245 이후 현재가 $60,271.90에서 해당 레벨 위를 유지\",\n    \"현재가 $60,271.90가 EQ $60,055.35 위에 있어 단기 매수 우위는 유지되나 프리미엄 구간\",\n    \"EMA20 $60,110.55 및 EMA120 $60,003.64 위에서 거래되어 단기/중기 평균선 지지 확인\",\n    \"하단 후보 bullish OB $58,288.00-$58,944.00가 할인 영역의 잠재 수요 구간으로 존재\"\n  ],\n  \"reasoning\": \"확정 구조는 최근 시퀀스가 BOS_bullish $61,256 → CHoCH_bearish $60,648 → BOS_bullish $60,245로 마감되었고, 현재가 $60,271.90가 마지막 bullish BOS 기준인 $60,245 위에 있어 구조_bias는 bullish로 판단한다. 다만 현재 가격은 EQ $60,055.35 위의 premium 구간이며, range high $60,580.00 및 전일고가 $60,734.00가 바로 위 저항으로 존재해 즉시 추격 매수의 효율은 낮다. FVG는 미충족 구간이 0개이고 최근 liquidity sweep도 없어 기관식 강한 유동성 사냥 후 반전 신호는 아직 부족하지만, bull_score 5.0이 bear_score 3.7보다 우위이고 setup_score 0.793으로 상방 continuation setup이 우세하다. 핵심은 $60,245를 방어하며 $60,580-$60,734 매수 유동성을 돌파하는지이며, 실패 시 EQ $60,055.35 또는 London low $59,717.10까지 되돌림 가능성이 있다.\",\n  \"key_levels\": {\n    \"support\": [\n      60245.0,\n      60055.35,\n      59717.1,\n      59530.7,\n      58944.0,\n      58288.0\n    ],\n    \"resistance\": [\n      60580.0,\n      60734.0,\n      61256.0,\n      63209.6\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"59530.70\",\n  \"risk_scenario\": \"$60,245 bullish BOS 레벨을 잃고 EQ $60,055.35 아래로 수용되면 현재 bullish setup은 약화된다. 특히 range low $59,530.70까지 하방 이탈하면 단기 구조는 bearish CHoCH로 전환될 가능성이 높고, 이후 $58,944-$58,288 후보 bullish OB까지 sell-side liquidity 탐색이 열릴 수 있다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "wyckoff": {
      "agent_id": "wyckoff",
      "display_name": "Wyckoff Expert",
      "signal": "bearish",
      "confidence": 0.74,
      "structure_bias": "bearish",
      "setup_bias": "bearish",
      "setup_score": 0.62,
      "setup_signals": [
        "분배 구조 Phase D로 분류되며 현재 이벤트가 SOW: $60,134.50",
        "LPSY 후보/확정 고점 $60,387.80 직후 약세 반응 발생",
        "현재가 $60,271.90가 메인 레인지 하단/AR $60,666.00 아래에 위치하여 레인지 재진입 실패 상태",
        "EQ 약 $60,961.00 아래의 디스카운트 영역에 머물며, 반등 시 $60,666.00~$60,734.00 회복 여부가 핵심",
        "UT $60,734.00 및 BC $61,256.00 아래에서 공급 우위가 유지되는 구조"
      ],
      "reasoning": "15분 구조는 regime=DIS, regime_fitness 0.963으로 분배 후보가 우세하며, 라벨 체인은 BC $61,256.00 → AR $60,666.00 → ST $61,931.10 → SOW_IN_PHASE_B $58,030.00 → UT $60,734.00 → LPSY $60,387.80 → SOW $60,134.50로 Phase D 약세 진행을 가리킨다. 현재가 $60,271.90는 메인 레인지 하단 $60,666.00 및 EQ 약 $60,961.00 아래에 있어 구조적으로는 매수 수용보다 공급 테스트 실패 쪽에 가깝다. 다만 acc_score와 dis_score가 모두 96.2로 동일하고 regime_state가 dis_candidate이므로, 분배 해석은 우세하지만 완전한 Phase E 확정으로 과장해서는 안 된다. 즉 구조_bias는 bearish이나, 즉각 경로는 $60,387.80~$60,666.00 저항 재시험 후 거부되는지 확인이 필요하다.",
      "key_levels": {
        "support": [
          60134.5,
          60003.64,
          58030.0
        ],
        "resistance": [
          60387.8,
          60666.0,
          60734.0,
          61256.0,
          61931.1
        ]
      },
      "time_horizon": "short to medium term",
      "invalidation_level": "$61,931.10 상향 회복 및 15분 종가 기준 수용",
      "risk_scenario": "반대 시나리오는 가격이 $60,666.00 메인 레인지 하단을 회복하고 $60,734.00 UT 레벨 위에 안착하는 경우다. 이 경우 현재 SOW는 실패한 하방 이탈 또는 테스트로 재해석될 수 있으며, $61,256.00 BC와 $61,931.10 ST 재시험까지 반등 경로가 열릴 수 있다.",
      "data_quality": "medium",
      "metrics": {
        "acc_score": 96.2,
        "dis_score": 96.2,
        "regime": "DIS",
        "regime_state": "dis_candidate",
        "structure_bias": "bearish",
        "phase_context": "dis_candidate / distribution / Phase D",
        "phases_detected": [
          "BC",
          "AR",
          "ST",
          "SOW_IN_PHASE_B",
          "UT",
          "LPSY",
          "SOW"
        ],
        "last_phase": "SOW",
        "phase_candidates": [
          {
            "label": "BC",
            "side": "high",
            "idx": 84,
            "price": 61256.0,
            "color": "#ffd166"
          },
          {
            "label": "AR",
            "side": "low",
            "idx": 95,
            "price": 60666.0,
            "color": "#06d6a0"
          },
          {
            "label": "ST",
            "side": "high",
            "idx": 122,
            "price": 61931.1,
            "color": "#118ab2"
          },
          {
            "label": "SOW_IN_PHASE_B",
            "side": "low",
            "idx": 147,
            "price": 58030.0,
            "color": "#ef476f"
          },
          {
            "label": "UT",
            "side": "high",
            "idx": 218,
            "price": 60734.0,
            "color": "#f9844a"
          },
          {
            "label": "LPSY",
            "side": "high",
            "idx": 296,
            "price": 60387.8,
            "color": "#8338ec"
          },
          {
            "label": "SOW",
            "side": "low",
            "idx": 297,
            "price": 60134.5,
            "color": "#ef476f"
          }
        ],
        "phase_structures": [
          {
            "structure_id": "15m_cycle_1",
            "sequence": 1,
            "timeframe": "15m",
            "regime": "distribution",
            "role": "current_structure_candidate",
            "is_active": true,
            "is_completed": false,
            "is_confirmed": true,
            "structure_bias": "bearish",
            "phase_context": "distribution",
            "start_idx": 84,
            "end_idx": 297,
            "phase_count": 7,
            "phases": [
              {
                "label": "BC",
                "side": "high",
                "idx": 84,
                "price": 61256.0,
                "color": "#ffd166",
                "dt": "2026-06-25 07:00:00+09:00"
              },
              {
                "label": "AR",
                "side": "low",
                "idx": 95,
                "price": 60666.0,
                "color": "#06d6a0",
                "dt": "2026-06-25 09:45:00+09:00"
              },
              {
                "label": "ST",
                "side": "high",
                "idx": 122,
                "price": 61931.1,
                "color": "#118ab2",
                "dt": "2026-06-25 16:30:00+09:00"
              },
              {
                "label": "SOW_IN_PHASE_B",
                "side": "low",
                "idx": 147,
                "price": 58030.0,
                "color": "#ef476f",
                "dt": "2026-06-25 22:45:00+09:00"
              },
              {
                "label": "UT",
                "side": "high",
                "idx": 218,
                "price": 60734.0,
                "color": "#f9844a",
                "dt": "2026-06-26 16:30:00+09:00"
              },
              {
                "label": "LPSY",
                "side": "high",
                "idx": 296,
                "price": 60387.8,
                "color": "#8338ec",
                "dt": "2026-06-27 12:00:00+09:00"
              },
              {
                "label": "SOW",
                "side": "low",
                "idx": 297,
                "price": 60134.5,
                "color": "#ef476f",
                "dt": "2026-06-27 12:15:00+09:00"
              }
            ]
          }
        ],
        "active_structure_id": "15m_cycle_1",
        "primary_structure_id": "15m_cycle_1",
        "structure_count": 1,
        "regime_fitness": 0.9625,
        "current_event": "SOW",
        "major_phase": "D",
        "pos_in_range": 0.5,
        "main_range_low": 60666.0,
        "main_range_high": 61256.0
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.74,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.62,\n  \"setup_signals\": [\n    \"분배 구조 Phase D로 분류되며 현재 이벤트가 SOW: $60,134.50\",\n    \"LPSY 후보/확정 고점 $60,387.80 직후 약세 반응 발생\",\n    \"현재가 $60,271.90가 메인 레인지 하단/AR $60,666.00 아래에 위치하여 레인지 재진입 실패 상태\",\n    \"EQ 약 $60,961.00 아래의 디스카운트 영역에 머물며, 반등 시 $60,666.00~$60,734.00 회복 여부가 핵심\",\n    \"UT $60,734.00 및 BC $61,256.00 아래에서 공급 우위가 유지되는 구조\"\n  ],\n  \"reasoning\": \"15분 구조는 regime=DIS, regime_fitness 0.963으로 분배 후보가 우세하며, 라벨 체인은 BC $61,256.00 → AR $60,666.00 → ST $61,931.10 → SOW_IN_PHASE_B $58,030.00 → UT $60,734.00 → LPSY $60,387.80 → SOW $60,134.50로 Phase D 약세 진행을 가리킨다. 현재가 $60,271.90는 메인 레인지 하단 $60,666.00 및 EQ 약 $60,961.00 아래에 있어 구조적으로는 매수 수용보다 공급 테스트 실패 쪽에 가깝다. 다만 acc_score와 dis_score가 모두 96.2로 동일하고 regime_state가 dis_candidate이므로, 분배 해석은 우세하지만 완전한 Phase E 확정으로 과장해서는 안 된다. 즉 구조_bias는 bearish이나, 즉각 경로는 $60,387.80~$60,666.00 저항 재시험 후 거부되는지 확인이 필요하다.\",\n  \"key_levels\": {\n    \"support\": [\n      60134.5,\n      60003.64,\n      58030.0\n    ],\n    \"resistance\": [\n      60387.8,\n      60666.0,\n      60734.0,\n      61256.0,\n      61931.1\n    ]\n  },\n  \"time_horizon\": \"short to medium term\",\n  \"invalidation_level\": \"$61,931.10 상향 회복 및 15분 종가 기준 수용\",\n  \"risk_scenario\": \"반대 시나리오는 가격이 $60,666.00 메인 레인지 하단을 회복하고 $60,734.00 UT 레벨 위에 안착하는 경우다. 이 경우 현재 SOW는 실패한 하방 이탈 또는 테스트로 재해석될 수 있으며, $61,256.00 BC와 $61,931.10 ST 재시험까지 반등 경로가 열릴 수 있다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "fibonacci": {
      "agent_id": "fibonacci",
      "display_name": "Fibonacci Analyst",
      "signal": "bullish",
      "confidence": 0.62,
      "structure_bias": "neutral",
      "setup_bias": "bullish",
      "setup_score": 0.68,
      "setup_signals": [
        "현재가 $60,271.90가 하락 스윙 고점 $60,167 위에 위치하여 단기 하락 피보나치 구간을 상방 이탈한 상태",
        "가격이 7일 범위 EQ 약 $60,619.80 아래의 할인 구간에 있어 반등 셋업에 유리",
        "0.786 되돌림 $60,107.68, 0.618 황금비율 $60,060.87, 0.5 되돌림 $60,028.00이 모두 현재가 아래에서 지지 클러스터 형성",
        "핵심 confluence zone $60,025.79에 6개 피보나치 레벨이 밀집하며 cluster_score 1.0",
        "EMA20 $60,110.55 및 EMA120 $60,003.64 위에서 거래되어 단기 지지 반응이 유지되는 상태"
      ],
      "reasoning": "현재 BTC/USDT는 $60,271.90로, 최근 하락 스윙 $60,167→$59,889의 0.786 되돌림 $60,107.68과 0.618 황금비율 $60,060.87을 모두 회복한 상태입니다. 특히 $60,025.79 부근은 ret_0.236, ret_0.382, ret_0.5, ret_0.618, ret_0.786이 겹치는 강한 피보나치 confluence zone이며 cluster_score가 1.0으로 높습니다. 다만 구조적으로는 EMA240 $60,384.08과 7일 범위 EQ 약 $60,619.80을 아직 명확히 수용하지 못했기 때문에 confirmed structure_bias는 bullish가 아닌 neutral로 평가합니다. 셋업 관점에서는 가격이 할인 구간에서 주요 피보나치 지지대를 재확보했고, fib_reaction_state가 testing이며 reaction_probability가 0.65로 나타나 단기 상방 시도가 우세합니다.",
      "key_levels": {
        "support": [
          60107.68,
          60060.87,
          60028.0,
          60025.79,
          59995.13,
          59888.7,
          59760.32
        ],
        "resistance": [
          60384.08,
          60619.8,
          63209.6
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$59,888.70",
      "risk_scenario": "반대로 가격이 $60,107.68과 $60,060.87을 다시 하회하고 특히 $60,025.79 confluence zone 아래로 수용되면, 현재의 반등 셋업은 약화됩니다. 이후 $59,888.70 스윙 저점이 깨질 경우 $59,760.32 확장 클러스터와 $59,610.10 ext_2.0까지 하락 확장이 열릴 수 있습니다.",
      "data_quality": "high",
      "metrics": {
        "swing_pair": "High→Low: $60,167 → $59,889",
        "direction": "down",
        "nearest_fib": "ret_0.786",
        "nearest_fib_price": 60107.68,
        "nearest_fib_distance": 0.27,
        "golden_ratio_level": 60060.87,
        "fib_ret_382": 59995.13,
        "fib_ret_618": 60060.87,
        "confluence_zones": [
          {
            "price": 60025.79,
            "count": 6,
            "levels": [
              "ret_0.236",
              "ret_0.382",
              "ret_0.382",
              "ret_0.5",
              "ret_0.618",
              "ret_0.786"
            ],
            "cluster_score": 1.0
          },
          {
            "price": 59760.32,
            "count": 5,
            "levels": [
              "ext_2.0",
              "ext_1.618",
              "ext_1.414",
              "ext_1.272",
              "ext_1.0"
            ],
            "cluster_score": 1.0
          },
          {
            "price": 59345.16,
            "count": 2,
            "levels": [
              "ret_0.236",
              "ext_2.618"
            ],
            "cluster_score": 0.6
          }
        ],
        "support_levels": [
          60107.6796,
          60060.8748,
          60028.0
        ],
        "resistance_levels": [],
        "level_candidates": [
          {
            "name": "ret_0.236",
            "price": 59954.45,
            "distance_pct": 0.53,
            "is_support": true,
            "cluster_score": 1.0
          },
          {
            "name": "ret_0.382",
            "price": 59995.13,
            "distance_pct": 0.46,
            "is_support": true,
            "cluster_score": 1.0
          },
          {
            "name": "ret_0.5",
            "price": 60028.0,
            "distance_pct": 0.4,
            "is_support": true,
            "cluster_score": 1.0
          },
          {
            "name": "ret_0.618",
            "price": 60060.87,
            "distance_pct": 0.35,
            "is_support": true,
            "cluster_score": 1.0
          },
          {
            "name": "ret_0.786",
            "price": 60107.68,
            "distance_pct": 0.27,
            "is_support": true,
            "cluster_score": 1.0
          },
          {
            "name": "ext_1.0",
            "price": 59888.7,
            "distance_pct": 0.64,
            "is_support": true,
            "cluster_score": 1.0
          },
          {
            "name": "ext_1.272",
            "price": 59812.92,
            "distance_pct": 0.76,
            "is_support": true,
            "cluster_score": 1.0
          },
          {
            "name": "ext_1.414",
            "price": 59773.36,
            "distance_pct": 0.83,
            "is_support": true,
            "cluster_score": 1.0
          },
          {
            "name": "ext_1.618",
            "price": 59716.53,
            "distance_pct": 0.92,
            "is_support": true,
            "cluster_score": 1.0
          },
          {
            "name": "ext_2.0",
            "price": 59610.1,
            "distance_pct": 1.1,
            "is_support": true,
            "cluster_score": 1.0
          }
        ],
        "confluence_quality": 1.0,
        "fib_reaction_state": "testing",
        "reaction_probability": 0.65
      },
      "raw_llm_response": "{\n  \"signal\": \"bullish\",\n  \"confidence\": 0.62,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.68,\n  \"setup_signals\": [\n    \"현재가 $60,271.90가 하락 스윙 고점 $60,167 위에 위치하여 단기 하락 피보나치 구간을 상방 이탈한 상태\",\n    \"가격이 7일 범위 EQ 약 $60,619.80 아래의 할인 구간에 있어 반등 셋업에 유리\",\n    \"0.786 되돌림 $60,107.68, 0.618 황금비율 $60,060.87, 0.5 되돌림 $60,028.00이 모두 현재가 아래에서 지지 클러스터 형성\",\n    \"핵심 confluence zone $60,025.79에 6개 피보나치 레벨이 밀집하며 cluster_score 1.0\",\n    \"EMA20 $60,110.55 및 EMA120 $60,003.64 위에서 거래되어 단기 지지 반응이 유지되는 상태\"\n  ],\n  \"reasoning\": \"현재 BTC/USDT는 $60,271.90로, 최근 하락 스윙 $60,167→$59,889의 0.786 되돌림 $60,107.68과 0.618 황금비율 $60,060.87을 모두 회복한 상태입니다. 특히 $60,025.79 부근은 ret_0.236, ret_0.382, ret_0.5, ret_0.618, ret_0.786이 겹치는 강한 피보나치 confluence zone이며 cluster_score가 1.0으로 높습니다. 다만 구조적으로는 EMA240 $60,384.08과 7일 범위 EQ 약 $60,619.80을 아직 명확히 수용하지 못했기 때문에 confirmed structure_bias는 bullish가 아닌 neutral로 평가합니다. 셋업 관점에서는 가격이 할인 구간에서 주요 피보나치 지지대를 재확보했고, fib_reaction_state가 testing이며 reaction_probability가 0.65로 나타나 단기 상방 시도가 우세합니다.\",\n  \"key_levels\": {\n    \"support\": [\n      60107.68,\n      60060.87,\n      60028.0,\n      60025.79,\n      59995.13,\n      59888.7,\n      59760.32\n    ],\n    \"resistance\": [\n      60384.08,\n      60619.8,\n      63209.6\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$59,888.70\",\n  \"risk_scenario\": \"반대로 가격이 $60,107.68과 $60,060.87을 다시 하회하고 특히 $60,025.79 confluence zone 아래로 수용되면, 현재의 반등 셋업은 약화됩니다. 이후 $59,888.70 스윙 저점이 깨질 경우 $59,760.32 확장 클러스터와 $59,610.10 ext_2.0까지 하락 확장이 열릴 수 있습니다.\",\n  \"data_quality\": \"high\"\n}"
    },
    "harmonic": {
      "agent_id": "harmonic",
      "display_name": "Harmonic Specialist",
      "signal": "bearish",
      "confidence": 0.59,
      "structure_bias": "neutral",
      "setup_bias": "bearish",
      "setup_score": 0.72,
      "setup_signals": [
        "현재가 $60,271.90가 활성 bearish Shark PRZ $59,979.84-$60,298.08 내부에 위치, D 예상가 $60,138.96, 점수 0.965",
        "현재가가 활성 bearish Bat PRZ $60,116.23-$60,487.38 내부에 위치, D 예상가 $60,301.81까지 거리 +0.05%",
        "완성된 strict bearish Gartley PRZ $60,184.90-$60,506.94에서 반응 확인, reaction_score 0.95, AD 0.236 반응 도달",
        "추가 bearish Gartley 형성 PRZ $60,179.37-$60,549.45 및 bearish Bat PRZ $60,341.53-$60,711.05가 상단 공급/반전 후보로 중첩",
        "EMA240 $60,384.08이 현재가 위에 있으며, bearish Bat/Gartley PRZ 중심부와 겹쳐 단기 저항 confluence 형성"
      ],
      "reasoning": "하모닉 기준으로 현재 BTC/USDT $60,271.90는 여러 개의 활성 bearish PRZ 안에 들어와 있으며, 특히 Shark $59,979.84-$60,298.08, Bat $60,116.23-$60,487.38, Gartley $60,179.37-$60,549.45가 겹칩니다. 완성된 strict bearish Gartley는 $60,184.90-$60,506.94 PRZ에서 이미 rejection/defense가 확인되었고 reaction_score 0.95로 post-confirmation vote eligible 상태입니다. 다만 하모닉은 독립적인 구조 엔진이 아니므로, 확인된 BOS/CHoCH 또는 상위 구조 수용 정보가 없는 현재 구조_bias는 neutral로 둡니다. setup 측면에서는 directional_scores가 bearish 1.481 대 bullish 0.513으로 우세하고, 핵심 하락 TP 클러스터가 $60,034-$60,011 및 $59,849-$59,840에 밀집해 있어 단기 하방 반응 우위입니다.",
      "key_levels": {
        "support": [
          60060.32,
          60034.51,
          60016.91,
          60011.74,
          59849.18,
          59842.11,
          59840.9,
          59556.0,
          59530.7
        ],
        "resistance": [
          60298.08,
          60301.81,
          60487.38,
          60506.94,
          60549.45,
          60711.05
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$60,711.05",
      "risk_scenario": "가격이 $60,506.94 위에서 방어되고 특히 $60,711.05 상단 PRZ까지 돌파·수용되면 bearish PRZ 실패로 간주되며, 하모닉 하락 반응 시나리오는 약화됩니다. 그 경우 $60,384.08 EMA240 재탈환과 함께 상단 유동성 추적이 열릴 수 있으며, 반대로 $59,764.43-$59,926.59의 bullish Gartley PRZ는 눌림 매수 반응 구간으로 재평가됩니다.",
      "data_quality": "medium",
      "metrics": {
        "patterns_found": 89,
        "completed_patterns_found": 36,
        "forming_d_prz_found": 53,
        "swing_orders_scanned": [
          3,
          5,
          8
        ],
        "swing_search_window": 34,
        "multiscale_swings_scanned": 54,
        "swing_highs_scanned": 27,
        "swing_lows_scanned": 27,
        "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": 11,
          "medium": 36,
          "low": 42
        },
        "prz_status_counts": {
          "active": 21,
          "nearby": 13,
          "watch": 14,
          "far": 41,
          "forming": 29
        },
        "high_confluence_prz_count": 31,
        "strict_patterns_found": 50,
        "candidate_patterns_found": 39,
        "active_patterns_at_prz": 21,
        "nearby_patterns": 13,
        "all_patterns": [
          "shark",
          "bat",
          "gartley",
          "shark",
          "bat",
          "bat",
          "crab",
          "gartley",
          "butterfly",
          "gartley",
          "gartley",
          "crab",
          "bat",
          "gartley",
          "gartley",
          "gartley",
          "butterfly",
          "gartley",
          "bat",
          "bat",
          "bat",
          "crab",
          "bat",
          "shark",
          "butterfly",
          "gartley",
          "bat",
          "gartley",
          "butterfly",
          "shark",
          "gartley",
          "crab",
          "crab",
          "bat",
          "crab",
          "bat",
          "crab",
          "crab",
          "bat",
          "crab",
          "bat",
          "crab",
          "crab",
          "shark",
          "bat",
          "shark",
          "gartley",
          "butterfly",
          "crab",
          "butterfly",
          "shark",
          "bat",
          "crab",
          "butterfly",
          "crab",
          "crab",
          "crab",
          "butterfly",
          "gartley",
          "shark",
          "butterfly",
          "crab",
          "gartley",
          "butterfly",
          "crab",
          "butterfly",
          "crab",
          "crab",
          "shark",
          "bat",
          "butterfly",
          "gartley",
          "crab",
          "shark",
          "gartley",
          "bat",
          "crab",
          "gartley",
          "gartley",
          "shark",
          "shark",
          "crab",
          "crab",
          "shark",
          "shark",
          "crab",
          "butterfly",
          "butterfly",
          "shark"
        ],
        "all_signals": [
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish"
        ],
        "best_pattern": "shark",
        "best_pattern_quality": "strict",
        "best_quality": "high",
        "best_pattern_score": 0.965,
        "best_completion_status": "forming",
        "nearest_pattern": "bat",
        "nearest_prz": 60301.81,
        "price_to_prz": 0.05,
        "prz_range": [
          60116.23,
          60487.38
        ],
        "council_relevant_prz_count": 8,
        "directional_influence_prz_count": 8,
        "confirmed_reaction_prz_count": 2,
        "validated_harmonic_tp_count": 2,
        "pattern_candidates": [
          {
            "pattern": "shark",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.965,
            "ratio_score": 1.0,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 60138.96,
            "prz_range": [
              59979.84,
              60298.08
            ],
            "prz_width_pct": 0.529,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.22,
            "price_to_prz_pct_raw": -0.2206,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "shark",
              "d_price": 60138.96,
              "a_price": 59933.1,
              "tp1_ad_382": 60060.32,
              "tp2_ad_618": 60011.74,
              "tp3_a_or_structure_liquidity": 59933.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5227,
              "ABC": 1.551
            },
            "x_price": 60234.8,
            "x_idx": 205,
            "x_order": 8,
            "a_price": 59933.1,
            "a_idx": 253,
            "a_order": 3,
            "b_price": 60090.8,
            "b_idx": 280,
            "b_order": 3,
            "c_price": 59846.2,
            "c_idx": 286,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.962,
            "ratio_score": 1.0,
            "prz_score": 0.994,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 60301.81,
            "prz_range": [
              60116.23,
              60487.38
            ],
            "prz_width_pct": 0.615,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.05,
            "price_to_prz_pct_raw": 0.0496,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "bat",
              "d_price": 60301.81,
              "a_price": 59556.0,
              "tp1_ad_382": 60016.91,
              "tp2_ad_618": 59840.9,
              "tp3_a_or_structure_liquidity": 59556.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4609,
              "ABC": 0.3852
            },
            "x_price": 60580.0,
            "x_idx": 252,
            "x_order": 8,
            "a_price": 59556.0,
            "a_idx": 270,
            "a_order": 5,
            "b_price": 60028.0,
            "b_idx": 274,
            "b_order": 3,
            "c_price": 59846.2,
            "c_idx": 286,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.943,
            "ratio_score": 0.933,
            "prz_score": 0.995,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 60364.41,
            "prz_range": [
              60179.37,
              60549.45
            ],
            "prz_width_pct": 0.613,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.15,
            "price_to_prz_pct_raw": 0.1535,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 60364.41,
              "a_price": 59530.7,
              "tp1_ad_382": 60045.93,
              "tp2_ad_618": 59849.18,
              "tp3_a_or_structure_liquidity": 59530.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6067,
              "ABC": 0.4376
            },
            "x_price": 60580.0,
            "x_idx": 252,
            "x_order": 8,
            "a_price": 59530.7,
            "a_idx": 263,
            "a_order": 8,
            "b_price": 60167.3,
            "b_idx": 284,
            "b_order": 8,
            "c_price": 59888.7,
            "c_idx": 292,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.907,
            "ratio_score": 0.861,
            "prz_score": 0.996,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 60526.29,
            "prz_range": [
              60341.53,
              60711.05
            ],
            "prz_width_pct": 0.611,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.42,
            "price_to_prz_pct_raw": 0.4221,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "bat",
              "d_price": 60526.29,
              "a_price": 59556.0,
              "tp1_ad_382": 60155.64,
              "tp2_ad_618": 59926.65,
              "tp3_a_or_structure_liquidity": 59556.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5189,
              "ABC": 0.5253
            },
            "x_price": 60734.0,
            "x_idx": 218,
            "x_order": 8,
            "a_price": 59556.0,
            "a_idx": 270,
            "a_order": 5,
            "b_price": 60167.3,
            "b_idx": 284,
            "b_order": 8,
            "c_price": 59846.2,
            "c_idx": 286,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.889,
            "ratio_score": 0.891,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 59845.51,
            "prz_range": [
              59764.43,
              59926.59
            ],
            "prz_width_pct": 0.271,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.71,
            "price_to_prz_pct_raw": -0.7074,
            "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": 59845.51,
              "a_price": 60274.2,
              "tp1_ad_382": 60009.27,
              "tp2_ad_618": 60110.44,
              "tp3_a_or_structure_liquidity": 60274.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5997,
              "ABC": 0.6866
            },
            "x_price": 59705.4,
            "x_idx": 183,
            "x_order": 3,
            "a_price": 60274.2,
            "a_idx": 244,
            "a_order": 3,
            "b_price": 59933.1,
            "b_idx": 253,
            "b_order": 3,
            "c_price": 60167.3,
            "c_idx": 284,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.868,
            "ratio_score": 0.788,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "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.6,
            "price_to_prz_pct_raw": -0.599,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 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": 156,
            "x_order": 5,
            "a_price": 59152.7,
            "a_idx": 169,
            "a_order": 8,
            "b_price": 59723.5,
            "b_idx": 172,
            "b_order": 5,
            "c_price": 59210.4,
            "c_idx": 231,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.866,
            "ratio_score": 0.811,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 60387.8,
            "prz_range": [
              60184.9,
              60506.94
            ],
            "prz_width_pct": 0.534,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.12,
            "price_to_prz_pct_raw": 0.1228,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.236_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 0.95,
              "reaction_detail": {
                "reaction_score": 0.95,
                "reaction_move_ratio_ad": 0.296,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 3,
                "reasons": [
                  "AD0.236_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 60345.92,
              "a_price": 59530.7,
              "tp1_ad_382": 60034.51,
              "tp2_ad_618": 59842.11,
              "tp3_a_or_structure_liquidity": 59530.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6067,
              "ABC": 0.5044,
              "BCD": 1.6867,
              "XAD": 0.8168
            },
            "x_price": 60580.0,
            "x_idx": 252,
            "x_order": 8,
            "a_price": 59530.7,
            "a_idx": 263,
            "a_order": 8,
            "b_price": 60167.3,
            "b_idx": 284,
            "b_order": 8,
            "c_price": 59846.2,
            "c_idx": 286,
            "c_order": 5,
            "d_idx": 296
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.858,
            "ratio_score": 0.813,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "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": -0.43,
            "price_to_prz_pct_raw": -0.4344,
            "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.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": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 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": 150,
            "x_order": 3,
            "a_price": 58835.2,
            "a_idx": 153,
            "a_order": 3,
            "b_price": 59775.0,
            "b_idx": 164,
            "b_order": 5,
            "c_price": 59152.7,
            "c_idx": 169,
            "c_order": 8,
            "d_idx": 186
          }
        ],
        "council_relevant_prz": [
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.866,
            "ratio_score": 0.811,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 60387.8,
            "prz_range": [
              60184.9,
              60506.94
            ],
            "prz_width_pct": 0.534,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.12,
            "price_to_prz_pct_raw": 0.1228,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.236_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 0.95,
              "reaction_detail": {
                "reaction_score": 0.95,
                "reaction_move_ratio_ad": 0.296,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 3,
                "reasons": [
                  "AD0.236_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 60345.92,
              "a_price": 59530.7,
              "tp1_ad_382": 60034.51,
              "tp2_ad_618": 59842.11,
              "tp3_a_or_structure_liquidity": 59530.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6067,
              "ABC": 0.5044,
              "BCD": 1.6867,
              "XAD": 0.8168
            },
            "x_price": 60580.0,
            "x_idx": 252,
            "x_order": 8,
            "a_price": 59530.7,
            "a_idx": 263,
            "a_order": 8,
            "b_price": 60167.3,
            "b_idx": 284,
            "b_order": 8,
            "c_price": 59846.2,
            "c_idx": 286,
            "c_order": 5,
            "d_idx": 296
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.854,
            "ratio_score": 0.87,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 59846.2,
            "prz_range": [
              59764.43,
              59926.59
            ],
            "prz_width_pct": 0.271,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.71,
            "price_to_prz_pct_raw": -0.7074,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 1.265,
                "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": 59845.51,
              "a_price": 60274.2,
              "tp1_ad_382": 60009.27,
              "tp2_ad_618": 60110.44,
              "tp3_a_or_structure_liquidity": 60274.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5997,
              "ABC": 0.6866,
              "BCD": 1.3711,
              "XAD": 0.7525
            },
            "x_price": 59705.4,
            "x_idx": 183,
            "x_order": 3,
            "a_price": 60274.2,
            "a_idx": 244,
            "a_order": 3,
            "b_price": 59933.1,
            "b_idx": 253,
            "b_order": 3,
            "c_price": 60167.3,
            "c_idx": 284,
            "c_order": 8,
            "d_idx": 286
          },
          {
            "pattern": "shark",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.965,
            "ratio_score": 1.0,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 60138.96,
            "prz_range": [
              59979.84,
              60298.08
            ],
            "prz_width_pct": 0.529,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.22,
            "price_to_prz_pct_raw": -0.2206,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "shark",
              "d_price": 60138.96,
              "a_price": 59933.1,
              "tp1_ad_382": 60060.32,
              "tp2_ad_618": 60011.74,
              "tp3_a_or_structure_liquidity": 59933.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5227,
              "ABC": 1.551
            },
            "x_price": 60234.8,
            "x_idx": 205,
            "x_order": 8,
            "a_price": 59933.1,
            "a_idx": 253,
            "a_order": 3,
            "b_price": 60090.8,
            "b_idx": 280,
            "b_order": 3,
            "c_price": 59846.2,
            "c_idx": 286,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.962,
            "ratio_score": 1.0,
            "prz_score": 0.994,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 60301.81,
            "prz_range": [
              60116.23,
              60487.38
            ],
            "prz_width_pct": 0.615,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.05,
            "price_to_prz_pct_raw": 0.0496,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "bat",
              "d_price": 60301.81,
              "a_price": 59556.0,
              "tp1_ad_382": 60016.91,
              "tp2_ad_618": 59840.9,
              "tp3_a_or_structure_liquidity": 59556.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4609,
              "ABC": 0.3852
            },
            "x_price": 60580.0,
            "x_idx": 252,
            "x_order": 8,
            "a_price": 59556.0,
            "a_idx": 270,
            "a_order": 5,
            "b_price": 60028.0,
            "b_idx": 274,
            "b_order": 3,
            "c_price": 59846.2,
            "c_idx": 286,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.943,
            "ratio_score": 0.933,
            "prz_score": 0.995,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 60364.41,
            "prz_range": [
              60179.37,
              60549.45
            ],
            "prz_width_pct": 0.613,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.15,
            "price_to_prz_pct_raw": 0.1535,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 60364.41,
              "a_price": 59530.7,
              "tp1_ad_382": 60045.93,
              "tp2_ad_618": 59849.18,
              "tp3_a_or_structure_liquidity": 59530.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6067,
              "ABC": 0.4376
            },
            "x_price": 60580.0,
            "x_idx": 252,
            "x_order": 8,
            "a_price": 59530.7,
            "a_idx": 263,
            "a_order": 8,
            "b_price": 60167.3,
            "b_idx": 284,
            "b_order": 8,
            "c_price": 59888.7,
            "c_idx": 292,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.907,
            "ratio_score": 0.861,
            "prz_score": 0.996,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 60526.29,
            "prz_range": [
              60341.53,
              60711.05
            ],
            "prz_width_pct": 0.611,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.42,
            "price_to_prz_pct_raw": 0.4221,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "bat",
              "d_price": 60526.29,
              "a_price": 59556.0,
              "tp1_ad_382": 60155.64,
              "tp2_ad_618": 59926.65,
              "tp3_a_or_structure_liquidity": 59556.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5189,
              "ABC": 0.5253
            },
            "x_price": 60734.0,
            "x_idx": 218,
            "x_order": 8,
            "a_price": 59556.0,
            "a_idx": 270,
            "a_order": 5,
            "b_price": 60167.3,
            "b_idx": 284,
            "b_order": 8,
            "c_price": 59846.2,
            "c_idx": 286,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.889,
            "ratio_score": 0.891,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 59845.51,
            "prz_range": [
              59764.43,
              59926.59
            ],
            "prz_width_pct": 0.271,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.71,
            "price_to_prz_pct_raw": -0.7074,
            "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": 59845.51,
              "a_price": 60274.2,
              "tp1_ad_382": 60009.27,
              "tp2_ad_618": 60110.44,
              "tp3_a_or_structure_liquidity": 60274.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5997,
              "ABC": 0.6866
            },
            "x_price": 59705.4,
            "x_idx": 183,
            "x_order": 3,
            "a_price": 60274.2,
            "a_idx": 244,
            "a_order": 3,
            "b_price": 59933.1,
            "b_idx": 253,
            "b_order": 3,
            "c_price": 60167.3,
            "c_idx": 284,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.868,
            "ratio_score": 0.788,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "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.6,
            "price_to_prz_pct_raw": -0.599,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 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": 156,
            "x_order": 5,
            "a_price": 59152.7,
            "a_idx": 169,
            "a_order": 8,
            "b_price": 59723.5,
            "b_idx": 172,
            "b_order": 5,
            "c_price": 59210.4,
            "c_idx": 231,
            "c_order": 5,
            "d_idx": null
          }
        ],
        "report_detail_candidates": [
          {
            "pattern": "shark",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.965,
            "ratio_score": 1.0,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 60138.96,
            "prz_range": [
              59979.84,
              60298.08
            ],
            "prz_width_pct": 0.529,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.22,
            "price_to_prz_pct_raw": -0.2206,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "shark",
              "d_price": 60138.96,
              "a_price": 59933.1,
              "tp1_ad_382": 60060.32,
              "tp2_ad_618": 60011.74,
              "tp3_a_or_structure_liquidity": 59933.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5227,
              "ABC": 1.551
            },
            "x_price": 60234.8,
            "x_idx": 205,
            "x_order": 8,
            "a_price": 59933.1,
            "a_idx": 253,
            "a_order": 3,
            "b_price": 60090.8,
            "b_idx": 280,
            "b_order": 3,
            "c_price": 59846.2,
            "c_idx": 286,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.962,
            "ratio_score": 1.0,
            "prz_score": 0.994,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 60301.81,
            "prz_range": [
              60116.23,
              60487.38
            ],
            "prz_width_pct": 0.615,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.05,
            "price_to_prz_pct_raw": 0.0496,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "bat",
              "d_price": 60301.81,
              "a_price": 59556.0,
              "tp1_ad_382": 60016.91,
              "tp2_ad_618": 59840.9,
              "tp3_a_or_structure_liquidity": 59556.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4609,
              "ABC": 0.3852
            },
            "x_price": 60580.0,
            "x_idx": 252,
            "x_order": 8,
            "a_price": 59556.0,
            "a_idx": 270,
            "a_order": 5,
            "b_price": 60028.0,
            "b_idx": 274,
            "b_order": 3,
            "c_price": 59846.2,
            "c_idx": 286,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.943,
            "ratio_score": 0.933,
            "prz_score": 0.995,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 60364.41,
            "prz_range": [
              60179.37,
              60549.45
            ],
            "prz_width_pct": 0.613,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.15,
            "price_to_prz_pct_raw": 0.1535,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 60364.41,
              "a_price": 59530.7,
              "tp1_ad_382": 60045.93,
              "tp2_ad_618": 59849.18,
              "tp3_a_or_structure_liquidity": 59530.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6067,
              "ABC": 0.4376
            },
            "x_price": 60580.0,
            "x_idx": 252,
            "x_order": 8,
            "a_price": 59530.7,
            "a_idx": 263,
            "a_order": 8,
            "b_price": 60167.3,
            "b_idx": 284,
            "b_order": 8,
            "c_price": 59888.7,
            "c_idx": 292,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.907,
            "ratio_score": 0.861,
            "prz_score": 0.996,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 60526.29,
            "prz_range": [
              60341.53,
              60711.05
            ],
            "prz_width_pct": 0.611,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.42,
            "price_to_prz_pct_raw": 0.4221,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "bat",
              "d_price": 60526.29,
              "a_price": 59556.0,
              "tp1_ad_382": 60155.64,
              "tp2_ad_618": 59926.65,
              "tp3_a_or_structure_liquidity": 59556.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5189,
              "ABC": 0.5253
            },
            "x_price": 60734.0,
            "x_idx": 218,
            "x_order": 8,
            "a_price": 59556.0,
            "a_idx": 270,
            "a_order": 5,
            "b_price": 60167.3,
            "b_idx": 284,
            "b_order": 8,
            "c_price": 59846.2,
            "c_idx": 286,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.889,
            "ratio_score": 0.891,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 59845.51,
            "prz_range": [
              59764.43,
              59926.59
            ],
            "prz_width_pct": 0.271,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.71,
            "price_to_prz_pct_raw": -0.7074,
            "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": 59845.51,
              "a_price": 60274.2,
              "tp1_ad_382": 60009.27,
              "tp2_ad_618": 60110.44,
              "tp3_a_or_structure_liquidity": 60274.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5997,
              "ABC": 0.6866
            },
            "x_price": 59705.4,
            "x_idx": 183,
            "x_order": 3,
            "a_price": 60274.2,
            "a_idx": 244,
            "a_order": 3,
            "b_price": 59933.1,
            "b_idx": 253,
            "b_order": 3,
            "c_price": 60167.3,
            "c_idx": 284,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.868,
            "ratio_score": 0.788,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "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.6,
            "price_to_prz_pct_raw": -0.599,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 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": 156,
            "x_order": 5,
            "a_price": 59152.7,
            "a_idx": 169,
            "a_order": 8,
            "b_price": 59723.5,
            "b_idx": 172,
            "b_order": 5,
            "c_price": 59210.4,
            "c_idx": 231,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.866,
            "ratio_score": 0.811,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 60387.8,
            "prz_range": [
              60184.9,
              60506.94
            ],
            "prz_width_pct": 0.534,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.12,
            "price_to_prz_pct_raw": 0.1228,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.236_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 0.95,
              "reaction_detail": {
                "reaction_score": 0.95,
                "reaction_move_ratio_ad": 0.296,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 3,
                "reasons": [
                  "AD0.236_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 60345.92,
              "a_price": 59530.7,
              "tp1_ad_382": 60034.51,
              "tp2_ad_618": 59842.11,
              "tp3_a_or_structure_liquidity": 59530.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6067,
              "ABC": 0.5044,
              "BCD": 1.6867,
              "XAD": 0.8168
            },
            "x_price": 60580.0,
            "x_idx": 252,
            "x_order": 8,
            "a_price": 59530.7,
            "a_idx": 263,
            "a_order": 8,
            "b_price": 60167.3,
            "b_idx": 284,
            "b_order": 8,
            "c_price": 59846.2,
            "c_idx": 286,
            "c_order": 5,
            "d_idx": 296
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.858,
            "ratio_score": 0.813,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "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": -0.43,
            "price_to_prz_pct_raw": -0.4344,
            "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.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": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "gartley",
              "d_price": 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": 150,
            "x_order": 3,
            "a_price": 58835.2,
            "a_idx": 153,
            "a_order": 3,
            "b_price": 59775.0,
            "b_idx": 164,
            "b_order": 5,
            "c_price": 59152.7,
            "c_idx": 169,
            "c_order": 8,
            "d_idx": 186
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.854,
            "ratio_score": 0.87,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 59846.2,
            "prz_range": [
              59764.43,
              59926.59
            ],
            "prz_width_pct": 0.271,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.71,
            "price_to_prz_pct_raw": -0.7074,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 1.265,
                "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": 59845.51,
              "a_price": 60274.2,
              "tp1_ad_382": 60009.27,
              "tp2_ad_618": 60110.44,
              "tp3_a_or_structure_liquidity": 60274.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5997,
              "ABC": 0.6866,
              "BCD": 1.3711,
              "XAD": 0.7525
            },
            "x_price": 59705.4,
            "x_idx": 183,
            "x_order": 3,
            "a_price": 60274.2,
            "a_idx": 244,
            "a_order": 3,
            "b_price": 59933.1,
            "b_idx": 253,
            "b_order": 3,
            "c_price": 60167.3,
            "c_idx": 284,
            "c_order": 8,
            "d_idx": 286
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.849,
            "ratio_score": 0.767,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 60387.8,
            "prz_range": [
              60217.82,
              60510.71
            ],
            "prz_width_pct": 0.485,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.15,
            "price_to_prz_pct_raw": 0.1532,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.236_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 0.95,
              "reaction_detail": {
                "reaction_score": 0.95,
                "reaction_move_ratio_ad": 0.305,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 3,
                "reasons": [
                  "AD0.236_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "bat",
              "d_price": 60364.26,
              "a_price": 59556.0,
              "tp1_ad_382": 60055.51,
              "tp2_ad_618": 59864.76,
              "tp3_a_or_structure_liquidity": 59556.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5223,
              "ABC": 0.4574,
              "BCD": 2.2142,
              "XAD": 0.8123
            },
            "x_price": 60580.0,
            "x_idx": 252,
            "x_order": 8,
            "a_price": 59556.0,
            "a_idx": 270,
            "a_order": 5,
            "b_price": 60090.8,
            "b_idx": 280,
            "b_order": 3,
            "c_price": 59846.2,
            "c_idx": 286,
            "c_order": 5,
            "d_idx": 296
          },
          {
            "pattern": "shark",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.917,
            "ratio_score": 1.0,
            "prz_score": 0.91,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 59861.34,
            "prz_range": [
              59612.63,
              60110.04
            ],
            "prz_width_pct": 0.831,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.68,
            "price_to_prz_pct_raw": -0.6812,
            "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": 59861.34,
              "a_price": 60234.8,
              "tp1_ad_382": 60004.0,
              "tp2_ad_618": 60092.14,
              "tp3_a_or_structure_liquidity": 60234.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5699,
              "ABC": 1.5071
            },
            "x_price": 59705.4,
            "x_idx": 183,
            "x_order": 3,
            "a_price": 60234.8,
            "a_idx": 205,
            "a_order": 8,
            "b_price": 59933.1,
            "b_idx": 253,
            "b_order": 3,
            "c_price": 60387.8,
            "c_idx": 296,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "crab",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "medium",
            "pattern_score": 0.894,
            "ratio_score": 1.0,
            "prz_score": 0.934,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 59583.67,
            "prz_range": [
              59354.4,
              59812.93
            ],
            "prz_width_pct": 0.77,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.14,
            "price_to_prz_pct_raw": -1.1419,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "crab",
              "d_price": 59583.67,
              "a_price": 60234.8,
              "tp1_ad_382": 59832.4,
              "tp2_ad_618": 59986.07,
              "tp3_a_or_structure_liquidity": 60234.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5699,
              "ABC": 0.5227
            },
            "x_price": 59705.4,
            "x_idx": 183,
            "x_order": 3,
            "a_price": 60234.8,
            "a_idx": 205,
            "a_order": 8,
            "b_price": 59933.1,
            "b_idx": 253,
            "b_order": 3,
            "c_price": 60090.8,
            "c_idx": 280,
            "c_order": 3,
            "d_idx": null
          }
        ],
        "actionable_patterns_list": [
          {
            "pattern": "shark",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.965,
            "prz_proximity": "active",
            "prz_range": [
              59979.84,
              60298.08
            ],
            "prz_reversal_direction": "down",
            "price_to_prz_pct": -0.22,
            "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": "bearish",
              "source": "shark",
              "d_price": 60138.96,
              "a_price": 59933.1,
              "tp1_ad_382": 60060.32,
              "tp2_ad_618": 60011.74,
              "tp3_a_or_structure_liquidity": 59933.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "SHARK FORMING HIGH PRZ $59,979.84-$60,298.08: expected reversal DOWN if price reacts in zone"
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.962,
            "prz_proximity": "active",
            "prz_range": [
              60116.23,
              60487.38
            ],
            "prz_reversal_direction": "down",
            "price_to_prz_pct": 0.05,
            "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": "bearish",
              "source": "bat",
              "d_price": 60301.81,
              "a_price": 59556.0,
              "tp1_ad_382": 60016.91,
              "tp2_ad_618": 59840.9,
              "tp3_a_or_structure_liquidity": 59556.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "BAT FORMING HIGH PRZ $60,116.23-$60,487.38: expected reversal DOWN if price reacts in zone"
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.943,
            "prz_proximity": "active",
            "prz_range": [
              60179.37,
              60549.45
            ],
            "prz_reversal_direction": "down",
            "price_to_prz_pct": 0.15,
            "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": "bearish",
              "source": "gartley",
              "d_price": 60364.41,
              "a_price": 59530.7,
              "tp1_ad_382": 60045.93,
              "tp2_ad_618": 59849.18,
              "tp3_a_or_structure_liquidity": 59530.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "GARTLEY FORMING HIGH PRZ $60,179.37-$60,549.45: expected reversal DOWN if price reacts in zone"
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.907,
            "prz_proximity": "active",
            "prz_range": [
              60341.53,
              60711.05
            ],
            "prz_reversal_direction": "down",
            "price_to_prz_pct": 0.42,
            "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": "bearish",
              "source": "bat",
              "d_price": 60526.29,
              "a_price": 59556.0,
              "tp1_ad_382": 60155.64,
              "tp2_ad_618": 59926.65,
              "tp3_a_or_structure_liquidity": 59556.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "BAT FORMING HIGH PRZ $60,341.53-$60,711.05: expected reversal DOWN if price reacts in zone"
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.889,
            "prz_proximity": "nearby",
            "prz_range": [
              59764.43,
              59926.59
            ],
            "prz_reversal_direction": "up",
            "price_to_prz_pct": -0.71,
            "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": 59845.51,
              "a_price": 60274.2,
              "tp1_ad_382": 60009.27,
              "tp2_ad_618": 60110.44,
              "tp3_a_or_structure_liquidity": 60274.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "GARTLEY FORMING HIGH PRZ $59,764.43-$59,926.59: expected reversal UP if price reacts in zone"
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.868,
            "prz_proximity": "nearby",
            "prz_range": [
              59757.24,
              60064.56
            ],
            "prz_reversal_direction": "down",
            "price_to_prz_pct": -0.6,
            "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": "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."
            },
            "interpretation": "GARTLEY FORMING HIGH PRZ $59,757.24-$60,064.56: expected reversal DOWN if price reacts in zone"
          }
        ],
        "best_council_prz": {
          "pattern": "shark",
          "signal": "bearish",
          "completion_status": "forming",
          "pattern_quality": "strict",
          "quality": "high",
          "pattern_score": 0.965,
          "ratio_score": 1.0,
          "prz_score": 1.0,
          "prz_proximity": "active",
          "action_status": "active",
          "high_confluence_prz": true,
          "d_price": 60138.96,
          "prz_range": [
            59979.84,
            60298.08
          ],
          "prz_width_pct": 0.529,
          "prz_confluence_count": 3,
          "prz_fib_families": [
            "ABCD",
            "BC_EXT",
            "XAD"
          ],
          "price_to_prz_pct": -0.22,
          "price_to_prz_pct_raw": -0.2206,
          "harmonic_vote_state": {
            "authority": "pre_confirmation_reversal_candidate",
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "confirmation_reasons": [],
            "reaction_score": 0.0,
            "reaction_detail": {
              "reaction_score": 0.0,
              "reasons": []
            },
            "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
            "standalone_path_override_allowed": false
          },
          "directional_vote_weight": 0.35,
          "confirmed_reaction": false,
          "standalone_path_override_allowed": false,
          "tp_ladder": {
            "direction": "bearish",
            "source": "shark",
            "d_price": 60138.96,
            "a_price": 59933.1,
            "tp1_ad_382": 60060.32,
            "tp2_ad_618": 60011.74,
            "tp3_a_or_structure_liquidity": 59933.1,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          "ratios": {
            "XAB": 0.5227,
            "ABC": 1.551
          },
          "x_price": 60234.8,
          "x_idx": 205,
          "x_order": 8,
          "a_price": 59933.1,
          "a_idx": 253,
          "a_order": 3,
          "b_price": 60090.8,
          "b_idx": 280,
          "b_order": 3,
          "c_price": 59846.2,
          "c_idx": 286,
          "c_order": 5,
          "d_idx": null
        },
        "best_tp_ladder": {
          "direction": "bearish",
          "source": "shark",
          "d_price": 60138.96,
          "a_price": 59933.1,
          "tp1_ad_382": 60060.32,
          "tp2_ad_618": 60011.74,
          "tp3_a_or_structure_liquidity": 59933.1,
          "note": "Use as strong TP ladder context; not standalone path authority."
        },
        "best_confirmed_tp_ladder": {
          "direction": "bullish",
          "source": "gartley",
          "d_price": 59845.51,
          "a_price": 60274.2,
          "tp1_ad_382": 60009.27,
          "tp2_ad_618": 60110.44,
          "tp3_a_or_structure_liquidity": 60274.2,
          "note": "Use as strong TP ladder context; not standalone path authority."
        },
        "tp_ladder": [
          {
            "direction": "bearish",
            "source": "shark",
            "d_price": 60138.96,
            "a_price": 59933.1,
            "tp1_ad_382": 60060.32,
            "tp2_ad_618": 60011.74,
            "tp3_a_or_structure_liquidity": 59933.1,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bearish",
            "source": "bat",
            "d_price": 60301.81,
            "a_price": 59556.0,
            "tp1_ad_382": 60016.91,
            "tp2_ad_618": 59840.9,
            "tp3_a_or_structure_liquidity": 59556.0,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bearish",
            "source": "gartley",
            "d_price": 60364.41,
            "a_price": 59530.7,
            "tp1_ad_382": 60045.93,
            "tp2_ad_618": 59849.18,
            "tp3_a_or_structure_liquidity": 59530.7,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bearish",
            "source": "bat",
            "d_price": 60526.29,
            "a_price": 59556.0,
            "tp1_ad_382": 60155.64,
            "tp2_ad_618": 59926.65,
            "tp3_a_or_structure_liquidity": 59556.0,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bullish",
            "source": "gartley",
            "d_price": 59845.51,
            "a_price": 60274.2,
            "tp1_ad_382": 60009.27,
            "tp2_ad_618": 60110.44,
            "tp3_a_or_structure_liquidity": 60274.2,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "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."
          }
        ],
        "validated_tp_ladder": [
          {
            "direction": "bearish",
            "source": "gartley",
            "d_price": 60345.92,
            "a_price": 59530.7,
            "tp1_ad_382": 60034.51,
            "tp2_ad_618": 59842.11,
            "tp3_a_or_structure_liquidity": 59530.7,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bullish",
            "source": "gartley",
            "d_price": 59845.51,
            "a_price": 60274.2,
            "tp1_ad_382": 60009.27,
            "tp2_ad_618": 60110.44,
            "tp3_a_or_structure_liquidity": 60274.2,
            "note": "Use as strong TP ladder context; not standalone path authority."
          }
        ],
        "harmonic_governance": {
          "role": "PRZ reaction + TP ladder confluence, not standalone path engine",
          "pre_confirmation_weight_range": [
            0.25,
            0.35
          ],
          "post_confirmation_vote_weight_range": [
            0.5,
            0.6
          ],
          "standalone_path_override_allowed": false,
          "opposes_core_path_policy": "branch/reversal-risk/reaction-zone unless lower-TF structure and derivatives also confirm",
          "aligns_with_core_path_policy": "modest confidence lift plus strong TP ladder influence"
        },
        "execution_readiness": "ready",
        "directional_scores": {
          "bullish": 0.513,
          "bearish": 1.481
        },
        "directional_score_total": 1.994,
        "directional_dominance": 0.485
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.59,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.72,\n  \"setup_signals\": [\n    \"현재가 $60,271.90가 활성 bearish Shark PRZ $59,979.84-$60,298.08 내부에 위치, D 예상가 $60,138.96, 점수 0.965\",\n    \"현재가가 활성 bearish Bat PRZ $60,116.23-$60,487.38 내부에 위치, D 예상가 $60,301.81까지 거리 +0.05%\",\n    \"완성된 strict bearish Gartley PRZ $60,184.90-$60,506.94에서 반응 확인, reaction_score 0.95, AD 0.236 반응 도달\",\n    \"추가 bearish Gartley 형성 PRZ $60,179.37-$60,549.45 및 bearish Bat PRZ $60,341.53-$60,711.05가 상단 공급/반전 후보로 중첩\",\n    \"EMA240 $60,384.08이 현재가 위에 있으며, bearish Bat/Gartley PRZ 중심부와 겹쳐 단기 저항 confluence 형성\"\n  ],\n  \"reasoning\": \"하모닉 기준으로 현재 BTC/USDT $60,271.90는 여러 개의 활성 bearish PRZ 안에 들어와 있으며, 특히 Shark $59,979.84-$60,298.08, Bat $60,116.23-$60,487.38, Gartley $60,179.37-$60,549.45가 겹칩니다. 완성된 strict bearish Gartley는 $60,184.90-$60,506.94 PRZ에서 이미 rejection/defense가 확인되었고 reaction_score 0.95로 post-confirmation vote eligible 상태입니다. 다만 하모닉은 독립적인 구조 엔진이 아니므로, 확인된 BOS/CHoCH 또는 상위 구조 수용 정보가 없는 현재 구조_bias는 neutral로 둡니다. setup 측면에서는 directional_scores가 bearish 1.481 대 bullish 0.513으로 우세하고, 핵심 하락 TP 클러스터가 $60,034-$60,011 및 $59,849-$59,840에 밀집해 있어 단기 하방 반응 우위입니다.\",\n  \"key_levels\": {\n    \"support\": [\n      60060.32,\n      60034.51,\n      60016.91,\n      60011.74,\n      59849.18,\n      59842.11,\n      59840.9,\n      59556.0,\n      59530.7\n    ],\n    \"resistance\": [\n      60298.08,\n      60301.81,\n      60487.38,\n      60506.94,\n      60549.45,\n      60711.05\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$60,711.05\",\n  \"risk_scenario\": \"가격이 $60,506.94 위에서 방어되고 특히 $60,711.05 상단 PRZ까지 돌파·수용되면 bearish PRZ 실패로 간주되며, 하모닉 하락 반응 시나리오는 약화됩니다. 그 경우 $60,384.08 EMA240 재탈환과 함께 상단 유동성 추적이 열릴 수 있으며, 반대로 $59,764.43-$59,926.59의 bullish Gartley PRZ는 눌림 매수 반응 구간으로 재평가됩니다.\",\n  \"data_quality\": \"medium\"\n}"
    }
  },
  "chairman_synthesis": {
    "overall_signal": "bearish",
    "overall_confidence": 0.6,
    "execution_setup": {
      "setup_bias": "bearish",
      "setup_strength": 0.64,
      "active_setups": [
        "가격 $60,271.90이 EMA20 $60,110.55 및 EMA120 $60,003.64 위에 있으나 EMA240 $60,384.08 아래에 있어 상단 수용이 아직 확인되지 않음",
        "Wyckoff 기준 LPSY $60,387.80 직후 SOW $60,134.50이 출현했고, 현재가가 메인 레인지 하단 $60,666.00 아래에 위치",
        "Harmonic 기준 가격이 bearish Shark PRZ $59,979.84-$60,298.08 및 bearish Bat PRZ $60,116.23-$60,487.38 내부에 위치",
        "완성된 strict bearish Gartley PRZ $60,184.90-$60,506.94에서 반응 확인, 하방 TP 클러스터 $60,034-$60,011 및 $59,849-$59,840 존재",
        "파생 포지셔닝은 롱 계정 비율 0.676으로 과밀하고 CVD 변화 -1770.49, 베이시스 -0.0561%로 매수 체결 강도와 선물 수요가 약함",
        "반대 근거로 ICT는 마지막 bullish BOS $60,245 위 유지, Fibonacci는 $60,107.68-$60,028.00 피보나치 지지 클러스터 회복을 제시"
      ],
      "setup_vs_structure": "구조적 판정은 Wyckoff 분배 Phase D 쪽에 더 무게가 실리지만, 실행 셋업은 양방향 신호가 팽팽하다. 다만 현재 가격이 다중 bearish PRZ와 LPSY/EMA240 저항대 안에 있어 즉시 실행 관점에서는 bearish setup이 소폭 우세하다."
    },
    "signal_breakdown": {
      "bullish_count": 1,
      "bearish_count": 1,
      "neutral_count": 4
    },
    "key_levels": {
      "support": [
        60245.0,
        60134.5,
        60110.55,
        60055.35,
        60003.64,
        59849.18,
        59717.1,
        59100.0,
        58800.0,
        58030.0
      ],
      "resistance": [
        60384.08,
        60387.8,
        60580.0,
        60619.8,
        60666.0,
        60734.0,
        61256.0,
        61931.1,
        63209.6
      ]
    },
    "confluences": [
      "EMA240 $60,384.08와 Wyckoff LPSY $60,387.80, completed bearish Gartley D/PRZ $60,387.80 및 PRZ $60,184.90-$60,506.94가 거의 동일한 저항 구간을 형성한다.",
      "Candlestick, Derivatives, Fibonacci 모두 EMA20 $60,110.55와 EMA120 $60,003.64 부근을 단기 지지 클러스터로 인식한다.",
      "ICT의 bullish BOS 방어선 $60,245와 현재가 $60,271.90, Harmonic bearish PRZ 상단부 $60,298.08이 근접해 있어 $60,245-$60,298 구간이 단기 구조-실행 충돌 구간이다.",
      "7일 범위 EQ $60,619.80, Wyckoff 메인 레인지 하단/AR $60,666.00, 전일고가 $60,734.00이 상단 수용 여부를 판단하는 핵심 저항대로 중첩된다.",
      "Harmonic의 하방 TP $59,849-$59,840과 bullish Gartley PRZ $59,764.43-$59,926.59, Fibonacci 확장/지지 $59,888.70-$59,760.32가 하단 반응 가능 구간으로 겹친다.",
      "Derivatives의 하방 유동성 $59,100 및 $58,800은 ICT 후보 bullish OB $58,288-$58,944와 Wyckoff SOW_IN_PHASE_B 저점 $58,030.00 인근 구조적 하단과 연결된다."
    ],
    "conflicts": [
      "ICT는 마지막 BOS_bullish $60,245 위 유지로 구조를 bullish로 보지만, Wyckoff는 BC $61,256.00 → UT $60,734.00 → LPSY $60,387.80 → SOW $60,134.50의 분배 Phase D로 해석한다.",
      "Candlestick과 Fibonacci는 할인 구간 및 $60,110-$60,028 지지 회복을 근거로 bullish setup을 제시하지만, Derivatives는 롱 과밀 0.676, CVD 약화, 음의 베이시스를 근거로 bearish setup을 제시한다.",
      "Harmonic은 현재 가격이 다중 bearish PRZ 내부에 있다고 보지만, 해당 신호 중 일부는 forming/pre-confirmation이므로 단독으로 구조를 뒤집을 권한은 낮다.",
      "가격은 EMA20/EMA120 위에 있어 단기 지지는 살아 있으나 EMA240 $60,384.08 및 7일 EQ $60,619.80 아래에 있어 추세 수용은 미확정이다."
    ],
    "executive_summary": "현재 15분 BTC 구조는 다수의 중립 구조 판정에도 불구하고, 가장 구체적인 regime 분석인 Wyckoff가 분배 Phase D를 가리키고 있어 전체 구조 bias는 bearish로 평가한다. 현재 위치는 LPSY $60,387.80 이후 SOW $60,134.50이 발생한 뒤 메인 레인지 하단 $60,666.00 아래에 머무는 구간이며, 아직 Phase E 확정이라기보다는 분배 우위의 late Phase D 후보 상태다. 핵심 상단 구조 구간은 EMA240 $60,384.08, LPSY $60,387.80, 7일 EQ $60,619.80, AR $60,666.00, 전일고가 $60,734.00으로 압축되며, 하단 구조 지지는 $60,110.55-$60,003.64 및 $59,849-$59,717 부근에 집중된다. 구조적 리스크는 ICT의 bullish BOS $60,245 유지와 피보나치 지지 회복이 분배 해석과 충돌한다는 점이며, $60,734 상방 수용 및 최종 $61,256 회복은 bearish 구조 해석의 주요 무효화 조건이다.",
    "raw_llm_response": "{\n  \"overall_signal\": \"bearish\",\n  \"overall_confidence\": 0.60,\n  \"execution_setup\": {\n    \"setup_bias\": \"bearish\",\n    \"setup_strength\": 0.64,\n    \"active_setups\": [\n      \"가격 $60,271.90이 EMA20 $60,110.55 및 EMA120 $60,003.64 위에 있으나 EMA240 $60,384.08 아래에 있어 상단 수용이 아직 확인되지 않음\",\n      \"Wyckoff 기준 LPSY $60,387.80 직후 SOW $60,134.50이 출현했고, 현재가가 메인 레인지 하단 $60,666.00 아래에 위치\",\n      \"Harmonic 기준 가격이 bearish Shark PRZ $59,979.84-$60,298.08 및 bearish Bat PRZ $60,116.23-$60,487.38 내부에 위치\",\n      \"완성된 strict bearish Gartley PRZ $60,184.90-$60,506.94에서 반응 확인, 하방 TP 클러스터 $60,034-$60,011 및 $59,849-$59,840 존재\",\n      \"파생 포지셔닝은 롱 계정 비율 0.676으로 과밀하고 CVD 변화 -1770.49, 베이시스 -0.0561%로 매수 체결 강도와 선물 수요가 약함\",\n      \"반대 근거로 ICT는 마지막 bullish BOS $60,245 위 유지, Fibonacci는 $60,107.68-$60,028.00 피보나치 지지 클러스터 회복을 제시\"\n    ],\n    \"setup_vs_structure\": \"구조적 판정은 Wyckoff 분배 Phase D 쪽에 더 무게가 실리지만, 실행 셋업은 양방향 신호가 팽팽하다. 다만 현재 가격이 다중 bearish PRZ와 LPSY/EMA240 저항대 안에 있어 즉시 실행 관점에서는 bearish setup이 소폭 우세하다.\"\n  },\n  \"signal_breakdown\": {\n    \"bullish_count\": 1,\n    \"bearish_count\": 1,\n    \"neutral_count\": 4\n  },\n  \"key_levels\": {\n    \"support\": [\n      60245.0,\n      60134.5,\n      60110.55,\n      60055.35,\n      60003.64,\n      59849.18,\n      59717.1,\n      59100.0,\n      58800.0,\n      58030.0\n    ],\n    \"resistance\": [\n      60384.08,\n      60387.8,\n      60580.0,\n      60619.8,\n      60666.0,\n      60734.0,\n      61256.0,\n      61931.1,\n      63209.6\n    ]\n  },\n  \"confluences\": [\n    \"EMA240 $60,384.08와 Wyckoff LPSY $60,387.80, completed bearish Gartley D/PRZ $60,387.80 및 PRZ $60,184.90-$60,506.94가 거의 동일한 저항 구간을 형성한다.\",\n    \"Candlestick, Derivatives, Fibonacci 모두 EMA20 $60,110.55와 EMA120 $60,003.64 부근을 단기 지지 클러스터로 인식한다.\",\n    \"ICT의 bullish BOS 방어선 $60,245와 현재가 $60,271.90, Harmonic bearish PRZ 상단부 $60,298.08이 근접해 있어 $60,245-$60,298 구간이 단기 구조-실행 충돌 구간이다.\",\n    \"7일 범위 EQ $60,619.80, Wyckoff 메인 레인지 하단/AR $60,666.00, 전일고가 $60,734.00이 상단 수용 여부를 판단하는 핵심 저항대로 중첩된다.\",\n    \"Harmonic의 하방 TP $59,849-$59,840과 bullish Gartley PRZ $59,764.43-$59,926.59, Fibonacci 확장/지지 $59,888.70-$59,760.32가 하단 반응 가능 구간으로 겹친다.\",\n    \"Derivatives의 하방 유동성 $59,100 및 $58,800은 ICT 후보 bullish OB $58,288-$58,944와 Wyckoff SOW_IN_PHASE_B 저점 $58,030.00 인근 구조적 하단과 연결된다.\"\n  ],\n  \"conflicts\": [\n    \"ICT는 마지막 BOS_bullish $60,245 위 유지로 구조를 bullish로 보지만, Wyckoff는 BC $61,256.00 → UT $60,734.00 → LPSY $60,387.80 → SOW $60,134.50의 분배 Phase D로 해석한다.\",\n    \"Candlestick과 Fibonacci는 할인 구간 및 $60,110-$60,028 지지 회복을 근거로 bullish setup을 제시하지만, Derivatives는 롱 과밀 0.676, CVD 약화, 음의 베이시스를 근거로 bearish setup을 제시한다.\",\n    \"Harmonic은 현재 가격이 다중 bearish PRZ 내부에 있다고 보지만, 해당 신호 중 일부는 forming/pre-confirmation이므로 단독으로 구조를 뒤집을 권한은 낮다.\",\n    \"가격은 EMA20/EMA120 위에 있어 단기 지지는 살아 있으나 EMA240 $60,384.08 및 7일 EQ $60,619.80 아래에 있어 추세 수용은 미확정이다.\"\n  ],\n  \"highest_conviction_analyst\": \"Wyckoff Expert — regime fitness 0.963의 분배 후보, Phase D 맥락, LPSY $60,387.80 이후 SOW $60,134.50이라는 명확한 구조 체인을 제시했기 때문에 구조 판정에서 가장 높은 가중치를 부여한다. 단, acc_score와 dis_score가 모두 높아 완전한 Phase E 확정이 아니라 분배 우위의 후보 구조로 해석한다.\",\n  \"invalidation_level\": \"$60,734 상방 수용 시 bearish 분배 구조가 크게 약화되며, $61,256 회복 시 현재 분배 Phase D 해석은 구조적으로 무효화된다.\",\n  \"executive_summary\": \"현재 15분 BTC 구조는 다수의 중립 구조 판정에도 불구하고, 가장 구체적인 regime 분석인 Wyckoff가 분배 Phase D를 가리키고 있어 전체 구조 bias는 bearish로 평가한다. 현재 위치는 LPSY $60,387.80 이후 SOW $60,134.50이 발생한 뒤 메인 레인지 하단 $60,666.00 아래에 머무는 구간이며, 아직 Phase E 확정이라기보다는 분배 우위의 late Phase D 후보 상태다. 핵심 상단 구조 구간은 EMA240 $60,384.08, LPSY $60,387.80, 7일 EQ $60,619.80, AR $60,666.00, 전일고가 $60,734.00으로 압축되며, 하단 구조 지지는 $60,110.55-$60,003.64 및 $59,849-$59,717 부근에 집중된다. 구조적 리스크는 ICT의 bullish BOS $60,245 유지와 피보나치 지지 회복이 분배 해석과 충돌한다는 점이며, $60,734 상방 수용 및 최종 $61,256 회복은 bearish 구조 해석의 주요 무효화 조건이다.\"\n}"
  },
  "overall_signal": "bearish",
  "overall_confidence": 0.6,
  "operating_path": {
    "path_type": "complex",
    "confidence": 0.57,
    "waypoints": [
      {
        "seq": 1,
        "price": 60025.79,
        "type": "support_test",
        "source": "Fibonacci(strict 컨플루언스 $60,025.79 score 1.0, 0.5 되돌림 $60,028.00), Harmonic(하방 TP 클러스터 $60,034-$60,011), Derivatives/Candlestick(EMA120 $60,003.64)",
        "description": "구조(BEARISH 60%)와 셋업(BEARISH 64%)이 일치하므로 첫 경로는 하방으로 직행한다. 현재가 $60,271.90가 ICT bullish BOS $60,245와 Wyckoff SOW $60,134.50를 차례로 이탈하면, Fibonacci strict 컨플루언스 $60,025.79(score 1.0)·Fib 0.5 $60,028·Harmonic 하방 TP 클러스터 $60,034-$60,011·EMA120 $60,003.64가 겹치는 강한 1차 지지 클러스터를 시험한다. WP 후보표상 가장 가깝고(0.41%) 품질 strict한 레벨이라 우선 선택. 이 구간은 Candlestick·Fibonacci가 반등을 노리는 곳이기도 해 즉시 관통보다 1차 반응(되돌림)이 나올 수 있다.",
        "est_hours": 3,
        "turning_zone": [
          59985.0,
          60034.51
        ],
        "likely_wick": 60000.0,
        "rejection_confirm": 60060.87,
        "invalid_overshoot": 59970.0,
        "calibration_reasoning": "Fib strict 컨플루언스 $60,025.79·Fib 0.5 $60,028·검증된 베어리시 gartley TP1 AD0.382 $60,034.51을 존 상단 앵커로, EMA120 $60,003.64·검증 TP1 $60,009.27·라운드 $60,000을 하단 반응대로 묶어 폭 $49(0.31 ATR)로 설정했다. likely_wick은 라운드 자석 $60,000(EMA120 직하 살짝 관통)으로 1차 되돌림을 가정했고, 골든레이쇼 $60,060.87 재탈환을 반등 확인선, 클러스터를 깨는 $59,970 이탈을 무효화로 본다."
      },
      {
        "seq": 2,
        "price": 59717.1,
        "type": "liquidity_sweep",
        "source": "ICT(London 저점 $59,717.10, 지지 $59,530.70), Fibonacci(strict 컨플루언스 $59,760.32 score 1.0), Harmonic(하방 TP $59,849-$59,840)",
        "description": "$60,025-$60,003 클러스터가 15분 종가 기준 이탈되면 파생 우위(롱 과밀 0.676·CVD -1770.49·베이시스 -0.0561%·OI -0.869%)가 견인하는 하방 연속이 발동한다. Harmonic 하방 TP $59,849-$59,840과 Fibonacci strict 컨플루언스 $59,760.32를 지나 ICT London 저점 $59,717.10 유동성을 스윕한다. 분배 Phase D 해석에서 LPSY→SOW 이후 자연스러운 유동성 사냥 구간이며, ICT $59,530.70·Harmonic $59,556 지지가 바로 아래 위치한다.",
        "est_hours": 8,
        "turning_zone": [
          59625.0,
          59720.0
        ],
        "likely_wick": 59680.0,
        "rejection_confirm": 59760.32,
        "invalid_overshoot": 59530.7,
        "calibration_reasoning": "ICT London 저점·Chairman $59,717.1 직하의 매도 유동성을 겨냥해 스윕 특성을 반영, 존을 아래로 $95(0.59 ATR) 확장했다. likely_wick $59,680은 런던 저점을 살짝 관통하는 전형적 스윕 깊이(0.23 ATR)이며, 상단 Fib strict 5중 컨플루언스 $59,760.32 재탈환이 반전 확인선, $59,556 쿠션을 무너뜨리는 ICT/Harmonic TP3 $59,530.7 이탈 시 WP3로 연속 전환된다."
      },
      {
        "seq": 3,
        "price": 59100.0,
        "type": "swing_low",
        "source": "Derivatives(하방 유동성 $59,100→$58,800), ICT(후보 bullish OB $58,944-$58,288)",
        "description": "Derivatives 트레이더가 4-8시간 선행 신호로 지목한 하방 유동성 목표 $59,100(연장 시 $58,800). ICT 후보 bullish OB $58,944-$58,288 상단과 Wyckoff Phase D 마크다운 연장이 만나는 24시간 1차 스윙 저점/반응 후보다. 분배 해석이 유효한 한 이 구간까지 확장 가능하나, OB·OB 상단 지지가 두꺼워 여기서 1차 매수 반응이 나올 가능성이 높다.",
        "est_hours": 16,
        "turning_zone": [
          58944.0,
          59100.0
        ],
        "likely_wick": 58960.0,
        "rejection_confirm": 59345.16,
        "invalid_overshoot": 58800.0,
        "calibration_reasoning": "종착 웨이포인트라 라운드 $59,100(Chairman 일치)에서 ICT bullish OB 상단 $58,944까지 두꺼운 매수대를 포함해 존을 $156(0.97 ATR)로 확장했다(터미널+OB 유동성 클러스터 규칙 적용). likely_wick $58,960은 메이저 라운드 $59,000을 스윕한 뒤 OB 상단을 태깅하는 1차 매수 반응 지점이며, Fib 컨플루언스 $59,345.16 재탈환이 추세 반전 확인선, 연장 타깃 $58,800(Chairman) 이탈 시 본 스윙 저점은 무효화된다."
      }
    ],
    "period_extremes": {
      "4h": {
        "expected_high": 60300.0,
        "expected_low": 60025.79,
        "high_first": true
      },
      "8h": {
        "expected_high": 60384.08,
        "expected_low": 59717.1,
        "high_first": true
      },
      "24h": {
        "expected_high": 60384.08,
        "expected_low": 59100.0,
        "high_first": true
      }
    },
    "triggers": {
      "bullish": {
        "price": 60387.8,
        "description": "15분 종가가 EMA240 $60,384.08·Wyckoff LPSY $60,387.80·완성 bearish Gartley PRZ 상단을 회복하고 수용하면 즉시 bearish setup이 무력화된다. 이후 ICT range high $60,580·7일 EQ $60,619.80·AR $60,666.00을 향한 상방 가속으로 전환되며 경로 신뢰도 급락."
      },
      "bearish": {
        "price": 60003.64,
        "description": "15분 종가가 $60,025-$60,003 지지 클러스터(Fib strict 컨플루언스 + EMA120 $60,003.64) 아래로 마감하면 하방 가속이 확정된다. $59,760 strict fib → London 저점 $59,717 유동성 스윕 → $59,100 파생 유동성으로 연속 하락 경로가 활성화."
      }
    },
    "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\": 60025.79,\n      \"type\": \"support_test\",\n      \"source\": \"Fibonacci(strict 컨플루언스 $60,025.79 score 1.0, 0.5 되돌림 $60,028.00), Harmonic(하방 TP 클러스터 $60,034-$60,011), Derivatives/Candlestick(EMA120 $60,003.64)\",\n      \"description\": \"구조(BEARISH 60%)와 셋업(BEARISH 64%)이 일치하므로 첫 경로는 하방으로 직행한다. 현재가 $60,271.90가 ICT bullish BOS $60,245와 Wyckoff SOW $60,134.50를 차례로 이탈하면, Fibonacci strict 컨플루언스 $60,025.79(score 1.0)·Fib 0.5 $60,028·Harmonic 하방 TP 클러스터 $60,034-$60,011·EMA120 $60,003.64가 겹치는 강한 1차 지지 클러스터를 시험한다. WP 후보표상 가장 가깝고(0.41%) 품질 strict한 레벨이라 우선 선택. 이 구간은 Candlestick·Fibonacci가 반등을 노리는 곳이기도 해 즉시 관통보다 1차 반응(되돌림)이 나올 수 있다.\",\n      \"est_hours\": 3\n    },\n    {\n      \"seq\": 2,\n      \"price\": 59717.10,\n      \"type\": \"liquidity_sweep\",\n      \"source\": \"ICT(London 저점 $59,717.10, 지지 $59,530.70), Fibonacci(strict 컨플루언스 $59,760.32 score 1.0), Harmonic(하방 TP $59,849-$59,840)\",\n      \"description\": \"$60,025-$60,003 클러스터가 15분 종가 기준 이탈되면 파생 우위(롱 과밀 0.676·CVD -1770.49·베이시스 -0.0561%·OI -0.869%)가 견인하는 하방 연속이 발동한다. Harmonic 하방 TP $59,849-$59,840과 Fibonacci strict 컨플루언스 $59,760.32를 지나 ICT London 저점 $59,717.10 유동성을 스윕한다. 분배 Phase D 해석에서 LPSY→SOW 이후 자연스러운 유동성 사냥 구간이며, ICT $59,530.70·Harmonic $59,556 지지가 바로 아래 위치한다.\",\n      \"est_hours\": 8\n    },\n    {\n      \"seq\": 3,\n      \"price\": 59100.0,\n      \"type\": \"swing_low\",\n      \"source\": \"Derivatives(하방 유동성 $59,100→$58,800), ICT(후보 bullish OB $58,944-$58,288)\",\n      \"description\": \"Derivatives 트레이더가 4-8시간 선행 신호로 지목한 하방 유동성 목표 $59,100(연장 시 $58,800). ICT 후보 bullish OB $58,944-$58,288 상단과 Wyckoff Phase D 마크다운 연장이 만나는 24시간 1차 스윙 저점/반응 후보다. 분배 해석이 유효한 한 이 구간까지 확장 가능하나, OB·OB 상단 지지가 두꺼워 여기서 1차 매수 반응이 나올 가능성이 높다.\",\n      \"est_hours\": 16\n    }\n  ],\n  \"period_extremes\": {\n    \"4h\":  {\"expected_high\": 60300.0, \"expected_low\": 60025.79, \"high_first\": true},\n    \"8h\":  {\"expected_high\": 60384.08, \"expected_low\": 59717.10, \"high_first\": true},\n    \"24h\": {\"expected_high\": 60384.08, \"expected_low\": 59100.0, \"high_first\": true}\n  },\n  \"triggers\": {\n    \"bullish\": {\n      \"price\": 60387.80,\n      \"description\": \"15분 종가가 EMA240 $60,384.08·Wyckoff LPSY $60,387.80·완성 bearish Gartley PRZ 상단을 회복하고 수용하면 즉시 bearish setup이 무력화된다. 이후 ICT range high $60,580·7일 EQ $60,619.80·AR $60,666.00을 향한 상방 가속으로 전환되며 경로 신뢰도 급락.\"\n    },\n    \"bearish\": {\n      \"price\": 60003.64,\n      \"description\": \"15분 종가가 $60,025-$60,003 지지 클러스터(Fib strict 컨플루언스 + EMA120 $60,003.64) 아래로 마감하면 하방 가속이 확정된다. $59,760 strict fib → London 저점 $59,717 유동성 스윕 → $59,100 파생 유동성으로 연속 하락 경로가 활성화.\"\n    }\n  },\n  \"scenario_invalidation\": 60734.0\n}\n```"
  },
  "tp_calibration": {
    "calibrated_waypoints": [
      {
        "seq": 1,
        "base_target": 60025.79,
        "turning_zone": [
          59985.0,
          60034.51
        ],
        "likely_wick": 60000.0,
        "rejection_confirm": 60060.87,
        "invalid_overshoot": 59970.0,
        "calibration_reasoning": "Fib strict 컨플루언스 $60,025.79·Fib 0.5 $60,028·검증된 베어리시 gartley TP1 AD0.382 $60,034.51을 존 상단 앵커로, EMA120 $60,003.64·검증 TP1 $60,009.27·라운드 $60,000을 하단 반응대로 묶어 폭 $49(0.31 ATR)로 설정했다. likely_wick은 라운드 자석 $60,000(EMA120 직하 살짝 관통)으로 1차 되돌림을 가정했고, 골든레이쇼 $60,060.87 재탈환을 반등 확인선, 클러스터를 깨는 $59,970 이탈을 무효화로 본다."
      },
      {
        "seq": 2,
        "base_target": 59717.1,
        "turning_zone": [
          59625.0,
          59720.0
        ],
        "likely_wick": 59680.0,
        "rejection_confirm": 59760.32,
        "invalid_overshoot": 59530.7,
        "calibration_reasoning": "ICT London 저점·Chairman $59,717.1 직하의 매도 유동성을 겨냥해 스윕 특성을 반영, 존을 아래로 $95(0.59 ATR) 확장했다. likely_wick $59,680은 런던 저점을 살짝 관통하는 전형적 스윕 깊이(0.23 ATR)이며, 상단 Fib strict 5중 컨플루언스 $59,760.32 재탈환이 반전 확인선, $59,556 쿠션을 무너뜨리는 ICT/Harmonic TP3 $59,530.7 이탈 시 WP3로 연속 전환된다."
      },
      {
        "seq": 3,
        "base_target": 59100.0,
        "turning_zone": [
          58944.0,
          59100.0
        ],
        "likely_wick": 58960.0,
        "rejection_confirm": 59345.16,
        "invalid_overshoot": 58800.0,
        "calibration_reasoning": "종착 웨이포인트라 라운드 $59,100(Chairman 일치)에서 ICT bullish OB 상단 $58,944까지 두꺼운 매수대를 포함해 존을 $156(0.97 ATR)로 확장했다(터미널+OB 유동성 클러스터 규칙 적용). likely_wick $58,960은 메이저 라운드 $59,000을 스윕한 뒤 OB 상단을 태깅하는 1차 매수 반응 지점이며, Fib 컨플루언스 $59,345.16 재탈환이 추세 반전 확인선, 연장 타깃 $58,800(Chairman) 이탈 시 본 스윙 저점은 무효화된다."
      }
    ],
    "raw_llm_response": "```json\n{\n  \"calibrated_waypoints\": [\n    {\n      \"seq\": 1,\n      \"base_target\": 60025.79,\n      \"turning_zone\": [59985.0, 60034.51],\n      \"likely_wick\": 60000.0,\n      \"rejection_confirm\": 60060.87,\n      \"invalid_overshoot\": 59970.0,\n      \"calibration_reasoning\": \"Fib strict 컨플루언스 $60,025.79·Fib 0.5 $60,028·검증된 베어리시 gartley TP1 AD0.382 $60,034.51을 존 상단 앵커로, EMA120 $60,003.64·검증 TP1 $60,009.27·라운드 $60,000을 하단 반응대로 묶어 폭 $49(0.31 ATR)로 설정했다. likely_wick은 라운드 자석 $60,000(EMA120 직하 살짝 관통)으로 1차 되돌림을 가정했고, 골든레이쇼 $60,060.87 재탈환을 반등 확인선, 클러스터를 깨는 $59,970 이탈을 무효화로 본다.\"\n    },\n    {\n      \"seq\": 2,\n      \"base_target\": 59717.1,\n      \"turning_zone\": [59625.0, 59720.0],\n      \"likely_wick\": 59680.0,\n      \"rejection_confirm\": 59760.32,\n      \"invalid_overshoot\": 59530.7,\n      \"calibration_reasoning\": \"ICT London 저점·Chairman $59,717.1 직하의 매도 유동성을 겨냥해 스윕 특성을 반영, 존을 아래로 $95(0.59 ATR) 확장했다. likely_wick $59,680은 런던 저점을 살짝 관통하는 전형적 스윕 깊이(0.23 ATR)이며, 상단 Fib strict 5중 컨플루언스 $59,760.32 재탈환이 반전 확인선, $59,556 쿠션을 무너뜨리는 ICT/Harmonic TP3 $59,530.7 이탈 시 WP3로 연속 전환된다.\"\n    },\n    {\n      \"seq\": 3,\n      \"base_target\": 59100.0,\n      \"turning_zone\": [58944.0, 59100.0],\n      \"likely_wick\": 58960.0,\n      \"rejection_confirm\": 59345.16,\n      \"invalid_overshoot\": 58800.0,\n      \"calibration_reasoning\": \"종착 웨이포인트라 라운드 $59,100(Chairman 일치)에서 ICT bullish OB 상단 $58,944까지 두꺼운 매수대를 포함해 존을 $156(0.97 ATR)로 확장했다(터미널+OB 유동성 클러스터 규칙 적용). likely_wick $58,960은 메이저 라운드 $59,000을 스윕한 뒤 OB 상단을 태깅하는 1차 매수 반응 지점이며, Fib 컨플루언스 $59,345.16 재탈환이 추세 반전 확인선, 연장 타깃 $58,800(Chairman) 이탈 시 본 스윙 저점은 무효화된다.\"\n    }\n  ]\n}\n```"
  },
  "timing": {
    "stages": {
      "stage1_agents": 53.1,
      "chairman": 92.2,
      "operating_path": 360.1,
      "tp_calibrator": 394.0
    },
    "agents": {},
    "total_s": 899.6
  }
}