이동평균 기간 설정, 10일부터 200일까지 20가지 백테스트로 본 파라미터 선택
종가가 이동평균선 위면 보유하는 같은 규칙에 기간만 10일부터 200일까지 20가지로 바꾸면 비트코인 최종 배수가 3.57배에서 29.63배까지 갈렸습니다. 최고값 대신 고를 기준을 정리했습니다.
목차
종가가 이동평균선 위에 있으면 보유하고 아래면 현금으로 두는 단순한 규칙에서 이동평균 기간만 10일부터 200일까지 10일 간격으로 바꾸면, 비트코인 일봉 8년 백테스트의 최종 배수는 3.57배(10일)에서 29.63배(110일)까지 약 8배 갈렸고, 20가지 중 18가지가 같은 기간 단순 보유(5.63배)를 넘었습니다. 규칙 자체는 넓은 범위에서 통했지만 값 하나로 결과가 크게 달라졌습니다.
그래서 가장 좋은 숫자를 고르는 순간이 위험해집니다. 최고 결과인 110일은 바로 옆의 100일(15.21배)이나 90일(11.42배)과 크게 달랐습니다. 어떤 값을 고르고 무엇을 확인해야 하는지, 시스템트레이딩 규칙으로 정리합니다.
이동평균 기간별 백테스트 방법
규칙은 하나입니다. 종가가 n일 이동평균선보다 높으면 다음 날부터 보유하고, 낮으면 현금으로 둡니다. n을 10, 20, 30부터 200까지 20가지로 바꿨고 나머지 조건은 모두 같게 두었습니다. 신호는 종가로 판단해 다음 날부터 반영했고 편도 수수료 0.1%를 넣었으며 롱 온리, 레버리지 없음입니다.
데이터는 비트스탬프 BTC/USD 일봉으로 2018년 1월 1일부터 2026년 11월 6일(UTC)까지 마감된 봉입니다. 같은 기간 단순 보유는 5.63배, 최대낙폭은 −81.5%였습니다(11월 4일 계산의 5.98배보다 이번 주 하락으로 낮아졌습니다).

이동평균 기간 20가지의 결과
- 10일 — 최종 배수: 3.57배 · 연수익률: 15.5% · 최대낙폭: −71.4% · 진입 횟수: 284번 · 승률: 26.8%
- 20일 — 최종 배수: 6.12배 · 연수익률: 22.7% · 최대낙폭: −67.0% · 진입 횟수: 183번 · 승률: 25.7%
- 30일 — 최종 배수: 11.36배 · 연수익률: 31.6% · 최대낙폭: −51.8% · 진입 횟수: 138번 · 승률: 23.9%
- 40일 — 최종 배수: 26.71배 · 연수익률: 45.0% · 최대낙폭: −57.9% · 진입 횟수: 108번 · 승률: 25.9%
- 50일 — 최종 배수: 26.06배 · 연수익률: 44.6% · 최대낙폭: −58.6% · 진입 횟수: 86번 · 승률: 23.3%
- 60일 — 최종 배수: 21.31배 · 연수익률: 41.3% · 최대낙폭: −61.0% · 진입 횟수: 73번 · 승률: 24.7%
- 80일 — 최종 배수: 12.55배 · 연수익률: 33.1% · 최대낙폭: −52.9% · 진입 횟수: 68번 · 승률: 23.5%
- 100일 — 최종 배수: 15.21배 · 연수익률: 36.0% · 최대낙폭: −60.1% · 진입 횟수: 59번 · 승률: 22.0%
- 110일 — 최종 배수: 29.63배 · 연수익률: 46.7% · 최대낙폭: −56.1% · 진입 횟수: 43번 · 승률: 21.4%
- 120일 — 최종 배수: 25.80배 · 연수익률: 44.4% · 최대낙폭: −56.7% · 진입 횟수: 39번 · 승률: 26.3%
- 150일 — 최종 배수: 13.85배 · 연수익률: 34.6% · 최대낙폭: −57.0% · 진입 횟수: 38번 · 승률: 21.6%
- 200일 — 최종 배수: 4.94배 · 연수익률: 19.8% · 최대낙폭: −64.0% · 진입 횟수: 35번 · 승률: 23.5%
20가지 전체의 중앙값은 13.2배였고 최대낙폭은 −51.8%(30일)에서 −71.4%(10일) 사이였으며, 모든 기간에서 단순 보유(−81.5%)보다 작았습니다. 승률은 15.0%에서 27.0%에 머물렀고, 그래도 이익이 손실보다 훨씬 커서 성립한 규칙입니다.
짧은 기간은 신호가 잦아 진입이 284번(10일)까지 늘고 수수료와 가짜 신호가 쌓여 3.57배에 그쳤고, 긴 기간은 신호가 늦어 200일은 4.94배였습니다. 가운데 구간에서 결과가 가장 좋았지만 매끈하게 이어지지는 않았습니다.

