5일 이동평균선 (EMA)

마지막 업데이트: 2022년 7월 20일 | 0개 댓글
  • 네이버 블로그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 트위터 공유하기
  • 카카오스토리 공유하기
주식차트 보조지표 DEMA

MACD 지표 설명

이동평균 수렴확산지수 (MACD)는 기술 분석 (TA) 을 위해 많은 트레이더들이 사용하는 오실레이터 유형 지표로, 주가, 암호화폐 또는 다른 거래 가능한 자산의 모멘텀을 결정하기 위해 이동 평균을 사용하는 추세 추적 도구입니다.

1970 년대 후반 제럴드 아펠 (Gerald Appel)에 의해 개발된 이동평균 수렴확산지수 지표는 이미 발생한 가격 결정 이벤트를 추적하는 후행 지표 (과거 가격 변화 또는 데이터를 기반으로 신호를 제공하는 범주)에 속합니다. MACD는 시장 모멘텀 및 가능한 가격 추세를 측정하는 데 유용할 수 있으며, 잠재적인 진입지점 및 탈출지점을 파악하기 위해 많은 트레이더들에 의해 활용되고 있습니다.

본격적으로 MACD의 메커니즘에 뛰어들기 전에, 이동 평균의 개념을 이해하는 것이 중요합니다. 우선, 간단하게 말해서 이동 평균(MA)은 미리 정의된 기간 이전 데이터의 평균값을 나타내는 선으로, 금융 시장에서 이동 평균은 기술 분석 (TA) 에 가장 널리 사용되는 지표 중 하나입니다. 이동평균은 단순 이동 평균(SMA)과 지수 이동 평균 (EMA) 의 두 가지 유형으로 나뉘며, SMA는 모든 데이터 입력에 균등하게 가중치를, EMA는 최신 데이터 값 (새로운 가격 포인트)에 치중하여 가중치를 적용합니다.

MACD의 작동 방식

MACD 지표는 두 개의 지수 이동 평균 (EMAs)을 뺀 기본선 (MACD 선)을 생성한 후, 다음 신호선을 나타내는 다른 EMA를 계산하는 데 사용됩니다.

또한, MACD 히스토그램은 두 선 사이의 차이를 기반으로 계산되며, 히스토그램은 다른 두 선과 함께 중심선의 위아래로 변동하며, 이를 제로선 이라고 합니다.

따라서, MACD 지표는 제로선을 따라 움직이는 세 가지 요소로 구성됩니다.

MACD 선 (1) : 상승 추세 또는 하락 추세 (시장 추세)를 결정하는 데 도움이 되며, 두 지수 이동 평균 (EMA)의 차이를 기반으로 계산됩니다.

신호선 (2) : MACD 선의 EMA (일반적으로 9- 기간 EMA). 신호 5일 이동평균선 (EMA) 선과 MACD 선을 결합한 분석은 반전지점 또는 진입지점과 탈출지점을 찾아내는 데 도움이 될 수 있습니다.

히스토그램 (3) : MACD 선과 신호선의 발산 및 수렴을 그래픽적으로 표현한 것으로. 히스토그램은 두 선 사이의 차이를 기반으로 계산됩니다.

MACD 선

일반적으로, 지수 이동 평균은 자산의 종가에 따라 측정되며, 두 EMA를 계산하는 데 사용되는 기간은 보통 12 5일 이동평균선 (EMA) 기간 (빠름)과 26 기간 (느린)으로 설정됩니다. 기간은 다른 기준 (분, 시간, 일, 주, 개월)들로 구성될 수 있지만, 우선, 이 글에서는 일별 설정에 중점을 두도록 하겠습니다. 이렇게 MACD 지표는 다양한 거래 전략을 수용할 수 있도록 맞춤화될 수 있습니다.

표준 시간대라고 가정하면, MACD 선은 12-일 EMA에서 26-일 EMA의 차이로 계산됩니다.

언급한 바와 같이, MACD 선은 제로선의 위아래로 진동하며, 중심선 교차 신호를 보내어 12-일과 26-일 EMA가 상대적 위치를 변경하고 있을 때 이를 트레이더들에게 알려줍니다.

