신호 충돌 해결 룰 설계: 뉴스·공시·기술·매크로가 싸울 때 ‘일관되게’ 결정하는 법

최종 수정: 작성자: Finyul

지표는 매수인데 뉴스가 불안할 때, 해법은 신호를 더 찾는 게 아니라 우선순위·가중치·거부권(Stop rule)을 고정하는 것입니다. 이 글은 멀티소스/멀티에이전트 환경에서 흔들림을 줄이는 룰 테이블·플로우·템플릿을 바로 가져다 쓰게 정리합니다.

전체 폐루프(분석→예측→결정→실행)가 먼저 필요하면 LLM 멀티에이전트 투자 시스템(MAS) 완전 가이드를 참고하세요.

뉴스·공시·기술·매크로 신호 충돌 예시
뉴스·공시·기술·매크로 신호 충돌 예시

왜 충돌이 생기는가: 신호는 “틀린 게” 아니라 “시간축/의미/시장상태”가 다르다

1) 시간축이 다르면 같은 사실도 결론이 달라진다

뉴스는 T+1에 강하고, 매크로는 T+20에 강합니다. 기술적 신호는 “지금 가격 반응”이라 단기엔 유효하지만, 이벤트 충격엔 쉽게 뒤집힙니다.

2) 텍스트 신호는 ‘사건’, 가격 신호는 ‘반응’이다

공시/뉴스는 “무슨 일이 있었는가”, 기술적은 “시장이 어떻게 반응했는가”. 둘이 충돌할 수밖에 없습니다.

3) 시장 상태(추세/횡보/급변)가 신호 신뢰도를 바꾼다

저변동 시장에서는 “돌파/크로스”가 더 자주 가짜가 됩니다. 예를 들어 REITs 기반 멀티에이전트 연구에서는 동적 임계값(θ)로 sideways(횡보)를 정의할 때 약 33%가 횡보로 분류된다고 서술합니다. 즉 “횡보가 기본”인 시장에서는 기술적 매수 신호가 더 자주 충돌을 만든다는 뜻입니다.

원인한 줄 설명보충
1) 시간축(Time Horizon)단기 신호와 중장기 신호는 같은 사건에도 다른 결론을 낸다뉴스/이벤트는 단기, 매크로는 중장기, 기술적은 즉시 반응
2) 의미(Meaning)텍스트=사건, 가격=반응공시·뉴스는 “무슨 일이 있었나”, 기술적은 “시장이 어떻게 반응했나”
3) 시장상태(Regime)시장 상태가 신호 신뢰도를 바꾼다동적 임계값 설정에서 sideways(횡보) ≈33%로 나타남(연구 설정). Nv≈30일, qL/qU=30%/70%, τhigh/τlow≈1.4/0.7
충돌은 정상 → 규칙으로 다뤄야 한다

충돌을 유형화하면 절반은 끝난다: 6가지 대표 충돌 패턴

아래 6개만 “패턴 라이브러리”로 만들어두면, 그날그날 감정이 아니라 규칙으로 처리됩니다.

1. 뉴스 불안 vs 기술적 매수

증상뉴스는 부정·기술은 매수라 결론이 엇갈림
원인사건(뉴스)이 가격에 반영되기 전/후 불명
권장 룰반영 시점 확인 후 우선순위(확정성) 적용
흔한 실수기술만 보고 진입 후 뉴스로 휩쓸림

2. 공시 확정 vs 기술적 반대

증상공시는 중립/악재, 기술은 돌파·매수
원인신뢰도·시간축 차이
권장 룰우선순위 — 공시(확정) > 기술적
흔한 실수루머를 확정처럼 취급하거나 기술만 신뢰

3. 매크로 역풍 vs 종목 호재

증상매크로는 금리↑/리스크, 종목은 호재
원인기간·자산 계층 불일치
권장 룰가중치 합의(기간별 T+1/T+20 분리)
흔한 실수한 축만 보기

4. 단기 호재 vs 중장기 악재(기간 충돌)

증상단기 호재인데 중장기 매크로는 악재
원인시간축 불일치
권장 룰기간별 가중치 분리, Stop rule(합의 약하면 hold)
흔한 실수단기만 보고 중장기 무시

5. 신호 강도 불균형(한쪽만 과신)

증상한 신호만 confidence 과도
원인한 축만 확신
권장 룰Stop rule 후보(과신 축 강등 또는 hold)
흔한 실수과신한 한 축이 전체를 지배

6. 데이터 품질 충돌(루머/중복/근거 부재)

