이동평균(SMA·EMA) 쉽게 이해하기 — 개념과 원리
이동평균은 일정한 구간(창)을 한 칸씩 옮기며 평균을 내어 자료의 잔잔한 흐름을 드러내는 방법입니다. 단기적인 들쭉날쭉함은 줄고 추세가 보이기 때문에 매출, 방문자 수, 기온, 생산량, 가격 차트 등에 널리 쓰입니다. 이 계산기는 입력한 창 크기로 단순이동평균(SMA) 계열과 마지막 SMA 값, 마지막 지수이동평균(EMA) 값을 계산합니다.
계산 방법
- SMA: 최근 w개 값의 평균입니다. SMAₜ = (xₜ + xₜ₋₁ + … + xₜ₋w₊₁) ÷ w이며, 자료가 n개면 SMA는 w번째 값부터 n − w + 1개가 나옵니다.
- EMA: EMAₜ = α × xₜ + (1 − α) × EMAₜ₋₁이고 α = 2 ÷ (w + 1)입니다. 이 계산기는 첫 번째 자료값을 EMA의 시작값으로 씁니다.
결과의 단위는 자료의 단위와 같습니다.
원리
SMA는 최근 w개 값에 같은 가중치를 주고 그 이전 값은 버리므로, 우연한 오르내림이 서로 상쇄됩니다. 대신 창의 가운데를 반영하므로 최신 값보다 약 (w − 1) ÷ 2기만큼 늦게 반응합니다. EMA는 과거의 모든 값을 쓰되 한 기 지날 때마다 가중치를 (1 − α)배로 줄이므로, 최근 값의 비중이 크고 변화에 더 빨리 반응합니다. α = 2 ÷ (w + 1)로 정하면 EMA 가중치의 평균 나이가 w기 SMA와 같아집니다.
예제 풀이
- 자료: 12, 15, 11, 19, 22, 15, 18, 25, 14, 16, 창 w = 3
- 첫 SMA는 (12 + 15 + 11) ÷ 3 ≈ 12.6667이고, 이어서 15, 17.3333, 18.6667, 18.3333, 19.3333, 19, 마지막은 (25 + 14 + 16) ÷ 3 ≈ 18.3333입니다.
- EMA: α = 2 ÷ 4 = 0.5, 시작값 12
- 차례로 13.5, 12.25, 15.625, 18.8125, 16.90625, 17.453125, 21.2265625, 17.61328125가 됩니다.
- 마지막: 0.5 × 16 + 0.5 × 17.61328125 ≈ 16.8066
결과 해석
마지막 EMA(16.81)가 마지막 SMA(18.33)보다 낮은 것은 EMA가 최근의 낮은 값 14와 16에 더 크게 반응했기 때문입니다. 이동평균이 올라가면 상승 추세로 볼 수 있고, 원자료가 이동평균선을 가로지르면 단기 방향이 바뀌는 신호일 수 있습니다. 창이 길수록 곡선은 매끄럽지만 반응이 늦어집니다. 주간 패턴이 있는 일별 자료는 7일, 계절성이 있는 월별 자료는 12개월처럼 자연스러운 주기에 맞추는 것이 일반적입니다.
흔한 실수
- 이동평균 값을 미래 예측값으로 받아들이는 경우
- 짧은 자료에서 시작값이 다른 EMA끼리 비교하는 경우
- 자료의 주기와 맞지 않는 창을 골라 계절 파동이 그대로 남는 경우
자주 묻는 질문
후행 이동평균과 중심 이동평균은 어떻게 다른가요?
이 계산기의 후행 방식은 현재와 과거 값만 쓰고, 중심 방식은 각 점의 앞뒤 값을 함께 써서 지연은 없지만 미래 자료가 필요합니다.
창 크기는 어떻게 정하나요?
없애고 싶은 변동의 주기에 맞추고, 뚜렷한 주기가 없다면 몇 가지를 비교해 보십시오.
출처: Hyndman, R. J. & Athanasopoulos, G. Forecasting: Principles and Practice (OTexts).