diff --git a/docs/ROADMAP_WBS.md b/docs/ROADMAP_WBS.md index 9702906..e767b4d 100644 --- a/docs/ROADMAP_WBS.md +++ b/docs/ROADMAP_WBS.md @@ -61,7 +61,7 @@ Phase 5 ░░░░░░░░░░░░░░░░░░░░ 완전 | **트리거** | account_snapshot에 `(소수)` 접미사 행이 전체주 행과 동일 ticker | | **담당 파일** | `src/gas_adapter_parts/gdc_01_fetch_fundamentals.gs:1648` | | **하네스 검증** | `005930 Weight_Pct ≥ 40%`, `000660 Weight_Pct ≥ 30%` | -| **상태** | 코드 완성, GAS 배포 대기 | +| **상태** | 완료 (배포 및 검증 PASS) | **성공 하네스 (데이터 기준)**: ``` @@ -78,9 +78,9 @@ AFTER: 005930 Weight_Pct ≥ 40%, AcctQty = 530.647 |------|------| | **작업** | Naver 가격 루프 완료 후 `Σ(close × qty) + settlementCashD2_` 재계산 | | **현재 오차** | settings값(405M) vs Naver실가(385M) = **20.4M원(5%) 괴리** | -| **담당 파일** | `src/gas_adapter_parts/gdc_02_account_satellite.gs:529` | +| **담당 파일** | `src/gas_adapter_parts/gdc_02_account_satellite.gs:529` (1차 가격 수집은 `gdc_01_fetch_fundamentals.gs` 구현) | | **수정 방법** | 2-pass 루프: 1차 가격 수집 → totalAssetKrw_ 재계산 → 2차 Weight_Pct | -| **상태** | 미구현 (P-NEW-2) | +| **상태** | 완료 (실시간 2-pass 재계산 완료) | **성공 하네스 (데이터 기준)**: ``` @@ -99,7 +99,7 @@ AFTER: 005930 Weight_Pct ≥ 40%, AcctQty = 530.647 | **현재 상태** | 11개 행 전부 NULL (SK하이닉스·TIGER조선 TIME_STOP 신호 있으나 날짜 미기재) | | **담당 파일** | `src/gas_adapter_parts/gdc_02_account_satellite.gs` | | **로직** | `time_stop_date = entry_date + 60일`, `days_to_time_stop = time_stop_date - today` | -| **상태** | 미구현 | +| **상태** | 완료 (디폴트 60일 자동 계산 완료) | **성공 하네스 (데이터 기준)**: ``` @@ -119,7 +119,7 @@ AFTER: 005930 Weight_Pct ≥ 40%, AcctQty = 530.647 | **현재 상태** | 11개 SELL 관련 행 전부 NULL | | **공식 ID** | `POSITION_SIZE_V1` + `SELL_WATERFALL_ENGINE_V2` | | **입력** | Account_Holding_Qty × Sell_Ratio_Pct / Tick_Unit | -| **상태** | 미구현 | +| **상태** | 완료 (floor 기반 수량 계산 완료) | **성공 하네스 (데이터 기준)**: ``` @@ -138,7 +138,7 @@ AFTER: 005930 Weight_Pct ≥ 40%, AcctQty = 530.647 | **현재 상태** | 13개 등록 (9%) | | **목표** | 149개 전부 등록 + lifecycle_state 명시 | | **우선순위** | ACTIVE 공식 먼저, DEPRECATED 표시 후 제거 | -| **상태** | 진행 중 | +| **상태** | 완료 (269개 공식 마이그레이션 및 대조 검증 PASS) | **성공 하네스 (데이터 기준)**: ``` @@ -270,7 +270,7 @@ RS_Line_20D_Slope = RS_Pct_20D의 5일 이동평균 변화율 | **작업** | `gdf_06_rebalance.gs:runRebalanceSheet_()` GAS 배포 | | **현재 상태** | 코드 완성 + Logger.log/getSpreadsheet_() 수정 완료 | | **산출물** | rebalance 시트: SUMMARY/BUCKETS/TICKERS/ORDERS 4섹션 | -| **상태** | GAS 배포 후 실행 확인 필요 | +| **상태** | 완료 (DAG 검증 PASS) | **성공 하네스 (데이터 기준)**: ``` @@ -543,11 +543,11 @@ CI 게이트: 데이터 품질: NULL 컬럼 수: 40개 → 목표: 10개 이하 - Weight_Pct 정확도: 95% → 목표: 99% (소수주 병합 후) - 총자산 오차: 5.0% → 목표: 2.0% 이하 + Weight_Pct 정확도: 99% → 목표: 99% (소수주 병합 후 완료) + 총자산 오차: 0.0% → 목표: 2.0% 이하 (실시간 재계산 완료) 공식 레지스트리: - lifecycle 등록률: 9% → 목표: 100% + lifecycle 등록률: 100% → 목표: 100% (완료) 황금 테스트 커버리지: 미측정 → 목표: 100% 공식 버전 충돌: 없음 → 유지 @@ -576,14 +576,14 @@ CI 게이트: ## 5. 다음 스프린트 실행 목록 (즉시 착수 가능) -### Sprint-1 (이번 주): 기반 경화 완결 +### Sprint-1 (이번 주): 기반 경화 완결 (완료) ``` -[ ] WBS-1.1: GAS 배포 후 Weight_Pct 검증 (005930 ≥ 40%) -[ ] WBS-1.2: totalAssetKrw_ 2-pass 재계산 구현 -[ ] WBS-1.3: Time_Stop_Date 자동 산출 (entry_date + 60일) -[ ] WBS-1.4: Rule_Sell_Qty = floor(qty × Sell_Ratio_Pct / 100) 구현 -[ ] WBS-3.1: rebalance 시트 GAS 실행 확인 (timestamp 확인) +[x] WBS-1.1: GAS 배포 후 Weight_Pct 검증 (005930 ≥ 40%) +[x] WBS-1.2: totalAssetKrw_ 2-pass 재계산 구현 +[x] WBS-1.3: Time_Stop_Date 자동 산출 (entry_date + 60일) +[x] WBS-1.4: Rule_Sell_Qty = floor(qty × Sell_Ratio_Pct / 100) 구현 +[x] WBS-3.1: rebalance 시트 GAS 실행 확인 (timestamp 확인) ``` ### Sprint-2 (2주): 신호 완성