* 전체적인 흐름은 아래와 같이 갈 예정
위 프로그램 만들기 위해서 대략 3개월 잡고 공부할 예정이고,
전체 로드맵은 아래와 같다
- (1~2주차)
hase 1. 금융/퀀트 기초
2~4주
여기서는 일반적인 주식 입문이 아니라 퀀트 관점으로 공부해.
반드시 이해할 것
- OHLCV
- 수익률
- 로그수익률
- 변동성
- 상관관계
- 공분산
- 베타
- Sharpe ratio
- Sortino ratio
- MDD
- CAGR
- VaR / CVaR
- 포지션
- 익스포저
- 레버리지
- turnover
- 거래비용
- 슬리피지
그리고 특히
시장 미시구조
이게 중요해.
- Bid / Ask
- Spread
- 호가
- 체결
- Market Order
- Limit Order
- Market Impact
- Liquidity
- Order Book
- VWAP
- TWAP
- (3~4주차) 퀀트 전략 짜기
Phase 2. 퀀트 전략
3~6주
여기부터 재미있을 거야.
전략을 크게 나눠서 이해하면 된다.
① Momentum
상승하는 종목이
계속 상승하는 경향을 이용
② Mean Reversion
과도하게 움직인 가격이
평균으로 돌아오는 현상 이용
③ Trend Following
추세가 발생하면
추세를 따라가는 전략
④ Statistical Arbitrage
통계적으로 관계가 있는 자산 간
가격 괴리를 이용
⑤ Factor Investing
Value
Momentum
Quality
Size
Low Volatility
...
⑥ Event Driven
실적
공시
배당
수급
기업 이벤트
이 정도를 직접 구현해봐야 한다.
- (4~6주차) 백테스트 수행
Phase 3. 제대로 된 백테스트 엔진 만들기
4~8주
여기가 첫 번째 핵심 프로젝트야.
단순히 Backtrader를 사용하는 것보다 한번 직접 백테스트 엔진을 만들어보는 것을 추천한다.
예를 들어:
Data
↓
Signal
↓
Position
↓
Portfolio
↓
Order
↓
Transaction Cost
↓
PnL
↓
Performance
구조를 직접 만들어.
예를 들어
전략:
20일 모멘텀 상위 10개 종목 매수
그러면
T일
↓
Universe 구성
↓
Data preprocessing
↓
Signal 생성
↓
Ranking
↓
Top 10 선정
↓
Position sizing
↓
Transaction cost
↓
Portfolio PnL
↓
Risk metrics
이 과정을 코드로 구현하는 거야.