{
  "ticker": "ETN",
  "ticker_name": "Eaton",
  "status": "success",
  "trade_date": "2026-04-16",
  "analysis_date": "2026-04-17",
  "decision": "{\n  \"rating\": \"OVERWEIGHT\",\n  \"portfolio_stance\": \"BULLISH\",\n  \"entry_action\": \"WAIT\",\n  \"setup_quality\": \"DEVELOPING\",\n  \"confidence\": 0.72,\n  \"time_horizon\": \"medium\",\n  \"entry_logic\": \"ETN의 중기 배분 관점은 여전히 우호적이다. 공격적 분석가가 강조한 7.055 billion 매출, 1.132 billion 순이익, 2.91 희석 EPS, 1.573 billion 잉여현금흐름, 순부채 10.325 billion에서 9.273 billion으로의 감소는 AI 전력 인프라와 전력망 현대화 수혜가 단순한 서사가 아니라 현금흐름과 재무 개선으로 뒷받침된다는 근거다. 또한 Citigroup 464, RBC 457, Jefferies 460 목표가 상향은 기관 기대가 유지되고 있음을 보여준다. 다만 보수적·중립 분석가의 지적처럼 현재 가격은 최근 고점 부근이고, trailing P/E 약 37.6, forward P/E 약 25.3, P/B 약 7.8로 실망 여지가 작으며, MACD 히스토그램이 5.10에서 3.16으로 둔화되고 RSI가 60.50으로 식고 있다. 따라서 오늘은 추격 매수하지 않고 WAIT한다. 신규 진입은 388-390 지지 확인 또는 400 회복과 거래량 개선이 필요하며, 407.01 상향 돌파는 거래량 확장이 동반될 때만 더 높은 품질의 추가 신호다.\",\n  \"exit_logic\": \"기존 보유분은 ETN이 종가 기준 388 위에 머무는 동안 핵심 노출을 유지한다. 388 하회 종가는 전술적 축소 신호로 처리하고, 10일 EMA 부근 회복 실패가 이어지면 추가 위험 축소를 검토한다. VWMA 부근 377 이탈은 단순 소화가 깊은 조정으로 바뀌는 신호이며, 50일 SMA 부근 370 이탈은 중기 추세 재평가 구간이다. 실적 발표에서 주문, 백로그, 마진, 잉여현금흐름, 데이터센터 및 중전압 수요 전환이 AI·전력망 프리미엄을 뒷받침하지 못하면 등급을 낮추거나 청산한다.\",\n  \"position_sizing\": \"오늘 신규 풀사이즈 진입은 하지 않는다. ATR이 약 12.39로 높고 가격이 최근 고점에 가까우므로 확인 후에도 신규 자금은 정상 비중보다 작은 부분 시작분만 허용한다. 388-390 지지가 종가 기준으로 방어되면 제한적 STARTER가 정당화될 수 있고, 400 회복과 거래량 개선은 보통 수준의 추가 신호, 407.01 돌파와 뚜렷한 거래량 확장은 고품질 추가 신호다. 기존 보유자는 핵심 비중을 유지하되 실적 전까지 집중도를 높이지 않는다.\",\n  \"risk_limits\": \"핵심 전술 위험선은 종가 기준 388이다. 388 하회 시 신규 매수 금지와 전술적 축소를 실행하고, 377 하회 시 조정 심화로 보고 370까지의 하방을 열어 둔다. 407.01 돌파가 거래량 없이 실패하면 추가 매수 금지 또는 일부 이익실현 신호로 본다. 고멀티플 산업재와 AI 인프라 서사에 대한 집중 위험을 제한하고, 실적 이벤트 전에는 정상보다 낮은 위험 예산을 유지한다.\",\n  \"catalysts\": [\n    \"Q1 실적에서 EPS 품질, 강한 주문, 백로그 지속성, 마진 방어, 데이터센터 전력 수요 가시성이 확인되는 경우\",\n    \"실적 이후 Citigroup, RBC, Jefferies 등과 같은 애널리스트 지지가 단순 서사가 아니라 추정치 상향으로 이어지는 경우\",\n    \"400 회복 후 거래량 개선, 이후 407.01 상향 돌파와 거래량 확장이 동반되는 경우\",\n    \"전력망 현대화, 전기화, AI 인프라 지출이 ETN의 매출과 잉여현금흐름으로 전환되고 있다는 추가 증거\",\n    \"Omaha 370,000-square-foot 시설과 2027 생산 개시 계획이 중전압 및 전력 배전 병목 해소 기대를 강화하는 경우\"\n  ],\n  \"invalidators\": [\n    \"ETN이 종가 기준 388 아래로 내려간 뒤 10일 EMA 부근을 회복하지 못하는 경우\",\n    \"VWMA 부근 377 또는 50일 SMA 부근 370을 이탈해 조정이 단기 소화를 넘어서는 경우\",\n    \"Q1 가이던스나 경영진 코멘트에서 주문 성장 둔화, 백로그 약화, 마진 압박, 데이터센터 및 중전압 수요 전환 부족이 확인되는 경우\",\n    \"AI 인프라·전력망 투자 서사가 약해지거나 금리, 인플레이션, 지정학 리스크, 위험회피 장세가 고멀티플 산업재를 압박하는 경우\",\n    \"거래량 없는 407.01 돌파 실패로 고점 부근 매수세 부족이 드러나는 경우\"\n  ],\n  \"watchlist_triggers\": [\n    \"388-390 지지대가 종가 기준으로 방어되고 매도 압력이 완화되는지 확인\",\n    \"400 회복과 함께 거래량이 개선되는지 확인\",\n    \"407.01 상향 돌파가 뚜렷한 거래량 확장과 함께 발생하는지 확인\",\n    \"MACD 히스토그램이 안정되거나 재확대되고 RSI가 50 위를 유지하는지 확인\",\n    \"Q1 실적 발표와 컨퍼런스콜에서 백로그, 중전압 스위치기어 수요, Omaha 생산능력 일정, 마진, 잉여현금흐름 언급 확인\",\n    \"상대 약세가 이어지는지, 특히 395.06 부근 조정 이후 S&P 500 대비 부진이 반복되는지 확인\"\n  ],\n  \"data_coverage\": {\n    \"company_news_count\": 4,\n    \"disclosures_count\": 0,\n    \"social_source\": \"news_derived\",\n    \"macro_items_count\": 1\n  }\n}",
  "started_at": "2026-04-17T17:49:18.719440+09:00",
  "finished_at": "2026-04-17T18:03:16.177866+09:00",
  "duration_seconds": 837.46,
  "metrics": {
    "llm_calls": 55,
    "tool_calls": 18,
    "tokens_in": 0,
    "tokens_out": 0,
    "tokens_available": false,
    "calls_by_model": {
      "gpt-5.4": 55
    }
  },
  "tool_telemetry": {
    "total_tool_calls": 18,
    "vendor_calls": {
      "yfinance": 15,
      "alpha_vantage": 3
    },
    "fallback_count": 1,
    "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_social_sentiment",
        "vendor": "yfinance",
        "status": "fallback",
        "fallback": true,
        "note": "yfinance: empty or unusable result"
      },
      {
        "method": "get_company_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_macro_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": "success",
        "fallback": false,
        "note": null
      },
      {
        "method": "get_fundamentals",
        "vendor": "yfinance",
        "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"
  },
  "intraday_snapshot_attempts": [
    {
      "ticker": "ETN",
      "attempted": true,
      "success": true,
      "checkpoint": "05:05",
      "interval": "5m",
      "attempted_at": "2026-04-17T21:02:28.837502+09:00",
      "provider": "yfinance_intraday",
      "market_data_asof": "2026-04-16T15:55:00-04:00"
    },
    {
      "ticker": "ETN",
      "attempted": true,
      "success": true,
      "checkpoint": "selective_rerun",
      "interval": "5m",
      "attempted_at": "2026-04-17T22:24:22.284319+09:00",
      "provider": "yfinance_intraday",
      "market_data_asof": "2026-04-16T15:55:00-04:00"
    },
    {
      "ticker": "ETN",
      "attempted": true,
      "success": true,
      "checkpoint": "01:35",
      "interval": "5m",
      "attempted_at": "2026-04-18T02:34:32.255264+09:00",
      "provider": "yfinance_intraday",
      "market_data_asof": "2026-04-17T13:30:00-04:00"
    }
  ],
  "latest_intraday_snapshot_attempt": {
    "ticker": "ETN",
    "attempted": true,
    "success": true,
    "checkpoint": "01:35",
    "interval": "5m",
    "attempted_at": "2026-04-18T02:34:32.255264+09:00",
    "provider": "yfinance_intraday",
    "market_data_asof": "2026-04-17T13:30:00-04:00"
  },
  "intraday_snapshot_latest_attempt": {
    "ticker": "ETN",
    "attempted": true,
    "success": true,
    "checkpoint": "01:35",
    "interval": "5m",
    "attempted_at": "2026-04-18T02:34:32.255264+09:00",
    "provider": "yfinance_intraday",
    "market_data_asof": "2026-04-17T13:30:00-04:00"
  }
}