기본적으로 신호선은 주선의 9-일 EMA로부터 계산되며 이전 가격 변화에 대한 통찰력을 제공합니다.

항상 정확한 것은 아니지만, MACD 선과 신호 선이 교차할 경우, 이는 일반적으로 추세 반전 신호를 나타냅니다. 특히 MACD 차트의 끝에서 발생하는 경우 추세 반전 신호일 확률이 매우 높습니다. (제로선 보다 훨씬 위 또는 훨씬 아래에 있음).

MACD 히스토그램

히스토그램은 MACD 선과 신호 선의 상대적인 움직임을 시각적으로 보여줄 뿐으로, 그저 하나를 다른 것으로부터 빼냄으로써 계산됩니다.

그러나 세 번째 이동선을 추가하는 대신 히스토그램은 막대그래프로 표현되므로, 시각적으로 쉽게 읽고 해석할 수 있습니다. 또한 히스토그램 막대는 자산의 거래량과 아무 관련이 없다는 것을 명심하십시오.

MACD 설정

앞서 논의 된 바와 같이, MACD의 기본 설정은 12, 26 및 9 기간 EMA를 기반으로 하므로 MACD (12,26,9)입니다. 그러나 일부 기술 분석가 및 증권 시장 분석 전문가들은 지표의 민감도를 높이는 방법으로 기간을 변경하는 방법을 이용합니다. 예를 들어, MACD (5,35,5)는 기존 금융 시장에서 주간 또는 월간 차트와 같이 더 긴 시간대의 차트와 함께 자주 사용됩니다.

암호화폐 시장의 높은 변동성으로 인해 MACD 지표의 민감도를 높이는 것은 위험 할 수 있습니다. 이는 잘못된 신호와 오해의 소지가 있는 정보를 초래하기 쉽기 때문입니다.

MACD 차트를 읽는 방법

이름에서 알 수 있듯이 이동평균 수렴확산지표는 이동 평균 간의 관계를 추적하며, 두 선 간의 상관 관계는 수렴 형 또는 발산 형 중 하나로 나타낼 수 있습니다. 선들이 서로를 향해 끌려 갈 때 수렴한다고 하며, 떨어져 나갈 때 발산한다고 합니다.

MACD 지표의 관련 신호는 MACD 선이 중심선 위 또는 아래 (중심선 교차) 또는 5일 이동평균선 (EMA) 신호선 위 또는 아래 (신호선 교차)에서 교차 할 때 발생하는 소위 교차들과 관련됩니다.

중심선과 신호선 교차는 여러 번 발생할 수 있으며, 많은 틀리고 까다로운 신호를 만들어냅니다. -특히 암호화폐와 같은 변동성이 심한 자산에서 더욱 많이 발생하므로, MACD 지표만을 의지해서는 안 됩니다.

중심선 교차

중심선 교차는 MACD 선이 양 또는 음의 영역에서 움직일 때 발생합니다. 중심선 위로 교차할 때 양의 MACD 값은 12-일 EMA가 26-일 EMA보다 큼을 나타내지만, 이와 반대로, MACD 선이 중심선 아래로 교차할 때 음의 MACD가 나타나는데, 이는 26-일 평균이 12-일보다 높음을 의미합니다. 즉, 양의 값을 가지는 MACD 선은 강한 상승 모멘텀을 암시하며, 음수 값을 가질 경우는 급격한 하락을 나타낼 수 있습니다.

신호선 교차

MACD 선이 신호선 위를 교차하면, 트레이더들은 종종 이것을 잠재적인 매수 기회 (진입 지점)로 해석하고, MACD 선이 신호선 아래로 교차할 때, 트레이더들은 이를 매도 기회 (탈출 지점)로 간주하는 경향이 있습니다.

물론 신호선 교차가 도움이 될 수 있지만, 항상 신뢰할 수 있는 것은 아닙니다. 위험을 최소화하기 위해서는 교차가 차트 어디에서 발생하는지 고려할 필요가 있으며. 예를 들어, 교차가 매수를 나타내지만, MACD 선 표시가 중심선 아래 (음수)이면 시장 상황은 여전히 약세로 간주 될 수 있으며, 반대로, 신호선 교차가 매도를 나타내지만 MACD 지표가 양수이면 (제로선 위), 시장 상황은 여전히 강세일 확률이 높습니다. 이러한 상황에서 매도 신호를 따른다면, 더 큰 위험을 감수 하게 될 수도 있습니다. (큰 추세를 고려할 때).

