알고리즘 트레이딩

마지막 업데이트: 2022년 5월 16일 | 0개 댓글
  • 네이버 블로그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 트위터 공유하기
  • 카카오스토리 공유하기
  1. 1. Korea Financial Investment Association, "2015 Financial Investment Fact Book," May 2015.
  2. 2. Han-Jun Lee and In-Seok Kim, "A study on improving cyber liability insurance for electronic financial incident in easy payment system," The Journal of The Institute of Internet, Broadcasting and Communication, vol. 16, no. 2, pp. 1-8, Apr. 30 2016.
  3. 3. Philip Treleaven, Galas Micha, and Lalchand Vidhi, "Algorithmic trading review." Communications of the ACM, vol. 56, no. 11, pp. 76-85, November 2013.
  4. 4. YesStock, https://www.yesstock.com/YesTrader/YesLanguage/YesLanguage_help.html
  5. 5. ZeroAOS 2.0, http://www.smallake.kr/?page_id6866.
  6. 6. Quantopian, https://www.quantopian.com/.
  7. 7. Market Analysis System, http://eiffel-mas.sourceforge.net/#header-bar.
  8. 8. Bforex, http://www.bforex.com/.
  9. 9. Suk Jun Lee and Kyong Joo Oh, "Finding the optimal frequency for trade and development of system trading strategies in futures market," Journal of the Korean Data & Information Science Society, vol. 22, no. 2, pp. 255-267, 2011.
  10. 10. Seung Hwan Chung and Kyong Joo Oh, "Using genetic algorithm to optimize rough set strategy in KOSPI200 futures market," Journal of the Korean Data & Information Science Society, vol. 25, no. 2, pp. 281-292, 2014. 원문보기 상세보기
  11. 11. Tuanhung Dao and Hyunchul Ahn, "An Optimized Combination of $<\pi>$ -fuzzy Logic and Support Vector Machine for Stock Market Prediction," Journal of Intelligent Information System, vol. 20, no. 4, pp. 43-58, December 2014. 원문보기 상세보기
  12. 12. Yong-Hwa Choi and Bok-Gyu Joo, "Development of a System Trading Technique Effective for Asset Value Stocks," Journal of Korean Institute Of Information Technology. vol. 12, no. 1, pp. 139-146, Jan. 31, 2014. 상세보기
  13. 13. Kim, Sun-Woong, and Hyun-Chul Ahn. "Development of an intelligent trading system using Support Vector Machines and genetic algorithms." Journal of Intelligence and Information Systems 16.1 (2010): 71-92.
  14. 14. Yong-Cheol Hwang and Young-Sic Song, "The Effect of Securities e-Service Quality(e-SQ) and Relationship Quality on Customer Loyalty," Proc. in Conference of Korea Association of Business Education-Spring, pp. 103-118, 2012.

실전 알고리즘 트레이딩 배우기(데이터 과학)

적립 안내사항 당월(1일~말일)매출 접수된 건에 대해 익월 20일 24시까지 적립됩니다. 카드 매출 취소된 경우 해당 금액만큼 발생된 예정 포인트를 제외하고 적립되며 포인트 적립 이후 카드 매입 취소 발생 했을 경우 익월 적립 시점에 ‘구매적립취소’ 항목으로 포인트 차감 되어집니다.

포인트 적립제외 무이자할부 이용거래 마이신한포인트 또는 SKpay포인트 사용(전액, 일부) 시 포인트 사용 분, 선불전자지급수단 충전금액 단기카드대출(현금서비스), 장기카드대출(카드론), 연회비, 각종수수료 ㆍ 이자(할부수수료, SMS이용수수료, 연체이자 등), 선불카드 충전, 기프트카드 구매, 국세, 지방세, 아파트관리비, 도시가스, 전기료, 4대보험, 대학교(대학원)등록금

신한카드 2,3,4,5,6,7 개월 ( 5 만원↑)
8,9,10,11,12 개월 ( 20 만원↑, SK pay 결제 시)
13,14,15,16,17,18,19,20,21,22 개월 ( 100 만원↑, SK pay 결제 시)

KB국민카드 2,3,4,5,알고리즘 트레이딩 6,7 개월 ( 5 만원↑)
8,9,10,11,12 개월 ( 20 만원↑, SK pay 결제 시)
13,14,15,16,17,18,19,20,21,22 개월 ( 100 만원↑, SK pay 결제 시)

