장바구니 담기 close

장바구니에 상품을 담았습니다.

R을 이용한 퀀트 투자 포트폴리오 만들기

R을 이용한 퀀트 투자 포트폴리오 만들기

  • 이현열
  • |
  • 제이펍
  • |
  • 2021-02-11 출간
  • |
  • 368페이지
  • |
  • 170 X 225 X 182 mm
  • |
  • ISBN 9791190665803
판매가

25,000원

즉시할인가

22,500

배송비

무료배송

(제주/도서산간 배송 추가비용:3,000원)

수량
+ -
총주문금액
22,500

※ 스프링제본 상품은 반품/교환/환불이 불가능하므로 신중하게 선택하여 주시기 바랍니다.

출판사서평




실제 퀀트 포트폴리오 매니저 출신이 알려주는
퀀트 투자 기초부터 고급까지, 모든 것을 한 방에!!

개정판의 주요 변경 사항
■ 변경된 한국거래소 사이트에 맞춰 새로 작성
■ 웹페이지 구조가 변경되어 크롤링이 불가능하게 된 곳을 삭제
■ 네이버 증권의 주가 데이터 출처가 변경되어 새로 작성
■ 크롤러의 접근이 어려운 곳은 user_agent() 함수로 크롤링할 수 있도록 변경
■ DART 크롤링 내용 추가
■ 실전에서 많이 사용되는 인덱스 포트폴리오 및 인핸스드 인덱스 포트폴리오 구성 방법 추가
■ ggplot2 패키지의 기본적인 사용법 추가
■ 일부 코드를 수정하여 데이터 처리를 좀 더 쉽게, 종목 선택을 더욱 꼼꼼히 하도록 변경

1. R을 이용해 주식 투자에 필요한 각종 데이터를 크롤링하여 수집하고 정리할 수 있다!
여러 프로그래밍 언어 중 R은 무료이며 비교적 일반 사용자가 사용하기 쉬운 형태로 구성되어 있습니다. 무엇보다 독보적으로 통계나 계량분석과 관련된 패키지를 포함하고 있다는 장점이 있습니다. 이런 R을 활용하여 직접 금융 데이터를 크롤링하여 수집할 수 있습니다. 단순히 데이터를 수집하는 데 그치지 않고 데이터를 분석하고 시각화하여 효과적인 투자 전략을 세울 수 있도록 데이터를 정리할 수 있습니다. 단, 이 책은 R과 R Studio 설치 등 기초적인 프로그래밍 내용은 생략합니다. 그러므로 R 기초 프로그래밍을 먼저 익힌 후 학습한다면 더욱 효과적입니다.

2. 퀀트 모델을 통해 포트폴리오를 구성하고, 백테스트 및 성과를 평가할 수 있다!
실제 퀀트 포트폴리오 매니저 출신이 알려주면 다릅니다. 데이터를 준비했다면 이제 어떤 종목에 투자해야 할지 선정합니다. 이 책은 퀀트 전략을 이용한 종목 선정을 기본부터 심화 과정으로 나눠 자세하게 설명합니다. 또한 포트폴리오 구성부터 백테스트 및 성과 평가까지 퀀트 투자를 위한 거의 모든 과정을 제대로 배울 수 있습니다.

3. 퀀트 모델에 대한 이해를 높이고, 코드를 통해 실제 구현할 수 있다!
가장 기본적인 퀀트 투자가 무엇인지부터 시작하여, 데이터 수집, 정리, 분석 및 시각화, 종목 선정, 포트폴리오 구성, 백테스트 및 성과 평가 등의 전 과정을 체계적으로 학습하면서 퀀트 모델에 대한 전반적인 이해도를 높일 수 있습니다. 또한 프로그래밍 초보자를 고려하여 코드에 따라 자세한 설명을 추가하였습니다. 이를 잘 학습한다면 책의 내용을 넘어 더욱 훌륭한 퀀트 투자 모델을 만들어 볼 수 있을 것입니다.

4. 웹페이지를 통한 지속적인 업데이트 및 전체 소스 제공!
퀀트 투자 환경은 빠르게 변하지만 고정된 지면으로는 변화에 빠른 대처가 어렵습니다. 그러므로 다음과 같이 저자가 제공하는 웹페이지를 통해 업데이트된 내용이나 변화된 환경에 대응할 수 있습니다.
웹페이지: https://hyunyulhenry.github.io/quant_cookbook
GitHub 저장소: https://github.com/hyunyulhenry/quant_cookbook

