본문 바로가기

실전 알고리즘 트레이딩 전략 만들기 2

starryperson 2022. 6. 24.

첫 번째 알고리즘 전략은 승률과 손익비가 좋지 않아 테스트를 중지했습니다. 저번 주식 매매 기법 2에서 나온 매매 기법을 응용해서 두 번째 프로그램을 만들겠습니다. 매매의 큰 틀은 지지와 저항을 판단하여, 매수와 매도를 하는 방법입니다. 다만, 심도 있게 들어가기 위해 여러 가지 조건과 가설을 세우고 들어가야 합니다. 지금부터 실전으로 사용될 알고리즘 트레이딩 전략을 만들어 보겠습니다.

 

알고리즘 트레이딩 전략 개요

어떤 스타일의 트레이딩 전략을 만들것인가?

우선 가장 먼저 생각해야 할 문제는 스캘핑, 단타, 중기, 장기를 선택해야 합니다.  이 문제는 자동 프로그램의 장점을 살려, 스캘핑과, 단타로 한정하겠습니다. 동시에 여러 종목을 빠르게 진입하고, 수익을 내고 빠져나와야 하기 때문입니다. 그럼 스캘핑과 단타의 장점과 단점을 살펴보겠습니다.

 

스캘핑과 단타의 장점

  1. 전체 시장의 영향을 덜 받는다.
  2. 매수한 종목 오버나잇 비율이 적다.
  3. 비중을 줄여 많은 매매를 할 수 있다.
  4. 알고리즘 트레이딩 테스트를 빨리 끝낼 수 있다.

스캘핑과 단타의 단점

  1. 종목의 방향성이 없을 때 잦은 손절이 발생한다.
  2. 매수 타이밍이 좋아도 시세만큼 수익을 발생시킬 수 없다.
  3. 동시에 많은 종목이 검색되어, 좋은 종목을 놓칠 수 있다.
  4. 예수금 관리가 되지 않는다면, 실시간 잔고가 항상 가득 차있다.

 

스캘핑과 단타의 단점을 극복할 수 있을 것인가?

시스템 트레이딩 프로그램이 이러한 단점들을 극복하고,  장점을 최대한 활용해야 한다. 이러한 점이 이번 프로젝트 성공 여부가 달려 있다.  이제 이러한 단점들을 극복 할 방법들을 알아보자.

 

종목의 방향성이 없을 때 잦은 손절 발생

실전 알고리즘 트레이딩 전략 예시

위 사진을 보면 알 수 있듯이 시세가 분출되기 전 매수 매도 신호가 많이 나오는 곳에서, 손실이 많이 발생하게 된다. 종목이 밴드를 설정하고 하락과 상승을 반복하는 구간이다. 즉 주포들의 주식 매집 인지, 물량 털기인지 확실히 알 수가 없다. 이러한 구간에 있는 종목들이 매수가 되었을 때 잦은 손절 대신 어떤 공통된 조건을 만들어야 한다.

 

종목 매수 후 충분한 수익 챙기기

실전 알고리즘 트레이딩 전략 예시

종목 매수 후 표시 한 만큼 충분한 수익을 확보 할 수 있어야 손익비를 맞출 수 있다.  이러한 종목을 고르는 건 일봉에서 공통된 조건을 찾아 필터링을 해야 한다.

 

동시에 많은 종목 검색

이 문제의 해결 방법은 예수금을 충분히 확보하든지, 잔고에 종목 수량을 제한해야 한다. 잔고에 있는 종목 수량을 제한할 때 무조건 매수를 하는 방법이 아닌, 현재 기존 잔고 종목 중에, 수익이 가장 큰 종목이나, 손실이 난 종목을 매도하고, 신규로 편입하는 방법을 사용해도 된다. 즉 종목 물갈이를 하면 된다.

 

실시간 예수금 관리

3번 문제 해결법과 같은 방법을 응용해야 한다. 즉 종목 물갈이인데, 가장 가격이 비싼 종목을 팔고 싼 종목으로 대체할지, 아니면, 종목을 선정 할 때 가격이 저가 종목이나 중저가 종목을 선정해야 한다. 

 

주식 매매 기법의 알고리즘 전략화

이제 소개했던 주식 매매 기법을 가지고 어떻게 알고리즘 전략으로 만들지 알아보겠습니다. 저번 주식 매매 기법을 통해 저항이 되는 가격을 심도있게 알아봤습니다.  저항의 가격대에서 팔기 위해 이제 필요한건 언제 매수를 할지에 대한 고민입니다. 프로젝트 A가 실패한 이유 또한 매수가격이 너무 고점이기 때문입니다. 이번 알로리즘 트레이딩에서는 매수 시점에 대해 더욱 세심하게 전략을 짤 계획입니다.

 

