방법론 — 데이터 출처와 검증
데이터 출처와 시각
가격은 야후 파이낸스 일봉(장중 아님), 재무·공시는 한국 DART·미국 EDGAR, 뉴스는 시장별 RSS 여러 곳을 모아요. 아래는 실제 배치 설정(deploy/crontab.txt)에서 읽은 값이에요.
| 시장 | 뉴스 출처 수 | 마감 후 배치 시각(UTC / KST) |
|---|---|---|
| 한국 | 6 | 07:15 / 16:15 |
| 미국 | 8 | 22:30 / 07:30 |
| 크립토 | 4 | 00:15 / 09:15 |
시점 처리 — 미래 정보 차단
재무 판정은 그 날짜에 실제로 공시돼 있던 분기만 써요 — 한국은 DART 접수일(rcept_no), 미국은 EDGAR 제출일(filed) 기준이에요. 같은 분기가 여러 번 제출됐으면 최초 제출본만 쓰고, 나중에 나온 정정치는 그 시점엔 없던 정보라 쓰지 않아요(engine/quality_backtest.py). 가격 신호도 그날까지의 종가만 써요.
신호와 점수
폭풍 경보는 신호 14개(쏠림·변동성·추세 급변·거래량 급증 등)를 그날까지의 데이터만으로 백분위(0~1, 확장 윈도 — expanding percentile)로 바꾼 뒤, 매년 초 그 이전 데이터로만 다시 학습한 모형으로 합쳐 0~100 점수를 내요(engine/crash.py). 종목 점수는 추세·모멘텀 등 요인의 단면 순위를 워크포워드로 매겨요.
검증 방법
워크포워드(미래 데이터를 학습에 안 씀) + 블록 부트스트랩 95% 신뢰구간(보유 기간이 겹쳐 하루하루가 독립이 아니라서) + 표본 30건 미만이면 결론 보류. 폭풍 경보의 '위험' 단계는 표본 20일 이상이고 위험 뒤 하락 배율(lift)이 1.5배 이상일 때만 경보(알림·판정)에 쓰고, 기준을 못 채운 시장은 점수만 보여주고 알림엔 '경계'까지만 써요.
한계 — 숨기지 않아요
- 시장별 예보 기록 길이(실제 일수): 한국 40 · 미국 39 · 크립토 42
- 일봉만 써요 — 장중 변동은 반영하지 않아요.
- 체결·수수료·세금은 반영하지 않아요(백테스트 비용 가정은 시뮬레이션용 추정치예요).
- 생존 편향 처리는 일부만 적용돼요 — '사기 좋은 정도' 표는 오늘의 종목 목록을 과거 구간에도 그대로 써요.
- 기록이 짧은 시장·단계는 결론을 보류해요(위 표 참고).
- 투자 자문이 아니에요 — 참고용 통계예요.
갱신 주기
시장이 닫힌 뒤 하루 1~2회 자동 갱신해요. 이 페이지의 마지막 확인: 2026-09-19.