ROC(변화율)란? 가격은 그대로인데 ROC는 왜 혼자 튈까

‘오늘 가격은 별로 움직이지도 않았는데, ROC는 왜 갑자기 마이너스에서 플러스로 튀었지?’

답은 오늘이 아니라 12개 봉 전에 있습니다. ROC는 오늘과 ‘N개 봉 전의 그날’만 비교합니다. 그날이 바뀌면 ROC도 따라서 바뀝니다. 바뀐 것이 마침 급등하거나 급락한 봉이었다면 ROC는 혼자 튑니다. 이 글에서는 먼저 봉 7개로 한 번 계산해 보고, 이어서 1~4가 표시된 실제 차트(달러/엔, 2026년)로 이 ‘메아리’가 어떤 모습인지 살펴봅니다.

이 글은 MASQuant ‘트레이딩 아카데미 · 기술 지표 백과’ 시리즈의 한 편입니다. 모든 지표의 분류는 기술 지표 백과에 정리되어 있습니다.

한 문장으로 이해하기

ROC = 오늘 가격이 N개 봉 전보다 몇 % 오르거나 내렸는가.

이 지표가 답하는 질문은 ‘어느 하루와 비교해서 지금 올랐는가 내렸는가, 차이는 얼마인가?’입니다.

ROC는 ‘전년 동월 대비’ 증가율과 같습니다. 올해 5월 실적을 작년 5월과 비교하는 것입니다. 작년 5월에 마침 유난히 큰 주문이 한 건 있었다면, 올해 5월의 전년 동월 대비 수치는 형편없이 나옵니다. 올해가 나빠져서가 아니라, 비교 기준이 유난히 높았기 때문입니다. ROC의 숫자는 절반은 오늘이, 절반은 비교 대상인 그날이 결정합니다.

먼저 한 번 계산하기: 가격은 그대로인데 ROC가 튄다

계산하기 쉽게 3개 봉짜리 ROC(오늘과 3개 봉 전을 비교)를 씁니다. 4일째에 가격이 100에서 90으로 떨어지고, 이후 계속 90에 머뭅니다(아래는 설명을 위한 정수이며, 시세 데이터가 아닙니다).

날짜 종가 3개 봉 전 종가 ROC(3)
4일째 90 100 (90 − 100) ÷ 100 × 100 = −10%
5일째 90 100 −10%
6일째 90 100 −10%
7일째 90 90 (90 − 90) ÷ 90 × 100 = 0%

5일째, 6일째, 7일째 가격은 꼼짝도 하지 않았습니다. 그런데 7일째가 되자 비교 대상인 날이 ‘하락 전의 100’에서 ‘하락 후의 90’으로 바뀌면서, ROC는 −10%에서 단숨에 0%로 튀어 돌아옵니다. 4일째의 하락은 ROC 안에 3개 봉 동안 남아 있다가 한 번에 사라집니다. 기간을 12로 바꾸면 12개 봉 동안 남습니다.

정식 공식

흔히 쓰는 파라미터는 12입니다(9, 10, 14를 쓰는 사람도 있습니다).

ROC = (오늘 종가 − 12개 봉 전 종가) ÷ 12개 봉 전 종가 × 100

0 위: 12개 봉 전보다 높음
0 아래: 12개 봉 전보다 낮음

MT5에는 관련 지표가 두 개 있고, 계산법이 조금 다릅니다.

  • MT5 예제에 있는 ROC(Rate of Change, 기본값 12): ’12개 봉 전 가격’이 아니라 ‘오늘 가격’으로 나눕니다. 그래서 10% 상승은 9.09, 10% 하락은 −11.11로 표시되어, 위의 표준 계산법과 조금 다릅니다.
  • MT5에 기본 탑재된 Momentum(모멘텀, 기본값 14): ‘오늘 ÷ N개 봉 전 × 100’을 계산하며, 100은 변화 없음, 101은 1% 높음을 뜻합니다. 본질은 ROC와 같고, 0을 100으로 바꿨을 뿐입니다.

이 글의 차트는 위의 표준 계산법을 썼습니다. 플랫폼 간에 수치를 비교하기 전에 어느 쪽을 쓰는지 먼저 확인하세요.

차트로 보기: 달러/엔 2026년, 1~4 순서로

아래 차트는 달러/엔(USDJPY)의 2026년 3월 초부터 6월 하순까지의 일봉으로, MT5의 과거 시세에서 가져왔습니다. 구간 전체로 보면 157.689 → 161.529. 그 사이 4월 30일에 아주 큰 음봉이 하나 있습니다. 회색 바탕은 그 음봉이 아직 ROC 안에 남아 있는 12개 봉입니다.

