티스토리 뷰

728x90
반응형

주식 차트를 설정하다 보면 '단순'과 '지수' 중 어떤 이동평균선을 쓸지 고민에 빠지게 됩니다. "남들이 20일선이 중요하다니 그냥 쓴다"는 분들이 많지만, 자동화 투자를 설계하는 우리에게는 이 두 계산 방식의 차이를 아는 것이 매우 중요합니다.

오늘은 SMA(단순이동평균)EMA(지수이동평균)의 수학적 원리와 실전 활용법을 완벽하게 비교해 보겠습니다.

1. SMA (Simple Moving Average, 단순이동평균)

SMA는 가장 기초적인 이동평균선입니다. 정해진 기간의 가격을 모두 똑같은 비중으로 평균을 냅니다.

  • 수식

  • 특징: 모든 날짜의 데이터에 동일한 가중치를 부여합니다. 10일 전 가격이나 오늘 가격이나 평균에 미치는 영향이 똑같습니다.
  • 장점: 움직임이 부드럽고 '속임수(Whipsaw)'가 적어 장기적인 추세를 확인하기에 좋습니다.
  • 단점: 과거 데이터가 오늘 데이터와 똑같은 비중으로 섞여 있어, 최근의 급격한 가격 변동을 반영하는 데 시간이 걸립니다(후행성).

2. EMA (Exponential Moving Average, 지수이동평균)

EMA는 최근 가격에 더 높은 가중치를 두어 계산하는 방식입니다. 주가의 최신 흐름을 더 민감하게 반영하기 위해 고안되었습니다.

  • 수식

  • 가중치(알파) 산출법:

 

 

  • 예시: 12일 EMA라면 0.153 입니다. 즉, 오늘 가격을 약 15.3% 반영하고 나머지는 과거 누적 데이터로 채우는 방식입니다.

  • 특징: 최근 가격일수록 가중치가 지수적으로 커집니다.
  • 장점: 주가 변동에 민감하게 반응하여 추세 전환을 SMA보다 훨씬 빠르게 포착할 수 있습니다.
  • 단점: 변동성이 심한 장세에서는 잦은 가짜 신호(데드캣 바운스 등)를 보낼 수 있습니다.

3. SMA vs EMA 한눈에 비교하기

구분SMA (단순)EMA (지수)

반응 속도 느림 (안정적) 빠름 (민감함)
가중치 모든 날짜 동일비중 최근 가격에 높은 가중치
주요 용도 장기 추세, 지지/저항 확인 단기 매매, 추세 전환 포착, MACD 등
적합한 투자자 보수적인 장기 투자자 적극적인 단기/스윙 투자자

4. 자동화 투자 알고리즘에서의 선택

알고리즘 매매를 설계할 때, 두 지표의 특성을 이해하고 로직을 짜야 합니다.

  • 골든크로스 전략: 더 빠른 진입을 원한다면 EMA를 활용하는 것이 유리합니다.
  • 추세 추종 전략: 노이즈를 줄이고 확실한 추세만 타고 싶다면 SMA가 적합할 수 있습니다.
  • 하이브리드: 200일 장기 이평선은 SMA로 설정해 대세 하락을 방지하고, 12일/26일 단기 신호는 EMA(MACD 방식)로 설정해 기민하게 대응하는 방식이 많이 쓰입니다.

파이썬 Pandas 구현 코드

# SMA 계산
df['sma_20'] = df['close'].rolling(window=20).mean()

# EMA 계산
df['ema_20'] = df['close'].ewm(span=20, adjust=False).mean()

💡 결론: 어떤 것이 더 좋은가요?

정답은 없습니다. 하지만 "추세가 시작되는 초기 단계에 올라타겠다"면 EMA를, "안전하게 추세가 확정된 것을 확인하고 들어가겠다"면 SMA를 추천합니다.

 

여러분의 자동매매 봇은 어떤 성격인가요? 지금 바로 두 지표를 백테스팅하여 내 전략에 더 잘 맞는 옷을 골라보세요!

 

728x90
반응형