현대카드 2,3,4,5,6,7 개월 ( 1 만원↑)
8,9,10,11,12 개월 ( 20 만원↑, SK pay 결제 시)
13,알고리즘 트레이딩 14,15,16,17,18,19,20 개월 ( 100 만원↑, SK pay 결제 시)

삼성카드 2,3,4,5,6 개월 ( 5 만원↑)
7,8,9,10,11,12 개월 ( 20 만원↑, SK pay 결제 시)
13,14,15,16,17,18,19,20,21,22 개월 ( 100 만원↑, SK pay 결제 시)

롯데카드 2,3,4 개월 ( 5 만원↑)
6 개월 ( 5 만원↑, SK pay 결제 시)
7,8,9,10,11,12 개월 ( 20 알고리즘 트레이딩 알고리즘 트레이딩 만원↑, SK pay 결제 시)
13,14,15,16,17,18,19,20,21,22 개월 ( 100 만원↑, SK pay 결제 시)

제외품목 순금매장, 아동용쥬얼리, 복지용구(요양보험), e-쿠폰/상품권/이용권 등 (제외품목 상품을 포함하여 할부 결제 시 할부 수수료가 청구됩니다.) 제외카드 체크/법인/개인사업자/선불/기프트카드 제외 (BC계열은 BC카드 무이자할부 적용)

파이썬으로 배우는 알고리즘 트레이딩 : 내 손으로 만드는 자동 주식 거래 시스템 조대표

스마일카드 카카오뱅크 프렌즈 체크카드

소비자가 전자상거래등에서 소비자 보호에 관한 법률 알고리즘 트레이딩 제 17조 제1항 또는 제3항에 따라 청약철회를 하고 동법 제 18조 제1항 에 따라 청약철회한 물품을 판매자에게 반환하였음에도 불구 하고 결제 대금의 환급이 3영업일을 넘게 지연된 경우, 소비자 는 전자상거래등에서 소비자보호에 관한 법률 제18조 제2항 및 동법 시행령 제21조 2에 따라 지연일수에 대하여 전상법 시행령으로 정하는 이율을 곱하여 산정한 지연이자(“지연배상금”)를 신청할 수 있습니다. 아울러, 교환∙반품∙보증 및 결제대금의 환급신청은 [나의쇼핑정보]에서 하실 수 있으며, 자세한 문의는 개별 판매자에게 연락하여 주시기 바랍니다.

ScienceON Chatbot

기존의 알고리즘 트레이딩 시스템에서는 투자전략을 금융사가 제공하는 프로그램밍 언어와 API들을 사용하여 사용자가 직접 프로그래밍 하여야 했기에 일반 투자자들이 사용하기에는 많은 어려움이 있어왔다. 따라서 본 논문에서는 사용자가 프로그래밍에 대한 지식이 없어도 손쉽게 자신의 투자전략을 사용자 인터페이스를 통하여 제시하면 이를 통하여 알고리즘이 형성되어 시스템 트레이딩이 수행되도록 하는 사용자 친화적인 트레이딩 시스템을 개발하는 것을 목적으로 한다. 본 시스템은 금융회사의 서버와 주식 정보를 송수신하고 매매를 수행하는 알고리즘 트레이딩 서버 부분과 투자전략을 설정하기 위한 보조지표들로 이루어진 사용자 인터페이스, 이를 기반으로 알고리즘이 생성되는 부분 등으로 구성되어진 클라이언트로 구성되어진다. 제안된 시스템은 모의 투자 실행을 통하여 사용자가 설정한 투자전략에 따라 설정된 알고리즘에 의하여 자동으로 매매가 이루어짐을 통하여 성능을 검증하였다.

Abstract

In current algorithm trading system, general users need to program their algorithms using programing language and APIs provided from financial companies. Therefore, such environment keeps general personal investors away from using algorithm trading. Therefore, this paper focuses on developing user-friendly algorithm trading system which enables general investors to make their own trading algorithms without knowledge on program language and APIs. In the system, investors input their investment criteria through user interface and this automatically creates their own trading algorithms. The proposed system is composed with two parts: server intercommunicating with financial company server to send and to receive financial informations for trading, and client including user convenience-based user interface representing secondary indexes and strategies, and a part generating algorithm. The proposed system performance is proven through simulated-investment in which user sets up his investment strategy, algorithm is generated, and trading is performed based on the algorithm

