Trading2019. 4. 23. 16:14




System Trading 

 


자동매매 시스템 구현/운용 위한 실전 정보.

자동매매뿐만 아니라 손매매시에도 유용한 정보.

 

증권사 API 기반 자동매매 시스템 개발 . 

- API 활용 방법 정리.


상용툴 S/W 기반 자동매매 구현.

- 예스트레이더, 시그널 메이커, 메타트레이더 등.

- 소셜 시스템 트레이딩.


트레이딩 관련 유용한 정보들.

- 거래 대상 종목.

- 지표들.


용어 

시스템트레이딩, 매매봇, 자동매매, 로보트레이딩, 머신트레이딩, 오토트레이딩 다 같은 의미.


 




자동화된 시스템 트레이딩 

"디지털 노마드" 를 실현하는 최고의 수단. 
단, 스스로 능력을 발전 시키고 구현한 자에게만 주어지는 보상.




 

기초 

 

 시스템 트레이딩이든 수동 손매매든 트레이딩 이라는 점에서는 동일하다. 기초 개념 부터 정리하자.  
 
 트레이딩 기초 개념 : http://igotit.tistory.com/1548

 
 


 

 

트레이딩 초특급 전문가

 

수익의 규모가 상상을 초월할 정도로 큰 트레이딩 대가들. 그 들의 결과물인 성과만 보지말고 그들이 어떤 특징을 갖고 있길래 큰 수익을 거두었는지 배워서 본인 실전매매에서 반영하도록 하자. 비록 우리의 결과물이 그들 만큼 수십조 단위는 아니어도 수억~수백억 수익 내는데는 큰 도움을 받을 수 있다. 

시스템 트레이딩 분야. 


 - 공통점 : 수학적인 수단과 컴퓨터를 이용한 트레이딩에 특화.

이름 

 특징.


 에드워드 소프 


 

 1961년 이후 20년간 월스트리트 최고수익율 달성. 


 상세보기 : http://igotit.tistory.com/1581


 제임스 사이먼스


 

연봉 3조로 국내에 많이 알려짐.



 에드 세이코타


 

16년간 250000% 수익률 달성. 


상세보기 : http://igotit.tistory.com/1580


 데이비드 쇼


 

상세보기 : http://igotit.tistory.com/1625


 


 




 

API 활용.

 

증권사에서 제공하는 API 기반하여 자동매매시스템 구축하기 위해서는 C++. C# 등의 언어기반하여 매매전략뿐만 아니라 모든 소프트웨어 구성요소(실시간 데이터 수신부,챠탕처리,  데이터 처리부,전략 로직부,  주문 실행부, 주문 관리부 등)들을 모두 로레벨 코딩으로 구현해야하므로 높은 수준의 코딩 스킬과 많은 시간이 요구된다.

