작성 주체 · 선돌 조기경보 (Seondol EWS)
Alert V5 경보 점수 방법론
Alert V5가 관측 신호를 하방 리스크 경보로 바꾸는 계산 원칙, 상태 규칙과 한계를 설명합니다.
기준일 2026-10-02 · 분석 방법 보기
코드가 정본입니다. 이 문서는 app/scoring.py의 factor_v4.1 합성 점수와 app/services/alert_decision.py의 alert_v5 판정 규칙을 비전문가용으로 풀어쓴 설명입니다.
1. 점수가 재는 것
경보 점수는 현재 관측된 하방 리스크 압력이 얼마나 넓고 강하게 겹치는지 0점부터 100점 사이로 정리합니다. 미래 가격이나 방향을 맞히는 값이 아니며, 같은 시점의 여러 위험 근거를 일관된 규칙으로 비교하기 위한 지표입니다.
가능하면 하방 붕괴 위험 축 점수를 우선 사용하고, 그 축이 없을 때는 factor_v4.1 종합점수를 사용합니다. 점수와 함께 신뢰도, 데이터 상태, 근거가 된 위험 그룹을 확인해야 합니다.
2. 입력 신호 그룹과 합성
factor_v4.1은 코드에 정의된 일곱 그룹을 빠짐없이 받습니다. 기본 합성은 그룹 점수의 가중합을 올림한 값이며, 입력은 모두 0점부터 100점 범위여야 합니다.
| 코드 키 | 화면 이름 | 기본 비중 | 주로 보는 범위 |
|---|---|---|---|
flow_positioning | 수급/포지션 | 28% | 투자자별 수급, 프로그램·파생 포지션과 강제 흐름 징후 |
market_internals | 시장 내부 | 19% | 상승·하락 종목의 폭, 지수 움직임과 시장 내부 체력 |
macro | 매크로 | 17% | 환율, 금리, 원자재 등 거시 스트레스 |
global_geopolitical | 글로벌/지정학 | 14% | 해외 시장, 변동성, 지정학 관련 외부 충격 |
domestic_structural | 국내 구조 | 10% | 국내 시장의 구조적 부담과 취약성 |
stock_anomaly_patterns | 종목 이상패턴 | 5% | 관심 종목군의 비정상적 거래량·거래대금·가격 패턴 |
filing_events | 공시/기업 이벤트 | 7% | 공시와 기업 이벤트에서 확인되는 개별 위험 |
특정 위험 조합이 심각하면 관련 비중을 높인 뒤 다시 정규화합니다. 세 개 이상 그룹이 70점 이상이면서 두 개 이상이 85점 이상이면 5점을 더합니다. 앞 조건에 해당하지 않으면서 네 개 이상이 70점 이상이면 3점을 동시 상승 보정으로 더합니다. 거시·글로벌·시장 내부·수급 조합이 코드의 심각 기준을 충족하면 낮은 다른 그룹에 의해 위험이 희석되지 않도록 하한을 적용합니다. 최종값은 기본 점수, 동적 점수와 보정, 위험 하한 가운데 가장 큰 값이며 100점을 넘지 않습니다.
3. 경보 상태가 바뀌는 규칙
alert_v5는 점수 하나만 보지 않고 신뢰도, 심각 그룹 수, 위협 근거, 직전 점수와 시장 체제 변화를 정해진 순서로 확인합니다. 대표 경계는 다음과 같습니다.
- 데이터 부족: 데이터 상태가
failed이거나, 점수가 70점 이상인데 품질 조정 신뢰도가 55% 미만이면 경보를 확정하지 않습니다. - 심각: 점수 90점 이상, 신뢰도 65% 이상이며 85점 이상 위험 그룹 또는 심각 위협 근거가 두 개 이상이면 심각 상태 조건입니다.
- 경보: 점수 85점 이상과 신뢰도 60% 이상, 또는 한 시간 안에 25점 이상 증가하면서 점수 70점·신뢰도 55% 이상인 경우처럼 코드로 확인된 규칙을 적용합니다. 장초반 수급, 포지션 정리 압력, 업종 전염, 종목 이상패턴처럼 복수 근거를 요구하는 V5 확인 규칙도 별도로 있습니다.
- 관찰: 위 경보 규칙에 해당하지 않더라도 점수가 70점 이상이거나 위험 그룹 하나가 85점 이상이면 관찰 상태입니다.
- 정상: 앞선 조건에 해당하지 않을 때의 상태입니다.
입력 축 관측 부족 시 판정 보류. 일곱 개 입력 축 가운데 실제로 관측된 축이 네 개 미만이면 합성 점수는 그대로 계산하되 경보 등급을 올리지 않고 판정을 보류합니다. 커넥터가 끊겨 자리만 채운 값을 확정된 판정으로 읽지 않기 위해서입니다. 다만 예외가 있습니다. 관측된 축만 남겨 그 축들의 비중을 합이 1이 되도록 다시 정규화해 계산한 점수가 70점 이상이고 같은 방식으로 계산한 신뢰도가 60% 이상이면, 관측된 것만으로도 이미 경보 기준을 넘은 상태이므로 보류하지 않고 경보 판정을 그대로 유지합니다. 이때는 보류 사유 대신 보류를 적용하지 않은 사유를 함께 표시합니다.
실제 판정은 코드의 분기 순서가 우선합니다. 따라서 같은 점수라도 신뢰도, 데이터 상태, 동시 근거와 직전 상태에 따라 결과가 달라질 수 있습니다.
4. 데이터 품질과 한계
원천 자료 누락이나 수집 실패가 있으면 신뢰도를 제한합니다. 활성·지연 자료가 모두 없으면 최대 45%, 누락·실패 비율이 30% 이상이면 최대 52%, 일부 누락이 있으면 최대 64%로 낮춥니다. 화면의 degraded 상태는 이런 품질 저하 원인을 함께 확인하라는 뜻입니다.
규칙 기반 경보에도 오경보와 누락이 존재합니다. 시장 구조는 바뀔 수 있고, 장중 자료는 지연되거나 정정될 수 있으며, 현재 검증 표본은 계속 누적 중입니다. 점수만으로 결론을 내리지 말고 데이터 상태와 원자료를 함께 확인해야 합니다.
5. 검증 방식
경보 시점 이후의 결과를 시점 보존 방식으로 채점하고, 적중 사례뿐 아니라 오경보도 같은 기준으로 남깁니다. 표본수, 기저율, 오경보율과 독립 에피소드 수를 함께 공개하며 표본이 적을 때는 방향성 이상의 결론을 내리지 않습니다.
Alert V5 검증 페이지(/backtests/alert-v5)는 표본 누적 현황과 사후 결과를 공개할 예정입니다. (준비 중)