콘텐츠로 이동

S357 — 정석 + v3 코드 자동화 가능성 전수 분류

일자: 2026-06-28 (Sun) 목적: discover 종목선정 기법을 "코드 자동화 가능성"으로 분류 → 자동화(코드) 비중 최대화 → LLM 처리 축소의 설계도. 범위: v3 고유 39 엔진 전부 + 정석 153개 중 단기 종목선정 관련만 (채권평가·옵션그릭스·대체투자·법규·윤리 제외). 입력: S356_quant_lens_v3_dedup.md (39 엔진), S356_finance_cert_methods.md (정석 153), work_log §9 (PM 방향).


0. 분류 기준 (rubric)

각 기법을 3축으로 판정한다.

질문
C 계산식 닫힌 수식/알고리즘이 명확한가? 닫힘 / 추정필요(MLE·최적화) / 정성
D 데이터 입력 데이터가 우리에게 있나? 있음 / 수집필요(코드) / 없음
O 출력 출력이 그대로 숫자로 쓰이나, 해석이 필요한가? 스칼라직접 / 스칼라+맥락 / 서술해석

→ 위 3축을 종합해 자동화 등급 3분류:

  • A 코드가능 = 계산식 닫힘/추정 + 데이터 있음/수집가능 + 출력이 스칼라로 직접 소비. 에이전트 안 거침. 코드가 P(win)/RR/레짐확률 같은 숫자를 산출하고 그대로 score_compose·pre-gate에 투입.
  • B 부분 = 코드가 숫자를 산출하되 그 숫자의 의미 부여·상충 조정·맥락 결합은 LLM이 함. 코드=계산기, LLM=해석기.
  • C LLM필수 = 계산식이 정성적이거나(맥락·서사) 입력이 비정형(뉴스·공시 텍스트). 코드는 보조데이터만 제공.

데이터 인벤토리 (2026-06-28 실측): - 일봉 419종 × 5년 (data/backtest/s303/ohlcv/) ✅ - 30분봉 420종 (data/minute_charts/30min/) ✅ - 수급 flow_series 393종 (투자자별 순매수) ✅ - 체결강도 일별 ka10047 — 60일+ 과거 제공, 수집 스크립트 필요 (work_log S356 §3) - macro_series / derivatives(베이시스·선물 OI) ✅ - 틱·호가 = 백테스트 구조적 불가 (직전 1일만) → 해당 기법 이미 v3에서 제외됨


1. v3 고유 39 엔진 분류

L1 레짐 (6)

# 엔진 C 계산식 D 데이터 O 출력 등급 근거
1 마르코프 레짐스위칭/HMM 추정(Hamilton필터·MLE) 일봉✅ + 거래량✅ + 체결강도(수집) ξ(강세확률) 스칼라 A 출력 ξ_{t|t}(강세)가 손익비 가중에 직접. 체결강도 다변량판만 데이터 수집 선행
6 통계적 점프모델 추정(동적계획·coord descent) 일봉✅ 강세/약세 상태 0/1 A exposure 스위치로 직결. 닫힌 목적함수
4 BOCPD 변화점탐지 닫힘(재귀) 일봉✅ + 공매도/대차(수집) run-length 사후확률 A 변화점확률 스칼라 → 손절 트리거. 대차잔고판은 수집 선행
5 GARCH족(GJR/EGARCH) 추정(MLE) 일봉✅ σ_{t+1} 스칼라 A 손절폭 분모. 표준 arch 라이브러리
3 칼만필터/상태공간 닫힘(칼만재귀) 일봉✅ + 수급✅ level/slope ±√P A 동적베타·매집강도 모두 스칼라
32 Hurst/DFA/ARFIMA 닫힘(회귀기울기) 일봉✅ α (추세vs회귀 성격) A 전략선택 스칼라. 종목 성격 라벨

L1 소계: A 6 / B 0 / C 0. 전부 코드가능. 레짐층은 100% 자동화 후보.

L2 도달확률 (4)

