콘텐츠로 이동

키움 REST API 미시구조 데이터 인벤토리 (S356)

출처: 키움 REST API 문서.pdf (528p, 161 TR) — 1차 문서 직접 확인. 목적: 발산 87개 정량기법의 현실 게이트 — 무엇을 우리 환경에서 실제 수집·계산 가능한가.

핵심 결론

PM 지적 확정: 데이터는 키움이 다 준다. 우리가 메서드를 구현하면 된다. 호가잔량(10단계)·체결강도·틱체결 전부 REST API로 제공. 현재 kiwoom_rest_api.py 래퍼에 미구현일 뿐 — API 차원의 원천 불가가 아니다.

확인된 미시구조 TR (REST)

TR ID 이름 URL 입력 출력 핵심 과거조회
ka10079 주식틱차트조회 /api/dostk/chart stk_cd, tic_scope(1/3/5/10/30틱), upd_stkpc_tp cur_prc·trde_qty·cntr_tm(체결시각)·OHLC cont-yn/next-key 연속조회 ○ (보관기간 실측 필요)
ka10046 체결강도추이 시간별 /api/dostk/mrkcond stk_cd cntr_str(체결강도)·cntr_str_5min·시간별 LIST 당일 시간별
ka10047 체결강도추이 일별 /api/dostk/mrkcond stk_cd cntr_str 일자별(dt) LIST 일별 과거 시계열 ○
ka10020 호가잔량상위 (순위정보) market 등 호가잔량 순위 스냅샷
ka10021 호가잔량급증 (순위정보) 호가잔량 급증 종목 스냅샷
0D 실시간 주식호가잔량 (실시간시세) 종목 등록 10단계 매도/매수 호가+잔량+직전대비 실시간 스트림(적재해야 과거됨)

10단계 호가 필드 (TR 0D / 호가잔량 응답)

  • 매도: sel_1th~10th_pre_bid(호가) + sel_*_pre_req(잔량) + sel_*_pre_req_pre(직전대비). 최우선 sel_fpr_bid/req.
  • 매수: buy_1th~10th_pre_bid + buy_*_pre_req + buy_*_pre_req_pre. 최우선 buy_fpr_bid/req.
  • 기준시간 bid_req_base_tm. → OBI(호가불균형)·Microprice·VAMP 계산에 충분한 10레벨 깊이.

데이터 성격별 분류 (87 기법 게이트용)

A. 즉시 계산 가능 (과거 시계열 확보됨)

  • 체결강도 일별(ka10047): 과거 일별 시계열 → 체결강도 기반 지표 백테스트 가능.
  • 틱차트(ka10079): 연속조회로 과거 틱 끌어옴(보관범위 한정). 틱 단위 부호화·CVD·VPIN·Lee-Ready 근사.
  • 기존 30분봉 OHLCV(data/minute_charts/30min, 419종목): clv 근사만(매수/매도 구분 없음).

B. 적재부터 해야 함 (실시간만, 과거 안 줌)

  • 실시간 호가(0D): 지금부터 받아 매일 적재해야 과거 호가창 시계열 생성. → OFI/OBI/Microprice는 라이브 적재 후 검증 가능. 과거 백테스트 불가(호가 스냅샷 과거 미제공 추정).
  • 체결강도 시간별(ka10046): 당일 시간별 — 매일 적재 누적.

C. 실측 필요 (문서에 보관기간 명시 없음)

  • ka10079 틱차트가 며칠치까지 과거를 주는가 (당일만? N일?). → 실호출로 확인.
  • 틱 응답의 매수/매도 구분 필드 유무 (cntr_tm·trde_qty는 있으나 aggressor flag는 미확인).

함의 (수렴 단계 입력)

  1. 호가 의존 기법(OFI/OBI/Microprice/VAMP) = 데이터 원천 ○, 단 실시간 적재 파이프 신설 필요. 과거 백테스트는 적재 이후부터.
  2. 틱 의존 기법(CVD틱판/VPIN/Lee-Ready/Kyle's λ) = ka10079로 가능하나 과거 보관범위가 검증 가능 기간을 제한.
  3. 일봉만으로 되는 기법(Amihud/Corwin-Schultz/Roll/제곱근충격) = 즉시 적용·즉시 백테스트 가능. 우선순위 1순위 후보.
  4. 체결강도 = 키움 고유 제공값(우리가 재현 불필요). ka10047로 과거 시계열 즉시 확보.