반응형

분류 전체보기에 해당하는 글 167

  1. 백테스트-국내 주식 종가 가져오는 방법(네이버 금융, 증권 활용) 안녕하세요, 이번 시간에는 네이버 금융, 증권에서 국내 주가를 가져와서 DataFrame 형태로 만드는 함수에 대해서 설명드리겠습니다. 이 함수는 제가 개인적으로 함수 형태로 만들어서 백테스트를 할 때 활용하는 코드입니다. 참고하셔서 조금씩 변형해도 유용하게 쓰실 수 있을 것 같습니다😁 # 주가 데이터 호출 함수 def get_stock_data(code, from_date, to_date): """ Naver 금융 데이터 호출 결과 예시 ==> 일자|시가|고가|저가|종가|거래량 :param code: 종목 코드 :param from_date: 데이터 시작일자 :param to_date: 데이터 종료일자 :return: 해당 종목 코드의 일자, 시가, 고가, 저가, 종가, 거래량 데이터프레임 """ fr.. 2021.03.18
  2. 2021년 3월 국내 주식 매도(퀀트킹 포트폴리오) 안녕하세요, 벌써 4개월이 지나고 리밸런싱을 할 날이 돌아왔습니다! 퀀트 투자를 하게 되면 1년에 3~4번 밖에 매매를 진행하지 않아서 지루(?)하기도 하고, 괜히 리밸런싱 날이 기다려지기도 합니다. 오늘 포스팅에서 리밸런싱(매수)을 하는 내용을 다루지는 않을 것이고, 리밸런싱을 위해 미리 매도를 끝내서 매매 일지를 작성해보도록 하겠습니다. 2020년 11월 17일에 퀀트킹 포트폴리오에 따라 주식을 매수하였고, 2021년 3월 15,16일에 나누어서 전량 매도하였습니다. 운영 기간은 거의 딱 4개월이네요. 그럼 4개월동안 저의 퀀트 포트폴리오는 얼마나 수익을 냈는지 한 번 살펴보도록 하겠습니다. 저는 퀀트킹 포트폴리오 중 3가지 전략(저밸류, 고속성장, 슈퍼퀀트)을 사용하고 있고, 중복된 종목은 한 번만.. 2021.03.16
  3. 돈이 되는 미국 주식 퀀트 데이터(~2021.03.14) - 실적발표 74% 완료 6 안녕하세요, 3월 셋째주 미국 주식 퀀트 데이터 업로드 합니다. 포함된 데이터는 주가, 1개월 등락률, 3개월 등락률, 6개월 등락률, 9개월 등락률, 12개월 등락률, 거래대금(10일 평균), 시가총액, PER, PEGR, PBR, PSR, EV/EVITDA, OPM, ROE, ROA, GP/A, 자산, 자본, 부채, 실적기준일, 현분기 매출액, 현분기 영업이익, 현분기 순이익, 전분기 매출액, 전분기 영업이익, 전분기 순이익, 전전분기 매출액, 전전분기 영업이익, 전전분기 순이익, 현분기 매출액 QoQ, 현분기 영업이익 QoQ, 현분기 순이익 QoQ, 전분기 매출액 QoQ, 전분기 영업이익 QoQ, 전분기 순이익 QoQ, 현연도 매출액, 현연도 영업이익, 현연도 순이익, 전연도 매출액, 전연도 영업이.. 2021.03.14
  4. 11월-4월 전략, 시즈널리티(seasonality), 할로윈 효과 - 백테스트(퀀트킹 ver) 안녕하세요! 시즈널리티, 할로윈 효과의 두 번째 백테스트 시간입니다. 지난 포스팅에서는 전 세계 주요 주식 시장의 지수를 이용해서 백테스트를 진행해보았습니다. 이번 포스팅에서는 퀀트킹 포트폴리오로 전략을 운영할 때에도 시즈널리티 효과가 나타나는지 검증해보겠습니다. 백테스트는 퀀트킹 프로그램의 백테스트 기능을 이용할 예정입니다! 퀀트킹 4대 전략을 처음 들어보시거나, 궁금하신 분들은 제가 이전에 작성한 글들을 참고해주세요! 이전 글) 퀀트킹 포트폴리오 분석#1 마법공식 퀀트킹 포트폴리오 분석#2 저밸류 퀀트킹 포트폴리오 분석#3 고속성장 퀀트킹 포트폴리오 분석#4 슈퍼퀀트 퀀트킹의 4가지 전략 중 이번에 검증에 사용할 전략은 저밸류와 고속성장 전략입니다. 저밸류 전략은 가치 지표를 위주로 사용하고, 고속성.. 2021.03.12
  5. 11월-4월 전략, 시즈널리티(seasonality), 할로윈 효과 - 백테스트(주가 지수 ver) 안녕하세요, 게으른 퀀트입니다. 지난 포스팅에서 시즈널리티 전략의 이론에 대해서 알아보았습니다. 이번 포스팅에서는 논문이나 리포트에서 다루고 있는 기간뿐만 아니라, 최신 데이터를 포함해서 직접 백테스트를 진행해보도록 하겠습니다. 아직 이론편을 보지 못 하신 분들은 아래 링크를 참고해주세요 : ) 11월-4월 전략, 시즈널리티(seasonality), 할로윈 효과 - 이론편 안녕하세요, 오랜만에 퀀트 전략으로 돌아왔습니다. 오늘은 퀀트 투자에서 핵심적인 팩터 중 한 가지인 시즈널리티, 계절성(seasonality)에 대해 알아보겠습니다. 시즈널리티를 활용한 전략에 대 lazyquant.tistory.com "백테스트는 직접 해봐야한다!"는 말을 많이 들어보셨을텐데요, 저도 백테스트를 하면 할수록 직접 해봐.. 2021.03.09
  6. 돈이 되는 미국 주식 퀀트 데이터(~2021.03.07) - 실적발표 66% 완료 4 안녕하세요, 3월 둘째주 미국 주식 퀀트 데이터 업로드 합니다. 포함된 데이터는 주가, 1개월 등락률, 3개월 등락률, 6개월 등락률, 9개월 등락률, 12개월 등락률, 거래대금(10일 평균), 시가총액, PER, PEGR, PBR, PSR, EV/EVITDA, OPM, ROE, ROA, GP/A, 자산, 자본, 부채, 실적기준일, 현분기 매출액, 현분기 영업이익, 현분기 순이익, 전분기 매출액, 전분기 영업이익, 전분기 순이익, 전전분기 매출액, 전전분기 영업이익, 전전분기 순이익, 현분기 매출액 QoQ, 현분기 영업이익 QoQ, 현분기 순이익 QoQ, 전분기 매출액 QoQ, 전분기 영업이익 QoQ, 전분기 순이익 QoQ, 현연도 매출액, 현연도 영업이익, 현연도 순이익, 전연도 매출액, 전연도 영업이.. 2021.03.08
  7. 백테스트-ETF 정보 가져오는 방법(네이버 금융 API 활용) 4 안녕하세요, 오늘은 네이버 증권 API를 활용해서 국내에 상장된 ETF 정보를 조회하는 방법에 대해서 알아보도록 하겠습니다. 네이버 증권(금융)에서 ETF 탭을 선택하면 국내에 상장된 ETF 정보를 확인할 수 있습니다. 위 캡처 화면에서 조회되는 ETF 정보를 백테스트하기에 쉽도록 DataFrame으로 가져오는 방법을 알려드리겠습니다! 1.전체 ETF 리스트 가져오기 사실 소스코드가 매우 간단해서 '이걸로 포스팅을 올리는게 맞나?'라는 생각도 들었었지만, 검색을 통해서 블로그를 방문해주시는 분들이 많기 때문에 기능 별로 분리해서 포스팅을 하는게 좋을 것 같다고 생각했습니다. 아주 간단한 소스코드를 함께 한 번 살펴보시죠. import requests import json import pandas as p.. 2021.03.07
  8. 퀀트 투자 2월 결산 월 수익률 +1.38%(퀀트킹, 올웨더, 미국 주식) 2 0.시장 지수 1월 31일 종가 2월 28일 종가 등락률 코스피 2,976.21 3,012.95 +1.23% 코스닥 928.73 913.94 -1.59% S&P 500 3714.24 3,811.15 +2.60% NASDAQ 13,070.70 13,192.35 +0.93% 2월 한달 간 코스피와, S&P500, NASDAQ은 소폭 상승하였고, 코스닥은 소폭 하락하였습니다. 개인적으로 코스닥에 해당하는 한국 중소형 주에 많이 투자하고 있기 때문에 장이 좋지 않다고 느껴졌었는데, 실제로 수치를 보니 그렇게 나쁜 장이 아니었네요🤣 이래서 다양한 장에 분산해서 투자해야하는 것 같네요. 그럼 이제 운영하고 있는 전략들이 어떤 성과를 냈는지 확인해보도록 하겠습니다. 1.퀀트킹 포트폴리오(저밸류, 고속성장, 슈퍼퀀트).. 2021.03.06
  9. 11월-4월 전략, 시즈널리티(seasonality), 할로윈 효과 - 이론편 안녕하세요, 오랜만에 퀀트 전략으로 돌아왔습니다. 오늘은 퀀트 투자에서 핵심적인 팩터 중 한 가지인 시즈널리티, 계절성(seasonality)에 대해 알아보겠습니다. 시즈널리티를 활용한 전략에 대해 간략하게 설명드리면, 11월부터 4월까지 주식 시장의 수익률이 비교적 높기 때문에, 이 기간에만 주식 투자를 진행하는 방식입니다. 이미 시즈널리티에 대해서 들어보신 분들도 있을테고, 처음 듣는 분들도 계실텐데요. 아마 처음 들으신다면 주식 시장에서 시즈널리티와 같은 특성이 나타나는게 잘 이해되지 않으실 것입니다. 저도 처음에 그랬거든요. 특히나 제가 처음 주식 투자를 시작한 2020년의 경우에는 시즈널리티가 나타나지 않은 전형적인 연도였기 때문에, 더더욱 받아들이기가 쉽지 않았습니다. 개인의 경험이 매우 강력.. 2021.03.03
  10. 백테스트-MDD 구하는 방법(pandas) 1 안녕하세요, 지난 포스팅에서 우리는 각종 수익률(월별 수익률, 누적 수익률, 월별 Log 수익률, 누적 Log 수익률)에 대해서 알아보았습니다. 그리고 이번 포스팅에서는 수익률만큼이나 중요한 MDD를 구하는 방법을 알아보도록 하겠습니다. MDD(Max-DrawDown)란 전략을 운영하는 기간 중 최고점 대비 최대 낙폭을 의미합니다. 크고 작은 낙폭 중 가장 큰 낙폭을 MDD라고 하는 것이죠. 예를 들어 LAA 전략에서 보여드렸던 수익률 그래프를 다시 한 번 보도록 하겠습니다. 이 그래프에서도 크고 작은 낙폭들이 보이고, 그 중 나름 큰 낙폭 세 지점을 찾아보았습니다. 그 중 가장 낙폭이 커보이는 것은 (1)번 구간 같아 보이네요. 그렇다면 LAA 전략의 MDD는 (1) 지점에서 최고점 대비 최저점의 낙폭.. 2021.03.02
  11. 돈이 되는 미국 주식 퀀트 데이터(2021.02.28~) 안녕하세요, 3월 첫째주 미국 주식 퀀트 데이터 업로드 합니다. 포함된 데이터는 주가, 1개월 등락률, 3개월 등락률, 6개월 등락률, 9개월 등락률, 12개월 등락률, 거래대금(10일 평균), 시가총액, PER, PEGR, PBR, PSR, EV/EVITDA, OPM, ROE, ROA, GP/A, 자산, 자본, 부채, 실적기준일, 현분기 매출액, 현분기 영업이익, 현분기 순이익, 전분기 매출액, 전분기 영업이익, 전분기 순이익, 전전분기 매출액, 전전분기 영업이익, 전전분기 순이익, 현분기 매출액 QoQ, 현분기 영업이익 QoQ, 현분기 순이익 QoQ, 전분기 매출액 QoQ, 전분기 영업이익 QoQ, 전분기 순이익 QoQ, 현연도 매출액, 현연도 영업이익, 현연도 순이익, 전연도 매출액, 전연도 영업이.. 2021.03.01
  12. 백테스트-수익률 구하는 방법(pandas-월별 수익률, 누적수익률, log 수익률, 누적 log 수익률) 9 안녕하세요, 이번 포스팅부터 본격적으로 주가 정보를 분석해보도록 하겠습니다. 처음으로 분석해 볼 데이터는 수익률 데이터입니다. 구체적으로는 월별 수익률과, 누적 수익률, 월별 log 수익률, 누적 log 수익률입니다. 우선 지난 시간에서 월별 말일의 주가로 정리한 데이터를 확인해보겠습니다. 1.월별 수익률 DataFrame에서 월별 수익률을 계산하는 것은 매우 쉽습니다! 저도 처음에는 이전 가격대비 변경액을 백분율로 계산을 했었는데, 알고보니 pct_change()라는 유용한 함수를 제공하더라구요. pandas.DataFrame.pct_change란? 기본적으로 바로 이전 행의 백분율 변경을 계산합니다. 이것은 요소의 시계열 변화율을 비교할 때 유용합니다. 이미 월별 말일 데이터로 준비를 해두었길래, 이.. 2021.02.28
  13. 백테스트-주가 정보 기간별 집계(DataFrame.resample) 안녕하세요, 백테스트 실습 두 번째 포스팅입니다. 지난 포스팅에서 종목의 주가 데이터를 가져오는 방법을 알아보았습니다. 오늘 포스팅에서는 수익률, MDD 등 다양한 정보를 분석하기 전에 분석하기 쉽게 기간 별로 집계하는 방법에 대해 알아보겠습니다. 이를 위해서 DataFrame의 resample이라는 함수를 활용할 예정입니다. 참고) pandas.DataFrame.resample — pandas 1.2.2 documentation Which side of bin interval is closed. The default is ‘left’ for all frequency offsets except for ‘M’, ‘A’, ‘Q’, ‘BM’, ‘BA’, ‘BQ’, and ‘W’ which all have a .. 2021.02.25
  14. 백테스트-해외 주식 종가 데이터 가져오는 방법(get_data_yahoo) 안녕하세요, 백테스트를 진행하면서 많은 분들이 소스코드를 요청하셔서 따라하시기 쉽도록 설명을 곁들여 포스팅해보려고 합니다. 그 첫번째 시간으로 가장 기본적인, 주가 데이터를 가져오는 방법을 알아보겠습니다. 다양한 방법으로 주가 데이터를 가져올 수 있겠지만, 이 포스팅에서는 pandas_datareader의 get_data_yahoo 함수를 사용해보겠습니다. 이는 Yahoo Finance 데이터를 html로 읽어오는 함수입니다. 저도 테스트하기 위한 막 코딩을 하는거라, 비효율적이고 지저분한 코드일 수 있으니 양해해주세요. 더 효율적이고 깔끔하게 정리가 가능한 코드들을 댓글로 알려주시면 저도 배울 수 있으니, 자유롭게 댓글 달아주세요 : ) 백테스트를 할 때 파이썬 언어를 사용하며, 주로 Jupyter N.. 2021.02.24
  15. LAA 전략 - 백테스트 실시 3 안녕하세요, 오늘은 지난 시간에 설명 드렸던 LAA 전략을 백테스트 하는 시간을 가져보겠습니다. 아직 LAA 전략에 대한 포스팅을 못 보신 분은 아래 게시글을 참고해주세요 : ) 이전 글) LAA 전략 - 정적인 듯, 동적인 자산 배분! 게으른 자산 배분 LAA 전략 - 정적인 듯, 동적인 자산 배분! 게으른 자산 배분 안녕하세요, 오늘은 VAA와 DAA 전략에 이어서 LAA 전략을 소개해드리도록 하겠습니다. LAA는 Lethargic Asset Allocation의 약자인데, 풀이하자면 무기력한, 게으른(Lethargic) 자산 배분이라는 뜻입니다. 전 lazyquant.tistory.com LAA 전략은 상장된 ETF 뿐만 아니라, 실업률의 데이터까지 필요해서 조금 더 시간이 걸렸네요. 백테스트 기간.. 2021.02.23
  16. 돈이 되는 미국 주식 퀀트 데이터(2021.02.21~) - YoY 추가(매출액, 영업이익, 순이익) 안녕하세요, 2월 넷째주 미국 주식 퀀트 데이터 업로드 합니다. 포함된 데이터는 주가, 1개월 등락률, 3개월 등락률, 6개월 등락률, 9개월 등락률, 12개월 등락률, 거래대금(10일 평균), 시가총액, PER, PEGR, PBR, PSR, EV/EVITDA, OPM, ROE, ROA, GP/A, 자산, 자본, 부채, 실적기준일, 현분기 매출액, 현분기 영업이익, 현분기 순이익, 전분기 매출액, 전분기 영업이익, 전분기 순이익, 전전분기 매출액, 전전분기 영업이익, 전전분기 순이익, 현분기 매출액 QoQ, 현분기 영업이익 QoQ, 현분기 순이익 QoQ, 전분기 매출액 QoQ, 전분기 영업이익 QoQ, 전분기 순이익 QoQ, 현연도 매출액, 현연도 영업이익, 현연도 순이익, 전연도 매출액, 전연도 영업이.. 2021.02.21
  17. LAA 전략 - 정적인 듯, 동적인 자산 배분! 게으른 자산 배분 1 안녕하세요, 오늘은 VAA와 DAA 전략에 이어서 LAA 전략을 소개해드리도록 하겠습니다. LAA는 Lethargic Asset Allocation의 약자인데, 풀이하자면 무기력한, 게으른(Lethargic) 자산 배분이라는 뜻입니다. 전략의 이름만 보면 게으른 퀀트와 아주 잘 맞는 전략인 것 같네요🤣 LAA 전략은 영구 포트폴리오(Permanent Portfolio)를 업그레이드 시킨 전략입니다. 그렇기 때문에 기본적으로 영구 포트폴리오와 유사한 형태로 운영됩니다. 아직 제 블로그에서 영구 포트폴리오를 다룬적이 없기 때문에 영구 포트폴리오부터 간략하게 소개드리도록 하겠습니다. 영구 포트폴리오(Permanent Portfolio) 비중 내용 관련 ETF 특징 25% 전체 주식 VTI 호황기에 수익률 25.. 2021.02.16
  18. 돈이 되는 미국 주식 퀀트 데이터(2021.02.14~) - 2020년 4분기 실적 업데이트 中 안녕하세요, 2월 셋째주 미국 주식 퀀트 데이터 업로드 합니다. 포함된 데이터는 주가, 1개월 등락률, 3개월 등락률, 6개월 등락률, 9개월 등락률, 12개월 등락률, 거래대금(10일 평균), 시가총액, PER, PEGR, PBR, PSR, EV/EVITDA, OPM, ROE, ROA, GP/A, 자산, 자본, 부채, 실적기준일, 현분기 매출액, 현분기 영업이익, 현분기 순이익, 전분기 매출액, 전분기 영업이익, 전분기 순이익, 전전분기 매출액, 전전분기 영업이익, 전전분기 순이익, 현분기 매출액 QoQ, 현분기 영업이익 QoQ, 현분기 순이익 QoQ, 전분기 매출액 QoQ, 전분기 영업이익 QoQ, 전분기 순이익 QoQ 입니다. 매출액, 영업이익, 순이익의 YoY 값 업데이트 예정입니다. 추가적으로 .. 2021.02.15
  19. DAA 전략 - 백테스트 실시 5 안녕하세요, 지난 포스팅에서는 DAA 전략의 기본적인 내용과 운영시 주의사항에 대해서 알아보았습니다. 이번 포스팅에서는 직접 데이터를 불러와 DAA 전략을 백테스트 해보고 결과를 살펴보도록 하겠습니다. 지난 번에 VAA 전략을 백테스트 했던 코드를 재활용해 DAA 전략을 백테스트 해보았습니다. 동적 자산배분의 진행 방식이 유사해서 거의 그대로 사용할 수 있었네요 : ) 백테스트 기간은 2008년 1월 1일부터 2021년 2월 9일까지입니다. 2008년의 서브프라임 사태를 반영해서 확인하기 위해 기간을 이렇게 잡았습니다. 우선 수익률부터 살펴보도록 하겠습니다. 1.수익률 확인 2009년 상당한 하락 이후 나름 완만하게 상승하는 모습을 보여줍니다. 상세하게 수익률을 분석해보겠습니다. 158 개월 중 Risk.. 2021.02.09
  20. 돈이 되는 미국 주식 퀀트 데이터(2021.02.07~) - 실적 업데이트 中 안녕하세요, 2월 둘째주 미국 주식 퀀트 데이터 업로드합니다 : ) 지난주부터 미국 기업들의 실적 발표가 시작되었습니다. 그래서 수집해서 제공해드리는 데이터에도 최신 실적이 반영된 기업들이 있습니다. 아직은 전체의 1/4 정도만 실적 발표가 된 상황이고, 데이터도 그 정도 반영되어있습니다. 데이터에서 실적기준일이 2020년 9월 30일인 기업들의 현분기 매출액/영업이익/순이익은 2020년 3분기의 실적입니다. 실적기준일이 2020년 12월 31일로 되어있는 기업들의 현분기 매출액/영업이익/순이익은 2020년 4분기의 실적이니 활용하실 때 참고하시기 바랍니다. 추가적으로 필요하신 데이터가 있으면 언제든지 댓글로 남겨주세요. 최대한 빠른 시일내에 반영하여 제공하도록 하겠습니다. 감사합니다 : ) 공감과 댓글.. 2021.02.08
반응형