# 엔진 C D O 등급 근거
8 도달확률 first-passage 닫힘(GBM 배리어식) 일봉✅ P(상단먼저) 스칼라 A 손익비+도달확률 한 식. 핵심 엔진
10 EVT POT-GPD 추정(GPD 적합) 일봉✅ 꼬리 VaR 손절폭 A 손절폭 분모 스칼라
14 코퓰러 의존성 추정(copula 적합) 일봉✅ + 지수✅ 조건부도달확률 A 종목-지수 동조확률 스칼라
63 VECM 가격발견 추정(Johansen) 일봉✅ + 지수/섹터✅ 일시성분(잔차) A 평균회귀 신호 스칼라

L2 소계: A 4. 전부 코드가능.

L3 손익비 (3)

# 엔진 C D O 등급 근거
7 분위수회귀/CAViaR 추정(체크손실 최소화) 일봉✅ + 수급✅ + 재료더미(B) Q_05/50/95 손익비 A RR·손절·목표 직접 산출. 재료더미 입력만 LLM 의존이나 가격분위수 자체는 A
33 거래비용 추정(4종) 닫힘 일봉✅(거래대금) ILLIQ/스프레드 스칼라 A 슬리피지 비용항 스칼라
67 컨포멀 예측구간 닫힘(분위수 래핑) 일봉✅ 90% 구간 하/상단 A 손절/목표 후보 스칼라

L3 소계: A 3.

L4 수급·점과정 (7)

# 엔진 C D O 등급 근거
34 Kyle's λ/OFI 닫힘(선형회귀) 수급✅ + 일봉✅ λ 충격강도 스칼라 A 수급이 가격 미는 강도 스칼라
25 전이엔트로피 닫힘(이산화+추정) 수급✅ TE 비트 + 선행주체 A 선행주체 가중치 스칼라
45 VPIN 일별판 닫힘(BVC) 30분봉✅ VPIN 독성 스칼라 A 정보비대칭 스칼라
15 Hawkes 자기여기 추정(MLE 분기율) 30분봉✅ + 공매도(수집) 분기율 n 스칼라 A 돌파지속 확률 스칼라
28 BNS 점프검정 닫힘(bipower) 30분봉✅ 점프 유의 z A 재료성 점프 판별 스칼라
29 실현 반변동성/왜도 닫힘 30분봉✅ RS+/RS- 비대칭 A 하방위험 스칼라
42 베이시스 OU 트리거 추정(AR1+최적정지) derivatives✅(베이시스) OU z + 반감기 A 회귀일수 스칼라

L4 소계: A 7. 수급·점과정 전부 코드가능 (체결강도·공매도만 수집 선행).

L5 결합 (7)

# 엔진 C D O 등급 근거
26 직교화(Gram-Schmidt/Lowdin) 닫힘(선형대수) 신호행렬(내부산출) 무상관 신호 A 결합 전처리. 순수 계산
49 베이지안 결합(WOE/순차/수축) 닫힘(로그오즈) 신호 bin(내부) 사후 P(상승) A 통합 확률 스칼라
51 확률 캘리브레이션 추정(Platt/Isotonic) 신호+라벨 calibrated P A 베팅사이즈용 진짜확률
53 로지스틱 스태킹 추정(2단계 MLE) oof 확률(내부) 메타가중 P A 약신호 최적가중. 단 ML이라 검증부담 — PM "룰 vs ML" 미결정(§3)
54 최대엔트로피 결합 추정(KL 최소화) 신호+모멘트 중복차단 합성 A 정보 이중계상 방지
56 DML 인과분리 추정(cross-fitting ML) 재료더미(B) + 일봉✅ θ 재료 순효과 B 재료더미 입력이 LLM 산물. 인과효과 숫자는 코드, "어떤 레짐서 큰가"(CATE) 해석은 LLM
27 Grinold IC·breadth 닫힘(corr·IR) 신호+수익(내부) IC 채점·최종랭킹 A 최종 의사결정층 스칼라

