손절선을 적용한 자동 매매
이전 글에서 코스티 824개 종목에 대한 RSI 투자 전략 벡테스팅 결과를 확인했다.
2022.11.08 - [개발일지] - 5. 투자지표를 활용한 매매 시점 모니터링 - Kospi 종목 벡테스팅
자동 매매 프로그램에 기능은 넣어놨지만 사용을 안 한 것이 하나 있는데, 바로 손절선의 유무이다.
이전 글의 코드를 보면 stop_loss 값이 -100으로 설정되어 있었다.
-100이란 뜻은 보유 금액이 0원이 되었을 때 전량 매도한다는 뜻으로 이는 손절선을 반영하지 않는다는 뜻이었다.
투자 관련 책을 읽어보다가 투자에 있어 중요한 것 중 하나가 손해를 보지 않는 투자를 하는 것이라고 보았다. 즉, 손해를 안 보는 투자를 하면 수익이 따라온다고.
책 내용 중 손절선을 설정해 벡테스팅을 진행했을 때 최대 손실률 및 수익률을 정리했는데 정말 수익이 나는 것을 보고 RSI 투자 전략 벡테스팅을 할 때 적용해보고자 한다.
우선 손절선 없이 적용했던 지난 글의 투자 가이드라인을 보자.
- 손익 확률 + : 57.73%, - : 42.27%
- 최대 손익률 + : 30.14%, - 66.8%
- 손익 + 연평균 수익률 중위수 : 5.17%, 평균 : 5.96%
- 손익 - 연평균 수익률 중위수 : -4.45%, 평균 : -7.29%
- 기대 수익금 중위수 기준 289만원, 평균 기준 254만원
요약된 정보만 가져왔다.
그리고 손절선을 적용한 결과를 보자.
손절선은 -3.5%로 설정했다. 나머지 설정은 동일하게 한다. 시드 머니 1,000만원, 1회 매매 기준 금액 500만원, RSI 매매 기준 30, 70.
손절선 --3.5%의 요약된 결과를 보면,
- 손익 확률 + : 69.43%, - : 30.57%
- 최대 손익률 + : 17.21%, - 24.15%
- 손익 + 연평균 수익률 중위수 : 3.09%, 평균 : 3.71%
- 손익 - 연평균 수익률 중위수 : -1.95%, 평균 : -3.36%
- 기대 수익금 중위수 기준 177만원, 평균 기준 174만원
일단, 손익 확률이 약 70으로 상승했음을 볼 수 있다.
안정성을 추구한 만큼 최대 손익률도 + 17%, - 24%로 손절선이 없이 벡테스팅한 것보다 줄았다.
평균과 중위수도 마찬가지.
하지만 수익률이 줄어든 폭 보다 손해율 폭이 줄어든 것이 긍정적이다.
중위수 기준으로 봐도 -4.45% 에서 -1.95 %로 수치가 매우 줄어든 것을 볼 수 있다. 이는 평균도 마찬가지.
기대 수익금은 중위수 기준 289만원에서 177만원으로 약 100만원가량 줄었다.
결과를 캡쳐한 내용을 보면 위와 같다.
이전 글에서 보았던 아남전자의 수익률도 줄어들었다.
손절선을 적용한 수익금은 2,510만원으로 확인되었고, 손절선이 없이 7,300만원을 기록한 것과 대조적이다.
반면 비케이탑스의 경우 306만원이 남았다. 손절선 없이는 16만원이 남았었는데(...!!).
기존과 비교하면 매우 우수하게 손실을 막았다.
거래가 정지되기 전에 전량 매도한 것이 보인다.
10% 손절선을 적용했을 때의 결과도 보자.
- 손익 확률 + : 59.56%, - : 40.44%
- 최대 손익률 + : 30.14%, - 43.2%
- 손익 + 연평균 수익률 중위수 : 3.56%, 평균 : 4.28%
- 손익 - 연평균 수익률 중위수 : -2.48%, 평균 : -4.38%
- 기대 수익금 중위수 기준 197만원, 평균 기준 160만원
+의 최대 손익률은 손절선이 없을 때 와 동일하게 수익을 내고 있지만, -부분에서 약간의 손익률 개선이 있었다.
손절선 없이, -3.5%, -10%의 벡테스팅 결과를 확인했는데, 손절선의 설정에 따라 벡테스팅 결과의 편차가 큰 것을 볼 수 있다. 그만큼 적정 수준의 손절선이 중요하다는 것이다. 손해를 막아야 수익을 낼 수 있는 기반을 만들 수 있기 때문이다.
따라서 투자 전략의 한 부분으로 안정적으로 운용하기 위해선 손절선을 어떻게 설정할 것인지 같이 고려가 되어야 할 것이다.
여기서 10년간 투자했는데 기대 수익금이 너무 작지 않냐라고 궁금할 수 있다.
지금까지 벡테스팅으로 본 결과는 단일 종목으로 10년간 RSI 투자 전략을 기반한 결과이다. 이 말은 매수 시그널이 오랫동안 발생하지 않으면, 현금 그대로 가지고 있다는 것이다.
예를 들어 SK하이닉스의 벡테스팅 결과를 보면
위의 케이스의 경우 분명 2013년에 벡테스팅을 시작했지만, 최초 매수는 2015년 중반이다. 15년 중반~16년 중반에 몇 번의 매매를 한 후 또 2018년까지 거래가 없다.
현금이 놀고 있다는 뜻이다.
따라서 여러 종목을 동시에 모니터링하며 투자하기로 배분한 현금에 대해선 효율성 있게 운용해야 할 것이다. 현금을 가만히 두면 거의 변동이 없기 때문이다. 즉 예금 이자만 못한 것이다.
그렇기에 다음 개발할 주제로 다중 종목 벡테스팅 코드를 작성하고자 한다.
단일 종목 벡테스팅으로 추천된 종목을 최소 5개 최대 100개까지 선택한 후 일 별 주가를 동시에 조회하며 매매 시그널이 뜬 종목을 보유 현금에 대비해 투자를 진행하는 것이다.
여러 종목을 모니터링할 경우 어느 순간은 보유 현금이 없어 투자를 못 할 경우도 생기겠지만, 현금을 놀리는 것보다는 수익률이 좋을 것이라 예상한다.
투자 전략은 동일하게 RSI 30선, 70선을 기준으로 진행하겠다. 전략의 고도화에 관해선 다중 투자 프로그램, 카카오톡 API 연결까지 진행한 후 심도 있게 다뤄야 할 것 같아서 나중으로 미룬다.
'개발일지' 카테고리의 다른 글
8. 투자지표를 활용한 매매 시점 모니터링 - 전략 설계 참고 (0) | 2022.11.15 |
---|---|
7. 투자지표를 활용한 매매 시점 모니터링 - 다중 종목 벡테스팅 (0) | 2022.11.10 |
5. 투자지표를 활용한 매매 시점 모니터링 - Kospi 종목 벡테스팅 (0) | 2022.11.08 |
4. 투자지표를 활용한 매매 시점 모니터링 - 시각화 (0) | 2022.11.08 |
3. 투자지표를 활용한 매매 시점 모니터링 - 벡테스팅 (0) | 2022.11.07 |
댓글