속설 검증 #16 — EMA 정배열 눌림 재진입 백테스트 기록

업데이트

KOSDAQ 최근 5년(2022-01-03~2026-10-16)에 EMA 정배열 상태에서 종가가 5일 EMA를 회복할 때 매수하는 규칙(20일 EMA 이탈 청산·25거래일·손절 −6%)을 적용했더니 투자 수익률은 −99.09%, CAGR은 −62.56%, 최대 낙폭은 −99.10%, 승률은 22.0%(1,338회)였고 같은 기간 KODEX KOSDAQ 150은 −8.73%였습니다. 한 규칙·한 기간의 과거 값입니다.

검증한 속설과 규칙

속설 검증 시리즈 16번째 기록입니다. 검증한 말은 “정배열 종목이 잠깐 눌렸다 회복하면 다시 오른다”입니다. 속설을 그대로 코드로 옮길 수는 없어서, 아래 규칙 하나를 정해 과거 데이터에 적용했습니다. 이 노트는 그 규칙이 맞는지 틀린지 판정하지 않고, 한 가지 설정에서 관측된 값을 기록합니다.

20일 EMA가 60일 EMA 위에 놓인 종목이 종가로 5일 EMA를 다시 넘어서는 날을 진입 시점으로 잡고, 20일 EMA 밑으로 내려오면 정리하는 규칙입니다. 최대 8종목, 최대 25거래일, 손절 −6%를 함께 두었습니다.

입력한 문장과 해석된 조건

널스탁에 아래 문장을 그대로 입력했습니다.

“KOSDAQ에서 20일 EMA가 60일 EMA 위에 있는 정배열 상태에서 종가가 5일 EMA를 회복하는 시점에 매수하고 싶습니다. 20일 EMA를 이탈하면 청산하고, 보유는 최대 25거래일, 8종목, 손절 -6%로 부탁드립니다.”

문장의 “회복”은 종가가 5일 EMA를 아래에서 위로 넘는 것으로 옮겨졌습니다. 버튼으로 정한 값은 백테스트 기간 최근 5년, 초기 자본 1,000만원, 리밸런싱 하지 않음, 익절 기준 두지 않음입니다.

  • 유니버스: KOSDAQ, 최대 8종목
  • 매수: “EMA20이 EMA60 위 유지” AND “가격이 EMA5를 상향 돌파”
  • 매도: 가격이 EMA20을 하향 돌파 / 최대 보유 25거래일 / 손절 −6%

결과

2022-01-03~2026-10-16 구간에서 관측된 값입니다. 수수료 0.015%, 슬리피지 0.05%, 거래세 0.23%→0.15%(시행일 기준), 배당소득세 15.4%를 반영했고 체결은 신호 다음 거래일 시가입니다. 전략과 벤치마크는 구성과 규칙이 다르므로 표의 차이는 우열을 뜻하지 않습니다.

속설 검증 #16 — 백테스트 결과
지표값
기간2022-01-03~2026-10-16 (1,169일)
자산1,000만원 → 91,077원
투자 수익률−99.09%
CAGR−62.56%
물가 반영 실질 CAGR−63.74%
최대 낙폭−99.10%
샤프 / 소티노−2.14 / −2.60
거래 수1,338회
승률22.0%
손익비0.43
평균 수익 거래+14.14%
평균 손실 거래−7.66%
평균 보유6일
최대 연속 손실19회
같은 기간 벤치마크KODEX KOSDAQ 150 −8.73%

KOSDAQ, 2022-01-03~2026-10-16, 신호 다음 거래일 시가 체결, 수수료 0.015%·슬리피지 0.05%. 널스탁 백테스트 엔진 v16.41.0으로 2026-10-19에 계산했습니다.

청산 내역

거래가 끝난 이유별로 건수와 합산 손익을 나눴습니다. 손절 −6%를 걸었지만 손절 883회 중 216회는 체결 수익률이 −10% 이하입니다. 손절 판단 다음 날 시가에 체결되기 때문에, 시가가 갭으로 벌어진 날은 −6%보다 더 내려간 값에 정리됩니다.

속설 검증 #16 — 청산 방식별 내역
청산 방식건수비고
손절 −6%883회합계 −14,111,391원, 75회는 수익으로 끝남
20일 EMA 이탈417회합계 +1,028,177원, 180회가 수익
보유 기간 만료35회합계 +3,165,851원, 34회가 수익
백테스트 종료3회합계 +8,460원

KOSDAQ, 2022-01-03~2026-10-16, 신호 다음 거래일 시가 체결, 수수료 0.015%·슬리피지 0.05%. 널스탁 백테스트 엔진 v16.41.0으로 2026-10-19에 계산했습니다.

직접 다시 계산해 대조한 것

화면의 결과를 그대로 믿지 않고, 매수·청산 기록을 가격(·재무) 데이터에서 독립적으로 다시 계산해 신호가 규칙대로 나왔는지 확인했습니다.

  • 매수 1,338건을 가격 데이터의 EMA로 다시 계산했더니 1,337건은 체결 전날 두 조건이 모두 성립해 있었습니다. 나머지 1건은 상장 79거래일째 종목으로, 60일 EMA의 초기값 차이(2,705.4 대 2,708.6)에서 갈렸습니다.
  • EMA20 이탈 청산 417건은 417건 모두 전날 종가가 20일 EMA 위, 당일 종가가 아래였습니다.

눈에 띈 거래

한 종목은 이틀 연속 시가가 전일 종가보다 약 18% 낮게 시작해 청산 수익률이 −32.07%였습니다.

가장 큰 손실 거래는 약 2년 보유한 종목이 거래정지(가격 고정·거래량 0)를 거쳐 재개일 시가가 정지 전 가격의 약 4% 수준으로 열리며 −96.62%로 청산된 경우입니다. 거래가 멈춘 동안에는 손절도 25거래일 만료도 실행되지 않습니다.

읽을 때 주의할 점

이 기록은 특정 유니버스·기간·파라미터 한 가지 조합의 과거 시뮬레이션 결과입니다. 다른 기간이나 값에서는 다른 결과가 나올 수 있고, 한 규칙의 결과가 속설 전체의 성립 여부를 말해 주지도 않습니다. 미래 수익은 보장되지 않습니다.

자주 묻는 질문

이 결과로 “정배열 종목이 잠깐 눌렸다 회복하면 다시 오른다”가 맞다 또는 틀리다고 말할 수 있나요?
아닙니다. 속설 하나를 규칙 하나로 옮겨 한 유니버스·한 기간에서 계산한 값이며, 규칙·기간·종목 수를 바꾸면 결과가 달라질 수 있습니다. 관측된 숫자를 기록한 것일 뿐 성립 여부를 판정하지 않고, 미래 수익은 보장되지 않습니다.
표의 벤치마크와의 차이는 무엇을 뜻하나요?
같은 기간 지수 ETF의 수익률(KODEX KOSDAQ 150 −8.73%)과 전략 수익률(−99.09%)을 표시값 그대로 비교하는 용도입니다. 전략은 조건에 맞는 종목만 일정 수 보유하고 ETF는 지수 전체를 보유하므로 구성과 규칙이 달라 우열을 가리는 값은 아닙니다.

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

전략 백테스트하기

연구노트는 과거 데이터에서 관측된 계산 결과를 기준일과 설정값과 함께 기록한 자료입니다. 특정 종목·전략의 매수·매도를 권유하거나 우열을 판단하지 않으며, 모든 결과는 과거 데이터 기반 시뮬레이션이므로 미래 수익은 보장되지 않습니다.