왜? 자동매매?
저는 주식을 약 10년 동안 해왔지만 잘 하지 못합니다.
종가 매매를 하거나 2~3일 짧게 보유하는 스윙 매매 위주의 단기 매매를 주로 하고 있습니다.
하지만 어쩌다 돈을 잃는 날이면 내 안에 다른 내가 깨어나 당일 돌파/눌림 매매와 같은 뇌동매매를 통해 돈을 잃기도 합니다.
이런 뇌동매매를 하게 되는 날이면 거의 80~90% 확률로 벌었던 돈을 반납하는 경우가 많았던 것 같습니다.
저는 약간에 수익을 주는 종가매매와 스윙 매매를 직접 하면서 당일 강한 종목 들을 놓치기 너무 아쉬웠기 때문에,
자동매매 프로그램을 만들어 운영하면서 뇌동매매도 방지하고 당일 주도에도 올라타서 포모도 방지 할 수 있는 시스템을 만들게 되었습니다.
다만, 자동매매 프로그램도 매일 매일 항상 꾸준한 수익을 주지는 못합니다.
매매를 복기해보면 항상 아쉬움이 남는 것은 마찬가지 였고 무엇보다 매수는 괜찮지만 매도 타이밍을 잡는게 정말 어려운것 같습니다.
그래서 여러가지 기능을 만들고 추가하면 실험을 이어오고 있습니다.
정리해 보면 아래와 같을 것 같습니다.
당일 최대 이익 지정
%기준 트레일링 스탑
분봉 기준 트레일링 스탑
MACD 기반 트레일링 스탑
손실 제한 및 이익 보존
손절도 1%~2% 기계적 손절이 아닌 변동성을 기반으로 하는 손절
무엇보다 좋은 종목을 찾는 조건식도 계속해서 정교화 하면서 소액으로 여러가지 실험을 계속해 나가고 있습니다.
언제든지 프로그램을 수정하고 기능을 추가하는 과정이 나름 재미 있습니다.
궁극적으로는 돈을 꾸준히 벌 수 있는 시스템이 될 때 까지 만들고 보완해 나갈 것이며, 그때는 소액이 아닌 조금 더 큰 금액으로 매매를 할 수 있기를 기대하고 있습니다.
아마도 그때까지 소액으로 실험은 계속해서 이루어질 것 같습니다.
앞으로는 검색식 기반의 돌파 매매가 아닌 종목 선정도 직접하고 눌림 매매도 가능한 새로운 시스템도 만들 계획입니다.
그러기 위해 고수 분들의 기법과 노하우를 참고하여 나름의 기법과 노하우를 만들어가면 시스템에 적용하기 위해 노력하고 있습니다.
결과적으로 왜 자동매매가 필요한지 아래와 같이 정리해 볼 수 있을것 같습니다.
자신의 매매노하우를 자동화 하고 싶은 경우
뇌동매매를 방지하고 손절이 잘 되지 않는 경우
무엇을 알아야 자동매매 시스템을 만들 수 있을까?
현재 운영하는 자동매매 시스템은 키움증권에서 제공하는 Open API를 통해 Windows에서만 동작하는 프로그램입니다.
C# 이라는 프로그래밍 언어로 개발 되었구요.
아래 실행 중인 프로그램 이미지를 캡처 하였으니 참고 바랍니다.
개인이 혼자 쓰는 시스템이다 보니 미사용 기능들도 그대로 있는 것도 많고, 다른기능인데 이름을 바꾸지 않는 것도 좀 보이네요.
프로그램 자체도 조금 딱딱한 느낌이지만 그동안 혼자 유지 보수 해 오면서 많은 발전이 있었습니다.
다만 제공되는 API가 오래된 방식이다 보니 Windows에서만 동작하는 제약 사항도 있고,
API 호출도 이벤트에서 로직을 처리하는 방식이라 코드의 복잡성도 높아지는 등 여러가지 불편한 점이 많은 시스템입니다.
무엇보다 필자는 웹 개발자이기 때문에 C#으로 만들어야 하는 윈도우 프로그래밍도 편하지는 않았습니다.
최근 한국 투자증권에서 Rest API 방식의 API가 출시되면서 언젠 간 웹 방식으로 마이그레이션을 생각 하고 있었지만,
증권사를 옮기는 일이 쉬운 일은 아니라 미루어 두고 있었습니다.
그러던 중 키움증권에서도 Rest API 서비스를 제공한다는 소식을 듣게 되었고 드디어 마이그레이션을 결정 할 수 있게 되었습니다.
RestAPI를 통해 웹으로 개발을 할 수 있음으로서 생기는 수 많은 장점이 있지만 내용이 너무 많아 추후에 하나씩 공유 하도록 하겠습니다.
처음 무엇을 배울 때 가장 실력이 빠르게 늘어나는 방법은 직접 만들어 보는 것이라 생각합니다.
제가 기존에 만들었던 Windows용 매매 시스템을 웹기반의 시스템으로 이전하는 과정을 이 블로그를 통해 공유할 예정 입니다.
이 과정에서 아래와 같은 분들에게 도움이 될 수 있다면 좋을 것 같습니다.
자신만의 매매 노하우를 자동화하는 자동 매매 프로그램을 만들고 싶으신 분
자동매매시스템 + 웹 개발 자체를 배워보고 싶은 분