MACD 및 가격 다이버전스(Divergence)들

중심선과 신호선 교차와 함께 MACD 차트는 MACD 차트와 자산 가격 변화 사이의 차이를 통해 통찰력을 제공 할 수도 있습니다.

예를 들어, MACD가 신저점을 갱신하는 동안 암호화폐는 신고점을 갱신한다면, 가격의 상승에도 불구하고 상승 모멘텀 (매수력)이 그다지 강하지 않음을 나타내는 약세 다이버전스를 나타낼 것이며, 약세 다이버전스는 일반적으로 가격 반전에 선행하기 때문에 이는 매도 기회로 해석됩니다.

반대로, MACD 선이 두 개의 상승 최저점을 형성하고, 가격이 그 시점들에 맞물리는 하락 최저치를 형성할때, 이는 강세적인 다이버전스로 간주하며, 이는 가격 하락에도 불구하고 매수력이 더 강하다는 것을 의미합니다. 강제적인 다이버전스는 가격 반전에 선행하는 경향이 있어 잠재적으로 단기 저점을 의미합니다 (하락 추세에서 상승 추세로).

기술적 분석에서, 이동평균수렴 확산지수 지표는 가장 유용한 도구 중 하나입니다. 사용하기가 상대적으로 쉬울 뿐만 아니라 시장 동향과 시장 모멘텀을 파악하는 데 매우 효과적이기 때문입니다.

그러나 대부분의 TA 지표에서 MACD는 항상 정확하지는 않으며, 잘못된 신호들을 제공할 수 있습니다. 특히 변동성이 높은 자산 또는 장세가 약세장 또는 평행 추세인 경우에는 잘못된 신호를 제공할 확률이 더욱 높아집니다. 따라서 많은 트레이더들은 위험도를 줄이고 신호의 신뢰성을 높이기 위한 수단으로, RSI 지표와 같은 다른 지표와 함께 MACD를 사용합니다.

R을 이용한 이동평균선 일봉챠트에 같이 그리기

1. 단순이동평균 : SMA, calculates the arithmetic mean of the series over the past n observations.

우리가 흔히 알고 있는 바로 그것입니다.

2. 지수평활법 : EMA, calculates an exponentially-weighted mean, giving more weight to recent observations. See Warning section below.

최근 가격에 더 가중치를 두고 계산하는 방법입니다.가중치는 0과 1사이의 값입니다

3. 선형가중이동평균 : WMA is similar to an EMA, but with linear weighting if the length of wts is equal to n. If the length of wts is equal to the length of x, the WMA will use the values of wts as weights.

역시 최근 가격에 가중치를 주고 계산합니다.

4. 거래량가중이동평균 : VWAP calculate the volume-weighted moving average price.

거래량에 따라 가중치를 주어 계산하는 방법입니다.


