Shadow Portfolio · 실제 돈 없이 매달 나란히 기록

섀도 포트폴리오

로부스트니스 재검정(과최적화 위험 '중간')에서 나온 대안 6개를 배포 KMVO 규칙(B0)과 같은 엔진·같은 자료로 매일 계산합니다. 2026-10부터가 섀도 기록이고 그 전은 백테스트입니다. 2028-09 확정 뒤 사전등록 규칙(shadow_judge.py)으로 판정합니다. 수익률은 배당 포함 총수익, 표의 통계는 확정 월(~2026-08) 기준이고 섀도 기간·판정 미리보기는 원장 기록 가능 월(~2026-08, 월말 뒤 7거래일이 지나고 채권 자료가 미국 월말 종가 뒤로 이어진 달)까지만 씁니다. 아직 원장 기록은 없습니다(첫 기록 ≈10/14).

섀도 경과0 / 24개월판정까지 25개월 · 원장 사슬 정상

한눈에 보기

A = 등록 때 확정한 백테스트 비열위(ΔSharpe [양측 90% 하한], 문턱 −0.10) · B = 섀도 기간 ΔSharpe · ΔMDD(B0 대비)
섀도CAGR샤프MDD연 회전(백테스트)A 등록 판정섀도 기간B ΔSharpe · ΔMDD판정 미리보기다음 달 목표원장
B0 · 배포 KMVO (기준)
기준선
21.0%1.04-22.2%351% -기록 전-- 🔴 RISK OFF (미국 단기국채(SHY 1-3Y)) · 0종목 (잠정) 0
T1 · 트랜치 3코호트
후보
22.6%1.09-21.4%238% +0.05 [-0.04] 충족기록 전-섀도 기록 전 🔴 RISK OFF (미국 단기국채(SHY 1-3Y)) · 0종목 (잠정) 0
E3 · 파라미터 평균 + 트랜치
후보
22.3%1.08-21.7%217% +0.04 [-0.04] 충족기록 전-섀도 기록 전 🔴 RISK OFF (미국 단기국채(SHY 1-3Y)) · 0종목 (잠정) 0
G1 · 게이트 MA4~10 연속 노출
후보
20.4%1.04-19.6%348% +0.00 [-0.09] 충족기록 전-섀도 기록 전 🟡 주식 57% · 미국 단기국채(SHY 1-3Y) 43% · 27종목 (잠정) 0
EW25 · VAM 상위 25 동일가중
관찰 전용
21.9%0.98-24.5%383% -0.06 [-0.18] 불충족기록 전-관찰 전용(A 불충족) 🔴 RISK OFF (미국 단기국채(SHY 1-3Y)) · 0종목 (잠정) 0
IV25 · VAM 상위 25 역변동성
관찰 전용
21.4%1.05-19.3%390% +0.01 [-0.13] 불충족기록 전-관찰 전용(A 불충족) 🔴 RISK OFF (미국 단기국채(SHY 1-3Y)) · 0종목 (잠정) 0
W3 · MVO · 동일가중 50:50
후보
21.6%1.03-22.9%341% -0.01 [-0.08] 충족기록 전-섀도 기록 전 🔴 RISK OFF (미국 단기국채(SHY 1-3Y)) · 0종목 (잠정) 0

기준선 B0 와 메인 페이지(게시 트랙)의 차이

이 기준선은 배포 규칙을 섀도와 같은 엔진·자료로 다시 계산한 값이라 메인 페이지의 게시 트랙과 다릅니다. 2026-01~2026-08 누적: B0 +7.7% · 게시 +20.4% (차이 -12.7%p). 이유: ① 2026-01·02 게시값은 실계좌 고정값 ② 2026-03 이후 게시값은 비용을 빼지 않은 라이브 실현값 ③ 라이브 선정 차이(12월 명단 고정 결함, 09-23 수정) — 보유 종목 겹침 평균 89%. 섀도 기간부터는 매달 겹침을 기록해 'B0 = 실제 KMVO' 인지 감시합니다.

