주식 자동매매 시스템

파이썬을 이용한 주식 자동매매 시스템

이미지
파이썬을 이용한 주식 자동매매 시스템 INDEX 환경구축 키움증권 API - 연결테스트 키움증권 API - 계좌정보 조회 키움증권 API - 주문 키움증권 API - 종목정보 가져오기 포트폴리오 - 종목, 업종별 자산 포트폴리오 한국투자증권 API API reference 키움 OpenAPI+ 개발가이드 한국투자증권 OpenAPI 다운로드 및 가이드 Design https://www.design-seeds.com/in-nature/succulents/cacti-color-2/ https://create.piktochart.com/dashboard

파이썬을 이용한 주식 자동매매 시스템 1 - 환경구축


준비단계


파이썬을 이용한 주식 자동매매 시스템 환경 구축을 위해서는 크게 파이썬과 증권사 API가 필요하다. 

1. 파이썬
작업을 스케쥴링해서 자동으로 주식을 매수/매도 하도록 한다. 매수/매도하는 전략 또한 파이썬을 통해 구현한다.

2. 증권사 API
증권사에서 제공하는 API를 설치하여 python에서 로그인, 매수/매도 등 작업을 할 수 있도록 환경을 구축한다.

환경구축을 시작하기에 앞서, 증권사를 선택해야 한다. 증권사에서 제공하는 API는 크게 OCX, COM, DLL 방식이 있는데 잘 정리된 글을 발견해 증권사 선택에 참고하면 좋을 것 같다. 
파이썬으로 개발하기엔 COM 방식이 가장 편리한 것 같다. OCX 의 경우 PyQt5를 이용해야해서 복잡하다. 우선 대신증권계좌를 개설하기 귀찮아서 키움증권(OCX) 방식으로 개발을 시작하게 됐다.

파이썬, 증권사 API 설치 및 환경 설정

증권사 API

키움증권


파이썬
Creon(대신투자증권)은 32bit 밖에 지원하지 않기 때문에, 32bit로 설치했다. 

2. 파이썬 모듈 설치
pip install pywinauto pip install pandas

3. 참고한 코드



W/A
- com/ocx 방식
키움증권용, 대신투자증권용 api를 전부 개발하려고 하다보니, 
pywinauto와 PyQt5를 둘다 import해서 사용하고 있었는데, 그로인한 오류가 발생했다.

QWindowsContext: OleInitialize() failed:  "COM error 0x80010106 RPC_E_CHANGED_MODE (Unknown error 0x080010106)"
내용만 보면, 발생 원인을 짐작하기 어려운데 두 모듈을 동시에 import하면 발생하는 error이다. 아래 내용을 참고 해서 수정하면 된다.





이 블로그의 인기 게시물

Linux에서 CSV파일 사용방법

R에서 외부 데이터 이용하기 (Excel, csv)

[R 함수] aggregate, apply 사용 방법