이 책의 대상 독자
- R을 이용해 퀀트 투자 전략을 세우려는 분
- 퀀트 투자를 하고 싶지만 데이터 구매 비용에 부담을 느끼는 분
- 퀀트 투자, 제대로 알고 시작하고 싶으신 분
- R을 이용해 데이터 크롤링하는 방법을 알고 싶으신 분
- R 데이터 수집 및 가공, 시각화를 실습해 보고 싶으신 분


목차


머리말 XI
이 책의 구성 XIII
이 책에 대하여 XV

CHAPTER 1 퀀트 투자의 심장: 데이터와 프로그래밍 _ 001
1.1 데이터 구하기 003
1.2 퀀트 투자와 프로그래밍 005
1.3 R 프로그램 006
1.4 퀀트 투자에 유용한 R 패키지 008

CHAPTER 2 크롤링을 위한 기본 지식 _ 011
2.1 인코딩의 이해와 R에서 UTF-8 설정하기 012
2.1.1 인간과 컴퓨터 간 번역의 시작, ASCII ㆍ 012
2.1.2 한글 인코딩 방식의 종류 ㆍ 013
2.1.3 R에서 UTF-8 설정하기 ㆍ 014
2.2 웹의 동작 방식 015
2.2.1 HTTP ㆍ 016
2.3 HTML과 CSS 017
2.3.1 HTML 기본 구조 ㆍ 018
2.3.2 태그와 속성 ㆍ 019
2.3.3 h 태그와 p 태그 ㆍ 019
2.3.4 리스트를 나타내는 ul 태그와 ol 태그 ㆍ 020
2.3.5 table 태그 ㆍ 021
2.3.6 a 태그와 src 태그 및 속성 ㆍ 023
2.3.7 div 태그 ㆍ 024
2.3.8 CSS ㆍ 025
2.3.9 클래스와 id ㆍ 026
2.4 파이프 오퍼레이터(%〉%) 028
2.5 오류에 대한 예외처리 031

CHAPTER 3 API를 이용한 데이터 수집 _ 033
3.1 API를 이용한 Quandl 데이터 다운로드 034
3.2 getSymbols() 함수를 이용한 API 다운로드 035
3.2.1 주가 다운로드 ㆍ 036
3.2.2 국내 종목 주가 다운로드 ㆍ 039
3.2.3 FRED 데이터 다운로드 ㆍ 041

CHAPTER 4 크롤링 이해하기 _ 045
4.1 GET과 POST 방식 이해하기 046
4.1.1 GET 방식 ㆍ 046
4.1.2 POST 방식 ㆍ 048
4.2 크롤링 예제 050
4.2.1 금융 속보 크롤링 ㆍ 050
4.2.2 기업공시채널에서 오늘의 공시 불러오기 ㆍ 053
4.2.3 네이버 금융에서 주식티커 크롤링 ㆍ 056

CHAPTER 5 금융 데이터 수집하기(기본) _ 067
5.1 한국거래소의 산업별 현황 및 개별지표 크롤링 067
5.1.1 업종분류 현황 크롤링 ㆍ 068
5.1.2 개별종목 지표 크롤링 ㆍ 072
5.1.3 최근 영업일 기준 데이터 받기 ㆍ 074
5.1.4 거래소 데이터 정리하기 ㆍ 078
5.2 WICS 기준 섹터 정보 크롤링 083

CHAPTER 6 금융 데이터 수집하기(심화) _ 089
6.1 수정주가 크롤링 089
6.1.1 개별종목 주가 크롤링 ㆍ 090
6.1.2 전 종목 주가 크롤링 ㆍ 095
6.2 재무제표 및 가치지표 크롤링 097
6.2.1 재무제표 다운로드 ㆍ 097
6.2.2 가치지표 계산하기 ㆍ 103
6.2.3 전 종목 재무제표 및 가치지표 다운로드 ㆍ 107
6.3 DART의 Open API를 이용한 데이터 수집하기 111
6.3.1 API Key발급 및 추가하기 ㆍ 111
6.3.2 고유번호 다운로드 ㆍ 113
6.3.3 공시검색 ㆍ 116
6.3.4 사업보고서 주요 정보 ㆍ 121
6.3.5 상장기업 재무정보 ㆍ 123
6.3.6 단일회사 전체 재무제표 ㆍ 128