API 기반 구축하는 경우의 장점
- 새롭게 등장하는 최첨단 기술( 예 : GPU 기반 딥러닝등 ) 을 매매시스템에 접목 가능.  
- 상용툴 S/W 에서 구현하기 힘든 것들 구현시 유리. ( 예 : 초단타매매, 섬세한 호가정보, 코드내에서 지정가 주문, 정정, 취소 등의 섬세한 주문관리 )


 증권사 API 리스트

 
 위 주소에 정리된 것처럼 많은 증권사에서 API 제공하고 있으며, 본인 취향에 맞는것으로 골라 도입하여 개발하면 됨. 


 증권사 해외선물 수수료 비교. 편도 3달러 이하만 : http://igotit.tistory.com/1716



 유진투자선물. OpenAPI. 

  유진 OpenAPI 개요, 활용준비 : http://igotit.tistory.com/1730
  유진 OpenAPI  Visual C++ 에서 코딩 시작하기  : 


 NH선물. OpenAPI. 

  NH선물 OpenAPI 개요, 활용준비 : http://igotit.tistory.com/1731
 

 하나금융투자. 1Q OpenAPI. 

  1Q OpenAPI 개요, 다운로드, 설치 : http://igotit.tistory.com/1710
  1Q OpenAPI  Visual C++ 에서 코딩 시작하기  : http://igotit.tistory.com/1711

 키움증권 OpenAPI-W - 해외선물 전용

  OpenAPI-W  개요. 다운로드.설치. : http://igotit.tistory.com/969 
  OpenAPI-W  Visual C++ 에서 코딩 시작하기 : http://igotit.tistory.com/970
  OpenAPI-W 실시간 시세 수신 구현 : http://igotit.tistory.com/977
  OpenAPI-W 실시산 시세 0시 직후 시각정보부실 해결책 : http://igotit.tistory.com/986
  OpenAPI-W 활용팁, 주의사항 (초당조회수 제한등) : http://igotit.tistory.com/1720


 동부증권 API - 해외선물 전용

  동부증권 API 사용신청 예제소스코드 다운로드. http://igotit.tistory.com/1099
  동부증권 API Visual C++ 코딩 시작하기 : http://igotit.tistory.com/1150


 이베스트 증권 xingAPI

  xingAPI DLL. Visual C++ 코딩 시작하기. http://igotit.tistory.com/499
  xingAPI DLL 버전업 방법 : http://igotit.tistory.com/758 



암호화폐 bybit API (REST , WebSocket API)

bybit API 실시간 시세수신 파이썬.  https://igotit.tistory.com/2490


 암호화폐 GOPAX API (REST API)

  GOPAX API 자바스크립트에서 코딩하기.  https://igotit.tistory.com/2472
  GOPAX API 파이썬에서 코딩하기.  https://igotit.tistory.com/2474

  

 


 


 

자동매매 상용 툴 S/W

 

 상용툴 S/W에서는 시세수신 및 주문 기능은 구현되어있고, 사용자는 툴 S/W에서 제공되는 쉬운 언어기반 코딩하여 매매전략 구축/평가/실전 매매 하는 방식으로 활용된다.  API 기반 로레벨 코딩하여 시스템 구축 하는것  비교하여 전략 로직부분만 집중하여 구현하면 되므로 개발시간 단축 가능하다. 

상용툴 S/W 로도 초단타를 제외한 하루 수십번 진입하는 단타부터 스윙 , 장기 추세 추종 시스템등 모든 수익 내는 전략 구축 가능하다. 

 예스트레이더

  예스트레이더, 예스랭귀지, 예스스팟 개요. 설치. 기본사용법 :  http://igotit.tistory.com/836
  예스스팟 개요. Hello World 코딩예 : http://igotit.tistory.com/837
  예스랭귀지 개요 : http://igotit.tistory.com/842 
  예스트레이더에서 예스랭귀지 이용 매매전략 평가예 : http://igotit.tistory.com/871
  예스트레이더 활용시 봉가정 오류에 의한 가짜 우상향수익률 : http://igotit.tistory.com/869

 시그널메이커

  시그널메이커 개요 : http://igotit.tistory.com/1425
  시그널 메이커 활용법 모음. : http://igotit.tistory.com/1462


 메타트레이더

 메타트레이더(MetaTrader), MQL, EA(Expert Advisor) 개요 : http://igotit.tistory.com/711

 메타트레이더 4 체계정리(활용법/지식) :  http://igotit.tistory.com/1756


 메타트레이더 5 체계정리(활용법/지식) :  http://igotit.tistory.com/1775


 

 툴 S/W 비교.

 예스트레이더, 시그널메이커 에서 동일 전략  평가 리포트 비교 :  http://igotit.tistory.com/1471
 
 메타트레이더와 타 시스템툴 S/W 와의 비교. 
 압도적으로 메타 트레이더가 최고품질이며, 타 소프트웨어와는 비교 대상도 아닌 특장점들이 있다. 일부만 소개.
 - 연속 구동 가능 : 메타트레이더는 시스템 운용시 사람이 프로그램 구동및 종료 처리 하지 않아도 되며 심지어는 수개월간 켜둬도 자동매매 정상실행된다. 한국에서는 증권사 서버 날마다 재부팅 시키고, 시그널메이커든 예스트레이더든 심지어 API 기반 프로그램들 모두 서버와 연결이 끊기기 때문에 사람이 날마다 프로그램 재실행해야한다. 메타 트레이더는 전혀 서버와의 연결 끊김 없다. 
 - 전세계 시스템 트레이딩 네트웍 인프라  : 이 특징은 메타트레이더의 압도적인 최고의 안정성,품질 및 방대한 사용자 계층을 확보하고 있다. 현재도 전세계 많은 사람들이 활용중이다.  이것 보다가 한국 현실을 보면 처참한 수준...  
  

 


 


 