달러/엔 2026년 3월~6월 일봉. 4월 30일 하루 만에 크게 떨어지고 ROC도 따라서 마이너스로 내려감. 12개 봉 뒤 가격은 거의 움직이지 않았는데 ROC는 단숨에 플러스로 튀어 돌아옴
그림: 달러/엔(USDJPY) 일봉, 2026/3/3–2026/6/22, MT5 과거 시세. 위쪽은 가격이며, 속이 빈 캔들은 상승 마감, 속이 찬 캔들은 하락 마감입니다. 회색 바탕은 4월 30일의 큰 음봉이 아직 ROC 계산 범위 안에 있는 12개 봉이며, 빨간 점선은 크게 떨어진 날, 회색 점선은 그로부터 12개 봉 뒤입니다. 아래쪽 주황색 선은 ROC(12)이고, 점선은 0과 ±1%입니다. 오른쪽은 가격, 아래쪽은 날짜이며, 동그라미 숫자는 아래 설명과 대응합니다.
1

하루에 2.38% 하락(2026년 4월 30일). 이날의 하락폭은 평균 실제 변동폭(ATR)의 약 4.5배로, 이 기간에서 가장 큰 봉이었습니다.

2

ROC도 따라 내려갑니다: +0.58%에서 −1.38%로. 오늘 크게 떨어졌으니 12개 봉 전과 비교하면 당연히 마이너스입니다. 여기까지는 아주 자연스럽습니다.

3

12개 봉 뒤, 가격은 거의 움직이지 않습니다(2026년 5월 18일, +0.01%). 이날 종가는 158.773. 전날과 거의 같습니다.

4

그런데 ROC는 −1.00%에서 +1.42%로, 하루에 2.42%포인트 튑니다. 이유는 비교 대상인 날이 바뀌었기 때문입니다. 전날은 하락 전의 가격과 비교했지만, 이날은 4월 30일 큰 하락 이후의 종가(156.554)와 비교합니다. 오늘은 아무 일도 없었는데, ROC는 마치 큰 양봉이 나온 것처럼 보입니다. 이것이 ROC의 ‘메아리’입니다.

이는 실제 과거 시세의 한 구간으로, ROC의 성격을 설명하기 위한 것이지 일반 법칙이 아닙니다. 상품, 시간 단위, 구간을 바꾸면 숫자는 모두 달라집니다.

보이는 것, 의미하는 것

보이는 것 보통 의미하는 것 하지만 주의할 점
ROC가 0 위 N개 봉 전보다 높음 한 점과 비교할 뿐, 그사이 내내 올랐다는 뜻이 아님
ROC가 0 아래 N개 봉 전보다 낮음 위와 같음
ROC가 마이너스에서 플러스로 바뀜 지금 가격이 N개 봉 전을 넘어섬 ‘비교 대상인 날’이 바뀐 것일 수도 있으며, 오늘 꼭 올랐다고 할 수 없음(차트의 4)
가격은 신고가인데 ROC는 지난번보다 낮음 상승세가 감속 중 반전한다는 뜻이 아니라, N개 봉 전과의 차이가 줄었을 뿐
가격은 밋밋한데 ROC가 갑자기 크게 튐 N개 봉 전의 아주 큰 봉이 막 빠져나감 N개 봉 앞으로 거슬러 찾아보면 대개 원인이 보임

실전 활용: 예시 세 가지

예시 1: 모멘텀 필터로 쓰기

규칙은 ‘ROC(12)가 0보다 클 때만 매수한다’로 쓸 수 있습니다. ‘지금이 12개 봉 전보다 높을 때’만 추세 방향 주문을 낸다는 뜻입니다. 가장 단순하고, 가장 흔한 활용법입니다.

예시 2: 어느 상품이 더 강한지 비교하기

ROC는 백분율이라 가격대가 다른 상품끼리도 바로 비교할 수 있습니다. 예를 들어 금, 은, 지수의 최근 20개 봉 ROC를 함께 보고, 가장 강한 하나만 매수합니다.

예시 3: 메아리가 만드는 거짓 신호 피하기

규칙이 ‘ROC가 마이너스에서 플러스로 바뀌면 진입’이라면, ‘그날 종가도 전날보다 높아야 한다’는 조건을 더할 수 있습니다. 차트의 4처럼 ‘가격은 그대로이고 기준만 바뀐’ 플러스 전환은 이것으로 걸러집니다.

세 가지 예시 모두 기억해야 할 것이 있습니다. ROC는 두 점만 비교합니다. 오늘의 한 점과 N개 봉 전의 한 점이고, 그사이에 무슨 일이 있었는지는 상관하지 않습니다. N개 봉 전의 그날이 특별할수록 ROC는 혼자 튀기 쉽습니다.

흔한 오용

1. ROC가 플러스로 바뀌면 오늘 올랐다고 여기기

차트의 4에서 가격은 0.01%밖에 오르지 않았는데, ROC는 −1.00%에서 +1.42%로 튀었습니다. 플러스로 바뀐 원인은 12개 봉 전의 큰 음봉이 계산 범위에서 빠져나갔기 때문이지, 오늘 매수세가 들어와서가 아닙니다.

2. 플랫폼이 다른 ROC 수치를 그대로 비교하기