CHAPTER 7 데이터 정리하기 _ 135
7.1 주가 정리하기 135
7.2 재무제표 정리하기 137
7.3 가치지표 정리하기 141

CHAPTER8 데이터 분석 및 시각화하기 _ 145
8.1 종목정보 데이터 분석 146
8.1.1 *_join(): 데이터 합치기 ㆍ 146
8.1.2 glimpse(): 데이터 구조 확인하기 ㆍ 148
8.1.3 rename(): 열 이름 바꾸기 ㆍ 149
8.1.4 distinct(): 고유한 값 확인 ㆍ 150
8.1.5 select(): 원하는 열만 선택 ㆍ 150
8.1.6 mutate(): 열 생성 및 데이터 변형 ㆍ 152
8.1.7 filter(): 조건을 충족하는 행 선택 ㆍ 153
8.1.8 summarize(): 요약 통곗값 계산 ㆍ 154
8.1.9 arrange(): 데이터 정렬 ㆍ 154
8.1.10 row_number(): 순위 계산 ㆍ 155
8.1.11 ntile(): 분위수 계산 ㆍ 156
8.1.12 group_by(): 그룹별로 데이터를 묶기 ㆍ 156
8.2 ggplot() 기초 158
8.2.1 diamonds 데이터셋 ㆍ 160
8.2.2 Data, Aesthetics, Geometrics ㆍ 161
8.2.3 Facets ㆍ 164
8.2.4 Statistics ㆍ 164
8.2.5 Coordinates ㆍ 165
8.2.6 Theme ㆍ 167
8.3 종목정보 시각화 168
8.3.1 geom_point(): 산점도 나타내기 ㆍ 168
8.3.2 geom_histogram(): 히스토그램 나타내기 ㆍ 170
8.3.3 geom_boxplot(): 박스 플롯 나타내기 ㆍ 172
8.3.4 dplyr과 ggplot을 연결해 사용하기 ㆍ 173
8.3.5 geom_bar(): 막대 그래프 나타내기 ㆍ 174
8.4 주가 및 수익률 시각화 176
8.4.1 주가 그래프 나타내기 ㆍ 176
8.4.2 인터랙티브 그래프 나타내기 ㆍ 178
8.4.3 연도별 수익률 나타내기 ㆍ 181

CHAPTER 9 퀀트 전략을 이용한 종목 선정(기본) _ 185
9.1 베타 이해하기 187
9.1.1 베타 계산하기 ㆍ 189
9.1.2 베타 시각화 ㆍ 191
9.2 저변동성 전략 192
9.2.1 저변동성 포트폴리오 구하기: 일간 기준 ㆍ 194
9.2.2 저변동성 포트폴리오 구하기: 주간 기준 ㆍ 197
9.3 모멘텀 전략 199
9.3.1 모멘텀 포트폴리오 구하기: 12개월 모멘텀 ㆍ 200
9.3.2 모멘텀 포트폴리오 구하기: 위험조정 수익률 ㆍ 202
9.4 밸류 전략 205
9.4.1 밸류 포트폴리오 구하기: 저PBR ㆍ 206
9.4.2 각 지표 결합하기 ㆍ 207
9.5 퀄리티 전략 210
9.5.1 F-Score 지표 ㆍ 210
9.5.2 각 지표 결합하기 ㆍ 216

CHAPTER 10 퀀트 전략을 이용한 종목 선정(심화) _ 219
10.1 섹터 중립 포트폴리오 219
10.2 마법공식 223
10.2.1 퀄리티와 밸류 간의 관계 ㆍ 224
10.2.2 마법공식 이해하기 ㆍ 226
10.2.3 마법공식 구성하기 ㆍ 227
10.3 이상치 데이터 제거 및 팩터의 결합 231
10.3.1 트림(Trim): 이상치 데이터 삭제 ㆍ 232
10.3.2 윈저라이징(Winsorizing): 이상치 데이터 대체 ㆍ 233
10.3.3 팩터의 결합 방법 ㆍ 234
10.4 멀티팩터 포트폴리오 236