최고값 110일을 고르면 안 되는 이유
최고 결과는 110일(29.63배)인데, 바로 옆 칸을 보면 100일은 15.21배, 90일은 11.42배였고 120일은 25.80배였습니다. 값을 10일만 바꿔도 결과가 거의 두 배 차이가 난 것입니다. 이렇게 이웃 값과 결과가 크게 다른 최고점은 이 8년의 가격 흐름에 우연히 맞은 값일 가능성이 있고, 앞으로 같은 값이 최고일 것이라는 근거가 되지 못합니다.
반대로 40일(26.71배), 50일(26.06배), 60일(21.31배)은 이웃끼리 비슷했습니다. 이런 완만한 구간(고원)에서는 값이 조금 달라져도 결과가 크게 흔들리지 않으므로, 최고점 하나보다 믿을 만한 선택지입니다. 이 글의 데이터에서는 40~60일 구간이 그런 곳이었고, 가운데인 50일이 값이 조금 바뀌어도 양쪽 이웃과 결과가 가까웠습니다.

실제 매매 기록은 텔레그램에 매일 올라갑니다.
퀀트알파 | 비트코인 시스템트레이딩시장 국면별 BTC 자동매매 분석, 매일 전략 작동 현황과 매주 수익·손실·MDD 리포트 공개t.me/+oSDjObO-5N05NWVl지금 이 규칙은 무엇을 가리키나
11월 6일(UTC) 종가는 75,747달러입니다. 같은 기준으로 50일 이동평균선은 약 81,980달러로 종가가 선 아래에 있고, 이 규칙이라면 지금은 현금 상태입니다. 20일 이동평균선(약 79,650달러)과 200일 이동평균선(약 73,190달러)을 기준으로 하면 20일 규칙은 현금, 200일 규칙은 보유로 서로 다른 신호가 나옵니다.
같은 날의 같은 가격에서 기간에 따라 신호가 갈리는 것이 이 표의 의미입니다. 어떤 기간이 맞는지를 이 한 날에 판단하는 것이 아니라 기간 선택 자체를 사전에 규칙으로 정해 두어야 하는 이유입니다. 지금 가격이 선택 기간에 따라 다른 상태라는 사실도 변하지 않습니다.

