거래 알고리즘에 대한 개략적인 이야기

거래 알고리즘에 대한 개략적인 이야기

Chan Sohn  | 2019년 01월 12일 12:04

선요약
- 알고리즘 개발전 시장을 이해해보자
- 판단 알고리즘이 많이 쓰이는 데, 개발을 하려면 시장을 진단할 줄 알아야한다.
- 연역법이 효율적일 수 있다.

예전부터 있었고 들어는 보았지만 조금 생소할 수도 익숙할 수도 있는 알고리즘 매매에 대하여 이야기하는 기회를 가져보려 합니다.

□알고리즘 매매?
우선 알고리즘 매매라는 것이 일정 논리구조(알고리즘)를 통해 상품거래가 자동으로 이루어지는 거래 방식입니다. 여기서 중요한 것은 ‘논리구조’와 ‘자동’이라는 단어인데, ‘자동’이 갖는 것은 운용(operating)의 영역이고 글에서는 ‘논리구조’에 조금 더 집중해서 이야기하려 합니다.
알고리즘 매매는 쉽게 매매(trading) + 수학적 공식화(mathematical formulation)로 구성되어 있다 말할 수 있습니다. 간단한 구성이나 수학적 공식화는 운용의 영역이고 결국 매매와 논리구조에 대하여 먼저 이야기를 해야 알고리즘의 종류를 이야기 할 수 있습니다.

□매매와 알고리즘
매매의 3요소를 간단히 이야기를 하면 마켓 타이밍(market timing), 포지션 사이징(position sizing), 리스크 관리(risk management)가 있습니다. 그리고 매매 전 자산의 분배를 통한 투자 설계가 있습니다. 알고리즘 매매 이야기 중 왜 매매의 구성요소를 말했는가 하지만 이를 알아야 알고리즘의 종류를 구분하고 이해하기가 쉽습니다. 알고리즘은 대부분 ‘자동거래’에 집중을 하지만 가장 효율적으로 쓰이는 곳은 ‘시장의 진단’과 ‘상황의 판단’입니다. 즉, 운전으로 치면 운전대를 잡는 것 보다 어떤 길로 가야 하는지 판단하는 것에서 더 큰 도움을 준다 보면 됩니다.

알고리즘의 종류는 위 자산분배에서 매매의 구성요소를 바탕으로 크게 ‘추격 알고리즘’, ‘판단 알고리즘’, ‘리스크 관리 알고리즘’과 같은 세 개의 카테고리로 구분할 수 있습니다.

추격 알고리즘의 경우 유동성 공급자들이 시장 내부, 시장 사이 스프레드를 조정할 때, 펀드들이 추세 추격하여 차익을 얻으려 할 때, ETF나 ETN이 가격 조정을 할 때 등의 상황에서 사용됩니다.
PS. 개인 분들은 마켓 타이밍에 굉장히 집착하여 설계를 하려거나 거래를 하십니다. 그러나 더 중요한 것은 판단이고 펀드들과 경쟁했을 때, 백 테스트 할 수 있는 데이터의 수준이나 양에서 차이를 못 좁힌다고 미리 말할 수 있습니다.

가장 시장에서 많이 쓰이는 것은 판단 알고리즘으로 유동성의 공급유무를 판단할 때, 전략에 따라 자산을 배치할 때, 시장모델을 평가할 때 등의 상황에서 사용됩니다. 결국 자산배치에 따라 매매가 이루어지는데, 결국 포토폴리오 설계[주식 및 선물시장에서 종목선택]가 먼저고 이에 따른 마켓 타이밍은 조금만 조절하면 되는 요소일 뿐입니다.
PS. 매매 속도는 마이크로 초(sec)단위로 움직일 수 있는 기계를 절대 이길 수 없습니다. 그러나 판단할 상황은 어느정도 시간을 가져야 하기에 판단에서 승부를 보아야 합니다.

리스크 관리 알고리즘, 배팅의 비율(position sizing), 레버리지 카테고리, 금융 리스크과 비금융 리스크, 리스크 균형 조정등에 쓰이는 알고리즘입니다. 실제로 투자은행의 주 업무는 크게 시장 조성(market making)과 리스크 관리입니다. 리스크 관리가 개인 분들이 관리하기 절대적으로 어려운 영역이나 돈의 규모와 상관없는 리스크 관리가 가능한 곳이 투자은행이라 보시면됩니다.

□귀납적? 연역적? [induction - deduction]
조금 뜬금없게 수학시간?에 보았을 법한 용어가 나타났습니다. 알고리즘을 만들 때에도 이 두 방법을 병행해서 사용합니다.

귀납법은 개개의 사실이나 명제에서 일반적 결론을 이끌어내는 추론하는 방법입니다.
연역법은 보편 명제에서 특수 명제를 이끌어내는 추론하는 방법입니다.

