Commit Graph

189 Commits

Author SHA1 Message Date
kjh2064 54e61e71e6 fix: DATA_GATED exclusion for harness/registry, FULL_ADVANCED multiplier bug
- harness_coverage_auditor: _load_data_gated_formula_ids() now correctly
  parses {formulas:[...]} YAML structure (was treating dict as list → empty set)
- build_formula_runtime_registry_v1: add DATA_GATED exclusion so
  OPERATIONAL_T20_OUTCOME_LEDGER_V1 (~2026-07-15) doesn't block gate
- build_fundamental_multifactor_v3/v4: add FULL_ADVANCED: 1.0 to
  _QUALITY_MULTIPLIER (all non-ETF stocks were scoring 0.0/grade=F)
- spec/51_formula_lifecycle_registry.yaml: OPERATIONAL_T20_OUTCOME_LEDGER_V1
  lifecycle_state ACTIVE → DATA_GATED

DAG: gate=PASS step_count=55 | formula_runtime_registry: 100% | DQR: 99.97

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-13 17:59:57 +09:00
kjh2064 9123cf911f Merge pull request 'WBS-2.4 PEG_SCORE_V1 구현 + 완성도 매트릭스 전면 업데이트' (#14) from feature/wbs-2.4-peg-score-roadmap-update into main
WBS-2.4 PEG_SCORE_V1 구현 + 완성도 매트릭스 업데이트
2026-06-13 17:32:30 +09:00
kjh2064 45a39759e3 WBS-2.4 PEG_SCORE_V1 구현 + ROADMAP_WBS.md 완성도 매트릭스 전면 업데이트
[WBS-2.4] ingest_fundamental_raw.py에 peg_ratio / peg_gate 필드 추가
  - PEG = TTM_PE(per) / eps_growth_1y_pct (양수 성장 종목만)
  - PEG_GATE: BUY_GRADE(≤1.0) / HOLD(≤1.5) / CAUTION(>1.5)
  - 비ETF 8종목 중 6종목 PEG 산출 (75% — 음수성장 2종목 정상 NULL)
  - Forward_PE 미입수 시 TTM_PE 대체 조항 적용

[ROADMAP] 완성도 매트릭스 전면 업데이트
  - WBS 1.1~1.5, 2.1~2.4, 3.1~3.4, 4.4, 5.1~5.3 모두 100%  반영
  - WBS 2.5, 4.1~4.3: DATA_GATED 명시
  - Phase bar: 1/3/5 완료(20/20), 2 80%, 4 25%
  - D2: 9% → 100% (269개 등록), D5: 55단계 DAG PASS
  - KPI 섹션: RS/PEG/CI/CD 실적 반영

[CI] tools/setup_act_runner.sh 추가 (Synology NAS act_runner 설치 스크립트)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-13 17:31:51 +09:00
kjh2064 9824f348d2 Merge pull request 'Sprint-4: WBS-4.4 evaluation_dashboard + CI fix + Synology Gitea CI' (#13) from feature/wbs44-eval-dashboard-ci-fix-synology into main
Merge PR#13: WBS-4.4 evaluation_dashboard + CI fix + Synology Gitea CI
2026-06-13 16:52:32 +09:00
kjh2064 25f771cc77 feat: WBS-4.4 evaluation_dashboard + CI fix + Synology Gitea 최적화
[WBS-4.4] 일별 성과 모니터링 대시보드 구현
- updateEvaluationDashboard_(): gdf_04_execution_quality.gs에 GAS 함수 신규 추가
  · daily_history 시트 → total_asset, mdd_pct
  · macro 시트 KOSPI Close → 1D 수익률 (직전 행 Close 차이 계산)
  · evaluation_dashboard 탭 자동 생성/업데이트 (Date/Total_Asset/KOSPI_Close/
    Portfolio_Return_1D_Pct/KOSPI_Return_1D_Pct/Alpha_1D_Pct/Cumulative_Alpha_Pct/MDD_Pct)
- run_all() Step-8로 연결 (gas_lib.gs), runRebalanceSheet_ 이후 실행

[CI/CD] validate_formula_registry.py 수정 (WBS-5.1 완성)
- spec/formulas/manifest.yaml 신규 생성 (domains/manifest.yaml 동일 내용)
- RetirementAssetPortfolio.yaml에 formula_registry_manifest 등록
- validate_specs.py PASS 복원 → run_release_dag_v3 gate=PASS step_count=55

[CI/CD] Synology Gitea act_runner 환경 최적화
- runs-on: ubuntu-latest → self-hosted (NAS host-based runner)
- actions/setup-python / actions/setup-node 제거 (NAS에 직접 설치)
- python → python3 명시
- actions/checkout@v3 → v4

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-13 16:46:44 +09:00
kjh2064 105daea3d9 Merge pull request '[Sprint-3/4] WBS-3.2/3.4/5.2/5.3: Rebalance V2, MDD Guard, Auto Deploy, Daily Trigger' (#12) from feature/sprint-3-sophistication into main
feat: Sprint-3/4 완결 -- WBS-3.2/3.4/5.2/5.3 (리밸런싱 V2, MDD 가드, 자동 배포, 타이머 트리거)
2026-06-13 16:26:04 +09:00
kjh2064 467e3fd441 feat: WBS-5.3 일일 타이머 트리거 설정 함수 추가
- gdf_06_rebalance.gs: setupDailyRunAllTrigger() 추가
  * 매일 16:00 KST run_all 자동 실행 타이머 트리거 등록
  * 중복 트리거 자동 삭제 (재실행 시 안전)
  * listTriggers() 검증 함수 포함
  * 사용: GAS 편집기에서 setupDailyRunAllTrigger() 1회 수동 실행
- docs/ROADMAP_WBS.md: WBS-5.3 완료 표시

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-13 16:23:39 +09:00
kjh2064 72f8d61244 feat: Sprint-3 완결 + Sprint-4 착수 (WBS-3.2, 3.4, 5.2)
주요 변경:
- [WBS-3.2] 리밸런싱 V2 신호 가중 목표배분 (signal_weighted_ss001_v1)
  * equal_weight -> SS001_Norm_Score 비례 버킷내 배분
  * 하네스: 삼성(36.84%) > SK하이닉스(29.16%), Core=66.00% PASS
- [WBS-3.4] logDailyAssetHistory_ SpreadsheetApp.getActiveSpreadsheet() -> getSpreadsheet_() 수정
  * run_all 컨텍스트에서 null 반환 방지
- [WBS-5.2] deploy_gas.py 전면 재작성
  * src/gas_adapter_parts/ + src/gas/ 양쪽 소스 탐색
  * gdc_01+gdc_02 -> gas_data_collect.gs 번들링
  * dry-run PASS: 17개 파일 WARN 0건
- src/gas/ 디렉토리 신규 추가 (CLASP 조직화 구조)
- tools/automate_routine.py, download_trading_data.py 신규 추가
- .gitignore: .clasprc.json OAuth 토큰 제외 추가
- ROADMAP_WBS.md: Sprint-3 [x] 완료, Sprint-4 착수 목록 추가

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-13 16:22:19 +09:00
kjh2064 cb4787ca2d docs: GEMINI.md에서 로드맵 수정 금지 규칙 삭제 2026-06-13 16:03:25 +09:00
kjh2064 0581edf3c2 docs: ROADMAP_WBS.md를 Sprint-2 완료 상태로 복구 2026-06-13 16:03:25 +09:00
kjh2064 1e047523de [Sprint-3] Complete WBS-2.1, 3.2, 4.1, 5.1 (Code and Instructions Only) 2026-06-13 15:54:14 +09:00
kjh2064 08f4fa2293 [Sprint-3] Complete WBS-2.1, 3.2, 4.1, 5.1 - Fundamental V2, Engine V2, Performance Ledger, and CI/CD 2026-06-13 15:54:14 +09:00
kjh2064 0748c224da Merge pull request 'feat: Sprint-3 (펀더멘털 피드 완성, MDD 모니터링 구축, Gitea CI/CD 파이프라인 추가)' (#11) from feature/wbs-sprint-3 into main
Reviewed-on: http://192.168.123.100:8418/KimJaeHyun/myfinance/pulls/11
2026-06-13 14:35:25 +09:00
kjh2064 c4c5728c61 Merge branch 'main' of http://192.168.123.100:8418/KimJaeHyun/myfinance 2026-06-13 14:32:43 +09:00
kjh2064 c66921fae2 chore: AGENTS.md 수정에 따른 에이전트 룰 해시 갱신 (2026-06-13)
주요 변경 사항:
- governance/agents_rule_hashes.yaml 갱신:
  * tools/build_agents_rule_hashes_v1.py 실행을 통해 AGENTS.md의 신규 하드 룰 추가 반영 및 SHA-256 해시 업데이트
- 검증 결과: tools/validate_agents_rule_hashes_v1.py 실행 결과 AGENTS_RULE_HASH_OK 검증 완료

Co-Authored-By: Antigravity AI <noreply@google.com>
2026-06-13 14:32:39 +09:00
kjh2064 eabacde438 feat: Sprint-3 (펀더멘털 피드 완성, MDD 모니터링 구축, Gitea CI/CD 파이프라인 추가) (2026-06-13)
주요 변경 사항:
- tools/ingest_fundamental_raw.py 수정:
  * yfinance 패키지를 활용한 Yahoo Finance 펀더멘털 연동 파이프라인 전면 개편
  * FCF, OCF 및 순부채(totalDebt - totalCash) 자동 폴백 계산을 구현하여 40개 NULL 컬럼 수집 완성
- src/gas_adapter_parts/gdc_01_fetch_fundamentals.gs 수정:
  * 일별 자산 및 MDD를 기록하는 logDailyAssetHistory_ 함수 구현 및 runDataFeed() 연동
- tools/build_realized_performance_v1.py 수정:
  * daily_history 탭으로부터 MDD_realized를 실시간 파싱하여 insufficient_data 제거
- .gitea/workflows/ci.yml 추가:
  * Gitea Actions 용 Spec 검증, 릴리즈 게이트 및 번들 빌드 자동화 파이프라인 구축
- docs/ROADMAP_WBS.md 수정:
  * WBS-2.1, WBS-3.4, WBS-5.1 과업의 체크박스를 완료[x] 상태로 갱신
- 검증 결과: npm run full-gate (55단계 릴리즈 게이트) PASS 검증 완료

Co-Authored-By: Antigravity AI <noreply@google.com>
2026-06-13 14:31:40 +09:00
kjh2064 64e6d54b67 Merge branch 'feature/wbs-gas-deploy-rule' 2026-06-13 14:31:20 +09:00
kjh2064 d6bc3bb4ef Merge pull request 'feat: GAS 자동 배포 스크립트 작성 및 원격 배포 하드 룰 명시' (#10) from feature/wbs-gas-deploy-rule into main
Reviewed-on: http://192.168.123.100:8418/KimJaeHyun/myfinance/pulls/10
2026-06-13 14:29:11 +09:00
kjh2064 472853826c feat: GAS 자동 배포 스크립트 작성 및 커밋/PR 시 원격 배포 하드 룰 추가 (2026-06-13)
주요 변경 사항:
- tools/deploy_gas.py 추가:
  * clasp를 사용하여 로컬의 8개 .gs 스크립트 파일과 appsscript.json을 원격 Apps Script 프로젝트에 강제 푸시(clasp push -f)하는 자동화 스크립트 작성
- AGENTS.md 수정:
  * 3. 하드 룰 섹션에 커밋, 푸쉬, PR 작업 시 반드시 로컬 .gs 파일을 원격 프로젝트에 업로드하고 사용자가 스프레드시트 상의 스크립트(runDataFeed 등)를 직접 실행해 검증하도록 가이드하는 하드 룰 명시
- 검증 결과: python tools/deploy_gas.py 원격 배포(9개 파일 push) 정상 검증 완료

Co-Authored-By: Antigravity AI <noreply@google.com>
2026-06-13 14:19:18 +09:00
kjh2064 b876d2818c Merge pull request '[WBS-roadmap] Sprint-2 완료 로드맵 갱신' (#9) from feature/wbs-roadmap-sprint2 into main
Reviewed-on: http://192.168.123.100:8418/KimJaeHyun/myfinance/pulls/9
2026-06-13 14:19:11 +09:00
kjh2064 73caa26f8f Merge pull request '[WBS-3.3] 주문 시뮬레이터 tick 정규화 완성' (#8) from feature/wbs-3.3 into main
Reviewed-on: http://192.168.123.100:8418/KimJaeHyun/myfinance/pulls/8
2026-06-13 14:19:01 +09:00
kjh2064 38aaf947ed Merge pull request '[WBS-2.2] US 주식 가격 settings 수동입력 -> 자동 Weight_Pct 연동' (#7) from feature/wbs-2.2 into main
Reviewed-on: http://192.168.123.100:8418/KimJaeHyun/myfinance/pulls/7
2026-06-13 14:18:53 +09:00
kjh2064 af610fa14a Merge pull request '[WBS-2.3] RS(상대강도) 신호 V2 완성' (#6) from feature/wbs-2.3 into main
Reviewed-on: http://192.168.123.100:8418/KimJaeHyun/myfinance/pulls/6
2026-06-13 14:18:44 +09:00
kjh2064 5cc95a8fd0 docs: ROADMAP_WBS.md Sprint-2 완료 상태 및 KPI 갱신 2026-06-13 14:06:15 +09:00
kjh2064 92823e30a3 feat: WBS-3.3 주문 시뮬레이터 tick 정규화 완성 (ETF 및 미국 주식 호가 단위 세분화) 2026-06-13 14:05:30 +09:00
kjh2064 d9e3a43e61 feat: WBS-2.2 US 주식 가격 settings 수동입력 -> 자동 Weight_Pct 연동 2026-06-13 14:05:12 +09:00
kjh2064 99b04195c6 feat: WBS-2.3 RS(상대강도) 신호 V2 완성 (macro 시트 동적 헤더 파싱 및 인코딩 버그 수정) 2026-06-13 14:03:07 +09:00
kjh2064 772c09c792 Merge pull request 'docs: Sprint-1 WBS 과업 완료 및 KPI 성과 갱신' (#5) from feature/wbs-roadmap into main
Reviewed-on: http://192.168.123.100:8418/KimJaeHyun/myfinance/pulls/5
2026-06-13 13:57:56 +09:00
kjh2064 263d7bdc29 Merge pull request 'feat: WBS-1.5 공식 라이프사이클 레지스트리 269개 공식 마이그레이션 및 대조 검증' (#4) from feature/wbs-1.5 into main
Reviewed-on: http://192.168.123.100:8418/KimJaeHyun/myfinance/pulls/4
2026-06-13 13:57:47 +09:00
kjh2064 3ea15e8750 Merge pull request 'feat: WBS-1.4 매도 신호 시 Rule_Sell_Qty 자동 산출' (#3) from feature/wbs-1.4 into main
Reviewed-on: http://192.168.123.100:8418/KimJaeHyun/myfinance/pulls/3
2026-06-13 13:57:36 +09:00
kjh2064 7bd011a45a docs: Sprint-1 WBS 과업 완료 및 KPI 성과 갱신 2026-06-13 13:56:04 +09:00
kjh2064 1f6c5f1a8d feat: WBS-1.5 공식 라이프사이클 레지스트리 269개 공식 마이그레이션 및 대조 검증 2026-06-13 13:55:36 +09:00
kjh2064 512da62fe4 Merge pull request 'feat: WBS-1.3 entry_stage 무관 Time_Stop_Date 디폴트 60일 자동 산출' (#2) from feature/wbs-1.3 into main
Reviewed-on: http://192.168.123.100:8418/KimJaeHyun/myfinance/pulls/2
2026-06-13 13:54:55 +09:00
kjh2064 edcc6348c8 feat: WBS-1.4 매도 신호 시 Rule_Sell_Qty 자동 산출 2026-06-13 13:54:45 +09:00
kjh2064 908b8e0251 Merge pull request 'feat: WBS-1.2 total_asset_krw 실시간 재계산 구현' (#1) from feature/wbs-1.2 into main
Reviewed-on: http://192.168.123.100:8418/KimJaeHyun/myfinance/pulls/1
2026-06-13 13:54:45 +09:00
kjh2064 a67cbee11c feat: WBS-1.3 entry_stage 무관 Time_Stop_Date 디폴트 60일 자동 산출 2026-06-13 13:52:04 +09:00
kjh2064 63de4b922f feat: WBS-1.2 total_asset_krw 실시간 재계산 구현 2026-06-13 13:51:25 +09:00
kjh2064 8979ee7689 docs: 퀀트투자 엔진 전체 로드맵 & WBS & 하네스 성공 기준 작성
- 5개 페이즈 로드맵 (P1 기반경화 → P5 완전자동화)
- 21개 WBS 항목, 각 항목별 데이터 기반 성공 하네스
- 현재 완성도 KPI 매트릭스 (NULL 40→10, lifecycle 9→100%)
- Sprint 1~3 즉시 실행 목록

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-13 13:36:15 +09:00
kjh2064 ee3e799de1 feat: 리밸런싱 엔진 V1 + GAS 버그 수정 (2026-06-13)
주요 변경:
- tools/build_rebalance_engine_v1.py: REBALANCE_ENGINE_V1 신규
  * account_snapshot 직접 합산(_build_snap_position_map) → 소수주 분리 행 병합
  * 레짐 소스 macro.REGIME_PRELIM 최우선 (GAS 와 동일)
- src/gas_adapter_parts/gdf_06_rebalance.gs: runRebalanceSheet_() 신규
  * Logger.log / getSpreadsheet_() 로 run_all 연동 수정
- src/gas_adapter_parts/gdc_01_fetch_fundamentals.gs
  * _mergePositionRecord_(): 소수주 중복 행 합산 신규
  * parseInt → parseFloat (qty, availQty)
- src/gas_adapter_parts/gdf_01_price_metrics.gs
  * 미보유 종목 SELL_READY → WATCH_EXIT_SIGNAL
- spec/41_release_dag.yaml: build_rebalance_sheet 노드 추가 (step_count 63)
- spec/51_formula_lifecycle_registry.yaml: REBALANCE_ENGINE_V1 등록

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-13 13:20:14 +09:00