섀도 정의

  • B0 · 배포 KMVO (기준) (기준선) — 배포 규칙 그대로(6-3 VAM 상위 40% → MVO γ20·상한 4%·하한 1.5%·축소 0.3, MA6 게이트, 369 채권 로테이션)를 섀도와 같은 엔진·같은 자료로 계산한 기준선. 게시 트랙(메인 페이지)의 2026 은 라이브 기록이라 이것과 다르다 — 섀도 기간부터 매달 보유 겹침을 기록한다. 목표 강건성: -
  • T1 · 트랜치 3코호트 (후보) — 배포 규칙 그대로, 포트폴리오를 3개 코호트로 나눠 매달 한 코호트(1/3)만 새 MVO 목표로 교체한다. 위험-off 에서 복귀하는 달은 전 코호트를 교체한다. 목표 강건성: 리밸런싱 회전율(두 전략 모두 지난달·이번 달 주식 보유인 달의 편도 회전 합) 비율 T1/B0 ≤ 0.70, 해당 달 6개 이상(미만이면 판정 보류). 백테스트 0.475, 과거 24개월 창 95% 분위 0.53
  • E3 · 파라미터 평균 + 트랜치 (후보) — LB{5,6,7} × SK{2,3,4} × 상위{30,40,50%} 27개 구성의 목표비중 평균(P1)을 3코호트 트랜치로 운용한다. 목표 강건성: 리밸런싱 회전율 비율 E3/B0 ≤ 0.70(T1 과 같은 정의). 백테스트 0.377, 과거 24개월 창 95% 분위 0.43
  • G1 · 게이트 MA4~10 연속 노출 (후보) — MA6 이진 게이트 대신 KOSPI 가 MA4·5·6·7·8·9·10 중 위에 있는 비율만큼 주식을 들고, 나머지는 방어 다리(369 로테이션)에 둔다. 목표 강건성: 구조 논리(국면마다 순위가 뒤집히는 MA 노브를 평균) — 추가 지표 없음, 붕괴 없음만. MDD 비교는 과거 24개월 창에서 동전 던지기(58%)라 쓰지 않는다
  • EW25 · VAM 상위 25 동일가중 (관찰 전용) — MVO 대신 VAM 점수 상위 25종목을 동일가중한다(같은 게이트·방어 다리). 목표 강건성: 관찰 전용 — 등록 백테스트 비열위(A) 불충족(하한 −0.183)
  • IV25 · VAM 상위 25 역변동성 (관찰 전용) — MVO 대신 VAM 점수 상위 25종목을 역변동성으로 가중한다(같은 게이트·방어 다리). 목표 강건성: 관찰 전용 — 등록 백테스트 비열위(A) 불충족(하한 −0.129)
  • W3 · MVO · 동일가중 50:50 (후보) — 배포 MVO 목표와 VAM 상위 25 동일가중 목표를 반씩 평균한다. 목표 강건성: 구조 논리(MVO 층을 절반만 신뢰) — 추가 지표 없음, 붕괴 없음만

판정 규칙 (사전등록 2026-09-24 · v2)

