인공지능으로 주식투자하면 수익률 정말 높을까?

<안명호의 인공지능과 미래금융>

  • 안명호 딥넘버스 대표
  • 입력 : 2017.05.23 17:07:42   수정 : 2017-05-26 14:27:26
  • 프린트
  • 이메일
  • 페이스북
  • 트위터
  • 카카오스토리
  • 공유
 기사의 0번째 이미지
사진설명[사진 출처 : 매경DB]
작년 이세돌과 바둑대결에서 알파고가 보여준 위력은 정말 가공할만했다. 대국시작전에는 기계는 아직 인간을 이기지 못할 것이라고 생각했지만 끝난 후에는 알파고의 능력을 인정하고 머신러닝 기술이 새롭게 펼쳐나갈 세상에 대한 기대감으로 바뀌었다.

알파고의 위력을 확인한 사람들의 관심은 자연스럽게 금융으로 쏠렸다. 이세돌을 격파할 정도로 대단한 알파고가 금융투자에 적용된다면 사람이 하던 기존 투자보다 더 우월하지 않을까 하는 생각을 많이 가졌고 모언론사에서는 인간과 기계의 투자대결을 실제로 실행하기도 했다.
사실 금융은 태생부터가 머신러닝에 적합한 분야라고 할 수 있다. 모든 것이 숫자로 이뤄져 있는 데다가 숫자를 잘 계산하기 위해 필요한 수학적인 지식들도 잘 갖춰져 있다. 머신러닝 기술을 사용하기 적합한 환경이다.

그렇다면 알파고에 사용된 강화학습, 딥러닝등의 최신 머신러닝기술을 금융투자에 적용하면 높은 수익률을 만들수 있을까?

이에 대한 나의 대답은 “가능하다. 단 적절히 잘 사용한다면”이다. 특히 뒷부분에 기술한 “적절히 잘 사용한다면"이 핵심 포인트다. 머신러닝이 무작정 좋은 결과를 만들어 내지는 않는다.

모든 투자는 예측을 필요로 한다

모든 종류의 투자는 어쨌든간에 예측을 필요로 한다. 투자가가 A회사 주식을 매수했다는 것은 그 회사가 좋아서, 혹은 그 회사의 창업이념이 좋아서가 근본적인 이유는 아닐 것이다. 미사여구를 제외하고 한마디로 줄이면 A회사의 주가가 올라갈 것이라는 예측을 했기 때문이다. 그리고 우리는 머신러닝을 이용한 예측으로 수익을 만들어내고 싶어한다.

금융투자에 머신러닝기술을 사용하는 방법은 딥러닝에 의한 예측, 강화학습에 의한 예측으로 분류할 수 있다. 어떤 머신러닝기술을 사용하더라도 크게 보면 스토리는 비슷하다.

1)예측에 도움이 된다는 데이터를 수집하고

2)수집된 데이터와 머신러닝기술로 예측모델을 만들고

3)예측된 결과에 따라 투자를 실시한다.

머신러닝 기술은 2번째 단계에 활용되며 머신러닝기술로 금융투자를 하려면 일정수준 이상의 정확도를 보여줘야 한다. 이 시점에서 중요한 의문 “머신러닝기술은 어떻게 예측을 할 수 있을까?”에 대해 생각해볼 필요가 있다.

담은 의외로 간단하다. 과거를 학습해 미래를 예측한다. 과거 데이터를 이용해 입력된 데이터들간의 상관관계를 학습하고 주어진 데이터들이 어떤 확률분포의 모습을 보이는지를 학습하고 이것들을 이용해 예측한다.

그러나 위의 설명에는 다음과 같은 매우 강력한 한가지 전제가 필요하다. 바로 “과거에 발생했던 일은 미래에도 발생한다”이다. 만약 과거에 보였던 특성이 미래에 동일 혹은 유사하게 나타나지 않는다면 과거의 데이터를 학습하는 것은 아무런 의미가 없다.

미래 예측의 전제 ‘정상성’

여기서 대두되는 개념이 바로 정상성(Stationarity)이다. 머신러닝기술을 이용해 예측하려면 과거의 데이터와 미래의 데이터가 유사한 모습을 보이는 성질을 가져야 한다. 이러한 성질, 데이터의 분포를 정상성이라고 한다.

정상성은 머신러닝의 적용 가능성에 큰 영향을 미치는 요소다. 시간에 따라 변화하지 않는다는 것은 시간의 흐름에 따라 달라지지 않는, 즉 과거에 나타난 데이터 패턴이 미래에도 반복해서 나타나는 것을 의미하기 때문이다. 목표로 하는 데이터에 정상성이 있다면 머신러닝기술은 과거데이터를 학습해 미래를 잘 예측할 수 있다. 물론 정상성이 있다하더라도 데이터의 패턴이 학습에 용이하냐, 그렇지 않냐에 따라 예측성능이 달라질 수 있다.

 기사의 1번째 이미지