표준 계산법은 N개 봉 전 가격으로 나누고, MT5 예제의 ROC는 오늘 가격으로 나누며, MT5의 Momentum은 100을 중심으로 합니다. 똑같이 ‘10% 상승’이라도 세 가지는 각각 10, 9.09, 110으로 표시됩니다.

3. 기간을 아무렇게나 바꾸기

ROC(9)와 ROC(14)는 비교하는 날이 다르고, 메아리가 나타나는 시점도 다릅니다. 기간을 바꾸면 신호의 위치도 따라 바뀌므로, 그대로 가져다 쓰지 말고 다시 검증해야 합니다.

자주 묻는 질문

ROC 지표란 무엇인가요?

ROC(Rate of Change, 변화율)는 모멘텀 지표로, 오늘 가격이 N개 봉 전보다 몇 % 오르거나 내렸는지를 계산하며, 흔히 쓰는 기간은 12입니다. 0 위면 N개 봉 전보다 높고, 0 아래면 낮다는 뜻입니다.

ROC와 Momentum은 무엇이 다른가요?

본질은 같습니다. 둘 다 오늘을 N개 봉 전과 비교합니다. ROC는 0이 중심이고 단위가 %이며, MT5에 기본 탑재된 Momentum은 ‘오늘 ÷ N개 봉 전 × 100’으로 100이 중심입니다.

ROC는 왜 갑자기 튀나요?

비교 대상인 날이 매일 바뀌기 때문입니다. N개 봉 전에 유난히 큰 봉이 있었다면, 그 봉이 계산 범위에서 빠지는 날 ROC는 크게 튑니다. 그날 가격이 거의 움직이지 않았더라도 그렇습니다.

MT5에 ROC가 있나요?

MT5를 설치할 때 함께 들어오는 예제 지표(Examples 폴더)에 Rate of Change가 있으며, 기본 기간은 12입니다. 오늘 가격으로 나누기 때문에 수치가 표준 계산법과 조금 다릅니다. MT5 지표 목록에 기본 탑재된 것은 Momentum입니다.

맺음말

ROC는 아주 직접적입니다. 오늘이 N개 봉 전보다 몇 % 올랐는가. 약점도 똑같이 직접적입니다. 비교 기준이 매일 바뀌고, 기준이 되는 그날이 특별할수록 숫자는 혼자 튑니다.

그러니 정말 물어야 할 것은, 내 진입 규칙에 ‘ROC가 마이너스에서 플러스로 전환’을 쓸 때, 그중 몇 번이 사실은 12개 봉 전의 그날이 바뀐 것뿐이었는가?입니다. 이 질문은 과거 시세 한 구간으로는 답할 수 없습니다. 규칙을 여러 구간의 시세에서 백테스트해야 합니다.

아직 나만의 규칙이 없고, 지표를 하나하나 조합하는 것부터 시작하고 싶지 않다면? MASQuant의 Strategy Genie는 먼저 투자 스타일 하나만 고르면, AI가 시장 상황을 분석하고 상품을 골라 후보 전략 세 개를 한 번에 제시합니다. 모두 과거 데이터로 미리 백테스트한 것이며, 수익률과 원금 최대 낙폭을 펼쳐 보여 준 뒤 MT5에 배포할지는 여러분이 결정합니다.

이미 나만의 아이디어가 있다면 조건을 한 문장으로 적어, 예를 들어 ‘ROC(12)가 0보다 크고, 그날 종가가 전날보다 높을 때만 매수’처럼 AI 전략 어시스턴트에 맡기고 버튼을 누르면 백테스트가 시작됩니다. 백테스트 환경에는 스프레드, 슬리피지, 시장 유동성 변화, 체결 지연 같은 실제 시장의 마찰이 반영되어 있습니다(사용 방법은 AI 전략 어시스턴트 사용 가이드 참고). 그다음 ‘그날 종가가 전날보다 높음’을 빼고 한 번 더 돌리면, 메아리가 만든 거짓 신호가 얼마나 되는지 보입니다. 백테스트가 알려 주는 것은 ‘이 규칙이 과거 시세에서 어땠는가’이지, 미래에 대한 보장이 아닙니다.

아이디어는 검증을 거쳐야 비로소 전략이 됩니다.

본문의 차트는 MT5 플랫폼의 과거 시세(일봉. 플랫폼마다 시세와 일봉 구분 방식이 조금씩 달라 수치가 완전히 같지 않을 수 있습니다)에서 가져왔고, 지표는 프로그램이 표준 계산법에 따라 산출했습니다. 예시에 쓴 정수는 시세 데이터가 아닙니다. 과거 시세는 지표의 성격을 설명하기 위해서만 쓰였으며, 미래 가격 움직임을 나타내지 않습니다.

위험 고지: CFD는 고위험 금융상품으로, 빠른 자금 손실로 이어질 수 있습니다. 과거 성과는 미래 결과를 보장하지 않으며, 모든 전략과 백테스트는 참고용일 뿐 투자 조언이 아닙니다. 거래 전에 당사의 위험 고지 조항을 충분히 확인하시기 바랍니다.