이 사이트는 분할매수 전략을 과거 시세로 돌려보는 도구입니다. 실제로 주문을 내지 않고, 계좌를 연결하지도 않습니다. "이 규칙대로 했다면 과거에 어떻게 됐을까"만 계산합니다.
어떤 전략을 테스트하는가
한 줄로 요약하면 이렇습니다.
투자금을 여러 조각으로 나눠두고, 가격이 떨어지면 한 조각씩 사고, 산 것마다 목표 수익에 닿으면 그것만 판다.
조금 더 풀어보겠습니다.
1. 시드를 나눕니다
1,000만 원이 있고 6분할을 선택했다면, 처음부터 다 넣지 않고 여섯 번에 걸쳐 나눠
넣습니다. 비중은 직접 정합니다. 예를 들어 10, 15, 20, 25, 20, 10이면 첫 매수에
100만 원, 두 번째에 150만 원 하는 식입니다.
앞쪽을 적게, 중간을 크게 잡는 이유는 얕은 하락에는 조금만 담그고 깊이 내려갈수록 많이 사기 위해서입니다.
2. 떨어지면 삽니다
전날 종가보다 오늘 종가가 설정한 만큼 떨어지면 다음 차수 한 조각을 그대로 매수합니다. 하락 폭이 크다고 더 사거나 하지 않습니다.
진입 트리거를 −1%로 뒀다면
- 오늘 −0.5% → 아무것도 안 함
- 오늘 −1.5% → 다음 차수 한 조각 매수
- 오늘 −5% → 마찬가지로 한 조각 매수 (더 사지 않습니다)
즉 하루에 한 조각씩만 들어갑니다. 6분할이면 여섯 번의 하락일에 걸쳐 시드가 다 들어가는 셈입니다. 여섯 조각을 다 쓴 뒤에도 하락이 이어지면 남은 현금 전부로 예비 차수를 한 번 더 매수합니다.
트리거를 얼마나 민감하게 잡느냐에 따라 성격이 완전히 달라집니다. −0.01%처럼 아주 얕게 잡으면 조금만 내려도 사들이므로 시드가 금방 소진되고, −3%처럼 깊게 잡으면 큰 하락에서만 들어가는 대신 매수 기회 자체가 드물어집니다.
3. 오르면 조각별로 팝니다
여기가 중요합니다. 전체를 한 번에 팔지 않습니다. 조각마다 자기 매수 가격을 기억하고 있고, 각자 목표 수익률에 닿으면 그 조각만 팔립니다.
목표 수익률 1.5%로 뒀다면, 3차에 산 조각이 매수가 대비 1.5% 오르는 순간 3차만 정리되고 1차·2차는 계속 들고 있습니다.
4. 오래 물리면 강제로 정리합니다
타임컷입니다. 목표에 못 닿아도 정해진 거래일이 지나면 그냥 팝니다. 손실이더라도요.
10일로 뒤면 산 지 10거래일이 지난 조각은 그날 종가에 청산됩니다. 계속 물려 있는 상태로 자금이 묶이는 걸 막는 장치입니다.
5. 다 팔리면 한 사이클이 끝납니다
들고 있던 조각이 전부 정리되면 한 사이클이 끝나고, 그때의 잔고를 기준으로 다음 사이클의 분할 금액을 다시 계산합니다. 벌었으면 다음 사이클의 한 조각이 커지고, 잃었으면 작아집니다. 이게 "사이클 복리"입니다.
소수점 매수는 하지 않습니다
이 도구는 정수 주만 매수합니다. 소수점 거래를 가정하지 않습니다.
100만 원으로 주당 700달러짜리를 산다고 하면, 실제로 살 수 있는 만큼만 사고 남는 현금은 그대로 둡니다. 국내 증권사 대부분이 소수점 거래를 지원하긴 하지만, 지원하지 않는 계좌에서도 그대로 따라 할 수 있도록 보수적으로 잡았습니다.
이 때문에 주가가 비싸고 시드가 작으면 계산이 실제와 달라질 수 있습니다. 예를 들어 시드 100만 원에 6분할이면 한 조각이 약 17만 원인데, 주가가 70만 원이면 한 주도 못 삽니다. 그런 구간은 매수가 아예 일어나지 않은 것으로 계산됩니다. 결과가 이상하게 밋밋하면 시드를 올려서 다시 돌려보세요.
입력 항목
| 항목 | 설명 |
|---|---|
| 종목 티커 | 테스트할 종목입니다. 목록에 있는 것만 됩니다. |
| 시작일 / 종료일 | 테스트 구간입니다. 하락장이 포함되도록 잡으세요. |
| 시드 | 투자 원금(달러)입니다. |
| 매매 수수료 | 편도 기준 %입니다. 0.1은 0.1%입니다. |
| 매수 분할 설정 | 몇 조각으로 나눌지와 각 조각의 비중입니다. |
| 진입 매수 트리거 | 전일 대비 몇 % 떨어지면 살지. 음수로 씁니다. |
| 목표 수익률 | 조각별 익절 기준입니다. |
| 강제 청산일(타임컷) | 며칠 지나면 무조건 정리할지. 거래일 기준입니다. |
| 추가 진입 필터 | 이동평균, RSI, 볼린저밴드, MACD로 매수 시점을 더 걸러냅니다. |
RSI 필터는 방향을 고를 수 있습니다. 이하일 때 매수는 과매도 구간에서 들어가는 방식이고, 이상일 때 매수는 반등이 시작된 뒤에 따라 들어가는 방식입니다. 같은 기준값이라도 결과가 크게 달라지니 양쪽을 다 돌려보시길 권합니다.
필터는 매수를 막기만 합니다. 켜면 매수 횟수가 줄어들고, 그 결과 수익도 낙폭도 같이 줄어드는 게 보통입니다. 결과 화면에 필터가 며칠이나 매수를 막았는지 표시되니 확인해보세요. 차단 일수가 0이면 그 필터는 아무 일도 하지 않은 겁니다.
결과 읽는 법
숫자를 이 순서로 보시길 권합니다.
1. 최대낙폭(MDD)을 먼저 봅니다. 수익률보다 먼저입니다. 이 값이 내가 견딜 수 있는 수준인지가 전략을 끝까지 들고 갈 수 있느냐를 결정합니다. 자세한 이야기는 최대낙폭이 수익률보다 중요한 이유에 정리했습니다.
2. 바이앤홀드와 비교합니다. 그냥 사서 들고 있는 것보다 나은지 봅니다. 수익률만 높고 낙폭은 그대로라면 별 의미가 없습니다.
3. 연평균(CAGR)으로 봅니다. 기간이 다른 전략을 비교할 때는 누적수익률이 아니라 CAGR입니다. 두 값이 왜 다른지도 참고하세요.
4. 거래 횟수와 평균 보유일을 봅니다. 거래가 지나치게 잦으면 실제로는 수수료와 슬리피지에 잡아먹힙니다. 수수료를 0.1%에서 0.3%로 올려보고 수익이 남는지 확인해보세요.
5. 15개년 성적을 눌러봅니다. 연도별로 나눠서 특정 해에 수익이 몰려 있지 않은지 봅니다. 한 해가 전부를 만들었다면 그건 전략이 아니라 그 해가 좋았던 것일 수 있습니다.
이 결과의 한계
계산은 몇 가지를 단순화합니다. 실제 거래와 다른 부분을 알고 계셔야 합니다.
- 종가에만 매매합니다. 장중 가격 움직임은 반영되지 않습니다.
- 원하는 가격에 항상 체결된다고 가정합니다. 실제로는 슬리피지가 있고, 급락장에서는 호가가 비어 있기도 합니다.
- 세금이 빠져 있습니다. 미국 주식 양도소득세는 반영되지 않았습니다. 회전율이 높은 전략일수록 세후 수익률 차이가 큽니다.
- 배당이 조정된 종가를 씁니다. 실제 배당 입금 시점과는 다릅니다.
- 상장 이전은 테스트할 수 없습니다. 종목 설명에 상장 시점이 표시됩니다.
무엇보다, 과거에 잘 나온 전략이 앞으로도 잘 되리라는 보장은 없습니다. 백테스트로 알 수 있는 건 "이 규칙이 과거의 특정 상황에서 어떻게 행동했는가"입니다. 그 이상을 기대하면 안 되는 이유는 백테스트가 실제보다 좋아 보이는 5가지 이유에 적었습니다.
이 사이트는 분석 도구만 제공합니다. 특정 종목의 매수나 매도를 권유하지 않으며, 투자 판단과 그 결과에 대한 책임은 이용자 본인에게 있습니다.