앞으로 이 글은 업데이트되어 설명서와 같이 사용될 예정입니다. 프로그램 구성과 방향성에 대하여 설명드리겠습니다.
1. 프로그램 개념
1) 추세추종 : 추세에 역행하지 않고 스위칭하면서 승률보다는 손익비에 집중되어 있습니다.
- x x x x o : 1승 4패를 하더라도 손익비를 20/20/20/20/100으로 맞춘다면 결국 20의 이득이 생기는 구조입니다.
2) 횡보구간 회피 : 추세추종이 가장 많이 죽는 경우는 횡보장에 있습니다. 위아래 채널에 갇혀 있을 때 상방에서 매수하고 하방에서 매도하여 손실이 매우 커지는 경우가 있습니다. 이는 채널과 지수이평으로 피합니다.
3) 머신러닝 : 위의 횡보구간 회피를 위해서는 채널을 유동적으로 계산해야 합니다. 이때, 머신러닝이 사용되며 지수이평 정배열을 보조적으로 사용하여 페이크 신호에 좀 더 강력히 대응합니다.
4) 예측보다는 대응 : 이 프로그램의 핵심은 예측 매매가 아니라 대응매매 입니다. 상황에 맞춰 대응하고 손절하고 익절을 반복합니다. 시장을 예측한다는 것은 불가능에 가깝다 판단하고 있으며, 프로그램의 빠른 속도로 빠르고 정확한 대응만이 주식지장에서 살아남는 길이라 생각합니다.
5) 손익비 최대화를 위한 불타기 : 1계약으로 방향성을 간 보다가 큰 흐름이 나올 것 같으면 최대 3 계약까지 체결되어 손익비를 맞춥니다.
2. 알고리즘 가동원리
까만색 박스 상단 채널을 현재가가 돌파하면서 각 지수이평이 정배 열고 마지막 지수이 평이 훼손되지 않을 때 매수로 진입하게 됩니다.
만약 위의 타점에서 진입을 하지 못했다면, 아래와 같은 지점에서 알고리즘이 가동되게 됩니다.
자 그러면 타점을 얻어내기 위한 채널과 이평이 매우 중요한 역할을 하게 됩니다. 이는 아래와 같은 방법으로 계산하게 됩니다.
3. 채널 계산
1) 1차 채널의 경우는 각 일/주/월 봉의 지지/저항 지점을 계산합니다. 시중에 있는 지지/저항과는 괴를 달리하는 방법이며, 80~90% 이상의 정확도를 가지고 있습니다.
2) 2차 채널의 경우는 이평선의 골드/데드 크로스와 특정 구간에서의 고가 저가 값을 실시간으로 확인합니다. 이때, 머신러닝이 사용되며, 사용자가 입력한 특정 박스와 최대한 유사한 지점을 프로그램이 계산하게 됩니다. 우선 골드/데드 크로스가 미래예측으로 계산이 되면 그 지점에서의 특정 구간까지 고가/저가를 계산하게 되고 LMS 기법으로 평균값을 계산하여 가우시안 분포 6 시그마 정도 정확도에 들어오도록 계산하게 됩니다.
3) 채널의 삭제와 이동 : 1/2차 채널이 계산되었는데 그 지점에서 거래가 이뤄지고 불리한 포지션에 들어가 손절이 발생하게 된다면 채널이 위/아래 유동적으로 이동하게 됩니다. 횡보 구간에서의 거래는 최대한 피하려고 하는 행위입니다. 개인적으로 횡보 구간에서 덤볐다가 피를 본적이 많이 때문에 횡보구간 즉 채널을 뚫고 강한 힘으로 몰아칠 때 들어가 조금이라도 먹는 것이 더 이득으로 판단하고 있습니다.
4. 지수 이평의 계산
1) 지수 이평은 1분봉으로 5/10/15일선을 사용합니다. 지수 이평은 일반 이평선보다 최근 값에 가중치가 많이 들어갔기 때문에 현시점의 흐름을 빠르게 확인할 수 있는 장점이 있습니다.
2) LMS : 빠른 것을 더해 다음 시점까지 예측하여 들어가게 됩니다. LMS/RLS 등의 기법들은 다양한 예측을 수행하기 위해 적용되는 기법으로 일반 공학도들이 많이 사용하는 방법입니다. 다양한 가중치들은 머신러닝을 하여 최대의 승률을 낼 수 있는 값이 적용됩니다.
3) 지수이평에 머신러닝 까지 적용된 머신 지수이 평이 계산되면 그 값이 정배열인지 또는 15일선이 훼손되지 않는지 지속적으로 확인합니다.
5. 진입타점
위에서 언급 드렸다 싶이 채널이 돌파될 때 머신/지수이 평이 정배열이고 15일선이 훼손되지 않는 시점입니다.
1) 1차적으로는 채널 최 상단에 지정가로 들어가게 됩니다.
2) 지정가가 1분동안 미체결 시 취소하고 현재가로 들어가게 됩니다.
3) 무조건 시장가 보다는 쫓아가는 매매를 최대한 지양하려고 합니다. 낚시를 하려고 기다리다가 물고기가 오더라도 너무 급하게 챔질 하면 페이크에 당하기 때문입니다. 그렇기 때문에 1차로 안전하게 채널 최상단, 2차로 현재가로 들어가게 됩니다. 이렇게 해도 놓치면 어쩔 수 없다고 봅니다. 이러한 알고리즘은 최대한 페이크 입질을 피하기 위해서입니다. 만약 페이크가 아니라면 90% 확률로 2차 현재가로 체결되게 되어 있으니 너무 걱정하지 않으셔도 됩니다.
4) 불타기 : 강한 추세가 생겼다 판단되면 3계약까지 불타기가 가능합니다. 불타기로 최대의 손익비를 맞출 수 있습니다.
6. 익절/손절 타점
익/손절 타점은 이전 강의에서 수없이 설명 드렸지만 간단히 전달하겠습니다.
1) 익절 시점
- 0.5/0.8/1.5/2.5 포인트에 안전 장치가 마련되어 있습니다. 이 그물에 걸리고 특정 조건(이평 뒤집힘)이 발생하면 익절 하게 됩니다.
2) 손절 시점
- 0.3/0.8 포인트에 안전장치가 마련되어 있습니다. 특히 0.8포는 현재가로 손절하기 때문에 로스컷과 동일하다고 생각하시면 됩니다. 0.3포인트는 특정 조건이 발생해야 합니다.
7. 프로그램 전략
프로그램은 추세추종이 주목적이기는 하지만 횡보는 피한다 입니다. 이 버전을 개발하면서 가장 큰 손실을 본 부분은 횡보에 진입 시도를 할 때였습니다. 횡보 진입의 장점은 발바닥에서 진입할 수 있다인데 이를 수행하려다 1대 맞을 걸 10대 맞고 발바닥에 매수해봤자 1대 맞고 무릎에서 매수한 것보다 못하다는 결론이 나왔습니다. 따라서 채널 + 머신/지수이평으로 이 단점을 극복하게 됩니다.
지금 프로그램은 채널 버전과 채널+머신/지수이평으로 구분되어 있습니다. 9월 2일부터 프로그램이 가동될 것이며, 그 결과는 날것으로 공유될 것입니다. 이전에 다양한 분봉 또는 방법으로 상당히 많은 고민과 과정 그리고 검토를 거쳐 도달한 결론이므로 좋은 결과를 얻을 것이라 생각합니다. 일단 채널 버전만으로 저번 주는 전부 플러스였기 때문에 자신 있게 론칭하게 되었습니다.
시장은 절대적인 값이 없습니다. 예측 하지 마십시오. 우리는 대응만 할 뿐입니다. 이 프로그램은 실시간으로 시장 상황을 따라갈 수 있는 대응을력을 최대로 끌어올린 것입니다.
그리고 이 프로그램을 만들 다 보니 저의 방향성과 상당히 유사한 방향으로 매매로직을 만드신 분이 있어 유튜브 공유해 드립니다. 저랑 일절 관련없는 분이기에 개념만 확인하시면 됩니다. 감사합니다.
https://www.youtube.com/watch?si=VqvphyDZve2sdp2j&v=n4p5dS2p2NY&feature=youtu.be
'프로그램 기반 주식 응용 > 선물자동매매 Ver.2 개발 일지' 카테고리의 다른 글
선물자동매매 최종버전 진행상황 (2) | 2024.10.01 |
---|---|
파이썬 exe.파일 자동 실행(feat. 윈도우 작업 스케줄러) (5) | 2024.09.28 |
선물자동매매프로그램 Ver.1과 Ver.2(Ver.1+)의 차이점 (2) | 2024.08.15 |
선물자동매매프로그램 Ver.2 추세 추종 알고리즘 기준/대응 및 사용 방법(R.1.0.0) (2) | 2024.08.12 |
선물 자동매매프로그램 Ver.2 개발 시 최우선 고려사항(횡보장 피하기) (21) | 2024.08.04 |