BTC/USDT 15M Council Report

Signal: NEUTRAL (52%)  |  Price: $77,365.80  |  2026-05-22 17:00 KST  |  300 candles

Council: 1 bullish, 4 neutral, 1 bearish  |  Support: $77,363 / $77,237 / $77,209  |  Resistance: $77,379 / $77,485 / $77,489

result.json   raw.txt   report.md


BTC Chart

Executive Summary

현재 BTC 15분 구조는 단일 방향의 확정 추세라기보다, 이전 축적 구조가 완료된 뒤 상단에서 새로운 분배 후보가 형성되는 재구조화 구간으로 진단된다. Wyckoff상 과거 SC $76,107.10, AR $77,042.30, Spring $76,696.70, SOS $77,379.10, LPS $77,513.20의 축적 맥락은 여전히 남아 있지만, 현재가는 SOS와 LPS 아래에 있어 Phase E 상승 지속으로 확정하기 어렵다. 동시에 ICT의 마지막 확정 이벤트는 $77,485.10 하향 CHoCH이며, $77,862.70 상단 UT/Range High에서 거부된 흔적이 있어 단기 구조 회복은 아직 미완성이다. 핵심 구조 축은 하단 $77,237-$77,209, 중단 $77,488-$77,513, 상단 $77,862.70이며, $77,042.30 이탈 또는 $77,862.70 상방 수용이 현재 중립 구조를 해소하는 조건이다.

Confluences

Conflicts


Agent Matrix

AgentSignalConfidenceSupportResistance
Wyckoff ExpertNEUTRAL62%$77,209 / $77,042$77,379 / $77,513
ICT TraderBULLISH64%$77,237 / $77,042$77,485 / $77,550
Derivatives TraderBEARISH58%$77,144 / $76,107$77,489 / $77,508
Candlestick ReaderBULLISH58%$77,394 / $77,144$77,489 / $77,508
Fibonacci AnalystBULLISH58%$77,363 / $77,288$77,411 / $77,508
Harmonic SpecialistBEARISH56%$77,485 / $77,433$77,513 / $77,551

Agent Details

Wyckoff Expert — NEUTRAL (62%)

Support: $77,209 / $77,042 / $76,697 | Resistance: $77,379 / $77,513 / $77,863 | Horizon: short term

확정 구조 기준으로는 regime이 ACC이고 acc_score 95.7, regime_fitness 0.957로 SC $76,107.10 → AR $77,042.30 → ST $76,485.00 → Spring/Terminal Spring $76,696.70 → SOS $77,379.10 → LPS $77,513.20까지 이어진 축적 우위 구조가 우선입니다. 다만 현재가 $77,365.80은 SOS $77,379.10을 근소하게 하회하고 LPS $77,513.20 아래에 있어, Phase E라 해도 즉시 마크업 확정보다는 BU/LPS 재검증이 진행 중인 상태로 봐야 합니다. 특히 $77,862.70~$78,063.80 상단 공급 반응 이후 가격이 다시 중단으로 내려와 있어, 실행 관점의 setup_bias는 $77,513 회복 전까지 bearish입니다. 따라서 구조적 편향은 bullish이지만, 즉시 경로는 $77,209.30 또는 $77,042.30 재테스트 가능성을 열어둔 neutral 신호가 더 적절합니다.
ICT Trader — BULLISH (64%)

Support: $77,237 / $77,042 / $76,697 | Resistance: $77,485 / $77,550 / $77,826 | Horizon: short term

확정 구조 기준으로는 마지막 이벤트가 $77,485.10 하향 CHoCH이므로 structure_bias는 단기 bearish로 읽어야 합니다. 다만 실행 셋업 관점에서는 현재가 $77,365.80가 EQ $77,549.90 아래 discount zone에 있으며, 이전 상승 BOS $77,042.30 및 $77,825.80 이후 87.8% 깊은 되돌림이 발생해 bullish 재매집 셋업이 강합니다. 현재 구간은 Range Low $77,237.10에 가까워 sell-side liquidity를 노린 뒤 반등할 수 있는 위치지만, 아직 활성 OB나 미체결 FVG, 최근 liquidity sweep이 없기 때문에 완전한 확정 매수 신호는 아닙니다. $77,485.10 CHoCH 레벨과 EQ $77,549.90를 회복하면 bullish setup이 구조 회복으로 전환될 가능성이 높고, 반대로 $77,237.10 이탈 시 셋업은 실패로 봅니다.
Derivatives Trader — BEARISH (58%)

Support: $77,144 / $76,107 / $75,900 | Resistance: $77,489 / $77,508 / $78,180 | Horizon: short term, 향후 4-8시간

확정 구조 관점에서는 7일 저점 $76,107.10 이탈이나 7일 고점 $78,180.00 돌파가 아직 없어 structure_bias는 neutral이다. 다만 셋업 관점에서는 현재가 $77,365.80가 EQ $77,143.55 위의 약한 프리미엄에 있고, CVD가 -3299.4510으로 악화되는 동안 가격은 EMA20 $77,488.64와 EMA120 $77,507.58 아래에서 눌리고 있어 매수 참여 약화가 보인다. OI가 24시간 -0.74% 감소해 추세 추격성 신규 롱 유입은 약하고, 동시에 롱 계정 비율은 0.564로 상승해 단기 롱 포지셔닝이 불리하게 쌓이고 있다. 파생 베이시스도 -0.0529%로 약세이며, 하방 유동성 $75,900과 $74,300이 더 가까운 자석 역할을 할 수 있다.
Candlestick Reader — BULLISH (58%)

Support: $77,394 / $77,144 / $76,107 | Resistance: $77,489 / $77,508 / $78,180 | Horizon: short term

현재 BTC는 $77,365.80으로 7일 고점 $78,180.00과 저점 $76,107.10의 중간값인 EQ $77,143.55 위에 있어 단기적으로 매수 반응은 살아 있지만, EMA20 $77,488.64와 EMA120 $77,507.58 아래에 머물러 구조적 상승 전환은 아직 확인되지 않았습니다. 최근 패턴은 strict hammer quality 0.818과 strict bullish harami quality 0.731이 모두 고거래량으로 포착되어 하방 거부 신호가 우세하며, bull_score 2.20이 bear_score 1.35를 앞섭니다. 다만 bearish engulfing@294와 bearish harami@297도 존재하고 마지막 5개 캔들이 강한 추세형 양봉이 아니므로, 현재 해석은 confirmed bullish structure가 아니라 bullish pre-confirmation setup입니다. $77,488~$77,508 EMA 저항대를 종가 기준 회복하면 $78,180.00 재시험 가능성이 커지고, 반대로 EQ $77,143.55를 이탈하면 hammer 기반 매수 셋업은 약화됩니다.
Fibonacci Analyst — BULLISH (58%)

Support: $77,363 / $77,288 / $76,725 | Resistance: $77,411 / $77,508 / $77,575 | Horizon: short term

확정 구조 관점에서는 상승 스윙 저점 $77,288이 아직 이탈되지 않았지만, ret_0.618 $77,507.54와 ret_0.5 $77,575.35를 모두 하회하고 있어 명확한 bullish BOS가 확인된 상태는 아니다. 반면 셋업 관점에서는 현재가 $77,365.80이 컨플루언스 존 $77,362.56과 거의 일치하며, 이는 ret_0.786 $77,410.99 부근의 깊은 할인 구간 반응으로 해석된다. 단기 반등이 유효하려면 우선 $77,410.99를 회복하고, 이후 골든비율 $77,507.54 및 EQ $77,575.35 위로 수용되어야 한다. 위쪽 목표는 $77,643.16, $77,727.07, 최종적으로 스윙 고점 및 ext_1.0인 $77,862.70이며, 강한 확장 시 $78,019.02와 $78,129.38 컨플루언스가 다음 저항이다.
Harmonic Specialist — BEARISH (56%)

Support: $77,485 / $77,433 / $77,401 | Resistance: $77,513 / $77,551 / $77,713 | Horizon: short term

하모닉 기준으로 전체 directional_scores는 bearish 1.891, bullish 1.384로 약한 bearish 우위지만 dominance가 0.155에 불과해 강한 추세 판정은 어렵습니다. 구조적으로는 BOS/CHoCH 같은 확정 구조 전환 정보가 없으므로 structure_bias는 neutral로 두며, 하모닉은 단독 경로 엔진이 아니기 때문에 방향을 확정하지 않습니다. 다만 setup 측면에서는 현재가 $77,365.80이 활성 bearish Bat PRZ $77,362.98-$77,738.06 및 bearish Gartley PRZ $77,313.44-$77,713.00에 걸쳐 있고, 상단의 완료 bearish Butterfly $77,756.11-$78,172.09와 bearish Bat $77,600.79-$78,072.16은 이미 rejection/reaction_score 1.0을 보였습니다. 따라서 단기적으로는 $77,550-$77,740 재거부 시 $77,401, $77,348, $77,132 방향의 하방 반응을 우선 보되, $76,913.58-$77,374.06의 bullish Bat PRZ 방어가 확인되면 반등 분기 가능성을 열어야 합니다.

Operating Path — complex (55%)

#PriceTypeSourceEst. HoursDescription
1$77,508resistance_testICT CHoCH $77,485.10 + Derivatives EMA120 $77,507.58 + Fibonacci ret_0.618 $77,507.54 + Wyckoff LPS $77,513.20 + Harmonic bearish Gartley D $77,513.224.0현재가 $77,365.80이 strict hammer(quality 0.818) 및 strict bullish harami(quality 0.731)로 $77,362.56 strict fib confluence에서 1차 매수 반응을 보이므로, 초기 반등이 $77,488-$77,513의 6중 컨플루언스 회복 시도로 이어질 가능성이 가장 높다. 그러나 ICT 마지막 확정 이벤트가 동 구간 하향 CHoCH이고 Derivatives EMA20/120 아래에서 거래되며 bearish Gartley D가 동일 지점이라 1차 시도는 거부 후보다.
2$77,237support_testICT 뉴욕 Range Low $77,237.10 + Wyckoff 현재 분배 후보 AR $77,209.3012.0$77,507 구간에서 bearish PRZ($77,362.98-$77,738.06 Bat / $77,313.44-$77,713.00 Gartley) 거부, CVD -3299.45 약화, OI -0.74% 감소가 가중되며 NY Range Low이자 AR 부근으로 되돌림이 이어질 가능성이 크다. 이 구간은 ICT의 sell-side liquidity 흡수 포인트이자 Wyckoff BU/LPS 재검증 지점이다.
3$77,042support_testICT 상승 BOS $77,042.30 + Wyckoff 이전 ACC AR $77,042.3020.0$77,237.10 이탈 시 다음 매수 방어 라인은 BOS이자 직전 축적 구조의 AR가 동일한 $77,042.30이다. 이 지점에서 LPS/BU 재방어가 확인되어야 Wyckoff Phase E 시나리오와 ICT 할인 구간 재매집 셋업이 복원된다. 방어 실패 시 $76,696.70 Spring 검증으로 이어진다.

Period Extremes

HorizonExpected LowExpected HighSequence
4h$77,330$77,510High first
8h$77,237$77,513High first
24h$77,042$77,575High first

Triggers

Invalidation: $77,863

Raw Operating Path Response
```json
{
  "path_type": "complex",
  "confidence": 0.55,
  "waypoints": [
    {
      "seq": 1,
      "price": 77507.58,
      "type": "resistance_test",
      "source": "ICT CHoCH $77,485.10 + Derivatives EMA120 $77,507.58 + Fibonacci ret_0.618 $77,507.54 + Wyckoff LPS $77,513.20 + Harmonic bearish Gartley D $77,513.22",
      "description": "현재가 $77,365.80이 strict hammer(quality 0.818) 및 strict bullish harami(quality 0.731)로 $77,362.56 strict fib confluence에서 1차 매수 반응을 보이므로, 초기 반등이 $77,488-$77,513의 6중 컨플루언스 회복 시도로 이어질 가능성이 가장 높다. 그러나 ICT 마지막 확정 이벤트가 동 구간 하향 CHoCH이고 Derivatives EMA20/120 아래에서 거래되며 bearish Gartley D가 동일 지점이라 1차 시도는 거부 후보다.",
      "est_hours": 4.0
    },
    {
      "seq": 2,
      "price": 77237.10,
      "type": "support_test",
      "source": "ICT 뉴욕 Range Low $77,237.10 + Wyckoff 현재 분배 후보 AR $77,209.30",
      "description": "$77,507 구간에서 bearish PRZ($77,362.98-$77,738.06 Bat / $77,313.44-$77,713.00 Gartley) 거부, CVD -3299.45 약화, OI -0.74% 감소가 가중되며 NY Range Low이자 AR 부근으로 되돌림이 이어질 가능성이 크다. 이 구간은 ICT의 sell-side liquidity 흡수 포인트이자 Wyckoff BU/LPS 재검증 지점이다.",
      "est_hours": 12.0
    },
    {
      "seq": 3,
      "price": 77042.30,
      "type": "support_test",
      "source": "ICT 상승 BOS $77,042.30 + Wyckoff 이전 ACC AR $77,042.30",
      "description": "$77,237.10 이탈 시 다음 매수 방어 라인은 BOS이자 직전 축적 구조의 AR가 동일한 $77,042.30이다. 이 지점에서 LPS/BU 재방어가 확인되어야 Wyckoff Phase E 시나리오와 ICT 할인 구간 재매집 셋업이 복원된다. 방어 실패 시 $76,696.70 Spring 검증으로 이어진다.",
      "est_hours": 20.0
    }
  ],
  "period_extremes": {
    "4h":  {"expected_high": 77510.0, "expected_low": 77330.0, "high_first": true},
    "8h":  {"expected_high": 77513.2, "expected_low": 77237.1, "high_first": true},
    "24h": {"expected_high": 77575.35, "expected_low": 77042.3, "high_first": true}
  },
  "triggers": {
    "bullish": {"price": 77513.20, "description": "$77,513.20 15분 종가 회복 시 ICT 하향 CHoCH 무력화 + Wyckoff LPS 재수용 + Fib 0.618 돌파가 동시에 성립해 $77,575 EQ → $77,699.82 strict fib confluence → $77,862.70 Range High까지의 상승 경로로 전환된다."},
    "bearish": {"price": 77209.30, "description": "$77,209.30(Wyckoff AR) 명확한 이탈은 ICT NY Range Low $77,237.10 동반 손상 및 분배 후보 AR 붕괴를 의미하며, $77,042.30 → $76,696.70(Spring) 재시험을 가속한다."}
  },
  "scenario_invalidation": 77862.70
}
```

15분 신호가 NEUTRAL이고 setup bias가 양방향 강도가 비슷하므로, 핵심 시나리오는 $77,362-$77,366 strict 컨플루언스에서 1차 반등 → $77,488-$77,513 회복 실패 → $77,237 / $77,042 순차 재검증 구조로 정렬했습니다. 무효화는 $77,862.70 Range High의 명확한 상방 수용 시점으로 두었습니다.

