BTC/USDT 15M Council Report

Signal: BEARISH (58%)  |  Price: $60,817.30  |  2026-06-28 01:00 KST  |  300 candles

Council: 2 bullish, 1 neutral, 3 bearish  |  Support: $60,753 / $60,698 / $60,573  |  Resistance: $60,925 / $61,032 / $61,188

result.json   raw.txt   report.md


BTC Chart

Executive Summary

현재 15분 BTC 구조는 Wyckoff 기준 분배 구조가 우세하며, Phase E 라벨이 붙은 후기 분배 구간으로 진단된다. 다만 가격은 메인 레인지 하단/AR인 $60,752.80 위로 재진입해 있어 분배 하방 수용이 완전히 확인된 상태라기보다, $60,752.80-$60,561.80-$60,500.00 구간의 재수용 여부가 구조 확인 조건이다. 반대로 ICT와 Fibonacci는 $60,557.80 및 $60,558 상회, 전일 고점 $60,697.60 돌파를 근거로 단기 bullish 구조를 제시해 Wyckoff 분배 해석과 충돌한다. 실행 환경은 프리미엄 구간, 롱 과밀, CVD 흡수, bearish harmonic PRZ $60,630.35-$61,031.56이 겹쳐 bearish 셋업이 우세하나, 이는 구조적 조건이지 확정 경로는 아니다. 분배 구조의 핵심 무효화는 $61,188.00 상방 수용이며, 보수적으로는 $61,256.00 회복까지 확인해야 한다.

Confluences

Conflicts


Agent Matrix

AgentSignalConfidenceSupportResistance
Wyckoff ExpertBEARISH69%$60,753 / $60,562$61,188 / $61,931
ICT TraderBULLISH68%$60,698 / $60,558$60,925 / $61,256
Derivatives TraderBEARISH62%$60,573 / $60,317$62,604 / $62,800
Candlestick ReaderBULLISH58%$60,573 / $60,327$62,604
Fibonacci AnalystNEUTRAL56%$60,473 / $60,407$62,604
Harmonic SpecialistBEARISH62%$60,471 / $60,249$60,831 / $61,032

Agent Details

Wyckoff Expert — BEARISH (69%)

Support: $60,753 / $60,562 / $60,500 | Resistance: $61,188 / $61,931 / $62,604 | Horizon: short to medium term

15분 구조는 regime=DIS, dis_score=100.0, regime_fitness=1.000으로 분배 구조가 우세하며, 이벤트 체인은 BC $61,188.00 → AR $60,752.80 → ST $61,931.10 → SOW_IN_PHASE_B $58,030.00 → UT $60,734.00 → UTAD $60,697.60 → SOW $60,561.80 → Phase E $60,500.00로 읽힌다. 구조적으로는 Phase E까지 라벨링되어 bearish이지만, 현재가 $60,817.30은 AR/레인지 하단 $60,752.80 위로 다시 올라와 있어 즉각적인 하방 수용은 아직 충분히 확인되지 않았다. 따라서 structure_bias는 bearish로 유지하되, setup_bias는 하단 재진입 이후 $60,752.80 및 $60,561.80 재이탈 확인이 필요한 neutral로 평가한다. 하방 재개를 확인하려면 $60,752.80 아래 재이탈 후 $60,561.80 및 $60,500.00 아래 수용이 필요하며, 반대로 $61,188.00 회복은 분배 하단 실패 가능성을 높인다.
ICT Trader — BULLISH (68%)

Support: $60,698 / $60,558 / $60,500 | Resistance: $60,925 / $61,256 / $62,604 | Horizon: short term

확정 구조는 bullish로 판단한다. 최근 BOS/CHoCH 시퀀스가 BOS_bullish → CHoCH_bearish → BOS_bullish → BOS_bullish이며, 특히 $60,245.00과 $60,557.80을 연속 상향 돌파해 단기 구조는 매수 우위다. 현재가 $60,817.30은 전일 고점 $60,697.60 위에 있으며, range EQ $60,499.60보다 높은 프리미엄 구간이므로 추격 매수보다는 $60,697.60~$60,557.80 재테스트 방어 여부가 중요하다. 다만 미체결 FVG가 없고 활성 OB도 없으며 최근 liquidity sweep이 확인되지 않아, 기관성 재축적 근거는 강하지 않고 $60,924.70 range high 및 $61,256.00 상단에서 유동성 회수 후 되돌림 위험이 있다.
Derivatives Trader — BEARISH (62%)

Support: $60,573 / $60,317 / $60,237 | Resistance: $62,604 / $62,800 / $66,400 | Horizon: short term

현재 BTC는 $60,817.30으로 EMA20 $60,572.77, EMA120 $60,237.05, EMA240 $60,326.63 위에 있어 단기 가격은 중립 이상이지만, 명확한 BOS나 CHoCH 확인은 없어 구조는 중립으로 본다. 그러나 7일 고점 $62,604와 저점 $58,030의 EQ인 약 $60,317 위 프리미엄 구간에서 롱 계정 비중이 0.669까지 쏠려 있고, account_long_crowding이 1.000이라 단기적으로는 롱 과밀 해소 리스크가 크다. CVD가 +$3,733.50 증가했음에도 가격은 $61k 부근에서 강하게 확장하지 못해 CVD divergence 0.700의 흡수성 약세 신호가 보인다. 하방에는 $59,600, $58,400, $58,000 청산 유동성이 촘촘하고 fragility_score 0.827로 포지션 취약성이 높아, 파생 데이터 기준 향후 4-8시간은 하방 테스트 가능성이 우세하다.
Candlestick Reader — BULLISH (58%)

Support: $60,573 / $60,327 / $60,317 | Resistance: $62,604 | Horizon: short term

현재 BTC는 $60,817.30으로 EMA20 $60,572.77, EMA120 $60,237.05, EMA240 $60,326.63 위에 있어 단기적으로 매수 우위가 유지되고 있습니다. 최근 패턴은 bullish_engulfing@299와 bullish_engulfing@292가 확인되었고, bull_score 2.10이 bear_score 0.60을 크게 앞서므로 캔들 흐름은 약한 bullish 쪽입니다. 다만 최고 품질 패턴도 0.503에 불과하고 high_volume_patterns가 없기 때문에 강한 추세 확정이라기보다 후보성 반등 셋업으로 봐야 합니다. 구조적으로는 BOS나 CHoCH 확정 데이터가 없으므로 structure_bias는 bullish가 아닌 neutral로 평가하며, $60,317 부근 EQ 위 프리미엄 구간이라는 점은 단기 되돌림 리스크입니다.
Fibonacci Analyst — NEUTRAL (56%)

Support: $60,473 / $60,407 / $60,360 | Resistance: $62,604 | Horizon: short term

확정 구조 관점에서는 현재가 $60,817.30가 최근 하락 스윙의 고점 $60,558을 상회했기 때문에 단기 구조는 bullish로 해석된다. 다만 실행 셋업 관점에서는 가격이 EQ인 ret_0.5 $60,359.90, 골든비율 ret_0.618 $60,406.60, ret_0.786 $60,473.10 모두 위에 있어 프리미엄 구간 과확장 상태이며, $60,354.20 컨플루언스 클러스터 재시험 가능성이 남아 있다. 가장 중요한 지지대는 ret_0.786 $60,473.10과 0.618 골든비율 $60,406.60이며, 이 구간이 유지되면 상승 구조가 보존된다. 반대로 $60,406.60을 하향 이탈하면 $60,359.90, $60,313.20, 더 아래로는 확장 클러스터 $60,032.97까지 되돌림 위험이 커진다.
Harmonic Specialist — BEARISH (62%)

Support: $60,471 / $60,249 / $60,056 | Resistance: $60,831 / $61,032 / $60,777 | Horizon: short term

구조_bias는 중립으로 본다. 제공 데이터에는 확정 BOS/CHoCH 또는 상위 구조 수용이 없고, 하모닉은 독립적인 구조 판정 엔진이 아니기 때문이다. 반면 setup_bias는 bearish다. 현재가는 $60,817.30으로 후보형 bearish Butterfly 활성 PRZ $60,630.35-$61,031.56 안에 있으며, 동시에 strict/high bearish Bat 완료 패턴은 $60,217.82-$60,510.71 PRZ에서 rejection 확인과 reaction_score 0.75를 기록했다. 또한 strict/high Butterfly와 Gartley의 하방 PRZ가 각각 $60,292.09-$60,530.47, $60,179.37-$60,549.45에 겹쳐 있어, $60.2k-$60.55k 재진입 시 하방 TP ladder $60,055.51, $59,864.76, $59,556.00이 유효한 반응 목표가 된다.

Operating Path — complex (60%)

#PriceTypeSourceEst. HoursDescription
1$60,925liquidity_sweepICT(range high $60,924.70), Harmonic(후보형 bearish Butterfly PRZ $60,630.35-$61,031.56, 추정 D $60,830.95)2.0현재가 $60,817.30이 butterfly D 추정 $60,830.95와 거의 일치하고 전일 고점 $60,697.60 위에서 유지 중이므로, 분배 막바지 매수측 유동성 회수를 위한 마지막 상방 스윕을 우선 예상한다. ICT range high $60,924.70 및 butterfly PRZ 상단부에서 거부가 발생해야 하방 전환의 트리거가 된다. 즉각적 하방 수용이 미확정이라는 의장 진단과 정합.
2$60,500support_testWyckoff(AR $60,752.80, SOW $60,561.80, Phase E $60,500.00), ICT(BOS $60,557.80), Candlestick(EMA20 $60,572.77), Fibonacci(ret_0.786 $60,473.10)6.0AR $60,752.80 아래 재이탈 후 $60,561.80-$60,500.00 핵심 구조 클러스터를 시험하는 확인 게이트. 이 구간 아래 수용 여부가 Wyckoff Phase E 하방 수용 재확인 조건이며, 동시에 ICT 연속 bullish BOS 무효화 지점이라 구조 충돌이 해소되는 결정 구간.
3$60,354swing_lowFibonacci(strict fib_confluence $60,354.20, score 1.0), WP1 후보 테이블 최근접 strict 레벨10.0$60,500 클러스터 하향 수용 시 도달하는 최근접 strict-tier 피보나치 컨플루언스. 7일 EQ(~$60,317) 하단 이탈을 의미해 프리미엄 과확장이 해소되는 첫 strict 하방 목표.
4$60,056swing_lowHarmonic(bearish Bat 확인 반응 TP $60,055.51), Fibonacci(strict confluence $60,032.97), Derivatives(하방 유동성 $59,600)16.0strict/high bearish Bat가 PRZ $60,217.82-$60,510.71에서 reaction_score 0.75로 거부 확인한 1차 TP 래더. strict 피보나치 $60,032.97과 중첩되고, 롱 과밀(crowding 1.000)·fragility 0.827 해소에 따른 청산 유동성 자극 구간.
5$59,688extensionFibonacci(strict fib_confluence $59,688.35, score 0.85), Harmonic(TP 래더 $59,864.76/$59,556.00), Derivatives(청산 포켓 $59,600)22.0하방 가속 지속 시 strict 피보나치 확장 컨플루언스와 하모닉 TP 래더($59,864.76→$59,556.00) 및 파생 청산 포켓($59,600)이 겹치는 24h 하방 극단. 분배 markdown의 합리적 종착 반응대.

Period Extremes

HorizonExpected LowExpected HighSequence
4h$60,500$60,925High first
8h$60,354$60,925High first
24h$59,688$60,925High first

Triggers

Invalidation: $61,256

Raw Operating Path Response
```json
{
  "path_type": "complex",
  "confidence": 0.60,
  "waypoints": [
    {
      "seq": 1,
      "price": 60924.70,
      "type": "liquidity_sweep",
      "source": "ICT(range high $60,924.70), Harmonic(후보형 bearish Butterfly PRZ $60,630.35-$61,031.56, 추정 D $60,830.95)",
      "description": "현재가 $60,817.30이 butterfly D 추정 $60,830.95와 거의 일치하고 전일 고점 $60,697.60 위에서 유지 중이므로, 분배 막바지 매수측 유동성 회수를 위한 마지막 상방 스윕을 우선 예상한다. ICT range high $60,924.70 및 butterfly PRZ 상단부에서 거부가 발생해야 하방 전환의 트리거가 된다. 즉각적 하방 수용이 미확정이라는 의장 진단과 정합.",
      "est_hours": 2.0
    },
    {
      "seq": 2,
      "price": 60500.00,
      "type": "support_test",
      "source": "Wyckoff(AR $60,752.80, SOW $60,561.80, Phase E $60,500.00), ICT(BOS $60,557.80), Candlestick(EMA20 $60,572.77), Fibonacci(ret_0.786 $60,473.10)",
      "description": "AR $60,752.80 아래 재이탈 후 $60,561.80-$60,500.00 핵심 구조 클러스터를 시험하는 확인 게이트. 이 구간 아래 수용 여부가 Wyckoff Phase E 하방 수용 재확인 조건이며, 동시에 ICT 연속 bullish BOS 무효화 지점이라 구조 충돌이 해소되는 결정 구간.",
      "est_hours": 6.0
    },
    {
      "seq": 3,
      "price": 60354.20,
      "type": "swing_low",
      "source": "Fibonacci(strict fib_confluence $60,354.20, score 1.0), WP1 후보 테이블 최근접 strict 레벨",
      "description": "$60,500 클러스터 하향 수용 시 도달하는 최근접 strict-tier 피보나치 컨플루언스. 7일 EQ(~$60,317) 하단 이탈을 의미해 프리미엄 과확장이 해소되는 첫 strict 하방 목표.",
      "est_hours": 10.0
    },
    {
      "seq": 4,
      "price": 60055.51,
      "type": "swing_low",
      "source": "Harmonic(bearish Bat 확인 반응 TP $60,055.51), Fibonacci(strict confluence $60,032.97), Derivatives(하방 유동성 $59,600)",
      "description": "strict/high bearish Bat가 PRZ $60,217.82-$60,510.71에서 reaction_score 0.75로 거부 확인한 1차 TP 래더. strict 피보나치 $60,032.97과 중첩되고, 롱 과밀(crowding 1.000)·fragility 0.827 해소에 따른 청산 유동성 자극 구간.",
      "est_hours": 16.0
    },
    {
      "seq": 5,
      "price": 59688.35,
      "type": "extension",
      "source": "Fibonacci(strict fib_confluence $59,688.35, score 0.85), Harmonic(TP 래더 $59,864.76/$59,556.00), Derivatives(청산 포켓 $59,600)",
      "description": "하방 가속 지속 시 strict 피보나치 확장 컨플루언스와 하모닉 TP 래더($59,864.76→$59,556.00) 및 파생 청산 포켓($59,600)이 겹치는 24h 하방 극단. 분배 markdown의 합리적 종착 반응대.",
      "est_hours": 22.0
    }
  ],
  "period_extremes": {
    "4h":  {"expected_high": 60924.70, "expected_low": 60500.00, "high_first": true},
    "8h":  {"expected_high": 60924.70, "expected_low": 60354.20, "high_first": true},
    "24h": {"expected_high": 60924.70, "expected_low": 59688.35, "high_first": true}
  },
  "triggers": {
    "bullish": {"price": 61188.00, "description": "Wyckoff 메인 레인지 상단/BC $61,188.00 위 수용 시 분배 구조 붕괴. ICT bullish BOS 시퀀스가 재활성화되며 $61,256.00·$61,931.10 향한 상승 가속으로 본 경로 폐기."},
    "bearish": {"price": 60500.00, "description": "AR $60,752.80 재이탈 후 SOW $60,561.80-Phase E $60,500.00 아래 수용 시 분배 하방 수용 확인. CVD 흡수·롱 과밀 해소와 결합해 $60,354.20→$60,055.51→$59,688.35 하락 가속."}
  },
  "scenario_invalidation": 61256.00
}
```

