본문 바로가기
개발일지/주식 단타 전략

1. 주식 단타 전략 모니터링 시스템 - 파이썬 주식 가격 조회

by kirion 2022. 10. 19.
728x90
반응형

파이썬 주식 가격 조회

 

시스템을 개발하려면 먼저 주식 가격을 실시간으로 조회할 수 있어야 한다.

 

우선 python으로 주식 가격을 조회할 수 있는 방법을 소개한다.

 

 

python 패키지 중에 FinanceDataReader라는게 있다.

 

다른 패키지도 있는 것으로 아는데 개인의 사용 용도에 맞춰 사용하면 될 것 같다.

 

 

python과 해당 패키지가 설치되어 있다 보고, 코드 실행 결과로 간단하게 설명하겠다.

자세한 내용은 패키디 Documentation을 참조 바란다.

 

개발 환경 : python 3.8, Jupyter Notebook

 

[1] FinanceDataReader를 import 함.

[2] StockListing을 통해 종목 리스트를 불러오는데 우리는 한국 주식 시장을 이용함으로 "KRX"를 입력함.

[3] 불러오 리스트를 확인. KOSDAQ과 KOSPI 종목의 내역이 보인다.

 

 

[4] 코스피 종목만 조회하기 위해 Market 컬럼에서 "KOSPI"를 입력.

[5] 코스피 내역

 

그런데  ACE란 이름이 보인다. ETF이름으로 검색해 특정 기업의 ETF 목록을 뽑을 수 있다.

 

[6] KODEX가 제공하는 ETF 목록을 조회하기 위해 KODEX 문자열을 포함하는 이름의 종목을 불러왔다.

 

여기서 개별 종목을 얻기를 원하기 때문에 한 번 더 필터를 걸어줬다.

 

[7] ETF는 Sector나 Industry에 값이 NaN으로 공란이다. 따라서 공란이 아닌 대상으로 필터를 걸어 KOSPI 종목만 추려냈다.

 

[9] Sector의 현황 및 불필요한 값이 있는지 확인한다. 캡쳐에서는 상위 10개를 나타냈다.

[10] 총 823개의 KOSPI 종목 리스트를 만들었다.

 

 

[11] 종목의 주가 조회를 위해 DataReader 함수를 사용한다. 종목코드와 시점을 입력하면

[12] 10월 19일 자의 시가, 고가, 저가, 종가, 거래량, 등락비율을 볼 수 있다.

[13] 날짜가 아닌 기간으로도 확인이 가능하다. 2022를 입력하면 2022년의 모든 거래일의 주가를 뽑을 수 있다.

 

이 글을 작성하는 현재 10월 19일 15:10분 경이다. 아직 주식 시장이 열려있는 시간이기에 주가 조회가 실시간으로 변경되는지 확인해본다.

[16] 앞서 10분 전에 조회한 결과인데 종가 부분을 뜻하는 Close가 55,900, Volume이 10,777,303으로 나타난다.

[18] 다시 조회했을 땐 Close가 56,000, Volume이 11,064,172로 변동된 것을 볼 수 있다.

즉, 주식 시장이 열려있을 때는 실시간으로 가격이 변동이 되는 것이다.

 

하지만, 반복적으로 확인한 결과 주식 시장의 데이터가 반영되는 데는 1~2분 정도 차이가 존재했다.

시스템 개발에 오차 없이 실시간으로 감지해야 하면 이 오차는 치명적일 수 있기에 이런 점을 고려하는 것이 필수이겠다.

 

이렇게 종목 리스트와 주가를 확보했고, 다음으로는 매수 시점을 감지하는 코드를 구현해 보겠다.

728x90
반응형

댓글