Skip to content

Latest commit

 

History

History
126 lines (83 loc) · 5.5 KB

File metadata and controls

126 lines (83 loc) · 5.5 KB
title 검증 방법론
description dartlab 엔진별 검증 방법, 표본 구성, 정확도 정의, 한계

검증 방법론

dartlab의 분석 엔진이 주장하는 수치의 근거. 각 엔진이 무엇을, 어떻게, 얼마나 검증했는지 투명하게 공개한다.

Credit — 독립 신용분석

방법

외부 신용평가사(한국기업평가, NICE신용평가, 한국신용평가) 등급과 dartlab dCR 등급을 비교. "적중"은 동일 등급 또는 ±1 노치 이내.

표본

표본 적중률 비고
30개사 (대기업) 87% (26/30) 정확일치 10개+
50개사 (중대형) 82% (41/50)
79개사 (전체) 70% (55/79) v5.0 과대평가 수정 후 재측정 예정

괴리 원인 분석

적중하지 않은 케이스의 원인을 분류했다:

  • 정량 한계 (3개): 삼성SDI, 고려아연, 현대제철 — FCF 음수/CAPEX 집약 기업. 외부 등급은 "미래 성장성"을 정성적으로 반영하지만, dartlab은 정량 데이터만 사용한다.
  • 금융 한계 (1개): KB금융 — AAA는 "시스템적 중요 은행" 정성 반영. 정량만으로 AAA 도달 불가.
  • 주가 일시 (1개): SKT — CHS 주가 급락 보정으로 하향됐다가 보호 규칙으로 복원.

한계

  • 외부 등급 자체가 정성 판단을 포함하므로, 정량 모델이 100% 일치할 수 없다.
  • 금융업(은행/증권/보험)은 재무제표 구조가 달라 별도 트랙으로 처리하지만, 정성 요소(시스템적 중요성 등)는 반영하지 않는다.
  • 표본 79개사는 한국 상장사 중 신평 등급이 존재하는 기업으로 구성. 비등급 기업에 대한 검증은 불가.

Forecast — 매출 방향 예측

방법

Walk-forward 검증. 과거 데이터로 다음 분기 매출 방향(상승/하락)을 예측하고, 실제 결과와 비교. 한 번 학습한 모델을 전체 기간에 적용하는 것이 아니라, 각 시점에서 과거 데이터만으로 예측하므로 과적합이 불가능한 구조.

수치

조건 정확도 관측치 커버리지
모멘텀 단독 72.1% 4,825건 100%
2연속 모멘텀 74.7% 360건 69%
모멘텀+영업이익률 일치 76.1% 3,660건 76%
모멘텀+OLS 일치 77.7% 355건 68%

방법론 핵심

  • 사전확률: 40개 업종별 모멘텀 지속률 (4,800건+ 실측에서 도출)
  • 베이즈 갱신: 2연속 모멘텀, 영업이익률 수준, OLS 외생변수 일치/불일치로 순차 갱신
  • 감쇠: 신호 간 독립성 위반 보정 (damping=0.3)
  • 재보정: 원시 확률을 실측 기반 재보정 (shrinkage=0.6)

시도했지만 효과 없던 것

시도 결과 판단
Logistic Regression +0.8%p 모델 구조 변경 무의미
한국 PPI 13개 추가 하락 가격 < 생산량
11신호 다수결 앙상블 61% static 신호 = 상수 바이어스
GDP 기업 매출의 직접 외생변수 아님 영구 제외

정확도를 올리려면 새 데이터가 필요

현재 방법론 내에서의 개선은 천장에 도달했다. 추가 개선은 새 데이터 소스(검색량, 관세청 수출입, 컨센서스 리비전)에 의존한다.

학술 근거

  • 나이브 베이즈 + 감쇠: van Calster et al. (2021) — 소표본 과적합 방지
  • M4/M5 Competition: 단순 방법 > 복잡한 ML (100,000 시계열)
  • Sloan 1996: 이익 지속성 → 모멘텀의 이론적 기반

Search — 공시 원문 검색 (beta)

⚠ 인덱스 신선도 한계 — 매일 증분 자동화 미완성. 단일 종목 공시는 Company.disclosure / liveFilings 권장.

방법

20개 테스트 쿼리(공식 용어 + 비공식 표현 혼합)에 대해 상위 5건의 관련성을 수작업 평가.

수치

방법 precision@5 cold start 속도
dartlab (Ngram+BM25F) 95% 0ms 1ms
Trigram 단독 88% 0ms 1ms
임베딩 (ko-sroberta) 83% 12,700ms 58ms
BM25 (FTS) 71% 0ms 14ms

대규모 (400만 문서) 검증: 인덱스 빌드 218초, 검색 140ms.

왜 임베딩 없이 되는가

DART 공시는 법적 정형 문서다. 공시 유형이 257개로 고정되고, 용어가 법률로 규정되어 같은 의미를 다른 단어로 표현하지 않는다. 따라서 단어 자체가 의미를 완전히 표현하고, ngram 정확 매칭이 의미 유사도 기반 검색보다 정밀하다.

AI — 적극적 분석가

방법

60개 이상의 실제 분석 질문을 AI에게 던지고, 첫 시도에 올바른 도구 선택 + 유의미한 해석을 생성하는지 확인.

수치

  • 도구 선택 정확도: 95%+ (첫 시도 성공)
  • 검증 질문 유형: 개별 기업 분석, 매크로 환경, 시장 비교/순위, 데이터 직접 조회, 실시간 이슈

한계

  • 평가 셋이 개발자 본인이 구성하고 평가. 독립 제3자 평가가 아님.
  • "유의미한 해석"의 기준이 주관적. 정량적 해석 품질 지표는 아직 없음.
  • provider별(gemini/groq/cerebras 등) 성능 차이는 별도 체계적 비교 미실시.

공통 원칙

  • 코드가 곧 방법론: 모든 검증 로직은 코드로 재현 가능하다.
  • 실패도 기록: 시도했지만 효과 없던 접근을 명시적으로 기록한다.
  • 한계를 숨기지 않는다: 정량 모델의 구조적 한계, 표본 제약, 주관적 평가 기준을 공개한다.