Raw Chairman Response
{
  "overall_signal": "bearish",
  "overall_confidence": 0.58,
  "execution_setup": {
    "setup_bias": "bearish",
    "setup_strength": 0.66,
    "active_setups": [
      "프리미엄 구간 체류: 현재가 $60,817.30은 ICT EQ $60,499.60, 7일 레인지 EQ 약 $60,317, 피보나치 0.5 $60,359.90 위에 위치",
      "파생 포지셔닝 부담: 롱 계정 비중 0.669, 롱 계정 과밀도 1.000, CVD는 +$3,733.50 증가했으나 가격 확장은 제한적",
      "하모닉 반전 위험: 후보형 bearish Butterfly 활성 PRZ $60,630.35-$61,031.56 내부, 추정 D $60,830.95와 현재가가 거의 일치",
      "확인된 하모닉 반응: strict/high bearish Bat PRZ $60,217.82-$60,510.71에서 반응 확인, 하방 TP 참조 $60,055.51, $59,864.76, $59,556.00",
      "Wyckoff 실행 조건: $60,752.80 아래 재이탈 및 $60,561.80-$60,500.00 아래 수용이 있어야 분배 Phase E 하방 수용이 재확인됨",
      "단기 bullish 구조 리스크: ICT 기준 $60,245.00 및 $60,557.80 연속 bullish BOS, 전일 고점 $60,697.60 상향 돌파 후 유지"
    ],
    "setup_vs_structure": "구조적 판정은 Wyckoff 분배 Phase E 우위로 bearish이나, 단기 ICT 구조는 bullish BOS가 연속 발생해 즉시 하방 수용은 아직 확정되지 않았다. 실행 셋업은 프리미엄, 롱 과밀, CVD 흡수, 하모닉 PRZ가 겹쳐 구조적 bearish 해석과 대체로 정렬되지만, $60,752.80 위 재진입 때문에 확인형 접근이 필요하다."
  },
  "signal_breakdown": {
    "bullish_count": 2,
    "bearish_count": 3,
    "neutral_count": 1
  },
  "key_levels": {
    "support": [
      60752.8,
      60697.6,
      60572.77,
      60561.8,
      60557.8,
      60500.0,
      60499.6,
      60473.1,
      60406.6,
      60317.0,
      60055.51,
      60032.97,
      59600.0,
      59530.7
    ],
    "resistance": [
      60924.7,
      61031.56,
      61188.0,
      61256.0,
      61931.1,
      62604.0,
      62800.0
    ]
  },
  "confluences": [
    "프리미엄 구간 합의: ICT는 EQ $60,499.60 위, Fibonacci는 0.5 $60,359.90 및 0.618 $60,406.60 위, Candlestick/Derivatives는 7일 EQ 약 $60,317 위로 모두 현재가가 프리미엄에 있다고 평가한다.",
    "$60,500-$60,572 핵심 구조 클러스터: ICT BOS 기준 $60,557.80, Wyckoff SOW $60,561.80 및 Phase E 저점 $60,500.00, Candlestick EMA20 $60,572.77, Fibonacci ret_0.786 $60,473.10이 밀집한다.",
    "$60,697-$60,753 전환대: ICT 전일 고점 $60,697.60 돌파, Wyckoff UTAD $60,697.60 및 AR/레인지 하단 $60,752.80이 겹쳐 지지·저항 전환 여부가 구조적으로 중요하다.",
    "$60,630-$61,031 상단 반응 구간: Harmonic의 bearish Butterfly 활성 PRZ $60,630.35-$61,031.56과 ICT 단기 range high $60,924.70이 중첩되어 현재 가격대가 상단 반응 구역으로 해석된다.",
    "$61,188-$61,256 구조 저항: Wyckoff 메인 레인지 상단 $61,188.00과 ICT 과거 bullish BOS 레벨 $61,256.00이 근접해 분배 해석의 핵심 상단 검증 구간이다.",
    "$62,604 공통 상위 저항: ICT, Fibonacci, Candlestick, Derivatives 모두 $62,604.00을 주요 상단 저항 또는 7일 고점으로 인식한다."
  ],
  "conflicts": [
    "ICT는 $60,245.00 및 $60,557.80 연속 bullish BOS와 전일 고점 $60,697.60 돌파를 근거로 구조를 bullish로 보지만, Wyckoff는 BC $61,188.00 → UTAD $60,697.60 → SOW $60,561.80 → Phase E $60,500.00의 분배 구조를 bearish로 본다.",
    "Fibonacci는 최근 하락 스윙 고점 $60,558 상회로 구조는 bullish라고 보지만, 실행 셋업은 $60,473.10, $60,406.60, $60,359.90 위 과확장으로 bearish 되돌림 위험을 제시한다.",
    "Candlestick은 EMA20 $60,572.77, EMA120 $60,237.05, EMA240 $60,326.63 위 거래를 bullish로 보지만, Derivatives는 롱 과밀과 CVD 다이버전스로 같은 가격대의 취약성을 bearish로 해석한다.",
    "Harmonic은 현재가가 bearish Butterfly PRZ $60,630.35-$61,031.56 내부라고 보지만, 해당 PRZ는 사전 확인 후보 성격이므로 단독으로 ICT의 bullish BOS를 무효화하지는 못한다.",
    "Wyckoff bearish 구조는 유효하지만 현재가가 AR $60,752.80 위로 재진입해 즉각적인 Phase E 하방 수용은 아직 미확정이다."
  ],
  "highest_conviction_analyst": "Wyckoff Expert — 분배 구조에 대한 가격 시퀀스가 가장 구체적이다. BC $61,188.00, AR $60,752.80, ST $61,931.10, SOW $60,561.80, Phase E $60,500.00까지 단계가 명확하며, 분배 적합도가 매우 높다. 다만 현재가가 AR $60,752.80 위에 있어 실행 확정성은 구조 확정성보다 낮다.",
  "invalidation_level": "$61,188.00 상방 회복 및 수용. 이 레벨은 Wyckoff 메인 레인지 상단이며, 그 위에서 유지되면 현재 분배 Phase E 해석은 약화된다. 보수적으로는 ICT 상단 구조 레벨 $61,256.00까지 회복 시 bearish 구조 판정은 재평가가 필요하다.",
  "executive_summary": "현재 15분 BTC 구조는 Wyckoff 기준 분배 구조가 우세하며, Phase E 라벨이 붙은 후기 분배 구간으로 진단된다. 다만 가격은 메인 레인지 하단/AR인 $60,752.80 위로 재진입해 있어 분배 하방 수용이 완전히 확인된 상태라기보다, $60,752.80-$60,561.80-$60,500.00 구간의 재수용 여부가 구조 확인 조건이다. 반대로 ICT와 Fibonacci는 $60,557.80 및 $60,558 상회, 전일 고점 $60,697.60 돌파를 근거로 단기 bullish 구조를 제시해 Wyckoff 분배 해석과 충돌한다. 실행 환경은 프리미엄 구간, 롱 과밀, CVD 흡수, bearish harmonic PRZ $60,630.35-$61,031.56이 겹쳐 bearish 셋업이 우세하나, 이는 구조적 조건이지 확정 경로는 아니다. 분배 구조의 핵심 무효화는 $61,188.00 상방 수용이며, 보수적으로는 $61,256.00 회복까지 확인해야 한다."
}
Full Result JSON
{
  "symbol": "BTC/USDT",
  "timeframe": "15m",
  "timestamp": "2026-06-28 01:00 KST",
  "last_price": 60817.3,
  "num_candles": 300,
  "stage1_analyses": {
    "ict": {
      "agent_id": "ict",
      "display_name": "ICT Trader",
      "signal": "bullish",
      "confidence": 0.68,
      "structure_bias": "bullish",
      "setup_bias": "bullish",
      "setup_score": 0.914,
      "setup_signals": [
        "현재가 $60,817.30이 EQ $60,499.60 위에 있어 프리미엄 구간에 위치",
        "전일 고점 $60,697.60 상향 돌파 후 현재가가 그 위에서 유지",
        "최근 구조 이벤트가 BOS_bullish $60,245.00 및 BOS_bullish $60,557.80로 연속 2회 bullish BOS",
        "현재가가 EMA20 $60,572.77, EMA120 $60,237.05, EMA240 $60,326.63 위에 위치",
        "Asian kill zone 저점 $60,541.10 위에서 가격 유지 중"
      ],
      "reasoning": "확정 구조는 bullish로 판단한다. 최근 BOS/CHoCH 시퀀스가 BOS_bullish → CHoCH_bearish → BOS_bullish → BOS_bullish이며, 특히 $60,245.00과 $60,557.80을 연속 상향 돌파해 단기 구조는 매수 우위다. 현재가 $60,817.30은 전일 고점 $60,697.60 위에 있으며, range EQ $60,499.60보다 높은 프리미엄 구간이므로 추격 매수보다는 $60,697.60~$60,557.80 재테스트 방어 여부가 중요하다. 다만 미체결 FVG가 없고 활성 OB도 없으며 최근 liquidity sweep이 확인되지 않아, 기관성 재축적 근거는 강하지 않고 $60,924.70 range high 및 $61,256.00 상단에서 유동성 회수 후 되돌림 위험이 있다.",
      "key_levels": {
        "support": [
          60697.6,
          60557.8,
          60499.6,
          60074.5,
          59530.7,
          58944.0,
          58288.0
        ],
        "resistance": [
          60924.7,
          61256.0,
          62604.0
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$60,557.80",
      "risk_scenario": "$60,557.80 아래로 15분 종가가 수용되면 최근 bullish BOS가 실패한 것으로 해석되며, EQ $60,499.60 하향 이탈 후 range low $60,074.50까지 되돌림이 열릴 수 있다. 이 경우 전일 고점 $60,697.60 돌파는 buy-side liquidity sweep 성격으로 바뀌며, 더 깊게는 전일 저점 $59,530.70 및 후보 bullish OB 상단 $58,944.00까지 할인 구간 재방문 가능성이 커진다.",
      "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": 0,
        "unfilled_bull_fvg_count": 0,
        "unfilled_bear_fvg_count": 0,
        "bull_fvg_ranges": [],
        "bear_fvg_ranges": [],
        "fvg_open_count": 0,
        "fvg_mitigated_count": 63,
        "fvg_open_zones": [],
        "bos_choch_events": [
          "BOS_bullish",
          "CHoCH_bearish",
          "BOS_bullish",
          "BOS_bullish"
        ],
        "bos_choch_levels": [
          {
            "type": "BOS_bullish",
            "level": 61256.0
          },
          {
            "type": "CHoCH_bearish",
            "level": 60648.0
          },
          {
            "type": "BOS_bullish",
            "level": 60245.0
          },
          {
            "type": "BOS_bullish",
            "level": 60557.8
          }
        ],
        "bos_sequence": [
          "BOS_bullish",
          "CHoCH_bearish",
          "BOS_bullish",
          "BOS_bullish"
        ],
        "consecutive_bull_bos": 2,
        "consecutive_bear_bos": 0,
        "recent_liq_sweeps": [],
        "recent_sweep_levels": [],
        "liquidity_resting": [],
        "current_zone": "premium",
        "eq_level": 60499.6,
        "range_high": 60924.7,
        "range_low": 60074.5,
        "bull_score": 8.3,
        "bear_score": 3.7,
        "setup_bias": "bullish",
        "setup_score": 0.914,
        "setup_signals": [
          "bullish BOS above $61,256.00",
          "bullish BOS above $60,245.00",
          "bullish BOS above $60,557.80",
          "broken previous day high $60,697.60"
        ],
        "retracement_direction": "bearish",
        "current_retracement_pct": 192.7,
        "deepest_retracement_pct": 192.7,
        "previous_day_high": 60697.6,
        "previous_day_low": 59530.7,
        "broken_prev_high": true,
        "broken_prev_low": false,
        "sessions": {
          "London": {
            "active": false,
            "high": null,
            "low": null
          },
          "New York": {
            "active": false,
            "high": null,
            "low": null
          },
          "Asian kill zone": {
            "active": true,
            "high": 60924.7,
            "low": 60541.1
          }
        }
      },
      "raw_llm_response": "{\n  \"signal\": \"bullish\",\n  \"confidence\": 0.68,\n  \"structure_bias\": \"bullish\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.914,\n  \"setup_signals\": [\n    \"현재가 $60,817.30이 EQ $60,499.60 위에 있어 프리미엄 구간에 위치\",\n    \"전일 고점 $60,697.60 상향 돌파 후 현재가가 그 위에서 유지\",\n    \"최근 구조 이벤트가 BOS_bullish $60,245.00 및 BOS_bullish $60,557.80로 연속 2회 bullish BOS\",\n    \"현재가가 EMA20 $60,572.77, EMA120 $60,237.05, EMA240 $60,326.63 위에 위치\",\n    \"Asian kill zone 저점 $60,541.10 위에서 가격 유지 중\"\n  ],\n  \"reasoning\": \"확정 구조는 bullish로 판단한다. 최근 BOS/CHoCH 시퀀스가 BOS_bullish → CHoCH_bearish → BOS_bullish → BOS_bullish이며, 특히 $60,245.00과 $60,557.80을 연속 상향 돌파해 단기 구조는 매수 우위다. 현재가 $60,817.30은 전일 고점 $60,697.60 위에 있으며, range EQ $60,499.60보다 높은 프리미엄 구간이므로 추격 매수보다는 $60,697.60~$60,557.80 재테스트 방어 여부가 중요하다. 다만 미체결 FVG가 없고 활성 OB도 없으며 최근 liquidity sweep이 확인되지 않아, 기관성 재축적 근거는 강하지 않고 $60,924.70 range high 및 $61,256.00 상단에서 유동성 회수 후 되돌림 위험이 있다.\",\n  \"key_levels\": {\n    \"support\": [\n      60697.6,\n      60557.8,\n      60499.6,\n      60074.5,\n      59530.7,\n      58944.0,\n      58288.0\n    ],\n    \"resistance\": [\n      60924.7,\n      61256.0,\n      62604.0\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$60,557.80\",\n  \"risk_scenario\": \"$60,557.80 아래로 15분 종가가 수용되면 최근 bullish BOS가 실패한 것으로 해석되며, EQ $60,499.60 하향 이탈 후 range low $60,074.50까지 되돌림이 열릴 수 있다. 이 경우 전일 고점 $60,697.60 돌파는 buy-side liquidity sweep 성격으로 바뀌며, 더 깊게는 전일 저점 $59,530.70 및 후보 bullish OB 상단 $58,944.00까지 할인 구간 재방문 가능성이 커진다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "fibonacci": {
      "agent_id": "fibonacci",
      "display_name": "Fibonacci Analyst",
      "signal": "neutral",
      "confidence": 0.56,
      "structure_bias": "bullish",
      "setup_bias": "bearish",
      "setup_score": 0.62,
      "setup_signals": [
        "현재가 $60,817.30가 스윙 EQ/0.5 되돌림 $60,359.90 위에 있어 프리미엄 구간에 위치",
        "현재가가 ret_0.786 $60,473.10 및 골든비율 ret_0.618 $60,406.60 위에 있어 단기 과확장 상태",
        "핵심 피보나치 컨플루언스 $60,354.20 상단 돌파 후 재시험이 아직 확인되지 않음",
        "가장 가까운 피보나치 지지 ret_0.786 $60,473.10까지 약 0.57% 거리로, 단기 되돌림 여지가 존재"
      ],
      "reasoning": "확정 구조 관점에서는 현재가 $60,817.30가 최근 하락 스윙의 고점 $60,558을 상회했기 때문에 단기 구조는 bullish로 해석된다. 다만 실행 셋업 관점에서는 가격이 EQ인 ret_0.5 $60,359.90, 골든비율 ret_0.618 $60,406.60, ret_0.786 $60,473.10 모두 위에 있어 프리미엄 구간 과확장 상태이며, $60,354.20 컨플루언스 클러스터 재시험 가능성이 남아 있다. 가장 중요한 지지대는 ret_0.786 $60,473.10과 0.618 골든비율 $60,406.60이며, 이 구간이 유지되면 상승 구조가 보존된다. 반대로 $60,406.60을 하향 이탈하면 $60,359.90, $60,313.20, 더 아래로는 확장 클러스터 $60,032.97까지 되돌림 위험이 커진다.",
      "key_levels": {
        "support": [
          60473.1,
          60406.6,
          60359.9,
          60313.2,
          60032.97
        ],
        "resistance": [
          62604.0
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$60,406.60",
      "risk_scenario": "가격이 ret_0.786 $60,473.10을 지키지 못하고 골든비율 $60,406.60 아래로 내려가면, 현재의 bullish 구조 우위는 약화되며 $60,359.90-$60,313.20 컨플루언스 지지 재시험이 우선된다. 이 구간마저 무너지면 확장 지지 클러스터인 $60,032.97 및 ext_1.618 $59,917.40까지 하락 압력이 확대될 수 있다.",
      "data_quality": "high",
      "metrics": {
        "swing_pair": "High→Low: $60,558 → $60,162",
        "direction": "down",
        "nearest_fib": "ret_0.786",
        "nearest_fib_price": 60473.1,
        "nearest_fib_distance": 0.57,
        "golden_ratio_level": 60406.6,
        "fib_ret_382": 60313.2,
        "fib_ret_618": 60406.6,
        "confluence_zones": [
          {
            "price": 60354.2,
            "count": 6,
            "levels": [
              "ret_0.236",
              "ret_0.382",
              "ret_0.5",
              "ret_0.5",
              "ret_0.618",
              "ret_0.786"
            ],
            "cluster_score": 1.0
          },
          {
            "price": 60032.97,
            "count": 4,
            "levels": [
              "ext_1.618",
              "ext_1.414",
              "ext_1.272",
              "ext_1.0"
            ],
            "cluster_score": 1.0
          },
          {
            "price": 59688.35,
            "count": 3,
            "levels": [
              "ext_2.618",
              "ext_2.0",
              "ret_0.382"
            ],
            "cluster_score": 0.85
          }
        ],
        "support_levels": [
          60473.0988,
          60406.604400000004,
          60359.9
        ],
        "resistance_levels": [],
        "level_candidates": [
          {
            "name": "ret_0.236",
            "price": 60255.41,
            "distance_pct": 0.92,
            "is_support": true,
            "cluster_score": 1.0
          },
          {
            "name": "ret_0.382",
            "price": 60313.2,
            "distance_pct": 0.83,
            "is_support": true,
            "cluster_score": 1.0
          },
          {
            "name": "ret_0.5",
            "price": 60359.9,
            "distance_pct": 0.75,
            "is_support": true,
            "cluster_score": 1.0
          },
          {
            "name": "ret_0.618",
            "price": 60406.6,
            "distance_pct": 0.68,
            "is_support": true,
            "cluster_score": 1.0
          },
          {
            "name": "ret_0.786",
            "price": 60473.1,
            "distance_pct": 0.57,
            "is_support": true,
            "cluster_score": 1.0
          },
          {
            "name": "ext_1.0",
            "price": 60162.0,
            "distance_pct": 1.08,
            "is_support": true,
            "cluster_score": 1.0
          },
          {
            "name": "ext_1.272",
            "price": 60054.34,
            "distance_pct": 1.25,
            "is_support": true,
            "cluster_score": 1.0
          },
          {
            "name": "ext_1.414",
            "price": 59998.14,
            "distance_pct": 1.35,
            "is_support": true,
            "cluster_score": 1.0
          },
          {
            "name": "ext_1.618",
            "price": 59917.4,
            "distance_pct": 1.48,
            "is_support": true,
            "cluster_score": 1.0
          },
          {
            "name": "ext_2.0",
            "price": 59766.2,
            "distance_pct": 1.73,
            "is_support": true,
            "cluster_score": 1.0
          }
        ],
        "confluence_quality": 1.0,
        "fib_reaction_state": "approaching",
        "reaction_probability": 0.45
      },
      "raw_llm_response": "{\n  \"signal\": \"neutral\",\n  \"confidence\": 0.56,\n  \"structure_bias\": \"bullish\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.62,\n  \"setup_signals\": [\n    \"현재가 $60,817.30가 스윙 EQ/0.5 되돌림 $60,359.90 위에 있어 프리미엄 구간에 위치\",\n    \"현재가가 ret_0.786 $60,473.10 및 골든비율 ret_0.618 $60,406.60 위에 있어 단기 과확장 상태\",\n    \"핵심 피보나치 컨플루언스 $60,354.20 상단 돌파 후 재시험이 아직 확인되지 않음\",\n    \"가장 가까운 피보나치 지지 ret_0.786 $60,473.10까지 약 0.57% 거리로, 단기 되돌림 여지가 존재\"\n  ],\n  \"reasoning\": \"확정 구조 관점에서는 현재가 $60,817.30가 최근 하락 스윙의 고점 $60,558을 상회했기 때문에 단기 구조는 bullish로 해석된다. 다만 실행 셋업 관점에서는 가격이 EQ인 ret_0.5 $60,359.90, 골든비율 ret_0.618 $60,406.60, ret_0.786 $60,473.10 모두 위에 있어 프리미엄 구간 과확장 상태이며, $60,354.20 컨플루언스 클러스터 재시험 가능성이 남아 있다. 가장 중요한 지지대는 ret_0.786 $60,473.10과 0.618 골든비율 $60,406.60이며, 이 구간이 유지되면 상승 구조가 보존된다. 반대로 $60,406.60을 하향 이탈하면 $60,359.90, $60,313.20, 더 아래로는 확장 클러스터 $60,032.97까지 되돌림 위험이 커진다.\",\n  \"key_levels\": {\n    \"support\": [\n      60473.1,\n      60406.6,\n      60359.9,\n      60313.2,\n      60032.97\n    ],\n    \"resistance\": [\n      62604.0\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$60,406.60\",\n  \"risk_scenario\": \"가격이 ret_0.786 $60,473.10을 지키지 못하고 골든비율 $60,406.60 아래로 내려가면, 현재의 bullish 구조 우위는 약화되며 $60,359.90-$60,313.20 컨플루언스 지지 재시험이 우선된다. 이 구간마저 무너지면 확장 지지 클러스터인 $60,032.97 및 ext_1.618 $59,917.40까지 하락 압력이 확대될 수 있다.\",\n  \"data_quality\": \"high\"\n}"
    },
    "candlestick": {
      "agent_id": "candlestick",
      "display_name": "Candlestick Reader",
      "signal": "bullish",
      "confidence": 0.58,
      "structure_bias": "neutral",
      "setup_bias": "bullish",
      "setup_score": 0.62,
      "setup_signals": [
        "현재가 $60,817.30이 EMA20 $60,572.77, EMA120 $60,237.05, EMA240 $60,326.63 위에서 거래되며 단기 수요 반응 유지",
        "7일 고가 $62,604.00와 저가 $58,030.00의 EQ 약 $60,317.00 위에 위치해 프리미엄 구간 진입, 단기 추격 매수 리스크 존재",
        "최근 300개 중 마지막 구간에서 bullish_engulfing@299 발생, 다만 품질 0.424로 후보 등급이며 거래량 확인 없음",
        "bullish_engulfing@292의 품질이 0.503으로 최근 패턴 중 최상이나 high_volume_patterns가 없어 구조 전환 확정 신호는 아님",
        "bull_score 2.10이 bear_score 0.60보다 우세해 단기 매수 셋업이 상대적으로 강함"
      ],
      "reasoning": "현재 BTC는 $60,817.30으로 EMA20 $60,572.77, EMA120 $60,237.05, EMA240 $60,326.63 위에 있어 단기적으로 매수 우위가 유지되고 있습니다. 최근 패턴은 bullish_engulfing@299와 bullish_engulfing@292가 확인되었고, bull_score 2.10이 bear_score 0.60을 크게 앞서므로 캔들 흐름은 약한 bullish 쪽입니다. 다만 최고 품질 패턴도 0.503에 불과하고 high_volume_patterns가 없기 때문에 강한 추세 확정이라기보다 후보성 반등 셋업으로 봐야 합니다. 구조적으로는 BOS나 CHoCH 확정 데이터가 없으므로 structure_bias는 bullish가 아닌 neutral로 평가하며, $60,317 부근 EQ 위 프리미엄 구간이라는 점은 단기 되돌림 리스크입니다.",
      "key_levels": {
        "support": [
          60572.77,
          60326.63,
          60317.0,
          60237.05,
          58030.0
        ],
        "resistance": [
          62604.0
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$60,237.05",
      "risk_scenario": "가격이 EMA120 $60,237.05 아래로 15분봉 종가 이탈하면 최근 bullish engulfing 셋업은 실패로 해석되며, EQ $60,317.00 재진입 실패와 함께 $58,030.00 방향의 하방 유동성 탐색이 열릴 수 있습니다.",
      "data_quality": "medium",
      "metrics": {
        "total_patterns_detected": 144,
        "recent_patterns": 4,
        "pattern_list": [
          "bullish_engulfing@292",
          "bullish_engulfing@299",
          "bearish_harami@291",
          "bullish_harami@294"
        ],
        "atr_value": 139.44,
        "vol_avg_20": 1011.02,
        "high_volume_patterns": [],
        "pattern_candidates": [
          {
            "pattern": "bullish_engulfing",
            "signal": "bullish",
            "pattern_quality": 0.503,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "bearish_harami",
            "signal": "bearish",
            "pattern_quality": 0.48,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "bullish_harami",
            "signal": "bullish",
            "pattern_quality": 0.446,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "bullish_engulfing",
            "signal": "bullish",
            "pattern_quality": 0.424,
            "tier": "candidate",
            "high_volume": false
          }
        ],
        "best_pattern_quality": 0.503,
        "bull_score": 2.1,
        "bear_score": 0.6
      },
      "raw_llm_response": "{\n  \"signal\": \"bullish\",\n  \"confidence\": 0.58,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.62,\n  \"setup_signals\": [\n    \"현재가 $60,817.30이 EMA20 $60,572.77, EMA120 $60,237.05, EMA240 $60,326.63 위에서 거래되며 단기 수요 반응 유지\",\n    \"7일 고가 $62,604.00와 저가 $58,030.00의 EQ 약 $60,317.00 위에 위치해 프리미엄 구간 진입, 단기 추격 매수 리스크 존재\",\n    \"최근 300개 중 마지막 구간에서 bullish_engulfing@299 발생, 다만 품질 0.424로 후보 등급이며 거래량 확인 없음\",\n    \"bullish_engulfing@292의 품질이 0.503으로 최근 패턴 중 최상이나 high_volume_patterns가 없어 구조 전환 확정 신호는 아님\",\n    \"bull_score 2.10이 bear_score 0.60보다 우세해 단기 매수 셋업이 상대적으로 강함\"\n  ],\n  \"reasoning\": \"현재 BTC는 $60,817.30으로 EMA20 $60,572.77, EMA120 $60,237.05, EMA240 $60,326.63 위에 있어 단기적으로 매수 우위가 유지되고 있습니다. 최근 패턴은 bullish_engulfing@299와 bullish_engulfing@292가 확인되었고, bull_score 2.10이 bear_score 0.60을 크게 앞서므로 캔들 흐름은 약한 bullish 쪽입니다. 다만 최고 품질 패턴도 0.503에 불과하고 high_volume_patterns가 없기 때문에 강한 추세 확정이라기보다 후보성 반등 셋업으로 봐야 합니다. 구조적으로는 BOS나 CHoCH 확정 데이터가 없으므로 structure_bias는 bullish가 아닌 neutral로 평가하며, $60,317 부근 EQ 위 프리미엄 구간이라는 점은 단기 되돌림 리스크입니다.\",\n  \"key_levels\": {\n    \"support\": [\n      60572.77,\n      60326.63,\n      60317.0,\n      60237.05,\n      58030.0\n    ],\n    \"resistance\": [\n      62604.0\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$60,237.05\",\n  \"risk_scenario\": \"가격이 EMA120 $60,237.05 아래로 15분봉 종가 이탈하면 최근 bullish engulfing 셋업은 실패로 해석되며, EQ $60,317.00 재진입 실패와 함께 $58,030.00 방향의 하방 유동성 탐색이 열릴 수 있습니다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "wyckoff": {
      "agent_id": "wyckoff",
      "display_name": "Wyckoff Expert",
      "signal": "bearish",
      "confidence": 0.69,
      "structure_bias": "bearish",
      "setup_bias": "neutral",
      "setup_score": 0.35,
      "setup_signals": [
        "현재가 $60,817.30이 메인 레인지 저항/지지 전환선인 AR $60,752.80 위로 재진입하여 즉시 하방 추세 추종 셋업은 약화됨",
        "Phase E 후보 저점 $60,500.00 및 SOW $60,561.80 아래에서 후속 수용이 아직 확인되지 않아 Phase E 진행은 구조적으로는 유효하나 단기 실행 관점에서는 미확정",
        "현재가는 메인 레인지 $60,752.80~$61,188.00 내부 하단부에 위치하여 프리미엄 매도 셋업보다는 재시험/리젝션 확인이 필요한 구간",
        "상방으로는 BC $61,188.00 및 ST $61,931.10 회복 전까지 분배 구조의 공급 우위가 유지됨"
      ],
      "reasoning": "15분 구조는 regime=DIS, dis_score=100.0, regime_fitness=1.000으로 분배 구조가 우세하며, 이벤트 체인은 BC $61,188.00 → AR $60,752.80 → ST $61,931.10 → SOW_IN_PHASE_B $58,030.00 → UT $60,734.00 → UTAD $60,697.60 → SOW $60,561.80 → Phase E $60,500.00로 읽힌다. 구조적으로는 Phase E까지 라벨링되어 bearish이지만, 현재가 $60,817.30은 AR/레인지 하단 $60,752.80 위로 다시 올라와 있어 즉각적인 하방 수용은 아직 충분히 확인되지 않았다. 따라서 structure_bias는 bearish로 유지하되, setup_bias는 하단 재진입 이후 $60,752.80 및 $60,561.80 재이탈 확인이 필요한 neutral로 평가한다. 하방 재개를 확인하려면 $60,752.80 아래 재이탈 후 $60,561.80 및 $60,500.00 아래 수용이 필요하며, 반대로 $61,188.00 회복은 분배 하단 실패 가능성을 높인다.",
      "key_levels": {
        "support": [
          60752.8,
          60561.8,
          60500.0,
          58030.0
        ],
        "resistance": [
          61188.0,
          61931.1,
          62604.0
        ]
      },
      "time_horizon": "short to medium term",
      "invalidation_level": "$61,931.10",
      "risk_scenario": "$60,752.80 위에서 가격이 계속 수용되고 $61,188.00을 회복하면 Phase E 하방 진행은 실패로 변하며, 이후 $61,931.10 ST 고점까지 공급 테스트가 열릴 수 있다. 특히 $61,931.10 위에서 15분 구조적 수용이 나오면 현재 분배 해석은 무효화되고 재축적 또는 상방 레인지 확장 시나리오를 재평가해야 한다.",
      "data_quality": "high",
      "metrics": {
        "acc_score": 96.2,
        "dis_score": 100.0,
        "regime": "DIS",
        "regime_state": "dis_candidate",
        "structure_bias": "bearish",
        "phase_context": "dis_candidate / distribution / Phase E",
        "phases_detected": [
          "BC",
          "AR",
          "ST",
          "SOW_IN_PHASE_B",
          "UT",
          "UTAD",
          "SOW",
          "Phase E"
        ],
        "last_phase": "Phase E",
        "phase_candidates": [
          {
            "label": "BC",
            "side": "high",
            "idx": 31,
            "price": 61188.0,
            "color": "#ffd166"
          },
          {
            "label": "AR",
            "side": "low",
            "idx": 38,
            "price": 60752.8,
            "color": "#06d6a0"
          },
          {
            "label": "ST",
            "side": "high",
            "idx": 74,
            "price": 61931.1,
            "color": "#118ab2"
          },
          {
            "label": "SOW_IN_PHASE_B",
            "side": "low",
            "idx": 99,
            "price": 58030.0,
            "color": "#ef476f"
          },
          {
            "label": "UT",
            "side": "high",
            "idx": 170,
            "price": 60734.0,
            "color": "#f9844a"
          },
          {
            "label": "UTAD",
            "side": "high",
            "idx": 292,
            "price": 60697.6,
            "color": "#f9844a"
          },
          {
            "label": "SOW",
            "side": "low",
            "idx": 293,
            "price": 60561.8,
            "color": "#ef476f"
          },
          {
            "label": "Phase E",
            "side": "low",
            "idx": 294,
            "price": 60500.0,
            "color": "#7209b7"
          }
        ],
        "phase_structures": [
          {
            "structure_id": "15m_cycle_1",
            "sequence": 1,
            "timeframe": "15m",
            "regime": "distribution",
            "role": "current_structure_candidate",
            "is_active": true,
            "is_completed": false,
            "is_confirmed": true,
            "structure_bias": "bearish",
            "phase_context": "distribution",
            "start_idx": 31,
            "end_idx": 294,
            "phase_count": 8,
            "phases": [
              {
                "label": "BC",
                "side": "high",
                "idx": 31,
                "price": 61188.0,
                "color": "#ffd166",
                "dt": "2026-06-25 05:45:00+09:00"
              },
              {
                "label": "AR",
                "side": "low",
                "idx": 38,
                "price": 60752.8,
                "color": "#06d6a0",
                "dt": "2026-06-25 07:30:00+09:00"
              },
              {
                "label": "ST",
                "side": "high",
                "idx": 74,
                "price": 61931.1,
                "color": "#118ab2",
                "dt": "2026-06-25 16:30:00+09:00"
              },
              {
                "label": "SOW_IN_PHASE_B",
                "side": "low",
                "idx": 99,
                "price": 58030.0,
                "color": "#ef476f",
                "dt": "2026-06-25 22:45:00+09:00"
              },
              {
                "label": "UT",
                "side": "high",
                "idx": 170,
                "price": 60734.0,
                "color": "#f9844a",
                "dt": "2026-06-26 16:30:00+09:00"
              },
              {
                "label": "UTAD",
                "side": "high",
                "idx": 292,
                "price": 60697.6,
                "color": "#f9844a",
                "dt": "2026-06-27 23:00:00+09:00"
              },
              {
                "label": "SOW",
                "side": "low",
                "idx": 293,
                "price": 60561.8,
                "color": "#ef476f",
                "dt": "2026-06-27 23:15:00+09:00"
              },
              {
                "label": "Phase E",
                "side": "low",
                "idx": 294,
                "price": 60500.0,
                "color": "#7209b7",
                "dt": "2026-06-27 23:30:00+09:00"
              }
            ]
          }
        ],
        "active_structure_id": "15m_cycle_1",
        "primary_structure_id": "15m_cycle_1",
        "structure_count": 1,
        "regime_fitness": 1.0,
        "current_event": "Phase E",
        "major_phase": "E",
        "pos_in_range": 0.5,
        "main_range_low": 60752.8,
        "main_range_high": 61188.0
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.69,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"neutral\",\n  \"setup_score\": 0.35,\n  \"setup_signals\": [\n    \"현재가 $60,817.30이 메인 레인지 저항/지지 전환선인 AR $60,752.80 위로 재진입하여 즉시 하방 추세 추종 셋업은 약화됨\",\n    \"Phase E 후보 저점 $60,500.00 및 SOW $60,561.80 아래에서 후속 수용이 아직 확인되지 않아 Phase E 진행은 구조적으로는 유효하나 단기 실행 관점에서는 미확정\",\n    \"현재가는 메인 레인지 $60,752.80~$61,188.00 내부 하단부에 위치하여 프리미엄 매도 셋업보다는 재시험/리젝션 확인이 필요한 구간\",\n    \"상방으로는 BC $61,188.00 및 ST $61,931.10 회복 전까지 분배 구조의 공급 우위가 유지됨\"\n  ],\n  \"reasoning\": \"15분 구조는 regime=DIS, dis_score=100.0, regime_fitness=1.000으로 분배 구조가 우세하며, 이벤트 체인은 BC $61,188.00 → AR $60,752.80 → ST $61,931.10 → SOW_IN_PHASE_B $58,030.00 → UT $60,734.00 → UTAD $60,697.60 → SOW $60,561.80 → Phase E $60,500.00로 읽힌다. 구조적으로는 Phase E까지 라벨링되어 bearish이지만, 현재가 $60,817.30은 AR/레인지 하단 $60,752.80 위로 다시 올라와 있어 즉각적인 하방 수용은 아직 충분히 확인되지 않았다. 따라서 structure_bias는 bearish로 유지하되, setup_bias는 하단 재진입 이후 $60,752.80 및 $60,561.80 재이탈 확인이 필요한 neutral로 평가한다. 하방 재개를 확인하려면 $60,752.80 아래 재이탈 후 $60,561.80 및 $60,500.00 아래 수용이 필요하며, 반대로 $61,188.00 회복은 분배 하단 실패 가능성을 높인다.\",\n  \"key_levels\": {\n    \"support\": [\n      60752.8,\n      60561.8,\n      60500.0,\n      58030.0\n    ],\n    \"resistance\": [\n      61188.0,\n      61931.1,\n      62604.0\n    ]\n  },\n  \"time_horizon\": \"short to medium term\",\n  \"invalidation_level\": \"$61,931.10\",\n  \"risk_scenario\": \"$60,752.80 위에서 가격이 계속 수용되고 $61,188.00을 회복하면 Phase E 하방 진행은 실패로 변하며, 이후 $61,931.10 ST 고점까지 공급 테스트가 열릴 수 있다. 특히 $61,931.10 위에서 15분 구조적 수용이 나오면 현재 분배 해석은 무효화되고 재축적 또는 상방 레인지 확장 시나리오를 재평가해야 한다.\",\n  \"data_quality\": \"high\"\n}"
    },
    "derivatives": {
      "agent_id": "derivatives",
      "display_name": "Derivatives Trader",
      "signal": "bearish",
      "confidence": 0.62,
      "structure_bias": "neutral",
      "setup_bias": "bearish",
      "setup_score": 0.68,
      "setup_signals": [
        "프리미엄 구간: 현재가 $60,817.30가 7일 레인지 EQ $60,317 위에 위치",
        "롱 계정 과밀: long_account_latest 0.669, account_long_crowding 1.000으로 롱 포지셔닝이 혼잡",
        "CVD 다이버전스 0.700: CVD는 +$3,733.50 증가했지만 가격 상승은 24h +0.86%에 그쳐 공격적 매수 대비 가격 반응이 약함",
        "OI 소폭 증가: oi_trend 0.519, oi_change_pct_24h 0.186으로 신규 포지션 유입은 있으나 방향 확신은 약함",
        "선물 베이시스 약세: spot_futures_basis_pct -0.0374로 선물이 현물 대비 할인 상태",
        "하방 청산 유동성: $59,600, $58,400, $58,000에 주요 하방 유동성 존재"
      ],
      "reasoning": "현재 BTC는 $60,817.30으로 EMA20 $60,572.77, EMA120 $60,237.05, EMA240 $60,326.63 위에 있어 단기 가격은 중립 이상이지만, 명확한 BOS나 CHoCH 확인은 없어 구조는 중립으로 본다. 그러나 7일 고점 $62,604와 저점 $58,030의 EQ인 약 $60,317 위 프리미엄 구간에서 롱 계정 비중이 0.669까지 쏠려 있고, account_long_crowding이 1.000이라 단기적으로는 롱 과밀 해소 리스크가 크다. CVD가 +$3,733.50 증가했음에도 가격은 $61k 부근에서 강하게 확장하지 못해 CVD divergence 0.700의 흡수성 약세 신호가 보인다. 하방에는 $59,600, $58,400, $58,000 청산 유동성이 촘촘하고 fragility_score 0.827로 포지션 취약성이 높아, 파생 데이터 기준 향후 4-8시간은 하방 테스트 가능성이 우세하다.",
      "key_levels": {
        "support": [
          60572.77,
          60317,
          60237.05,
          59600,
          58400,
          58000
        ],
        "resistance": [
          62604,
          62800,
          66400,
          66600,
          66900
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "15분 종가 기준 $62,800 상방 안착",
      "risk_scenario": "$62,604 7일 고점을 회복하고 $62,800 상방 청산대를 흡수한 뒤 안착하면, 현재의 롱 과밀 약세 셋업은 무효화되고 숏 커버링이 $66,400-$66,900 유동성 구간까지 확장될 수 있다.",
      "data_quality": "medium",
      "metrics": {
        "cvd_divergence": 0.7,
        "cvd_change": 3733.496,
        "oi_trend": 0.519,
        "oi_change_pct_24h": 0.186,
        "oi_latest": 104488.36,
        "funding_pressure": 0.444,
        "funding_avg": 5.616e-05,
        "funding_change_24h": -3.024e-05,
        "long_account_ratio": 0.673,
        "short_account_ratio": 0.327,
        "long_account_latest": 0.669,
        "short_account_latest": 0.331,
        "long_account_change_24h": -0.0083,
        "short_account_change_24h": 0.0083,
        "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.491,
        "spot_futures_basis_pct": -0.0374,
        "basis_change_lookback": -0.0009,
        "aggregate_score": 0.431,
        "bull_signals": 1,
        "bear_signals": 2,
        "liq_below": [
          [
            59600,
            1215.2623522499998
          ],
          [
            58400,
            1203.4435389999999
          ],
          [
            58000,
            1125.4636360000004
          ]
        ],
        "liq_above": [
          [
            62800,
            1223.5283370000002
          ],
          [
            66400,
            1495.51348125
          ],
          [
            66600,
            1139.9316287499998
          ]
        ],
        "strongest_liq_level": 66900,
        "fragility_score": 0.827,
        "positioning_extreme": "balanced"
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.62,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.68,\n  \"setup_signals\": [\n    \"프리미엄 구간: 현재가 $60,817.30가 7일 레인지 EQ $60,317 위에 위치\",\n    \"롱 계정 과밀: long_account_latest 0.669, account_long_crowding 1.000으로 롱 포지셔닝이 혼잡\",\n    \"CVD 다이버전스 0.700: CVD는 +$3,733.50 증가했지만 가격 상승은 24h +0.86%에 그쳐 공격적 매수 대비 가격 반응이 약함\",\n    \"OI 소폭 증가: oi_trend 0.519, oi_change_pct_24h 0.186으로 신규 포지션 유입은 있으나 방향 확신은 약함\",\n    \"선물 베이시스 약세: spot_futures_basis_pct -0.0374로 선물이 현물 대비 할인 상태\",\n    \"하방 청산 유동성: $59,600, $58,400, $58,000에 주요 하방 유동성 존재\"\n  ],\n  \"reasoning\": \"현재 BTC는 $60,817.30으로 EMA20 $60,572.77, EMA120 $60,237.05, EMA240 $60,326.63 위에 있어 단기 가격은 중립 이상이지만, 명확한 BOS나 CHoCH 확인은 없어 구조는 중립으로 본다. 그러나 7일 고점 $62,604와 저점 $58,030의 EQ인 약 $60,317 위 프리미엄 구간에서 롱 계정 비중이 0.669까지 쏠려 있고, account_long_crowding이 1.000이라 단기적으로는 롱 과밀 해소 리스크가 크다. CVD가 +$3,733.50 증가했음에도 가격은 $61k 부근에서 강하게 확장하지 못해 CVD divergence 0.700의 흡수성 약세 신호가 보인다. 하방에는 $59,600, $58,400, $58,000 청산 유동성이 촘촘하고 fragility_score 0.827로 포지션 취약성이 높아, 파생 데이터 기준 향후 4-8시간은 하방 테스트 가능성이 우세하다.\",\n  \"key_levels\": {\n    \"support\": [\n      60572.77,\n      60317,\n      60237.05,\n      59600,\n      58400,\n      58000\n    ],\n    \"resistance\": [\n      62604,\n      62800,\n      66400,\n      66600,\n      66900\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"15분 종가 기준 $62,800 상방 안착\",\n  \"risk_scenario\": \"$62,604 7일 고점을 회복하고 $62,800 상방 청산대를 흡수한 뒤 안착하면, 현재의 롱 과밀 약세 셋업은 무효화되고 숏 커버링이 $66,400-$66,900 유동성 구간까지 확장될 수 있다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "harmonic": {
      "agent_id": "harmonic",
      "display_name": "Harmonic Specialist",
      "signal": "bearish",
      "confidence": 0.62,
      "structure_bias": "neutral",
      "setup_bias": "bearish",
      "setup_score": 0.67,
      "setup_signals": [
        "현재가 $60,817.30이 후보형 bearish Butterfly 활성 PRZ $60,630.35-$61,031.56 내부에 위치, 중심 D 추정값 $60,830.95와 불과 약 0.02% 거리",
        "strict/high bearish Bat 완료 패턴이 PRZ $60,217.82-$60,510.71에서 확인 반응 발생: reaction_score 0.75, AD 0.236 반응 도달 및 PRZ 중심 거부 확인",
        "strict/high bearish Butterfly 형성 PRZ $60,292.09-$60,530.47, score 0.935, XAB 0.7763으로 Butterfly 기준 0.786에 근접",
        "strict/high bearish Gartley 형성 PRZ $60,179.37-$60,549.45, score 0.914, XAB 0.6067로 Gartley 기준 0.618에 근접",
        "검증된 bearish Bat TP ladder가 $60,055.51 → $59,864.76 → $59,556.00으로 하방 반응 목표를 제시"
      ],
      "reasoning": "구조_bias는 중립으로 본다. 제공 데이터에는 확정 BOS/CHoCH 또는 상위 구조 수용이 없고, 하모닉은 독립적인 구조 판정 엔진이 아니기 때문이다. 반면 setup_bias는 bearish다. 현재가는 $60,817.30으로 후보형 bearish Butterfly 활성 PRZ $60,630.35-$61,031.56 안에 있으며, 동시에 strict/high bearish Bat 완료 패턴은 $60,217.82-$60,510.71 PRZ에서 rejection 확인과 reaction_score 0.75를 기록했다. 또한 strict/high Butterfly와 Gartley의 하방 PRZ가 각각 $60,292.09-$60,530.47, $60,179.37-$60,549.45에 겹쳐 있어, $60.2k-$60.55k 재진입 시 하방 TP ladder $60,055.51, $59,864.76, $59,556.00이 유효한 반응 목표가 된다.",
      "key_levels": {
        "support": [
          60471.01,
          60248.64,
          60055.51,
          59864.76,
          59556.0,
          59933.1
        ],
        "resistance": [
          60830.95,
          61031.56,
          60777.4,
          60549.45,
          60510.71
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "61031.56",
      "risk_scenario": "$61,031.56 상단을 강하게 돌파하고 15분봉/1시간봉 기준 수용이 확인되면 현재 bearish PRZ 반응 시나리오는 실패로 간주된다. 이 경우 후보형 Butterfly의 D-zone 방어 실패로 숏 커버링이 발생할 수 있으며, 다음 유동성 목표는 7일 고점 $62,604.00 방향으로 확장될 수 있다.",
      "data_quality": "high",
      "metrics": {
        "patterns_found": 68,
        "completed_patterns_found": 25,
        "forming_d_prz_found": 43,
        "swing_orders_scanned": [
          3,
          5,
          8
        ],
        "swing_search_window": 34,
        "multiscale_swings_scanned": 55,
        "swing_highs_scanned": 28,
        "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": 17,
          "medium": 27,
          "low": 24
        },
        "prz_status_counts": {
          "active": 15,
          "nearby": 7,
          "watch": 14,
          "far": 32,
          "forming": 22
        },
        "high_confluence_prz_count": 38,
        "strict_patterns_found": 34,
        "candidate_patterns_found": 34,
        "active_patterns_at_prz": 15,
        "nearby_patterns": 7,
        "all_patterns": [
          "butterfly",
          "bat",
          "gartley",
          "gartley",
          "shark",
          "shark",
          "crab",
          "shark",
          "bat",
          "bat",
          "bat",
          "crab",
          "butterfly",
          "butterfly",
          "gartley",
          "crab",
          "gartley",
          "crab",
          "gartley",
          "gartley",
          "bat",
          "bat",
          "butterfly",
          "gartley",
          "butterfly",
          "shark",
          "butterfly",
          "butterfly",
          "gartley",
          "bat",
          "shark",
          "crab",
          "crab",
          "crab",
          "crab",
          "bat",
          "bat",
          "crab",
          "crab",
          "gartley",
          "gartley",
          "crab",
          "shark",
          "butterfly",
          "crab",
          "crab",
          "shark",
          "gartley",
          "bat",
          "crab",
          "bat",
          "shark",
          "bat",
          "butterfly",
          "butterfly",
          "shark",
          "shark",
          "crab",
          "crab",
          "bat",
          "shark",
          "butterfly",
          "crab",
          "crab",
          "crab",
          "crab",
          "shark",
          "butterfly"
        ],
        "all_signals": [
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish"
        ],
        "best_pattern": "butterfly",
        "best_pattern_quality": "strict",
        "best_quality": "high",
        "best_pattern_score": 0.935,
        "best_completion_status": "forming",
        "nearest_pattern": "butterfly",
        "nearest_prz": 60830.95,
        "price_to_prz": 0.02,
        "prz_range": [
          60630.35,
          61031.56
        ],
        "council_relevant_prz_count": 3,
        "directional_influence_prz_count": 3,
        "confirmed_reaction_prz_count": 1,
        "validated_harmonic_tp_count": 1,
        "pattern_candidates": [
          {
            "pattern": "butterfly",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.935,
            "ratio_score": 0.955,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 60411.28,
            "prz_range": [
              60292.09,
              60530.47
            ],
            "prz_width_pct": 0.395,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.67,
            "price_to_prz_pct_raw": -0.6676,
            "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": "butterfly",
              "d_price": 60411.28,
              "a_price": 59933.1,
              "tp1_ad_382": 60228.62,
              "tp2_ad_618": 60115.77,
              "tp3_a_or_structure_liquidity": 59933.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7763,
              "ABC": 0.4001
            },
            "x_price": 60234.8,
            "x_idx": 157,
            "x_order": 8,
            "a_price": 59933.1,
            "a_idx": 205,
            "a_order": 3,
            "b_price": 60167.3,
            "b_idx": 236,
            "b_order": 8,
            "c_price": 60261.0,
            "c_idx": 273,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.914,
            "ratio_score": 0.933,
            "prz_score": 0.995,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "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.74,
            "price_to_prz_pct_raw": -0.7447,
            "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": 204,
            "x_order": 8,
            "a_price": 59530.7,
            "a_idx": 215,
            "a_order": 8,
            "b_price": 60167.3,
            "b_idx": 236,
            "b_order": 8,
            "c_price": 59888.7,
            "c_idx": 244,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.914,
            "ratio_score": 0.977,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 60184.14,
            "prz_range": [
              60109.93,
              60258.36
            ],
            "prz_width_pct": 0.247,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.04,
            "price_to_prz_pct_raw": -1.0411,
            "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": "gartley",
              "d_price": 60184.14,
              "a_price": 60557.8,
              "tp1_ad_382": 60326.88,
              "tp2_ad_618": 60415.06,
              "tp3_a_or_structure_liquidity": 60557.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6141,
              "ABC": 0.6924
            },
            "x_price": 60074.5,
            "x_idx": 261,
            "x_order": 8,
            "a_price": 60557.8,
            "a_idx": 267,
            "a_order": 8,
            "b_price": 60261.0,
            "b_idx": 273,
            "b_order": 5,
            "c_price": 60466.5,
            "c_idx": 277,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "shark",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.911,
            "ratio_score": 1.0,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 60182.47,
            "prz_range": [
              60022.33,
              60342.62
            ],
            "prz_width_pct": 0.532,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.04,
            "price_to_prz_pct_raw": -1.0438,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "shark",
              "d_price": 60182.47,
              "a_price": 59933.1,
              "tp1_ad_382": 60087.21,
              "tp2_ad_618": 60028.36,
              "tp3_a_or_structure_liquidity": 59933.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4623,
              "ABC": 1.2815
            },
            "x_price": 60274.2,
            "x_idx": 196,
            "x_order": 3,
            "a_price": 59933.1,
            "a_idx": 205,
            "a_order": 3,
            "b_price": 60090.8,
            "b_idx": 232,
            "b_order": 3,
            "c_price": 59888.7,
            "c_idx": 244,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.899,
            "ratio_score": 0.99,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 60081.9,
            "prz_range": [
              59904.47,
              60259.33
            ],
            "prz_width_pct": 0.591,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.21,
            "price_to_prz_pct_raw": -1.2092,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 60081.9,
              "a_price": 60492.2,
              "tp1_ad_382": 60238.63,
              "tp2_ad_618": 60335.47,
              "tp3_a_or_structure_liquidity": 60492.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.3831,
              "ABC": 0.8888
            },
            "x_price": 59888.7,
            "x_idx": 244,
            "x_order": 5,
            "a_price": 60492.2,
            "a_idx": 263,
            "a_order": 3,
            "b_price": 60261.0,
            "b_idx": 273,
            "b_order": 5,
            "c_price": 60466.5,
            "c_idx": 277,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.883,
            "ratio_score": 0.923,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 60466.5,
            "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.74,
            "price_to_prz_pct_raw": -0.7449,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.236_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "post_D_close_progress"
              ],
              "reaction_score": 0.75,
              "reaction_detail": {
                "reaction_score": 0.75,
                "reaction_move_ratio_ad": 0.334,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.236_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "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.536,
              "XAD": 0.8892
            },
            "x_price": 60580.0,
            "x_idx": 204,
            "x_order": 8,
            "a_price": 59556.0,
            "a_idx": 222,
            "a_order": 5,
            "b_price": 60090.8,
            "b_idx": 232,
            "b_order": 3,
            "c_price": 59846.2,
            "c_idx": 238,
            "c_order": 5,
            "d_idx": 277
          },
          {
            "pattern": "butterfly",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.874,
            "ratio_score": 0.768,
            "prz_score": 0.977,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 60830.95,
            "prz_range": [
              60630.35,
              61031.56
            ],
            "prz_width_pct": 0.66,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.02,
            "price_to_prz_pct_raw": 0.0224,
            "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": "butterfly",
              "d_price": 60830.95,
              "a_price": 59888.7,
              "tp1_ad_382": 60471.01,
              "tp2_ad_618": 60248.64,
              "tp3_a_or_structure_liquidity": 59888.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.8358,
              "ABC": 0.527
            },
            "x_price": 60580.0,
            "x_idx": 204,
            "x_order": 8,
            "a_price": 59888.7,
            "a_idx": 244,
            "a_order": 5,
            "b_price": 60466.5,
            "b_idx": 277,
            "b_order": 3,
            "c_price": 60162.0,
            "c_idx": 282,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.874,
            "ratio_score": 0.908,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 60162.0,
            "prz_range": [
              60109.93,
              60258.36
            ],
            "prz_width_pct": 0.247,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.04,
            "price_to_prz_pct_raw": -1.0411,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 1.353,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "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": "gartley",
              "d_price": 60184.14,
              "a_price": 60557.8,
              "tp1_ad_382": 60326.88,
              "tp2_ad_618": 60415.06,
              "tp3_a_or_structure_liquidity": 60557.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6141,
              "ABC": 0.6924,
              "BCD": 1.4818,
              "XAD": 0.819
            },
            "x_price": 60074.5,
            "x_idx": 261,
            "x_order": 8,
            "a_price": 60557.8,
            "a_idx": 267,
            "a_order": 8,
            "b_price": 60261.0,
            "b_idx": 273,
            "b_order": 5,
            "c_price": 60466.5,
            "c_idx": 277,
            "c_order": 3,
            "d_idx": 282
          }
        ],
        "council_relevant_prz": [
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.883,
            "ratio_score": 0.923,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 60466.5,
            "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.74,
            "price_to_prz_pct_raw": -0.7449,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.236_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "post_D_close_progress"
              ],
              "reaction_score": 0.75,
              "reaction_detail": {
                "reaction_score": 0.75,
                "reaction_move_ratio_ad": 0.334,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.236_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "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.536,
              "XAD": 0.8892
            },
            "x_price": 60580.0,
            "x_idx": 204,
            "x_order": 8,
            "a_price": 59556.0,
            "a_idx": 222,
            "a_order": 5,
            "b_price": 60090.8,
            "b_idx": 232,
            "b_order": 3,
            "c_price": 59846.2,
            "c_idx": 238,
            "c_order": 5,
            "d_idx": 277
          },
          {
            "pattern": "butterfly",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.935,
            "ratio_score": 0.955,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 60411.28,
            "prz_range": [
              60292.09,
              60530.47
            ],
            "prz_width_pct": 0.395,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.67,
            "price_to_prz_pct_raw": -0.6676,
            "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": "butterfly",
              "d_price": 60411.28,
              "a_price": 59933.1,
              "tp1_ad_382": 60228.62,
              "tp2_ad_618": 60115.77,
              "tp3_a_or_structure_liquidity": 59933.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7763,
              "ABC": 0.4001
            },
            "x_price": 60234.8,
            "x_idx": 157,
            "x_order": 8,
            "a_price": 59933.1,
            "a_idx": 205,
            "a_order": 3,
            "b_price": 60167.3,
            "b_idx": 236,
            "b_order": 8,
            "c_price": 60261.0,
            "c_idx": 273,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.914,
            "ratio_score": 0.933,
            "prz_score": 0.995,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "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.74,
            "price_to_prz_pct_raw": -0.7447,
            "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": 204,
            "x_order": 8,
            "a_price": 59530.7,
            "a_idx": 215,
            "a_order": 8,
            "b_price": 60167.3,
            "b_idx": 236,
            "b_order": 8,
            "c_price": 59888.7,
            "c_idx": 244,
            "c_order": 5,
            "d_idx": null
          }
        ],
        "report_detail_candidates": [
          {
            "pattern": "butterfly",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.935,
            "ratio_score": 0.955,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 60411.28,
            "prz_range": [
              60292.09,
              60530.47
            ],
            "prz_width_pct": 0.395,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.67,
            "price_to_prz_pct_raw": -0.6676,
            "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": "butterfly",
              "d_price": 60411.28,
              "a_price": 59933.1,
              "tp1_ad_382": 60228.62,
              "tp2_ad_618": 60115.77,
              "tp3_a_or_structure_liquidity": 59933.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7763,
              "ABC": 0.4001
            },
            "x_price": 60234.8,
            "x_idx": 157,
            "x_order": 8,
            "a_price": 59933.1,
            "a_idx": 205,
            "a_order": 3,
            "b_price": 60167.3,
            "b_idx": 236,
            "b_order": 8,
            "c_price": 60261.0,
            "c_idx": 273,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.914,
            "ratio_score": 0.933,
            "prz_score": 0.995,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "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.74,
            "price_to_prz_pct_raw": -0.7447,
            "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": 204,
            "x_order": 8,
            "a_price": 59530.7,
            "a_idx": 215,
            "a_order": 8,
            "b_price": 60167.3,
            "b_idx": 236,
            "b_order": 8,
            "c_price": 59888.7,
            "c_idx": 244,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.914,
            "ratio_score": 0.977,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 60184.14,
            "prz_range": [
              60109.93,
              60258.36
            ],
            "prz_width_pct": 0.247,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.04,
            "price_to_prz_pct_raw": -1.0411,
            "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": "gartley",
              "d_price": 60184.14,
              "a_price": 60557.8,
              "tp1_ad_382": 60326.88,
              "tp2_ad_618": 60415.06,
              "tp3_a_or_structure_liquidity": 60557.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6141,
              "ABC": 0.6924
            },
            "x_price": 60074.5,
            "x_idx": 261,
            "x_order": 8,
            "a_price": 60557.8,
            "a_idx": 267,
            "a_order": 8,
            "b_price": 60261.0,
            "b_idx": 273,
            "b_order": 5,
            "c_price": 60466.5,
            "c_idx": 277,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "shark",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.911,
            "ratio_score": 1.0,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 60182.47,
            "prz_range": [
              60022.33,
              60342.62
            ],
            "prz_width_pct": 0.532,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.04,
            "price_to_prz_pct_raw": -1.0438,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "shark",
              "d_price": 60182.47,
              "a_price": 59933.1,
              "tp1_ad_382": 60087.21,
              "tp2_ad_618": 60028.36,
              "tp3_a_or_structure_liquidity": 59933.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4623,
              "ABC": 1.2815
            },
            "x_price": 60274.2,
            "x_idx": 196,
            "x_order": 3,
            "a_price": 59933.1,
            "a_idx": 205,
            "a_order": 3,
            "b_price": 60090.8,
            "b_idx": 232,
            "b_order": 3,
            "c_price": 59888.7,
            "c_idx": 244,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.899,
            "ratio_score": 0.99,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 60081.9,
            "prz_range": [
              59904.47,
              60259.33
            ],
            "prz_width_pct": 0.591,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.21,
            "price_to_prz_pct_raw": -1.2092,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.25,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 60081.9,
              "a_price": 60492.2,
              "tp1_ad_382": 60238.63,
              "tp2_ad_618": 60335.47,
              "tp3_a_or_structure_liquidity": 60492.2,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.3831,
              "ABC": 0.8888
            },
            "x_price": 59888.7,
            "x_idx": 244,
            "x_order": 5,
            "a_price": 60492.2,
            "a_idx": 263,
            "a_order": 3,
            "b_price": 60261.0,
            "b_idx": 273,
            "b_order": 5,
            "c_price": 60466.5,
            "c_idx": 277,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.883,
            "ratio_score": 0.923,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 60466.5,
            "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.74,
            "price_to_prz_pct_raw": -0.7449,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.236_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "post_D_close_progress"
              ],
              "reaction_score": 0.75,
              "reaction_detail": {
                "reaction_score": 0.75,
                "reaction_move_ratio_ad": 0.334,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.236_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "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.536,
              "XAD": 0.8892
            },
            "x_price": 60580.0,
            "x_idx": 204,
            "x_order": 8,
            "a_price": 59556.0,
            "a_idx": 222,
            "a_order": 5,
            "b_price": 60090.8,
            "b_idx": 232,
            "b_order": 3,
            "c_price": 59846.2,
            "c_idx": 238,
            "c_order": 5,
            "d_idx": 277
          },
          {
            "pattern": "butterfly",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.874,
            "ratio_score": 0.768,
            "prz_score": 0.977,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 60830.95,
            "prz_range": [
              60630.35,
              61031.56
            ],
            "prz_width_pct": 0.66,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.02,
            "price_to_prz_pct_raw": 0.0224,
            "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": "butterfly",
              "d_price": 60830.95,
              "a_price": 59888.7,
              "tp1_ad_382": 60471.01,
              "tp2_ad_618": 60248.64,
              "tp3_a_or_structure_liquidity": 59888.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.8358,
              "ABC": 0.527
            },
            "x_price": 60580.0,
            "x_idx": 204,
            "x_order": 8,
            "a_price": 59888.7,
            "a_idx": 244,
            "a_order": 5,
            "b_price": 60466.5,
            "b_idx": 277,
            "b_order": 3,
            "c_price": 60162.0,
            "c_idx": 282,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.874,
            "ratio_score": 0.908,
            "prz_score": 1.0,
            "prz_proximity": "watch",
            "action_status": "watch",
            "high_confluence_prz": true,
            "d_price": 60162.0,
            "prz_range": [
              60109.93,
              60258.36
            ],
            "prz_width_pct": 0.247,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -1.04,
            "price_to_prz_pct_raw": -1.0411,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.25,
              "confirmed_reaction": false,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 1.353,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "D_PRZ_failure_zone_defended",
                  "post_D_close_progress"
                ]
              },
              "path_role": "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": "gartley",
              "d_price": 60184.14,
              "a_price": 60557.8,
              "tp1_ad_382": 60326.88,
              "tp2_ad_618": 60415.06,
              "tp3_a_or_structure_liquidity": 60557.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6141,
              "ABC": 0.6924,
              "BCD": 1.4818,
              "XAD": 0.819
            },
            "x_price": 60074.5,
            "x_idx": 261,
            "x_order": 8,
            "a_price": 60557.8,
            "a_idx": 267,
            "a_order": 8,
            "b_price": 60261.0,
            "b_idx": 273,
            "b_order": 5,
            "c_price": 60466.5,
            "c_idx": 277,
            "c_order": 3,
            "d_idx": 282
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.864,
            "ratio_score": 0.857,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 60557.8,
            "prz_range": [
              60404.33,
              60605.62
            ],
            "prz_width_pct": 0.333,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.51,
            "price_to_prz_pct_raw": -0.5135,
            "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": 0.475,
                "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": 60504.97,
              "a_price": 59933.1,
              "tp1_ad_382": 60286.52,
              "tp2_ad_618": 60151.56,
              "tp3_a_or_structure_liquidity": 59933.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5677,
              "ABC": 0.689,
              "BCD": 1.5426,
              "XAD": 0.78
            },
            "x_price": 60734.0,
            "x_idx": 170,
            "x_order": 8,
            "a_price": 59933.1,
            "a_idx": 205,
            "a_order": 3,
            "b_price": 60387.8,
            "b_idx": 248,
            "b_order": 3,
            "c_price": 60074.5,
            "c_idx": 261,
            "c_order": 8,
            "d_idx": 267
          },
          {
            "pattern": "butterfly",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.828,
            "ratio_score": 0.746,
            "prz_score": 0.977,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 60697.6,
            "prz_range": [
              60630.35,
              61031.56
            ],
            "prz_width_pct": 0.66,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.02,
            "price_to_prz_pct_raw": 0.0224,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.236_reaction_reached",
                "PRZ_center_reclaimed_or_rejected"
              ],
              "reaction_score": 0.65,
              "reaction_detail": {
                "reaction_score": 0.65,
                "reaction_move_ratio_ad": 0.244,
                "adverse_move_ratio_ad": 0.281,
                "bars_after_d": 7,
                "reasons": [
                  "AD0.236_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "butterfly",
              "d_price": 60830.95,
              "a_price": 59888.7,
              "tp1_ad_382": 60471.01,
              "tp2_ad_618": 60248.64,
              "tp3_a_or_structure_liquidity": 59888.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.8358,
              "ABC": 0.527,
              "BCD": 1.7589,
              "XAD": 1.1701
            },
            "x_price": 60580.0,
            "x_idx": 204,
            "x_order": 8,
            "a_price": 59888.7,
            "a_idx": 244,
            "a_order": 5,
            "b_price": 60466.5,
            "b_idx": 277,
            "b_order": 3,
            "c_price": 60162.0,
            "c_idx": 282,
            "c_order": 8,
            "d_idx": 292
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.811,
            "ratio_score": 0.503,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 60640.24,
            "prz_range": [
              60503.09,
              60777.4
            ],
            "prz_width_pct": 0.452,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.29,
            "price_to_prz_pct_raw": -0.2911,
            "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": 60640.24,
              "a_price": 59933.1,
              "tp1_ad_382": 60370.12,
              "tp2_ad_618": 60203.23,
              "tp3_a_or_structure_liquidity": 59933.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5677,
              "ABC": 0.4966
            },
            "x_price": 60734.0,
            "x_idx": 170,
            "x_order": 8,
            "a_price": 59933.1,
            "a_idx": 205,
            "a_order": 3,
            "b_price": 60387.8,
            "b_idx": 248,
            "b_order": 3,
            "c_price": 60162.0,
            "c_idx": 282,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "shark",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.807,
            "ratio_score": 0.559,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 60481.94,
            "prz_range": [
              60343.31,
              60620.58
            ],
            "prz_width_pct": 0.458,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.55,
            "price_to_prz_pct_raw": -0.5514,
            "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": 60481.94,
              "a_price": 60261.0,
              "tp1_ad_382": 60397.54,
              "tp2_ad_618": 60345.4,
              "tp3_a_or_structure_liquidity": 60261.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6924,
              "ABC": 1.4818
            },
            "x_price": 60557.8,
            "x_idx": 267,
            "x_order": 8,
            "a_price": 60261.0,
            "a_idx": 273,
            "a_order": 5,
            "b_price": 60466.5,
            "b_idx": 277,
            "b_order": 3,
            "c_price": 60162.0,
            "c_idx": 282,
            "c_order": 8,
            "d_idx": null
          }
        ],
        "actionable_patterns_list": [
          {
            "pattern": "butterfly",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.935,
            "prz_proximity": "nearby",
            "prz_range": [
              60292.09,
              60530.47
            ],
            "prz_reversal_direction": "down",
            "price_to_prz_pct": -0.67,
            "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": "butterfly",
              "d_price": 60411.28,
              "a_price": 59933.1,
              "tp1_ad_382": 60228.62,
              "tp2_ad_618": 60115.77,
              "tp3_a_or_structure_liquidity": 59933.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "BUTTERFLY FORMING HIGH PRZ $60,292.09-$60,530.47: expected reversal DOWN if price reacts in zone"
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.914,
            "prz_proximity": "nearby",
            "prz_range": [
              60179.37,
              60549.45
            ],
            "prz_reversal_direction": "down",
            "price_to_prz_pct": -0.74,
            "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": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.883,
            "prz_proximity": "nearby",
            "prz_range": [
              60217.82,
              60510.71
            ],
            "prz_reversal_direction": "down",
            "price_to_prz_pct": -0.74,
            "high_confluence_prz": true,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.236_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "post_D_close_progress"
              ],
              "reaction_score": 0.75,
              "reaction_detail": {
                "reaction_score": 0.75,
                "reaction_move_ratio_ad": 0.334,
                "adverse_move_ratio_ad": 0.0,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.236_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected",
                  "post_D_close_progress"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "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."
            },
            "interpretation": "BAT COMPLETED HIGH PRZ $60,217.82-$60,510.71: expected reversal DOWN if price reacts in zone"
          }
        ],
        "best_council_prz": {
          "pattern": "butterfly",
          "signal": "bearish",
          "completion_status": "forming",
          "pattern_quality": "strict",
          "quality": "high",
          "pattern_score": 0.935,
          "ratio_score": 0.955,
          "prz_score": 1.0,
          "prz_proximity": "nearby",
          "action_status": "nearby",
          "high_confluence_prz": true,
          "d_price": 60411.28,
          "prz_range": [
            60292.09,
            60530.47
          ],
          "prz_width_pct": 0.395,
          "prz_confluence_count": 3,
          "prz_fib_families": [
            "ABCD",
            "BC_EXT",
            "XAD"
          ],
          "price_to_prz_pct": -0.67,
          "price_to_prz_pct_raw": -0.6676,
          "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": "butterfly",
            "d_price": 60411.28,
            "a_price": 59933.1,
            "tp1_ad_382": 60228.62,
            "tp2_ad_618": 60115.77,
            "tp3_a_or_structure_liquidity": 59933.1,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          "ratios": {
            "XAB": 0.7763,
            "ABC": 0.4001
          },
          "x_price": 60234.8,
          "x_idx": 157,
          "x_order": 8,
          "a_price": 59933.1,
          "a_idx": 205,
          "a_order": 3,
          "b_price": 60167.3,
          "b_idx": 236,
          "b_order": 8,
          "c_price": 60261.0,
          "c_idx": 273,
          "c_order": 5,
          "d_idx": null
        },
        "best_tp_ladder": {
          "direction": "bearish",
          "source": "butterfly",
          "d_price": 60411.28,
          "a_price": 59933.1,
          "tp1_ad_382": 60228.62,
          "tp2_ad_618": 60115.77,
          "tp3_a_or_structure_liquidity": 59933.1,
          "note": "Use as strong TP ladder context; not standalone path authority."
        },
        "best_confirmed_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."
        },
        "tp_ladder": [
          {
            "direction": "bearish",
            "source": "butterfly",
            "d_price": 60411.28,
            "a_price": 59933.1,
            "tp1_ad_382": 60228.62,
            "tp2_ad_618": 60115.77,
            "tp3_a_or_structure_liquidity": 59933.1,
            "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": 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."
          }
        ],
        "validated_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."
          }
        ],
        "harmonic_governance": {
          "role": "PRZ reaction + TP ladder confluence, not standalone path engine",
          "pre_confirmation_weight_range": [
            0.25,
            0.35
          ],
          "post_confirmation_vote_weight_range": [
            0.5,
            0.6
          ],
          "standalone_path_override_allowed": false,
          "opposes_core_path_policy": "branch/reversal-risk/reaction-zone unless lower-TF structure and derivatives also confirm",
          "aligns_with_core_path_policy": "modest confidence lift plus strong TP ladder influence"
        },
        "execution_readiness": "watch",
        "directional_scores": {
          "bullish": 0,
          "bearish": 0.668
        },
        "directional_score_total": 0.668,
        "directional_dominance": 1.0
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.62,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.67,\n  \"setup_signals\": [\n    \"현재가 $60,817.30이 후보형 bearish Butterfly 활성 PRZ $60,630.35-$61,031.56 내부에 위치, 중심 D 추정값 $60,830.95와 불과 약 0.02% 거리\",\n    \"strict/high bearish Bat 완료 패턴이 PRZ $60,217.82-$60,510.71에서 확인 반응 발생: reaction_score 0.75, AD 0.236 반응 도달 및 PRZ 중심 거부 확인\",\n    \"strict/high bearish Butterfly 형성 PRZ $60,292.09-$60,530.47, score 0.935, XAB 0.7763으로 Butterfly 기준 0.786에 근접\",\n    \"strict/high bearish Gartley 형성 PRZ $60,179.37-$60,549.45, score 0.914, XAB 0.6067로 Gartley 기준 0.618에 근접\",\n    \"검증된 bearish Bat TP ladder가 $60,055.51 → $59,864.76 → $59,556.00으로 하방 반응 목표를 제시\"\n  ],\n  \"reasoning\": \"구조_bias는 중립으로 본다. 제공 데이터에는 확정 BOS/CHoCH 또는 상위 구조 수용이 없고, 하모닉은 독립적인 구조 판정 엔진이 아니기 때문이다. 반면 setup_bias는 bearish다. 현재가는 $60,817.30으로 후보형 bearish Butterfly 활성 PRZ $60,630.35-$61,031.56 안에 있으며, 동시에 strict/high bearish Bat 완료 패턴은 $60,217.82-$60,510.71 PRZ에서 rejection 확인과 reaction_score 0.75를 기록했다. 또한 strict/high Butterfly와 Gartley의 하방 PRZ가 각각 $60,292.09-$60,530.47, $60,179.37-$60,549.45에 겹쳐 있어, $60.2k-$60.55k 재진입 시 하방 TP ladder $60,055.51, $59,864.76, $59,556.00이 유효한 반응 목표가 된다.\",\n  \"key_levels\": {\n    \"support\": [\n      60471.01,\n      60248.64,\n      60055.51,\n      59864.76,\n      59556.0,\n      59933.1\n    ],\n    \"resistance\": [\n      60830.95,\n      61031.56,\n      60777.4,\n      60549.45,\n      60510.71\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"61031.56\",\n  \"risk_scenario\": \"$61,031.56 상단을 강하게 돌파하고 15분봉/1시간봉 기준 수용이 확인되면 현재 bearish PRZ 반응 시나리오는 실패로 간주된다. 이 경우 후보형 Butterfly의 D-zone 방어 실패로 숏 커버링이 발생할 수 있으며, 다음 유동성 목표는 7일 고점 $62,604.00 방향으로 확장될 수 있다.\",\n  \"data_quality\": \"high\"\n}"
    }
  },
  "chairman_synthesis": {
    "overall_signal": "bearish",
    "overall_confidence": 0.58,
    "execution_setup": {
      "setup_bias": "bearish",
      "setup_strength": 0.66,
      "active_setups": [
        "프리미엄 구간 체류: 현재가 $60,817.30은 ICT EQ $60,499.60, 7일 레인지 EQ 약 $60,317, 피보나치 0.5 $60,359.90 위에 위치",
        "파생 포지셔닝 부담: 롱 계정 비중 0.669, 롱 계정 과밀도 1.000, CVD는 +$3,733.50 증가했으나 가격 확장은 제한적",
        "하모닉 반전 위험: 후보형 bearish Butterfly 활성 PRZ $60,630.35-$61,031.56 내부, 추정 D $60,830.95와 현재가가 거의 일치",
        "확인된 하모닉 반응: strict/high bearish Bat PRZ $60,217.82-$60,510.71에서 반응 확인, 하방 TP 참조 $60,055.51, $59,864.76, $59,556.00",
        "Wyckoff 실행 조건: $60,752.80 아래 재이탈 및 $60,561.80-$60,500.00 아래 수용이 있어야 분배 Phase E 하방 수용이 재확인됨",
        "단기 bullish 구조 리스크: ICT 기준 $60,245.00 및 $60,557.80 연속 bullish BOS, 전일 고점 $60,697.60 상향 돌파 후 유지"
      ],
      "setup_vs_structure": "구조적 판정은 Wyckoff 분배 Phase E 우위로 bearish이나, 단기 ICT 구조는 bullish BOS가 연속 발생해 즉시 하방 수용은 아직 확정되지 않았다. 실행 셋업은 프리미엄, 롱 과밀, CVD 흡수, 하모닉 PRZ가 겹쳐 구조적 bearish 해석과 대체로 정렬되지만, $60,752.80 위 재진입 때문에 확인형 접근이 필요하다."
    },
    "signal_breakdown": {
      "bullish_count": 2,
      "bearish_count": 3,
      "neutral_count": 1
    },
    "key_levels": {
      "support": [
        60752.8,
        60697.6,
        60572.77,
        60561.8,
        60557.8,
        60500.0,
        60499.6,
        60473.1,
        60406.6,
        60317.0,
        60055.51,
        60032.97,
        59600.0,
        59530.7
      ],
      "resistance": [
        60924.7,
        61031.56,
        61188.0,
        61256.0,
        61931.1,
        62604.0,
        62800.0
      ]
    },
    "confluences": [
      "프리미엄 구간 합의: ICT는 EQ $60,499.60 위, Fibonacci는 0.5 $60,359.90 및 0.618 $60,406.60 위, Candlestick/Derivatives는 7일 EQ 약 $60,317 위로 모두 현재가가 프리미엄에 있다고 평가한다.",
      "$60,500-$60,572 핵심 구조 클러스터: ICT BOS 기준 $60,557.80, Wyckoff SOW $60,561.80 및 Phase E 저점 $60,500.00, Candlestick EMA20 $60,572.77, Fibonacci ret_0.786 $60,473.10이 밀집한다.",
      "$60,697-$60,753 전환대: ICT 전일 고점 $60,697.60 돌파, Wyckoff UTAD $60,697.60 및 AR/레인지 하단 $60,752.80이 겹쳐 지지·저항 전환 여부가 구조적으로 중요하다.",
      "$60,630-$61,031 상단 반응 구간: Harmonic의 bearish Butterfly 활성 PRZ $60,630.35-$61,031.56과 ICT 단기 range high $60,924.70이 중첩되어 현재 가격대가 상단 반응 구역으로 해석된다.",
      "$61,188-$61,256 구조 저항: Wyckoff 메인 레인지 상단 $61,188.00과 ICT 과거 bullish BOS 레벨 $61,256.00이 근접해 분배 해석의 핵심 상단 검증 구간이다.",
      "$62,604 공통 상위 저항: ICT, Fibonacci, Candlestick, Derivatives 모두 $62,604.00을 주요 상단 저항 또는 7일 고점으로 인식한다."
    ],
    "conflicts": [
      "ICT는 $60,245.00 및 $60,557.80 연속 bullish BOS와 전일 고점 $60,697.60 돌파를 근거로 구조를 bullish로 보지만, Wyckoff는 BC $61,188.00 → UTAD $60,697.60 → SOW $60,561.80 → Phase E $60,500.00의 분배 구조를 bearish로 본다.",
      "Fibonacci는 최근 하락 스윙 고점 $60,558 상회로 구조는 bullish라고 보지만, 실행 셋업은 $60,473.10, $60,406.60, $60,359.90 위 과확장으로 bearish 되돌림 위험을 제시한다.",
      "Candlestick은 EMA20 $60,572.77, EMA120 $60,237.05, EMA240 $60,326.63 위 거래를 bullish로 보지만, Derivatives는 롱 과밀과 CVD 다이버전스로 같은 가격대의 취약성을 bearish로 해석한다.",
      "Harmonic은 현재가가 bearish Butterfly PRZ $60,630.35-$61,031.56 내부라고 보지만, 해당 PRZ는 사전 확인 후보 성격이므로 단독으로 ICT의 bullish BOS를 무효화하지는 못한다.",
      "Wyckoff bearish 구조는 유효하지만 현재가가 AR $60,752.80 위로 재진입해 즉각적인 Phase E 하방 수용은 아직 미확정이다."
    ],
    "executive_summary": "현재 15분 BTC 구조는 Wyckoff 기준 분배 구조가 우세하며, Phase E 라벨이 붙은 후기 분배 구간으로 진단된다. 다만 가격은 메인 레인지 하단/AR인 $60,752.80 위로 재진입해 있어 분배 하방 수용이 완전히 확인된 상태라기보다, $60,752.80-$60,561.80-$60,500.00 구간의 재수용 여부가 구조 확인 조건이다. 반대로 ICT와 Fibonacci는 $60,557.80 및 $60,558 상회, 전일 고점 $60,697.60 돌파를 근거로 단기 bullish 구조를 제시해 Wyckoff 분배 해석과 충돌한다. 실행 환경은 프리미엄 구간, 롱 과밀, CVD 흡수, bearish harmonic PRZ $60,630.35-$61,031.56이 겹쳐 bearish 셋업이 우세하나, 이는 구조적 조건이지 확정 경로는 아니다. 분배 구조의 핵심 무효화는 $61,188.00 상방 수용이며, 보수적으로는 $61,256.00 회복까지 확인해야 한다.",
    "raw_llm_response": "{\n  \"overall_signal\": \"bearish\",\n  \"overall_confidence\": 0.58,\n  \"execution_setup\": {\n    \"setup_bias\": \"bearish\",\n    \"setup_strength\": 0.66,\n    \"active_setups\": [\n      \"프리미엄 구간 체류: 현재가 $60,817.30은 ICT EQ $60,499.60, 7일 레인지 EQ 약 $60,317, 피보나치 0.5 $60,359.90 위에 위치\",\n      \"파생 포지셔닝 부담: 롱 계정 비중 0.669, 롱 계정 과밀도 1.000, CVD는 +$3,733.50 증가했으나 가격 확장은 제한적\",\n      \"하모닉 반전 위험: 후보형 bearish Butterfly 활성 PRZ $60,630.35-$61,031.56 내부, 추정 D $60,830.95와 현재가가 거의 일치\",\n      \"확인된 하모닉 반응: strict/high bearish Bat PRZ $60,217.82-$60,510.71에서 반응 확인, 하방 TP 참조 $60,055.51, $59,864.76, $59,556.00\",\n      \"Wyckoff 실행 조건: $60,752.80 아래 재이탈 및 $60,561.80-$60,500.00 아래 수용이 있어야 분배 Phase E 하방 수용이 재확인됨\",\n      \"단기 bullish 구조 리스크: ICT 기준 $60,245.00 및 $60,557.80 연속 bullish BOS, 전일 고점 $60,697.60 상향 돌파 후 유지\"\n    ],\n    \"setup_vs_structure\": \"구조적 판정은 Wyckoff 분배 Phase E 우위로 bearish이나, 단기 ICT 구조는 bullish BOS가 연속 발생해 즉시 하방 수용은 아직 확정되지 않았다. 실행 셋업은 프리미엄, 롱 과밀, CVD 흡수, 하모닉 PRZ가 겹쳐 구조적 bearish 해석과 대체로 정렬되지만, $60,752.80 위 재진입 때문에 확인형 접근이 필요하다.\"\n  },\n  \"signal_breakdown\": {\n    \"bullish_count\": 2,\n    \"bearish_count\": 3,\n    \"neutral_count\": 1\n  },\n  \"key_levels\": {\n    \"support\": [\n      60752.8,\n      60697.6,\n      60572.77,\n      60561.8,\n      60557.8,\n      60500.0,\n      60499.6,\n      60473.1,\n      60406.6,\n      60317.0,\n      60055.51,\n      60032.97,\n      59600.0,\n      59530.7\n    ],\n    \"resistance\": [\n      60924.7,\n      61031.56,\n      61188.0,\n      61256.0,\n      61931.1,\n      62604.0,\n      62800.0\n    ]\n  },\n  \"confluences\": [\n    \"프리미엄 구간 합의: ICT는 EQ $60,499.60 위, Fibonacci는 0.5 $60,359.90 및 0.618 $60,406.60 위, Candlestick/Derivatives는 7일 EQ 약 $60,317 위로 모두 현재가가 프리미엄에 있다고 평가한다.\",\n    \"$60,500-$60,572 핵심 구조 클러스터: ICT BOS 기준 $60,557.80, Wyckoff SOW $60,561.80 및 Phase E 저점 $60,500.00, Candlestick EMA20 $60,572.77, Fibonacci ret_0.786 $60,473.10이 밀집한다.\",\n    \"$60,697-$60,753 전환대: ICT 전일 고점 $60,697.60 돌파, Wyckoff UTAD $60,697.60 및 AR/레인지 하단 $60,752.80이 겹쳐 지지·저항 전환 여부가 구조적으로 중요하다.\",\n    \"$60,630-$61,031 상단 반응 구간: Harmonic의 bearish Butterfly 활성 PRZ $60,630.35-$61,031.56과 ICT 단기 range high $60,924.70이 중첩되어 현재 가격대가 상단 반응 구역으로 해석된다.\",\n    \"$61,188-$61,256 구조 저항: Wyckoff 메인 레인지 상단 $61,188.00과 ICT 과거 bullish BOS 레벨 $61,256.00이 근접해 분배 해석의 핵심 상단 검증 구간이다.\",\n    \"$62,604 공통 상위 저항: ICT, Fibonacci, Candlestick, Derivatives 모두 $62,604.00을 주요 상단 저항 또는 7일 고점으로 인식한다.\"\n  ],\n  \"conflicts\": [\n    \"ICT는 $60,245.00 및 $60,557.80 연속 bullish BOS와 전일 고점 $60,697.60 돌파를 근거로 구조를 bullish로 보지만, Wyckoff는 BC $61,188.00 → UTAD $60,697.60 → SOW $60,561.80 → Phase E $60,500.00의 분배 구조를 bearish로 본다.\",\n    \"Fibonacci는 최근 하락 스윙 고점 $60,558 상회로 구조는 bullish라고 보지만, 실행 셋업은 $60,473.10, $60,406.60, $60,359.90 위 과확장으로 bearish 되돌림 위험을 제시한다.\",\n    \"Candlestick은 EMA20 $60,572.77, EMA120 $60,237.05, EMA240 $60,326.63 위 거래를 bullish로 보지만, Derivatives는 롱 과밀과 CVD 다이버전스로 같은 가격대의 취약성을 bearish로 해석한다.\",\n    \"Harmonic은 현재가가 bearish Butterfly PRZ $60,630.35-$61,031.56 내부라고 보지만, 해당 PRZ는 사전 확인 후보 성격이므로 단독으로 ICT의 bullish BOS를 무효화하지는 못한다.\",\n    \"Wyckoff bearish 구조는 유효하지만 현재가가 AR $60,752.80 위로 재진입해 즉각적인 Phase E 하방 수용은 아직 미확정이다.\"\n  ],\n  \"highest_conviction_analyst\": \"Wyckoff Expert — 분배 구조에 대한 가격 시퀀스가 가장 구체적이다. BC $61,188.00, AR $60,752.80, ST $61,931.10, SOW $60,561.80, Phase E $60,500.00까지 단계가 명확하며, 분배 적합도가 매우 높다. 다만 현재가가 AR $60,752.80 위에 있어 실행 확정성은 구조 확정성보다 낮다.\",\n  \"invalidation_level\": \"$61,188.00 상방 회복 및 수용. 이 레벨은 Wyckoff 메인 레인지 상단이며, 그 위에서 유지되면 현재 분배 Phase E 해석은 약화된다. 보수적으로는 ICT 상단 구조 레벨 $61,256.00까지 회복 시 bearish 구조 판정은 재평가가 필요하다.\",\n  \"executive_summary\": \"현재 15분 BTC 구조는 Wyckoff 기준 분배 구조가 우세하며, Phase E 라벨이 붙은 후기 분배 구간으로 진단된다. 다만 가격은 메인 레인지 하단/AR인 $60,752.80 위로 재진입해 있어 분배 하방 수용이 완전히 확인된 상태라기보다, $60,752.80-$60,561.80-$60,500.00 구간의 재수용 여부가 구조 확인 조건이다. 반대로 ICT와 Fibonacci는 $60,557.80 및 $60,558 상회, 전일 고점 $60,697.60 돌파를 근거로 단기 bullish 구조를 제시해 Wyckoff 분배 해석과 충돌한다. 실행 환경은 프리미엄 구간, 롱 과밀, CVD 흡수, bearish harmonic PRZ $60,630.35-$61,031.56이 겹쳐 bearish 셋업이 우세하나, 이는 구조적 조건이지 확정 경로는 아니다. 분배 구조의 핵심 무효화는 $61,188.00 상방 수용이며, 보수적으로는 $61,256.00 회복까지 확인해야 한다.\"\n}"
  },
  "overall_signal": "bearish",
  "overall_confidence": 0.58,
  "operating_path": {
    "path_type": "complex",
    "confidence": 0.6,
    "waypoints": [
      {
        "seq": 1,
        "price": 60924.7,
        "type": "liquidity_sweep",
        "source": "ICT(range high $60,924.70), Harmonic(후보형 bearish Butterfly PRZ $60,630.35-$61,031.56, 추정 D $60,830.95)",
        "description": "현재가 $60,817.30이 butterfly D 추정 $60,830.95와 거의 일치하고 전일 고점 $60,697.60 위에서 유지 중이므로, 분배 막바지 매수측 유동성 회수를 위한 마지막 상방 스윕을 우선 예상한다. ICT range high $60,924.70 및 butterfly PRZ 상단부에서 거부가 발생해야 하방 전환의 트리거가 된다. 즉각적 하방 수용이 미확정이라는 의장 진단과 정합.",
        "est_hours": 2.0,
        "turning_zone": [
          60924.7,
          61005.0
        ],
        "likely_wick": 61000.0,
        "rejection_confirm": 60752.8,
        "invalid_overshoot": 61031.56,
        "calibration_reasoning": "ICT 레인지 고점이자 의장 저항 $60,924.70 위 매수측 스윕 존으로, 다음 저항 $61,031.56 직전의 라운드넘버 $61,000을 유동성 자석으로 보아 wick을 그쪽으로 편향(폭 0.58×ATR). AR $60,752.80 재이탈로 거부 확정, $61,031.56 위 수용 시 스윕 논리 무효."
      },
      {
        "seq": 2,
        "price": 60500.0,
        "type": "support_test",
        "source": "Wyckoff(AR $60,752.80, SOW $60,561.80, Phase E $60,500.00), ICT(BOS $60,557.80), Candlestick(EMA20 $60,572.77), Fibonacci(ret_0.786 $60,473.10)",
        "description": "AR $60,752.80 아래 재이탈 후 $60,561.80-$60,500.00 핵심 구조 클러스터를 시험하는 확인 게이트. 이 구간 아래 수용 여부가 Wyckoff Phase E 하방 수용 재확인 조건이며, 동시에 ICT 연속 bullish BOS 무효화 지점이라 구조 충돌이 해소되는 결정 구간.",
        "est_hours": 6.0,
        "turning_zone": [
          60458.0,
          60500.0
        ],
        "likely_wick": 60473.1,
        "rejection_confirm": 60561.8,
        "invalid_overshoot": 60406.6,
        "calibration_reasoning": "의장 핵심 구조 클러스터 $60,500/$60,499.6와 직하 피보 지지 $60,473.10을 하단 앵커로 사용(폭 0.30×ATR). $60,561.80 회복 시 지지 방어 확인, 골든레이쇼 $60,406.60 하향 수용 시 WP3로 연속되며 무효."
      },
      {
        "seq": 3,
        "price": 60354.2,
        "type": "swing_low",
        "source": "Fibonacci(strict fib_confluence $60,354.20, score 1.0), WP1 후보 테이블 최근접 strict 레벨",
        "description": "$60,500 클러스터 하향 수용 시 도달하는 최근접 strict-tier 피보나치 컨플루언스. 7일 EQ(~$60,317) 하단 이탈을 의미해 프리미엄 과확장이 해소되는 첫 strict 하방 목표.",
        "est_hours": 10.0,
        "turning_zone": [
          60308.0,
          60354.2
        ],
        "likely_wick": 60317.0,
        "rejection_confirm": 60406.6,
        "invalid_overshoot": 60270.0,
        "calibration_reasoning": "6중첩 strict 피보 컨플루언스 $60,354.20가 기준이며, 직하 7일 EQ $60,317 유동성 태그를 likely_wick으로 설정(폭 0.33×ATR). $60,406.60 회복 시 반등 확인, EQ 하방 $60,270 수용 시 WP4로 연속."
      },
      {
        "seq": 4,
        "price": 60055.51,
        "type": "swing_low",
        "source": "Harmonic(bearish Bat 확인 반응 TP $60,055.51), Fibonacci(strict confluence $60,032.97), Derivatives(하방 유동성 $59,600)",
        "description": "strict/high bearish Bat가 PRZ $60,217.82-$60,510.71에서 reaction_score 0.75로 거부 확인한 1차 TP 래더. strict 피보나치 $60,032.97과 중첩되고, 롱 과밀(crowding 1.000)·fragility 0.827 해소에 따른 청산 유동성 자극 구간.",
        "est_hours": 16.0,
        "turning_zone": [
          59986.0,
          60055.51
        ],
        "likely_wick": 60000.0,
        "rejection_confirm": 60110.0,
        "invalid_overshoot": 59930.0,
        "calibration_reasoning": "검증된 bat 하모닉 TP1(AD0.382) $60,055.51 + 4중첩 피보 $60,032.97 + 라운드넘버 $60,000 합류 구간으로, 롱 과밀 청산 유동성 자석인 $60k로 wick 편향(폭 0.50×ATR). $59,930 하향 수용 시 TP2 방향 연속으로 무효."
      },
      {
        "seq": 5,
        "price": 59688.35,
        "type": "extension",
        "source": "Fibonacci(strict fib_confluence $59,688.35, score 0.85), Harmonic(TP 래더 $59,864.76/$59,556.00), Derivatives(청산 포켓 $59,600)",
        "description": "하방 가속 지속 시 strict 피보나치 확장 컨플루언스와 하모닉 TP 래더($59,864.76→$59,556.00) 및 파생 청산 포켓($59,600)이 겹치는 24h 하방 극단. 분배 markdown의 합리적 종착 반응대.",
        "est_hours": 22.0,
        "turning_zone": [
          59578.0,
          59688.35
        ],
        "likely_wick": 59600.0,
        "rejection_confirm": 59760.0,
        "invalid_overshoot": 59530.7,
        "calibration_reasoning": "터미널 — 3중첩 피보 확장 $59,688.35 기준에 파생 청산 포켓 $59,600을 포함하도록 0.79×ATR로 확장하고 wick을 $59,600에 편향. 검증 bat TP3 $59,556/의장 지지 $59,530.7는 극단 꼬리이자 무효 경계, $59,760 회복 시 markdown 종료 반등 확인."
      }
    ],
    "period_extremes": {
      "4h": {
        "expected_high": 60924.7,
        "expected_low": 60500.0,
        "high_first": true
      },
      "8h": {
        "expected_high": 60924.7,
        "expected_low": 60354.2,
        "high_first": true
      },
      "24h": {
        "expected_high": 60924.7,
        "expected_low": 59688.35,
        "high_first": true
      }
    },
    "triggers": {
      "bullish": {
        "price": 61188.0,
        "description": "Wyckoff 메인 레인지 상단/BC $61,188.00 위 수용 시 분배 구조 붕괴. ICT bullish BOS 시퀀스가 재활성화되며 $61,256.00·$61,931.10 향한 상승 가속으로 본 경로 폐기."
      },
      "bearish": {
        "price": 60500.0,
        "description": "AR $60,752.80 재이탈 후 SOW $60,561.80-Phase E $60,500.00 아래 수용 시 분배 하방 수용 확인. CVD 흡수·롱 과밀 해소와 결합해 $60,354.20→$60,055.51→$59,688.35 하락 가속."
      }
    },
    "scenario_invalidation": 61256.0,
    "raw_llm_response": "```json\n{\n  \"path_type\": \"complex\",\n  \"confidence\": 0.60,\n  \"waypoints\": [\n    {\n      \"seq\": 1,\n      \"price\": 60924.70,\n      \"type\": \"liquidity_sweep\",\n      \"source\": \"ICT(range high $60,924.70), Harmonic(후보형 bearish Butterfly PRZ $60,630.35-$61,031.56, 추정 D $60,830.95)\",\n      \"description\": \"현재가 $60,817.30이 butterfly D 추정 $60,830.95와 거의 일치하고 전일 고점 $60,697.60 위에서 유지 중이므로, 분배 막바지 매수측 유동성 회수를 위한 마지막 상방 스윕을 우선 예상한다. ICT range high $60,924.70 및 butterfly PRZ 상단부에서 거부가 발생해야 하방 전환의 트리거가 된다. 즉각적 하방 수용이 미확정이라는 의장 진단과 정합.\",\n      \"est_hours\": 2.0\n    },\n    {\n      \"seq\": 2,\n      \"price\": 60500.00,\n      \"type\": \"support_test\",\n      \"source\": \"Wyckoff(AR $60,752.80, SOW $60,561.80, Phase E $60,500.00), ICT(BOS $60,557.80), Candlestick(EMA20 $60,572.77), Fibonacci(ret_0.786 $60,473.10)\",\n      \"description\": \"AR $60,752.80 아래 재이탈 후 $60,561.80-$60,500.00 핵심 구조 클러스터를 시험하는 확인 게이트. 이 구간 아래 수용 여부가 Wyckoff Phase E 하방 수용 재확인 조건이며, 동시에 ICT 연속 bullish BOS 무효화 지점이라 구조 충돌이 해소되는 결정 구간.\",\n      \"est_hours\": 6.0\n    },\n    {\n      \"seq\": 3,\n      \"price\": 60354.20,\n      \"type\": \"swing_low\",\n      \"source\": \"Fibonacci(strict fib_confluence $60,354.20, score 1.0), WP1 후보 테이블 최근접 strict 레벨\",\n      \"description\": \"$60,500 클러스터 하향 수용 시 도달하는 최근접 strict-tier 피보나치 컨플루언스. 7일 EQ(~$60,317) 하단 이탈을 의미해 프리미엄 과확장이 해소되는 첫 strict 하방 목표.\",\n      \"est_hours\": 10.0\n    },\n    {\n      \"seq\": 4,\n      \"price\": 60055.51,\n      \"type\": \"swing_low\",\n      \"source\": \"Harmonic(bearish Bat 확인 반응 TP $60,055.51), Fibonacci(strict confluence $60,032.97), Derivatives(하방 유동성 $59,600)\",\n      \"description\": \"strict/high bearish Bat가 PRZ $60,217.82-$60,510.71에서 reaction_score 0.75로 거부 확인한 1차 TP 래더. strict 피보나치 $60,032.97과 중첩되고, 롱 과밀(crowding 1.000)·fragility 0.827 해소에 따른 청산 유동성 자극 구간.\",\n      \"est_hours\": 16.0\n    },\n    {\n      \"seq\": 5,\n      \"price\": 59688.35,\n      \"type\": \"extension\",\n      \"source\": \"Fibonacci(strict fib_confluence $59,688.35, score 0.85), Harmonic(TP 래더 $59,864.76/$59,556.00), Derivatives(청산 포켓 $59,600)\",\n      \"description\": \"하방 가속 지속 시 strict 피보나치 확장 컨플루언스와 하모닉 TP 래더($59,864.76→$59,556.00) 및 파생 청산 포켓($59,600)이 겹치는 24h 하방 극단. 분배 markdown의 합리적 종착 반응대.\",\n      \"est_hours\": 22.0\n    }\n  ],\n  \"period_extremes\": {\n    \"4h\":  {\"expected_high\": 60924.70, \"expected_low\": 60500.00, \"high_first\": true},\n    \"8h\":  {\"expected_high\": 60924.70, \"expected_low\": 60354.20, \"high_first\": true},\n    \"24h\": {\"expected_high\": 60924.70, \"expected_low\": 59688.35, \"high_first\": true}\n  },\n  \"triggers\": {\n    \"bullish\": {\"price\": 61188.00, \"description\": \"Wyckoff 메인 레인지 상단/BC $61,188.00 위 수용 시 분배 구조 붕괴. ICT bullish BOS 시퀀스가 재활성화되며 $61,256.00·$61,931.10 향한 상승 가속으로 본 경로 폐기.\"},\n    \"bearish\": {\"price\": 60500.00, \"description\": \"AR $60,752.80 재이탈 후 SOW $60,561.80-Phase E $60,500.00 아래 수용 시 분배 하방 수용 확인. CVD 흡수·롱 과밀 해소와 결합해 $60,354.20→$60,055.51→$59,688.35 하락 가속.\"}\n  },\n  \"scenario_invalidation\": 61256.00\n}\n```"
  },
  "tp_calibration": {
    "calibrated_waypoints": [
      {
        "seq": 1,
        "base_target": 60924.7,
        "turning_zone": [
          60924.7,
          61005.0
        ],
        "likely_wick": 61000.0,
        "rejection_confirm": 60752.8,
        "invalid_overshoot": 61031.56,
        "calibration_reasoning": "ICT 레인지 고점이자 의장 저항 $60,924.70 위 매수측 스윕 존으로, 다음 저항 $61,031.56 직전의 라운드넘버 $61,000을 유동성 자석으로 보아 wick을 그쪽으로 편향(폭 0.58×ATR). AR $60,752.80 재이탈로 거부 확정, $61,031.56 위 수용 시 스윕 논리 무효."
      },
      {
        "seq": 2,
        "base_target": 60500.0,
        "turning_zone": [
          60458.0,
          60500.0
        ],
        "likely_wick": 60473.1,
        "rejection_confirm": 60561.8,
        "invalid_overshoot": 60406.6,
        "calibration_reasoning": "의장 핵심 구조 클러스터 $60,500/$60,499.6와 직하 피보 지지 $60,473.10을 하단 앵커로 사용(폭 0.30×ATR). $60,561.80 회복 시 지지 방어 확인, 골든레이쇼 $60,406.60 하향 수용 시 WP3로 연속되며 무효."
      },
      {
        "seq": 3,
        "base_target": 60354.2,
        "turning_zone": [
          60308.0,
          60354.2
        ],
        "likely_wick": 60317.0,
        "rejection_confirm": 60406.6,
        "invalid_overshoot": 60270.0,
        "calibration_reasoning": "6중첩 strict 피보 컨플루언스 $60,354.20가 기준이며, 직하 7일 EQ $60,317 유동성 태그를 likely_wick으로 설정(폭 0.33×ATR). $60,406.60 회복 시 반등 확인, EQ 하방 $60,270 수용 시 WP4로 연속."
      },
      {
        "seq": 4,
        "base_target": 60055.51,
        "turning_zone": [
          59986.0,
          60055.51
        ],
        "likely_wick": 60000.0,
        "rejection_confirm": 60110.0,
        "invalid_overshoot": 59930.0,
        "calibration_reasoning": "검증된 bat 하모닉 TP1(AD0.382) $60,055.51 + 4중첩 피보 $60,032.97 + 라운드넘버 $60,000 합류 구간으로, 롱 과밀 청산 유동성 자석인 $60k로 wick 편향(폭 0.50×ATR). $59,930 하향 수용 시 TP2 방향 연속으로 무효."
      },
      {
        "seq": 5,
        "base_target": 59688.35,
        "turning_zone": [
          59578.0,
          59688.35
        ],
        "likely_wick": 59600.0,
        "rejection_confirm": 59760.0,
        "invalid_overshoot": 59530.7,
        "calibration_reasoning": "터미널 — 3중첩 피보 확장 $59,688.35 기준에 파생 청산 포켓 $59,600을 포함하도록 0.79×ATR로 확장하고 wick을 $59,600에 편향. 검증 bat TP3 $59,556/의장 지지 $59,530.7는 극단 꼬리이자 무효 경계, $59,760 회복 시 markdown 종료 반등 확인."
      }
    ],
    "raw_llm_response": "```json\n{\n  \"calibrated_waypoints\": [\n    {\n      \"seq\": 1,\n      \"base_target\": 60924.70,\n      \"turning_zone\": [60924.70, 61005.00],\n      \"likely_wick\": 61000.00,\n      \"rejection_confirm\": 60752.80,\n      \"invalid_overshoot\": 61031.56,\n      \"calibration_reasoning\": \"ICT 레인지 고점이자 의장 저항 $60,924.70 위 매수측 스윕 존으로, 다음 저항 $61,031.56 직전의 라운드넘버 $61,000을 유동성 자석으로 보아 wick을 그쪽으로 편향(폭 0.58×ATR). AR $60,752.80 재이탈로 거부 확정, $61,031.56 위 수용 시 스윕 논리 무효.\"\n    },\n    {\n      \"seq\": 2,\n      \"base_target\": 60500.00,\n      \"turning_zone\": [60458.00, 60500.00],\n      \"likely_wick\": 60473.10,\n      \"rejection_confirm\": 60561.80,\n      \"invalid_overshoot\": 60406.60,\n      \"calibration_reasoning\": \"의장 핵심 구조 클러스터 $60,500/$60,499.6와 직하 피보 지지 $60,473.10을 하단 앵커로 사용(폭 0.30×ATR). $60,561.80 회복 시 지지 방어 확인, 골든레이쇼 $60,406.60 하향 수용 시 WP3로 연속되며 무효.\"\n    },\n    {\n      \"seq\": 3,\n      \"base_target\": 60354.20,\n      \"turning_zone\": [60308.00, 60354.20],\n      \"likely_wick\": 60317.00,\n      \"rejection_confirm\": 60406.60,\n      \"invalid_overshoot\": 60270.00,\n      \"calibration_reasoning\": \"6중첩 strict 피보 컨플루언스 $60,354.20가 기준이며, 직하 7일 EQ $60,317 유동성 태그를 likely_wick으로 설정(폭 0.33×ATR). $60,406.60 회복 시 반등 확인, EQ 하방 $60,270 수용 시 WP4로 연속.\"\n    },\n    {\n      \"seq\": 4,\n      \"base_target\": 60055.51,\n      \"turning_zone\": [59986.00, 60055.51],\n      \"likely_wick\": 60000.00,\n      \"rejection_confirm\": 60110.00,\n      \"invalid_overshoot\": 59930.00,\n      \"calibration_reasoning\": \"검증된 bat 하모닉 TP1(AD0.382) $60,055.51 + 4중첩 피보 $60,032.97 + 라운드넘버 $60,000 합류 구간으로, 롱 과밀 청산 유동성 자석인 $60k로 wick 편향(폭 0.50×ATR). $59,930 하향 수용 시 TP2 방향 연속으로 무효.\"\n    },\n    {\n      \"seq\": 5,\n      \"base_target\": 59688.35,\n      \"turning_zone\": [59578.00, 59688.35],\n      \"likely_wick\": 59600.00,\n      \"rejection_confirm\": 59760.00,\n      \"invalid_overshoot\": 59530.70,\n      \"calibration_reasoning\": \"터미널 — 3중첩 피보 확장 $59,688.35 기준에 파생 청산 포켓 $59,600을 포함하도록 0.79×ATR로 확장하고 wick을 $59,600에 편향. 검증 bat TP3 $59,556/의장 지지 $59,530.7는 극단 꼬리이자 무효 경계, $59,760 회복 시 markdown 종료 반등 확인.\"\n    }\n  ]\n}\n```"
  },
  "timing": {
    "stages": {
      "stage1_agents": 48.9,
      "chairman": 103.0,
      "operating_path": 188.7,
      "tp_calibrator": 271.9
    },
    "agents": {},
    "total_s": 612.5
  }
}