Raw Chairman Response
{
  "overall_signal": "neutral",
  "overall_confidence": 0.52,
  "execution_setup": {
    "setup_bias": "neutral",
    "setup_strength": 0.58,
    "active_setups": [
      "상승 실행 셋업: 현재가 $77,365.80가 ICT EQ $77,549.90 및 피보나치 ret_0.5 $77,575.35 아래의 할인 구간에 위치",
      "상승 실행 셋업: 피보나치 고밀도 컨플루언스 $77,362.56을 현재가가 테스트 중이며, strict hammer quality 0.818 및 strict bullish harami quality 0.731이 하방 거부를 시사",
      "상승 실행 셋업: ICT 기준 이전 상승 BOS $77,042.30 및 $77,825.80 이후 87.8% 깊은 되돌림이 발생해 재매집 후보 구간 형성",
      "하락 실행 셋업: 가격이 EMA20 $77,488.64 및 EMA120 $77,507.58 아래에 머물고 CVD 변화량 -3299.4510으로 매수 주도력이 약화",
      "하락 실행 셋업: 현재가가 활성 bearish Bat PRZ $77,362.98-$77,738.06 및 bearish Gartley PRZ $77,313.44-$77,713.00 내부에 위치",
      "하락 실행 셋업: Wyckoff상 SOS $77,379.10 및 LPS $77,513.20 아래에 있어 Phase E 확정보다는 BU/LPS 재검증 상태"
    ],
    "setup_vs_structure": "구조 진단은 중립적 재구조화 상태이나, 실행 셋업은 상승 반전 후보와 하락 재거부 후보가 동시에 강하게 존재한다. 즉, 할인 구간 매수 반응은 관찰되지만 $77,488-$77,513 회복 전까지는 구조 회복으로 확정할 수 없다."
  },
  "signal_breakdown": {
    "bullish_count": 1,
    "bearish_count": 1,
    "neutral_count": 4
  },
  "key_levels": {
    "support": [
      77362.56,
      77237.1,
      77209.3,
      77143.55,
      77042.3,
      76696.7,
      76107.1
    ],
    "resistance": [
      77379.1,
      77485.1,
      77488.64,
      77507.58,
      77513.2,
      77549.9,
      77575.35,
      77713.0,
      77738.06,
      77862.7,
      78063.8,
      78180.0
    ]
  },
  "confluences": [
    "현재가 부근 $77,362-$77,366는 Fibonacci 컨플루언스 $77,362.56, Harmonic bearish Bat PRZ 하단 $77,362.98, 그리고 현재가 $77,365.80이 거의 일치하는 핵심 반응 구간이다.",
    "$77,488-$77,513 구간은 ICT 하향 CHoCH $77,485.10, Derivatives EMA20 $77,488.64, Fibonacci ret_0.618 $77,507.54, Derivatives EMA120 $77,507.58, Wyckoff LPS $77,513.20, Harmonic bearish Gartley D $77,513.22가 겹치는 강한 구조 회복/거부 판단 구간이다.",
    "$77,549-$77,575 구간은 ICT EQ $77,549.90, Harmonic bearish Bat D $77,550.52, Fibonacci ret_0.5 $77,575.35가 겹쳐 중단 균형선 역할을 한다.",
    "$77,237-$77,209는 ICT 뉴욕 Range Low $77,237.10과 Wyckoff 현재 분배 후보 AR $77,209.30이 가까운 하단 구조 기준선이다.",
    "$77,042.30은 ICT 상승 BOS 레벨이자 Wyckoff 이전 축적 구조의 AR로, 여러 구조 프레임에서 하단 회복권의 핵심 기준이다.",
    "$77,862.70는 ICT Range High, Fibonacci ext_1.0, Wyckoff UT, Harmonic 완료 bearish Bat/Gartley D가 중첩된 상단 구조 저항이다.",
    "$76,107.10은 Derivatives 7일 저점이자 Wyckoff SC로 장기 하단 구조 기준이 일치한다."
  ],
  "conflicts": [
    "Wyckoff는 이전 축적 구조를 SC $76,107.10 → AR $77,042.30 → Spring $76,696.70 → SOS $77,379.10 → LPS $77,513.20로 해석해 큰 구조는 축적 우위로 보지만, 같은 자료 안에서 현재 활성 구조는 BC $78,063.80 이후 AR $77,209.30, ST $77,777.20, SOW $77,288.00, UT $77,862.70을 포함한 분배 후보로 나타난다.",
    "ICT는 실행 관점에서 할인 구간의 상승 재매집 가능성을 강하게 보지만, 확정 구조상 마지막 이벤트가 $77,485.10 하향 CHoCH이므로 단기 구조는 bearish로 판정한다.",
    "Fibonacci와 Candlestick은 $77,362 부근 반등 후보와 strict bullish 패턴을 강조하지만, Derivatives는 CVD 약화, EMA20/EMA120 하회, OI 감소, 음의 basis로 매수 참여 약화를 지적한다.",
    "Harmonic은 현재가 부근에 bullish PRZ와 bearish PRZ가 동시에 중첩되어 있으나, 상단 $77,756-$78,172 완료 bearish Butterfly 및 $77,600-$78,072 완료 bearish Bat의 반응 점수가 높아 상단 공급 반응을 더 강하게 반영한다.",
    "구조와 실행 셋업이 분리되어 있다. 구조는 중립적 전환/재구조화 상태이나, 실행 셋업은 할인권 매수 반응과 PRZ/파생 약세가 동시에 충돌한다."
  ],
  "highest_conviction_analyst": "Wyckoff Expert — 구조 진단 관점에서 가장 넓은 사이클 맥락과 구체적 가격 단계가 제시되어 있다. 다만 이전 축적 구조의 강도와 현재 활성 분배 후보가 충돌하므로, 결론은 단순 bullish가 아니라 '완료된 축적 이후 재구조화/분배 후보 출현'으로 해석하는 것이 가장 타당하다.",
  "invalidation_level": "중립 재구조화 진단은 $77,862.70 상방 수용 또는 $77,042.30 하방 이탈 시 무효화된다. $77,862.70 회복은 현재 분배 후보 약화, $77,042.30 이탈은 이전 축적 회복권 훼손으로 해석한다.",
  "executive_summary": "현재 BTC 15분 구조는 단일 방향의 확정 추세라기보다, 이전 축적 구조가 완료된 뒤 상단에서 새로운 분배 후보가 형성되는 재구조화 구간으로 진단된다. Wyckoff상 과거 SC $76,107.10, AR $77,042.30, Spring $76,696.70, SOS $77,379.10, LPS $77,513.20의 축적 맥락은 여전히 남아 있지만, 현재가는 SOS와 LPS 아래에 있어 Phase E 상승 지속으로 확정하기 어렵다. 동시에 ICT의 마지막 확정 이벤트는 $77,485.10 하향 CHoCH이며, $77,862.70 상단 UT/Range High에서 거부된 흔적이 있어 단기 구조 회복은 아직 미완성이다. 핵심 구조 축은 하단 $77,237-$77,209, 중단 $77,488-$77,513, 상단 $77,862.70이며, $77,042.30 이탈 또는 $77,862.70 상방 수용이 현재 중립 구조를 해소하는 조건이다."
}
Full Result JSON
{
  "symbol": "BTC/USDT",
  "timeframe": "15m",
  "timestamp": "2026-05-22 17:00 KST",
  "last_price": 77365.8,
  "num_candles": 300,
  "stage1_analyses": {
    "ict": {
      "agent_id": "ict",
      "display_name": "ICT Trader",
      "signal": "bullish",
      "confidence": 0.64,
      "structure_bias": "bearish",
      "setup_bias": "bullish",
      "setup_score": 0.92,
      "setup_signals": [
        "현재가 $77,365.80가 EQ $77,549.90 아래에 위치해 discount zone 진입",
        "상승 BOS가 $77,042.30 및 $77,825.80에서 발생한 이후 87.8% 깊은 되돌림 형성",
        "현재가가 뉴욕 세션 저점/Range Low $77,237.10 근처에서 거래되어 할인 구간 유동성 흡수 가능성",
        "EMA20 $77,488.64, EMA120 $77,507.58, EQ $77,549.90가 모두 근접 저항으로 모여 있어 회복 시 단기 bullish confirmation 가능"
      ],
      "reasoning": "확정 구조 기준으로는 마지막 이벤트가 $77,485.10 하향 CHoCH이므로 structure_bias는 단기 bearish로 읽어야 합니다. 다만 실행 셋업 관점에서는 현재가 $77,365.80가 EQ $77,549.90 아래 discount zone에 있으며, 이전 상승 BOS $77,042.30 및 $77,825.80 이후 87.8% 깊은 되돌림이 발생해 bullish 재매집 셋업이 강합니다. 현재 구간은 Range Low $77,237.10에 가까워 sell-side liquidity를 노린 뒤 반등할 수 있는 위치지만, 아직 활성 OB나 미체결 FVG, 최근 liquidity sweep이 없기 때문에 완전한 확정 매수 신호는 아닙니다. $77,485.10 CHoCH 레벨과 EQ $77,549.90를 회복하면 bullish setup이 구조 회복으로 전환될 가능성이 높고, 반대로 $77,237.10 이탈 시 셋업은 실패로 봅니다.",
      "key_levels": {
        "support": [
          77237.1,
          77042.3,
          76696.7,
          76107.1
        ],
        "resistance": [
          77485.1,
          77549.9,
          77825.8,
          77862.7,
          78180.0
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "77237.10",
      "risk_scenario": "$77,237.10 Range Low가 명확히 이탈되고 그 아래에서 15분봉 종가 수용이 발생하면 discount 매수 셋업은 실패하며, 가격은 이전 bullish BOS 레벨 $77,042.30을 재테스트하거나 전일 저점 $76,696.70까지 sell-side liquidity를 확장할 수 있습니다.",
      "data_quality": "medium",
      "metrics": {
        "order_blocks_total": 0,
        "confirmed_bullish_ob": 0,
        "confirmed_bearish_ob": 0,
        "candidate_bullish_ob": 0,
        "candidate_bearish_ob": 0,
        "active_bullish_ob": 0,
        "active_bearish_ob": 0,
        "nearest_bull_ob_range": null,
        "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": 72,
        "fvg_open_zones": [],
        "bos_choch_events": [
          "BOS_bullish",
          "BOS_bullish",
          "CHoCH_bearish"
        ],
        "bos_choch_levels": [
          {
            "type": "BOS_bullish",
            "level": 77042.3
          },
          {
            "type": "BOS_bullish",
            "level": 77825.8
          },
          {
            "type": "CHoCH_bearish",
            "level": 77485.1
          }
        ],
        "bos_sequence": [
          "BOS_bullish",
          "BOS_bullish",
          "CHoCH_bearish"
        ],
        "consecutive_bull_bos": 0,
        "consecutive_bear_bos": 0,
        "recent_liq_sweeps": [],
        "recent_sweep_levels": [],
        "liquidity_resting": [],
        "current_zone": "discount",
        "eq_level": 77549.9,
        "range_high": 77862.7,
        "range_low": 77237.1,
        "bull_score": 6.5,
        "bear_score": 2.2,
        "setup_bias": "bullish",
        "setup_score": 0.92,
        "setup_signals": [
          "bullish BOS above $77,042.30",
          "bullish BOS above $77,825.80",
          "deep retracement 87.8% in discount zone"
        ],
        "retracement_direction": "bullish",
        "current_retracement_pct": 87.8,
        "deepest_retracement_pct": 108.9,
        "previous_day_high": 78180.0,
        "previous_day_low": 76696.7,
        "broken_prev_high": false,
        "broken_prev_low": false,
        "sessions": {
          "London": {
            "active": false,
            "high": null,
            "low": null
          },
          "New York": {
            "active": true,
            "high": 77862.7,
            "low": 77237.1
          },
          "Asian kill zone": {
            "active": false,
            "high": null,
            "low": null
          }
        }
      },
      "raw_llm_response": "{\n  \"signal\": \"bullish\",\n  \"confidence\": 0.64,\n  \"structure_bias\": \"bearish\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.92,\n  \"setup_signals\": [\n    \"현재가 $77,365.80가 EQ $77,549.90 아래에 위치해 discount zone 진입\",\n    \"상승 BOS가 $77,042.30 및 $77,825.80에서 발생한 이후 87.8% 깊은 되돌림 형성\",\n    \"현재가가 뉴욕 세션 저점/Range Low $77,237.10 근처에서 거래되어 할인 구간 유동성 흡수 가능성\",\n    \"EMA20 $77,488.64, EMA120 $77,507.58, EQ $77,549.90가 모두 근접 저항으로 모여 있어 회복 시 단기 bullish confirmation 가능\"\n  ],\n  \"reasoning\": \"확정 구조 기준으로는 마지막 이벤트가 $77,485.10 하향 CHoCH이므로 structure_bias는 단기 bearish로 읽어야 합니다. 다만 실행 셋업 관점에서는 현재가 $77,365.80가 EQ $77,549.90 아래 discount zone에 있으며, 이전 상승 BOS $77,042.30 및 $77,825.80 이후 87.8% 깊은 되돌림이 발생해 bullish 재매집 셋업이 강합니다. 현재 구간은 Range Low $77,237.10에 가까워 sell-side liquidity를 노린 뒤 반등할 수 있는 위치지만, 아직 활성 OB나 미체결 FVG, 최근 liquidity sweep이 없기 때문에 완전한 확정 매수 신호는 아닙니다. $77,485.10 CHoCH 레벨과 EQ $77,549.90를 회복하면 bullish setup이 구조 회복으로 전환될 가능성이 높고, 반대로 $77,237.10 이탈 시 셋업은 실패로 봅니다.\",\n  \"key_levels\": {\n    \"support\": [\n      77237.1,\n      77042.3,\n      76696.7,\n      76107.1\n    ],\n    \"resistance\": [\n      77485.1,\n      77549.9,\n      77825.8,\n      77862.7,\n      78180.0\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"77237.10\",\n  \"risk_scenario\": \"$77,237.10 Range Low가 명확히 이탈되고 그 아래에서 15분봉 종가 수용이 발생하면 discount 매수 셋업은 실패하며, 가격은 이전 bullish BOS 레벨 $77,042.30을 재테스트하거나 전일 저점 $76,696.70까지 sell-side liquidity를 확장할 수 있습니다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "derivatives": {
      "agent_id": "derivatives",
      "display_name": "Derivatives Trader",
      "signal": "bearish",
      "confidence": 0.58,
      "structure_bias": "neutral",
      "setup_bias": "bearish",
      "setup_score": 0.64,
      "setup_signals": [
        "현재가 $77,365.80는 7일 범위 EQ $77,143.55 위에 있어 약한 premium zone에 위치",
        "CVD 변화량 -3299.4510으로 매수 참여가 약화되며, 가격은 EMA20 $77,488.64 / EMA120 $77,507.58 부근에서 정체",
        "OI 24h -0.74%로 신규 추세 포지션 유입보다 포지션 언와인딩이 우세",
        "롱 계정 비율 0.564, 숏 계정 비율 0.436이며 long_accounts_rising_short_accounts_falling로 단기 롱 쏠림이 증가",
        "선물 베이시스 -0.0529%로 현물 대비 선물이 할인되어 파생시장 수요가 약함",
        "하방 미체결 유동성 $75,900 / $74,300 / $69,900 및 strongest liquidity $69,700이 열려 있음"
      ],
      "reasoning": "확정 구조 관점에서는 7일 저점 $76,107.10 이탈이나 7일 고점 $78,180.00 돌파가 아직 없어 structure_bias는 neutral이다. 다만 셋업 관점에서는 현재가 $77,365.80가 EQ $77,143.55 위의 약한 프리미엄에 있고, CVD가 -3299.4510으로 악화되는 동안 가격은 EMA20 $77,488.64와 EMA120 $77,507.58 아래에서 눌리고 있어 매수 참여 약화가 보인다. OI가 24시간 -0.74% 감소해 추세 추격성 신규 롱 유입은 약하고, 동시에 롱 계정 비율은 0.564로 상승해 단기 롱 포지셔닝이 불리하게 쌓이고 있다. 파생 베이시스도 -0.0529%로 약세이며, 하방 유동성 $75,900과 $74,300이 더 가까운 자석 역할을 할 수 있다.",
      "key_levels": {
        "support": [
          77143.55,
          76107.1,
          75900,
          74300,
          69700
        ],
        "resistance": [
          77488.64,
          77507.58,
          78180,
          79000,
          80500
        ]
      },
      "time_horizon": "short term, 향후 4-8시간",
      "invalidation_level": "$78,180.00 상방 안착",
      "risk_scenario": "반대로 $78,180.00을 강하게 돌파하고 OI가 증가하면서 CVD가 양전환하면, 현재의 약한 롱 쏠림은 숏 커버링 트리거로 바뀌며 $79,000 유동성 및 $80,500 상단 청산 구간까지 빠르게 확장될 수 있다.",
      "data_quality": "medium",
      "metrics": {
        "cvd_divergence": 0.3,
        "cvd_change": -3299.451,
        "oi_trend": 0.426,
        "oi_change_pct_24h": -0.74,
        "oi_latest": 100666.14,
        "funding_pressure": 0.468,
        "funding_avg": 3.219e-05,
        "funding_change_24h": -4.823e-05,
        "long_account_ratio": 0.56,
        "short_account_ratio": 0.44,
        "long_account_latest": 0.564,
        "short_account_latest": 0.436,
        "long_account_change_24h": 0.0056,
        "short_account_change_24h": -0.0056,
        "account_flow_label": "long_accounts_rising_short_accounts_falling",
        "account_short_crowding": 0.0,
        "account_long_crowding": 0.496,
        "ls_imbalance": 0.0,
        "ls_imbalance_interpretation": "high=short-account crowding / low=long-account crowding",
        "spot_futures_basis_score": 0.487,
        "spot_futures_basis_pct": -0.0529,
        "basis_change_lookback": -0.0093,
        "aggregate_score": 0.336,
        "bull_signals": 0,
        "bear_signals": 3,
        "liq_below": [
          [
            75900,
            936.9166207500001
          ],
          [
            74300,
            976.2875550000001
          ],
          [
            69900,
            1052.6653225
          ]
        ],
        "liq_above": [
          [
            79000,
            936.9166207500001
          ],
          [
            80500,
            1269.5699370000004
          ],
          [
            85100,
            971.03350875
          ]
        ],
        "strongest_liq_level": 69700,
        "fragility_score": 0.59,
        "positioning_extreme": "balanced"
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.58,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.64,\n  \"setup_signals\": [\n    \"현재가 $77,365.80는 7일 범위 EQ $77,143.55 위에 있어 약한 premium zone에 위치\",\n    \"CVD 변화량 -3299.4510으로 매수 참여가 약화되며, 가격은 EMA20 $77,488.64 / EMA120 $77,507.58 부근에서 정체\",\n    \"OI 24h -0.74%로 신규 추세 포지션 유입보다 포지션 언와인딩이 우세\",\n    \"롱 계정 비율 0.564, 숏 계정 비율 0.436이며 long_accounts_rising_short_accounts_falling로 단기 롱 쏠림이 증가\",\n    \"선물 베이시스 -0.0529%로 현물 대비 선물이 할인되어 파생시장 수요가 약함\",\n    \"하방 미체결 유동성 $75,900 / $74,300 / $69,900 및 strongest liquidity $69,700이 열려 있음\"\n  ],\n  \"reasoning\": \"확정 구조 관점에서는 7일 저점 $76,107.10 이탈이나 7일 고점 $78,180.00 돌파가 아직 없어 structure_bias는 neutral이다. 다만 셋업 관점에서는 현재가 $77,365.80가 EQ $77,143.55 위의 약한 프리미엄에 있고, CVD가 -3299.4510으로 악화되는 동안 가격은 EMA20 $77,488.64와 EMA120 $77,507.58 아래에서 눌리고 있어 매수 참여 약화가 보인다. OI가 24시간 -0.74% 감소해 추세 추격성 신규 롱 유입은 약하고, 동시에 롱 계정 비율은 0.564로 상승해 단기 롱 포지셔닝이 불리하게 쌓이고 있다. 파생 베이시스도 -0.0529%로 약세이며, 하방 유동성 $75,900과 $74,300이 더 가까운 자석 역할을 할 수 있다.\",\n  \"key_levels\": {\n    \"support\": [\n      77143.55,\n      76107.1,\n      75900,\n      74300,\n      69700\n    ],\n    \"resistance\": [\n      77488.64,\n      77507.58,\n      78180,\n      79000,\n      80500\n    ]\n  },\n  \"time_horizon\": \"short term, 향후 4-8시간\",\n  \"invalidation_level\": \"$78,180.00 상방 안착\",\n  \"risk_scenario\": \"반대로 $78,180.00을 강하게 돌파하고 OI가 증가하면서 CVD가 양전환하면, 현재의 약한 롱 쏠림은 숏 커버링 트리거로 바뀌며 $79,000 유동성 및 $80,500 상단 청산 구간까지 빠르게 확장될 수 있다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "fibonacci": {
      "agent_id": "fibonacci",
      "display_name": "Fibonacci Analyst",
      "signal": "bullish",
      "confidence": 0.58,
      "structure_bias": "neutral",
      "setup_bias": "bullish",
      "setup_score": 0.66,
      "setup_signals": [
        "현재가 $77,365.80가 EQ 역할의 ret_0.5 $77,575.35 아래에 위치해 할인 구간 진입",
        "가격이 4개 피보나치 레벨이 겹친 고밀도 컨플루언스 $77,362.56을 테스트 중",
        "상승 스윙 $77,288 → $77,863 기준 ret_0.786 $77,410.99 부근까지 깊은 되돌림 발생",
        "골든비율 ret_0.618 $77,507.54를 회복하지 못한 상태라 구조 전환 확인은 아직 부재",
        "fib_reaction_state가 testing이고 reaction_probability가 0.65로 단기 반등 시도 가능성 우위"
      ],
      "reasoning": "확정 구조 관점에서는 상승 스윙 저점 $77,288이 아직 이탈되지 않았지만, ret_0.618 $77,507.54와 ret_0.5 $77,575.35를 모두 하회하고 있어 명확한 bullish BOS가 확인된 상태는 아니다. 반면 셋업 관점에서는 현재가 $77,365.80이 컨플루언스 존 $77,362.56과 거의 일치하며, 이는 ret_0.786 $77,410.99 부근의 깊은 할인 구간 반응으로 해석된다. 단기 반등이 유효하려면 우선 $77,410.99를 회복하고, 이후 골든비율 $77,507.54 및 EQ $77,575.35 위로 수용되어야 한다. 위쪽 목표는 $77,643.16, $77,727.07, 최종적으로 스윙 고점 및 ext_1.0인 $77,862.70이며, 강한 확장 시 $78,019.02와 $78,129.38 컨플루언스가 다음 저항이다.",
      "key_levels": {
        "support": [
          77362.56,
          77288.0,
          76724.82
        ],
        "resistance": [
          77410.99,
          77507.54,
          77575.35,
          77643.16,
          77727.07,
          77862.7,
          78019.02,
          78129.38
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "77288.00",
      "risk_scenario": "$77,288.00 스윙 저점이 명확히 이탈되면 현재의 할인 구간 반등 셋업은 실패로 간주되며, 하단 컨플루언스 $76,724.82까지 추가 하락 압력이 열릴 수 있다. 반대로 $77,507.54 골든비율과 $77,575.35 EQ를 빠르게 회복하면 단기 구조가 다시 상방으로 기울며 $77,862.70 및 $78,129.38 저항 테스트 가능성이 커진다.",
      "data_quality": "high",
      "metrics": {
        "swing_pair": "Low→High: $77,288 → $77,863",
        "direction": "up",
        "nearest_fib": "ret_0.786",
        "nearest_fib_price": 77410.99,
        "nearest_fib_distance": 0.06,
        "golden_ratio_level": 77507.54,
        "fib_ret_382": 77643.16,
        "fib_ret_618": 77507.54,
        "confluence_zones": [
          {
            "price": 77699.82,
            "count": 5,
            "levels": [
              "ret_0.5",
              "ret_0.382",
              "ret_0.236",
              "ret_0.236",
              "ext_1.0"
            ],
            "cluster_score": 1.0
          },
          {
            "price": 77362.56,
            "count": 4,
            "levels": [
              "ret_0.5",
              "ret_0.382",
              "ret_0.786",
              "ret_0.618"
            ],
            "cluster_score": 1.0
          },
          {
            "price": 78129.38,
            "count": 4,
            "levels": [
              "ext_1.272",
              "ext_1.414",
              "ext_1.0",
              "ext_1.618"
            ],
            "cluster_score": 1.0
          },
          {
            "price": 78657.93,
            "count": 3,
            "levels": [
              "ext_2.0",
              "ext_1.272",
              "ext_2.618"
            ],
            "cluster_score": 0.85
          },
          {
            "price": 76724.82,
            "count": 2,
            "levels": [
              "ret_0.786",
              "ret_0.618"
            ],
            "cluster_score": 0.6
          }
        ],
        "support_levels": [],
        "resistance_levels": [
          77410.9858,
          77507.5354,
          77575.35
        ],
        "level_candidates": [
          {
            "name": "ret_0.236",
            "price": 77727.07,
            "distance_pct": 0.47,
            "is_support": false,
            "cluster_score": 1.0
          },
          {
            "name": "ret_0.382",
            "price": 77643.16,
            "distance_pct": 0.36,
            "is_support": false,
            "cluster_score": 1.0
          },
          {
            "name": "ret_0.5",
            "price": 77575.35,
            "distance_pct": 0.27,
            "is_support": false,
            "cluster_score": 1.0
          },
          {
            "name": "ret_0.618",
            "price": 77507.54,
            "distance_pct": 0.18,
            "is_support": false,
            "cluster_score": 1.0
          },
          {
            "name": "ret_0.786",
            "price": 77410.99,
            "distance_pct": 0.06,
            "is_support": false,
            "cluster_score": 1.0
          },
          {
            "name": "ext_1.0",
            "price": 77862.7,
            "distance_pct": 0.64,
            "is_support": false,
            "cluster_score": 1.0
          },
          {
            "name": "ext_1.272",
            "price": 78019.02,
            "distance_pct": 0.84,
            "is_support": false,
            "cluster_score": 1.0
          },
          {
            "name": "ext_1.414",
            "price": 78100.63,
            "distance_pct": 0.95,
            "is_support": false,
            "cluster_score": 1.0
          },
          {
            "name": "ext_1.618",
            "price": 78217.86,
            "distance_pct": 1.1,
            "is_support": false,
            "cluster_score": 1.0
          },
          {
            "name": "ext_2.0",
            "price": 78437.4,
            "distance_pct": 1.39,
            "is_support": false,
            "cluster_score": 1.0
          }
        ],
        "confluence_quality": 1.0,
        "fib_reaction_state": "testing",
        "reaction_probability": 0.65
      },
      "raw_llm_response": "{\n  \"signal\": \"bullish\",\n  \"confidence\": 0.58,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bullish\",\n  \"setup_score\": 0.66,\n  \"setup_signals\": [\n    \"현재가 $77,365.80가 EQ 역할의 ret_0.5 $77,575.35 아래에 위치해 할인 구간 진입\",\n    \"가격이 4개 피보나치 레벨이 겹친 고밀도 컨플루언스 $77,362.56을 테스트 중\",\n    \"상승 스윙 $77,288 → $77,863 기준 ret_0.786 $77,410.99 부근까지 깊은 되돌림 발생\",\n    \"골든비율 ret_0.618 $77,507.54를 회복하지 못한 상태라 구조 전환 확인은 아직 부재\",\n    \"fib_reaction_state가 testing이고 reaction_probability가 0.65로 단기 반등 시도 가능성 우위\"\n  ],\n  \"reasoning\": \"확정 구조 관점에서는 상승 스윙 저점 $77,288이 아직 이탈되지 않았지만, ret_0.618 $77,507.54와 ret_0.5 $77,575.35를 모두 하회하고 있어 명확한 bullish BOS가 확인된 상태는 아니다. 반면 셋업 관점에서는 현재가 $77,365.80이 컨플루언스 존 $77,362.56과 거의 일치하며, 이는 ret_0.786 $77,410.99 부근의 깊은 할인 구간 반응으로 해석된다. 단기 반등이 유효하려면 우선 $77,410.99를 회복하고, 이후 골든비율 $77,507.54 및 EQ $77,575.35 위로 수용되어야 한다. 위쪽 목표는 $77,643.16, $77,727.07, 최종적으로 스윙 고점 및 ext_1.0인 $77,862.70이며, 강한 확장 시 $78,019.02와 $78,129.38 컨플루언스가 다음 저항이다.\",\n  \"key_levels\": {\n    \"support\": [\n      77362.56,\n      77288.0,\n      76724.82\n    ],\n    \"resistance\": [\n      77410.99,\n      77507.54,\n      77575.35,\n      77643.16,\n      77727.07,\n      77862.7,\n      78019.02,\n      78129.38\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"77288.00\",\n  \"risk_scenario\": \"$77,288.00 스윙 저점이 명확히 이탈되면 현재의 할인 구간 반등 셋업은 실패로 간주되며, 하단 컨플루언스 $76,724.82까지 추가 하락 압력이 열릴 수 있다. 반대로 $77,507.54 골든비율과 $77,575.35 EQ를 빠르게 회복하면 단기 구조가 다시 상방으로 기울며 $77,862.70 및 $78,129.38 저항 테스트 가능성이 커진다.\",\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": [
        "고거래량 strict hammer 감지: quality 0.818, 최근 300개 중 295번 캔들에서 bullish reversal 후보",
        "고거래량 strict bullish_harami 감지: quality 0.731, 매수 반응이 단발성이 아니라 재차 확인됨",
        "bull_score 2.20 대 bear_score 1.35로 최근 캔들 패턴 점수는 매수 우위",
        "현재가 $77,365.80는 7일 레인지 EQ $77,143.55 위에 있어 약한 premium 구간이나, EMA20 $77,488.64와 EMA120 $77,507.58 아래라 아직 구조적 수용은 미확인",
        "EMA20·EMA120·EMA240가 $77,393.82~$77,507.58에 밀집해 있어 단기 방향 확정 전 압축 구간"
      ],
      "reasoning": "현재 BTC는 $77,365.80으로 7일 고점 $78,180.00과 저점 $76,107.10의 중간값인 EQ $77,143.55 위에 있어 단기적으로 매수 반응은 살아 있지만, EMA20 $77,488.64와 EMA120 $77,507.58 아래에 머물러 구조적 상승 전환은 아직 확인되지 않았습니다. 최근 패턴은 strict hammer quality 0.818과 strict bullish harami quality 0.731이 모두 고거래량으로 포착되어 하방 거부 신호가 우세하며, bull_score 2.20이 bear_score 1.35를 앞섭니다. 다만 bearish engulfing@294와 bearish harami@297도 존재하고 마지막 5개 캔들이 강한 추세형 양봉이 아니므로, 현재 해석은 confirmed bullish structure가 아니라 bullish pre-confirmation setup입니다. $77,488~$77,508 EMA 저항대를 종가 기준 회복하면 $78,180.00 재시험 가능성이 커지고, 반대로 EQ $77,143.55를 이탈하면 hammer 기반 매수 셋업은 약화됩니다.",
      "key_levels": {
        "support": [
          77393.82,
          77143.55,
          76107.1
        ],
        "resistance": [
          77488.64,
          77507.58,
          78180.0
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$77,143.55",
      "risk_scenario": "반대 시나리오는 현재가가 EMA20 $77,488.64와 EMA120 $77,507.58을 회복하지 못하고 EQ $77,143.55 아래로 재진입하는 경우입니다. 이 경우 고거래량 hammer와 bullish harami는 실패한 반등 신호로 해석될 수 있으며, 매도 압력이 확대되면 7일 저점 $76,107.10 유동성 재테스트가 열립니다.",
      "data_quality": "high",
      "metrics": {
        "total_patterns_detected": 164,
        "recent_patterns": 6,
        "pattern_list": [
          "hammer@295",
          "bearish_engulfing@294",
          "bullish_engulfing@296",
          "doji@291",
          "bullish_harami@291",
          "bearish_harami@297"
        ],
        "atr_value": 114.98,
        "vol_avg_20": 693.95,
        "high_volume_patterns": [
          "hammer",
          "doji",
          "bullish_harami"
        ],
        "pattern_candidates": [
          {
            "pattern": "hammer",
            "signal": "bullish",
            "pattern_quality": 0.818,
            "tier": "strict",
            "high_volume": true
          },
          {
            "pattern": "bullish_harami",
            "signal": "bullish",
            "pattern_quality": 0.731,
            "tier": "strict",
            "high_volume": true
          },
          {
            "pattern": "bullish_engulfing",
            "signal": "bullish",
            "pattern_quality": 0.593,
            "tier": "candidate",
            "high_volume": false
          },
          {
            "pattern": "doji",
            "signal": "neutral",
            "pattern_quality": 0.555,
            "tier": "candidate",
            "high_volume": true
          },
          {
            "pattern": "bearish_engulfing",
            "signal": "bearish",
            "pattern_quality": 0.458,
            "tier": "candidate",
            "high_volume": false
          }
        ],
        "best_pattern_quality": 0.818,
        "bull_score": 2.2,
        "bear_score": 1.35
      },
      "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    \"고거래량 strict hammer 감지: quality 0.818, 최근 300개 중 295번 캔들에서 bullish reversal 후보\",\n    \"고거래량 strict bullish_harami 감지: quality 0.731, 매수 반응이 단발성이 아니라 재차 확인됨\",\n    \"bull_score 2.20 대 bear_score 1.35로 최근 캔들 패턴 점수는 매수 우위\",\n    \"현재가 $77,365.80는 7일 레인지 EQ $77,143.55 위에 있어 약한 premium 구간이나, EMA20 $77,488.64와 EMA120 $77,507.58 아래라 아직 구조적 수용은 미확인\",\n    \"EMA20·EMA120·EMA240가 $77,393.82~$77,507.58에 밀집해 있어 단기 방향 확정 전 압축 구간\"\n  ],\n  \"reasoning\": \"현재 BTC는 $77,365.80으로 7일 고점 $78,180.00과 저점 $76,107.10의 중간값인 EQ $77,143.55 위에 있어 단기적으로 매수 반응은 살아 있지만, EMA20 $77,488.64와 EMA120 $77,507.58 아래에 머물러 구조적 상승 전환은 아직 확인되지 않았습니다. 최근 패턴은 strict hammer quality 0.818과 strict bullish harami quality 0.731이 모두 고거래량으로 포착되어 하방 거부 신호가 우세하며, bull_score 2.20이 bear_score 1.35를 앞섭니다. 다만 bearish engulfing@294와 bearish harami@297도 존재하고 마지막 5개 캔들이 강한 추세형 양봉이 아니므로, 현재 해석은 confirmed bullish structure가 아니라 bullish pre-confirmation setup입니다. $77,488~$77,508 EMA 저항대를 종가 기준 회복하면 $78,180.00 재시험 가능성이 커지고, 반대로 EQ $77,143.55를 이탈하면 hammer 기반 매수 셋업은 약화됩니다.\",\n  \"key_levels\": {\n    \"support\": [\n      77393.82,\n      77143.55,\n      76107.1\n    ],\n    \"resistance\": [\n      77488.64,\n      77507.58,\n      78180.0\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$77,143.55\",\n  \"risk_scenario\": \"반대 시나리오는 현재가가 EMA20 $77,488.64와 EMA120 $77,507.58을 회복하지 못하고 EQ $77,143.55 아래로 재진입하는 경우입니다. 이 경우 고거래량 hammer와 bullish harami는 실패한 반등 신호로 해석될 수 있으며, 매도 압력이 확대되면 7일 저점 $76,107.10 유동성 재테스트가 열립니다.\",\n  \"data_quality\": \"high\"\n}"
    },
    "wyckoff": {
      "agent_id": "wyckoff",
      "display_name": "Wyckoff Expert",
      "signal": "neutral",
      "confidence": 0.62,
      "structure_bias": "bullish",
      "setup_bias": "bearish",
      "setup_score": 0.64,
      "setup_signals": [
        "현재가 $77,365.80은 ACC 주 range high/AR $77,042.30 위에 있어 구조적으로는 회복권이나, SOS $77,379.10 바로 아래에서 재수용이 아직 불완전함",
        "LPS로 표시된 $77,513.20을 현재가가 하회하고 있어 Phase E의 즉시 상승 지속보다는 LPS/BU 재검증 성격이 강함",
        "상단 $77,862.70~$78,063.80 공급대에서 거부된 뒤 $77,365.80까지 밀려 단기 매수세 흡수가 충분히 확인되지 않음",
        "EMA20 $77,488.64와 EMA120 $77,507.58 아래에 위치해 단기 실행 관점에서는 $77,513 회복 전까지 하방 테스트 우위",
        "핵심 재확인 구간은 $77,209.30 및 ACC AR $77,042.30이며, 이 구간 방어 여부가 Phase E 품질을 결정"
      ],
      "reasoning": "확정 구조 기준으로는 regime이 ACC이고 acc_score 95.7, regime_fitness 0.957로 SC $76,107.10 → AR $77,042.30 → ST $76,485.00 → Spring/Terminal Spring $76,696.70 → SOS $77,379.10 → LPS $77,513.20까지 이어진 축적 우위 구조가 우선입니다. 다만 현재가 $77,365.80은 SOS $77,379.10을 근소하게 하회하고 LPS $77,513.20 아래에 있어, Phase E라 해도 즉시 마크업 확정보다는 BU/LPS 재검증이 진행 중인 상태로 봐야 합니다. 특히 $77,862.70~$78,063.80 상단 공급 반응 이후 가격이 다시 중단으로 내려와 있어, 실행 관점의 setup_bias는 $77,513 회복 전까지 bearish입니다. 따라서 구조적 편향은 bullish이지만, 즉시 경로는 $77,209.30 또는 $77,042.30 재테스트 가능성을 열어둔 neutral 신호가 더 적절합니다.",
      "key_levels": {
        "support": [
          77209.3,
          77042.3,
          76696.7,
          76485.0,
          76107.1
        ],
        "resistance": [
          77379.1,
          77513.2,
          77862.7,
          78063.8,
          78180.0
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$76,696.70",
      "risk_scenario": "$77,513.20을 회복하고 그 위에서 수용된 뒤 $77,862.70~$78,063.80 공급대를 재돌파하면 현재의 bearish setup은 무효화되고 ACC Phase E의 상단 재시도 쪽으로 해석이 강화됩니다. 반대로 $77,209.30과 $77,042.30을 연속 이탈하면 기존 SOS/LPS 품질이 약화되며 $76,696.70 Terminal Spring 재검증까지 열릴 수 있습니다.",
      "data_quality": "medium",
      "metrics": {
        "acc_score": 95.7,
        "dis_score": 92.5,
        "regime": "ACC",
        "regime_state": "acc_candidate",
        "structure_bias": "bullish",
        "phase_context": "acc_candidate / accumulation / Phase E",
        "phases_detected": [
          "SC",
          "AR",
          "ST",
          "Spring",
          "TERMINAL_SPRING",
          "SOS",
          "LPS",
          "BU"
        ],
        "last_phase": "BU",
        "phase_candidates": [
          {
            "label": "SC",
            "side": "low",
            "idx": 38,
            "price": 76107.1,
            "color": "#ffd166"
          },
          {
            "label": "AR",
            "side": "high",
            "idx": 56,
            "price": 77042.3,
            "color": "#06d6a0"
          },
          {
            "label": "ST",
            "side": "low",
            "idx": 76,
            "price": 76485.0,
            "color": "#118ab2"
          },
          {
            "label": "Spring",
            "side": "low",
            "idx": 86,
            "price": 76563.1,
            "color": "#f9844a"
          },
          {
            "label": "TERMINAL_SPRING",
            "side": "low",
            "idx": 225,
            "price": 76696.7,
            "color": "#f3722c"
          },
          {
            "label": "SOS",
            "side": "high",
            "idx": 234,
            "price": 77379.1,
            "color": "#06d6a0"
          },
          {
            "label": "LPS",
            "side": "low",
            "idx": 261,
            "price": 77513.2,
            "color": "#8338ec"
          },
          {
            "label": "BU",
            "side": "high",
            "idx": 235,
            "price": 77318.3,
            "color": "#7209b7"
          }
        ],
        "phase_structures": [
          {
            "structure_id": "15m_cycle_1",
            "sequence": 1,
            "timeframe": "15m",
            "regime": "accumulation",
            "role": "prior_completed_structure",
            "is_active": false,
            "is_completed": true,
            "is_confirmed": true,
            "structure_bias": "bullish",
            "phase_context": "accumulation",
            "start_idx": 38,
            "end_idx": 261,
            "phase_count": 8,
            "phases": [
              {
                "label": "SC",
                "side": "low",
                "idx": 38,
                "price": 76107.1,
                "color": "#ffd166",
                "dt": "2026-05-19 23:45:00+09:00"
              },
              {
                "label": "AR",
                "side": "high",
                "idx": 56,
                "price": 77042.3,
                "color": "#06d6a0",
                "dt": "2026-05-20 04:15:00+09:00"
              },
              {
                "label": "ST",
                "side": "low",
                "idx": 76,
                "price": 76485.0,
                "color": "#118ab2",
                "dt": "2026-05-20 09:15:00+09:00"
              },
              {
                "label": "Spring",
                "side": "low",
                "idx": 86,
                "price": 76563.1,
                "color": "#f9844a",
                "dt": "2026-05-20 11:45:00+09:00"
              },
              {
                "label": "TERMINAL_SPRING",
                "side": "low",
                "idx": 225,
                "price": 76696.7,
                "color": "#f3722c",
                "dt": "2026-05-21 22:30:00+09:00"
              },
              {
                "label": "SOS",
                "side": "high",
                "idx": 234,
                "price": 77379.1,
                "color": "#06d6a0",
                "dt": "2026-05-22 00:45:00+09:00"
              },
              {
                "label": "LPS",
                "side": "low",
                "idx": 261,
                "price": 77513.2,
                "color": "#8338ec",
                "dt": "2026-05-22 07:30:00+09:00"
              },
              {
                "label": "BU",
                "side": "high",
                "idx": 235,
                "price": 77318.3,
                "color": "#7209b7",
                "dt": "2026-05-22 01:00:00+09:00"
              }
            ]
          },
          {
            "structure_id": "15m_cycle_2",
            "sequence": 2,
            "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": 242,
            "end_idx": 284,
            "phase_count": 5,
            "phases": [
              {
                "label": "BC",
                "side": "high",
                "idx": 242,
                "price": 78063.8,
                "color": "#ffd166",
                "dt": "2026-05-22 02:45:00+09:00"
              },
              {
                "label": "AR",
                "side": "low",
                "idx": 246,
                "price": 77209.3,
                "color": "#06d6a0",
                "dt": "2026-05-22 03:45:00+09:00"
              },
              {
                "label": "ST",
                "side": "high",
                "idx": 256,
                "price": 77777.2,
                "color": "#118ab2",
                "dt": "2026-05-22 06:15:00+09:00"
              },
              {
                "label": "SOW_IN_PHASE_B",
                "side": "low",
                "idx": 271,
                "price": 77288.0,
                "color": "#ef476f",
                "dt": "2026-05-22 10:00:00+09:00"
              },
              {
                "label": "UT",
                "side": "high",
                "idx": 284,
                "price": 77862.7,
                "color": "#f9844a",
                "dt": "2026-05-22 13:15:00+09:00"
              }
            ]
          }
        ],
        "active_structure_id": "15m_cycle_2",
        "primary_structure_id": "15m_cycle_1",
        "structure_count": 2,
        "regime_fitness": 0.9571428571428572,
        "current_event": "BU",
        "major_phase": "E",
        "pos_in_range": 0.5,
        "main_range_low": 76107.1,
        "main_range_high": 77042.3
      },
      "raw_llm_response": "{\n  \"signal\": \"neutral\",\n  \"confidence\": 0.62,\n  \"structure_bias\": \"bullish\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.64,\n  \"setup_signals\": [\n    \"현재가 $77,365.80은 ACC 주 range high/AR $77,042.30 위에 있어 구조적으로는 회복권이나, SOS $77,379.10 바로 아래에서 재수용이 아직 불완전함\",\n    \"LPS로 표시된 $77,513.20을 현재가가 하회하고 있어 Phase E의 즉시 상승 지속보다는 LPS/BU 재검증 성격이 강함\",\n    \"상단 $77,862.70~$78,063.80 공급대에서 거부된 뒤 $77,365.80까지 밀려 단기 매수세 흡수가 충분히 확인되지 않음\",\n    \"EMA20 $77,488.64와 EMA120 $77,507.58 아래에 위치해 단기 실행 관점에서는 $77,513 회복 전까지 하방 테스트 우위\",\n    \"핵심 재확인 구간은 $77,209.30 및 ACC AR $77,042.30이며, 이 구간 방어 여부가 Phase E 품질을 결정\"\n  ],\n  \"reasoning\": \"확정 구조 기준으로는 regime이 ACC이고 acc_score 95.7, regime_fitness 0.957로 SC $76,107.10 → AR $77,042.30 → ST $76,485.00 → Spring/Terminal Spring $76,696.70 → SOS $77,379.10 → LPS $77,513.20까지 이어진 축적 우위 구조가 우선입니다. 다만 현재가 $77,365.80은 SOS $77,379.10을 근소하게 하회하고 LPS $77,513.20 아래에 있어, Phase E라 해도 즉시 마크업 확정보다는 BU/LPS 재검증이 진행 중인 상태로 봐야 합니다. 특히 $77,862.70~$78,063.80 상단 공급 반응 이후 가격이 다시 중단으로 내려와 있어, 실행 관점의 setup_bias는 $77,513 회복 전까지 bearish입니다. 따라서 구조적 편향은 bullish이지만, 즉시 경로는 $77,209.30 또는 $77,042.30 재테스트 가능성을 열어둔 neutral 신호가 더 적절합니다.\",\n  \"key_levels\": {\n    \"support\": [\n      77209.3,\n      77042.3,\n      76696.7,\n      76485.0,\n      76107.1\n    ],\n    \"resistance\": [\n      77379.1,\n      77513.2,\n      77862.7,\n      78063.8,\n      78180.0\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$76,696.70\",\n  \"risk_scenario\": \"$77,513.20을 회복하고 그 위에서 수용된 뒤 $77,862.70~$78,063.80 공급대를 재돌파하면 현재의 bearish setup은 무효화되고 ACC Phase E의 상단 재시도 쪽으로 해석이 강화됩니다. 반대로 $77,209.30과 $77,042.30을 연속 이탈하면 기존 SOS/LPS 품질이 약화되며 $76,696.70 Terminal Spring 재검증까지 열릴 수 있습니다.\",\n  \"data_quality\": \"medium\"\n}"
    },
    "harmonic": {
      "agent_id": "harmonic",
      "display_name": "Harmonic Specialist",
      "signal": "bearish",
      "confidence": 0.56,
      "structure_bias": "neutral",
      "setup_bias": "bearish",
      "setup_score": 0.62,
      "setup_signals": [
        "현재가 $77,365.80이 고점부 활성 bearish Bat PRZ $77,362.98-$77,738.06 하단에 진입, D 후보 $77,550.52",
        "활성 bearish Gartley PRZ $77,313.44-$77,713.00과 중첩, D 후보 $77,513.22",
        "상단 완료 bearish Butterfly PRZ $77,756.11-$78,172.09에서 반응 확인, reaction_score 1.0 및 D/PRZ failure-zone 방어",
        "완료 bearish Bat PRZ $77,600.79-$78,072.16도 반응 확인, TP1 $77,401.08 근접/도달권",
        "하방 TP 클러스터가 $77,401.08, $77,348.83, $77,323.41, $77,132.09에 밀집",
        "단, 현재가가 bullish Bat PRZ $76,913.58-$77,374.06 상단에도 걸쳐 있어 즉시 추격 숏은 반등 리스크 존재"
      ],
      "reasoning": "하모닉 기준으로 전체 directional_scores는 bearish 1.891, bullish 1.384로 약한 bearish 우위지만 dominance가 0.155에 불과해 강한 추세 판정은 어렵습니다. 구조적으로는 BOS/CHoCH 같은 확정 구조 전환 정보가 없으므로 structure_bias는 neutral로 두며, 하모닉은 단독 경로 엔진이 아니기 때문에 방향을 확정하지 않습니다. 다만 setup 측면에서는 현재가 $77,365.80이 활성 bearish Bat PRZ $77,362.98-$77,738.06 및 bearish Gartley PRZ $77,313.44-$77,713.00에 걸쳐 있고, 상단의 완료 bearish Butterfly $77,756.11-$78,172.09와 bearish Bat $77,600.79-$78,072.16은 이미 rejection/reaction_score 1.0을 보였습니다. 따라서 단기적으로는 $77,550-$77,740 재거부 시 $77,401, $77,348, $77,132 방향의 하방 반응을 우선 보되, $76,913.58-$77,374.06의 bullish Bat PRZ 방어가 확인되면 반등 분기 가능성을 열어야 합니다.",
      "key_levels": {
        "support": [
          77485.1,
          77433.4,
          77401.08,
          77348.83,
          77323.41,
          77172.49,
          77132.09,
          76970.0
        ],
        "resistance": [
          77513.22,
          77550.52,
          77713.0,
          77738.06,
          77836.47,
          77892.64,
          78072.16,
          78172.09
        ]
      },
      "time_horizon": "short term",
      "invalidation_level": "$78,172.09 상방 15분 종가 안착",
      "risk_scenario": "반대 시나리오는 $76,913.58-$77,374.06 bullish Bat PRZ가 방어되고 $77,565.28 및 $77,728.82를 회복하는 경우입니다. 이 경우 현재 bearish PRZ는 실패로 전환되며, $77,889.66-$78,150.00까지의 상방 TP/유동성 회수 흐름이 열릴 수 있습니다.",
      "data_quality": "high",
      "metrics": {
        "patterns_found": 40,
        "completed_patterns_found": 16,
        "forming_d_prz_found": 24,
        "swing_orders_scanned": [
          3,
          5,
          8
        ],
        "swing_search_window": 34,
        "multiscale_swings_scanned": 61,
        "swing_highs_scanned": 30,
        "swing_lows_scanned": 31,
        "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": 18,
          "medium": 12,
          "low": 10
        },
        "prz_status_counts": {
          "active": 24,
          "nearby": 11,
          "watch": 4,
          "far": 1,
          "forming": 1
        },
        "high_confluence_prz_count": 32,
        "strict_patterns_found": 22,
        "candidate_patterns_found": 18,
        "active_patterns_at_prz": 24,
        "nearby_patterns": 11,
        "all_patterns": [
          "bat",
          "crab",
          "shark",
          "bat",
          "gartley",
          "bat",
          "gartley",
          "crab",
          "bat",
          "gartley",
          "butterfly",
          "bat",
          "butterfly",
          "shark",
          "butterfly",
          "bat",
          "gartley",
          "shark",
          "bat",
          "gartley",
          "butterfly",
          "crab",
          "butterfly",
          "crab",
          "shark",
          "crab",
          "crab",
          "butterfly",
          "shark",
          "gartley",
          "gartley",
          "crab",
          "shark",
          "butterfly",
          "shark",
          "bat",
          "crab",
          "crab",
          "gartley",
          "butterfly"
        ],
        "all_signals": [
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bullish",
          "bullish",
          "bullish",
          "bearish",
          "bearish",
          "bullish",
          "bearish",
          "bearish",
          "bearish",
          "bullish",
          "bearish"
        ],
        "best_pattern": "bat",
        "best_pattern_quality": "strict",
        "best_quality": "high",
        "best_pattern_score": 0.99,
        "best_completion_status": "forming",
        "nearest_pattern": "crab",
        "nearest_prz": 77407.37,
        "price_to_prz": 0.05,
        "prz_range": [
          76959.58,
          77855.16
        ],
        "council_relevant_prz_count": 12,
        "directional_influence_prz_count": 12,
        "confirmed_reaction_prz_count": 4,
        "validated_harmonic_tp_count": 4,
        "pattern_candidates": [
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.99,
            "ratio_score": 1.0,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 77550.52,
            "prz_range": [
              77362.98,
              77738.06
            ],
            "prz_width_pct": 0.484,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.24,
            "price_to_prz_pct_raw": 0.2388,
            "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": 77550.52,
              "a_price": 77485.1,
              "tp1_ad_382": 77525.53,
              "tp2_ad_618": 77510.09,
              "tp3_a_or_structure_liquidity": 77485.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4232,
              "ABC": 0.8594
            },
            "x_price": 77735.6,
            "x_idx": 159,
            "x_order": 8,
            "a_price": 77485.1,
            "a_idx": 200,
            "a_order": 8,
            "b_price": 77379.1,
            "b_idx": 234,
            "b_order": 3,
            "c_price": 77288.0,
            "c_idx": 271,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.965,
            "ratio_score": 1.0,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 77143.82,
            "prz_range": [
              76913.58,
              77374.06
            ],
            "prz_width_pct": 0.597,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.29,
            "price_to_prz_pct_raw": -0.2869,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 77143.82,
              "a_price": 77825.8,
              "tp1_ad_382": 77404.34,
              "tp2_ad_618": 77565.28,
              "tp3_a_or_structure_liquidity": 77825.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4042,
              "ABC": 0.7701
            },
            "x_price": 76855.0,
            "x_idx": 131,
            "x_order": 8,
            "a_price": 77825.8,
            "a_idx": 136,
            "a_order": 8,
            "b_price": 77433.4,
            "b_idx": 156,
            "b_order": 3,
            "c_price": 77735.6,
            "c_idx": 159,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.965,
            "ratio_score": 0.967,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 77513.22,
            "prz_range": [
              77313.44,
              77713.0
            ],
            "prz_width_pct": 0.515,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.19,
            "price_to_prz_pct_raw": 0.1905,
            "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": 77513.22,
              "a_price": 77485.1,
              "tp1_ad_382": 77502.48,
              "tp2_ad_618": 77495.84,
              "tp3_a_or_structure_liquidity": 77485.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6236,
              "ABC": 0.7657
            },
            "x_price": 77735.6,
            "x_idx": 159,
            "x_order": 8,
            "a_price": 77485.1,
            "a_idx": 200,
            "a_order": 8,
            "b_price": 77328.9,
            "b_idx": 222,
            "b_order": 3,
            "c_price": 77209.3,
            "c_idx": 246,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.96,
            "ratio_score": 1.0,
            "prz_score": 0.989,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 77468.48,
            "prz_range": [
              77224.97,
              77711.99
            ],
            "prz_width_pct": 0.629,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.13,
            "price_to_prz_pct_raw": 0.1327,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 77468.48,
              "a_price": 78150.0,
              "tp1_ad_382": 77728.82,
              "tp2_ad_618": 77889.66,
              "tp3_a_or_structure_liquidity": 78150.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4614,
              "ABC": 0.7981
            },
            "x_price": 77304.3,
            "x_idx": 151,
            "x_order": 5,
            "a_price": 78150.0,
            "a_idx": 176,
            "a_order": 8,
            "b_price": 77759.8,
            "b_idx": 178,
            "b_order": 3,
            "c_price": 78071.2,
            "c_idx": 180,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.95,
            "ratio_score": 0.982,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 77892.64,
            "prz_range": [
              77745.07,
              78040.2
            ],
            "prz_width_pct": 0.379,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.68,
            "price_to_prz_pct_raw": 0.681,
            "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": 77892.64,
              "a_price": 76970.0,
              "tp1_ad_382": 77540.19,
              "tp2_ad_618": 77322.45,
              "tp3_a_or_structure_liquidity": 76970.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.615,
              "ABC": 0.6411
            },
            "x_price": 78180.0,
            "x_idx": 203,
            "x_order": 8,
            "a_price": 76970.0,
            "a_idx": 238,
            "a_order": 5,
            "b_price": 77714.2,
            "b_idx": 265,
            "b_order": 5,
            "c_price": 77237.1,
            "c_idx": 295,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "crab",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.948,
            "ratio_score": 1.0,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 77068.63,
            "prz_range": [
              76964.76,
              77172.49
            ],
            "prz_width_pct": 0.27,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.38,
            "price_to_prz_pct_raw": -0.3841,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "crab",
              "d_price": 77068.63,
              "a_price": 77735.6,
              "tp1_ad_382": 77323.41,
              "tp2_ad_618": 77480.82,
              "tp3_a_or_structure_liquidity": 77735.6,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5808,
              "ABC": 0.4232
            },
            "x_price": 77304.3,
            "x_idx": 151,
            "x_order": 5,
            "a_price": 77735.6,
            "a_idx": 159,
            "a_order": 8,
            "b_price": 77485.1,
            "b_idx": 200,
            "b_order": 8,
            "c_price": 77379.1,
            "c_idx": 234,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.944,
            "ratio_score": 1.0,
            "prz_score": 0.998,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 77836.47,
            "prz_range": [
              77600.79,
              78072.16
            ],
            "prz_width_pct": 0.606,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.61,
            "price_to_prz_pct_raw": 0.6084,
            "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": 77836.47,
              "a_price": 76696.7,
              "tp1_ad_382": 77401.08,
              "tp2_ad_618": 77132.09,
              "tp3_a_or_structure_liquidity": 76696.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4965,
              "ABC": 0.5995
            },
            "x_price": 78071.2,
            "x_idx": 180,
            "x_order": 3,
            "a_price": 76696.7,
            "a_idx": 225,
            "a_order": 8,
            "b_price": 77379.1,
            "b_idx": 234,
            "b_order": 3,
            "c_price": 76970.0,
            "c_idx": 238,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.934,
            "ratio_score": 0.958,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 77001.68,
            "prz_range": [
              76828.9,
              77174.46
            ],
            "prz_width_pct": 0.449,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.47,
            "price_to_prz_pct_raw": -0.4706,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 77001.68,
              "a_price": 78063.8,
              "tp1_ad_382": 77407.41,
              "tp2_ad_618": 77658.07,
              "tp3_a_or_structure_liquidity": 78063.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.625,
              "ABC": 0.5909
            },
            "x_price": 76696.7,
            "x_idx": 225,
            "x_order": 8,
            "a_price": 78063.8,
            "a_idx": 242,
            "a_order": 8,
            "b_price": 77209.3,
            "b_idx": 246,
            "b_order": 5,
            "c_price": 77714.2,
            "c_idx": 265,
            "c_order": 5,
            "d_idx": null
          }
        ],
        "council_relevant_prz": [
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.906,
            "ratio_score": 0.907,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 77485.1,
            "prz_range": [
              77448.99,
              77855.26
            ],
            "prz_width_pct": 0.523,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.37,
            "price_to_prz_pct_raw": 0.3701,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected"
              ],
              "reaction_score": 0.8,
              "reaction_detail": {
                "reaction_score": 0.8,
                "reaction_move_ratio_ad": 1.045,
                "adverse_move_ratio_ad": 0.518,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 77652.13,
              "a_price": 78150.0,
              "tp1_ad_382": 77842.31,
              "tp2_ad_618": 77959.81,
              "tp3_a_or_structure_liquidity": 78150.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.3944,
              "ABC": 0.8471,
              "BCD": 2.5969,
              "XAD": 0.9279
            },
            "x_price": 77433.4,
            "x_idx": 156,
            "x_order": 3,
            "a_price": 78150.0,
            "a_idx": 176,
            "a_order": 8,
            "b_price": 77867.4,
            "b_idx": 184,
            "b_order": 3,
            "c_price": 78106.8,
            "c_idx": 191,
            "c_order": 3,
            "d_idx": 200
          },
          {
            "pattern": "butterfly",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.903,
            "ratio_score": 0.968,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 78063.8,
            "prz_range": [
              77756.11,
              78172.09
            ],
            "prz_width_pct": 0.534,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.77,
            "price_to_prz_pct_raw": 0.7733,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 1.355,
                "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": "butterfly",
              "d_price": 77964.1,
              "a_price": 77433.4,
              "tp1_ad_382": 77761.38,
              "tp2_ad_618": 77636.13,
              "tp3_a_or_structure_liquidity": 77433.4,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7701,
              "ABC": 0.8289,
              "BCD": 2.3102,
              "XAD": 1.6065
            },
            "x_price": 77825.8,
            "x_idx": 136,
            "x_order": 8,
            "a_price": 77433.4,
            "a_idx": 156,
            "a_order": 3,
            "b_price": 77735.6,
            "b_idx": 159,
            "b_order": 8,
            "c_price": 77485.1,
            "c_idx": 200,
            "c_order": 8,
            "d_idx": 242
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.892,
            "ratio_score": 0.917,
            "prz_score": 0.998,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 77862.7,
            "prz_range": [
              77600.79,
              78072.16
            ],
            "prz_width_pct": 0.606,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.61,
            "price_to_prz_pct_raw": 0.6084,
            "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.537,
                "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": "bat",
              "d_price": 77836.47,
              "a_price": 76696.7,
              "tp1_ad_382": 77401.08,
              "tp2_ad_618": 77132.09,
              "tp3_a_or_structure_liquidity": 76696.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4965,
              "ABC": 0.5995,
              "BCD": 2.1821,
              "XAD": 0.8483
            },
            "x_price": 78071.2,
            "x_idx": 180,
            "x_order": 3,
            "a_price": 76696.7,
            "a_idx": 225,
            "a_order": 8,
            "b_price": 77379.1,
            "b_idx": 234,
            "b_order": 3,
            "c_price": 76970.0,
            "c_idx": 238,
            "c_order": 5,
            "d_idx": 284
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.884,
            "ratio_score": 0.922,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 77862.7,
            "prz_range": [
              77738.46,
              78008.95
            ],
            "prz_width_pct": 0.347,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.66,
            "price_to_prz_pct_raw": 0.6565,
            "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.746,
                "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": 77873.7,
              "a_price": 77024.4,
              "tp1_ad_382": 77549.27,
              "tp2_ad_618": 77348.83,
              "tp3_a_or_structure_liquidity": 77024.4,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6373,
              "ABC": 0.6179,
              "BCD": 1.3484,
              "XAD": 0.7745
            },
            "x_price": 78106.8,
            "x_idx": 191,
            "x_order": 3,
            "a_price": 77024.4,
            "a_idx": 221,
            "a_order": 3,
            "b_price": 77714.2,
            "b_idx": 265,
            "b_order": 5,
            "c_price": 77288.0,
            "c_idx": 271,
            "c_order": 8,
            "d_idx": 284
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.99,
            "ratio_score": 1.0,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 77550.52,
            "prz_range": [
              77362.98,
              77738.06
            ],
            "prz_width_pct": 0.484,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.24,
            "price_to_prz_pct_raw": 0.2388,
            "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": 77550.52,
              "a_price": 77485.1,
              "tp1_ad_382": 77525.53,
              "tp2_ad_618": 77510.09,
              "tp3_a_or_structure_liquidity": 77485.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4232,
              "ABC": 0.8594
            },
            "x_price": 77735.6,
            "x_idx": 159,
            "x_order": 8,
            "a_price": 77485.1,
            "a_idx": 200,
            "a_order": 8,
            "b_price": 77379.1,
            "b_idx": 234,
            "b_order": 3,
            "c_price": 77288.0,
            "c_idx": 271,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.965,
            "ratio_score": 0.967,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 77513.22,
            "prz_range": [
              77313.44,
              77713.0
            ],
            "prz_width_pct": 0.515,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.19,
            "price_to_prz_pct_raw": 0.1905,
            "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": 77513.22,
              "a_price": 77485.1,
              "tp1_ad_382": 77502.48,
              "tp2_ad_618": 77495.84,
              "tp3_a_or_structure_liquidity": 77485.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6236,
              "ABC": 0.7657
            },
            "x_price": 77735.6,
            "x_idx": 159,
            "x_order": 8,
            "a_price": 77485.1,
            "a_idx": 200,
            "a_order": 8,
            "b_price": 77328.9,
            "b_idx": 222,
            "b_order": 3,
            "c_price": 77209.3,
            "c_idx": 246,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.965,
            "ratio_score": 1.0,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 77143.82,
            "prz_range": [
              76913.58,
              77374.06
            ],
            "prz_width_pct": 0.597,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.29,
            "price_to_prz_pct_raw": -0.2869,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 77143.82,
              "a_price": 77825.8,
              "tp1_ad_382": 77404.34,
              "tp2_ad_618": 77565.28,
              "tp3_a_or_structure_liquidity": 77825.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4042,
              "ABC": 0.7701
            },
            "x_price": 76855.0,
            "x_idx": 131,
            "x_order": 8,
            "a_price": 77825.8,
            "a_idx": 136,
            "a_order": 8,
            "b_price": 77433.4,
            "b_idx": 156,
            "b_order": 3,
            "c_price": 77735.6,
            "c_idx": 159,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.96,
            "ratio_score": 1.0,
            "prz_score": 0.989,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 77468.48,
            "prz_range": [
              77224.97,
              77711.99
            ],
            "prz_width_pct": 0.629,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.13,
            "price_to_prz_pct_raw": 0.1327,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 77468.48,
              "a_price": 78150.0,
              "tp1_ad_382": 77728.82,
              "tp2_ad_618": 77889.66,
              "tp3_a_or_structure_liquidity": 78150.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4614,
              "ABC": 0.7981
            },
            "x_price": 77304.3,
            "x_idx": 151,
            "x_order": 5,
            "a_price": 78150.0,
            "a_idx": 176,
            "a_order": 8,
            "b_price": 77759.8,
            "b_idx": 178,
            "b_order": 3,
            "c_price": 78071.2,
            "c_idx": 180,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.95,
            "ratio_score": 0.982,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 77892.64,
            "prz_range": [
              77745.07,
              78040.2
            ],
            "prz_width_pct": 0.379,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.68,
            "price_to_prz_pct_raw": 0.681,
            "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": 77892.64,
              "a_price": 76970.0,
              "tp1_ad_382": 77540.19,
              "tp2_ad_618": 77322.45,
              "tp3_a_or_structure_liquidity": 76970.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.615,
              "ABC": 0.6411
            },
            "x_price": 78180.0,
            "x_idx": 203,
            "x_order": 8,
            "a_price": 76970.0,
            "a_idx": 238,
            "a_order": 5,
            "b_price": 77714.2,
            "b_idx": 265,
            "b_order": 5,
            "c_price": 77237.1,
            "c_idx": 295,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "crab",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.948,
            "ratio_score": 1.0,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 77068.63,
            "prz_range": [
              76964.76,
              77172.49
            ],
            "prz_width_pct": 0.27,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.38,
            "price_to_prz_pct_raw": -0.3841,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "crab",
              "d_price": 77068.63,
              "a_price": 77735.6,
              "tp1_ad_382": 77323.41,
              "tp2_ad_618": 77480.82,
              "tp3_a_or_structure_liquidity": 77735.6,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5808,
              "ABC": 0.4232
            },
            "x_price": 77304.3,
            "x_idx": 151,
            "x_order": 5,
            "a_price": 77735.6,
            "a_idx": 159,
            "a_order": 8,
            "b_price": 77485.1,
            "b_idx": 200,
            "b_order": 8,
            "c_price": 77379.1,
            "c_idx": 234,
            "c_order": 3,
            "d_idx": null
          }
        ],
        "report_detail_candidates": [
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.99,
            "ratio_score": 1.0,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 77550.52,
            "prz_range": [
              77362.98,
              77738.06
            ],
            "prz_width_pct": 0.484,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.24,
            "price_to_prz_pct_raw": 0.2388,
            "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": 77550.52,
              "a_price": 77485.1,
              "tp1_ad_382": 77525.53,
              "tp2_ad_618": 77510.09,
              "tp3_a_or_structure_liquidity": 77485.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4232,
              "ABC": 0.8594
            },
            "x_price": 77735.6,
            "x_idx": 159,
            "x_order": 8,
            "a_price": 77485.1,
            "a_idx": 200,
            "a_order": 8,
            "b_price": 77379.1,
            "b_idx": 234,
            "b_order": 3,
            "c_price": 77288.0,
            "c_idx": 271,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.965,
            "ratio_score": 1.0,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 77143.82,
            "prz_range": [
              76913.58,
              77374.06
            ],
            "prz_width_pct": 0.597,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.29,
            "price_to_prz_pct_raw": -0.2869,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 77143.82,
              "a_price": 77825.8,
              "tp1_ad_382": 77404.34,
              "tp2_ad_618": 77565.28,
              "tp3_a_or_structure_liquidity": 77825.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4042,
              "ABC": 0.7701
            },
            "x_price": 76855.0,
            "x_idx": 131,
            "x_order": 8,
            "a_price": 77825.8,
            "a_idx": 136,
            "a_order": 8,
            "b_price": 77433.4,
            "b_idx": 156,
            "b_order": 3,
            "c_price": 77735.6,
            "c_idx": 159,
            "c_order": 8,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.965,
            "ratio_score": 0.967,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 77513.22,
            "prz_range": [
              77313.44,
              77713.0
            ],
            "prz_width_pct": 0.515,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.19,
            "price_to_prz_pct_raw": 0.1905,
            "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": 77513.22,
              "a_price": 77485.1,
              "tp1_ad_382": 77502.48,
              "tp2_ad_618": 77495.84,
              "tp3_a_or_structure_liquidity": 77485.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.6236,
              "ABC": 0.7657
            },
            "x_price": 77735.6,
            "x_idx": 159,
            "x_order": 8,
            "a_price": 77485.1,
            "a_idx": 200,
            "a_order": 8,
            "b_price": 77328.9,
            "b_idx": 222,
            "b_order": 3,
            "c_price": 77209.3,
            "c_idx": 246,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.96,
            "ratio_score": 1.0,
            "prz_score": 0.989,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 77468.48,
            "prz_range": [
              77224.97,
              77711.99
            ],
            "prz_width_pct": 0.629,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.13,
            "price_to_prz_pct_raw": 0.1327,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 77468.48,
              "a_price": 78150.0,
              "tp1_ad_382": 77728.82,
              "tp2_ad_618": 77889.66,
              "tp3_a_or_structure_liquidity": 78150.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4614,
              "ABC": 0.7981
            },
            "x_price": 77304.3,
            "x_idx": 151,
            "x_order": 5,
            "a_price": 78150.0,
            "a_idx": 176,
            "a_order": 8,
            "b_price": 77759.8,
            "b_idx": 178,
            "b_order": 3,
            "c_price": 78071.2,
            "c_idx": 180,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.95,
            "ratio_score": 0.982,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 77892.64,
            "prz_range": [
              77745.07,
              78040.2
            ],
            "prz_width_pct": 0.379,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.68,
            "price_to_prz_pct_raw": 0.681,
            "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": 77892.64,
              "a_price": 76970.0,
              "tp1_ad_382": 77540.19,
              "tp2_ad_618": 77322.45,
              "tp3_a_or_structure_liquidity": 76970.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.615,
              "ABC": 0.6411
            },
            "x_price": 78180.0,
            "x_idx": 203,
            "x_order": 8,
            "a_price": 76970.0,
            "a_idx": 238,
            "a_order": 5,
            "b_price": 77714.2,
            "b_idx": 265,
            "b_order": 5,
            "c_price": 77237.1,
            "c_idx": 295,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "crab",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.948,
            "ratio_score": 1.0,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 77068.63,
            "prz_range": [
              76964.76,
              77172.49
            ],
            "prz_width_pct": 0.27,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.38,
            "price_to_prz_pct_raw": -0.3841,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "crab",
              "d_price": 77068.63,
              "a_price": 77735.6,
              "tp1_ad_382": 77323.41,
              "tp2_ad_618": 77480.82,
              "tp3_a_or_structure_liquidity": 77735.6,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.5808,
              "ABC": 0.4232
            },
            "x_price": 77304.3,
            "x_idx": 151,
            "x_order": 5,
            "a_price": 77735.6,
            "a_idx": 159,
            "a_order": 8,
            "b_price": 77485.1,
            "b_idx": 200,
            "b_order": 8,
            "c_price": 77379.1,
            "c_idx": 234,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.944,
            "ratio_score": 1.0,
            "prz_score": 0.998,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 77836.47,
            "prz_range": [
              77600.79,
              78072.16
            ],
            "prz_width_pct": 0.606,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.61,
            "price_to_prz_pct_raw": 0.6084,
            "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": 77836.47,
              "a_price": 76696.7,
              "tp1_ad_382": 77401.08,
              "tp2_ad_618": 77132.09,
              "tp3_a_or_structure_liquidity": 76696.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4965,
              "ABC": 0.5995
            },
            "x_price": 78071.2,
            "x_idx": 180,
            "x_order": 3,
            "a_price": 76696.7,
            "a_idx": 225,
            "a_order": 8,
            "b_price": 77379.1,
            "b_idx": 234,
            "b_order": 3,
            "c_price": 76970.0,
            "c_idx": 238,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "gartley",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.934,
            "ratio_score": 0.958,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 77001.68,
            "prz_range": [
              76828.9,
              77174.46
            ],
            "prz_width_pct": 0.449,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.47,
            "price_to_prz_pct_raw": -0.4706,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "gartley",
              "d_price": 77001.68,
              "a_price": 78063.8,
              "tp1_ad_382": 77407.41,
              "tp2_ad_618": 77658.07,
              "tp3_a_or_structure_liquidity": 78063.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.625,
              "ABC": 0.5909
            },
            "x_price": 76696.7,
            "x_idx": 225,
            "x_order": 8,
            "a_price": 78063.8,
            "a_idx": 242,
            "a_order": 8,
            "b_price": 77209.3,
            "b_idx": 246,
            "b_order": 5,
            "c_price": 77714.2,
            "c_idx": 265,
            "c_order": 5,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.906,
            "ratio_score": 0.907,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 77485.1,
            "prz_range": [
              77448.99,
              77855.26
            ],
            "prz_width_pct": 0.523,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.37,
            "price_to_prz_pct_raw": 0.3701,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_touch_or_entry",
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected"
              ],
              "reaction_score": 0.8,
              "reaction_detail": {
                "reaction_score": 0.8,
                "reaction_move_ratio_ad": 1.045,
                "adverse_move_ratio_ad": 0.518,
                "bars_after_d": 12,
                "reasons": [
                  "AD0.382_reaction_reached",
                  "PRZ_center_reclaimed_or_rejected"
                ]
              },
              "path_role": "medium confluence / weak-consensus tie-breaker; no standalone path override",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.58,
            "confirmed_reaction": true,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 77652.13,
              "a_price": 78150.0,
              "tp1_ad_382": 77842.31,
              "tp2_ad_618": 77959.81,
              "tp3_a_or_structure_liquidity": 78150.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.3944,
              "ABC": 0.8471,
              "BCD": 2.5969,
              "XAD": 0.9279
            },
            "x_price": 77433.4,
            "x_idx": 156,
            "x_order": 3,
            "a_price": 78150.0,
            "a_idx": 176,
            "a_order": 8,
            "b_price": 77867.4,
            "b_idx": 184,
            "b_order": 3,
            "c_price": 78106.8,
            "c_idx": 191,
            "c_order": 3,
            "d_idx": 200
          },
          {
            "pattern": "butterfly",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.903,
            "ratio_score": 0.968,
            "prz_score": 1.0,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 78063.8,
            "prz_range": [
              77756.11,
              78172.09
            ],
            "prz_width_pct": 0.534,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.77,
            "price_to_prz_pct_raw": 0.7733,
            "harmonic_vote_state": {
              "authority": "post_confirmation_vote_eligible",
              "directional_vote_weight": 0.58,
              "confirmed_reaction": true,
              "confirmation_reasons": [
                "PRZ_rejection_or_defense",
                "AD0.382_reaction_reached",
                "PRZ_center_reclaimed_or_rejected",
                "D_PRZ_failure_zone_defended",
                "post_D_close_progress"
              ],
              "reaction_score": 1.0,
              "reaction_detail": {
                "reaction_score": 1.0,
                "reaction_move_ratio_ad": 1.355,
                "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": "butterfly",
              "d_price": 77964.1,
              "a_price": 77433.4,
              "tp1_ad_382": 77761.38,
              "tp2_ad_618": 77636.13,
              "tp3_a_or_structure_liquidity": 77433.4,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.7701,
              "ABC": 0.8289,
              "BCD": 2.3102,
              "XAD": 1.6065
            },
            "x_price": 77825.8,
            "x_idx": 136,
            "x_order": 8,
            "a_price": 77433.4,
            "a_idx": 156,
            "a_order": 3,
            "b_price": 77735.6,
            "b_idx": 159,
            "b_order": 8,
            "c_price": 77485.1,
            "c_idx": 200,
            "c_order": 8,
            "d_idx": 242
          },
          {
            "pattern": "butterfly",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "candidate",
            "quality": "high",
            "pattern_score": 0.895,
            "ratio_score": 0.8,
            "prz_score": 1.0,
            "prz_proximity": "active",
            "action_status": "active",
            "high_confluence_prz": true,
            "d_price": 77226.7,
            "prz_range": [
              77070.7,
              77382.7
            ],
            "prz_width_pct": 0.404,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": -0.18,
            "price_to_prz_pct_raw": -0.1798,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "butterfly",
              "d_price": 77226.7,
              "a_price": 77735.6,
              "tp1_ad_382": 77421.1,
              "tp2_ad_618": 77541.2,
              "tp3_a_or_structure_liquidity": 77735.6,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.8289,
              "ABC": 0.4232
            },
            "x_price": 77433.4,
            "x_idx": 156,
            "x_order": 3,
            "a_price": 77735.6,
            "a_idx": 159,
            "a_order": 8,
            "b_price": 77485.1,
            "b_idx": 200,
            "b_order": 8,
            "c_price": 77379.1,
            "c_idx": 234,
            "c_order": 3,
            "d_idx": null
          },
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "completed",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.892,
            "ratio_score": 0.917,
            "prz_score": 0.998,
            "prz_proximity": "nearby",
            "action_status": "nearby",
            "high_confluence_prz": true,
            "d_price": 77862.7,
            "prz_range": [
              77600.79,
              78072.16
            ],
            "prz_width_pct": 0.606,
            "prz_confluence_count": 3,
            "prz_fib_families": [
              "ABCD",
              "BC_EXT",
              "XAD"
            ],
            "price_to_prz_pct": 0.61,
            "price_to_prz_pct_raw": 0.6084,
            "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.537,
                "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": "bat",
              "d_price": 77836.47,
              "a_price": 76696.7,
              "tp1_ad_382": 77401.08,
              "tp2_ad_618": 77132.09,
              "tp3_a_or_structure_liquidity": 76696.7,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "ratios": {
              "XAB": 0.4965,
              "ABC": 0.5995,
              "BCD": 2.1821,
              "XAD": 0.8483
            },
            "x_price": 78071.2,
            "x_idx": 180,
            "x_order": 3,
            "a_price": 76696.7,
            "a_idx": 225,
            "a_order": 8,
            "b_price": 77379.1,
            "b_idx": 234,
            "b_order": 3,
            "c_price": 76970.0,
            "c_idx": 238,
            "c_order": 5,
            "d_idx": 284
          }
        ],
        "actionable_patterns_list": [
          {
            "pattern": "bat",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.99,
            "prz_proximity": "active",
            "prz_range": [
              77362.98,
              77738.06
            ],
            "prz_reversal_direction": "down",
            "price_to_prz_pct": 0.24,
            "high_confluence_prz": true,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bearish",
              "source": "bat",
              "d_price": 77550.52,
              "a_price": 77485.1,
              "tp1_ad_382": 77525.53,
              "tp2_ad_618": 77510.09,
              "tp3_a_or_structure_liquidity": 77485.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "BAT FORMING HIGH PRZ $77,362.98-$77,738.06: expected reversal DOWN if price reacts in zone"
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.965,
            "prz_proximity": "active",
            "prz_range": [
              76913.58,
              77374.06
            ],
            "prz_reversal_direction": "up",
            "price_to_prz_pct": -0.29,
            "high_confluence_prz": true,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 77143.82,
              "a_price": 77825.8,
              "tp1_ad_382": 77404.34,
              "tp2_ad_618": 77565.28,
              "tp3_a_or_structure_liquidity": 77825.8,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "BAT FORMING HIGH PRZ $76,913.58-$77,374.06: expected reversal UP if price reacts in zone"
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.965,
            "prz_proximity": "active",
            "prz_range": [
              77313.44,
              77713.0
            ],
            "prz_reversal_direction": "down",
            "price_to_prz_pct": 0.19,
            "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": 77513.22,
              "a_price": 77485.1,
              "tp1_ad_382": 77502.48,
              "tp2_ad_618": 77495.84,
              "tp3_a_or_structure_liquidity": 77485.1,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "GARTLEY FORMING HIGH PRZ $77,313.44-$77,713.00: expected reversal DOWN if price reacts in zone"
          },
          {
            "pattern": "bat",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.96,
            "prz_proximity": "active",
            "prz_range": [
              77224.97,
              77711.99
            ],
            "prz_reversal_direction": "up",
            "price_to_prz_pct": 0.13,
            "high_confluence_prz": true,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "bat",
              "d_price": 77468.48,
              "a_price": 78150.0,
              "tp1_ad_382": 77728.82,
              "tp2_ad_618": 77889.66,
              "tp3_a_or_structure_liquidity": 78150.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "BAT FORMING HIGH PRZ $77,224.97-$77,711.99: expected reversal UP if price reacts in zone"
          },
          {
            "pattern": "gartley",
            "signal": "bearish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.95,
            "prz_proximity": "nearby",
            "prz_range": [
              77745.07,
              78040.2
            ],
            "prz_reversal_direction": "down",
            "price_to_prz_pct": 0.68,
            "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": 77892.64,
              "a_price": 76970.0,
              "tp1_ad_382": 77540.19,
              "tp2_ad_618": 77322.45,
              "tp3_a_or_structure_liquidity": 76970.0,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "GARTLEY FORMING HIGH PRZ $77,745.07-$78,040.20: expected reversal DOWN if price reacts in zone"
          },
          {
            "pattern": "crab",
            "signal": "bullish",
            "completion_status": "forming",
            "pattern_quality": "strict",
            "quality": "high",
            "pattern_score": 0.948,
            "prz_proximity": "active",
            "prz_range": [
              76964.76,
              77172.49
            ],
            "prz_reversal_direction": "up",
            "price_to_prz_pct": -0.38,
            "high_confluence_prz": true,
            "harmonic_vote_state": {
              "authority": "pre_confirmation_reversal_candidate",
              "directional_vote_weight": 0.35,
              "confirmed_reaction": false,
              "confirmation_reasons": [],
              "reaction_score": 0.0,
              "reaction_detail": {
                "reaction_score": 0.0,
                "reasons": []
              },
              "path_role": "weak PRZ/reaction-zone context only; cannot flip main path",
              "standalone_path_override_allowed": false
            },
            "directional_vote_weight": 0.35,
            "confirmed_reaction": false,
            "standalone_path_override_allowed": false,
            "tp_ladder": {
              "direction": "bullish",
              "source": "crab",
              "d_price": 77068.63,
              "a_price": 77735.6,
              "tp1_ad_382": 77323.41,
              "tp2_ad_618": 77480.82,
              "tp3_a_or_structure_liquidity": 77735.6,
              "note": "Use as strong TP ladder context; not standalone path authority."
            },
            "interpretation": "CRAB FORMING HIGH PRZ $76,964.76-$77,172.49: expected reversal UP if price reacts in zone"
          }
        ],
        "best_council_prz": {
          "pattern": "bat",
          "signal": "bearish",
          "completion_status": "forming",
          "pattern_quality": "strict",
          "quality": "high",
          "pattern_score": 0.99,
          "ratio_score": 1.0,
          "prz_score": 1.0,
          "prz_proximity": "active",
          "action_status": "active",
          "high_confluence_prz": true,
          "d_price": 77550.52,
          "prz_range": [
            77362.98,
            77738.06
          ],
          "prz_width_pct": 0.484,
          "prz_confluence_count": 3,
          "prz_fib_families": [
            "ABCD",
            "BC_EXT",
            "XAD"
          ],
          "price_to_prz_pct": 0.24,
          "price_to_prz_pct_raw": 0.2388,
          "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": 77550.52,
            "a_price": 77485.1,
            "tp1_ad_382": 77525.53,
            "tp2_ad_618": 77510.09,
            "tp3_a_or_structure_liquidity": 77485.1,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          "ratios": {
            "XAB": 0.4232,
            "ABC": 0.8594
          },
          "x_price": 77735.6,
          "x_idx": 159,
          "x_order": 8,
          "a_price": 77485.1,
          "a_idx": 200,
          "a_order": 8,
          "b_price": 77379.1,
          "b_idx": 234,
          "b_order": 3,
          "c_price": 77288.0,
          "c_idx": 271,
          "c_order": 8,
          "d_idx": null
        },
        "best_tp_ladder": {
          "direction": "bearish",
          "source": "bat",
          "d_price": 77550.52,
          "a_price": 77485.1,
          "tp1_ad_382": 77525.53,
          "tp2_ad_618": 77510.09,
          "tp3_a_or_structure_liquidity": 77485.1,
          "note": "Use as strong TP ladder context; not standalone path authority."
        },
        "best_confirmed_tp_ladder": {
          "direction": "bearish",
          "source": "butterfly",
          "d_price": 77964.1,
          "a_price": 77433.4,
          "tp1_ad_382": 77761.38,
          "tp2_ad_618": 77636.13,
          "tp3_a_or_structure_liquidity": 77433.4,
          "note": "Use as strong TP ladder context; not standalone path authority."
        },
        "tp_ladder": [
          {
            "direction": "bearish",
            "source": "bat",
            "d_price": 77550.52,
            "a_price": 77485.1,
            "tp1_ad_382": 77525.53,
            "tp2_ad_618": 77510.09,
            "tp3_a_or_structure_liquidity": 77485.1,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bullish",
            "source": "bat",
            "d_price": 77143.82,
            "a_price": 77825.8,
            "tp1_ad_382": 77404.34,
            "tp2_ad_618": 77565.28,
            "tp3_a_or_structure_liquidity": 77825.8,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bearish",
            "source": "gartley",
            "d_price": 77513.22,
            "a_price": 77485.1,
            "tp1_ad_382": 77502.48,
            "tp2_ad_618": 77495.84,
            "tp3_a_or_structure_liquidity": 77485.1,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bullish",
            "source": "bat",
            "d_price": 77468.48,
            "a_price": 78150.0,
            "tp1_ad_382": 77728.82,
            "tp2_ad_618": 77889.66,
            "tp3_a_or_structure_liquidity": 78150.0,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bearish",
            "source": "gartley",
            "d_price": 77892.64,
            "a_price": 76970.0,
            "tp1_ad_382": 77540.19,
            "tp2_ad_618": 77322.45,
            "tp3_a_or_structure_liquidity": 76970.0,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bullish",
            "source": "crab",
            "d_price": 77068.63,
            "a_price": 77735.6,
            "tp1_ad_382": 77323.41,
            "tp2_ad_618": 77480.82,
            "tp3_a_or_structure_liquidity": 77735.6,
            "note": "Use as strong TP ladder context; not standalone path authority."
          }
        ],
        "validated_tp_ladder": [
          {
            "direction": "bullish",
            "source": "bat",
            "d_price": 77652.13,
            "a_price": 78150.0,
            "tp1_ad_382": 77842.31,
            "tp2_ad_618": 77959.81,
            "tp3_a_or_structure_liquidity": 78150.0,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bearish",
            "source": "butterfly",
            "d_price": 77964.1,
            "a_price": 77433.4,
            "tp1_ad_382": 77761.38,
            "tp2_ad_618": 77636.13,
            "tp3_a_or_structure_liquidity": 77433.4,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bearish",
            "source": "bat",
            "d_price": 77836.47,
            "a_price": 76696.7,
            "tp1_ad_382": 77401.08,
            "tp2_ad_618": 77132.09,
            "tp3_a_or_structure_liquidity": 76696.7,
            "note": "Use as strong TP ladder context; not standalone path authority."
          },
          {
            "direction": "bearish",
            "source": "gartley",
            "d_price": 77873.7,
            "a_price": 77024.4,
            "tp1_ad_382": 77549.27,
            "tp2_ad_618": 77348.83,
            "tp3_a_or_structure_liquidity": 77024.4,
            "note": "Use as strong TP ladder context; not standalone path authority."
          }
        ],
        "harmonic_governance": {
          "role": "PRZ reaction + TP ladder confluence, not standalone path engine",
          "pre_confirmation_weight_range": [
            0.25,
            0.35
          ],
          "post_confirmation_vote_weight_range": [
            0.5,
            0.6
          ],
          "standalone_path_override_allowed": false,
          "opposes_core_path_policy": "branch/reversal-risk/reaction-zone unless lower-TF structure and derivatives also confirm",
          "aligns_with_core_path_policy": "modest confidence lift plus strong TP ladder influence"
        },
        "execution_readiness": "ready",
        "directional_scores": {
          "bullish": 1.384,
          "bearish": 1.891
        },
        "directional_score_total": 3.275,
        "directional_dominance": 0.155
      },
      "raw_llm_response": "{\n  \"signal\": \"bearish\",\n  \"confidence\": 0.56,\n  \"structure_bias\": \"neutral\",\n  \"setup_bias\": \"bearish\",\n  \"setup_score\": 0.62,\n  \"setup_signals\": [\n    \"현재가 $77,365.80이 고점부 활성 bearish Bat PRZ $77,362.98-$77,738.06 하단에 진입, D 후보 $77,550.52\",\n    \"활성 bearish Gartley PRZ $77,313.44-$77,713.00과 중첩, D 후보 $77,513.22\",\n    \"상단 완료 bearish Butterfly PRZ $77,756.11-$78,172.09에서 반응 확인, reaction_score 1.0 및 D/PRZ failure-zone 방어\",\n    \"완료 bearish Bat PRZ $77,600.79-$78,072.16도 반응 확인, TP1 $77,401.08 근접/도달권\",\n    \"하방 TP 클러스터가 $77,401.08, $77,348.83, $77,323.41, $77,132.09에 밀집\",\n    \"단, 현재가가 bullish Bat PRZ $76,913.58-$77,374.06 상단에도 걸쳐 있어 즉시 추격 숏은 반등 리스크 존재\"\n  ],\n  \"reasoning\": \"하모닉 기준으로 전체 directional_scores는 bearish 1.891, bullish 1.384로 약한 bearish 우위지만 dominance가 0.155에 불과해 강한 추세 판정은 어렵습니다. 구조적으로는 BOS/CHoCH 같은 확정 구조 전환 정보가 없으므로 structure_bias는 neutral로 두며, 하모닉은 단독 경로 엔진이 아니기 때문에 방향을 확정하지 않습니다. 다만 setup 측면에서는 현재가 $77,365.80이 활성 bearish Bat PRZ $77,362.98-$77,738.06 및 bearish Gartley PRZ $77,313.44-$77,713.00에 걸쳐 있고, 상단의 완료 bearish Butterfly $77,756.11-$78,172.09와 bearish Bat $77,600.79-$78,072.16은 이미 rejection/reaction_score 1.0을 보였습니다. 따라서 단기적으로는 $77,550-$77,740 재거부 시 $77,401, $77,348, $77,132 방향의 하방 반응을 우선 보되, $76,913.58-$77,374.06의 bullish Bat PRZ 방어가 확인되면 반등 분기 가능성을 열어야 합니다.\",\n  \"key_levels\": {\n    \"support\": [\n      77485.1,\n      77433.4,\n      77401.08,\n      77348.83,\n      77323.41,\n      77172.49,\n      77132.09,\n      76970.0\n    ],\n    \"resistance\": [\n      77513.22,\n      77550.52,\n      77713.0,\n      77738.06,\n      77836.47,\n      77892.64,\n      78072.16,\n      78172.09\n    ]\n  },\n  \"time_horizon\": \"short term\",\n  \"invalidation_level\": \"$78,172.09 상방 15분 종가 안착\",\n  \"risk_scenario\": \"반대 시나리오는 $76,913.58-$77,374.06 bullish Bat PRZ가 방어되고 $77,565.28 및 $77,728.82를 회복하는 경우입니다. 이 경우 현재 bearish PRZ는 실패로 전환되며, $77,889.66-$78,150.00까지의 상방 TP/유동성 회수 흐름이 열릴 수 있습니다.\",\n  \"data_quality\": \"high\"\n}"
    }
  },
  "chairman_synthesis": {
    "overall_signal": "neutral",
    "overall_confidence": 0.52,
    "execution_setup": {
      "setup_bias": "neutral",
      "setup_strength": 0.58,
      "active_setups": [
        "상승 실행 셋업: 현재가 $77,365.80가 ICT EQ $77,549.90 및 피보나치 ret_0.5 $77,575.35 아래의 할인 구간에 위치",
        "상승 실행 셋업: 피보나치 고밀도 컨플루언스 $77,362.56을 현재가가 테스트 중이며, strict hammer quality 0.818 및 strict bullish harami quality 0.731이 하방 거부를 시사",
        "상승 실행 셋업: ICT 기준 이전 상승 BOS $77,042.30 및 $77,825.80 이후 87.8% 깊은 되돌림이 발생해 재매집 후보 구간 형성",
        "하락 실행 셋업: 가격이 EMA20 $77,488.64 및 EMA120 $77,507.58 아래에 머물고 CVD 변화량 -3299.4510으로 매수 주도력이 약화",
        "하락 실행 셋업: 현재가가 활성 bearish Bat PRZ $77,362.98-$77,738.06 및 bearish Gartley PRZ $77,313.44-$77,713.00 내부에 위치",
        "하락 실행 셋업: Wyckoff상 SOS $77,379.10 및 LPS $77,513.20 아래에 있어 Phase E 확정보다는 BU/LPS 재검증 상태"
      ],
      "setup_vs_structure": "구조 진단은 중립적 재구조화 상태이나, 실행 셋업은 상승 반전 후보와 하락 재거부 후보가 동시에 강하게 존재한다. 즉, 할인 구간 매수 반응은 관찰되지만 $77,488-$77,513 회복 전까지는 구조 회복으로 확정할 수 없다."
    },
    "signal_breakdown": {
      "bullish_count": 1,
      "bearish_count": 1,
      "neutral_count": 4
    },
    "key_levels": {
      "support": [
        77362.56,
        77237.1,
        77209.3,
        77143.55,
        77042.3,
        76696.7,
        76107.1
      ],
      "resistance": [
        77379.1,
        77485.1,
        77488.64,
        77507.58,
        77513.2,
        77549.9,
        77575.35,
        77713.0,
        77738.06,
        77862.7,
        78063.8,
        78180.0
      ]
    },
    "confluences": [
      "현재가 부근 $77,362-$77,366는 Fibonacci 컨플루언스 $77,362.56, Harmonic bearish Bat PRZ 하단 $77,362.98, 그리고 현재가 $77,365.80이 거의 일치하는 핵심 반응 구간이다.",
      "$77,488-$77,513 구간은 ICT 하향 CHoCH $77,485.10, Derivatives EMA20 $77,488.64, Fibonacci ret_0.618 $77,507.54, Derivatives EMA120 $77,507.58, Wyckoff LPS $77,513.20, Harmonic bearish Gartley D $77,513.22가 겹치는 강한 구조 회복/거부 판단 구간이다.",
      "$77,549-$77,575 구간은 ICT EQ $77,549.90, Harmonic bearish Bat D $77,550.52, Fibonacci ret_0.5 $77,575.35가 겹쳐 중단 균형선 역할을 한다.",
      "$77,237-$77,209는 ICT 뉴욕 Range Low $77,237.10과 Wyckoff 현재 분배 후보 AR $77,209.30이 가까운 하단 구조 기준선이다.",
      "$77,042.30은 ICT 상승 BOS 레벨이자 Wyckoff 이전 축적 구조의 AR로, 여러 구조 프레임에서 하단 회복권의 핵심 기준이다.",
      "$77,862.70는 ICT Range High, Fibonacci ext_1.0, Wyckoff UT, Harmonic 완료 bearish Bat/Gartley D가 중첩된 상단 구조 저항이다.",
      "$76,107.10은 Derivatives 7일 저점이자 Wyckoff SC로 장기 하단 구조 기준이 일치한다."
    ],
    "conflicts": [
      "Wyckoff는 이전 축적 구조를 SC $76,107.10 → AR $77,042.30 → Spring $76,696.70 → SOS $77,379.10 → LPS $77,513.20로 해석해 큰 구조는 축적 우위로 보지만, 같은 자료 안에서 현재 활성 구조는 BC $78,063.80 이후 AR $77,209.30, ST $77,777.20, SOW $77,288.00, UT $77,862.70을 포함한 분배 후보로 나타난다.",
      "ICT는 실행 관점에서 할인 구간의 상승 재매집 가능성을 강하게 보지만, 확정 구조상 마지막 이벤트가 $77,485.10 하향 CHoCH이므로 단기 구조는 bearish로 판정한다.",
      "Fibonacci와 Candlestick은 $77,362 부근 반등 후보와 strict bullish 패턴을 강조하지만, Derivatives는 CVD 약화, EMA20/EMA120 하회, OI 감소, 음의 basis로 매수 참여 약화를 지적한다.",
      "Harmonic은 현재가 부근에 bullish PRZ와 bearish PRZ가 동시에 중첩되어 있으나, 상단 $77,756-$78,172 완료 bearish Butterfly 및 $77,600-$78,072 완료 bearish Bat의 반응 점수가 높아 상단 공급 반응을 더 강하게 반영한다.",
      "구조와 실행 셋업이 분리되어 있다. 구조는 중립적 전환/재구조화 상태이나, 실행 셋업은 할인권 매수 반응과 PRZ/파생 약세가 동시에 충돌한다."
    ],
    "executive_summary": "현재 BTC 15분 구조는 단일 방향의 확정 추세라기보다, 이전 축적 구조가 완료된 뒤 상단에서 새로운 분배 후보가 형성되는 재구조화 구간으로 진단된다. Wyckoff상 과거 SC $76,107.10, AR $77,042.30, Spring $76,696.70, SOS $77,379.10, LPS $77,513.20의 축적 맥락은 여전히 남아 있지만, 현재가는 SOS와 LPS 아래에 있어 Phase E 상승 지속으로 확정하기 어렵다. 동시에 ICT의 마지막 확정 이벤트는 $77,485.10 하향 CHoCH이며, $77,862.70 상단 UT/Range High에서 거부된 흔적이 있어 단기 구조 회복은 아직 미완성이다. 핵심 구조 축은 하단 $77,237-$77,209, 중단 $77,488-$77,513, 상단 $77,862.70이며, $77,042.30 이탈 또는 $77,862.70 상방 수용이 현재 중립 구조를 해소하는 조건이다.",
    "raw_llm_response": "{\n  \"overall_signal\": \"neutral\",\n  \"overall_confidence\": 0.52,\n  \"execution_setup\": {\n    \"setup_bias\": \"neutral\",\n    \"setup_strength\": 0.58,\n    \"active_setups\": [\n      \"상승 실행 셋업: 현재가 $77,365.80가 ICT EQ $77,549.90 및 피보나치 ret_0.5 $77,575.35 아래의 할인 구간에 위치\",\n      \"상승 실행 셋업: 피보나치 고밀도 컨플루언스 $77,362.56을 현재가가 테스트 중이며, strict hammer quality 0.818 및 strict bullish harami quality 0.731이 하방 거부를 시사\",\n      \"상승 실행 셋업: ICT 기준 이전 상승 BOS $77,042.30 및 $77,825.80 이후 87.8% 깊은 되돌림이 발생해 재매집 후보 구간 형성\",\n      \"하락 실행 셋업: 가격이 EMA20 $77,488.64 및 EMA120 $77,507.58 아래에 머물고 CVD 변화량 -3299.4510으로 매수 주도력이 약화\",\n      \"하락 실행 셋업: 현재가가 활성 bearish Bat PRZ $77,362.98-$77,738.06 및 bearish Gartley PRZ $77,313.44-$77,713.00 내부에 위치\",\n      \"하락 실행 셋업: Wyckoff상 SOS $77,379.10 및 LPS $77,513.20 아래에 있어 Phase E 확정보다는 BU/LPS 재검증 상태\"\n    ],\n    \"setup_vs_structure\": \"구조 진단은 중립적 재구조화 상태이나, 실행 셋업은 상승 반전 후보와 하락 재거부 후보가 동시에 강하게 존재한다. 즉, 할인 구간 매수 반응은 관찰되지만 $77,488-$77,513 회복 전까지는 구조 회복으로 확정할 수 없다.\"\n  },\n  \"signal_breakdown\": {\n    \"bullish_count\": 1,\n    \"bearish_count\": 1,\n    \"neutral_count\": 4\n  },\n  \"key_levels\": {\n    \"support\": [\n      77362.56,\n      77237.1,\n      77209.3,\n      77143.55,\n      77042.3,\n      76696.7,\n      76107.1\n    ],\n    \"resistance\": [\n      77379.1,\n      77485.1,\n      77488.64,\n      77507.58,\n      77513.2,\n      77549.9,\n      77575.35,\n      77713.0,\n      77738.06,\n      77862.7,\n      78063.8,\n      78180.0\n    ]\n  },\n  \"confluences\": [\n    \"현재가 부근 $77,362-$77,366는 Fibonacci 컨플루언스 $77,362.56, Harmonic bearish Bat PRZ 하단 $77,362.98, 그리고 현재가 $77,365.80이 거의 일치하는 핵심 반응 구간이다.\",\n    \"$77,488-$77,513 구간은 ICT 하향 CHoCH $77,485.10, Derivatives EMA20 $77,488.64, Fibonacci ret_0.618 $77,507.54, Derivatives EMA120 $77,507.58, Wyckoff LPS $77,513.20, Harmonic bearish Gartley D $77,513.22가 겹치는 강한 구조 회복/거부 판단 구간이다.\",\n    \"$77,549-$77,575 구간은 ICT EQ $77,549.90, Harmonic bearish Bat D $77,550.52, Fibonacci ret_0.5 $77,575.35가 겹쳐 중단 균형선 역할을 한다.\",\n    \"$77,237-$77,209는 ICT 뉴욕 Range Low $77,237.10과 Wyckoff 현재 분배 후보 AR $77,209.30이 가까운 하단 구조 기준선이다.\",\n    \"$77,042.30은 ICT 상승 BOS 레벨이자 Wyckoff 이전 축적 구조의 AR로, 여러 구조 프레임에서 하단 회복권의 핵심 기준이다.\",\n    \"$77,862.70는 ICT Range High, Fibonacci ext_1.0, Wyckoff UT, Harmonic 완료 bearish Bat/Gartley D가 중첩된 상단 구조 저항이다.\",\n    \"$76,107.10은 Derivatives 7일 저점이자 Wyckoff SC로 장기 하단 구조 기준이 일치한다.\"\n  ],\n  \"conflicts\": [\n    \"Wyckoff는 이전 축적 구조를 SC $76,107.10 → AR $77,042.30 → Spring $76,696.70 → SOS $77,379.10 → LPS $77,513.20로 해석해 큰 구조는 축적 우위로 보지만, 같은 자료 안에서 현재 활성 구조는 BC $78,063.80 이후 AR $77,209.30, ST $77,777.20, SOW $77,288.00, UT $77,862.70을 포함한 분배 후보로 나타난다.\",\n    \"ICT는 실행 관점에서 할인 구간의 상승 재매집 가능성을 강하게 보지만, 확정 구조상 마지막 이벤트가 $77,485.10 하향 CHoCH이므로 단기 구조는 bearish로 판정한다.\",\n    \"Fibonacci와 Candlestick은 $77,362 부근 반등 후보와 strict bullish 패턴을 강조하지만, Derivatives는 CVD 약화, EMA20/EMA120 하회, OI 감소, 음의 basis로 매수 참여 약화를 지적한다.\",\n    \"Harmonic은 현재가 부근에 bullish PRZ와 bearish PRZ가 동시에 중첩되어 있으나, 상단 $77,756-$78,172 완료 bearish Butterfly 및 $77,600-$78,072 완료 bearish Bat의 반응 점수가 높아 상단 공급 반응을 더 강하게 반영한다.\",\n    \"구조와 실행 셋업이 분리되어 있다. 구조는 중립적 전환/재구조화 상태이나, 실행 셋업은 할인권 매수 반응과 PRZ/파생 약세가 동시에 충돌한다.\"\n  ],\n  \"highest_conviction_analyst\": \"Wyckoff Expert — 구조 진단 관점에서 가장 넓은 사이클 맥락과 구체적 가격 단계가 제시되어 있다. 다만 이전 축적 구조의 강도와 현재 활성 분배 후보가 충돌하므로, 결론은 단순 bullish가 아니라 '완료된 축적 이후 재구조화/분배 후보 출현'으로 해석하는 것이 가장 타당하다.\",\n  \"invalidation_level\": \"중립 재구조화 진단은 $77,862.70 상방 수용 또는 $77,042.30 하방 이탈 시 무효화된다. $77,862.70 회복은 현재 분배 후보 약화, $77,042.30 이탈은 이전 축적 회복권 훼손으로 해석한다.\",\n  \"executive_summary\": \"현재 BTC 15분 구조는 단일 방향의 확정 추세라기보다, 이전 축적 구조가 완료된 뒤 상단에서 새로운 분배 후보가 형성되는 재구조화 구간으로 진단된다. Wyckoff상 과거 SC $76,107.10, AR $77,042.30, Spring $76,696.70, SOS $77,379.10, LPS $77,513.20의 축적 맥락은 여전히 남아 있지만, 현재가는 SOS와 LPS 아래에 있어 Phase E 상승 지속으로 확정하기 어렵다. 동시에 ICT의 마지막 확정 이벤트는 $77,485.10 하향 CHoCH이며, $77,862.70 상단 UT/Range High에서 거부된 흔적이 있어 단기 구조 회복은 아직 미완성이다. 핵심 구조 축은 하단 $77,237-$77,209, 중단 $77,488-$77,513, 상단 $77,862.70이며, $77,042.30 이탈 또는 $77,862.70 상방 수용이 현재 중립 구조를 해소하는 조건이다.\"\n}"
  },
  "overall_signal": "neutral",
  "overall_confidence": 0.52,
  "operating_path": {
    "path_type": "complex",
    "confidence": 0.55,
    "waypoints": [
      {
        "seq": 1,
        "price": 77507.58,
        "type": "resistance_test",
        "source": "ICT CHoCH $77,485.10 + Derivatives EMA120 $77,507.58 + Fibonacci ret_0.618 $77,507.54 + Wyckoff LPS $77,513.20 + Harmonic bearish Gartley D $77,513.22",
        "description": "현재가 $77,365.80이 strict hammer(quality 0.818) 및 strict bullish harami(quality 0.731)로 $77,362.56 strict fib confluence에서 1차 매수 반응을 보이므로, 초기 반등이 $77,488-$77,513의 6중 컨플루언스 회복 시도로 이어질 가능성이 가장 높다. 그러나 ICT 마지막 확정 이벤트가 동 구간 하향 CHoCH이고 Derivatives EMA20/120 아래에서 거래되며 bearish Gartley D가 동일 지점이라 1차 시도는 거부 후보다.",
        "est_hours": 4.0,
        "turning_zone": [
          77507.58,
          77549.9
        ],
        "likely_wick": 77513.2,
        "rejection_confirm": 77441.0,
        "invalid_overshoot": 77636.13,
        "calibration_reasoning": "6중 컨플루언스($77,488-$77,513) 상단인 $77,513.2가 1차 거부 지점, bat D PRZ($77,485)와 strict harami 반응으로 baseline 형성. 다음 fib 저항 $77,549.9까지 자연스러운 wick 허용 폭(0.37×ATR)이며, $77,636(butterfly TP2/Fib 0.382) 돌파 시 $77,699 confluence로의 연장 신호로 본 시나리오 무효화."
      },
      {
        "seq": 2,
        "price": 77237.1,
        "type": "support_test",
        "source": "ICT 뉴욕 Range Low $77,237.10 + Wyckoff 현재 분배 후보 AR $77,209.30",
        "description": "$77,507 구간에서 bearish PRZ($77,362.98-$77,738.06 Bat / $77,313.44-$77,713.00 Gartley) 거부, CVD -3299.45 약화, OI -0.74% 감소가 가중되며 NY Range Low이자 AR 부근으로 되돌림이 이어질 가능성이 크다. 이 구간은 ICT의 sell-side liquidity 흡수 포인트이자 Wyckoff BU/LPS 재검증 지점이다.",
        "est_hours": 12.0,
        "turning_zone": [
          77180.0,
          77237.1
        ],
        "likely_wick": 77209.3,
        "rejection_confirm": 77288.0,
        "invalid_overshoot": 77143.55,
        "calibration_reasoning": "Chairman 핵심 지지 $77,209.3가 NY Range Low/AR 부근 sell-side liquidity 흡수 포인트로 자연스러운 wick 지점. zone 폭 57.1(~0.5×ATR)로 적정하며, swing low $77,288 회복 시 반등 확정, $77,143.55(다음 지지) 이탈 시 $77,042.3로의 연속 흐름이 확정."
      },
      {
        "seq": 3,
        "price": 77042.3,
        "type": "support_test",
        "source": "ICT 상승 BOS $77,042.30 + Wyckoff 이전 ACC AR $77,042.30",
        "description": "$77,237.10 이탈 시 다음 매수 방어 라인은 BOS이자 직전 축적 구조의 AR가 동일한 $77,042.30이다. 이 지점에서 LPS/BU 재방어가 확인되어야 Wyckoff Phase E 시나리오와 ICT 할인 구간 재매집 셋업이 복원된다. 방어 실패 시 $76,696.70 Spring 검증으로 이어진다.",
        "est_hours": 20.0,
        "turning_zone": [
          76955.0,
          77042.3
        ],
        "likely_wick": 77000.0,
        "rejection_confirm": 77143.55,
        "invalid_overshoot": 76896.0,
        "calibration_reasoning": "터미널 waypoint로 zone 폭 87.3(~0.76×ATR) 확장. 라운드넘버 $77,000이 liquidity magnet으로 작용해 spring-like 짧은 wick의 핵심 후보이며, BOS/AR 합치점 $77,042가 Wyckoff LPS/BU 재방어 라인. $76,896 이탈은 $76,696.7 Spring 검증 트리거로 본 turning point 무효화."
      }
    ],
    "period_extremes": {
      "4h": {
        "expected_high": 77510.0,
        "expected_low": 77330.0,
        "high_first": true
      },
      "8h": {
        "expected_high": 77513.2,
        "expected_low": 77237.1,
        "high_first": true
      },
      "24h": {
        "expected_high": 77575.35,
        "expected_low": 77042.3,
        "high_first": true
      }
    },
    "triggers": {
      "bullish": {
        "price": 77513.2,
        "description": "$77,513.20 15분 종가 회복 시 ICT 하향 CHoCH 무력화 + Wyckoff LPS 재수용 + Fib 0.618 돌파가 동시에 성립해 $77,575 EQ → $77,699.82 strict fib confluence → $77,862.70 Range High까지의 상승 경로로 전환된다."
      },
      "bearish": {
        "price": 77209.3,
        "description": "$77,209.30(Wyckoff AR) 명확한 이탈은 ICT NY Range Low $77,237.10 동반 손상 및 분배 후보 AR 붕괴를 의미하며, $77,042.30 → $76,696.70(Spring) 재시험을 가속한다."
      }
    },
    "scenario_invalidation": 77862.7,
    "raw_llm_response": "```json\n{\n  \"path_type\": \"complex\",\n  \"confidence\": 0.55,\n  \"waypoints\": [\n    {\n      \"seq\": 1,\n      \"price\": 77507.58,\n      \"type\": \"resistance_test\",\n      \"source\": \"ICT CHoCH $77,485.10 + Derivatives EMA120 $77,507.58 + Fibonacci ret_0.618 $77,507.54 + Wyckoff LPS $77,513.20 + Harmonic bearish Gartley D $77,513.22\",\n      \"description\": \"현재가 $77,365.80이 strict hammer(quality 0.818) 및 strict bullish harami(quality 0.731)로 $77,362.56 strict fib confluence에서 1차 매수 반응을 보이므로, 초기 반등이 $77,488-$77,513의 6중 컨플루언스 회복 시도로 이어질 가능성이 가장 높다. 그러나 ICT 마지막 확정 이벤트가 동 구간 하향 CHoCH이고 Derivatives EMA20/120 아래에서 거래되며 bearish Gartley D가 동일 지점이라 1차 시도는 거부 후보다.\",\n      \"est_hours\": 4.0\n    },\n    {\n      \"seq\": 2,\n      \"price\": 77237.10,\n      \"type\": \"support_test\",\n      \"source\": \"ICT 뉴욕 Range Low $77,237.10 + Wyckoff 현재 분배 후보 AR $77,209.30\",\n      \"description\": \"$77,507 구간에서 bearish PRZ($77,362.98-$77,738.06 Bat / $77,313.44-$77,713.00 Gartley) 거부, CVD -3299.45 약화, OI -0.74% 감소가 가중되며 NY Range Low이자 AR 부근으로 되돌림이 이어질 가능성이 크다. 이 구간은 ICT의 sell-side liquidity 흡수 포인트이자 Wyckoff BU/LPS 재검증 지점이다.\",\n      \"est_hours\": 12.0\n    },\n    {\n      \"seq\": 3,\n      \"price\": 77042.30,\n      \"type\": \"support_test\",\n      \"source\": \"ICT 상승 BOS $77,042.30 + Wyckoff 이전 ACC AR $77,042.30\",\n      \"description\": \"$77,237.10 이탈 시 다음 매수 방어 라인은 BOS이자 직전 축적 구조의 AR가 동일한 $77,042.30이다. 이 지점에서 LPS/BU 재방어가 확인되어야 Wyckoff Phase E 시나리오와 ICT 할인 구간 재매집 셋업이 복원된다. 방어 실패 시 $76,696.70 Spring 검증으로 이어진다.\",\n      \"est_hours\": 20.0\n    }\n  ],\n  \"period_extremes\": {\n    \"4h\":  {\"expected_high\": 77510.0, \"expected_low\": 77330.0, \"high_first\": true},\n    \"8h\":  {\"expected_high\": 77513.2, \"expected_low\": 77237.1, \"high_first\": true},\n    \"24h\": {\"expected_high\": 77575.35, \"expected_low\": 77042.3, \"high_first\": true}\n  },\n  \"triggers\": {\n    \"bullish\": {\"price\": 77513.20, \"description\": \"$77,513.20 15분 종가 회복 시 ICT 하향 CHoCH 무력화 + Wyckoff LPS 재수용 + Fib 0.618 돌파가 동시에 성립해 $77,575 EQ → $77,699.82 strict fib confluence → $77,862.70 Range High까지의 상승 경로로 전환된다.\"},\n    \"bearish\": {\"price\": 77209.30, \"description\": \"$77,209.30(Wyckoff AR) 명확한 이탈은 ICT NY Range Low $77,237.10 동반 손상 및 분배 후보 AR 붕괴를 의미하며, $77,042.30 → $76,696.70(Spring) 재시험을 가속한다.\"}\n  },\n  \"scenario_invalidation\": 77862.70\n}\n```\n\n15분 신호가 NEUTRAL이고 setup bias가 양방향 강도가 비슷하므로, 핵심 시나리오는 $77,362-$77,366 strict 컨플루언스에서 1차 반등 → $77,488-$77,513 회복 실패 → $77,237 / $77,042 순차 재검증 구조로 정렬했습니다. 무효화는 $77,862.70 Range High의 명확한 상방 수용 시점으로 두었습니다."
  },
  "tp_calibration": {
    "calibrated_waypoints": [
      {
        "seq": 1,
        "base_target": 77507.58,
        "turning_zone": [
          77507.58,
          77549.9
        ],
        "likely_wick": 77513.2,
        "rejection_confirm": 77441.0,
        "invalid_overshoot": 77636.13,
        "calibration_reasoning": "6중 컨플루언스($77,488-$77,513) 상단인 $77,513.2가 1차 거부 지점, bat D PRZ($77,485)와 strict harami 반응으로 baseline 형성. 다음 fib 저항 $77,549.9까지 자연스러운 wick 허용 폭(0.37×ATR)이며, $77,636(butterfly TP2/Fib 0.382) 돌파 시 $77,699 confluence로의 연장 신호로 본 시나리오 무효화."
      },
      {
        "seq": 2,
        "base_target": 77237.1,
        "turning_zone": [
          77180.0,
          77237.1
        ],
        "likely_wick": 77209.3,
        "rejection_confirm": 77288.0,
        "invalid_overshoot": 77143.55,
        "calibration_reasoning": "Chairman 핵심 지지 $77,209.3가 NY Range Low/AR 부근 sell-side liquidity 흡수 포인트로 자연스러운 wick 지점. zone 폭 57.1(~0.5×ATR)로 적정하며, swing low $77,288 회복 시 반등 확정, $77,143.55(다음 지지) 이탈 시 $77,042.3로의 연속 흐름이 확정."
      },
      {
        "seq": 3,
        "base_target": 77042.3,
        "turning_zone": [
          76955.0,
          77042.3
        ],
        "likely_wick": 77000.0,
        "rejection_confirm": 77143.55,
        "invalid_overshoot": 76896.0,
        "calibration_reasoning": "터미널 waypoint로 zone 폭 87.3(~0.76×ATR) 확장. 라운드넘버 $77,000이 liquidity magnet으로 작용해 spring-like 짧은 wick의 핵심 후보이며, BOS/AR 합치점 $77,042가 Wyckoff LPS/BU 재방어 라인. $76,896 이탈은 $76,696.7 Spring 검증 트리거로 본 turning point 무효화."
      }
    ],
    "raw_llm_response": "```json\n{\n  \"calibrated_waypoints\": [\n    {\n      \"seq\": 1,\n      \"base_target\": 77507.58,\n      \"turning_zone\": [77507.58, 77549.9],\n      \"likely_wick\": 77513.2,\n      \"rejection_confirm\": 77441.0,\n      \"invalid_overshoot\": 77636.13,\n      \"calibration_reasoning\": \"6중 컨플루언스($77,488-$77,513) 상단인 $77,513.2가 1차 거부 지점, bat D PRZ($77,485)와 strict harami 반응으로 baseline 형성. 다음 fib 저항 $77,549.9까지 자연스러운 wick 허용 폭(0.37×ATR)이며, $77,636(butterfly TP2/Fib 0.382) 돌파 시 $77,699 confluence로의 연장 신호로 본 시나리오 무효화.\"\n    },\n    {\n      \"seq\": 2,\n      \"base_target\": 77237.1,\n      \"turning_zone\": [77180.0, 77237.1],\n      \"likely_wick\": 77209.3,\n      \"rejection_confirm\": 77288.0,\n      \"invalid_overshoot\": 77143.55,\n      \"calibration_reasoning\": \"Chairman 핵심 지지 $77,209.3가 NY Range Low/AR 부근 sell-side liquidity 흡수 포인트로 자연스러운 wick 지점. zone 폭 57.1(~0.5×ATR)로 적정하며, swing low $77,288 회복 시 반등 확정, $77,143.55(다음 지지) 이탈 시 $77,042.3로의 연속 흐름이 확정.\"\n    },\n    {\n      \"seq\": 3,\n      \"base_target\": 77042.3,\n      \"turning_zone\": [76955.0, 77042.3],\n      \"likely_wick\": 77000.0,\n      \"rejection_confirm\": 77143.55,\n      \"invalid_overshoot\": 76896.0,\n      \"calibration_reasoning\": \"터미널 waypoint로 zone 폭 87.3(~0.76×ATR) 확장. 라운드넘버 $77,000이 liquidity magnet으로 작용해 spring-like 짧은 wick의 핵심 후보이며, BOS/AR 합치점 $77,042가 Wyckoff LPS/BU 재방어 라인. $76,896 이탈은 $76,696.7 Spring 검증 트리거로 본 turning point 무효화.\"\n    }\n  ]\n}\n```"
  },
  "timing": {
    "stages": {
      "stage1_agents": 27.5,
      "chairman": 61.7,
      "operating_path": 92.5,
      "tp_calibrator": 80.7
    },
    "agents": {},
    "total_s": 262.6
  }
}