AI 기술
핀트가 주문 안정성을 높이는 방법
2023. 02. 16
로보어드바이저와 인공지능을 활용한 종목 매매. 만약 주문이 제시간에 집행되지 않으면 어떻게 될까요? 주문 수량에 ‘0’을 하나 더 붙이는 실수를 한다면? 아무리 좋은 종목을 선정했어도, 투자는 실패할 가능성이 큽니다.
디셈버앤컴퍼니는 핀트의 운영에서 주문의 안정성과 정확성을 확보하는 것이 무엇보다 중요하다는 것을 잘 알고 있습니다. 그렇다면 핀트는 어떻게 수십만 계좌의 개인화된 주문을 정확하게 안정적으로 수행할까요?
아이작(ISAAC)이 핀트의 두뇌라면, 프레퍼스(PREFACE)는 그 밖의 신체 모든 부위라고 할 수 있습니다. ‘무엇을 얼마나 살 것인가?’를 똑똑하게 결정하는 것이 아이작의 역할이라면 ‘어떻게 아이작의 결정을 빠르고 안정적인 방식으로 실행할 것인가?’를 담당하는 역할인 거예요.
프레퍼스는 아이작의 전략을 바탕으로 AI 트레이더, 환전 모듈 등을 통해 고객 이익을 극대화하는 방향으로 주문을 집행합니다. 그리고 이 모든 과정이 물 흐르듯 자연스럽게 이루어지도록 하는 주문 로직이 존재하죠.
아이작(ISAAC, Intelligent Strategic Asset Allocation Core)
: 데이터에 기반해 개인별 투자 포트폴리오를 구성하는 독립 모듈 집합체이자 AI 투자엔진
프레퍼스(PREFACE, Personalized Runtime Environments For Automated Customizing Engine)
: 개인화된 AI 투자일임 서비스를 위해 자체개발한 인공지능 주문집행엔진
핀트는 투자일임 서비스이기 때문에 각 계좌에서 각기 다른 종목과 수량으로 주문이 발생합니다. 만약 오늘 10만 개의 계좌가 10개 씩의 종목을 매매한다면 주문은 최소 100만 건이 되는 것이죠. 주문을 내는 방식과 조건도 다양합니다.
통상 주문을 내는 데에는 생각보다 여러 가지 방식이 있습니다. 지정한 가격으로 주문 내는 방식에는 지정가 외에도 조건부 지정가, 최유리 지정가, 최우선 지정가 등이 있어요. 시장가라면 장중은 물론, 장전 시간외, 장후 시간외 등의 주문 방식도 고려할 수 있고요. 보통 주문방식이라고 하면 지정가나 시간외거래 정도만 떠올리는 걸 생각해 본다면, 선택지가 꽤 많은 편이죠.
이뿐만이 아닙니다. 각 주문방식에 따르는 옵션도 고려해야 하는데요. 주문 즉시 가능 수량만 체결하고 나머지 주문은 당일 주문장에 대기시켰다가 장이 끝나면 모두 취소하는 FAS(Fill and Store), 주문 즉시 체결 가능한 수량 외에는 취소하는 IOC(Immediate or Cancel), 그리고 전부 체결하는 게 불가능하면 주문을 모두 취소하는 FOK(Fill or Kill) 등이 있어요. 이런 다양한 주문 방식과 옵션을 개별 계좌에서 모두 소화할 수 있도록 해야 하는 거죠.
당장 살 수는 있지만 비싼 값에 사야 하는 시장가 주문만 한다면 고객 수익률은 매매할 때마다 많이 하락하게 될 것입니다. 그렇다고 지정가에 주문이 체결되기만 마냥 기다리다가는 목표 주문체결 수량에 도달하지 못할 수도 있고요. 프레퍼스는 각 주문에서 발생하는 모든 경우의 수와 계좌의 상태까지 고려하면서도, 병렬처리를 통해 초당 최대 2,000건의 주문을 처리할 수 있어요.
주문 수량은 물론 정확성도 챙기는 프레퍼스는 주문 전송 직전까지 확인 작업을 거쳐요. 이를 위해 프레퍼스에는 계좌에 미수가 발생하거나 부정확한 수량을 보유하지 않도록, 계좌별 주문가능 금액을 실시간으로 계산하는 필터링 로직이 적용되어 있어요.
만약 이러한 주문 프로세스를 1명의 담당자가 수행한다면 어떨까요? 하나의 주문을 처리하고 그다음 주문을 처리하는 직렬 방식으로 관리하게 될 것입니다. 주문마다 발생할 수 있는 수많은 경우의 수를 고려할 시간이 없을 뿐만 아니라, 주문을 처리하는 동안 일어나는 시장의 변화로 전략 실행에 차질이 생길 수 있죠.
처리 속도를 높이고 싶다면 더 많은 인력을 투입해 병렬처리 환경을 만들어야 합니다. 이는 인건비는 물론, 고객이 부담하는 비용도 덩달아 커진다는 문제가 있죠. 그 과정에서 사람의 실수가 발생할 확률도 있고요. 따라서, 이러한 주문 프로세스는 수십, 수백만개의 계좌를 동시에 처리할 수 있어야만 실효성을 갖습니다.
사실상 인간이 프레퍼스처럼 주문을 수행하기란 불가능에 가깝습니다. 다양한 주문방식과 옵션들을 고려하고 실시간 필터링 로직을 처리하면서도 수십 수백만 개의 계좌를 동시에 정확하게 관리할 수 있는 기술력이 필요해요. 그리고 이는 프레퍼스와 같은 플랫폼이 없다면 사실상 불가능에 가까운 영역이죠.
핀트의 모든 주문은 증권사를 거쳐 이뤄집니다. 프레퍼스가 아이작의 포트폴리오에 맞춘 매매를 진행하기 위해선 증권사 통신 모듈의 작동원리와 거래소 매매 방식을 알아야 하고, 이를 토대로 한 주문 집행 로직에 따라 핀트와 연동된 증권사에 주문을 전달하는 작업이 필요하죠.
이 과정에서 증권사별 주문 프로토콜(규칙 및 체계)에 맞춰서 주문이 집행되어야 합니다. 프레퍼스 내 증권사 통신 모듈은 다른 증권사의 주문 프로토콜을 API 형태로 호출해 알맞은 주문을 내도록 구현되어 있습니다.
문제는 증권사 또는 핀트 중 한쪽의 시스템이 수정될 경우 발생합니다. 수정된 프로토콜이 제대로 반영되지 않는다면, 치명적인 오류로 이어지기 때문이죠. 고객의 주문이 전송에 실패하거나 주문 가격 및 수량의 오류 등이 생깁니다.
전략에 어긋난 포트폴리오를 갖게 되는 셈이에요. 이후 포트폴리오를 리밸런싱하면서 예정에 없던 시간이 더 걸리고, 이는 고객의 수익에 치명적입니다.
예방법은 단 하나, 테스트입니다. 핀트는 주문 안정성을 확보하기 위해 프로세스를 추가했습니다. 프레퍼스 내에 운영 환경과 매우 유사한 조건으로 주문을 진행할 수 있는 테스트 환경을 구현한 것이죠.
이를 통해 각 증권사가 가진 프로토콜에 맞춰 여러 번 테스트를 진행합니다. 또, 여기서 발생한 주문 관련 데이터를 여러 시나리오별로 수집해 다양한 상황에 대응할 수 있도록 합니다.
시장 상황이 급변하는 날엔 주문이 의도 대로 체결되지 않을 수 있어요. 프레퍼스는 실시간 주문 감지 시스템을 통해 증권사 또는 거래소에서 실시간으로 주문 상태를 확인합니다. 만약 체결되지 않은 건이 있다면 취소 후 경우의 수를 고려해 더 유리한 재주문을 수행하죠.
프레퍼스는 주문 과정에서 예상치 못한 계좌 또는 증권사 이슈로 정상 처리되지 않을 때는 주문 전략을 멈추도록 설계되어 있습니다. 예를 들어 잘못된 접근으로 보안상 이슈가 발생한 계좌나 휴면계좌 등은 어떤 방식으로도 정상적인 매매가 불가능한데요. 이런 경우 실시간으로 관리자에게 내용이 전달되고, 확인 후 안전하게 후속 주문을 진행하죠.
이렇듯 프레퍼스의 실시간 주문 감지 시스템이 추구하는 건, 언제나 아이작의 전략에 따라 안전하게 주문이 체결되게 함으로써 핀트 고객이 더 나은 포트폴리오를 경험하도록 하는 것입니다.
장이 끝난 뒤 프레퍼스는 증권사와의 통신을 통해 오늘 있었던 주문에 대한 대사 처리를 시작합니다. 하루의 영업이 끝나고 장부를 맞춰보는 것과 비슷하죠. 혹시 있을지 모를 증권사 또는 거래소의 문제를 파악하기 위해 모든 계좌의 당일 체결내역에 대해 하나하나 대조해 봅니다.
만약 계산과 다른 부분이 있다면 어디서 문제가 발생했는지, 복구는 어떻게 할 것인지 파악 후 필요하다면 증권사에 확인을 요청하죠. 대사 처리를 통해 증권사 데이터와 100% 동기화하지 않는다면 다음날 거래에 혼란이 생길 수 있습니다.
간단해 보이는 종목 매매가 생각처럼 쉬운 일이 아닌 이유, 이제 좀 알 것 같죠? 초 단위로 변하는 종목별 시세, 시장 참여자들의 끊임없이 바뀌는 행동으로 인해 생겨나는 수많은 경우의 수를 고려하는 일은 사람의 능력만으로 해내기엔 너무 복잡한 일이니까요.
이를 해결하기 위해 디셈버앤컴퍼니는 로보어드바이저와 인공지능을 활용해 수많은 시행착오를 거친 끝에 종목 매매 프로세스를 핀트 서비스를 통해 구현해냈고, 고객이 숨 쉬듯 자연스럽게 AI 투자일임 서비스를 이용할 수 있도록 했습니다. 10년간의 기술 개발과 노력이 담긴 인공지능 주문집행 플랫폼, 프레퍼스는 앞으로도 계속 발전해 나갈 예정입니다.
디셈버앤컴퍼니자산운용 준법감시인 심사필 제2023- 034호(2023.02.16 ~ 2026.02.15)
• 예금자보호법상 보호상품 아님 I 자산가격 변동 등에 따른 원금손실(전액 또는 일부) 발생가능 및 투자자 귀속 I 성과수수료는 고객과 합의에 의함 I 투자 전 설명 청취 및 상품설명서·약관 필독 I 고객에게 맞는 투자 또는 수익달성 비보장 I 로보어드바이저 테스트베드 통과 I 테스트베드 통과가 수익달성 비보장
• 핀트는 디셈버앤컴퍼니자산운용의 투자일임서비스입니다.