증상출처 불명·중복 기사·근거 없음
원인evidence 누락, 출처 품질 낮음
권장 룰근거 부족이면 보류(insufficient evidence), 신뢰도 강등
흔한 실수추측형 뉴스를 확정처럼 반영

해결의 핵심 3종 세트: 우선순위 + 가중치 합의 + Stop rule(거부권)

신호 충돌 해결은 “정답 찾기”가 아니라 “일관성 만들기”입니다. 아래 3가지를 세트로 씁니다.

충돌 해결 3단계: 우선순위 → 가중치 합의 → Stop rule

룰 1) 우선순위 매트릭스: “상황별로” 우선순위를 바꿔라

고정 우선순위는 간단하지만 위험합니다. 시장 상태/이벤트 유형/데이터 품질에 따라 우선순위가 바뀌어야 합니다.

추천: 3축 우선순위 기준

  • (A) 이벤트 확정성: 공시/규제(확정) > 주요 뉴스(준확정) > 소셜/루머(불확정)
  • (B) 시장 상태: 급변동/리스크온오프 전환 시 매크로·리스크 트리거 상향
  • (C) 데이터 품질: 출처 불명/중복 기사/추측형 문장 많으면 신뢰도 강등
시장 상태공시/공식발표매크로뉴스기술적
추세(Trend)2(중대 공시 시 1로 승격)341
횡보(Sideways)1234(횡보에선 기술적 오신호 증가)
급변동/이벤트(Shock)12(리스크 트리거)34(보조)

실전 팁: 우선순위는 “누구 말이 맞냐”가 아니라 사고를 줄이는 장치입니다. 특히 공시처럼 확정 정보가 들어오면, 기술적 신호보다 우선하도록 해두는 게 일반적으로 안전합니다.

룰 2) 가중치 합의 모델: “신호 점수화”로 흔들림을 줄인다

우선순위로 ‘상위 룰’을 먼저 적용한 다음, 남은 신호는 가중치 합의(컨센서스)로 결정합니다.

최소 점수 모델(바로 쓰는 형태)

  • 방향 s: 매수 +1 / 매도 -1 / 중립 0
  • 신뢰도 c: 0~1
  • 가중치 w: 신호 중요도(합=1 권장)
  • 최종 점수: Score = Σ(wᵢ × sᵢ × cᵢ)
  • 시간 감쇠(옵션): wᵢ(t) = wᵢ × exp(-λΔt) (뉴스는 빨리 만료)
Final Score = Σ(direction × confidence × weight)
signal_typedirectionconfidenceweightcontributionevidence_refnote
뉴스+1/0/-10~10.15기사ID/키기간/만료/품질
공시·공지+1/0/-10~10.35문서ID
기술적+1/0/-10~10.25데이터키
매크로+1/0/-10~10.25데이터키

위 가중치(0.35, 0.25, 0.25, 0.15)는 “정답”이 아니라 시작점입니다. 운영 로그로 튜닝하세요.

x축: 일자(MM/DD) · 왼쪽 y축: 기여도 합(0~1.4) · 오른쪽 y축: 최종 점수(-1.5~+1.5).

룰 3) Stop rule(거부권): “충돌이 큰 날은 안 하는 게 전략”을 규칙화

Stop rule은 신호 충돌 해결의 마지막 안전장치입니다. 모든 신호가 싸우면 시장보다 내 감정이 먼저 움직이기 때문입니다.

Stop rule 트리거(추천 5종)

  • 충돌 점수 임계: |Score|가 너무 작다(합의가 약함)
  • 신뢰도 낮음: 핵심 신호들의 c가 전반적으로 낮다
  • 급변동/이벤트 리스크: 변동성 급등, 거래중단, 중요 이벤트 직전/직후
  • 근거 부족: evidence(근거) 누락/출처 불명 비중 큼
  • 리스크 룰 발동: 포지션 상한/스텝/손실 트리거 위반
트리거설명기본 액션필수 로그 필드
합의 점수 약함|Final Score|가 너무 작음HOLDscore_breakdown, threshold_id
핵심 신호 confidence 전반 낮음평균 c 낮음HOLD 또는 size 축소avg_confidence, low_conf_sources
근거 부족evidence 누락/출처 불명 비중 큼HOLD + needs_reviewmissing_evidence_list, source_quality
급변동/이벤트 리스크변동성 급등·거래정지·중요 이벤트 직전후HOLDvolatility_flag, market_status
리스크 룰 발동상한/스텝/손실 트리거 위반HOLD 또는 reduceviolated_rule, account_state_snapshot

