LxS v1 백테스트 — 4분면 conditional alpha 첫 실증¶
Date: 2026-05-24 (Sun)
Topic: L (시스템 재설계)
Predecessor: R6/R7 매크로 리서치 + PM 프레임 매핑표
산출 코드: scripts/backtest/lxs_v1_run.py
목적¶
PM 프레임(유동성 + 심리)을 한국 코퍼스에서 첫 실증.
검증 가설: - H1: L↑S↓ 분면(contrarian buy)이 다른 분면보다 D+20 alpha가 유의하게 높다 (R7 CF7 가설) - H2: 분면별 D+20 alpha가 통계적으로 다르다 (regime 신호의 기본 검증)
입력¶
- S307big samples 47,456 rows → HY 가용 시점(2023-05-23) 이후 32,905 samples
- FRED 시계열 (look-ahead 차단 — shift(1) 후 60일 rolling z-score)
- L축: WALCL/TGA/RRP → Fed Net Liquidity, HY OAS, Estrella probit (DGS10-DGS3MO)
- S축 v1: Real Yield (DGS10-T10YIE), HY 20d 변화
- 한국 데이터(VKOSPI/외인선물): macro_series.json 데이터 4월까지 12 rows → v1에서 미사용 (커버리지 부족)
합성 가중치 (v1 단순화)¶
L축 (3 components): - L_fnl_z (Fed Net Liquidity z60) 0.50 - L_hy_z_neg (HY 역부호) 0.30 - L_estrella_neg ((0.30 - P) / 0.15) 0.20
S축 (2 components — v1 한계): - S_real_yield_neg 0.50 - S_hy_chg_neg (20d HY 변화 역부호) 0.50
결과¶
Regime 분포 (n=32,905)¶
| Regime | n |
|---|---|
| L↑S↓ Contrarian | 8,003 |
| L↓S↑ Top Warning | 7,729 |
| L↓S↓ Bear | 7,688 |
| L↑S↑ Bull | 6,130 |
| UNKNOWN | 3,355 (rolling 60일 warmup) |
분포 균형 양호 (UNKNOWN 제외 4분면 각각 18~24%).
Regime별 D+20 alpha (전체 verdict, baseline +4.51%)¶
| Regime | n | D+20 mean | alpha (pp) | win% | sharpe |
|---|---|---|---|---|---|
| L↑S↑ Bull | 6,130 | +6.98% | +2.46 ★ | 60.96 | 0.345 |
| L↑S↓ Contrarian | 8,003 | +5.25% | +0.74 | 55.20 | 0.259 |
| L↓S↓ Bear | 7,688 | +4.33% | -0.18 | 54.77 | 0.244 |
| L↓S↑ Top Warning | 7,729 | +3.14% | -1.37 ★ | 49.74 | 0.170 |
| UNKNOWN | 3,355 | +1.83% | -2.69 | 45.78 | 0.104 |
regime 사이 alpha 격차 = 3.83pp (Bull +2.46 vs Top Warning -1.37). 운영자 행동 분기에 충분한 신호.
BUY_STRONG D+20 by regime¶
| Regime | n | D+20 mean | win% |
|---|---|---|---|
| L↑S↑ Bull | 58 | +11.78% ★ | 62.07 |
| L↑S↓ Contrarian | 64 | +7.80% | 51.56 |
| L↓S↑ Top Warning | 74 | +6.42% | 58.11 |
| L↓S↓ Bear | 46 | +5.03% | 60.87 |
baseline BUY_STRONG D+20은 S307big +5.45% → L↑S↑에서 +11.78% (+6.33pp 추가 alpha). 표본 작아(n=58) 신뢰구간 큼.
핵심 발견 (v1)¶
- L↑S↑ Bull regime 압도적 우위 — D+20 alpha +2.46pp, sharpe 0.345 (다른 분면 0.17~0.26), BUY_STRONG +11.78%. PM 프레임의 직관(유동성 + 심리 동반 강세 = 최고 환경) 실증.
- L↓S↑ Top Warning이 최악 — -1.37pp alpha, win 49.74% (50% 미만). "유동성 마름 + 심리 안주" = 매핑표 꼭지 경고 분면 검증.
- L↑S↓ Contrarian Buy는 가설 부분 검증 — +0.74pp alpha. R7 CF7 "historical 최고 보상" 가설은 한국 코퍼스에서 부분 충족. L↑S↑이 더 강함 — 미국 헤지펀드 운영자 사례는 글로벌 위기 직후(2009/2020) 같은 극단을 본 것이고, 본 백테스트 기간(2023-05~2026-04)은 위기 직후가 아니라 다른 환경.
- L축 강도의 영향이 S축보다 큼 — L↑ vs L↓ 평균 격차 ~3pp / S↑ vs S↓ 평균 격차 ~1pp. Druckenmiller "유동성이 시장을 움직인다" 명제 1차 정량 검증.
운영자 관점 해석¶
- L축이 압도적 1차 요인 (Druckenmiller 명제 정량 확인)
- L↑S↑ Bull = 추세 추종 환경 — 매핑표의 pool ×1.6, momentum tilt, trailing 완화 정책 정당화
- L↓S↑ Top Warning = 진입 회피 신호 — pool ×0.5, take profit, 거품주 제외 정책 정당화 (-1.37pp alpha는 시장 평균 대비 명확한 underperform)
- L↑S↓ Contrarian Buy의 한국 적용 한계 — 위기 직후가 아닌 일상 환경에서는 추가 보상이 작음. 2008/2020 같은 극단 위기 시점 별도 검증 필요 (S307big 기간 외)
한계¶
- HY 시작 2023-05 → 32,905 samples만 사용 (S307big의 69%). 2022-01~2023-05 14개월 손실
- S축 v1 단순화 — VIX/CNN F&G/SKEW/VVIX/VKOSPI/외인선물 미통합. FRED 기반 2 components만 사용
- 한국 데이터 미통합 — macro_series.json은 본 시점 4월까지 12 rows. 외인 KOSPI net 누적 + 외인 선물 z + VKOSPI 시계열을 2023~2026 백필해야 v2 가능
- DSR / PBO / Combinatorial Purged CV 미실행 — v1은 단순 그룹 평균. 다중검정 보정 통과 여부 검증 필요
- 단순 4분면 분류 (L_z 0 기준) — 임계 ±0.5, ±1.0 등 강도별 세분화 미적용 (sharper signal 가능성)
- UNKNOWN 3,355 sample — 백테스트 시작 60일 warmup. v2에서는 expanding window 또는 길어진 history로 줄이기
v2 보완 (다음 단계)¶
- S축 확장: VIX/VIX9D/VIX3M 텀구조 + CNN F&G + AAII/NAAIM(manual CSV) + VKOSPI + 외인선물 z. 7 components까지 매핑표 §2-6 합성 적용
- 한국 데이터 백필: 2023-05~2026-04 외인 KOSPI net + VKOSPI + PCR + 외인선물 시계열 수집.
collect_macro_series.py --backfill - DSR + PBO + Combinatorial Purged CV 정식 검증
- regime 임계 세분화: |L_z|/|S_z| 분위 기준 (0.5σ, 1σ, 1.5σ, 2σ) 4×4 = 16 cell 또는 5×5 = 25 cell
- 종목 단위 적용: regime × verdict × 종목 stock-conditional alpha (현재는 sample-pooled)
- 회복/악화 Δ-기반: L_z_delta_20d > 0 (개선 중) vs < 0 (악화 중) 추가 layer — R7 Druckenmiller "change of pace"
산출¶
data/backtest/lxs_v1/samples_labeled.parquet(32,905 rows, regime + feature 컬럼 포함)data/backtest/lxs_v1/regime_matrix.json(4분면 baseline + BUY_STRONG matrix)- 본 문서
다음¶
- (a) v2 S축 확장 + 한국 데이터 백필 후 재실행
- (b) PM 직접 검토 후 채택 여부 결정
- (c) regime 라벨을 morning/signal-synthesizer 입력으로 통합 (실시간 운영 검증)