소셜 시스템 트레이딩.

 

내가 직접 시스템 개발하지 않고도 다른 전문 시스템 운영자의 신호를 받아서 자동매매 운영가능. 

소셜 시스템 트레이딩 가능한 수단. 

메타드레이더4,5 
- 메타트레이더는 전세계 수많은 브로커(증권사) 에서 사용가능하며 신호제공 역시 전세계인 누구나 , 그리고 카피하는 사람 역시 전세계인 누구나 가능하다. 메타트레이더는 현존(2019년 12월 기준)하는 모든 시스템 툴 S/W 중에 직접 전략 개발뿐만 아니라 신호 카피 매매에서도 독보적이고 이미 안정화 된 시스템이다.  
- 메타트레이더에서 카피 매매 가능한 전략들  순위 보기 : https://igotit.tistory.com/2294

2019년 12월 24일 시점 아래 제거함.  개인적으로 무용지물인것으로 판단했음.
프리캡  HTS http://igotit.tistory.com/1457
- 한국에서 특정 증권사에서만 사용가능하며, 아직 초기단계라서 완성도가 높지 않은 단점이 있다. 




 


 


 

매매 대상

 



FX 마진. 

- 초거대 외환 거래시장. 시스템 트레이딩 적용하기 좋은 최적의 거래대상.  
- 선물과 달리 만기일없음. 
- FX마진 더 알아보기 : https://igotit.tistory.com/1745


암호화폐 

- 완전한 연속거래 시장. 거래 쉬는 날 없음. (  FX마진은 한국시 기준 토, 일은 거래 없음. )

- 손매매든 시스템트레이딩이든 접근성 좋음. 

- 암호화폐 거래소 예 (bybit)  : https://igotit.tistory.com/2235



CME 선물 


원유, 골드, 유로FX, 나스닥, S&P 등 상세보기 : http://igotit.tistory.com/838


- 전세계 금융거래소 중에서 현재(2017년 7월) CME 상품들이 최대 거래 규모. 최장 연속(23시간) 거래 가능 .

- 해외선물들 대부분 변동성 크고, 충분한 유동성(전세계 거래자들이 참여함.),  하루 23시간 연속 시장이어서 시스템 매매 대상으로 최적의 종목. (사람은 23시간 연속 시장 감시하기 불가능하나, 자동시스템은 연속 매매가능.)




