준비단계
파이썬을 이용한 주식 자동매매 시스템 환경 구축을 위해서는 크게 파이썬과 증권사 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이다. 아래 내용을 참고 해서 수정하면 된다.