AI 기술

하나의 주문을 위한 수억 번의 매매 시뮬레이션

2022. 10. 31

‘지금 사도 될까?’ 투자를 시작하면 누구나 하는 고민이죠. 하지만 핀트 투자를 시작하는 분들은 이런 고민할 필요가 없습니다. 핀트에는 수억 회의 시뮬레이션 끝에 적절한 매수 타이밍을 결정해주는 AI 트레이더(Trader)가 있거든요. 핀트투자를 시작한 고객의 첫 포트폴리오를 구성 과정에서, AI가 어떤 역할을 하는지 자세히 알려드립니다.

지정가 VS 시장가 매수, 뭐가 이득일까?

대부분의 개인 투자자는 시장가 주문을 넣습니다.

시장가 매수는 지금 가격에 사는 것,

지정가 매수는 떨어질 것 같은 가격에 예약을 걸어놓는 것입니다. 무엇이 이득일까요?

핀트 AI 트레이더가 푸는 문제는 여기에서 시작합니다. 미래로 가서 무엇이 이득인지 보고 올 수 없으니까요.

주식 시장에는 시장가와 지정가 주문이 있습니다. 시장가 주문은 현재 가격으로 주문 하는 것이고 매수 체결이 보장되니 무조건 살 수 있죠.

지정가 주문은 내가 원하는 가격에 도달해야만 매매가 진행되는 방식입니다. 매매 체결이 보장되지는 않지만, 일단 체결 되면 시장가보다 이득이죠. 매수 시 지정가를 낮게 쓰면 싸게 살 수 있으니 수익은 커지지만, 매수 체결 확률은 낮아집니다.

그럼, 싸게 부르면 무조건 이득?

포트폴리오 완성이 늦어질수록 기회비용이 커질 수 있습니다.

지정가를 결정할 때에는 체결 시의 ‘매매이득’과 체결이 안 됐을 시의 ‘기회비용’ 사이의 적절한 지점을 찾는 것이 중요합니다.

A라는 종목을 매수한다고 가정해보겠습니다.
현재 시장가는 100원. 여러분은 5원의 이득을 보기 위해 95원에 지정가 매수 주문을 냈습니다. 그런데 A종목은 장중에 95원 이하로 내려간 적 없고, 오히려 가격이 상승해 103원으로 장이 마감됐습니다. 이럴 때 “아, 그냥 100원에 살 껄!” 껄무새가 되어 버립니다.

우리는 A종목에 대한 지정가 주문으로 5원의 이득을 보려고 했습니다. 여기서 5원은 매매이득입니다. 만약 그때 100원에 시장가로 매수했다면, 3원의 이득을 챙길 수 있었습니다. 여기서 3원은 기회비용입니다.

결국 ‘지정가 주문이 체결 될 것인가?’에 대한 해답이 필요한데요, 주문의 체결 여부는 시장 상황, 종목의 특성, 주문 가격 및 주문 시점 등의 다양한 변수에 영향을 받습니다. 때문에 이런 다양한 정보를 종합적으로 고려해 주문 의사를 결정하는 단계가 반드시 필요합니다.

핀트가 매수매도 타이밍을 잡는 법

핀트 AI트레이더는 수많은 경우의 수를 고려합니다.

AI 트레이더는, 아이작(ISAAC)에게 개인별 포트폴리오를 받은 다음, 과거 임의의 시점으로 가서 다양한 주문 방법을 시뮬레이션 해 봅니다. 이 때 얻은 데이터를 들고 현재로 돌아와 합리적인 주문 가격과 시점을 탐색합니다. AI 트레이더는 하나의 주문을 내기 위해 이를 수억 번 반복합니다.

핀트의 매수매도 주문을 관장하는 ‘AI 트레이더(Trader)’는 주문 의사 결정을 위한 학습과 추론(계산, 예측)을 담당하고 있습니다. 이 과정에 구글이 알파고에 사용했던 ‘강화학습’ 기법이 적용됩니다. 일회성 학습이 아니라 가장 최신의 정보까지 학습하기 위해 주기적으로 업데이트를 하면서 말이죠.