한국 선물이나 주식을 매매하지 않는 이유. 

  • - 트레이딩으로 수익을 낸다함은 가격변화를 수익으로 취하는 행위. 
  • - 동일자금이라면 변동성 큰 종목을 매매 대상으로 해야 수익기회 많아짐.(동시에 손실 기회도 많아짐에 주의 할것.)
  • - 한국선물이나 주식은 변동성 죽었음. 거래시간도 너무 짧음. 변동성 죽었고 거래시간도 짧으면 매매로 뭔가를 해볼 수 있는 기회 자체가 줄어든거임. 손실도 수익도 고만고만한 수준.  하나마나 한 짓은 안하면 된다.
  • - 한국선물옵션거래가 줄어든 이유 : 2010년까지만해도 전세계 1위 거래규모까지 발전했었는데 한국정부의 규제 개입으로 시장 박살냄. 전세계 거래자들은  시카고거래소(CME) , FX마진 등의 거대 시장이면서 변동성 충분한 시장으로 몰림. 
  • - 한국 주식이 시스템 매매에 적합하지 않은 이유 : 시스템트레이딩 대상은 통계적 일관된 유의성 있는 거래 특성이 있어야 수익내기에 유리하다. 시장 참여자가 국지적이고 거래자도 적은 종목들의 특징은 통계적 유의성이라기 보다는 인위적, 정치적 정보(회사 내부정보등 ) 정부의 불필요한 간섭 및 특정 소수 매매자들의 영향력이 크게 작용한다. 데이터과학/공학/통계/기술적 방식으로 전략 구축되는 시스템 트레이딩 으로 진검승부 불가능한 최악의 거래 종목임. 

 
 


 



 

마켓데이터

 

종목별 마켓데이터 다운로드.


유로FX (CME 선물):  http://igotit.tistory.com/1456


마켓데이터 주의사항. 

증권사 별 데이터 품질 차이 : http://igotit.tistory.com/1506

- 동일 전략을 증권사별로 시험해보면 차이를 보이는 경우가 있다. 증권사 별로 데이터 품질 차이가 있기 때문이며, 심각한 수준인 경우도 있다. 


마켓데이터 활용 

파이썬에서 금융시계열 데이터 쉽게 활용하기 : https://igotit.tistory.com/2124

 


 




 

자동매매 PC 설정

 
 자동매매 시스템 운영시 전산시스템 운용/관리 무결성 관리되어야 함.  네트웍 단절, 정전, 컴퓨터 불안정 사태가 장시간 방치되면 손실 위험 증가되므로 무결성 관리 수단 요구됨. 

 지정된 시간에 PC 켜기. http://igotit.tistory.com/142
 PC부팅시 로그인 창없이 자동로그인 하기.  http://igotit.tistory.com/170
 지정된 시간에 PC 끄기. 혹은 재부팅하기. http://igotit.tistory.com/90
 PC시계 정밀동기화. http://igotit.tistory.com/171
 윈도우 자동업데이트 금지 시키기. http://igotit.tistory.com/1103

 


 

 

코딩 언어/ 라이브러리

 

 

 Visual C++ 

 증권사 API 기반 트레이딩 툴 S/W 직접 코딩 하는 경우 Visual C++ 가장 강력함.

 매매가 느리게 이뤄져도 되는 전략이면 어떤 언어로 구현해도 관계없지만, 거래소에서 제공되는 원시 틱데이터 기반 고빈도 매매전략 까지 수행해야 하는 경우라든지  실시간 GPU기반 딥러닝 기술까지 접목하려면 시스템 코어는 필수 C++ 로 구현할것.  


 Visual C++ 에서 키움증권 OpenAPI-W 코딩 시작하기 : http://igotit.tistory.com/970

 Visual C++ 에서 동부증권 API 코딩 시작하기 : http://igotit.tistory.com/1150

 Visual C++ 에서 이베스트 xingAPI DLL 코딩 시작하기. http://igotit.tistory.com/499


 Visual C++ 일반 활용 정보 모음 : http://igotit.tistory.com/11


 TA-LIB 

 직접 코딩하는 경우 쉽게 활용가능한 지표계산 라이브러리.

 TA-LIB 개요 : http://igotit.tistory.com/1404 



 MQL ( 메타트레이더 )

 - 메타 트레이더 플랫폼에서 전략 코딩 가능한 언어. 

 - 메타트레이더 4 에서는 MQL4 , 메타트레이더 5에서는 MQL5 로 불리는데 이름만 MQL 이라 불릴 뿐 실제 MQL4 는 C언어, MQL5 는 C++ 임. 

 - 너무 강력하고 안정되어 있어서 이것 접하고 나면 API 기반 로레벨 코딩해온것이 억울할 지경.. 

 


 


 


 

