< 1. 주가 일봉 데이터 저장 프로그램 개발 - 개요>

해당 포스트를 시작으로 여러 번에 걸쳐 주가 일봉 데이터 저장 프로그램을 개발해 본다. 마지막 포스트에 개발이 완료된 프로그램을 첨부파일로 올려주겠습니다. 이 프로그램을 통해 종목의 일봉 데이터('시가', '고가', '저가', '종가', '거래량) 를 DB 또는 엑셀에 저장한다. 물론 일봉 데이터 기간은 종목의 상장 이후로 한다. 종목 뿐만 아니라 코스피 지수, 코스닥 지수 데이터, KODEX 코스닥 150 레버리지 같은 ETF도 추가로 저장할 수 있다. 다음은 개발할 프로그램 UI 이다. 


  


간단하게 살펴보자. 종목 코드를 입력하고 "엑셀 저장" 버튼을 누르면 종목의 일봉 데이터가 엑셀에 저장된다. 참고로 "2333740"은 KODEX 코스닥 150 레버리지이다. 종목 코드는 네이버나 카카오 스탁에서 종목 이름을 입력하면 바로 얻을 수 있다. 다음은 개발한 프로그램으로 다운로드한 엑셀 파일이다. 날짜, 종가, 고가, 저가, 시가, 거래량 데이터가 종목 상장일부터 다운로드한 시점의 전날까지 데이터를 다운로드한다.(이 글을 쓰고 있는 오늘은 18년 1월 5일이다.)  

















엑셀 뿐만 아니라 DB에도 데이터를 저장할 수 있다. DB에 로그인 한 후 종목 코드를 입력하고 "DB 저장" 버튼을 누르면 DB에 데이터가 저장된다. DB에 모르는 분이 많을 것이다. DB를 사용하지 않고 엑셀만 이용한다면 DB에 대해 몰라도 된다. 



간단하게 기능은 위와 같고 이 프로그램 개발에 필요한 기초 지식 및 개발 환경은 다음과 같다.


1. 파이썬을 이용해 개발한다. 개발환경으로 PyCharm을 활용하고 UI 구성을 위해 Qt Designer을 이용한다.

2. 주식 데이터를 얻기 위해 키움 OPEN API를 이용한다.

3. DB로는 mysql을 사용한다.


'1'번과 '2'번 사항은  "파이썬으로 배우는 알고리즘 트레이딩" 사이트에서 모두 배울 수 있다. 프로그래밍을 잘 모르는 초보자도 쉽게 배울 수 있다. url은 아래와 같다.

"파이썬으로 배우는 알고리즘 트레이딩"


'3'번 사항 같은 경우 독자들 재량 것 공부하길 바란다. 물론 개발할 프로그램을 사용할 때 엑셀만 사용한다면 mysql에 대해 몰라도 된다. 


여러 포스트를 통해 주가 일봉 데이터 저장 프로그램을 개발해 볼 것이다. 기초적인 부분은 과감히 생략할 것이다. 또한 범용 프로그램이 아니기에 예외 처리는 최소화 했다. 



필자는 파이썬을 전문으로 하는 현업 프로그래머가 아니라 평범한 컴퓨터 공학과 대학생입니다. 따라서 코드의 효율성, 최적화 측면에서 부족한 면이 있을 겁니다. 잘못된 부분이나 좀 더 효율적으로 수정해야할 부분이 있다면 댓글 부탁드립니다.

해당 프로그램의 최종 결과 파일 및 소스 코드는 시리즈 마지막 포스트에 첨부할 예정입니다. 



+ Recent posts