사용자가 프로그래밍에 대한 지식이 없어도 손쉽게 자신의 투자전략을 사용자 인터페이스를 통하여 제시하면 이를 통하여 알고리즘이 형성되어 시스템 트레이딩이 수행되도록 하는 사용자 친화적인 트레이딩 시스템을 개발하는 것

기존의 알고리즘 트레이딩 시스템에서는 투자전략을 금융사가 제공하는 프로그램밍 언어와 API들을 사용하여 사용자가 직접 프로그래밍 알고리즘 트레이딩 알고리즘 트레이딩 하여야 했기에 일반 투자자들이 사용하기에는 많은 어려움이 있어왔다. 따라서 본 논문에서는 사용자가 프로그래밍에 대한 지식이 없어도 손쉽게 자신의 투자전략을 사용자 인터페이스를 통하여 제시하면 알고리즘 트레이딩 알고리즘 트레이딩 이를 통하여 알고리즘이 형성되어 시스템 트레이딩이 수행되도록 하는 사용자 친화적인 트레이딩 시스템을 개발하는 것을 목적으로 한다. 본 시스템은 금융회사의 서버와 주식 정보를 송수신하고 매매를 수행하는 서버 부분과 투자전략을 설정하기 위한 보조지표들로 이루어진 사용자 인터페이스, 이를 기반으로 알고리즘이 생성되는 부분 등으로 구성되어진 클라이언트로 구성되어진다.

예스랭귀지를 사용하여 구성한 알고리즘의 예를 그림 1에서 보이고 있다. ZeroAOS는 고속 자동 매매 서비스를 제공하고 있으며 리눅스 표준개발환경인 ZeroVE를 제공하고 있고 C++기반의 알고리즘 제작 및 매매를 위한 툴을 제공하고 있다.[5] 국외 관련 기술들은 다음과 같다.

기존의 알고리즘 트레이딩 시스템에서는 투자전략을 금융사가 제공하는 프로그램밍 언어와 API들을 사용하여 사용자가 직접 프로그래밍 하여야 했기에 일반 투자자들이 사용하기에는 많은 어려움이 있어왔다. 따라서 본 논문에서는 사용자가 프로그래밍에 대한 지식이 없어도 손쉽게 자신의 투자전략을 사용자 인터페이스를 통하여 제시하면 이를 통하여 알고리즘이 형성되어 시스템 트레이딩이 수행되도록 하는 사용자 친화적인 트레이딩 시스템을 개발하는 것을 목적으로 한다.

저자의 다른 논문

참고문헌 (14)

  1. 1. Korea Financial Investment Association, "2015 Financial Investment Fact Book," May 2015.
  2. 2. Han-Jun Lee and In-Seok Kim, "A study on improving cyber liability insurance for electronic financial incident in easy payment system," The Journal of The Institute of Internet, Broadcasting and Communication, vol. 16, no. 2, pp. 1-8, Apr. 30 2016.
  3. 3. Philip Treleaven, Galas Micha, and Lalchand Vidhi, "Algorithmic trading review." Communications of the ACM, vol. 56, no. 11, pp. 76-85, November 2013.
  4. 4. YesStock, https://www.yesstock.com/YesTrader/YesLanguage/YesLanguage_help.html
  5. 5. ZeroAOS 2.0, http://www.smallake.kr/?page_id6866.
  6. 6. Quantopian, https://www.quantopian.com/.
  7. 7. Market Analysis System, http://eiffel-mas.sourceforge.net/#header-bar.
  8. 8. Bforex, http://www.bforex.com/.
  9. 9. Suk Jun Lee and Kyong Joo Oh, "Finding the optimal frequency for trade and development of system trading strategies in futures market," Journal of the Korean Data & Information Science Society, vol. 22, no. 2, pp. 255-267, 2011.
  10. 10. Seung Hwan Chung and Kyong Joo Oh, "Using genetic algorithm to optimize rough set strategy in KOSPI200 futures market," Journal of the Korean Data & Information Science Society, vol. 25, no. 2, pp. 281-292, 2014. 원문보기 상세보기
  11. 11. Tuanhung Dao and Hyunchul Ahn, "An Optimized Combination of $<\pi>$ -fuzzy Logic and Support Vector Machine for Stock Market Prediction," Journal of Intelligent Information System, vol. 20, no. 4, pp. 43-58, December 2014. 원문보기 상세보기
  12. 12. Yong-Hwa Choi and Bok-Gyu Joo, "Development of a System Trading Technique Effective for Asset Value Stocks," Journal of Korean Institute Of Information Technology. vol. 12, no. 1, pp. 139-146, Jan. 31, 2014. 상세보기
  13. 13. Kim, Sun-Woong, and Hyun-Chul Ahn. "Development of an intelligent trading system using Support Vector Machines and genetic algorithms." Journal of Intelligence and Information Systems 16.1 (2010): 71-92.
  14. 14. Yong-Cheol Hwang and Young-Sic Song, "The Effect of Securities e-Service Quality(e-SQ) and Relationship Quality on Customer Loyalty," Proc. in Conference of Korea Association of Business Education-Spring, pp. 103-118, 2012.

