[핵심 요약] 자체 개발한 스크리닝 알고리즘의 2주 출력 데이터를 분석했다. 특정 이상치(Outlier) 하나가 전체 평균 통계를 왜곡하고 있었고, 이를 제외하면 기술적 지표 단독 시그널의 구조적 한계가 명확하게 드러난다. 수급 교차검증 필터와 시장 지수 조건 추가가 다음 리팩터링 방향이다.
NAS에서 매일 아침 RSI, 거래량, 볼린저밴드, 수급 데이터를 종합 분석해 기준을 충족하는 항목을 자동으로 필터링하는 알고리즘을 만들고 있습니다. 시스템이 실제로 쓸만한지 검증하는 중이고, 오늘은 2주치 출력 데이터를 직접 들여다봤습니다.
⚠️ 이 글은 알고리즘 개발 기록입니다. 특정 종목의 매수·매도를 권유하는 글이 아니며, 투자 판단의 책임은 전적으로 본인에게 있습니다.
2주 출력 데이터 요약
| 항목 | 값 |
|---|---|
| 분석 기간 | 2026-05-17 ~ 2026-05-31 |
| 총 시그널 건수 | 13건 |
| 적중률 (단순 방향성 기준) | 30% (4/13건) |
| 평균 가격 변동률 | +3.47% |
숫자만 보면 나쁘지 않다. 그런데 이 숫자에는 함정이 있다.
이상치(Outlier) 하나가 전체 통계를 가리고 있다
A종목이 +78.5% 변동을 기록했다. 이 한 건을 빼면 나머지 12건 평균은 -2.8%, 적중률은 25%로 떨어진다.
| 구분 | 건수 | 적중률 | 평균 변동률 |
|---|---|---|---|
| 전체 | 13건 | 30% | +3.47% |
| 이상치(A종목) 제외 | 12건 | 25% | -2.80% |

처음 든 생각은 “운이 좋았다”가 아니었다. 오히려 “이게 어떻게 감지됐길래 이만큼 변동이 났지?”였다.
다른 모멘텀 케이스들과 비교해봤다.
오작동 케이스 — 기술 지표 단독 시그널:
| 샘플 | 감지 조건 | 변동 결과 |
|---|---|---|
| 모멘텀 샘플 1 | 골든크로스 + 거래량 급증 | -2.6% |
| 모멘텀 샘플 2 | 거래량 2.6배 + 볼린저밴드 돌파 | -6.2% |
| 모멘텀 샘플 3 | RSI 75 + 거래량 7.4배 | -10.0% |
| 모멘텀 샘플 4 | RSI 63 + 거래량 4.1배 | -11.4% |
A종목(이상치):
- 거래량 5배 급증 + 외인·기관 양매수 동시 유입
차이가 보인다. 오작동 케이스들은 전부 기술적 신호만 있었다. A종목은 거기에 외인과 기관의 수급이 동시에 확인됐다. 거래량 급증이 실제 매수세인지 익절 물량인지를 수급 데이터가 증명해준 셈이다.
기술적 신호에 수급 교차검증이 붙었을 때 결과가 달랐다. 이게 핵심 단서다.
B종목 케이스 — 같은 항목, 다른 결과
이번 데이터에서 가장 흥미로운 케이스다. B종목이 2일 연속 감지됐는데 결과가 정반대였다.
| 감지일 | 감지 조건 | 거래량 | 변동 결과 |
|---|---|---|---|
| 05-20 | 외인 연속 순매수 | 보통 | ✅ +2.2% |
| 05-21 | RSI 14 (극단적 과매도) | 0.0배 | ❌ -6.7% |
05-21 케이스를 보면 RSI가 14다. 극단적으로 과매도 상태인데, 거래량이 0.0배다. 아무도 사지 않는 상태에서 RSI만 낮다는 건 반등 가능성이 아니라 그냥 계속 하락 중이라는 신호다.
알고리즘이 RSI 과매도를 “지금 낮으니까 곧 반등”으로 해석하는데, 거래량이 없으면 그건 그냥 낙하 중인 데이터다. 05-20에는 외인 매수라는 수급 확인이 있었고, 05-21에는 아무것도 없었다.
A종목과 B종목 케이스가 같은 말을 하고 있다.
기술적 신호만으로는 부족하다. 수급 또는 거래량으로 교차검증이 돼야 의미 있는 시그널이다.
시그널 유형별 출력 결과

| 시그널 유형 | 건수 | 적중률 | 평균 변동률 |
|---|---|---|---|
| RSI 과매도 (RSI ≤ 30) | 6건 | 33% | +0.3% |
| 모멘텀 (거래량/볼린저밴드) | 5건 | 20% | +9.7% |
| 모멘텀 (이상치 제외) | 4건 | 0% | -7.6% |
| 수급 (외인/기관) | 2건 | 50% | -2.6% |
모멘텀 시그널이 가장 위험하다. 이상치를 빼면 전패에 평균 -7.6%다. RSI 과매도는 큰 손실이 없다는 게 그나마 장점이지만, 거래량 없이 RSI만 낮은 항목을 잡는 구조는 수정이 필요하다.
알고리즘 설계의 구조적 문제
두 가지 구조적 문제를 확인했다.
문제 1: 수급 교차검증 없는 기술적 시그널
거래량 급증이 매수세인지 매도세인지 구분하지 않는다. RSI 과매도가 반등 기대인지 추락 중인지 구분하지 않는다. A종목 케이스가 보여준 것처럼, 기술적 신호에 수급 교차검증이 붙었을 때 결과가 달라진다.
문제 2: 시장 전체 흐름 미반영
5월 19~21일은 시장 전반이 약세였다. 개별 시그널만 보고 출력을 내보내는 구조에서는 이런 구간을 걸러낼 방법이 없다.
다음 리팩터링 항목
- 모멘텀 시그널에 수급 조건 추가 — 거래량 급증 시 외인 또는 기관 순매수 교차확인 필수
- RSI 과매도에 거래량 하한선 추가 — 거래량 0.5배 미만이면 RSI 과매도 시그널 무시
- RSI 상한선 추가 — RSI 60 이상이면 모멘텀 시그널 차단
- 시장 지수 필터 — 코스피/코스닥 -0.5% 이하 하락일 때 출력 보류
A종목이 보여준 “수급 교차검증이 확인된 모멘텀”을 알고리즘이 일관되게 잡을 수 있게 만드는 게 목표다. 다음 2주 후에 같은 방식으로 다시 검증할 예정이다.
본 글은 알고리즘 개발 기록이며 투자 추천이 아닙니다. 투자 판단의 책임은 본인에게 있습니다.