지훈 — 섀도 시작·추적 승인(2026-09-24), 재점검 수정 '전부 수정' 승인(2026-09-24). 판정 규칙의 구체 수치는 에이전트 초안(검토 반영) — 첫 원장 기록(≈10/14 — 10/13 자료, 휴장 반영) 전에 지훈 확인 필요 — 확인하면 confirmed_by_jihoon 에 날짜(YYYY-MM-DD)를 적는다. 비어 있으면 shadow_track 이 첫 기록 추정일 7일 전부터 매일 한 번 텔레그램으로 알린다(기록 자체는 막지 않는다 — 자료 무결성 우선).
  • A 등록 비열위 — 등록 시점 백테스트 비열위 — 동결본(2005-01~2026-08) ΔSharpe(후보 − B0) 양측 90% 구간 하한 > −0.10. 등록 때 확정했고 섀도 자료로 바뀌지 않는다(결합 표본으로 하면 판정의 91% 가 이미 본 자료라 결과가 정해져 있었다 — 검토 지적). 불충족(EW25·IV25)은 '관찰 전용'.
  • B 붕괴 없음 — 섀도 24개월(2026-10~2028-09, 원장에 기록된 확정 월) ΔSharpe 점추정 > −0.50 이고 ΔMDD(후보 − B0) > −8%p. 문턱은 과거 24개월 이동창(237개)에서 동등한 후보의 오경보가 2.1% 이하가 되도록 정했다(후보 T1·E3·G1·W3 0%, 관찰 전용 IV25 0%·EW25 2.1%).
  • C 목표 강건성 — 후보별 target.rule. 식은 shadow_judge.rebal_turnover_ratio — '지난달 보유'는 창으로 자르기 전 전체 시계열에서 보므로 창 첫 달(2026-10)도 들어간다(지난달 2026-09 는 이미 아는 값).
  • D 재현성 — 결정 재현성 — 사유 없는 드리프트 0건(후보 자신과 B0 모두)이고 원장 해시 사슬이 정상일 것. 드리프트 = 원장에 기록된 결정 w(허용 5e-4)·월수익 가격분 pr_px·회전 sell/buy(허용 1e-6)가 재계산과 다른 것, 또는 기록된 달이 재계산에서 사라진 것. 늦게 게시된 배당(div)의 변화는 드리프트가 아니다(원장에 div_update 로 기록). 사유는 `shadow_track.py --explain <번호|SID:종류:키> "사유"` 로 원장 사슬에 reason 레코드로 남긴다(원장 손편집 금지). 사유가 적힌 드리프트는 D 를 막지 않는다 — 그 대신 두 벌 판정(changes)이 결론 차이를 잡는다. (체결·추적 검증 — T+1 체결, 코호트 관리, 부분 방어 보유 — 은 전환 전 별도 절차로 한다.)
  • 결정 — A·B·C·D 모두 충족 → '전환 제안'(운영 변경은 지훈 승인). 여럿이면 우선순위(T1 > G1 > E3 > W3)대로 **하나만** 제안한다. 결합안(예: T1+G1)은 새로 등록해 새 섀도로 검증한다. 관찰 전용(EW25·IV25)은 제안 대상이 아니다 — 창이 36개월 이상이고 섀도 ΔSharpe > +0.30 이며 MDD 가 B0 보다 깊지 않으면(ΔMDD ≥ 0) '관찰 전용 — 새 등록 검토'로만 올린다(thresholds.observation_review_*, shadow_judge.judge — 36개월 창은 shadow_track.summarize 가 보조 창으로 자동 계산). 하나라도 불충족 → 현행 유지.
  • 36개월 보조 — 36개월(2029-09): 24개월 판정에서 B(붕괴)만 불충족이던 후보를 같은 함수(shadow_judge.judge_dual)에 창 2026-10~2029-09 를 넣어 같은 규칙으로 재판정한다(관찰 전용 '새 등록 검토'도 이 창에서 본다). 2028-09 뒤로는 shadow_track.summarize 가 보조 창(2026-10~min(원장 기록 가능 월, 2029-09))을 매일 자동 계산해 요약(judge_secondary)·페이지에 싣는다 — 2029-09 창이 차면 그 값이 보조 판정이다. 전환이 일어나도 B0 는 계속 계산해 비교한다.
  • 섀도 중 수정 — 섀도 기간 중 엔진·데이터 수정은 B0 포함 전 섀도에 동시에 적용한다. 수정으로 생긴 드리프트마다 `shadow_track.py --explain` 으로 원장 사슬에 사유(수정 내용·전후 판정 지표)를 남긴다 — 이 reason 레코드가 변경 기록이다. 판정은 원장 월수익(기록된 pr_px + 최신 확정 배당)과 최신 재계산 둘 다로 계산하고(shadow_judge.judge_dual), 결론이 다르면 판정을 보류하고 지훈이 정한다.
  • 들여다보기 금지 — 판정 전에는 결과를 보고 대상·규칙·파라미터·문턱을 바꾸지 않는다. 바꾸면 version 을 올리고 이유를 적는다(시행 대장에도 추가).
  • 검정력 — 24개월로는 샤프 차 약 0.3 미만을 검출할 수 없다. 이 판정은 성과 우열 검정이 아니라 '이상 없음 확인'(결정 재현성·극단 국면 거동·구조 효과 존재) 절차다. 채택의 근거는 등록 때 이미 본 백테스트(A)와 구조 논리다.
  • 기준 — 월 순수익, 총수익(현금배당 포함). 비용 매수 10bp·매도 25bp·상폐 −50%(알려진 기업행위는 실제 결과). 월말 종가 체결(엔진 관례) — 모든 섀도와 B0 가 같은 관례. 절대 수준은 실제 체결(T+1)보다 낙관적이다.
  • 고정 파일 — 판정 계산기 shadow_judge.py (sha256 967d50db7b70…) · 백테스트 동결본 shadow_backtest_frozen.json (sha256 a041a16c2066…) · 원장 shadow_ledger.json
섀도 포트폴리오 · 근거 .agent/robust/FINDINGS_ROBUST.md (로부스트니스 재검정 · 반박 검증 V1·V2 — 수정 17건, 3절 표) · 실제 돈은 움직이지 않습니다.