이 논문을 인용한 문헌

궁금한 사항이나 기타 의견이 있으시면 남겨주세요.

  • DOI : 10.7236/JIIBC.2016.16.3.155 [무료]
  • 한국인터넷방송통신학회 : 저널
  • 학술교육원 : 저널

원문 PDF 파일 및 링크정보가 존재하지 않을 경우 KISTI DDS 시스템에서 제공하는 원문복사서비스를 사용할 수 있습니다. (원문복사서비스 안내 바로 가기)

[알고리즘트레이딩/전략편] 02. 시스템 트레이딩 개발툴 소개

알고리즘 트레이딩 (시스템 트레이딩)을 전략별로 시뮬레이션 해 보려면 개발툴이 필요하다. 강력한 툴이 있으면 좋겠지만 개인의 신분으로 강력한 툴을 접하기는 쉽지 않으므로, 증권사에서 제공하는 일반적인 HTS 기반의 시스템 트레이딩 API 툴을 이용해 본다.

여기서는 델타익스체인지에서 개발하고 동양증권에서 제공하는 선물/옵션 전용시스템인 고수2.0 Plus를 사용한다. 고수플러스는 선물/옵션 전용 HTS 이며, GOM (Gosu Object Module)이라는 COM (Common Object Module) 기반의 인터페이스를 제공하고 있다. GOM 기능을 사용하면 시스템 트레이딩 프로그램을 만들어 볼 수 있다.

GOM은 아래와 같은 객체들을 제공하며, 주된 기능으로는 주문관리, 시세관리, 차트관리 기능 등이 있다. 또한 GOM은 아래의 알고리즘 트레이딩 객체들을 타입 라이브러리 (Type Library)형태로 제공하고 있어 사용자가 쉽게 이용할 수 있다 (세부사항은 델타익스체인지 : www.thegosu.com 사이트 참조).

필자는 VC++/6.0을 이용하여 GOM의 객체들을 이용하고 있다. 샘플로 아래 그림은 필자가 테스트해 보고 있는 화면이다. 고수플러스 HTS 기반 위에서 필자가 제작한 자동매매 로봇 4 대가 돌아가고 있는 모습이다. 필자는 차트 분석을 잘 하지 않는 편이라서, 로봇의 화면은 주로 수치와 텍스트를 기반으로 하고 있다. 그다지 화려해 보이지는 않는다 [그러나 성능은 좋은 편입니다 :)].

그림의 좌측 화면은 고수플러스가 제공하는 행사가격 별 옵션의 시세 정보이다. 그 아래 화면은 주문 접수 및 체결 내역이고 로봇에 의해 접수된 주문이나 체결된 내역을 보여주고 있다.

자동매매 로봇의 내부 구조는 간단히 아래와 같이 구성되어 있다. 시세 정보를 이용하여 전략을 분석하고, 매매 신호가 포착되면 주문관리 및 상태관리에 들어간다. 주문이 체결되면 수익 분석을 통해 계좌 및 통계관리를 수행하고, 손실을 관리하기 위해서는 위험관리 기능이 수행된다. 코딩의 샘플 화면도 아래와 같이 첨부해 보았다. VC++/6.0으로 코딩한 모습이고, 주로 상태 관리 기능이 많은 부분을 차지하고 있다.

