IT,참고자료

Window환경에서 작업 스케줄러 활용한 작업 예약

unius 2023. 1. 2. 14:00
728x90
반응형

실시간 자산관리를 하기 위해 구글 스프레드 시트를 활용하여 주식, 펀드 그리고 가상자산의 실시간 시세를 획득할 수가 있었지만 한가지 해결할 수 없는 점이 있었다. 바로 젠포트를 통해 자동매매를 실행하고 있는 계좌의 평가금과 잔고정보는 자동으로 얻어올 수가 없다는 점이다.  내가 선택한 방법은 키움OpenAPI를 이용해서 해당 정보를 획득하고 주기적으로 구글 스프레드 시트에 갱신하는 방법이였다. 하지만 막상 개발해서 테스트해보니 이것도 문제가 생겼다. 바로 키움OpenAPI는 동시접속이 안된다는 것이다. 즉, 젠포트 자동매매시스템에서 키움OpenAPI를 사용하고 있기 때문에 내가 작성한 프로그램으로 키움OpenAPI를 통해 로그인하면 젠포트 자동매매의 접속이 끊긴다는 점이다.

 

결국 하루에 한번만 접속해서 평가금과 잔고를 갱신하는 것으로 정하였고 이를 위해서 Window 환경에서 제공하는 작업 스케줄러를 사용하였다. 먼저 작업 스케줄러를 실행하고 작업 만들기를 선택한다.

새 작업 만들기는 5개의 탭으로 구성되어 있는데 일반적으로 첫 3개의 탭만 잘 설정하면 무리없이 작업이 예약된다. 먼저, 일반 속성 탭에서 작업의 이름을 정의하고 보안옵션을 적절한 것으로 선택한다. 그리고 두번째 트리거 탭에서는 작업을 언제 또는 어떤 주기로 실행할 지를 결정한다. 나의 경우는 15시30분에 정규시장 종료전까지는 젠포트 자동매매 시스템에 영향을 주면 안되기 때문에 아래와 같이 평일에만 장종료 이후 여유있는 시간으로 설정했다. 

그리고 세번째 탭에서는 실행할 프로그램을 설정한다. 실행 프로그램으로 파이썬을 등록하고 인자로 키움OpenAPI를 사용하여 정보를 획득하는 파이썬 프로그램을 설정하고 시작위치는 파이썬 프로그램이 있는 폴더의 위치로 지정한다.

위와 같은 간단한 3가지 절차을 통해서 Window환경에서 작업을 예약하고 실행할 수가 있다. 다음 글에서는 키움OpenAPI를 사용하여 시스템에 로그인하고 간단한 정보를 얻어와서 구글 스프레드 시트에 정보를 기록하는 과정을 소개해 보도록 하겠다.

728x90
반응형