코인 급등을 재는 법
— 우리가 측정 중인 것
이 글은 "이 신호가 통한다"는 결론을 담고 있지 않습니다. 대신 왜 아직 결론을 못 냈는지, 무엇을 측정하고 있는지를 그대로 보여줍니다.
왜 10만여 행이 1,463건으로 줄어드는가
crypto_universe_snapshot 테이블에는 105,796행이 쌓여 있습니다
(2026-08-28 기준, 그중 라벨이 확정(matured)된 행은 71,273건).
하지만 이 105,796행을 그대로 "표본 105,796개"로 쓰면 안 됩니다.
스캔은 시간당 실행됩니다. 어떤 코인에서 급등 조짐 신호가 발화하면, 그 조짐이 몇 시간 동안 이어지는 한 매 시간 같은 신호가 반복 기록됩니다. 이걸 전부 "독립적인 관측 105,796개"로 세면 유사복제(pseudo-replication)가 됩니다 — 사실은 같은 사건 하나를 여러 번 센 것인데, 통계 검정은 "표본이 많다"고 착각해 유의성이 실제보다 부풀려집니다.
이를 막기 위해 같은 코인·같은 신호가 72시간 이내에 다시 감지되면 하나의 에피소드로 묶는 dedup을 적용합니다. 그 결과 남는 진짜 독립 사건 수가 1,463건(2026-08-28 기준, 원자료 105,796행, 72시간 에피소드 dedup 적용, 출처: crypto_universe_snapshot)입니다. "10만 건 모았다"와 "1,463건 측정했다" 사이의 이 격차 자체가, 코인 데이터를 다룰 때 반드시 짚어야 할 함정입니다.
168시간 라벨 사고 — 개수 검사로는 못 잡은 결함
2026-08-05에 발견·수정된 실제 사례입니다. 급등 후 168시간(7일) 뒤 수익률을
매기는 fwd_ret_168h 라벨이 데이터 수집 창의 경계 처리 문제로
전부 비어 있었습니다(NULL). 문제는 여기서 그치지 않았습니다 —
이 결측값을 "아직 판정할 수 없음"이 아니라 "목표 달성 실패(False)"로
잘못 집계하는 로직이 있어, 해당 라벨의 기저율이 0%로
나왔습니다. 실제 값은 19.2%였습니다.
지금 뭘로 판정하는가 — 재구현하지 않는다
비율의 신뢰구간은 services/signal_stats._wilson(Wilson 95% 신뢰구간)을
그대로 재사용합니다. 신호가 변동성이 큰 코인에 쏠려 발화하는 것은 아닌지 걸러내는
층화 판정은 services/stratify.stratified_verdicts를
그대로 재사용합니다(주식 쪽에서 이미 검증된 로직 — 변동성 교란을 통제하지 못하면
"신호가 예측했다"가 아니라 "신호가 원래 변동성 큰 코인에서 주로 발화한다"는 착시가
날 수 있기 때문입니다. 자세한 내용은
변동성 착시 참고). 진단 도구와 공개 판정이
서로 다른 구현을 쓰면 그 불일치 자체가 신뢰 문제가 되므로, 코인 신호도 주식과
같은 함수를 그대로 호출합니다.
현재 판정 — 6종 전부 보류
2026-08-28 기준, 층화 판정 대상 신호 6종은 전부 "보류(표본 부족)" 상태입니다. 채택된 신호는 0건입니다. 데이터 수집은 2026-07-28에 시작해 아직 한 달치뿐이고, 독립 에피소드가 1,463건으로는 층화(변동성 분위별로 쪼개면 칸마다 표본이 더 줄어듭니다)까지 마치고 통계적으로 유의한 결론을 내리기엔 이릅니다. 판정 가능 시점은 2026년 9월 말~10월로 예상합니다.
진행 상황은 코인 기저율 증명 페이지에서 계속 공개합니다. 스캐너 자체는 /crypto/scanner에서 "weight0 측정 단계 — 매수 추천 아님" 고지와 함께 운영 중입니다.