같은 상승 직전에 매수 신호가 세 번 나왔다. 세 신호 뒤에 모두 가격이 올랐다면 성공 세 번으로 기록해도 될까?

매분 가격을 예측하는 성능과 서로 다른 상승 기회를 찾아낸 성능은 다른 질문이다. 신호가 찍힌 횟수와 포착한 가격 사건의 수를 나누어야 반복 알림이 성적표를 부풀리는지 확인할 수 있다.

한 사건 앞의 반복 신호를 여러 성공으로 셀 수는 있어도, 그 숫자를 여러 독립 사건을 포착한 증거로 바꾸지는 않는다.

1. 봉, 경고, 가격 사건을 먼저 구분한다

봉은 가격을 관찰하는 시간 단위다. 경고는 정한 조건이 충족됐다는 출력이며, 가격 사건은 평가하려는 움직임이다. 한 번의 상승이 여러 봉에 걸쳐 이어지면 그 앞에 나온 여러 경고가 같은 움직임을 공유할 수 있다.

사건을 추출할 때는 가격 변화의 크기·측정 기간·다음 사건을 시작할 조건을 고정한다. 매분의 ‘이후 5분 수익률’을 각각 정답으로 삼는 평가도 가능하다. 다만 이는 서로 다른 상승 기회를 몇 번 포착했는지와 같은 성적표가 아니다.

Tatbul 등의 시계열 평가 연구는 한 시점의 판정과 구간의 포착을 구분하고, 포착한 범위·위치·여러 예측으로 쪼개진 정도를 평가 목적에 맞게 다룬다. 모든 투자 신호에 하나의 집계법이 정답이라는 뜻은 아니다.

2. 경고 여섯 개가 가격 사건 두 개를 포착한다

한 종목의 09:00~10:00을 평가하는 가상 기록을 보자. 사건 시각은 사전에 고정한 규칙으로 얻었다고 가정하고 아래 세 시각을 정답 목록으로 둔다. 실제 가격에서 사건을 추출하거나 전략 성과를 측정한 사례는 아니다.

경고 시각은 09:16·09:17·09:18·09:31·09:42·09:44다. 경고가 나온 뒤 5분 이내, 경고 시각보다 늦게 사건이 발생하면 연결한다. 예를 들어 09:15 경고는 09:20 사건과 연결되지만 09:20 경고는 그 사건의 사전 경고가 아니다.

가격 사건

연결 가능한 경고 시각

가상 경고 목록

09:20

09:15 이상, 09:20 미만

09:16·09:17·09:18

09:35

09:30 이상, 09:35 미만

09:31

09:50

09:45 이상, 09:50 미만

없음

사건과 연결되지 않은 경고

위 세 구간 밖

09:42·09:44

경고 6개가 서로 다른 사건 6개는 아닙니다 — 5분 연결 기준에서는 최초 포착 2개·반복 2개·사건 없는 경고 2개입니다.

경고별로 ‘뒤에 사건이 있었는가’만 세면 4개가 맞아 4 ÷ 6 ≈ 66.7%다. 그러나 서로 다른 사건은 2개만 포착했고, 09:50 사건은 놓쳤다. 첫 사건의 경고가 세 줄이라는 사실이 가격 사건을 세 개로 늘려 주지는 않는다.

3. 최초 포착, 반복 경고, 거짓 경고를 나눈다

사건마다 가장 이른 경고 하나에 최초 포착을 인정하자. 같은 사건에 연결된 나머지는 반복 경고로 남긴다. 한 경고가 여러 사건과 연결될 수 있는 경우에는 가장 이른 사건에만 배정한다는 규칙도 미리 정한다. 이 예시의 사건별 구간은 서로 겹치지 않는다.