L5 소계: A 6 / B 1. 결합층은 거의 코드. DML만 재료더미 의존으로 B.

L6 통계차익·분해 (6)

# 엔진 C D O 등급 근거
17 통계차익 s-score 추정(PCA+OU) 일봉✅ s-score ±3 스칼라 A 되돌림확률 Φ(-s) 직접
18 공적분 바스켓 추정(Johansen+OU) 일봉✅ z + 반감기 + RR A 페어 이탈 스칼라
59 L1 추세필터 추정(볼록최적화) 일봉✅ knot 기울기 A 추세전환점 스칼라
65 MODWT 웨이블릿 닫힘(필터) 일봉/30분봉✅ 평활 추세선 A 노이즈제거 지지저항
66 SSA 닫힘(SVD) 일봉✅ 추세·주기 성분 A 변곡 타이밍 스칼라
64 오버나잇/인트라데이 분해 닫힘(로그수익 분해) 일봉✅(OHLC) r_on-r_id 스프레드 A 시가/종가 타이밍 스칼라

L6 소계: A 6.

L7 검증·실행 (6)

# 엔진 C D O 등급 근거
58 Triple-Barrier/Trend-Scanning 닫힘(라벨링) 일봉✅ 라벨 ±1/0 A D1 검증인프라 핵심(2순위). 채점 토대
48 Cox 생존분석 추정(부분우도) 일봉✅ + 공변량(내부) P(돌파≤d일) A 보유기간 매칭 스칼라
60 Deflated Sharpe+과적합 닫힘 백테스트 성과(내부) DSR 유의 게이트 A 가짜엣지 할인. 검증 메타
61 블록부트스트랩 SPA 추정(리샘플) 성과(내부) naive초과 p값 A 검증 메타
57 부호제약 순차CV 추정(panel split) 신호+수익(내부) OOS 가중 A 미래누설 차단 가중
62 Almgren-Chriss 실행 닫힘(최적궤적) 일봉✅ + 충격계수 분할진입량 A 분할진입·충격비용 스칼라

L7 소계: A 6.

v3 39 엔진 종합

