Skip to content
This repository was archived by the owner on Sep 24, 2026. It is now read-only.
This repository was archived by the owner on Sep 24, 2026. It is now read-only.

[검증] 백테스트가 새 데이터를 보지 못한다 — v3 는 고른 데이터로만 평가돼 있다 #95

Description

@RosieOh

📄 설명

const LIST_SDATE = '20240101';
const LIST_EDATE = '20260714';   // ← 하드코딩

두 달 뒤에 다시 돌려도 같은 68주를 다시 읽는다. 다시 돌린다고 새로 아는 것이 없다.

⚠️ 왜 이게 심각한가

배포된 점수표 v3 는 바로 그 68주에서 후보 10개를 비교해 고른 것이다. 고밀도 주가 26건뿐인 표본에서 10개 중 최고를 뽑았으니 과적합 위험이 실질적이고, 확인할 유일한 방법은 선택에 쓰이지 않은 새 주간이다.

종료일이 고정돼 있으면 그 데이터가 영영 들어오지 않는다. 즉 지금까지의 모든 성적은 "고른 데이터에서의 성적" 이고, 한 번도 검증된 적이 없다.

함께 발견한 보고 문제 둘

① 헤드라인이 배포본이 아니다. 과제 A·B 의 "룰" 숫자는 DEFAULT_RULE_SCORES(= v1 폴백)로 낸 것이다. 코드 주석도 "운영 점수표가 아니다" 라고 적혀 있는데, 보고서에는 그 구분이 없다. 헤드라인만 읽으면 AUC 0.742 를 현행 성적으로 오해한다(v3 는 같은 실행에서 0.871).

② 홀드아웃 경고가 하드코딩. '표본 20개(고밀도 3개)' 로 박혀 있어 실제로 40개(고밀도 11개)가 된 뒤에도 "순위를 논할 수준이 아니다" 라고 말한다. 주의 문구가 실제보다 세면 맞는 결과까지 버리게 된다.

✅ 작업할 내용

  • 기간을 실행일 기준으로 (BACKTEST_FROM/BACKTEST_TO 로 덮기 가능)
  • 헤드라인이 어느 점수표인지 명시
  • 홀드아웃 경고를 실제 표본 수로
  • 표본 외 결과를 docs/backtest.md 에 기록

🙋🏻 참고 자료

과제 E-5(시간 분할 홀드아웃)는 이미 구현돼 있었다. 데이터가 안 늘어서 쓸모가 없었을 뿐이다.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    P1통합/보완 우선순위bugSomething isn't working

    Type

    No type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions