본문 바로가기

프로그램 알고리즘 계획하기

starryperson 2022. 6. 14.

저번 포스팅에서는  간단하게 제가 시스템 트레이딩 개발할 때  과정을 소개하였습니다. 참고 하실 분은  누구나 만들수 있는 시스템 트레이딩에서 확인하시면 됩니다.

이제 조금 더 구체적으로 시스템 알고리즘 계획하는 방법에 대해 노하우와 제가 가진 지식을 포스팅 하겠습니다. 

 

자신도 모르게 사용하고 있는 알고리즘

시스템 트레이딩을 처음 접하시는 분들은  알고리즘이란 단어가 생소하게 들릴 수 있지만, 단어가 어렵지 실제 각자 사용하는 각 증권사 HTS를 통해 특정 조건의 종목 검색을 할 때 사용하고 있습니다.  예를 들어 간단하게 거래량 상위 50위 상승률 50위  이 조건 두 가지를 이용해 당일  주도주를 알 수 있습니다.  이 중에 우리가 트레이딩 할 종목을 선택하듯이  프로그램에도  이런 조건을 더해주면 됩니다.

 

종목 검색에서 알고리즘까지

이제 간단하게 종목 검색에서 구체적으로 알고리즘을 계획 하는 단계와  주의 사항을 살펴 보겠습니다.

일단 예시로 오늘 오전 한 종목을 캡쳐하여 가져왔습니다.

미래생명자원 3분봉

위 사진의 매수 신호가 찍힌 지점들은 키움 수식 관리자에서 간단하게 조건을 설정하여 주식 챠트에 적용 시킨 결과입니다.

특별한 건 없습니다.  조건은 아주 간단합니다. 

  • 전일 고점보다 현재 가격이 더 높을 것
  • 전일 거래량보다 당일 거래량이 더 많을 것

딱 이 두 가지 조건으로 필터링 했습니다. 눈으로 보기엔 좋아 보이지만, 하지만, 실제로 이 알고리즘으로 시스템을 가동 했을 때, 너무 많은 종목을 매매해야 되기 때문에 자본이 무한대가 아닌 이상  시스템을 가동하기 어렵습니다. 그래서 좀 더 조건을 추가하여 디테일하게 계획을 잡아야 합니다. 

 

알고리즘에 포착된 종목들의 매수 시점, 매도 시점, 익절 , 손절,  추가 매수, 일부 매도 등 아직 구체화 해야 할 일들이 많이 남아 있습니다.  어떻게 조건을 구체화 시킨 지에 따라 프로그램 수익률이 플러스에서 마이너스로 갈 수도 있고, 반대로 마이너스에서 플러스로 갈 수 있습니다. 또한 수익률도 차이가 나기 때문입니다. 

 

알고리즘 구체화 주의 사항

이제 알고리즘을 계획할 때 자주 하는 실수와 개인적으로 가장 이상적인 범위를 설명하겠습니다. 

  • 제가 만든 두 가지 조건처럼 너무 간단하면 생각보다 많은 종목들이 검색 되어 무한대 자본이  아니라면 사용하기 어렵습니다. 
  • 조건이 너무 많으면, 검색되는 종목이 너무 없어 매매 할 종목이 없는 겁니다. 시스템 트레이딩 성격상  한 종목에 많은 금액을 투자 하기엔 리스크가 너무 큽니다.
  • 제가 생각하기에 적당한 필터링 종목은 자본 유무와 구체적인 조건에 따라 다르겠지만, 관심 종목에서 매일 평균 3~5종목 정도로 검색이  가장 좋습니다.

 

위 사진처럼  많은 조건들이 겹치는 빨간 부분을 찾아서 테스트 하는 과정이 필요합니다.  너무 많지도 않고, 너무 적지도 않은 자신이 감당할 수 있는 범위까지 좁히는 작업이 필요합니다.

 

마치며 

이번 포스팅에서는 시스템 트레이딩을 만들 때 가장 먼저 해야 되는 알고리즘 계획 짜기에 대해 알아봤습니다. 다음 포스팅에서는 실제로 제가 사용 할 알고리즘을 계획하는 과정을 포스팅 하겠습니다.

 

 

 

댓글