콘텐츠로 이동

점수 체계

모든 시그널에는 숫자 필드 3 개와 카테고리 필드 2 개가 포함됩니다. 대시보드는 이들을 모두 표시합니다. 본 페이지에서는 각각의 의미와 각 숫자가 정확히 어떻게 계산되는지를 설명합니다.

단일 agent 의 점수 산정 방법

5 개의 전문 agent — SignalScope、SentimentPulse、MacroMind、SectorScan、PolicyRadar — 가 각 뉴스 항목을 독립적으로 평가합니다(SentimentPulse는 소스가 일시 중단된 동안 꺼져 있습니다. 아래 표 참조). 각 agent 는 동일한 3 단계 파이프라인을 실행합니다:

1. 도메인 특화 도구로 증거 수집. Agent 의 prompt 는 점수 산정 이전에 자기 전문 분야와 관련된 도구를 호출하도록 강제합니다:

Agent 점수 산정 전 필수 호출 도구
SignalScope 지정학 / 제재 / 거시 이벤트 조회, RSS, 웹 검색
SentimentPulse 현재 꺼져 있음: Reddit, Stocktwits, YouTube 조회가 일시 중단되어 실행되지 않습니다
MacroMind 중앙은행 금리, CPI, 환율, 원유 / 금
SectorScan 동일 섹터 및 공급망 관련 기업 조회
PolicyRadar 규제 문서, 중앙은행 성명, SEC / ASIC 집행 동향

2. 명시적인 보정표에 따라 점수 산정. 각 agent 의 prompt 에는 LLM 의 앵커로서 이 표가 그대로 기재되어 있습니다:

범위 의미
0.80 – 1.00 직접적이고 중대한 영향 (보유 종목 직접 언급, 파산, 큰 폭의 어닝 서프라이즈)
0.65 – 0.79 유의미한 간접 영향 (섹터 전반 움직임, 핵심 고객/공급사 영향)
0.40 – 0.64 보통 정도 관련성 (산업 트렌드, 예상 부합 거시 지표)
0.00 – 0.39 약한 시그널 (일반적 논평, 거리 먼 관계)

Prompt 에는 다음 문장도 그대로 적혀 있습니다:"DO NOT suppress scores out of caution — if a stock is directly named with clear impact, score it 0.75+." (조심스럽다고 점수를 낮추지 말 것 —— 종목이 명확한 영향과 함께 직접 언급된다면 0.75+ 를 부여하라). 이는 LLM 이 지나치게 보수적으로 평가하는 경향에 대한 의도적인 반편향입니다.

3. 자기 비판 (Reflexion 패턴). 각 agent 는 REVISE 노드를 실행하여 자신의 초안을 다시 읽고 두 번째 패스에서 점수를 조정할 수 있습니다. 최종 점수는 반성 후 점수이며, 초안 점수는 감사를 위해 draft_impact_score 로 별도 보존됩니다.

Agent 점수에 관한 중요한 주의 사항

  • 이는 LLM 의 판단이며 공식이 아닙니다. 동일한 뉴스라도 실행마다 점수가 약간 흔들립니다 (전형적 드리프트 ≈ ±0.03).
  • confidence_score 는 agent 가 자신의 판단에 얼마나 확신하는지를 측정합니다. 뉴스의 중요도와는 무관하며 impact 와는 독립된 차원입니다.
  • Agent 의 도구 호출이 실패하더라도 (예: 외부 API 다운) 점수는 매기지만 confidence_score 는 그에 맞춰 낮아져야 합니다.

시그널 단위 점수 집계 방식

5 개 agent 가 모두 실행된 후, 3 가지 다른 집계 규칙이 출력을 결합합니다. UI 에 표시되는 각 숫자에 사용되는 규칙은 다릅니다 — 가장 자주 받는 질문이자 핵심:

UI 의 필드 집계 규칙 이 규칙인 이유
시그널의 impact_score 성공한 agent 들 사이에서 max(agent.impact_score) 가장 큰 영향을 본 시각이 이깁니다. 단 한 명의 전문가라도 이를 큰 사건으로 본다면 시그널 전체를 큰 사건으로 처리 — 1 회 오경보 < 1 회 누락.
시그널의 confidence_score 성공한 agent 들 사이에서 mean(agent.confidence_score) 「확실성」에 대한 합의 — 4 명이 불확실하다면 5 번째 agent 가 확신하더라도 시그널 전체는 그 불확실성을 떠안습니다.
tickers_linked 의 각 종목 impact_score 해당 종목을 언급한 agent 들 사이에서, 각 agent 의 confidence_score 를 가중치로 한 가중평균 단일 종목에 대해서는 「가장 극단적 시각」이 아닌 「합의 영향도」가 필요합니다. 가중치 부여로 확신 있는 agent 에게 더 큰 발언권을 줍니다.

소스 코드 참조:시그널 단위 규칙은 agents/synthesis_engine.py:308-311, 종목별 규칙은 agents/synthesis_engine.py:218-251.

Degraded 모드. 5 개 agent 중 성공적으로 응답한 것이 3 개 미만이면 urgency 가 자동으로 한 단계 강등됩니다 (FLASH → ALERT, ALERT → NOTE, NOTE → FYI). 이는 축퇴 실행 시 한 명의 자신감 넘치는 agent 가 단독으로 점수를 끌어올리는 것을 방지하기 위함입니다.

Urgency (긴급도)

숫자가 아닌 버킷 라벨. 시그널이 어디로, 얼마나 시끄럽게 전달되는지를 제어합니다. 4 단계는 코드의 shared/utils.apply_urgency_thresholds 에 매핑되며, 각 시그널 카드에 다른 색깔의 배지로 렌더링됩니다 (빨강 / 주황 / 금색 / 회색).

