더북(TheBook)

이는 _on_receive_real_data 함수의 print(s_code, signed_at, close, high, open, low, top_priority_ask, top_priority_bid, accum_volume) 코드로 출력된 것이며, 모의투자 환경에서 출력되는 체결 내역은 실제 투자 환경이랑 연동되어 있습니다.

출력 내용을 순서대로 살펴보면 삼성전자(005930)의 체결 시간(13:37:46), 종가(현재가 79700), 고가(80000), 시가(79900), 저가(79600), 최우선 매도 호가(79700)/매수 호가(79600), 당일 누적 거래량(6528281)을 나타냅니다.

당연한 이야기이지만, 우리가 수신한 체결 정보는 체결이 될 수 있는 거래일이면서 개장 시간에만 얻어 올 수 있습니다. 프로그램을 종료하지 않는 이상 한 번 등록하면 실시간으로 계속 데이터를 얻어 옵니다. 뒤에서 배울 매매 종목 구성을 하면 정보를 수신할 종목이 많아지기 때문에 _on_receive_real_dataprint() 함수를 그대로 놓아두면 출력창이 체결 정보로 덮여서 다른 정보를 확인하기 어려울 수 있습니다. 따라서 _on_receive_real_data에 있는 print() 함수를 주석 처리하거나 삭제하는 것이 좋으며, 예제 파일에도 이 부분은 주석 처리되어 제공됩니다.

지금까지 API를 이용하는 방법을 살펴보았습니다. 필자가 키움증권 API를 이용하면서 겪었던 어려움을 설명하다 보니 내용이 많아졌습니다. 특히 파이썬이 처음인 사람에게는 더욱 어렵게 느껴졌을 수 있습니다. 그러나 전부 다 이해하지 못해도 괜찮습니다. 다음 장에서 이어질 프로젝트를 진행하면서 완성된 코드를 응용하다 보면 자연스럽게 눈에 익게 되고, 전체적인 흐름도 이해할 수 있을 것입니다. 그렇기에 지금까지 모든 내용을 전부 다 이해하려고 하기보다는 API를 어떻게 호출하며, 호출한 후에는 어떻게 응답을 받아 오고 그 값을 사용하는지 일련의 과정을 이해한다면 좋겠습니다.

단순히 눈으로만 코드를 보았다면 반드시 꼭 한 번은 파이참으로 코드를 타이핑해 보길 권장합니다. 코드가 방대하므로 제공된 예제 코드를 복사하여 붙여 넣어 보는 것도 괜찮습니다.

4장에서는 우리 프로젝트에서 사용할 매매 전략을 이야기해 보겠습니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.