[파이썬 / 증권사 API활용](2) QAxcontainer 사용 및 키움 모의투자 신청
·
c. 파이썬
QAxcontainer를 이용하면 ActiveX와 COM 객체를 생성하여 메소드 이용이 가능하다.그럼 OpenAPI+를 사용할 수 있으므로 위젯을 하나 만들어본다.import sysfrom PyQt5.QtWidgets import *from PyQt5.QAxContainer import *class App(QWidget): def __init__(self): super().__init__() self.woom = QAxWidget("KHOPENAPI.KHOpenAPICtrl.1") self.woom.dynamicCall("CommConnect()") self.woom.OnEventConnect.connect(self.OnEventConnect) ..
[파이썬 / 증권사 API활용](1) 키움 Open API+ 적용
·
c. 파이썬
파이썬으로 키움 Open API를 활용해보려고 한다.사실 주변에서 자동매매프로그램을 만들어보라고 요청을 해서 한번 시도하려고 하는데 잘될런지는 모르겠다.일단 맛보기로 한번 시도해볼까 하는데 어떤 우여곡절이 있을지 감도 안온다..^^; 1. Open API 사용신청을 한다. 증권사 Open API+ 서비스를 사용 등록 페이지가 나온다.  친절하게 3개월 단위로 Open API+로 접속을 해야만 서비스가 유지된다는 설명도 있다.여차저차해서 장기 미접속의 경우 서비스 재등록후 사용하면 되는 듯 하다. 등록은 계좌를 보유하고 있다면 등록이 가능하니 크게 어려움이 있지 않다.API에 여러 함수에 대한 설명은 키움 유투브에 친절하게 설명을 해준다.처음 찾아봤지만 참 사용하기 좋게 설명을 해놓았다.  직접 프로그래밍..
[파이썬 / 매크로 만들기](8) 키보드 keyboard 입력으로 시작, 정지
·
c. 파이썬
키보드로 입력을 받기 위해서 cmd창에서 keyboard 모듈을 설치한다. 설치가 되었으면 모듈을 추가한다. import keyboard모듈을 추가했으니 키보드 입력을 받아야 하는데 어떻게 받을 것인지 고민이 된다.프로그램이 상시로 켜져 있을때는 상시 키보드 입력 값을 받아야 함으로 역시 쓰레드를 쓰도록 한다. def keyThread(self): self.key = threading.Timer(0.01, self.keyThread) if keyboard.is_pressed('f11'): if self.state == 0: self.btn.setText("STOP") self.state = ..
[파이썬 / 매크로 만들기](7) Thread 실행 중 강제 종료 버튼 이벤트
·
c. 파이썬
쓰레드가 실행 중에 종료 버튼을 누르면 정상 종료가 안되는 상황이 발생하는데 이를 방지하기 위해서 강제 종료 버튼에 대한 이벤트를 만들어야 한다.def closeEvent(self, QCloseEvent):이제 종료 버튼을 누르면 closeEvent 함수가 동작한다.그럼 기존 코드에 closeEvent 함수를 넣어서 macro 함수를 종료시켜주면 된다.import sysfrom PyQt5.QtWidgets import *import pyautoguiimport threadingclass MacroApp(QWidget): def __init__(self): super().__init__() self.initUi() self.state = 0 ..
[파이썬 / 매크로 만들기](6) Thread 실행, 종료
·
c. 파이썬
import sysfrom PyQt5.QtWidgets import *import pyautoguiimport threadingclass MacroApp(QWidget): def __init__(self): super().__init__() self.initUi() self.state = 0 def initUi(self): self.setGeometry(700, 450, 220, 100) self.setWindowTitle('Macro') self.btn = QPushButton(self) self.btn.setText("START") # setText("START &f..
[파이썬 / 매크로 만들기](5) Pyautogui 설치, 키보드 매크로 입력
·
c. 파이썬
매크로 동작을 위해서 편한 메서드가 있는 cmd창을 통해서 pyautogui 를 설치한다.pyautogui.press(['left', 'left', 'left']) # 왼쪽 방향키를 세번 입력pyautogui.press('left', presses=3) # 왼쪽 방향키를 세번 입력pyautogui.press('left', presses=3, interval=3) # 왼쪽 방향키를 3초에 한번씩 세번 입력사용하려는 키보드 매크로는 press 메소드를 사용하면 된다.매크로는 시작 버튼을 누르면 동작을 반복해서 진행해야 한다.그런데 interval이 들어간 press 동작은 delay와 같이 3초에 1회씩 3번 동작하고 끝이 난다. left이외의 다른 키는 리스트를 보고 참..
로봇쟁이
꿈꾸는아이 공작소