백테스트 손절·익절·트레일링 스톱: 뜻과 결과를 읽는 법

업데이트

손절은 진입가 대비 일정 비율 하락하면 청산하는 규칙, 익절은 일정 비율 상승하면 청산하는 규칙, 트레일링 스톱은 보유 중 최고가 대비 일정 비율 하락하면 청산하는 규칙입니다. 백테스트는 일봉으로 계산하는 경우가 많아 하루 안의 가격 순서와 갭 하락을 정확히 알 수 없으므로, 실제 체결과 차이가 날 수 있다는 점을 함께 알아야 합니다.

세 가지 청산 규칙의 뜻

매도 조건을 '지표가 신호를 낼 때'로만 두면 보유 중 손실이 얼마나 커질지 제한이 없습니다. 그래서 가격 기준의 청산 규칙을 함께 두는 경우가 많습니다.

  • 손절(stop loss): 진입가 대비 정한 비율만큼 내려가면 청산합니다. 예를 들어 손절 7%이면 진입가에서 7% 하락한 가격에 닿으면 매도합니다.
  • 익절(take profit): 진입가 대비 정한 비율만큼 올라가면 청산합니다. 익절 20%이면 진입가에서 20% 상승한 가격에 닿으면 매도합니다.
  • 트레일링 스톱(trailing stop): 기준이 진입가가 아니라 보유 중 도달한 최고가입니다. 최고가가 올라가면 청산 기준선도 같이 올라가고, 최고가 대비 정한 비율만큼 내려오면 청산합니다.

트레일링 스톱 예시

가상의 예로 10,000원에 매수하고 트레일링 스톱을 10%로 두었다고 하겠습니다. 가격이 12,000원까지 오르면 청산 기준선은 12,000 × 0.9 = 10,800원이 됩니다. 이후 가격이 11,500원까지 내려와도 청산되지 않고, 10,800원 아래로 내려가면 청산됩니다.

같은 상황에서 진입가 기준 손절 10%였다면 기준선은 9,000원에 머물러 있습니다. 트레일링 스톱은 오른 만큼 기준선이 따라 올라가 이익 일부를 지키는 방향으로 움직이지만, 일시적인 조정에도 청산되어 이후 상승을 놓칠 수 있습니다.

일봉 백테스트의 한계

일봉에는 하루의 시가·고가·저가·종가만 있고 하루 안에서 가격이 어떤 순서로 움직였는지는 없습니다. 이 때문에 두 가지 문제가 생깁니다.

  • 같은 날 손절선과 익절선에 모두 닿은 경우: 저가가 손절선 아래이고 고가가 익절선 위이면 어느 쪽이 먼저였는지 알 수 없습니다. 어떤 쪽을 먼저로 가정하느냐에 따라 결과가 달라지므로 도구의 처리 방식을 확인해야 합니다.
  • 갭 하락·갭 상승: 장 시작 가격이 전날 종가에서 크게 벌어지면 손절선을 건너뛰어 더 불리한 가격에서 시작할 수 있습니다. 손절 7%로 설정했어도 갭 하락으로 시가가 −12%에서 시작하면 실제 체결은 −7%보다 나쁠 수 있습니다.

청산 규칙이 결과에 주는 영향

손절을 좁게 잡으면 한 번의 손실은 줄지만 일시적인 하락에 자주 청산되어 거래 횟수와 비용이 늘고, 이후 반등을 놓치는 경우가 늘어납니다. 넓게 잡으면 반대로 한 번의 손실이 커집니다. 익절도 비슷해서, 낮게 잡으면 이익을 일찍 확정하는 대신 큰 상승을 놓치고 승률은 높아지지만 평균 이익이 작아집니다.

그래서 이 값들은 하나의 정답을 찾는 대상이 아니라, 값을 바꿔 가며 결과가 얼마나 민감하게 바뀌는지 확인하는 대상입니다. 값을 조금만 바꿔도 성과가 크게 달라진다면 과최적화를 의심할 수 있습니다.

거래 목록에서 청산 사유 확인하기

결과를 읽을 때는 수익률 숫자만 보지 말고, 청산이 어떤 이유로 일어났는지를 분류해서 보면 전략의 성격이 보입니다.

  • 손절로 청산된 거래의 비중과 평균 손실
  • 익절 또는 트레일링 스톱으로 청산된 거래의 비중과 평균 이익
  • 신호 청산·기간 만료·리밸런싱 편출로 끝난 거래의 비중
  • 손절 직후 가격이 다시 올랐는지 여부(수익곡선과 거래 목록을 함께 확인)

널스탁에서의 손절·익절·트레일링 스톱

널스탁은 손절, 익절, 트레일링 스톱 비율을 전략에 지정할 수 있고, 거래 목록에서 각 거래의 청산 사유를 확인할 수 있습니다. 모든 결과는 과거 데이터 기반 시뮬레이션이며, 특정 비율을 권하는 것이 아닙니다.

자주 묻는 질문

트레일링 스톱은 손절과 무엇이 다른가요?
손절은 진입가를 기준으로 하락률을 재고, 트레일링 스톱은 보유 중 도달한 최고가를 기준으로 하락률을 잽니다. 최고가가 오르면 청산 기준선도 같이 올라갑니다.
손절을 설정했는데 설정한 비율보다 더 크게 손실이 나는 이유는 무엇인가요?
장 시작 가격이 전날 종가에서 크게 벌어지는 갭 하락이 있으면 손절선을 건너뛰어 더 불리한 가격에서 청산될 수 있습니다. 일봉 데이터로는 하루 안의 가격 흐름을 알 수 없다는 한계도 있습니다.
같은 날 손절선과 익절선에 모두 닿으면 어떻게 처리하나요?
일봉에는 고가와 저가가 어떤 순서로 나왔는지 없어서 정답을 알 수 없습니다. 어느 쪽을 먼저로 가정하느냐에 따라 결과가 달라지므로 사용하는 도구의 처리 방식을 확인해야 합니다.

떠오른 전략 아이디어를 문장으로 입력하면 과거 데이터로 백테스트해 볼 수 있습니다.

전략 백테스트하기

이 가이드는 투자 연구에 필요한 개념과 계산 방법을 설명하는 교육 자료입니다. 특정 종목·전략의 매수·매도를 권유하거나 미래 수익을 예측하지 않으며, 백테스트 결과는 과거 데이터 기반 시뮬레이션이므로 미래 수익은 보장되지 않습니다.