시장에 적용하면 귀납적 방법은 데이터를 기반으로 모델을 만드는 것이며 연역적 방법은 모델을 만들고 데이터를 백테스트하며 모델을 수정하는 방법입니다. 그럼 대부분 질문이 “이걸 알아서 어떻게 할 것인데?”인데, 방법론엔 정답이 없다는 것이 제 의견이고 더 효율적인 방법으로 시장에 참여하는 것이 중요합니다.

  • 개인적 의견으로는 연역적 방법이 개인분들에게 적합하다고 봅니다. 그렇게 생각하는 이유로는 귀납적 방법으로 접근했을 때, 1) 데이터량과 데이터 해석에 있어서 투자은행 및 대형 펀드와 정보의 소화 능력 차이가 심하게 납니다. 2) 기관 및 펀드가 귀납적 방법으로 시장에 접근한다 하지만 (수십년 노하우로 수정된 연역적) 시장모델을 가지고 귀납적인 방법으로 대응하는 것과 개인이 시장모델 없이 귀납적 모델을 만드는 것은 극복하기 힘듭니다. 3) 데이터를 해석해도 도전을 하지만 모델의 리스크를 스스로 판단할 수 없는 점이 있습니다.
  • 헤지펀드의 원자재 백테스트용 데이터

위 그림에서는 헤지펀드의 개략적 백테스트용 데이터를 보여줍니다. 왼쪽줄을 보시면 데이터의 날짜를 보실 수 있는데, 1877년도 부터 데이터를 가진 것을 눈여겨 볼 필요가 있습니다. 이 외에도 다양한 이유로 귀납적 방법을 추천하지 않는데, 포인트는 시장 모델을 이해하는 것에도 제법 많은 시간과 노력이 필요하다는 것입니다.

다른 칼럼에서도 이야기를 하지만 금리를 바탕으로 시장을 이해하는 것을 추천합니다. 연역법이 비합리적으로 보이고 초기에는 비교적 시간이 걸릴 지라도 효율적이라 이야기할 수 있습니다. 이러한 이유로는 시장은 눈에 보이지 않고 굉장히 크기때문에 누구도 (심지어 정부조차도) 100%정확한 진단을 할 수 없습니다. 그렇기 정부 기관들도 늘 시장의 모델에 대하여 설계와 수정을 하고 하는 입장에서 정보의 비대칭성이 데이터를 기반으로하는 것 보다 매우 적다고 할 수 있습니다.

□ 시계열 분석
투자 또는 투기는 엄연히 시간함수 속에 있기 때문에 음악과 같이 시간 예술이라 할 수 있습니다. 거꾸로 시장의 진단과 별개로 시간에 따라 대응하는 것이 중요한데, 이러한 해석 및 분석 방법 중에 시계열 분석이라는 것이 있습니다.

만약 알고리즘 매매를 직접적으로 하시려 한다면 시계열 분석에 있어서 어느 정도 조예가 있어야 한다 말할 수 있습니다.
* 설명이 길어질 것 같아 언급을 하는 수준에서 넘어가지만 꼭 공부를 해보아야 하는 부분입니다.

□ 시장 속 사람의 위치는
알고리즘도 결국 사람이 만드는 것입니다. 기계가 지치지 않고 일관된 판단을 내릴 수 있는 것은 사실이지만 이것을 설계하는 것은 아직까지 사람입니다. 사람이 완전하지 않기에 설계가 완전할 수 없습니다.
무조건 손실을 보는 알고리즘을 만든 실험이 있었는데, 이를 시장에 적용하여 여러번 거래를 했을 때 손실률은 82%였다고 합니다. 즉, 손실을 위해 설계가 되더라도 수익이 날 수 있는 것이며 수익을 위해 설계가 되더라도 손실이 날 수 있는 불완전성이 있기에 누구에게나 수익의 기회는 존재한다고 봅니다.

------- -------

Resolution Technology ← 신규로 사이트를 개설했습니다.

Chan Sohn

관련 기사

최신 의견

코멘트를 추가합니다
잠시만 기다리신 후에 다시 의견을 작성해 주십시오.
chung jae
chung jae

시스템을 사서 알고리즘 거래를 하는건 어떻게 생각하시는가요? 예스트레이더 홈페이지 등에 보면 시스템을 파는 사람들이 많더라고요. 다만 과최적화가 되어있는 시스템이 아니지 의심이 됩니다.  ... (더 보기)

2019년 01월 15일 05:34 GMT· 1 · 회답
용환 신
용환 신