필자는 자동매매 로봇을 제작할 때 상태 관리 (FSM : Finite State Machine)에 공을 많이 들이고 있는 편이다. 디자인 단계부터 상태천이도 작성에 많은 시간을 할애한다. 이렇게 코딩을 해야 복잡한 전략도 구현이 가능하고, 향후 Upgrade나 유지보수성이 좋아지기 때문이다. 특히 호가창 (Order Book)을 분석하거나 호가창에 주문을 넣거나 뺄 때 상태관리가 잘 이루어 지지 않으면 주문이 꼬이는 현상 등이 가끔 발생하게 된다.

또한 필자는 시장가 주문은 하지 않는 것을 원칙으로 삼으려고 한다. 시장가 주문을 하면 기능은 매우 단순해지지만, 수익을 내기가 어려워진다. 시장가 주문은 HF-Trader 들에게 좋은 먹잇감이 되기 때문에 가능한 한 배제하려고 한다. 그러나 차익거래를 위한 롱/숏 전략 등을 테스트 하려면 동시에 포지션을 구축해야 하기 위해 어쩔 수 없이 시장가 주문을 이용하기도 한다 (HF-Trader 들이 바라는 점일 것이다).

이번 시간에는 단순히 필자가 사용하고 있는 시스템 트레이딩 툴에 대해 소개해 보았고, 다음 시간부터는 쉬운 전략부터 하나씩 시연해 보고자 한다.

알고리즘 트레이딩

사실 책을 다 안 읽었다. 꼼꼼히 다 읽지는 못했고, smtm 프로젝트에 많은 도움이 될 것 같아서 전체적으로 쭈~~욱 한번 훑어봤다. 간단하게 장점, 알고리즘 트레이딩 단점 그리고 느낀점을 적어본다.

인기가 많아서 대출 기간 연장을 할 수 없었다ㅠ

책이 두꺼운 만큼 친절하고 자세하게 설명이 되어 있다. 설치하는 화면 하나 하나 이미지가 추가되어 있어서 더욱 책이 두꺼워진것 같다. 누구나 예외 없이 모두 따라하기를 성공할 수 있을것 같다. 파이썬 기본부터 GUI, 시각화, 데이터 분석, 백테스팅 심지어 주요 증권사의 API 사용법까지 모두 총망라되어 있다. 한 권만 보아도 폭넓게 이해가 가능하다.

특히, 4부 실전 알고리즘 트레이딩 부분은 실제 프로그래밍 상황에서 발생할 수 있는 문제나 고려해야 할 것들까지 정리가 되어 있어서 실무 담당자에게 실질적인 도움이 될 듯하다.

너무 친철하고, 세세하게 설명되다보니 중요한 부분이 잘 부각되지 않는다. 특히 설치 화면 같은 경우는 버전이 바뀌면서 함께 변경되는 경우가 많아서 오래되지 않아서 개정이 필요하게 될 수 있는데, 그런 내용에 너무 많이 지면을 할애한 것은 아닌가 싶다. 초보자를 위해서 자세하게 만들었겠지만, 책이 두꺼워지면 누구든 완독하기 힘들어지고, 자연스럽게 중요한 부분을 놓치게 된다.

백테스팅이나 실전 프로그램의 개발 부분에 궁금한 점이 많았는데, 그 부분에 좀 더 집중해서 설명이 되었으면 어땠을까 생각을 해본다. (꼼꼼히 읽은 상황이 아니라 조심스럽. ㅎ)

나는 엄청 간단하게 생각하고 smtm 뚝딱 진행하려고 했는데, 막상 전체 구조, 시스템 요구 사항을 정리하다 보니 만만치가 않겠다는 알고리즘 트레이딩 알고리즘 트레이딩 생각이 들었다. 이 책을 보니 그런 생각이 더 강해졌다. 내가 이 책의 모든 내용을 구현할 생각은 아니지만, 추가로 구현하려는 부분도 많기 때문에 그 규모가 상당할 것 같다는 생각이 든다.

이 책의 지은이 조대표님이 만드신 사이트를 자주 방문했는데, 거기 정보랑 이 책의 내용들을 정리하느라 상당히 알고리즘 트레이딩 알고리즘 트레이딩 많은 시간이 들었을 것 같다는 생각이 들어서, smtm의 출판이 가능할지, 오픈소스로 계속 할 수 있을지 등이 걱정이 되었다. 1년은 족히 걸릴 것 같다.


0 개 댓글

답장을 남겨주세요