등급 개수 비율
A 코드가능 37 95%
B 부분 2 (#7 분위수회귀 재료더미부, #56 DML / 단 #7은 가격분위수 자체는 A라 실질 1.5) 5%
C LLM필수 0 0%

핵심 발견: v3 39 엔진은 사실상 전부 코드가능(A). 설계 의도 그대로 — v3는 "확률·통계 모델"만 모았으므로 본질이 코드다. LLM 의존은 재료더미 입력(#7, #56)에만 국한. 즉 v3 정량층은 통째로 코드 엔진 39개로 구현 가능하고, LLM은 (a)재료 텍스트→더미 변환 (b)최종 상충 조정·서사에만 남는다.

데이터 수집 선행 필요(코드, 3건): 체결강도 일별 ka10047(#1 다변량/#44 단독), 공매도·대차잔고(#4/#15/#43/#47). 나머지 36개는 보유 데이터로 즉시 착수.


2. 정석 153개 — 단기 종목선정 관련만 분류

정석 9분류 중 단기 종목선정 시간지평(분/일/주)에 부합 + 단일종목 적용 가능한 것만 추린다. 제외 사유는 명시.

2.1 범위 밖 (분류 제외) — 사유

정석 분류 제외 사유
증권분석(DCF/DDM/RIM) 시간지평 D+20↑ 본질가치. '내일 사자마자' 목적과 불일치. (단 재무비율·EV스코어는 펀더 보정인자로 잔존 → 아래 포함)
채권/금리 주식 universe 밖. 듀레이션·볼록성 미적용
파생/옵션 평가 옵션 그릭스·BSM 평가 자체는 종목선정 무관 (단 N(d2) 도달확률 발상은 v3 #8로 이미 흡수)
대체투자 비유동·사모·실물 = 범위 밖 (단 상대가치 발상은 v3 #17/#18로 흡수)
거시/경제 저빈도·전종목공통. 단일종목 인자 부적합 (매크로→종목 연결은 재료면 LLM)
포트폴리오 최적화(MVO/Black-Litterman) 자산배분 = 단일종목 단기선정 무관 (단 CAPM 베타는 v3 #3/#17로 흡수)

2.2 범위 내 — 분류

리스크/변동성 (v3와 최다 겹침 — 대부분 이미 v3 엔진으로 구현됨):

정석 기법 v3 매핑 등급 비고
GARCH/EWMA σ #5 A 이미 v3
EVT-GPD 꼬리 #10 A 이미 v3
VaR 분위수 #7 A 이미 v3
Copula 꼬리의존 #14 A 이미 v3
포지션사이징 ∝1/σ² #5 파생 A 변동성 타게팅
VaR 백테스팅(Kupiec) (검증) A 모델 검증 코드

기술적분석 (시간지평 적합. v3가 대중지표는 배제했으나, 시장내부 폭 지표는 진짜누락 = §3에서 보강 결정):

정석 기법 상태 등급 비고
RS 상대강도 v3 #17 PCA잔차로 우회 A 이미 우회 구현
Market Breadth/등락주선/신고가신저가 v3 부재 = 진짜누락 A §3 보강 — 코드 100%(시장 집계)
RRG(RS-Ratio×RS-Momentum) v3 부재 = 진짜누락 A §3 보강 — 코드 100%(섹터 RS 2축)
VWAP/Anchored VWAP v3 미채택 A(if채택) 일중 기준선, 코드가능하나 PM 게이트0 배제대상
대중지표(ATR/볼린저/RSI/MACD/이평/스토캐스틱/일목/피보) 의도배제 v3가 확률모델로 대체(#10/#7/#17). 재도입 불가
차트패턴(H&S·삼각형)·캔들·Elliott 정성 C 패턴인식 = LLM/CV. 단기선정 보조

계량/통계/시계열 (v3 토대 — 전부 v3로 구현):

정석 기법 v3 매핑 등급
회귀(단순·다중) #34/#16 A
시계열(AR/GARCH) #5/#42 A
베이즈 #49 A
백테스트통계(과최적화·스누핑) #60/#61 A
정보비율 IR v3는 Grinold IC(#27)로 흡수, IR 자체 미명시 A

증권분석 — 펀더 보정인자만 (게이트 아닌 확률보정):

정석 기법 등급 비고
재무비율 6대(듀폰 ROE 분해) A DART 재무 → 코드 산출 (이미 ea_panel 인프라)
상대가치 멀티플(PER/PBR/EV-EBITDA) 동종비교 B 멀티플 숫자는 코드(FA-M8 fetch_valuation), "정당화 가능한가"는 LLM(가격반영도)
justified multiple 역산 B implied 역산은 코드(FA-M7/M8), 합리성 판정은 LLM
PEAD 서프라이즈 A 컨센서스 대비 z = 코드(FA-M4)

성과기여도 (retro용 — 선정 아님, 참고):

정석 기법 등급 비고
Brinson attribution A(retro) 선정 단계 아님. 복기에 유용

정석 범위내 종합

  • 이미 v3로 구현됨: 리스크/변동성 6 + 계량 4 + RS = v3 엔진과 중복 (추가 구현 불필요)
  • 신규 코드 A: Market Breadth, RRG, IR(1줄), 재무비율, PEAD, Brinson(retro) = 6건
  • B 부분: 멀티플 동종비교, justified multiple = 2건 (코드 숫자 + LLM 정당화 판정)
  • C LLM필수: 차트패턴·캔들·Elliott = 1군 (패턴인식, 단기선정 보조)

3. 진짜누락 보강 결정 (Market Breadth / RRG / IR)

work_log S356 §8 진짜누락 4건에 대한 보강 여부 판정:

누락 보강? 판정 근거
②Market Breadth (등락주선·신고가신저가·HHI) ✅ 보강 PM "시장자금 국면"과 직결. 코드 100%(시장 일별 집계, 종목불요). v3 L1 레짐(개별종목 σ·ξ)이 못 보는 시장 폭 보완. D1 시장블록에 추가. _index S344 "한국 시장 편중도 HHI" 미결과 합류
③RRG 섹터로테이션 ✅ 보강 코드 100%(섹터 RS-Ratio×RS-Momentum 2축). v3 #17은 종목 잔차라 섹터간 자금이동 회전을 못 봄. discover 4면 중 '시장자금 도착 섹터'에 직결. sector_series 인프라 재사용
①정보비율 IR ✅ 보강(경량) Grinold IC(#27)에 IR=IC×√BR 1줄 추가면 됨. 비용 0
④Brinson 성과기여 🔸 retro만 선정 아닌 복기 단계. discover 선정에는 불요. retro 토픽으로 이관

보강 구현 위치(판단): Market Breadth + RRG = 시장/섹터 레벨이므로 L1 레짐층 확장 또는 별도 L0 시장폭층. 종목별이 아니라 전종목 1회 산출이라 비용 작음. D1 검증인프라 구축 시 함께.


4. 결론 — "에이전트 처리 최소화" 설계도

4.1 자동화 비중 (단기 종목선정 전체)

코드가능 A 부분 B LLM필수 C
v3 39 엔진 37 2 0
정석 신규 6 2 1군(패턴)
보강(Breadth/RRG/IR) 3 0 0
46 4 1군

자동화 가능 비중 ≈ 90%+. discover 정량 파이프라인은 코드 엔진 46개로 구성 가능.

4.2 LLM에 남는 것 (코드 불가 = 본질적 정성)

  1. 재료 텍스트 → 더미/점수 변환 (#7·#56·멀티플정당화 입력) — 뉴스·공시 비정형
  2. 가격반영도 정당화 판정 (멀티플 동종비교, justified multiple 합리성) — 맥락
  3. 차트패턴·캔들 인식 (단기선정 보조, 선택적)
  4. 최종 상충 조정·서사 (코드 46개 스칼라가 충돌할 때 통합 판단 = v3 L5 결합층이 1차 자동, 잔여만 LLM)

4.3 PM 비대칭 우위 (work_log §9 답변 정합)

  • 코드 46개 = 전종목·매일·편향0·동일잣대 (인간 정석 흉내의 우위)
  • 인간이 머릿속으로 못 하는 수학(상태확률·베이지안결합) = 정석 너머
  • 분절 복원 = L5 결합층(코드) + 잔여 상충만 LLM

4.4 discover 시간단축 직결

코드 46개가 pre-gate에서 P(win)·RR·레짐확률을 산출 → 종목당 LLM 호출이 4면 정성판단 전체 → 잔여 상충·재료해석만으로 축소. work_log §4 추정 "2시간+ → 40~60분"의 메커니즘이 이 분류로 구체화됨.


5. 다음 작업 (구현 순서)

이 분류가 확정하는 구현 우선순위:

  1. D1 검증 인프라 (2순위, 선행필수): Triple-Barrier(#58) 라벨러 + 채점기(#60/#61/#57). 46개 중 검증층 먼저.
  2. 데이터 수집 3건: 체결강도 ka10047, 공매도·대차잔고. (#1다변량/#15/#4대차 선행)
  3. 보강 3건: Market Breadth + RRG + IR — D1 인프라와 함께(시장/섹터 1회 산출).
  4. 엔진 구현: 보유 데이터로 즉시 가능한 36개부터 → D1 채점기로 엣지 측정 → 살아남는 것만 L5 결합.

미해결(S356 §6 승계, 구현 전 PM 결정): Triple-Barrier pt/sl 배수, 모집단(419 vs 200), IC 임계, L5 결합방식(베이지안 룰 vs 로지스틱 스태킹 #53 — §1에서 #53만 ML이라 검증부담 표시), 코드 위치(scripts/discover/research/).