# plotly 챠트
library (plotly)
library (quantmod)
samsung colnames(samsung) #samsung$rtn samsung # basic example of ohlc charts
df df # cutom colors
i d fig % plot_ly(x = 5일 이동평균선 (EMA) ~Date, type= "candlestick" ,
open = ~open, close = ~close,
high = ~high, low = ~low,
increasing = i, decreasing = d)
fig % add_lines(x = ~Date, y = ~close,
line = list(color = 'black' , width = 2 ), inherit = F )
fig % layout(title = "Basic Candlestick Chart" ,
xaxis = list(rangeslider = list(visible = F )),
showlegend = FALSE )
fig
# 이동평균 추가
df # 단순이동평균 SMA : calculates the arithmetic mean of the series over the past n observations.
df$MA5 df$MA20 # 지수평활법 EMA : calculates an exponentially-weighted mean, giving more weight to recent observations. See Warning section below.
df$EMA5 5일 이동평균선 (EMA) df$EMA20 # 선형가중이동평균 WMA is similar to an EMA, but with linear weighting if the length of wts is equal to n. If the length of wts is equal to the length of x, the WMA will use the values of wts as weights.
df$WMA5 df$WMA20 # 거래량가중이동평균 VWAP calculate the volume-weighted moving average price.
df$VWAP5 df$VWAP20 df i d fig % plot_ly(x = ~Date, type= "candlestick" , name = "일봉" ,
open = ~open, close = ~close,
high = ~high, low = ~low,
increasing = i, decreasing = d)
fig % add_lines(x = ~Date, y = ~MA5 , name = "단순이동평균_5일" ,
line = list( width = 1 ), legendgroup = "SMA" ,inherit = F )
fig % add_lines(x = ~Date, y = ~MA20 , name = "단순이동평균_20일" ,
line = list( width = 1 ), legendgroup = "SMA" ,inherit = F )
fig % add_lines(x = ~Date, y = ~EMA5 , name = "지수평활법_5일" ,
line = list( width = 1 ), legendgroup = "EMA" ,inherit = F )
fig % add_lines(x = ~Date, y = ~EMA20 , name = "지수평활법_20일" ,
line = list( width = 1 ), legendgroup = "EMA" ,inherit = F )
fig % add_lines(x = ~Date, y = ~WMA5 , name = "선형가중이동평균_5일" ,
line = list( width = 1 ), legendgroup = "WMA" ,inherit = F )
fig % add_lines(x = ~Date, y = ~WMA20 , name = "선형가중이동평균_20일" ,
line = list( width = 1 ), 5일 이동평균선 (EMA) 5일 이동평균선 (EMA) legendgroup = "WMA" ,inherit = F )
fig % add_lines(x = ~Date, y = ~VWAP5 , name = "거래량가중이동평균_5일" ,
line = list( width = 1 ), legendgroup = "VWAP" ,inherit = F )
fig % add_lines(x = ~Date, y = ~VWAP20 , name = "거래량가중이동평균_20일" ,
line = list( width = 1 ), legendgroup = "VWAP" ,inherit = F )
fig % add_lines(x = ~Date, y = ~close, name= '종가' ,
line = list(color = 'black' , width = 2 ), inherit = F )
fig % layout(title = "Basic Candlestick Chart" ,
xaxis = list(rangeslider = list(visible = F )),
showlegend = TRUE )
fig


돈미새 돈미새

오늘 알아볼 컨텐츠는 주식에서의 기술적분석 그 중에서 차트의 보조지표 中 DEMA(이중지수 이동평균)에 대해 알아보도록 하겠습니다.

DEMA는 Double Exponential Moving Average의 약자로 패트릭 멀로이가 1994년에 개발한 주식 차트 보조지표인데, 우리가 사용하는 이동평균선(이평선)은 '시간차이'라는 약점이 있습니다. 이러한 약점을 보완하기 위한 보조적 지표가 필요했고, 개선된 지표에 대한 여러 종류중 하나가 'DEMA'라고 볼 수 있습니다.

주식차트 보조지표 DEMA

계산식

DEMA(2중 지수이동평균) = EMA의 EMA
EMA = X (당일종가 - 전일 EMA) + 전일 EMA
n = 9일(기본값)

계산식은 위와 같으나, 참고만 하는 것이 좋겠다. (어차피 우리가 궁금한 것은 계산식이 아니니..)

DEMA 의미 해석

DEMA는 앞서 말하였듯이, 이동평균선의 후행성을 극복하기 위해 만들어 졌는데, 이러한 단점을 극복하기 위해서는 가장 최근의 종가가 반영되어야 한다. 그래서 가중이동평균(Weighted Moving Average)를 사용하게 된다.

예를 든다면, 시장이 상승을 하였을 때 가격을 이용하여 지수이동평균과 단순이동평균과 DEMA를 각각 산출하여서 현재의 가격 움직임에 가장 근접한 것을 한 눈에 확인 할 수가 있는데 DEMA가 가장 최근의 가격 움직임과 가장 가까운 수치로 나타나게 된다.

DEMA 사용방법

DEMA도 이동평균선의 종류이므로 사용 방법 역시 동일하다. 골든크로스 가 나타난다면 매입신호, 데드크로스 가 나타난다면 매도신호로 생각하면 된다. 이에 더하여, DEMA가 주가에 근접했을 경우에는 종종 지지선과 저항선의 역할도 수행하게 된다.

