INVESTAR / StockAnalysisInPython

456 stars 412 forks source link

네이버 금융 vs 야후 파이낸스 vs FinanceDataReader ? #55

Closed cahn70 closed 3 years ago

cahn70 commented 3 years ago

안녕하세요?

책에서 사용한 네이버 금융에서 제공하는 데이터는, 책에서도 언급하신 것처럼 종가 데이터가 수정 종가가 아니다 보니, 액면분할 전의 날짜까지 포함해서 백 테스팅을 한다든지, 장기 이동평균선을 그리는데 액면분할 시점이 걸쳐 있는 경우 문제가 발생하네요... 그리고, 책에서 Yahoo Finance의 경우는 데이터가 비는 구간도 있고, 수정종가가 맞지 않아 사용을 못한다고 하셨고요....

해서, 다른 이슈에서 김황후 님이 언급하셨던 FinanceDataReader의 데이터를 확인해 보니, 종가도 수정 종가로 구성되어 있고, Yahoo Finance에서 비어 있는 구간도 확인해 보니 데이터가 비는 곳도 없는 것 같습니다.

정리해 보면, 위의 3가지 데이터를 비교해 보았을 때 액면분할주식의 백 테스팅이나 기타 분석을 위해서는 FinanceDataReader의 데이터가 가장 적합할 듯해 보이는데, 책에서 네이버 금융의 데이터를 사용하신 이유가 궁금합니다... 깊이 있는 내용을 잘 모르는 초보라서 뭔가 제가 알지 못하는 이유가 있을 듯 싶어 문의를 드려 봅니다. 감사합니다.

INVESTAR commented 3 years ago

제가 2017년 경부터 '파이썬 증권 데이터 분석'을 쓰기 시작한 것으로 기억하는데요. 책을 쓴 결정적인 계기는 당시에 주식 데이터를 제공하던 Google Finance와 Yahoo Finance에서 API 서비스를 중단했기 때문입니다. 어디서도 주식 데이터를 구할 수가 없다보니 어쩔 수 없이 네이버 금융의 데이터를 스크레이핑해서 직접 주식 데이터 조회 API를 만들게 된 것입니다. 그러던 중 Yahoo Finance는 서비스를 재개했는데 네이버 금융에 비해서 국내 주식 데이터의 정확도는 훨씬 떨어졌습니다.

FinanceDataReader는 제가 책을 탈고할 때 쯤 우연히 검색하다가 알게되었는데, 당시에는 책에서 언급할 정도의 수준이 아니었고 개발도 완전히 된 상태가 아니어서 책에서 별도로 소개하진 않았습니다. 제가 직접 사용해보지는 않았지만 지금은 많이 개선된 것으로 보입니다.

cahn70 commented 3 years ago

그런 히스토리가 숨어 있었네요... 답변 감사드립니다. ^^