{
  "ticker": "ETHU",
  "ticker_name": "2x Ether ETF",
  "status": "success",
  "trade_date": "2026-04-14",
  "analysis_date": "2026-04-15",
  "decision": "{\n  \"rating\": \"HOLD\",\n  \"portfolio_stance\": \"BULLISH\",\n  \"entry_action\": \"WAIT\",\n  \"setup_quality\": \"DEVELOPING\",\n  \"confidence\": 0.62,\n  \"time_horizon\": \"short\",\n  \"entry_logic\": \"ETHU의 방향성은 조건부로 우호적이지만 오늘 즉시 추격 매수할 정도로 확인되지는 않았다. 공격적 분석가가 지적한 대로 ETHU는 10 EMA 24.65, VWMA 23.50, 50 SMA 23.10 위를 회복했고, MACD가 3월 16일 -2.64에서 4월 14일 0.04로 양전환했으며 히스토그램도 4월 10일 0.64, 4월 13일 0.68, 4월 14일 0.75로 확대됐다. RSI 57.35도 과열권은 아니다. 그러나 보수적·중립적 분석가가 강조한 것처럼 50 SMA는 아직 하락 중이고, ETHU는 200 SMA 79대보다 훨씬 낮으며, 25.90-26.00 저항과 2x Ether 구조의 손실 증폭 위험이 남아 있다. 따라서 기존 소규모 전술 노출은 보유 가능하지만, 신규 진입은 ETHU가 26.00 위에서 종가를 만들고 최근 5.4M-6.5M 주 거래량을 뚜렷하게 넘기거나, 24.65 또는 23.50-23.10 지지대에서 매도 압력이 둔화되는 것을 확인한 뒤에만 검토한다.\",\n  \"exit_logic\": \"이미 보유 중이면 작은 전술 포지션만 유지하고, ETHU가 23.10 아래로 일봉 종가를 내면 즉시 축소 또는 청산한다. 22.00 부근은 단순한 여유 손절선이 아니라 반등 논리를 재평가해야 하는 더 넓은 변동성 위험 경계다. 26.00 돌파가 성공해 28.20-28.89 저항대에 접근하면 Ether 추세, 거래량, ETF 자금 흐름이 함께 개선되지 않는 한 일부 이익 실현을 우선한다. 25.90-26.00에서 반복적으로 실패하거나 약한 거래량의 돌파가 빠르게 되돌려지면 신규 매수 대기를 중단한다.\",\n  \"position_sizing\": \"ETHU는 2x Ether 상품이므로 정상 주식 비중보다 작게 운용한다. 현재는 전술적 보유 또는 관찰 단계이며, 확인 전 신규 대규모 진입은 부적절하다. 26.00 위 종가와 거래량 확장이 확인되면 작은 starter만 허용하고, 이후 가격이 26.00 위를 유지하며 Ether 현물과 crypto risk-on 흐름이 동반될 때만 단계적으로 추가한다. 24.65 또는 23.50-23.10 지지 확인 진입은 더 작은 시험 포지션으로 제한한다.\",\n  \"risk_limits\": \"핵심 위험 관리는 23.50-23.10 지지대와 22.00 위험 경계를 기준으로 한다. 23.10 아래 일봉 종가는 즉각적인 반등 설정 훼손으로 보고 신규 매수와 평균단가 낮추기를 중단한다. 22.00 이탈은 2x 구조, 갭 위험, 일일 재조정 효과를 감안해 포지션 전면 재평가 신호로 처리한다. 어떤 starter도 진입가에서 손절 기준까지의 손실이 사전에 정한 포트폴리오 위험 예산의 작은 일부만 사용하도록 제한한다.\",\n  \"catalysts\": [\n    \"ETHU가 25.90-26.00 위에서 일봉 종가를 만들고 거래량이 최근 5.4M-6.5M 주 수준을 뚜렷하게 상회하는 경우\",\n    \"4월 13일 $7.4M 유입, 4월 10일 $3.48M 유입, 4월 8일 $2.26M 유입 이후 ETHU 자금 유입이 지속되는 경우\",\n    \"Ether 현물 가격 회복과 broader crypto risk-on 흐름이 동시에 확인되는 경우\",\n    \"FTSE 기준지수 전환이 상품 신뢰도와 기관 수요 개선으로 이어지는 경우\",\n    \"약한 달러, 인플레이션 우려 완화, 금리 인하 기대 회복 등 거시 환경이 위험자산에 우호적으로 바뀌는 경우\"\n  ],\n  \"invalidators\": [\n    \"ETHU가 23.10 아래로 일봉 종가를 내며 VWMA와 50 SMA 지지대를 이탈하는 경우\",\n    \"ETHU가 22.00 부근의 더 넓은 변동성 위험 경계를 하향 이탈하는 경우\",\n    \"26.00 위 돌파가 약한 거래량으로 실패하고 빠르게 되돌려지는 경우\",\n    \"Ether 약세나 crypto risk-off 충격이 재개되어 2x 구조의 손실 증폭 위험이 커지는 경우\",\n    \"NAV 괴리, 추적오차, 유동성, 비용, 분배금 품질, 설정·환매 안정성에서 불리한 증거가 확인되는 경우\"\n  ],\n  \"watchlist_triggers\": [\n    \"ETHU가 26.00 위에서 종가를 만들고 거래량이 확장되는지 확인\",\n    \"ETHU가 24.65의 10 EMA 부근으로 되돌린 뒤 지지와 반등을 보이는지 확인\",\n    \"ETHU가 23.50-23.10 지지대에서 안정화되고 intraday 수요가 개선되는지 확인\",\n    \"ETHU가 28.20-28.89 저항대에 접근할 때 일부 이익 실현 또는 추가 보유 여부 재검토\",\n    \"Ether 현물 추세, ETHU ETF flows, NAV premium 또는 discount, 비용률, 추적오차 자료 갱신 확인\"\n  ],\n  \"data_coverage\": {\n    \"company_news_count\": 3,\n    \"disclosures_count\": 0,\n    \"social_source\": \"news_derived\",\n    \"macro_items_count\": 1\n  }\n}",
  "started_at": "2026-04-15T21:28:02.116867+09:00",
  "finished_at": "2026-04-15T21:39:55.093171+09:00",
  "duration_seconds": 712.98,
  "metrics": {
    "llm_calls": 57,
    "tool_calls": 24,
    "tokens_in": 0,
    "tokens_out": 0,
    "tokens_available": false,
    "calls_by_model": {
      "gpt-5.4": 57
    }
  },
  "tool_telemetry": {
    "total_tool_calls": 24,
    "vendor_calls": {
      "yfinance": 16,
      "naver": 3,
      "ecos": 1,
      "opendart": 1,
      "alpha_vantage": 3
    },
    "fallback_count": 7,
    "events": [
      {
        "method": "get_stock_data",
        "vendor": "yfinance",
        "status": "success",
        "fallback": false,
        "note": null
      },
      {
        "method": "get_indicators",
        "vendor": "yfinance",
        "status": "success",
        "fallback": false,
        "note": null
      },
      {
        "method": "get_indicators",
        "vendor": "yfinance",
        "status": "success",
        "fallback": false,
        "note": null
      },
      {
        "method": "get_indicators",
        "vendor": "yfinance",
        "status": "success",
        "fallback": false,
        "note": null
      },
      {
        "method": "get_indicators",
        "vendor": "yfinance",
        "status": "success",
        "fallback": false,
        "note": null
      },
      {
        "method": "get_indicators",
        "vendor": "yfinance",
        "status": "success",
        "fallback": false,
        "note": null
      },
      {
        "method": "get_indicators",
        "vendor": "yfinance",
        "status": "success",
        "fallback": false,
        "note": null
      },
      {
        "method": "get_indicators",
        "vendor": "yfinance",
        "status": "success",
        "fallback": false,
        "note": null
      },
      {
        "method": "get_indicators",
        "vendor": "yfinance",
        "status": "success",
        "fallback": false,
        "note": null
      },
      {
        "method": "get_company_news",
        "vendor": "naver",
        "status": "success",
        "fallback": false,
        "note": null
      },
      {
        "method": "get_social_sentiment",
        "vendor": "naver",
        "status": "fallback",
        "fallback": true,
        "note": "naver: empty or unusable result"
      },
      {
        "method": "get_social_sentiment",
        "vendor": "yfinance",
        "status": "fallback",
        "fallback": true,
        "note": "yfinance: empty or unusable result"
      },
      {
        "method": "get_macro_news",
        "vendor": "ecos",
        "status": "fallback",
        "fallback": true,
        "note": "ecos: ECOS API key is not configured."
      },
      {
        "method": "get_disclosures",
        "vendor": "opendart",
        "status": "fallback",
        "fallback": true,
        "note": "opendart: empty or unusable result"
      },
      {
        "method": "get_company_news",
        "vendor": "naver",
        "status": "fallback",
        "fallback": true,
        "note": "naver: empty or unusable result"
      },
      {
        "method": "get_company_news",
        "vendor": "yfinance",
        "status": "fallback",
        "fallback": true,
        "note": "yfinance: empty or unusable result"
      },
      {
        "method": "get_macro_news",
        "vendor": "alpha_vantage",
        "status": "success",
        "fallback": false,
        "note": null
      },
      {
        "method": "get_company_news",
        "vendor": "alpha_vantage",
        "status": "success",
        "fallback": false,
        "note": null
      },
      {
        "method": "get_income_statement",
        "vendor": "yfinance",
        "status": "success",
        "fallback": false,
        "note": null
      },
      {
        "method": "get_balance_sheet",
        "vendor": "yfinance",
        "status": "success",
        "fallback": false,
        "note": null
      },
      {
        "method": "get_cashflow",
        "vendor": "yfinance",
        "status": "success",
        "fallback": false,
        "note": null
      },
      {
        "method": "get_insider_transactions",
        "vendor": "yfinance",
        "status": "fallback",
        "fallback": true,
        "note": "yfinance: empty or unusable result"
      },
      {
        "method": "get_fundamentals",
        "vendor": "yfinance",
        "status": "success",
        "fallback": false,
        "note": null
      },
      {
        "method": "get_insider_transactions",
        "vendor": "alpha_vantage",
        "status": "success",
        "fallback": false,
        "note": null
      }
    ],
    "called_tools": [],
    "intraday_snapshot_used": false
  },
  "quality_flags": [
    "token_usage_unavailable"
  ],
  "report_writer": {
    "status": "success",
    "scope": "ticker",
    "provider": "codex",
    "model": "gpt-5.4"
  },
  "provider": "codex",
  "models": {
    "quick_model": "gpt-5.4",
    "deep_model": "gpt-5.4",
    "output_model": "gpt-5.4"
  }
}