또한, 현재의 종가가 DEMA와의 간격을 산출하는 이격도로 활용할 수 있다. 여기서 DEMA는 기존의 이평선이 갖는 시차적 문제를 해결하게 되는데, 골든크로스와 데드크로스의 시기가 앞당겨지게 되므로 장점이 되게 된다.

삼성전자 DEMA 차트

예시자료

위 차트는 삼성전자 차트이다. DEMA는 주황색 굵은선이며 DEMA 5일선, DEMA 20일선을 겹쳐놓은 것이다. 차트에서도 볼 수 있듯이, 골든크로스와 데드크로스에 따라 매수와 매도타점이 선행한다고 보면 된다. 다만, 주의해야 할 점은 주의구간으로 표시해둔 곳인데 선이 횡보하는 경우에 방향성을 잘 확인하고 진입해야한다.

이러한 이유는 DEMA에 대해서 너무 맹신해서는 안되기 때문이다. 차트에서 보는 것과 같이 장기적으로 이용도 가능하며, 단기적플레이에도 유용하게 사용이 가능할 것이다. 가장 적합하게 보는 것은 스윙으로 5~7 영업일정도선에서 매도를 하는 것이 적합해 보인다.

꿀팁대방출

오늘은 주식 차트의 보조지표인 DEMA에 대해서 알아보았는데요. 아래에 더욱 다양한 주식 정보가 있으니, 확인해보시길 바랍니다~!

5일 이동평균선 (EMA)

사실 내가 가장 하고 싶은 것은 Python을 이용한 백 테스터 구현과 다양한 투자전략 비교이다. 전공자가 아니라서 배워 나아가는 입장이지만, JW_capital 이라는 큰 프로젝트를 구상중이고, 꾸준히 공부해서 얻은 내용을 하나하나 여기에 정리해보겠다.

먼저 Financial data reader 라는 훌륭한 라이브러리를 이용한 주식 데이터 수집과, pandas를 통한 이동평균선을 구하는 예제를 해보겠다.

Financial data reader는 주가 데이터를 손쉽게 가져올 수 있는 파이썬 오픈소스 라이브러리이다. 오늘의 실습 환경은 Google Colab이다.

#1 Financial data reader 를 install 하고, 각종 필요한 라이브러리를 import 한다.

#2 원하는 종목을 불러온다

종목코드와 년도를 입력해주면 된다. (내가 얼마전에 매수한 오스템 임플란트 주식을 넣어보았다) 그러면 자동으로 pandas dataframe 형식으로 불러와진다. 최근 5개의 데이터를 확인해보겠다.

아쉽게도 Adj Close 는 없지만 Close를 이용해서 이동평균선을 그려보겠다.

#3 이동평균선을 구한다

이동평균선 (Moving average) 의 정의는 일정기간 동안 종가를 산술 평균 낸 것이다. 주가의 트렌드를 볼 수 있는 중요한 지표이다. 정확한 설명은 Investopedia 링크에 5일 이동평균선 (EMA) 나와있다.

이때 pandas의 rolling 메소드를 사용하는데, rolling(window=구간).계산식() 의 형식으로 코드를 작성하면, 한 줄로 이동평균선을 구할 수 있다. 5일 이동평균선 값을 구한 후, df의 'ma5' 란 column으로 저장했다.

같은 방법으로 20일(한 달) 60일(3개월: 기업실적 발표 사이클) 120일(6개월: 기업 반기결산 사이클)을 구한다.

#4 시각화

오스템 임플란트 주식을 이동평균선과 함께, 2019년부터 오늘까지 시각화해보았다.

앞으로 같은 라이브러리를 가지고, 불린저 밴드, 수익률 그래프 등을 추가로 그려볼 계획이다. 오늘 예제는 파이썬으로 배우는 알고리즘 트레이딩 도서를 참고해서 작성했다.

5일 이동평균선 (EMA)

일정기간 동안의 주가를 산술 평균한 값인 주가 이동평균을 차례로 연결해 만든 선.

