알고리즘 트레이딩의 대표적 인물

알고리즘 트레이딩은 시스템 트레이딩과는 약간 개념이 다르지만 알고리즘이나 통계를 기초로 트레이딩을 한다는 의미에서 넓게 보면 유사하다. 알고리즘 트레이딩의 대표격 인물을 살펴보고 정리하고자 한다. 애드워드 소프 애드워드 소프(Edward Thorp)는 알고리즘 트레이딩의 1세대라고 할 수 있다. 월스트리트 최초로 수학과 IT 시스템을 이용해 펀드를 운영했다. MIT 수학과 출신인 그는 뉴포트 파트라즈(Newport Partners)라는 투자회사를 설립했고 약 30년간 연평균 20%에 […]

중국 주식 투자 기회

가끔은 국내 주식뿐 아니라 해외 주식도 해봐야겠다는 생각들이 종종 든다. 한때 잘나가던 애플이나 최근 잘나가는 테슬라 등의 소식을 접할 때는 주식을 샀었으면 수익을 내지 않을까 하는 생각들이 계속 들곤 했다. 그러던 중 우연히 중국 주식 관련 책을 접하게 되었다. “지금 중국 주식 천만원이면 10년 후 강남 아파트를 산다”라는 책이다. 호기심반 의심반으로 책을 읽기 시작했다. 2014년 11월 […]

FIX 프로토콜 이해

시스템 트레이딩에서 자동으로 트레이딩을 하기 위해서는 각 증권회사에서 제공하는 API등을 이용해야 하는데 제 각각 달라 시스템 트레이딩을 확장하는데 있어 어려운 요소로 작용한다. 다행히도 FIX(Financial Information Exchange) 표준 프로토콜이 존재한다. FIX는 주식, 선물, 옵션, 채권 등 다양한 금융 상품들을 거래하기 위한 표준 프로토콜이다. 금융 상품 거래의 참여자들로부터 주문을 내는 고객, 중계를 해주는 증권사, 체결을 시키는 거래소가 […]

나이브 베이즈 분류 개념 이해

나이브 베이즈(Naïve Bayes Classification)는 확률 기반 분류기의 일종으로 1950대 이후 광범위하게 연구되고 있다. 쉽게 설명하면 다음과 같다. 예로 흡연과 간암과의 상관 관계는 널리 알려진 사실이다. 하지만 흡연을 할 경우에 간암에 걸릴 확률을 추정할 수 있을까? 이때 사용하는 방법이 나이브 베이즈 방법이다.  p(간암|흡연) = p(흡연|간암)*p(간암)/p(흡연) 즉 간암 확률과 흡연 확률 그리고 간암이 걸린 상태일 때의 흡연 […]

챠트 패턴 매칭을 위한 DTW

주가는 관성의 원리에 따라 추세를 지속하려는 속성이 있으며 파동과 사이클을 반복하려는 속성이 있다. 주가의 추세를 담고 있는 챠트는 그런 면에서 의미가 있다. 차트의 대표적인 유형으로는 상승 추세와 하강 그리고 횡보 추세 등 다양하게 존재한다. 이러한 점은 로봇 트레이딩에서 중요한 정보로 사용된다. 로봇 트레이딩에서 기계적으로 챠트 유형이나 패턴을 분석하고자 할 때 DTW(Dynamic Time Warping)이라는 알고리즘을 사용하기도 […]

의사 결정 트리 (Decision Tree)를 활용한 주식 예측 방법

의사 결정 트리는 데이터 마이닝에서 일반적으로 사용되는 방법으로 입력 변수에 대하여 분류/예측하는 모델을 생성하는 것을 목표로 한다. (위키백과에서 그림 발췌) 위 그림은 타이타닉 생존자에 대한 결정 트리를 나타낸 것이다. 의사 결정 트리는 화이트 박스(white box)로 분류 기준을 쉽게 파악할 수 있는 장점이 있다. 주식에 있어서는 비슷한 방법으로 활용 가능하다. 가령 다음날 주가를 예측한다면 주가에 영향을 […]

머신 러닝을 위한 프로그래밍 언어

머신러닝에 사용할 수 있는 여러 가지 프로그래밍 언어를 소개한다. 파이썬(Python) 파이썬은 배우기 쉽고, 이해하기 쉬워 사용자가 늘고 있다. 파이썬에는 scikit-learn, PyML, pybrain와 같은 머신 러닝 라이브러리가 있다. Jython은 JVM 기반 파이썬이다. R R은 오픈 소스 통계 프로그래밍 언어이다. 문법이 배우기 쉬운 건 아니지만 머신 러닝과 시각화를 위한 도구가 많다. rJava 프로젝트를 사용하면 자바 코드에서 R의 함수를 사용할 […]

머신 러닝 퀵 가이드

로봇(시스템) 트레이딩을 연구하기 위해서는 인공지능에 대한 이해도 필요하니 꾸준히 인공지능 관련 내용도 보완할 예정이다. 인공지능은 조금 막연하고 머신러닝이라는 이름 최근에는 딥러닝이라는 이름으로 구체화되고 있다. 머신러닝을 간단히 정의하면 아래와 같다 (카네기멜론 대학교 톰 미첼 교수 정의) 태스크 T에 대하여 경험 E를 학습하여 성능 P만큼 개선 머신러닝을 적용하기 위한 태스크가 있어야 하며 머신러닝이 학습하기 용이한 경험이 있어야 […]

SVM 활용 주가 예측 방법

이번에는 SVM(Support Vector Machine)을 활용한 주가 등락 예측에 대해서 언급하고자 한다. SVM은 신경망과 같은 지도학습이며 주로 패턴을 분류할 때 사용한다. SVM의 기본적인 원리는 간단하다. 아래 그림처럼 상단 빨간색 패턴과 하단 파란색 패턴이 분류되어 있을 때 이러한 패턴을 가장 잘 분류할 수 있도록 방법을 제시하는 것이 SVM이다. 마치 눈으로 보고 분리하듯이 패턴간의 마진(margin)이 가장 크도록 분리한다. […]

신경망에 의한 간단한 주가 예측

얼마 전에 유전자 알고리즘으로 주식을 예측하는 방법에 대해서 기술한 적이 있는데 이번에는 신경망으로 간단한 방법을 소개하고자 한다. 신경망(Neural Network)으로 예측하는 여러가지가 방법이 있겠지만 가장 간단한 방법을 설명하고자 한다. 신경망은 전형적인 지도 학습 방법으로 입력과 출력이 주어져야 한다. 주식 예측하는 방법도 역시 입력과 출력을 주어져야 한다. 관건은 어떤 입력과 출력을 주어져 학습을 하는냐가 중요한다. 예측하고자 하는 […]