알고리즘 매도 전략

먼저 매도 전략부터 알아보겠습니다. 챠트를 보며 먼저 설명하겠습니다. 

주식 매매 기법 포스팅에서 , 5일선을 하락 변환시키는 캔들의 종가는 지지와 저항이 된다고 했습니다. 3분봉으로 수평선을 그어 놓은 지점이 변환시키는 캔들의 종가입니다. 가온칩스 종목입니다.

 

이 종목은 하이딥 입니다. 이번에는 5일선을 상승전환을 시키는 캔들의 종가가 저항으로 작용한 모습니다.  동그라미 친 부분이 저항 자리입니다. 추가로 몇 종목을 더 보여 드리겠습니다.

 

실전 알고리즘 매도 전략

위 종목은 삼부 토건입니다. 5일선을 하락 전환시키는 캔들의 종가가 저항에서 지지로 바꼈습니다. 하지만, 저항의 돌파는 이번 알고리즘 전략에서 언급하지 않겠습니다. 

실전 알고리즘 매도 전략

나인테크 종목입니다.  저항으로 작용한 모습입니다. 물론 실패한 종목도 많이 있습니다. 저항까지 반등 하지 못하고, 추가로 계속 하락하는 종목도 있습니다. 

실전 알고리즘 매도 전략 실패

이렇게 매수 신호에서 계속 손절이 나온 종목도 있습니다. 물론 이렇게 손절을 했다면, 큰 손실은 막을 수 있습니다. 하지만 시스템 트레이딩 승률에 영향을 끼치게 됩니다.

이런문제를 해결하기 위해 종목 선정에서 좀더 디테일한 작업이 필요합니다.

 

알고리즘 매수 전략

알고리즘 매수 전략은 간단합니다. 다만, 간단하게 만들기까지 많은 시행착오가 있었다는 점 먼저 밝힙니다.  종목이 하락에서 상승으로 전환되기 위해선 항상 공통점이 있습니다. 즉 전일 종가보다 당일 종가가 높아야 합니다. 그런데,  당일 종가를 보고 판단하면, 단타나 당일 매매 자체가 성립되지 않습니다. 

 

결국, 나름의 고민 끝에 발견한 방법이 동시간대 가격을 비교하는 방법입니다. 즉 현재 10시의 가격과 전날 10시의 가격을 비교하여, 당일이 높다면 하락에서 상승으로 방향 전환을 의미 한다고 가정하는 방법입니다. 

알고리즘 트레이딩 매수전략

일동제약 챠트 입니다.  전일 동시간대 가격보다 현재 가격이 높을 때 매수 하는 전략입니다. 물론 이 매수 방법이 100% 매수 타점을 알려 주지는 않습니다. 

알고리즘 트레이딩 실패사례

위 사진처럼 너무 난잡한 신호가 발생 하다 보면 잦은 손절이 발생하게 됩니다. 종목을 선정 할 때도 이런 종목들의 공통점을 잘 뽑아내서 종목 선정에서 잘 골나내야 합니다. 종목 선정 작업도 알고리즘 전략에 의해 선정이 되어 집니다. 

 

알고리즘 트레이딩 손절 전략

지금까지 알고리즘 트레이딩 매수 전략과 매도 전략에 대해서 알아봤습니다. 이젠 손절 전략도 알아보겠습니다.

알고리즘 트레이딩 손절 전략

매수 전략과 반대로 전일 동시간 대비 가격과 당일 가격을 비교하여 당일 가격이 낮다면 손절을 하는 전략입니다. 속임수에 당할 수 있지만, 시세 폭락을 막을 수 있는 방법입니다. 

 

알고리즘 트레이딩 전략화를 마치며

지금까지 알고리즘 트레이딩 전략화 과정을 마쳤습니다. 실제 자동 매매 프로그램을 만드는 시간은 얼마 걸리지 않습니다. 이렇게 설명하고 글로 표현하는게 더 많은 에너지를 소비합니다. 시스템 트레이딩을 처음 접하시는 분들 대상으로 개념 설명을 해 드리는 글을 쓰고자 했습니다.  잘 전달이 되고 있는지 잘 모르겠습니다. 이번 주말에 프로그램 완성하여 다음 주 부터 다시 실계좌 테스트를 진행 하겠습니다.  

댓글