주식 종합차트를 켜면 기본적으로 아래의 그림처럼 캔들과 이동평균선이 그려져 있다. 여기서 이동평균선은 일정기간 동안의 주가의 평균 가격을 선으로 연결하여 나타낸 것이다. 이러한 이동평균선은 단기, 중기, 장기 이동평균선으로 나뉠 수 있다. 5일 20일선은 단기 , 60일선은 중기, 120일 또는 200일선은 장기 로 분류된다. 이것은 절대적인 선이 아니라 편의에 따라 다르게 설정할 수 있다.

주식 단테 님의 경우는 5, 15, 33, 5일 이동평균선 (EMA) 5일 이동평균선 (EMA) 56, 112, 224, 448일선을 이용하고 계신다. 그중 224일선 을 가장 중요하게 보시는 것 같다. 224일선은 강한 저항을 받는 곳이라 224일선에 닿으면 저항을 받고 떨어질 가능성이 높은데, 이것을 뚫는다는 것은 개미가 아니라 세력일 확률이 높고 상승할 가능성이 높다. 아래 코아스템의 차트를 보면 검은색이 224일선인데 이 선을 뚫으니 주가가 상승했다.(224일선은 주식 단테 5일 이동평균선 (EMA) 님 만의 기준이며 각자의 편의에 따라 다양하게 설정할 수 있다.)

그와는 반대로 상승한 주가가 떨어질 때 이 224일선에 닿으면 지지를 받아 반등할 가능성이 높다. (그러나 이 지지를 받지 못하고 224일선 아래로 떨어지면 하락할 가능성이 높아지니 손절을 해야 한다.) 그래서 주식 단테 님은 이 224일선을 자석으로 표현한다. 이 선과 멀어지면 자석처럼 주가가 다시 이 선으로 되돌아 가려는 힘이 강해지기 때문이다.

기본적으로 이동평균선은 단순 이동평균선으로 되어있는데, 이것도 단순, 가중, 지수 등 다양한 이동평균으로 바꿔서 사용할 수 있다.

5일 단순 이동평균 = 오늘 종가 + 1일 전 +2일 전 + 3일 전 + 4일 전 종가 / 5


단순 이동평균은 과거나 현재에 대한 가중치를 동일하게 적용한다. 일정기간 동안의 주가를 더해 단순히 평균을 낸 것에 불가하기 때문에 현재의 추세를 비교적 적게 반영하게 된다는 문제점이 있다.

5일 가중 이동평균 = 오늘 종가*5 + 1일 전*4 + 2일 전*3 + 3일 전*2 + 4일 전 종가*1 / 5+4+3+2+1

가중 이동평균은 현재의 추세 반영을 비교적 적게 인식하는 단순 이동평균의 문제점을 보완하고자 만든 것으로 최근의 주가에 더 큰 가중치를 주고 과거의 주가에 적은 가중치를 줘서 현재의 추세를 더욱 잘 반영하도록 한 것이다. 이러한 가중 이동평균은 가중치 값이 정수로 계산을 하다 보니 최근 주가의 추세가 조금만 커도 기울기가 커져 한쪽으로 치우치게 되는 문제점이 있다.

5일 지수 이동평균 = 오늘 종가*1 + 1일 전*(2/3) ² + 2일 전*(2/3) ³ + 3일 전*(2/3)⁴ + 4일 전 종가*(2/3)ⁿ / 1 + (2/3) ² + (2/3) ³ + (2/3)⁴+ (2/3)ⁿ 'n = 5'

단순 이동평균과 가중 이동평균의 문제점을 보완한 것이 지수 이동평균이다. 정수가 아닌 지수로 가중치 값을 계산하여 단순 이동평균보다 현재를 잘 반영할 수 있으며, 가중 이동평균보다 최근의 값에 덜 민감한 이동평균이 지수 이동평균이다. (아직 100% 정확하게 이해하지는 못한 것 같다.)

이동평균선(골든크로스, 데드크로스, 5일 이동평균선 (EMA) 정배열, 역배열) 공부하기 #2

골든크로스(golden cross) 하락을 하던 주가가 상승하기 시작하면 단기 이동평균선이 먼저 상승하고 중기, 장기 이동평균선이 시차를 두고 상승하게 된다. 이러한 단기 이동평균선이 중장기 이동평


0 개 댓글

답장을 남겨주세요