본문 바로가기

아무이야기

주식 정보 가져오기

반응형

1. investpy

주식 관련 서비스를 만들어 보고 싶다 주식 데이터를 모아보기로 했다.

 

https://pypi.org/project/investpy/

이런 것을 찾았다.

 

유명 주식 사이트인 investing.com을 파싱해서 정보를 수집해주는 패키지이다.

예제를 보면 국가가 스페인으로 되어있는데

import investpy

df = investpy.get_stock_historical_data(stock='BBVA',
                                        country='spain',
                                        from_date='01/01/2010',
                                        to_date='01/01/2019')
print(df.head())

삼성 전자를 찾아보려 한다.

import investpy

df = investpy.get_stock_historical_data(stock='005930',
                                        country='South Korea',
                                        from_date='01/01/1930',
                                        to_date='01/01/2019',
                                        as_json=False,
                                        order='ascending')

print(df.head())
                Open      High       Low     Close  Volume Currency
Date                                                               
2011-08-23  700000.0  735000.0  699000.0  723000.0  486333      KRW
2011-08-24  724000.0  735000.0  700000.0  708000.0  370173      KRW
2011-08-25  737000.0  738000.0  721000.0  725000.0  376186      KRW
2011-08-26  717000.0  734000.0  717000.0  726000.0  201946      KRW
2011-08-29  742000.0  742000.0  724000.0  733000.0  256137      KRW

Process finished with exit code 0

1930년부터 요청했는데 2011년부터 나오는것을 보니 2011년부터 데이터가 있나보다.

 

데이터 타입은 day단위로 시작가, 최고가, 최저가, 장마감가, 거래량, 통화종류

def __init__(self, date_, open_, high_, low_, close_, volume_, currency_):
    self.date = date_
    self.open = open_
    self.high = high_
    self.low = low_
    self.close = close_
    self.volume = volume_
    self.currency_ = currency_

 

굳. 데일리 데이터를 얻을 수단을 얻었다! 느리긴 하지만 저장해놓고 사용하면 괜찮을 것 같다.

 

2. ALPHA VANTAGE

https://www.alphavantage.co/

 

뭔가 가입을 해야한다. 무료버전은 1분에 5개의 요청만 할 수 있고 하루에 500개의 요청 제한이 있다. investpy에서 제공하는 정보와 거의 같은 정보를 제공한다. 그냥 안해야겠다.

 

3. 공공데이터포털 주식정보서비스

https://www.data.go.kr/dataset/15001145/openapi.do

 

  • 시장별 단축코드 전체 조회
  •  신주인수권증권 정보 조회
  •  신주인수권증서 정보 조회
  •  주식관련사채 행사조건정보 조회
  •  주식관련사채정보 조회
  •  주식상장정보 조회
  •  상장구분별 현황조회
  •  신규예탁지정종목조회
  •  의무보호예수전체현황 사유별 조회
  •  의무보호예수전체현황 전체현황표 조회
  •  배당순위조회
  •  단축번호로 주식종목코드(풀코드) 조회
  •  종목명칭으로 주식종목코드 및 기본정보 조회

완전 좋은 정보를 제공한다고 하는데 엄청난 악평이 달려있다. 잘되는지 확인해봐야겠다. 일일 트래픽이 항목당 100건으로 제한되어있다. 하지만 정보가 좋기 때문에 저장해놓고 사용하면 될 것 같다. 배당순위조회가 가장 궁금하다 ㅋㅋ

 

실험 결과 데이터가 잘 들어 오는 것을 확인했다.

왜 욕을 먹는지 알 것 같다. api key가 urlencode되어서 들어왔기 때문에 요청을 보낼 때 apikey를 url decode를 한 후 요청 을 보내야 한다. 삽질좀 했는데 별거 아닌 문제였다...

 

이제 하둡에 쌓는 과정을 해봐야겠다.

 

4. 야후 finance가 없어진줄 알았는데 해보니까 잘된다.

이것도 잘 사용할 것 같다.