매매전략

 

시스템 매매 초보부터 신의 경지 까지 수익 곡선 타입 5종.  http://igotit.tistory.com/1397

백테스트 시 봉가정 오류에 의한 가짜 우상향수익률 주의 : http://igotit.tistory.com/869 

승율, 손익비 : http://igotit.tistory.com/1525
- 매매전략 평가시 가장 중요한 수치.

TPI (Trading Performance Index, 매매성능지수 ) : http://igotit.tistory.com/1546
- 매매전략 성능평가 위한 가장 간단한 수치.  
- TPI 값이 1보다 큰 것이 수익 내는 매매전략이며, 1보다 작은 경우 손실 내는 매매전략임. 

- 매번의 매매진입시 투자원금대비 진입 계약수 결정기준. 
- 매매전략의 승율, 손익비에 따라 최고 누적 수익내기 위한 최적의 비율이 있다. 
- 최적비율보다 작으면 수익이 작아지고, 큰 경우 조기파산위험성 높아진다. 
- 투자원금 풀베팅 반복하면 반드시  파산( 계좌잔고 0 ) 한다.  
 
 


 









첫등록 : 2016년 3월 13일. 

최종수정 : 2019년 4월 23일. 


본 글 단축주소 : https://igotit.tistory.com/840






 

Posted by 리치굿맨

