AAT_Phase 1. learning api

'졸업작품 (AAT)' 시리즈AAT_Phase 1. learning api

mildsalmon

흔치않고, 진귀하다.

Sign in to view email

공부를 통해 새로 알게된 부분

  • connect
    • 이벤트와 이벤트 처리 메서드를 연결
  • dynamicCall
    • OPEN API+가 제공하는 메서드를 사용하려면 self.kiwoom 객체를 통해 dynamicCall 메서드를 호출해야 한다.
    • dynamicCall 메서드의 인자로 호출하려는 메서드를 전달
    • 인자로 함수만 줄 수 있는 것이 아니라, 인자 값도 줄 수 있다.
  • Kiwoom Open API는 고유 CLSID와 ProgID를 가진다
    • QAxWidget 클래스의 생성자로 전달해야 사용할 수 있는 인스턴스가 생긴다.
    • ProgID = KHOPENAPI.KHOpenAPICtrl.1
    • CLSID = {A1574A0D-6BFA-4BD7-9020-DED88711818D}
  • 키움에서 제공하는 OPEN API 메서드, 이벤트는 정말 다양하다.
    • 책에 나온 일부 메서드(CommGetData)는 Kiwoom 개발 가이드에서 사용을 자제하라고 한다. 해당 메서드는 GetCommData, GetCommRealData, GetChejanData를 사용하라고 권고한다. → 즉 책에 나온 정보를 무조건 맹신하지 말고 오피셜 자료를 계속 보면서 비교하고 학습하는 것이 중요하다.
  • PyQt
  • Open API+의 TR 처리 순서
    1. SetInputValue 메서드를 사용해 TR 입력 값을 설정.
    2. CommRqData 메서드를 사용해 TR을 서버로 송신
    3. 서버로부터 이벤트가 발생할 때까지 이벤트 루프를 사용해 대기
    4. CommGetData 메서드를 사용해 수신 데이터를 가져온다.

좀 더 공부해야하는 부분

  • PyQt
    • 기본적인 Qt가 조금 부족하다.
    • 블로그를 통해 정리를 해보자.
  • OPEN API 메서드 & 이벤트
    • 전부 알 필요는 없다, 하지만 적제 적소에 필요한 기능을 생각할 정도의 기능 인지와 상상력 필요.

한줄평

입대하기 전에 코드를 작성할 때는 Kiwoom OPEN API의 동작 원리조차 이해하지 못하고 진행했는데, 한줄 한줄 분석하고 이해하면서 작성하니까 처음에는 어려웠지만, 오히려 더 쉬워지는 느낌을 받았다. 빠르게 전체 내용을 작성하고 졸업작품 제작에 들어가자. 아무리 어렵고 처음 보는 것이라도 포기하지 말자.

오늘 작성한 코드

Learned the base api. · mildsalmon/AAT@0c37b6f

참고자료

Kiwoom OPEN API 개발가이드

작성된 댓글이 없습니다!
로그인된 사용자만 댓글을 작성할 수 있습니다.