본문 바로가기

r

[퀀트] R을 활용한 퀀트 투자 포트폴리오 만들기 (6) Chapter 6 금융 데이터 수집하기 (심화) 6.1 수정주가 크롤링 이번 챕터에서는 수정주가, 재무제표, 가치지표를 크롤링함 국내 중소형주나 종목의 수정주가를 크롤링하기 위해 네이버 금융판을 이용함 6.1.1 개별종목 주가 크롤링 네이버 금융의 차트 탭에서 사용하는 데이터를 url에서 확인 > 날짜별 수정주가 기준의 시가, 고가, 저가, 종가, 거래량 데이터를 받아옴 이때 다른 종목의 데이터를 받아오고 싶다면 url 주소의 symbol= 뒤 티커만 변경해주면 됨 library(stringr) # 이전 챕터에서 저장한 파일 불러오기 KOR_ticker = read.csv('data/KOR_ticker.csv', row.name = 1) print(KOR_ticker$'종목코드'[1]) (결과) 6자리 .. 더보기
[퀀트] R을 활용한 퀀트 투자 포트폴리오 만들기 (5) Chapter 5 금융 데이터 수집하기 (기본) 5.1 한국거래소의 산업별 현황 및 개별지표 크롤링 5.1.1 산업별 현황 크롤링 산업별 현황 페이지에서 OTP를 받고 이를 통해 데이터를 다운로드함 library(httr) library(rvest) library(readr) # 항목을 제출할 url gen_otp_url = 'http://marketdata.krx.co.kr/contents/COM/GenerateOTP.jspx' # f12 화면의 쿼리 내용을 리스트 형태로 입력 gen_otp_data = list( name = 'fileDown', filetype = 'csv', #기존 xls에서 변경 url = 'MKD/03/0303/03030103/mkd03030103', tp_cd = 'ALL',.. 더보기
[퀀트] R을 활용한 퀀트 투자 포트폴리오 만들기 (3) Chapter 3 API를 이용한 데이터 수집 API는 주소를 갖고 있는 사람이라면 누구나 이용할 수 있고 접근 속도가 빠르며 데이터 가공이 수월하다는 장점이 있음 대부분의 해외 금융 기업은 데이터를 API로 제공하기 때문에 퀀트 투자에 API의 이해는 필수! 3.1 API를 이용한 Quandl 데이터 다운로드 Quandl은 API로 데이터를 무료로 제공하는 업체 R에서 바로 애플의 주가 데이터 다운로드하는 것이 효율적 url.aapl = "https://www.quandl.com/api/v3/datasets/WIKI/AAPL/data.csv?api_key=xw3NU3xLUZ7vZgrz5QnG" data.aapl = read.csv(url.aapl) head(data.appl) Date Open High.. 더보기
[퀀트] R을 활용한 퀀트 투자 포트폴리오 만들기 (4) Chapter 4 크롤링 이해하기 크롤링에서 서버에 파일을 요청하는 방법은 크게 GET과 POST 방식이 있음 4.1.1 GET 방식 인터넷 주소를 기준으로 파일을 요청하는 방식요청 쿼리는 주로 &, ? 형식으로 결합되어 서버에 전달함&[GET 방식 사용]skinType[입력 종류]=business[입력값]?skinType=derivative < 탭 변경 시?skinType=derivative&sdate[검색시작시점]=2020-07-03&edate[검색종료시점]=2020-08-03&order_type=&now_page[현재 페이지]=2 4.1.2 POST 방식 사용자가 필요한 값을 추가해 요청하는 방식 요청 쿼리가 body 부분에 있으므로 그 내역을 직접 볼 수 없음 날짜를 변경해 검색해도 웹 페이지 주.. 더보기
[퀀트] R을 활용한 퀀트 투자 포트폴리오 만들기 (2) Chapter 2 크롤링을 위한 기본 지식 2.1 인코딩의 이해와 R에서 UTF-8 설정하기 2.1.1 인간과 컴퓨터 간 번역의 시작, ASCII 인코딩: 인간언어를 컴퓨터 언어(0, 1)로 디코딩: 인코딩의 반대 번역의 시초는 ASCII(American Standard Code for Information Interchange) 0~127까지의 숫자에 단어 및 특수문자를 부여한 체계로 영어 알파벳만을 지원함 2.1.2 한글 인코딩 방식의 종류 ‘알’이라는 글자를 ‘알’로 표현하는 완성형, ‘ㅇ+ㅏ+ㄹ’로 표현하는 조합형 1) EUC-KR 현대 한글에서 많이 쓰이는 문자엠나 번호를 붙임 모든 자모 조합을 표현하기 부족 2) CP949 EUC-KR을 보완하기 위해 MS가 개발 더 많은 한글을 표현할 수 있.. 더보기
[퀀트] R을 활용한 퀀트 투자 포트폴리오 만들기 (1) https://hyunyulhenry.github.io/quant_cookbook/ R을 이용한 퀀트 투자 포트폴리오 만들기 본 페이지는 R을 이용한 퀀트 투자 포트폴리오 만들기의 웹사이트 입니다. 책의 수정 사항이 있을시 즉시 반영할 예정이며, 책에서 다루지 못했던 추가적인 내용도 지속적으로 업데이트 할 예정 hyunyulhenry.github.io Chapter 1. 퀀트 투자의 심장: 데이터와 프로그래밍 데이터 사이언티스트가 하는 업무와 매우 비슷함 import -> tidy -> (transfrom -> visualize -> modeling) -> communicate 1.1 데이터 구하기 해외 금융 데이터는 Quandl, tiingo에서 비교적 저렴하게 구할 수 있음 국내 데이터는 야후 fin.. 더보기
[통계] 선형회귀와 알고리즘 (출처) edwith 모두를 위한 딥러닝, Sung, Kim H(x) = W * x (b = 0) ▣ 비용함수의 정의에 따라, W = 1, cost(W) = 1/3 *{(1*1-1)^2 + (2*1-2)^2 + (3*1-3)^2} = 0 W = 0, cost(W) = 1/3 *{(0*1-1)^2 + (0*2-2)^2 + (0*3-3)^2} = 14/3 =4.67 W = 2, cost(W) = 1/3 *{(2*1-1)^2 + (2*2-2)^2 + (2*3-3)^2} = 14/3 =4.67 Gradient descent algorithm : 경사를 따라 내려가는 알고리즘 비용함수, 머신러닝 최소화 문제에 사용 W,b의 함수에 적용시켜 최소값을 산출 다수의 값을 포함하는 Cost function도 최소화 가능.. 더보기
[EDA] 사회연결망 분석 지표 실습 : 내부 연결망이 확고한지, 외부 연결망이 확고한지를 확인하는 방법 E-I Index 값이 -1에 가까울 수록 자신이 속한 그룹에 대한 연결이 강함 Cross activity 그룹간 교류하는 정도를 파악하는 지표 네트워크 수준을 개인 수준과 집단 수준에서 비교할 수 있음 이를 위해 개인이 속한 집단과 그 집단 간의 관계가 뚜렷해야 함 개인의 원래 가지고 태어난 속성(attribute)이 아닌 네트워크 내에서 정의한 개인의 속성일 수도 있음 R에서는 활용할 수 있는 툴이 없음 Transitivity ▤ 지인의 지인끼리 알고 있을 가능성이 높은 것 3자면 관계 ▶ 닫혀있는 관계에서 가능성이 가장 높음 집단 간의 결속력이 높은 집단 ▶ 초기에는 삼각형이었던 집단이 점점 노드와 결속력을 높여가는 단계 Cl.. 더보기