댓글을 달아 주세요

  1. 궁금해요

    안녕하세요 궁금한 점이 있어서 댓글을 남깁니다

    2013.11.01~2014.02.08
    해당 기간의 1분 5분 30분 240분의 캔들 차트를 확인하려 합니다

    확인하려는 종목은 대부분 해외선물의 통화 상품이며 종목명은 6bz13, 6cz13, 6ez13, 6bh14, 6eh14, 6ah14, 6jh14, 6ch14, 입니다


    예스트레이더 시물레이션 차트에서는 2015년12월31일 부터 캔들차트를 볼 수 있는데
    혹시 해당기간의 캔들차트를 확인할 수 있는 방법을 아신다면 답변 부탁드리며
    많이 아시는거 같아서 여쭤봅니다
    감사합니다

    2019.10.12 23:11 [ ADDR : EDIT/ DEL : REPLY ]
    • 안녕하세요~ 메타트레이더 매력에 푹빠져 수년전부터 다른 툴들은 아예 사용하지를 않다보니 기억이 가물 가물한데요.., 예스트레이더 나 시그널 메이커 모두 해당 프로그램 운용하는 증권사에 따라 제공되는 과거 데이터 제공량이 다릅니다. NH선물의 YesGlobalPro 가 과거 데이터를 제일 많이 제공해줬던 기억이 납니다. 좀더 정확한 정보는 증권사별로 예스트레이더 설치하여 비교해보는 방법이 있습니다.

      예스트레이더 제공해주는 증권사들 : https://igotit.tistory.com/836 의 중간 부분에 증권사 정리되어있습니다.

      데이터 품질도 증권사별로 차이 나는 경우 종종 있으니 주의 필요합니다.
      시그널 메이커의 경우 증권사별 시세 데이터 차이 비교 : https://igotit.tistory.com/1506

      2019.10.13 20:57 신고 [ ADDR : EDIT/ DEL ]
  2. 궁금해요

    댓글 달아주실줄은 몰랐는데 정말 감사합니다
    확인 후 정리되면 댓글 남길게요 ^^

    2019.10.15 18:47 [ ADDR : EDIT/ DEL : REPLY ]
  3. 안내해주신데로 NH 선물의 yesglabalpro 의 시뮬레이션 차트로 2013.12.01~2014.02.07기간의 1분 데이터를 확인해 보았습니다
    하지만 결과론적으로 연결선물 데이타라 그런지 제가 실제로 진입한 시간대에는 엉뚱한 가격이 존재하고 제대로 된게 없더군요

    아래 주소는 제 실거래 내역인데 대부분이 통화 선물이라 혹시 메타트레이더의 fx 차트에서 비슷하게 나올지도 모른다는 생각이 드네요
    https://postimg.cc/yWyQGRwb

    제가 메타트레이더를 설치해서 데이터를 다운받아본 경험이 없는데 혹시 이용하고 계시는 메타에서 위 기간의 1분봉 데이터를 확인할 수 있을까요?

    알고 계신 내용 친절히 답변해 주셔서
    다시한번 감사드립니다

    2019.10.15 20:58 [ ADDR : EDIT/ DEL : REPLY ]
    • 메타트레이더에서 과거 데이터 활용하는 방식은 매매챠트상에서 과거데이터를 보는것과 전략 평가하기 위한 내장 툴인 Strategy Tester 2종이 있습니다. 매매챠트상에서 과거데이터를 보는것은 오랜 과거 데이터 지원되지 않으나 Strategy Tester 에서는 고품질의 데이터를 활용하여 전략 평가 가능합니다. 2000년 부터 현재까지 1분봉 데이터도 깔끔하게 제공됩니다. Strategy Tester 에서 과거 데이터 적용예 영상을 새로 올려뒀습니다. -> https://igotit.tistory.com/1804 의 마지막 영상 보시면 감 잡으실 듯 ~

      2019.10.16 20:49 신고 [ ADDR : EDIT/ DEL ]
  4. 답변 감사드립니다 확인 후 상황 정리되면 댓글 남기겠습니다 ^^

    2019.10.18 00:06 [ ADDR : EDIT/ DEL : REPLY ]
  5. 안내해주신 정보로 메타5 fxcm 다운 - 데모계좌 접속 - 데이터 저장 - strategy tester 로드해서
    아래 실거래 기록 최하단 첫번째 거래기록을 확인해보았으나
    https://postimg.cc/yWyQGRwb

    6BZ13 / 2013.12.04 16:04:09에 1.6386 이라는 가격 자체가 없어서 반포기 상태입니다 ^^:

    실제 거래기록인 6BZ13 의 선물 데이터를 구하고 어떤 툴인지는 모르겠지만 해당 툴안에 연결선물이 아닌 실 데이터를 넣어서
    돌려볼 수 있지 않는한 더 이상 진행이 안될것 같군요
    하하 그래도 답변해주셔서 너무 감사합니다
    복 많이 받으세요 ~




    2019.10.18 01:43 [ ADDR : EDIT/ DEL : REPLY ]
  6. 비밀댓글입니다

    2019.10.18 01:44 [ ADDR : EDIT/ DEL : REPLY ]
  7. 이화영

    국내거래소 통화선물 자동주문 가능한 API 가 있을까요. 감사합니다.

    2020.01.30 21:10 [ ADDR : EDIT/ DEL : REPLY ]
    • 한국거래소(KRX)에도 통화선물 상품이 있었군요... KRX 통화선물쪽은 저 개인적인 경험이 전혀 없다보니 명확한 가이드는 어렵지만 통상적인 아래 절차에 따라 직접 조사해보셔야 합니다.
      1. KRX 통화선물들을 한국 증권사들 에서 거래 중개 여부.
      2. 상기1결과 거래 중개하고 있다면 해당 증권사에서 배포하는 통화선물 거래가능한 API 배포여부.

      관련.
      한국거래소 통화선물경험은 없지만 시카고 선물 거래소(CME. 상세 : https://igotit.tistory.com/838 )의 선물들(한국에서 흔히 해외선물이라고 부르는 류들)이 한국 증권사거쳐 개인도 거래가능하고, https://igotit.tistory.com/493 에서 해외선물 지원되는 증권사들의 API 활용가능합니다.

      2020.01.30 21:49 신고 [ ADDR : EDIT/ DEL ]
  8. 비밀댓글입니다

    2020.02.02 15:15 [ ADDR : EDIT/ DEL : REPLY ]