이는 _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_data의 print() 함수를 그대로 놓아두면 출력창이 체결 정보로 덮여서 다른 정보를 확인하기 어려울 수 있습니다. 따라서 _on_receive_real_data에 있는 print() 함수를 주석 처리하거나 삭제하는 것이 좋으며, 예제 파일에도 이 부분은 주석 처리되어 제공됩니다.
지금까지 API를 이용하는 방법을 살펴보았습니다. 필자가 키움증권 API를 이용하면서 겪었던 어려움을 설명하다 보니 내용이 많아졌습니다. 특히 파이썬이 처음인 사람에게는 더욱 어렵게 느껴졌을 수 있습니다. 그러나 전부 다 이해하지 못해도 괜찮습니다. 다음 장에서 이어질 프로젝트를 진행하면서 완성된 코드를 응용하다 보면 자연스럽게 눈에 익게 되고, 전체적인 흐름도 이해할 수 있을 것입니다. 그렇기에 지금까지 모든 내용을 전부 다 이해하려고 하기보다는 API를 어떻게 호출하며, 호출한 후에는 어떻게 응답을 받아 오고 그 값을 사용하는지 일련의 과정을 이해한다면 좋겠습니다.
단순히 눈으로만 코드를 보았다면 반드시 꼭 한 번은 파이참으로 코드를 타이핑해 보길 권장합니다. 코드가 방대하므로 제공된 예제 코드를 복사하여 붙여 넣어 보는 것도 괜찮습니다.
4장에서는 우리 프로젝트에서 사용할 매매 전략을 이야기해 보겠습니다.