핀트 AI트레이더가 판단하는 적정 주문 가격

매매이득은 높이면서 기회비용을 낮추는 것이 적정 가격입니다.

핀트 AI 트레이더가 고객 포트폴리오 구성을 위해 시간여행을 떠나면, 구체적으로 어떤 일을 하는 걸까요? 과거 수십년 동안의 시장 환경을 구성하고, 수억 회의 주문을 시뮬레이션 하는데, 그 때 어떤 기준으로 적정 주문 가격을 정할까요?

핀트 AI 트레이더가 정의하는 적정 가격이란 ‘기회비용’을 최소화하면서 ‘매매이득’을 최대화할 수 있는 주문 위치를 찾는 것입니다.

적정 가격은 시장 상황, 고객의 남은 주문, 종목의 특성에 따라 매우 변칙적입니다. 예를 들어 가격 변화가 큰 종목은 크게 하락할 때가 있으니 매우 유리한 주문을 해도 체결이 됩니다.

반면 변동성이 작은 종목은 매매이득을 약간만 보려고 해도 체결이 안될 수 있죠. 종목의 변동성, 유동성, 스프레드(spread-gap) 등의 특성에 따라 별개의 학습을 진행해야 합니다.

핀트 AI트레이더는 가상의 주문을 수억 회 반복합니다.

주문집행 강화학습 팀은 과거 수십년 동안의 시장을 수억 회 시뮬레이션해 현재 상황에서 가장 기대 값이 좋은 주문 가격을 결정합니다.

시간이 지남에 따라 종목의 특성이 바뀔 수도 있죠. 때문에 매주 발생하는 최신의 데이터를 강화학습 시뮬레이션에 추가해 최신 경제상황도 반영합니다.

과거의 시장환경을 구현하는 강화학습 환경(Environment)

이제 과거의 시장환경으로 돌아가 주문을 넣어보는 시뮬레이션 즉, 강화학습을 시작해보겠습니다. 먼저 시뮬레이션 환경을 과거 시장 데이터를 이용해 구성합니다. 여기에 대상(Agent), 행동(Action), 상태(State), 보상(Reward)에 대한 정의도 내려줍니다.

핀트 AI트레이더의 매매 시뮬레이션 환경

핀트 AI트레이더는 이렇게 현재의 시장환경과 가장 유사하게 구현된 시뮬레이션 환경 안에서 반복적으로 주문을 수행하며 합리적인 주문 가격을 찾게 되는 것입니다.

핀트 AI트레이더가 타는 타임머신(강화학습)의 구조

핀트 AI트레이더의 강화학습 구조

STEP 1. 핀트 AI트레이더는 종목, 사용자 및 주문 정보를 확인한다.

• 종목 정보: 가격 변화 정도, 일별 매매 수량 등

• 사용자 정보: 가입일, 포트폴리오 등

• 주문 정보: 주문 가격, 체결 여부 등

STEP 2. 확인한 정보를 토대로 주문에 대한 판단한다.

• 현재 상황 및 시점에 가장 적절한 주문 가격을 결정.

STEP 3. 주문에 대한 상태의 변화가 발생한다.

• 상태 변화에 대한 판단은 디셈버의 고도화된 ‘마켓 시뮬레이터(Market Simulator)’를 사용, 실제 시장 상황과 거의 비슷하게 구현.

STEP 4. 변화된 상태를 보고 평가하여 점수를 산정한다.

• 벤치마크 대비 좋은 가격에 포트폴리오를 완성하고 있는가에 대한 평가.

• 가격 우위를 가지면 +, 아니면 – 점수.

STEP 5. 위 과정을 통해 만들어진 (State, Action, Next State, Reward) 정보를 기반으로 학습을 수행한다.

• 현재 상황(State)에서 내린 결정(Action), 상태 변화(Next State), 보상(Reward) 정보 바탕 학습.