시스템트레이딩이라면 파라미터를 어떻게 고르는가
시스템트레이딩에서 파라미터는 가장 좋은 값을 찾는 대상이 아니라 흔들려도 괜찮은 구간을 찾는 대상입니다. 이 결과를 규칙으로 옮기면 이렇게 됩니다.
- 최고값 대신 이웃 값과 비교합니다. 110일의 이웃은 15.21배와 25.80배였으므로 이웃 값이 비슷한 구간(40~60일)을 후보로 삼습니다.
- 구간의 가운데를 고릅니다. 이웃 양쪽이 비슷한 가운데 값이 시기가 바뀌어도 안전합니다.
- 결과의 폭을 함께 기록합니다. 20가지 결과가 3.57~29.63배였다는 사실이 이 규칙의 불확실성의 크기입니다.
- 기간 전체의 낙폭을 확인합니다. 모든 기간의 최대낙폭이 −51.8%~−71.4%였으므로 이 낙폭을 견딜 비중으로 시작합니다.
퀀트알파는 신호를 감으로 읽지 않고 5분봉 마감이 확정된 뒤 정해 둔 조건이 맞을 때만 주문을 냅니다. 이 글의 이동평균 규칙은 설명을 위한 가정이며 퀀트알파의 실제 전략과 다릅니다. 손절선을 정하는 방법은 "트레일링 스탑 설정"에서, 승률과 손익비의 관계는 "승률 손익비 표"에서, 비중을 정하는 방법은 "포지션 사이징"에서 정리했습니다.
트레일링 스탑 설정, 고점 대비 5%부터 ATR×4까지 8년 백테스트로 비교트레일링 스탑을 몇 %로 둘지 비트코인 일봉 8년 백테스트로 비교했습니다. 고점 대비 −5%는 2.17배, ATR×3은 7.21배, 단순 보유는 5.98배였고 촘촘할수록 진입만 늘었습니다.quant-alpha.kr
승률 손익비 표와 1만 번 시뮬레이션, 숫자로 비교한 전략의 진짜 성적승률 손익비 표를 직접 계산하고, 승률 30~70% 전략을 200회씩 1만 번 시뮬레이션했습니다. 승률 70%·손익비 0.5 전략은 비용 0.1R만 붙어도 84%가 손실로 끝났습니다. 기대수익률 공식과 연속 손실 통계까지 정리합니다.quant-alpha.kr
포지션 사이징이란, 같은 규칙에 비중만 바꿨더니 낙폭이 달라졌다포지션 사이징이 결과를 얼마나 바꾸는지 비트코인 일봉으로 계산했습니다. 같은 이동평균 규칙이 비중 100%에서는 최대낙폭 −51.3%, 50%에서는 −29.7%였습니다.quant-alpha.kr
자주 묻는 질문
Q. 이동평균 기간은 몇 일로 설정하는 게 좋은가요?
A. 비트코인 일봉 8년 백테스트(종가가 선 위면 보유)에서 40일 26.71배, 50일 26.06배, 60일 21.31배로 이웃 값끼리 비슷한 구간이 있었습니다. 단일 최고값은 110일(29.63배)이었지만 이웃과 차이가 컸습니다.
Q. 이동평균 기간을 바꾸면 결과가 얼마나 달라지나요?
A. 10일부터 200일까지 20가지의 최종 배수가 3.57배에서 29.63배까지 약 8배 갈렸고 중앙값은 13.2배였습니다. 20가지 중 18가지가 단순 보유(5.63배)를 넘었습니다.
Q. 이동평균 백테스트에서 최고 결과만 고르면 왜 위험한가요?
A. 이웃 값과 결과가 크게 다르면 그 기간의 가격 흐름에 우연히 맞았을 가능성이 있기 때문입니다. 110일은 바로 옆 100일이 15.21배로 거의 절반이었습니다.
Q. 이 백테스트 결과를 그대로 믿어도 되나요?
A. 자산 하나, 규칙 하나, 8년이라는 한 기간의 결과입니다. 종가 판단과 수수료 0.1%만 반영했고 슬리피지는 넣지 않아 실제와 다를 수 있습니다.
실제 매매 기록은 텔레그램에 매일 올라갑니다.
퀀트알파 | 비트코인 시스템트레이딩시장 국면별 BTC 자동매매 분석, 매일 전략 작동 현황과 매주 수익·손실·MDD 리포트 공개t.me/+oSDjObO-5N05NWVl값 하나에 매달리지 않고 규칙과 마감 확정 후 주문으로 운용을 다루는 퀀트알파의 방식이 궁금하다면 홈페이지에서 확인해 보세요.
https://quant-alpha.kr/?utm_source=web_blog&utm_medium=blog
출처
- 시세: 비트스탬프 BTC/USD 일봉(2018년 1월 1일~2026년 11월 6일 UTC 마감), 2026-11-07 조회. 이동평균 기간별 백테스트·이동평균선 값은 퀀트알파가 직접 계산했습니다
- 계산 가정: 종가가 n일 단순 이동평균 위면 다음 날부터 보유·아니면 현금, n=10~200(10일 간격 20가지), 편도 수수료 0.1%, 롱 온리·레버리지 없음, 슬리피지 미반영