요새 시스템을 만드는데 슬럼프가 와서 여러 고민들을 하던중에 이 글을 읽고 심리적으로 많은 도움이 되었습니다. 시스템매매는 무엇인지 근본적으로 접근하여 생각하고 고민할 수 있었습니다. . 정말 좋은글을 올려주셔서 대단히 감사합니다. 이 글을 통해 제 동료들도 많은 도움을 받았습니다 ^^  ... (더 보기)

2019년 01월 13일 08:09 GMT· 1 · 회답
Xavier Hwang
Xavier Hwang

뭔가 엄청 정보가 압축되어 있는 거 같네요... 그래서인가 한번보고 이해하기 힘들어요 ㅜㅜ  ... (더 보기)

2019년 01월 12일 15:01 GMT· 1 · 회답
창우 이
창우 이

good  ... (더 보기)

2019년 01월 12일 12:48 GMT· 회답
승선 양
승선 양

감사합니다  ... (더 보기)

2019년 01월 12일 12:26 GMT· 회답
진 안
진 안

감사합니다.어려운내용이지만 저만의 해석이 가능했던 좋은글이었습니다.  ... (더 보기)

2019년 01월 12일 11:47 GMT· 1 · 회답
EunJung Shin
EunJung Shin

감사합니다^^  ... (더 보기)

2019년 01월 12일 08:55 GMT· 회답
EunJung Shin
EunJung Shin

감사합니다^^  ... (더 보기)

2019년 01월 12일 08:55 GMT· 회답
Super Market
Super Market

방대한 내용이라 조금 어렵네요 ^^.좋은글 감사 합니다~~  ... (더 보기)

2019년 01월 12일 07:47 GMT· 1 · 회답
성헌 채
성헌 채

감사합니다   ... (더 보기)

2019년 01월 12일 07:04 GMT· 회답
효섭 심
효섭 심

강사합나다  ... (더 보기)

2019년 01월 12일 06:18 GMT· 회답
Kim DJ
Kim DJ

좋은 칼럼 감사합니다  ... (더 보기)

2019년 01월 12일 04:51 GMT· 회답
토론
답글 쓰기
잠시만 기다리신 후에 다시 의견을 작성해 주십시오.

금융상품과 암호화폐 그 양쪽 혹은 어느 한쪽의 거래는 출자액의 일부 혹은 전체를 잃을 수 있는 높은 위험을 포함하며, 모든 투자자에게 적합하지 않을 수 있습니다. 암호화폐의 가격은 매우 변동성이 높으며, 금융, 규제, 혹은 정치적 사건 등의 외부 요인에 의해 영향을 받을 수 있습니다. 마진 거래의 재무 리스크는 높습니다.
금융상품 혹은 암호화폐 거래를 시작하기 전, 금융 시장에서 거래할 때의 리스크와 비용에 대해 충분히 숙지해야 하며, 투자 목적과 경험 수준 및 리스크 수용범위를 숙고하고 필요할 경우 전문가의 조언을 구해야 합니다.
Fusion Media는 이 웹사이트의 데이터가 반드시 실시간이거나 정확하지 않다는 사실을 거듭 말씀드립니다. 웹사이트의 데이터와 가격은 반드시 특정 시장이나 거래소로부터 제공받는 것이 아니며, 투자전문기관으로부터 제공받았을 수 있고, 따라서 특정 거래소의 실제 거래가격과 정확히 일치하지 않거나 다를 수 있으며, 인디케이션이기 때문에 거래 목적에는 적합하지 않을 수 있습니다. Fusion Media 와 이 웹사이트의 데이터 제공자는 이 웹사이트에 실린 정보에 의존한 거래에서 발생한 손실이나 피해에 대한 법적 책임을 지지 않습니다.
이 웹사이트에 실린 데이터를 Fusion Media와 데이터 제공자 양쪽 혹은 어느 한쪽의 명시적 서면 허가 없이 사용, 저장, 복제, 전시, 수정, 송신 혹은 배포하는 것은 금지되어 있습니다. 모든 지적재산권은 이 웹사이트에 기재된 데이터의 제공자 및 거래소 혹은 어느 한쪽에게 있습니다.
Fusion Media는 웹사이트에 나타나는 광고 혹은 광고주와 사용자의 상호작용에 따라 광고주로부터 보상을 받을 수 있습니다.

English (USA) English (UK) English (India) English (Canada) English (Australia) English (South Africa) Deutsch Español (España) Español (México) Français Italiano Nederlands Português (Portugal) Polski Português (Brasil) Русский Türkçe ‏العربية‏ Ελληνικά Svenska Suomi עברית 日本語 中文 香港 Bahasa Indonesia Bahasa Melayu ไทย Tiếng Việt हिंदी
로그아웃
로그아웃 하시겠습니까?
아니요
취소
변경 사항 저장

+