일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 하이퍼 파라미터 튜닝
- 머신러닝
- 자기소개서
- 경력기술서 첨삭
- sklearn
- 주가데이터
- 경력 기술서
- 랜덤포레스트
- AutoML
- 파라미터 튜닝
- 주식데이터
- 사이킷런
- 판다스
- 베이지안 최적화
- 퀀트
- 이력서 첨삭
- 커리어전환
- 데이터사이언티스트
- 하이퍼 파라미터
- 데이터 사이언티스트
- 파이썬
- 대학원
- 데이터분석
- 데이터 사이언스
- 데이터사이언스학과
- 퀀트 투자 책
- 주요 파라미터
- pandas
- 데이터사이언스
- 코딩테스트
- Today
- Total
목록분류 전체보기 (119)
GIL's LAB
이번 포스팅에서는 OpenDartReader를 이용하여 코스피/코스닥 전체 기업의 주요 재무지표를 수집하겠습니다. 보고서 제출 날짜 뿐만 아니라, 분기별 보고서까지 모두 포함시키겠습니다. OpenDartReader의 설치와 사용 방법은 이전 포스팅을, finstate 메서드에 대한 설명은 이전 포스팅 2를 참고해주시기 바랍니다. 환경 설정 먼저, 필요한 패키지를 모두 불러옵니다. import os import OpenDartReader import FinanceDataReader as fdr 다음으로 종목 목록을 다음과 같이 불러옵니다. stock_list = fdr.StockListing("KRX").dropna() 결측을 제거한 이유는 선물이나 우선주는 지역 등의 정보가 결측이고 이들은 재무제표가 당..
최근에 데이터 사이언스 분야의 컨설팅 회사에서 일하는 신입 사원의 커리어 질문을 받고 그 내용을 정리해보겠습니다. 질문의 핵심은 커리어를 위해서 어떻게 해야하냐였는데, 그 중에 가장 기억에 남는 질문은 컨설팅 분야가 좋을지 특정 도메인의 회사(예: 삼성전자, SK하이닉스, 현대차 등등)의 데이터사이언스 관련 부서에서 일하는 것이 좋을지였습니다. 저는 이 분야에서 강의도 제법했고, 관련 외주도 많이 하고 있고, 모 대기업의 데이터사이언스 관련 부서에서 근무 중이고 심지어는 외주를 준 프로젝트를 관리하고 있어서 나름 확신을 가지고 다음과 같이 대답했습니다. "이 분야에서는 컨설팅이나 SI보다 다른 기업의 데이터사이언스 부서에서 경력을 쌓는 것이 낫습니다" 물론 모든 컨설팅이나 SI 회사에서의 경력이 다른 기..
넘파이의 가장 큰 장점으로 매우 빠른 배열 간 연산을 꼽을 수 있습니다. 배열 간 연산이란 크기가 같은 두 배열에 대해, 같은 위치에 있는 요소끼리의 수행하는 연산을 의미합니다. 예를 들어, 크기가 n인 두 배열 x = (x1, x2, ..., xn)와 y = (y1, y2, ..., yn)에 대해 임의의 연산자 ◇를 사용한 배열 연산은 다음과 같이 정의됩니다. x ◇ y = (x1 ◇ y1, x2 ◇ y2, ..., xn ◇ yn) 넘파이는 C로 작성되었기에, 파이썬의 반복문을 사용하는 것보다 훨씬 빠른 속도의 배열 연산을 자랑합니다. 이 포스팅에서는 넘파이의 배열 연산에 대해 알아보겠습니다. 유니버설 함수 유니버설 함수(universal functions, ufuncs)는 +, -, *, /, ** ..
개요 이번 실험에서는 낙폭이 심했던 주가는 다시 평균 수준으로 돌아온다는 전략인 평균 회귀 전략을 검증해보겠습니다. 이 그림에서 보듯이, 이 전략은 현 시점을 기준으로 n1 영업일 이전을 과거 시점, n2 영업일 이후를 미래 시점이라 했을 때, n1일 영업일동안 최대 m1(%) 하락한 주가는 n2일 영업일동안 최대 m2(%) 상승할 것이라는 가정에 기반한 전략입니다. 여기서 과거 시점과 미래 시점의 주가를 그대로 사용하는 것이 아니라, 그 기간 내에 최댓값을 사용하는 것에 주목해야 합니다. 다시 말해, 과거에 m1만큼 크게 하락했으면 비슷한 기간 내에 m1과 비슷한 수준으로 다시 오를 것이라 가정하는 것이고 만족할만큼 주가가 회복되면 바로 매도하는 것입니다. 데이터 준비 및 환경 설정 길이가 300이상인..
개요 이번 실험에서는 캔들 패턴을 분석하여 현재 시장에서 매수와 매도 세력 중 어느 세력이 더 강한지를 판단하여 투자하는 전략을 검증해보겠습니다. 굉장히 많은 종류의 캔들 패턴이 있지만, 상승장악형, 하락장악형, 적삼병, 흑삼병, 샛별형이라는 다섯 개의 캔들 패턴을 검증하고, 이번 실험에서는 상승장악형과 하락장악형만 검증해보겠습니다. 구체적으로 각 패턴이 등장했는지 여부를 확인하고, 등장일의 주가와 5, 20, 60, 120 영업일 이후 주가를 비교해보겠습니다. 데이터 준비 이번 실험에는 주가 데이터만 필요합니다. FinanceDataReader를 이용하여 2011년부터 2021년까지의 전 종목의 주가 데이터를 수집했습니다. 주가 데이터를 올리려고 했더니 파일 크기 제한이 있네요. 이제 데이터를 불러옵니..
회사 일과 집필로 바빠서 오랜만에 포스팅입니다. 오늘 포스팅에서는 현업에서 굉장히 자주 맞닥뜨리는 문제인데 교과서에서는 다룰 수 없는 문제에 대해 이야기해보겠습니다. 파라미터 최적화 문제 먼저, 파라미터 최적화 문제는 어떤 성능을 최대화할 수 있는 파라미터를 설정하는 문제입니다. 위 그림에서 x축이 파라미터이고 y축이 성능을 나타냅니다. 즉, 우리의 목표는 성능을 최대화하는 x*를 찾는 것입니다. 이 문제는 다음과 같은 간단한 수리 모형으로 표현할 수 있습니다. 제약이 없어서 함수 f가 어지간히 복잡하지 않는한 해를 구하기 어려운 문제가 아닙니다. 이러한 문제는 머신러닝의 하이퍼 파라미터 튜닝뿐만 아니라, 다양한 분야에서 발생합니다. 예를 들어, 제조 분야에서는 “수율을 최대화 혹은 불량을 최소화하는 생..
개요 이번 포스팅에서는 OpenDartReader를 이용하여 코스피/코스닥 기업의 주요 재무지표를 수집하고 가공하겠습니다. 구체적으로 수집 및 가공할 재무지표는 다음과 같습니다. 자산총계 부채총계 자본총계 매출액 영업이익 당기순이익 부채비율 영업이익증가율 매출액증가율 당기순이익 증가율 매출액 상태 영업이익 상태 당기순이익 상태 ROA ROE 관련 패키지 설치와 사용 방법은 이전 포스팅을 참고해주시기 바랍니다. finstate 메서드 finstate 메서드는 기업의 재무 정보를 가져오는데 사용하는 메서드로, 다음과 같이 사용합니다. finstate(corp, bsns_year, reprt_code) corp: 기업명 bsns_year: 사업연도 reprt_code: 보고서 유형 ('11011': 사업보고서..
개요 이번 포스팅에서는 OpenDartReader를 이용하여 코스피/코스닥 기업의 주당 배당금을 수집해보겠습니다. 주당 배당금이 높으면 그 자체로 투자할 가치가 있으며 (물론 배당금에 비해 주가 하락이 심한 경우에는 전혀 그렇지 않습니다), 배당금이 높은 기업일수록 주가 상승률이 높다라는 관계가 있다고 합니다 (역시 자세한 내용은 실험을 통해 검증하겠습니다). 관련 패키지 설치와 사용 방법은 이전 포스팅을 참고해주시기 바랍니다. report 메서드 OpenDartReader의 객체의 report 메서드는 사업보고서의 주요정보를 가져오며, 주요 인자는 다음과 같습니다. dart.report(corp, key_word, bsns_year, reprt_code) 여기서 dart는 임의의 OpenDartRead..
개요 이번 포스팅 시리즈에서는 전자공시 시스템 (DART)에 등록되는 기업공시를 API를 이용하여 수집하는 방법을 소개하고, 모든 기업의 재무제표, 배당정보, 기업정보 등을 수집하겠습니다. 이번 포스팅 (1) 환경 설정에서는 관련 패키지인 OpenDartReader 설치와 인증키를 발급받는 방법에 대해서 알아보겠습니다. 이번 포스팅부터는 책에서 사용하는 논조와 맞추기 위해서, 가능하면 존댓말을 사용하겠습니다. API 인증키 발급 Open DART를 사용하려면 API 인증키를 발급받아야 합니다. 먼저, Open DART 홈페이지 (https://opendart.fss.or.kr/)에 접속합니다. 그러면 아래 그림과 같은 화면이 나오는데, 여기서 박스로 표시한 인증키 신청 버튼을 누릅니다. 인증키 신청을 누..
운이 좋게도 블로그를 시작한지 약 한 달만에, 출판사로부터 블로그 내용을 정리해서 책으로 내보자는 연락을 받았다. 사실 주식 전문가가 아니고, 블로그도 재미있는 실험을 해보자는 취지였기 때문에 망설여졌지만, 책을 준비하면 내 브랜딩도 될 것 같고, 블로그에 넣을 내용도 더 열심히 준비할 것 같고, 인세도 크진 않겠지만 받을 수 있을 것 같아서 하기로 했다! "파이썬을 활용한 퀀트 투자 전략 검증 및 수립"이 책의 가제고, 책에서는 블로그에서와 마찬가지로 잘 알려진 개념들을 실제 데이터를 가지고 검증해보는 여러 프로젝트를 다룰 예정이다. 최종 목표는 책을 읽은 독자가 자신이 생각하는 퀀트 전략을 검증해볼 수 있게 하는 것이다. 학부때 수학강사와 과외, 그리고 박사과정때 했던 수 많은 머신러닝 강의 짬바(?..