CHAPTER 11 포트폴리오 구성 _ 247
11.1 최소분산 포트폴리오 250
11.1.1 slsqp() 함수를 이용한 최적화 ㆍ 250
11.1.2 solve.QP() 함수를 이용한 최적화 ㆍ 254
11.1.3 optimalPortfolio() 함수를 이용한 최적화 ㆍ 259
11.1.4 결괏값들의 비교 ㆍ 261
11.1.5 최소 및 최대 투자비중 제약조건 ㆍ 262
11.1.6 각 자산별 제약조건의 추가 ㆍ 265
11.2 최대분산효과 포트폴리오 267
11.2.1 solve.QP() 함수를 이용한 최적화 ㆍ 270
11.2.2 optimalPortfolio() 함수를 이용한 최적화 ㆍ 272
11.2.3 최소 및 최대 투자비중 제약조건 ㆍ 273
11.2.4 각 자산별 제약조건의 추가 ㆍ 276
11.3 위험균형 포트폴리오 278
11.3.1 주식 60%와 채권 40% 포트폴리오의 위험기여도 ㆍ 279
11.3.2 rp() 함수를 이용한 최적화 ㆍ 280
11.3.3 위험예산 포트폴리오 ㆍ 282
11.4 인덱스 포트폴리오 구성하기 283
11.4.1 시가총액비중 계산하기 ㆍ 284
11.4.2 인덱스 포트폴리오 복제하기 ㆍ 284
11.4.3 팩터를 이용한 인핸스드 포트폴리오 구성하기 ㆍ 289

CHAPTER 12 포트폴리오 백테스트 _ 303
12.1 Return.portfolio() 함수 304
12.1.1 인자 목록 살펴보기 ㆍ 304
12.1.2 출력값 살펴보기 ㆍ 306
12.2 전통적인 60대40 포트폴리오 백테스트 306
12.3 시점 선택 전략 백테스트 311
12.4 동적 자산배분 백테스트 317

CHAPTER 13 성과 및 위험 평가 _ 325
13.1 결과 측정 지표 328
13.1.1 수익률 및 변동성 ㆍ 328
13.1.2 낙폭과 최대낙폭 ㆍ 332
13.1.3 연도별 수익률 ㆍ 334
13.1.4 승률 및 롤링 윈도우 값 ㆍ 336
13.2 팩터 회귀분석 및 테이블로 나타내기 338

참고문헌 342
찾아보기 346

교환 및 환불안내

도서교환 및 환불
  • ㆍ배송기간은 평일 기준 1~3일 정도 소요됩니다.(스프링 분철은 1일 정도 시간이 더 소요됩니다.)
  • ㆍ상품불량 및 오배송등의 이유로 반품하실 경우, 반품배송비는 무료입니다.
  • ㆍ고객님의 변심에 의한 반품,환불,교환시 택배비는 본인 부담입니다.
  • ㆍ상담원과의 상담없이 교환 및 반품으로 반송된 물품은 책임지지 않습니다.
  • ㆍ이미 발송된 상품의 취소 및 반품, 교환요청시 배송비가 발생할 수 있습니다.
  • ㆍ반품신청시 반송된 상품의 수령후 환불처리됩니다.(카드사 사정에 따라 카드취소는 시일이 3~5일이 소요될 수 있습니다.)
  • ㆍ주문하신 상품의 반품,교환은 상품수령일로 부터 7일이내에 신청하실 수 있습니다.
  • ㆍ상품이 훼손된 경우 반품 및 교환,환불이 불가능합니다.
  • ㆍ반품/교환시 고객님 귀책사유로 인해 수거가 지연될 경우에는 반품이 제한될 수 있습니다.
  • ㆍ스프링제본 상품은 교환 및 환불이 불가능 합니다.
  • ㆍ군부대(사서함) 및 해외배송은 불가능합니다.
  • ㆍ오후 3시 이후 상담원과 통화되지 않은 취소건에 대해서는 고객 반품비용이 발생할 수 있습니다.
반품안내
  • 마이페이지 > 나의상담 > 1 : 1 문의하기 게시판 또는 고객센터 1800-7327
교환/반품주소
  • 경기도 파주시 문발로 211 1층 / (주)북채널 / 전화 : 1800-7327
  • 택배안내 : CJ대한통운(1588-1255)
  • 고객님 변심으로 인한 교환 또는 반품시 왕복 배송비 5,000원을 부담하셔야 하며, 제품 불량 또는 오 배송시에는 전액을 당사에서부담 합니다.