여섯 경고는 최초 포착 2개 + 반복 2개 + 사건 없는 경고 2개로 나뉜다. 사건 포착률은 2 ÷ 3 ≈ 66.7%다. 최초 포착 경고가 전체 경고에서 차지하는 비율은 2 ÷ 6 ≈ 33.3%이며, 이 값은 경고별 정밀도 66.7%와 목적이 다르다. 반복 경고를 가격 방향이 틀린 거짓 경고와 섞지 않는다.

간격이 정확히 1분인 연속 경고를 한 구간으로 묶고 그 첫 시각을 대표로 쓸 수도 있다. 그러면 09:16~09:18, 09:31, 09:42, 09:44의 네 구간 중 두 구간이 맞아 구간별 정밀도는 50%다. 사건 포착률은 그대로 2/3이다. 이때 원래 경고 여섯 줄도 함께 보관한다. 평가를 묶었다고 실제 알림이나 주문이 줄어든 것은 아니다.

Numenta Anomaly Benchmark 연구는 정한 사건 구간 안에서 최초 탐지에 점수를 주고 추가 탐지는 중복 보상하지 않는 방식을 사용한다. 위 계산은 그 점수 공식을 재현한 결과가 아니라, 평가 목적에 따라 중복의 처리가 달라짐을 보여 주는 별도 예시다.

4. 연결 시간을 늘리면 같은 기록의 점수도 바뀐다

5분 대신 10분을 허용하면 09:42·09:44 경고도 09:50 사건과 연결된다. 경고나 가격 기록을 바꾸지 않아도 결과는 다음처럼 달라진다.

평가 항목

5분 이내

10분 이내

뒤에 사건이 있는 경고 / 전체 경고

4/6, 약 66.7%

6/6, 100%

포착한 사건 / 전체 사건

2/3, 약 66.7%

3/3, 100%

최초 포착 / 반복 / 사건 없는 경고

2 / 2 / 2

3 / 3 / 0

10분이 무조건 잘못된 기준은 아니다. 필요한 대응 시간이 10분인 전략에는 맞을 수 있다. 하지만 NAB 연구의 구간 폭 논의처럼 연결 구간을 지나치게 넓히면 무작위 경고도 사건과 연결될 기회가 커진다. 평가 결과를 보고 유리한 시간을 고르면 새 기준을 선택한 셈이다.

사건을 따로 세었다고 통계적 독립성이 생기는 것도 아니다. 세 사건이 같은 시장 환경과 정보에 영향을 받을 수 있다. NIST의 자기상관 설명처럼 시간에 따른 의존성을 별도로 살펴야 하며, 사건 수만으로 독립 표본을 가정한 신뢰구간을 붙이지 않는다.

5. 비율 옆에 대응표와 실제 행동을 남긴다

먼저 경고 기록과 사건 기록을 따로 만든다. 경고에는 발생·확정·사용 가능 시각을, 사건에는 정의·발생 시각·허용 구간을 적는다. 모든 경고에 최초 포착·반복·사건 없음 표시를 붙이고, 경고가 없는 사건도 남기면 분모를 다시 셀 수 있다.

평가 종료 직전의 경고는 정한 미래 구간을 아직 다 보지 못했을 수 있다. 5분 기준이면 이후 5분, 10분 기준이면 이후 10분의 관측이 필요하다. 이런 경고를 실패로 채우지 말고 미완료로 표시한다.

데이터 공백도 무신호와 구분한다. 비교할 두 모델에는 같은 사건 목록·구간·중복 규칙·평가 범위를 적용한다.

그다음에는 경고에 대응한 주문·체결·비중·비용 후 손익을 연결한다. 반복 신호마다 실제로 비중을 늘리는 전략이라면 각 행동의 결과도 계산해야 한다. 반대로 이미 보유 중이라 아무 행동도 하지 않았다면 새 거래 기회처럼 세지 않는다.

‘적중률이 얼마인가’ 다음에는 ‘그 분모가 경고인가, 경고 구간인가, 서로 다른 가격 사건인가’를 묻는다. 대응표를 다시 만들 수 있어야 숫자가 무엇을 설명하는지 판단할 수 있다.