• 상태 변화까지 학습하는 이유 : 다음 날 변화된 상태(Next State)부터

다시 주문 관련 판단을 해야하고, 그 결과가 포트폴리오 완성에 영향을 미치기 때문.

STEP 6. 위 과정을 반복하며 핀트 AI트레이더는 발전한다.

핀트돼지로 알아보는 AI트레이더의 강화학습 과정

핀트돼지는 트로피를 얻는 가장 좋은 경로를 학습하게 됩니다.

예를 들어, 위와 같은 상황에서 핀트돼지(Agent)는 트로피(Reward)를 얻기 위해 점프(Action)를 하는 게 좋은 지 직진(Action)을 하는 게 좋은 지 모릅니다. 점프하면 괴물에게 먹힐 확률은 없지만 동전을 못 먹고, 직진하면 괴물한테 먹힐 확률이 있지만 동전을 먹을 수 있으니까요.

이를 학습하기 위해 점프를 해보기도 하고, 직진을 해보기도 하면서 최종적으로 어떤 행동이 고득점에 적합한지 학습합니다.

위는 하나의 액션만을 고르는 문제여서 간단하지만, AI트레이더의 경우 선택할 수 있는 행동(Action)의 가지 수가 10종목의 수 이므로 매우 복잡하죠. 알파고와 비슷한 수준의 경우의 수 탐색이 필요합니다.

또, 학습 환경이 명확하고 시뮬레이션이 자유로운 게임과 달리 금융은 정해진 기한 내의 데이터를 사용해야 합니다. 시장 상황에 따라 변수가 많아 고민 요소가 더 다양합니다. 효율적인 정책 학습 알고리즘과 딥러닝 기술을 활용해 이득의 기대값을 높이는 행동(Action)을 하도록 모델링합니다.

여기서 기대값이 높은 행동(Action)은 단순히 해당 상황에서만이 아니라, 포트폴리오 완성까지의 다양한 시나리오를 고려해서 설정되어야 하니 더욱 복합적인 문제입니다.

고객의 첫 포트폴리오를 잘 완성하기 위해

핀트의 금융AI 기술은 인간이 계산하기엔 불가능에 가까운 수많은 경우의 수를 고려합니다.

이 과정을 통해 핀트 고객들은 대부분 시장가 대비 유리한(낮은) 평균 가격으로 매수하게 됩니다. 핀트 AI 트레이더는 해당 주문 모델 적용 이후 평균적으로 5.25bp 가량 더 싸게 신규고객의 포트폴리오 종목들을 매수하고 있습니다. 지정가 주문이라 운용 시점에 따른 편차가 크지 않은 것도 장점입니다.

핀트는 AI기술을 통해 인간이 계산하기엔 불가능에 가까운 수많은 경우의 수를 고려한 뒤 투자를 진행합니다. 신규 계좌뿐 아니라 운용 중, 꾸준히 투자, 해지 등의 상황에서도 같은 방식으로 문제를 풀고 있죠.

디셈버앤컴퍼니 플랫폼개발실의 주문집행엔진 연구/개발 부서는 지속적인 모니터링을 통해 AI 트레이더의 의사 결정 및 실제 시장 상황에서의 결과 등을 분석하고 있습니다. 이러한 경험을 토대로 더 나은 서비스를 만들어 나가기 위해 끊임없이 고민하고 있습니다.



디셈버앤컴퍼니자산운용 준법감시인 심사필 제2022-255호(2022.10.28 ~ 2025.10.27)
• 예금자보호법상 보호상품 아님 I 자산가격 변동 등에 따른 원금손실(일부 또는 전액) 발생 가능 및 투자자 귀속 I 성과수수료는 고객과 합의에 의함 I 투자 전 설명 청취 및 상품설명서·약관 필독 I 고객에게 맞는 투자 또는 수익달성 비보장 I 로보어드바이저 테스트베드 통과 I 테스트베드 통과가 수익달성 비보장
• 핀트는 디셈버앤컴퍼니자산운용의 투자일임서비스입니다.