From 81727918b360a4fa72dcd9698f79f1054377ec34 Mon Sep 17 00:00:00 2001 From: kjh2064 Date: Sun, 14 Jun 2026 10:34:21 +0900 Subject: [PATCH] =?UTF-8?q?docs:=20B1=5Fgas=5Fbackdata=5Ffeature=5Fbank=20?= =?UTF-8?q?=EA=B5=AC=ED=98=84=20=EC=99=84=EB=A3=8C=20=ED=99=95=EC=9D=B8=20?= =?UTF-8?q?=E2=80=94=20spec/16=20PLANNED=20=E2=86=92=20DONE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit GAS 쪽: syncBackdataFeatureBank_() gdf_02_harness_assembly.gs:146에서 호출 중 Python 쪽: synthesize_backdata_feature_bank(), normalize_backdata_harness_payload(), _backdata_feature_bank_table(), validate_harness_context backdata 검증 모두 구현됨 implementation_plan 4개 스텝 전부 DONE으로 갱신. T+20 데이터 누적 후 ML 패턴 학습 품질 자동 향상. Co-Authored-By: Claude Sonnet 4.6 --- spec/16_data_gaps_roadmap.yaml | 25 ++++++++++++++++++++----- 1 file changed, 20 insertions(+), 5 deletions(-) diff --git a/spec/16_data_gaps_roadmap.yaml b/spec/16_data_gaps_roadmap.yaml index 989f872..4bfbd0a 100644 --- a/spec/16_data_gaps_roadmap.yaml +++ b/spec/16_data_gaps_roadmap.yaml @@ -451,7 +451,7 @@ analysis_enhancements: phase_4_backdata_collection: B1_gas_backdata_feature_bank: priority: HIGH - status: PLANNED + status: DONE purpose: > 매수/매도 뒷북과 설거지 패턴을 줄이기 위한 진입-청산 백데이터 원장. 사람 입력보다 GAS 자동 수집을 1순위로 두고, 사람이 입력한 performance 기록은 @@ -480,13 +480,28 @@ phase_4_backdata_collection: - "max_adverse_excursion_pct" - "max_favorable_excursion_pct" implementation_plan: - step_1: "GAS에서 daily setup snapshot을 backdata_feature_bank 시트로 자동 upsert" - step_2: "performance 시트 청산 결과와 join해 outcome label을 자동 부여" - step_3: "convert_xlsx_to_json.py에서 backdata_feature_bank_json 우선 수집" - step_4: "backdata_feature_bank_table을 report/validation에 반영" + step_1: + action: "GAS에서 daily setup snapshot을 backdata_feature_bank 시트로 자동 upsert" + status: DONE + note: "syncBackdataFeatureBank_() — gdc_01_fetch_fundamentals.gs:1128, gdf_02_harness_assembly.gs:146" + step_2: + action: "performance 시트 청산 결과와 join해 outcome label을 자동 부여" + status: DONE + note: "buildBackdataFeatureBankRowsV1_() — mapLatestPerformanceByTicker_ 기반 join" + step_3: + action: "convert_xlsx_to_json.py에서 backdata_feature_bank_json 우선 수집" + status: DONE + note: "src/quant_engine/convert_xlsx_to_json.py:synthesize_backdata_feature_bank() 구현" + step_4: + action: "backdata_feature_bank_table을 report/validation에 반영" + status: DONE + note: "render_operational_report.py:_backdata_feature_bank_table(), validate_harness_context.py 검증" fallback_policy: manual_input: "performance 시트 또는 수동 보정은 fallback일 뿐 primary source가 아니다." missing_action: "GAS 생성본이 없으면 fallback 기록과 함께 source_origin=FALLBACK_SYNTH로 남긴다." + implementation_note: > + 2026-06-14 구현 완료 확인. GAS(syncBackdataFeatureBank_) + Python(synthesize_backdata_feature_bank) + 모두 구현됨. T+20 데이터 누적 후 ML 패턴 학습 품질 향상 예정. # 2026-05-30 구현 현황 # - S5_etf_raw: PARTIAL_DONE 유지 (수동 NAV 병행)