Urgency 임계값 배지 전달 방식
FLASH impact ≥ 0.80 이고 event 가 flash 군 (제재, 파산, 금리 서프라이즈, 수출 금지, 지정학 충돌…) 빨강 Telegram + 휴대폰/브라우저 푸시(기본 등급), requireInteraction 상시 배너
ALERT impact ≥ 0.65 주황 Telegram + 휴대폰/브라우저 푸시(기본 등급)
NOTE impact ≥ 0.40 금색 대시보드 표시; NOTE를 켠 경우에만 Telegram + 휴대폰/브라우저 푸시(무료 버전에서는 불가)
FYI impact < 0.40 회색 대시보드 표시, 피드 하단에 위치; FYI를 켠 경우에만 푸시(무료 버전에서는 불가)

flash 이벤트 타입은 명시적으로 나열되어 있습니다:export_ban, sanctions, tariffs, rate_surprise, bankruptcy, trading_halt, geopolitical_conflict, fraud, earnings_shock, regulatory_action. impact 가 중간 정도인 시그널이라도 PolicyRadar 나 MacroMind 가 이 중 하나의 event_type 을 부여하면 FLASH 로 승격될 수 있습니다.

FLASH 가 드문 이유

대부분의 어닝 / 애널리스트 / 공급망 뉴스는 분명히 주목할 만한 경우라도 ALERT 가 상한입니다. FLASH 는 「지금 당장 깨어나라」는 사건 전용입니다. 피드에 FLASH 가 가득하다면 임계값 로직 교정이 깨진 것 — 이슈를 열어주세요.

Impact score

[0.0, 1.0] 범위의 숫자. 집계 규칙은 max (위 표 참조). 최종 사용자 해석:

  • 0.80 + — 다음 거래 세션에서 주가를 두드러지게 움직일 가능성이 큽니다. 드물며 주로 정책 또는 M&A.
  • 0.65 – 0.80 — 분명히 관련 있음, 읽을 가치 있음. ALERT 등급 시그널 대부분이 이 범위.
  • 0.40 – 0.65 — 점진적 뉴스, 흥미로운 배경, 단독으로는 가격을 움직이기 어려움.
  • 0.40 미만 — 채움. 워치리스트를 언급한 덕에 표시될 뿐 우선순위가 낮음.

UI 는 impact 막대를 색으로 구분합니다:0.70+ 빨강, 0.45–0.70 호박색, 0.45 미만 파랑.

Confidence score

마찬가지로 [0.0, 1.0] 범위. 집계 규칙은 성공한 agent 자기보고 confidence 의 mean. Confidence 는 뉴스의 중요도가 아니라 각 agent 가 자신의 평가에 얼마나 확신하는지를 측정합니다. 「고 impact + 저 confidence」는 합당함 (예: 루머 출처 M&A); 「저 impact + 고 confidence」도 합당함 (예: 예상 부합 정기 어닝 — 이미 가격에 반영).

두 점수는 독립적으로 해석하세요:

  • 고 impact + 고 confidence → 진짜 시그널, 책임감 있게 행동.
  • 고 impact + 저 confidence → 주목할 가치, 가설로 다룸.
  • 저 impact + 고 confidence → 노이즈이지만 잘 식별된 노이즈.
  • 저 impact + 저 confidence → 무시.

종목별 관련도

모든 시그널에는 tickers_linked 목록이 포함됩니다 — 뉴스 영향을 받는 종목마다 한 항목씩, 자체 impact 점수와 link_type 을 가집니다:

  • direct (직접) — 뉴스가 이 종목 또는 회사명을 명시적으로 언급.
  • sector (동일 섹터) — 뉴스는 인접 회사 또는 시장 이벤트에 관한 것이고, 섹터 / 공급망 agent 가 이 종목으로 전파.
  • chain (공급망) — SectorScan 이 추론한 핵심 고객 / 공급사 / 파트너 관계.
  • macro (거시) — 광범위한 자산 클래스 움직임 (모든 REITs, 모든 은행); 진정으로 섹터 전반인 이벤트 전용.

종목별 impact 는 max 가 아닌 가중평균 규칙을 사용합니다. 단일 종목에 대해서는 가장 극단적 시각이 아닌 합의 영향도가 필요하기 때문입니다. 대시보드는 이를 내림차순으로 정렬하므로 각 시그널에서 가장 관련도 높은 종목이 첫 번째 막대로 옵니다.

시그널 방향

각 시그널에는 방향도 붙습니다. 그 뉴스가 관련 종목에 어떤 영향을 줄 가능성이 있는지를 뜻합니다. 시그널 카드의 작은 색상 라벨과 Telegram 시그널 제목에 표시됩니다.

라벨 의미
긍정적 영향 (초록) 관련 기업에 유리할 가능성이 있는 뉴스
부정적 영향 (빨강) 관련 기업에 불리할 가능성이 있는 뉴스
중립 뚜렷한 영향이 보이지 않음
불확실 에이전트가 판단하지 못함

방향은 뉴스 자체를 나타내며 주가가 아닙니다. 주가 예측도, 매수나 매도 제안도 아닙니다.

Signal type

Agent 는 각 시그널에 「이벤트 타입」을 나타내는 짧은 문자열을 부여합니다:earnings (어닝), guidance_change (가이던스 변경), m_and_a (M&A), policy_change (정책 변경), supply_chain (공급망), macro_event (거시 이벤트), routine_news (일반 뉴스), sentiment_surge (센티먼트 급증). urgency 배지 옆에 작은 저채도 알약으로 표시됩니다. 필터링과 향후 규칙 매칭에 사용됩니다.

관련 항목

  • Agents — 이 점수들을 생성하는 주체
  • Claw chat (RAG) — 동일한 점수가 검색 랭킹에 사용되는 방식