사진설명정상성을 보여주는 데이터와 그렇지 않은 데이터의 차이 [사진 출처 : 위키피디아]
너무도 당연하게도 정상성이 없다면 머신러닝기술이 별다른 위력을 보여주지 못한다. 아무리 멋진 최신 딥러닝기술이라 하더라도 데이터 패턴이 일정한 규칙없이 시시각각 변한다면 예측력은 기대할 바가 못된다.

금융 데이터는 정상성을 가지고 있을까?

그렇다면 금융시장의 데이터들은 과거와 유사한 흐름을 보여줄까? 즉 정상성을 가지고 있을까? 이 질문이 바로 머신러닝 기술의 적용여부와 예측력에 대한 키 포인트다. 그동안 수많은 사람이 연구하고 논의한 결과 다수설은 바로 “정상성이 없다"이다.

즉 과거의 데이터로 미래를 예측하는 것은 쉽지 않다고 이야기한다. 실제 주가데이터를 테스트해보면 브라운운동(Brownian Motion)의 특성을 보여준다. 브라운 운동은 1827년 스코틀랜드 식물학자 로버트 브라운(Robert Brown)이 발견한 것으로 액체나 기체 속에서 미소입자들이 불규칙하게 운동하는 현상을 말한다. 브라운 운동에 의한 물체의 움직임을 표류(漂流)라고 한다.

 기사의 2번째 이미지
사진설명브라운 운동을 도식화한 그래프 [사진 출처 : 위키미디어]
브라운 운동은 시간에 따라 확률분포가 변화하기 때문에 당연히 정상성을 가지고 있지 않다. 정상성이 없다는 것은 비유하자면 매번 규칙이 바뀌는 게임을 하고 있다고 할 수 있다. 예를 들어 동전던지기를 하는데 동전의 앞면이 나오면 이기는지 지는지가 무작위로 결정된다고 생각할 수 있다.

상식적으로 생각해도 금융시장이 정상성을 가지고 있다면 불확실성이 사라지기 때문에 주식시장은 존재할 수 없다. 주식투자에 실패했던 뉴턴의 말을 인용해보자.

“천체의 움직임은 계산할수 있어도 인간의 광기는 도저히 측정할 수 없다."(I can calculate the movement of the stars, but not the madness of men)

앞서 얘기한 사실들을 종합해보면 머신러닝기술은 정상성이 없는 금융데이터를 다루기에 적합하지 않다라고 결론을 내리는 것은 전혀 어색하지 않다. 분명히 정상성을 가지고 있지 않은 데이터에 머신러닝기술을 적용하는 것은 크게 기대할바가 되지 못한다.

그러나 관점을 달리 하면 아예 불가능한 것은 아니다. 마조도일이 자신의 제자에게 했던 질문인 “수레가 움직이지 않는다면 수레를 때릴 것인가? 아니면 소를 때릴 것인가?” 는 머신러닝을 금융에 어떻게 적용해야 하는지를 잘 설명해준다고 볼 수 있다. 내가 가지고 있는 도구를 잘 활용할 수 있도록, 즉 데이터를 머신러닝이 학습하기 쉬운 형태로 만드는 것이 중요하다.

정상성이 없는 데이터라도 정상성이 있도록 데이터를 변환한 후에 머신러닝기술을 사용하면 결과는 매우 달라질 수 있다.
머신러닝 기술은 그 자체로서 결과물이 아니라 결과물을 만들기 위해 사용하는 하나의 도구이기도 하기 때문이다. 이 도구를 어떻게 활용하느냐에 따라 모든 것이 달려있고 금융투자 역시 예외가 아니다.

무작정 머신러닝 기술을 적용했다고 해서 좋은 수익율을 기대하는 것이 아니라 좋은 수익률이 나오도록 머신러닝 기술을 활용하는 것이 핵심이다. 머신러닝 적용보다 앞서 데이터 정상성을 먼저 생각해야 하는 이유이며 여기서 앞으로 수많은 발전이 있을 것으로 기대한다.

[안명호 딥넘버스 대표]
[ⓒ 매일경제 & mk.co.kr, 무단전재 및 재배포 금지]
섬네일 이미지
안명호 딥넘버스 대표 다른기사 보기
카이스트에서 소프트웨어를 전공하고 일본 인텔 에셋 보드 멤버, 사이버르네상스 CTO 등을 역임했다. 통합전산센터 기술전문위원, 과제기획위원, 평가위원으로 활약했으며 딥넘버스라는 스타트업을 설립하고 인공지능기술을 금융에 접목하기 위해 노력하고 있다.