HOLD도 결정으로 기록(사유 필수).

운영 포인트: Stop rule은 “아무것도 안 함”이 아니라 결정 하나를 한 것입니다. 반드시 “왜 hold였는지”를 로그에 남겨야 다음 주 리뷰에서 개선이 됩니다.

로그를 어떤 단위로 남기고, 나중에 같은 입력으로 다시 돌려보는(리플레이) 구조를 어떻게 잡을지는 전략 운영에서 로그/리플레이(리뷰) 구조 만들기에서 필드 설계·리뷰 템플릿과 함께 다룹니다.

멀티에이전트/LLM 시스템에 붙이는 방법: JSON 출력 → 검증 → 충돌 해결 엔진

충돌 해결은 “좋은 판단력”이 아니라 입력 형식이 고정되어야 돌아갑니다.

  • 신호 입력 최소 필드: signal_type, direction, confidence, evidence, horizon, timestamp
  • 충돌 해결 엔진 출력: final_action, reason, stop_rule_triggered, score_breakdown

final_action·score_breakdown 같은 필드를 쓰려면 에이전트 출력을 먼저 JSON으로 고정해야 한다. LLM 에이전트 출력 표준화: JSON 스키마 템플릿으로 분석→예측→결정 연결하기에서 분석·예측·결정 단계별 스키마와 필수 필드를 정리했다.

엔진이 낸 final_action을 실제 주문으로 넘길 때는 계정 상태(Account State)와 실행 레이어가 선행되어야 한다. 계정 상태(Account state)·주문 실행(Execution) 레이어 설계에서 최소 스키마와 5개 게이트를 다룬다.

멀티소스 신호 충돌 해결 플로우
멀티소스 신호 충돌 해결 플로우

실제 예시: “결정 흔들림”을 줄이는 Before/After

구분신호별 상황결과
Before기술적: 돌파라 매수하루에 결정을 3번 바꾸고, 결과는 과매매 + 후회.
뉴스: 불안한 루머가 떠서 손절
매크로: 금리 상승 중이라 또 망설임
After(룰 적용)공시/확정 이벤트가 없고, 뉴스는 출처 불명 → 뉴스 신뢰도 강등“안 산 이유”가 로그에 남고, 다음에 같은 상황이 오면 재현 가능.
기술적은 매수(+), 매크로는 중립(0), 합의 점수는 약함 → Stop rule 발동(hold)
주간 결정 변경 횟수 — 룰 도입 전(Before) vs 후(After)

x축은 주(week), y축은 결정 변경 횟수(주간 합)입니다. 결정 변경이란 같은 자산·전략에서 하루/세션 안에 최종 결정이 바뀐 횟수를 주 단위로 더한 값입니다.Before는 룰 도입 전, After는 룰 도입 후 구간입니다. 차트의 세로 점선은 Rule Live가 적용된 시점을 나타냅니다.비교에 쓴 지표 예시는 결정 변경 횟수, 거래 빈도, 규칙 위반률이며, 데이터는 내부 로그를 사용했습니다.

FAQ

자주 묻는 질문

뉴스가 뜨면 기술적 신호는 무시해야 하나요?
아니요. 우선순위(확정성/품질)로 먼저 정리하세요. 공시급 확정 정보면 상향, 루머면 강등이 맞습니다.
우선순위와 가중치를 동시에 쓰면 복잡하지 않나요?
오히려 반대입니다. 우선순위가 "상위 룰(예외 처리)"을 맡고, 가중치가 "일반 케이스 합의"를 맡으면 운영이 단순해집니다.
Stop rule 기준은 어떻게 정하나요?
처음엔 보수적으로 시작하세요. "합의 점수 약함 + 신뢰도 낮음" 같은 간단한 기준으로도 과매매가 줄어듭니다.
LLM이 신호를 과신(환각/단정)할 때는?
용어(enum)·근거(evidence)·형식(JSON) 3가지를 고정하고, 검증 실패 시 hold로 떨어뜨리세요. LLM 환각 줄이는 프롬프트 제약 체크리스트를 참고하세요.

결론: 신호 충돌 해결의 목표는 “정답”이 아니라 “일관성”이다

신호 충돌 해결은 유형화 → 우선순위 → 가중치 합의 → Stop rule → 로그/리뷰로 끝납니다. 오늘 해야 할 일은 딱 하나입니다. 내 결정을 흔드는 “충돌 패턴 6개”를 표로 만들고, 우선순위/가중치/거부권을 고정하세요.

