kjh2064 670ab8e15a WBS-7.8: ETF NAV/공매도 잔고율 자동화 실측 + 운영절차 문서화
"자동화가 안 되면 차후 개선 목표로" 라는 지시에 따라 추정이 아니라
실제로 pykrx(이미 EOD 가격조회에 쓰이는 동일 라이브러리)의
get_shorting_balance()/get_etf_price_deviation()/get_etf_tracking_error()를
호출해 재시도했다. 기본 시세조회는 정상 작동하지만 이 세 함수는 세션
부트스트랩 후에도 HTTP 400 LOGOUT을 반환 — KRX 회원 로그인이 필요한
서버측 인증 게이트임을 raw HTTP로 재현 확인했다(헤더/세션 문제 아님).
자동화하려면 KRX 계정을 자격증명으로 등록해야 하는데, 이는
governance/rules/06·07과 같은 종류의 새 정책 결정이라 사용자 승인
없이 추가하지 않고 개선 목표로 이관한다(next_review_date: 2026-09-30).

- spec/16_data_gaps_roadmap.yaml S4/S5: automation_attempt_2026_06_22
  필드에 재현 절차 기록, next_review_action을 "API 키 발급"이 아니라
  "KRX 계정 발급·자격증명 관리 정책 승인 여부"로 재구성
- docs/runbook.md: 공매도 잔고율 주1회(매주 월요일 개장 전) CSV 수동
  갱신, ETF NAV 수동 import(tools/import_etf_nav_manual.py) 운영절차 명문화
2026-06-21 20:10:27 +09:00
2026-06-18 01:47:50 +09:00
2026-06-18 01:47:50 +09:00
2026-06-18 01:47:50 +09:00
2026-06-18 01:47:50 +09:00

Core/Satellite Collector v4

은퇴자산용 코어/위성 후보 데이터 수집기입니다.

v4 기본 정책

  • 파라미터 없이 실행
  • 1차 유니버스: KOSPI 160개 + KOSDAQ 40개
  • 최종 후보: 100개
  • 최종 후보 내 KOSDAQ: 최대 20개
  • 1차 탐색 총량은 v3와 동일한 200개로 유지하여 호출 수 증가를 막습니다.

설치

npm install
node core_satellite_collector.js

OpenDART 공시까지 확인하려면:

$env:DART_API_KEY="발급받은키"
node core_satellite_collector.js

운영 표준

릴리즈와 패키징의 기준 진입점은 아래를 사용합니다.

npm run ops:release

릴리즈 DAG의 엄격 판정이 필요하면 아래를 사용합니다.

npm run full-gate

패키지 생성은 아래를 사용합니다.

npm run prepare-upload-zip

ops:release는 릴리즈 DAG 전체를 실행하고, 일부 warn_only 검증은 PASS_WITH_WARNINGS로 기록합니다. full-gatevalidate-engine-strict는 엄격 모드로 동일한 릴리즈 DAG를 재검증합니다.

추가 스크립트:

  • npm run ops:package
  • npm run ops:validate
  • npm run ops:build
  • npm run render-report-json
  • npm run validate-proposal-reference
  • npm run validate-gas-call-arity

GAS 반영 체크리스트

proposal_reference_json을 실제 하네스 출력으로 승격하려면 아래 순서를 따릅니다.

  1. Apps Script에 최신 gas_harness_rows.gs 반영
  2. Apps Script에서 runHarnessRefresh_() 실행
  3. Google Sheets harness_context 시트에 아래 키 생성 확인
    • proposal_reference_json
    • proposal_reference_lock
  4. 로컬에서 npm run ops:prepare 실행
  5. npm run ops:release 실행
  6. npm run full-gate 실행
  7. 최종 운영 전환 시 npm run prepare-upload-zip로 패키지 생성 여부를 확인

운영 리포트 계약

운영 리포트는 사람이 읽는 Temp/operational_report.md와 기계 검증용 Temp/operational_report.json을 함께 생성합니다.

  • operational_report.json이 canonical 계약입니다.
  • operational_report.md는 표시용 렌더입니다.
  • JSON 스키마는 schemas/operational_report.schema.json을 사용합니다.
  • 계약 드리프트 검사는 npm run validate-operational-report-contract로 수행합니다.
  • 전체 게이트에는 render-report-json -> validate-report-json -> validate-report-quality -> validate-report-sync 순서가 포함됩니다.

전환 기준:

  • validate-proposal-reference 결과와 ops:release 결과를 함께 봅니다.
  • prepare-upload-zipPASS_WITH_WARNINGS를 출력하면 warn_only 검증 이슈가 남아 있는 상태입니다.
S
Description
퀀트 투자 엔진
Readme 28 MiB
Languages
Python 63.5%
JavaScript 31.8%
C# 3.7%
HTML 0.4%
PowerShell 0.2%
Other 0.4%