본문 바로가기
Quant

Chapter 2. 시장 데이터와 기본 데이터: 소스와 기법

by Night Fury 2023. 6. 11.
스테판 젠슨, 『퀀트 투자를 위한 머신러닝·딥러닝 알고리듬 트레이딩 2/e』, 이기홍, 홍창수, 에이콘출판사(2022), p75-126.

✅ 전통적인 전략

  • 주식 재무제표 데이터를 기반으로 재무 모델을 구축
    • 산업 or 매크로 데이터와 결합하기도함
  • 기술적 분석을 이용해 주가와 거래량으로부터 계산된 지표들을 사용해 시장 데이터에서 신호를 추출

✅ 트레이딩 방법

  • 시장가 주문 (market order): 주문이 거래 플랫폼에 도달하는 순간, 가능한 시장가격으로 즉시 체결 보장
  • 지정가 주문 (limit order)
    • 매수: 시장 가격이 지정가보다 작은 경우에만 체결
    • 매도: 시장 가격이 지정가보다 큰 경우에만 체결
  • 스탑 주문 (stop order)
    • 매수: 시장 가격이 지정가보다 높은 경우에 활성화
    • 매도: 시장 가격이 지정가보다 낮은 경우에 활성화
    • 공매도 (short sale)의 손실을 막고자 사용할 수 있음
  • 모두 or 취소 주문 (all or none order)
    • 부분 체결을 방지
    • 특정 주식수가 가능할 때만 체결
    • 하루 or 그 이상 유효
  • 즉시 모두 체결 or 취소 주문 (fill or kill order)
    • 부분 체결을 방지
    • 즉시 체결되지 않으면 취소됨
    • 매매 가능한 주식수를 즉시 매수 or 매도하고 나머지는 취소
  • 재량 주문 (not-held order): 브로커가 체결의 시점과 가격을 결정 할 수 있게함
  • 시가 or 종가 시장 주문 (market on open/close order)
    • 시장의 개장 시점이나 종료 시점 또는 근처에서 체결
    • 부분 체결이 허용됨

✅ 고빈도 데이터

  • 호가:
    • 시장 데이터의 가장 중요한 소스
    • 미국 주식시장 데이터 종류
      • L1 (Level1): 실시간 매수와 매도 호가 정보
      • L2 (Level2): L1 + 주식 유동성 정보 (최근 거래 크기 및 시간)
      • L3 (Level3): L2 + 주문 실행 및 호가를 넣거나 변경 가능
  • FIX 프로토콜: 시장 참여자 간의 거래 체결 관련 소통을 위한 메시징 표준
    • 메시지 시퀀스로 호가창을 재구성 가능
    • 프로토콜 종류
      • Key-value
      • 태그 기반 FIXML

✅ Nasdaq 데이터

  • Nasdaq TotalView-ITCH: 나스닥에서 개별 주문을 추적할 수 있게해주는 직접 데이터 피드 프로토콜
    • 호가창 재구성 가능
      • 호가창: 가격별로 매수 or 매도 호가되는 주식의 수를 보여줌으로써 장중 시장의 깊이를 알려줌
      • 시장의 깊이: 유동성과 대규모 시장가 주문의 잠재적 가격 영향을 파악하는 핵심 지표
    • 이진 주문 메시지 형식
      • python struct 모듈
  • Normalization
    • 거래 데이터는 나노초 단위 → noise가 많음 → tick 데이터의 주기를 바꾸고 정규화 필요
    • 거래량 Bar: 주문 파편화 고려
      • 시간 Bar는 잡음을 평활화하지만, 파편화된 주문 처리를 하지 못함
    • 거래 금액 Bar: 가격 변화를 고려
      • 거래량 Bar는 자산 가격이 크게 변하거나 주식 분할이 일어난 후 주식 수의 가치가 변하는 사실과 트레이딩 행태를 반영하지 못함
      • 주식 수와 가격의 곱을 이용한 거래 금액 Bar로 조정

✅ 시장 Open API

  • yfinance: 야후 파이낸스에서 과거 시장 데이터를 제공
    • Ticker로 데이터 포인트 다운로드
    • history 메서드로 다양한 기간과 빈도로 과거 가격을 얻을 수 있음
    • 옵션 만기일, 가격 계약 등 정보 제공
    • 프록시 서버의 사용을 허용
  • Quantopian (퀀토피안)
    • 데이터 소스를 사용해 트레이딩 아이디어 연구 가능
    • 백테스트 가능
    • 실시간 데이터로 표본 외 데이터에 대해 포워드 테스트 가능
    • 페이퍼 트레이딩
      • 실시간 데이터로 알고리즘을 시뮬레이션 가능
    • 2020년에 문 닫음 → 웹 사이트 없음
      • ziplien, alphalens, pyfolio, empirical에 의해 원래 기능이 유지되고 있음
  • Zipline (집라인)
    • Quantopian 백테스트와 실시간 트레이딩 플랫폼을 작동시키는 알고리즘 트레이딩 라이브러리
    • 오프라인에서도 사용 가능
      • 트레이딩 아이디어의 성과 테스트 가능
  • Quandl (퀀들)
    • 광범위한 데이터 소스를 무료로 제공
      • API 등록 시, 하루 50회 이상 무료로 호출 가능
    • 여러 자산군을 커버
      • 외환, 채권, 지수, 선물, 옵션, 상품
    • 사용이 간편함
    • 문서화가 잘 되어 있음
    • 유연한 라이브러리
      • 단일/벌크 다운로드 + 메타 데이터 탐색 가능

✅ 기본 데이터 작업

  • 기본 데이터의 성격은 자산에 달려있음
    • 주식, 기업 credit → 재무 및 산업과 경제 전반
    • 정부채 → 국제 거시 경제, 외환
    • 상품 → 수확 시기의 날씨, 자산 특화된 수급 결정 팩터
  • 재무제표 데이터
    • SEC가 공개한 XBRL 활용
    • 재무제표: 대차대조표, 손익계산서, 현금 흐름표, 지분변동 및 종합소득
  • 거시 경제 및 산업 데이터
    • pandas_datareader 활용
    • 케네스 프렌치 교수 데이터
    • FRED: 미국 연준 데이터
    • 세계은행
    • OECD
    • 에니그마
    • 유로스탯

Reference

반응형

댓글