시각화 자산 및 데이터 목록

아래 목록은 디자인·데이터 분석·콘텐츠 제작 등 후속 작업을 위한 기획 가이드라인입니다.

  • [일러스트: 뉴스·공시·기술·매크로 4종 신호가 충돌하는 순간]
    ↳ 제작 지시: 네 개의 신호 소스(문서/차트/뉴스 티커/지표)를 각각 다른 방향으로 당기는 화살표나 장면으로 표현. “한쪽은 매수, 한쪽은 불안” 같은 감정 단어 없이, 시선이 갈라지는 “충돌”만 직관적으로 전달. 색은 소스별로 구분하되 과하지 않게.
  • [인포그래픽: 충돌 해결 3단계 플로우 — 우선순위 → 가중치 합의 → Stop rule]
    ↳ 제작 지시: 세 단계를 가로 또는 세로 플로우로 배치. 1단계는 “예외 처리(상위 룰)”, 2단계는 “일반 케이스(합의 점수)”, 3단계는 “거부권(hold)”을 한 단어·아이콘으로 요약. 본문의 ConflictResolveThreeStepsFlow와 동일한 논리이되, 텍스트 양을 줄이고 화살표·박스로만 읽히게.
  • [표: 시장상태×이벤트유형별 우선순위 매트릭스]
    ↳ 제작 지시: 행=추세/횡보/급변동, 열=공시·매크로·뉴스·기술적. 셀에는 1~4 우선순위 숫자와 필요 시 한 줄 비고(예: “횡보에선 기술적 오신호 증가”). 본문 표를 그대로 시각 자산으로 사용 가능하며, 반응형에서 가독성만 확보하면 됨.
  • [차트: 신호별 기여도(뉴스/공시/기술/매크로) 스택바 + 최종 점수 시계열]
    ↳ 제작 지시: x축=일자(MM/DD), 왼쪽 y축=기여도 합(0~1.4), 오른쪽 y축=최종 점수(-1.5~+1.5). Stop rule 발동일은 마커 또는 배경색으로 구분. 데이터는 운영 로그 기반 실제 스키마(contribution_news 등)를 사용할 것. 가상 수치만 쓸 경우 “교육용 가상 데이터” 캡션 필수.
  • [차트: 주간 결정 변경 횟수 Before vs After(룰 도입 시점 표시)]
    ↳ 제작 지시: x축=주(week), y축=결정 변경 횟수(주간 합). Rule Live 주를 세로 점선으로 표시하고, Before 구간과 After 구간을 색·스타일로 구분. connectNulls=false로 Before/After가 서로 다른 시계열로 보이게. 실제 운영 로그가 있으면 해당 수치 사용, 없으면 Methodology에 “내부 로그·가상 데이터” 명시.
  • [다이어그램: 멀티소스 신호 → JSON 입력 → 충돌 해결 엔진 → final_action/주문]
    ↳ 제작 지시: 본문의 conflict-resolution-engine-flow.png와 동일한 목적. 4개 신호 소스가 하나의 “충돌 해결 엔진” 박스로 들어가고, 검증·가중치·Stop rule을 거쳐 final_action(또는 HOLD)과 로그로 나가는 흐름. 박스명은 signal_type, score_breakdown, stop_rule_triggered 등 필드명을 노출해도 됨.
  • [추상 일러스트: Stop rule — “안 한다”가 전략인 순간]
    ↳ 제작 지시: 손이나 캐릭터가 “진행”이 아닌 “멈춤”을 선택하는 이미지. 은유적 키워드: 방패, 신호등 빨간불, 일시정지 버튼, 문 닫기. “hold” “거부권” 같은 글자 없이 시선만으로 “충돌이 크면 참는 것”이 정답임을 전달.
  • [데이터: 신호 기여도·최종 점수·Stop rule 발동 여부 시계열]
    ↳ 제작 지시: 공신력 있는 백테스트/운영 데이터가 있으면 출처(논문, 데이터셋, 내부 로그 버전)를 반드시 명시. 예: arXiv 2602.00082 기반 연구라면 Table/Figure 번호와 기간을 캡션에 포함. 가상 데이터만 사용 시 “교육용·가상” 표기와 Methodology 링크를 함께 둘 것.
데이터 기준 시점
2026-02-24
계산 방식
LLM·멀티에이전트 설계 개념 정리. 투자 권유 아님.
한계점
실제 구현·가중치·임계값은 환경에 따라 다르며, 과장·보장 표현 없음.