[이론] MACD 서로 다른 시간척도로 변화를 읽는 법
서로 다른 시간척도로 변화를 읽는 법
가격 밖의 MACD
서로 다른 시간척도로 변화를 읽는 법
MACD는 주식 차트에서 태어났지만, 본질적으로 금융에만 속한 지표는 아니다. 일정한 간격으로 관측되는 수열이 있다면 어디에든 적용할 수 있는 단순한 변화 감지기다.
공부량, 지출액, 운동시간, 업무 처리량, 수면시간, 웹사이트 방문자 수처럼 시간에 따라 기록되는 값이 있다고 하자. 우리는 흔히 오늘의 숫자를 어제와 비교한다. 그러나 하루의 차이는 잡음에 지나치게 민감하다. 반대로 한 달 평균만 보면 변화가 너무 늦게 드러난다.
MACD는 이 사이에서 흥미로운 질문을 던진다.
최근의 나는, 평소의 나보다 빨라지고 있는가?
이를 위해 MACD는 짧은 기억과 긴 기억을 동시에 만든 뒤 두 기억의 차이를 계산한다.
EMA는 감쇠하는 기억이다
시계열을 라고 하자. 는 날짜나 주차처럼 일정한 관측 시점을 뜻한다.
지수이동평균 EMA는 다음의 재귀식으로 정의된다.
오늘의 EMA는 오늘 관측값과 어제까지의 EMA를 섞어 만든다. 이 크면 오늘의 값에 민감하게 반응하고, 작으면 과거의 기억을 오래 유지한다.
초기값의 영향이 충분히 작아졌다고 가정하고 재귀식을 계속 펼치면 EMA의 구조가 더 선명해진다.
과거의 관측값에는 라는 지수적으로 감소하는 가중치가 붙는다. 오래된 값이 갑자기 사라지는 것이 아니라 시간이 지날수록 영향력이 서서히 작아진다.
따라서 EMA를 단순한 평균보다 감쇠하는 기억이라고 이해하는 편이 직관적이다.
- 짧은 EMA는 최근 사건을 크게 기억하고 오래된 사건을 빨리 잊는다.
- 긴 EMA는 최근 사건에 덜 흥분하고 오래된 흐름을 천천히 잊는다.
MACD는 바로 이 두 기억을 비교한다.
MACD는 짧은 기억과 긴 기억의 차이다
빠른 EMA의 기간을 , 느린 EMA의 기간을 라고 하자. 여기서 다.
MACD선은 다음과 같이 정의된다.
주식에서 가장 널리 쓰이는 설정은 , 이다.
이 식의 의미는 단순하다.
- 이면 최근 수준이 장기적인 기준보다 높다.
- 이면 최근 수준이 장기적인 기준보다 낮다.
- 이면 짧은 기억과 긴 기억이 같은 수준을 가리킨다.
그러나 MACD의 진짜 매력은 단순히 두 평균을 뺀다는 데 있지 않다. 무엇을 지우고 무엇을 남기는가에 있다.
상수는 사라지고 변화만 남는다
관측값이 언제나 같은 상수 라고 하자.
시간이 충분히 지나면 짧은 EMA와 긴 EMA는 모두 로 수렴한다.
따라서 MACD는 0이 된다.
이를 가중치의 관점에서도 확인할 수 있다. MACD를 무한 가중합으로 쓰면 다음과 같다.
각 EMA의 가중치 합은 1이므로 MACD 가중치의 합은 0이다.
따라서 모든 관측값에 같은 상수를 더해도 MACD는 변하지 않는다.
MACD는 절대적인 높이를 지우고, 서로 다른 시간척도 사이에서 생긴 변화만 남긴다. 신호처리의 언어로 말하면 두 저역통과 필터의 차이이며, 상수 성분을 제거하고 중간 시간척도의 변화를 강조하는 대역통과 성격의 필터다.
이 관점에서 MACD는 가격 지표가 아니라 기준선 제거 장치다.
선형 추세에서는 기울기를 측정한다
조금 더 흥미로운 경우를 생각해 보자. 관측값이 매 시점마다 일정한 크기 만큼 증가하는 선형 추세라고 하자.
평활계수가 인 EMA는 충분한 시간이 지나면 원래 수열보다 다음만큼 뒤처진다.
을 사용하면 평균 지연은 다음과 같이 단순해진다.
따라서 선형 추세에서 기간 EMA는 대략 다음과 같다.
빠른 EMA와 느린 EMA의 차이를 구하면 상수항과 현재 수준이 사라진다.
표준 MACD의 , 을 넣으면 다음과 같다.
즉 값이 매일 일정하게 만큼 증가하는 이상적인 수열에서 표준 MACD는 장기적으로 약 에 수렴한다.
이 결과는 MACD를 직관적으로 이해하는 핵심이다. MACD는 단순히 값의 높이를 측정하는 것이 아니라, 일정한 추세에서는 시간당 변화율인 기울기에 비례한다.
다만 MACD는 엄밀한 미분이 아니다. 잡음을 줄이기 위해 시간을 평활한 뒤 서로 다른 두 평활값을 비교하는 시간척도가 지정된 기울기 추정기에 가깝다.
시그널선은 변화율의 기준선이다
MACD선 자체도 매 시점 흔들린다. 이를 다시 EMA로 평활한 것이 시그널선이다.
표준 설정에서는 다.
시그널선은 최근 MACD가 평소 어느 수준이었는지를 나타낸다. 다시 말해 변화율의 느린 기준선이다.
- 이면 현재 변화율이 최근의 평균적인 변화율보다 강하다.
- 이면 현재 변화율이 최근의 평균적인 변화율보다 약하다.
MACD선이 시그널선을 통과하는 사건은 어떤 값이 단순히 증가하거나 감소했다는 뜻이 아니다. 최근의 변화 속도가 그동안의 변화 속도보다 빨라졌거나 느려졌다는 뜻이다.
히스토그램은 가속도에 가깝다
MACD 히스토그램은 MACD선에서 시그널선을 뺀 값이다.
MACD가 기울기와 비슷한 역할을 한다면, 히스토그램은 기울기의 변화와 비슷한 역할을 한다.
- 이면 최근 변화율이 자신의 평활된 기준보다 높다.
- 이면 최근 변화율이 자신의 평활된 기준보다 낮다.
- 가 커지면 변화가 가속하고 있다.
- 가 0으로 가까워지면 변화가 둔화하고 있다.
선형 추세 가 오랫동안 일정하게 이어지면 MACD는 상수 에 가까워지고 시그널선도 결국 같은 값에 도달한다. 그러면 히스토그램은 0으로 돌아간다.
흥미로운 점은 값이 계속 증가하더라도 증가 속도가 일정하면 히스토그램이 0에 가까워진다는 것이다. 히스토그램이 반응하는 것은 상승 그 자체가 아니라 상승 속도의 변화다.
그러므로 다음과 같이 기억할 수 있다.
- 원자료 : 현재의 상태
- MACD선 : 상태가 변하는 속도
- 히스토그램 : 그 속도가 변하는 정도
이는 위치, 속도, 가속도의 관계와 닮았지만 완전히 같지는 않다. MACD와 히스토그램은 모두 여러 시점의 값을 평활한 유한한 시간척도의 지표이기 때문이다.
주식 밖에서는 무엇을 넣으면 될까
MACD의 입력에는 가격이 아니라 어떤 시계열도 들어갈 수 있다. 필요한 것은 세 가지뿐이다.
- 일정한 간격으로 관측할 수 있어야 한다.
- 값의 크기가 관심 있는 상태를 어느 정도 반영해야 한다.
- 최근 흐름과 장기 기준의 차이를 해석할 이유가 있어야 한다.
이 조건을 만족한다면 MACD는 일상의 여러 영역에서 사용할 수 있다.
공부량의 MACD
매일 실제로 공부한 시간을 라고 하자.
- 빠른 EMA는 최근 일주일의 공부 리듬을 반영한다.
- 느린 EMA는 최근 한 달의 평소 공부 리듬을 반영한다.
- MACD는 최근 공부량이 평소보다 얼마나 많거나 적은지를 보여준다.
- 히스토그램은 공부 리듬이 회복되는지 무너지는지를 조금 더 일찍 보여준다.
예를 들어 7일 EMA가 1.8시간이고 28일 EMA가 1.3시간이라면 다음과 같다.
최근 공부 리듬이 장기적인 기준보다 하루 평균 0.5시간 높은 상태다.
시그널선이 0.2시간이라면 히스토그램은 다음과 같다.
공부량이 평소보다 많을 뿐 아니라 최근의 개선 속도도 강하다고 해석할 수 있다.
반대로 MACD는 양수인데 히스토그램이 음수라면 공부량은 여전히 평소보다 많지만 그 우위가 줄어들고 있다는 뜻이다. 이때는 의지가 부족하다고 단정하기보다 일정이 과도했는지, 회복이 필요한지 점검할 수 있다.
지출의 MACD
매일의 비필수 지출액을 로 두면 MACD는 소비 속도의 변화를 보여준다.
- 이면 최근 지출 수준이 장기 평균보다 높다.
- 이면 지출 증가세가 더 빨라지고 있다.
- 이지만 이면 지출은 여전히 평소보다 많지만 증가세는 둔화하고 있다.
지출은 요일, 월급날, 공과금 납부일의 영향을 크게 받는다. 따라서 일별 총지출보다 주간 비필수 지출이나 항목별 지출에 적용하는 편이 낫다.
여기서는 값이 커지는 것이 반드시 좋은 일이 아니므로 부호의 의미를 공부량과 반대로 해석해야 한다. 수학은 같지만 좋고 나쁨의 방향은 변수의 의미가 결정한다.
운동과 회복의 MACD
운동시간, 걸음 수, 훈련량처럼 반복적으로 기록되는 값에도 적용할 수 있다.
최근 운동량의 EMA가 장기 EMA보다 높다면 평소보다 활동량이 증가한 상태다. 히스토그램까지 커지고 있다면 운동량이 빠르게 늘고 있다는 뜻이다.
이것을 무조건 긍정적으로 해석하면 안 된다. 운동량이 지나치게 빠르게 증가하면 피로나 부상 위험도 함께 커질 수 있다. 운동 MACD는 성과 판정기가 아니라 변화 속도를 알아차리는 계기판으로 사용하는 편이 좋다.
수면시간, 통증, 심박수처럼 건강과 관련된 수치에 적용할 수도 있지만 의학적 판단을 대신할 수는 없다. 이상이 지속되거나 증상이 있다면 지표가 아니라 전문가의 평가가 우선이다.
프로젝트 처리량의 MACD
하루에 완료한 작업 수, 검토한 문서 수, 해결한 오류 수를 로 둘 수도 있다.
- MACD가 음수로 내려가면 최근 처리량이 장기적인 기준보다 낮아졌다는 뜻이다.
- 히스토그램이 먼저 상승하면 아직 처리량은 평소보다 낮지만 회복 속도가 붙고 있을 가능성이 있다.
- MACD는 양수인데 히스토그램이 감소하면 성과는 여전히 높지만 추진력이 약해지고 있을 수 있다.
다만 작업마다 난도가 다르다면 단순 개수는 좋지 않은 측정값이다. 예상 소요시간이나 난도 점수를 반영한 가중 처리량을 사용하는 편이 낫다.
감정과 에너지의 MACD
매일 저녁 자신의 에너지나 집중도를 1점부터 10점까지 기록한다고 하자. MACD는 오늘 기분이 좋은지를 판단하는 대신 최근 상태가 자신의 장기 기준보다 좋아지고 있는지 나빠지고 있는지를 보여준다.
이 방식의 장점은 타인과 비교하지 않는다는 데 있다. 긴 EMA가 개인의 기준선을 만들기 때문에 “다른 사람보다 어떤가”가 아니라 “평소의 나와 비교해 어떤가”를 묻게 된다.
다만 주관적 점수는 기록 방식에 따라 크게 달라진다. 같은 시간, 같은 질문, 같은 척도로 기록해야 의미가 생긴다. 정신건강의 진단이나 치료 판단에는 사용할 수 없다.
일상에서 직접 설계하는 방법
일상의 수열에 MACD를 적용하려면 먼저 목적을 정해야 한다. 지표를 만든 뒤 의미를 붙이는 것이 아니라, 어떤 변화를 빨리 발견하고 싶은지부터 결정한다.
- 관측값을 하나 정한다. 공부시간, 비필수 지출, 걸음 수, 완료 작업량처럼 반복해서 기록할 수 있는 값을 선택한다.
- 측정 간격을 고정한다. 일별 값과 주별 값을 섞지 않는다.
- 빠른 시간척도를 정한다. 최근 변화라고 부를 수 있는 기간을 선택한다.
- 느린 시간척도를 정한다. 평소 상태라고 부를 수 있는 기간을 선택한다.
- 시그널 기간을 정한다. 변화 속도의 기준을 얼마나 부드럽게 만들지 결정한다.
- 부호의 의미를 먼저 적는다. 값이 커지는 것이 좋은지, 나쁜지, 중립적인지 정한다.
일상 기록에는 주식의 12·26·9를 그대로 사용할 이유가 없다. 관측 대상의 시간척도에 맞춰야 한다.
- 매일 기록하는 공부량이라면 7·28·7처럼 한 주와 한 달을 비교할 수 있다.
- 매주 기록하는 프로젝트 처리량이라면 4·12·4처럼 한 달과 한 분기를 비교할 수 있다.
- 변화가 매우 느린 체중이나 장기 습관에는 더 긴 기간이 필요할 수 있다.
기간을 짧게 잡으면 변화에 빠르게 반응하지만 잡음과 거짓 신호가 많아진다. 길게 잡으면 안정적이지만 변화가 늦게 보인다. 좋은 매개변수는 보편적으로 정해져 있지 않으며, 관찰하려는 현상의 고유한 시간척도에 달려 있다.
숫자의 단위는 그대로 남는다
MACD는 두 EMA의 차이이므로 입력값과 같은 단위를 가진다.
- 가격을 넣으면 MACD의 단위도 원이나 달러다.
- 공부시간을 넣으면 단위도 시간이다.
- 지출액을 넣으면 단위도 원이다.
따라서 규모가 다른 사람이나 대상을 MACD의 절댓값으로 직접 비교하면 곤란하다. 월평균 지출이 30만 원인 사람과 300만 원인 사람의 MACD 5만 원은 같은 의미가 아니다.
규모가 다른 대상을 비교하려면 느린 EMA로 나누어 비율로 만드는 방법을 사용할 수 있다.
주식에서는 이를 PPO(Percentage Price Oscillator)라고 부른다. 일상 데이터에서도 같은 정규화가 가능하다. 다만 분모가 0에 가깝거나 음수가 될 수 있는 변수에는 그대로 사용할 수 없다.
MACD가 알려주지 않는 것
MACD는 원인을 설명하지 않는다. 공부량이 줄었다는 사실은 보여줄 수 있지만 피로, 일정, 동기, 환경 중 무엇이 원인인지는 알려주지 못한다.
MACD는 미래도 보장하지 않는다. 최근 흐름이 바뀌었다는 사실을 요약할 뿐, 그 변화가 계속될지는 알 수 없다.
MACD는 주기적인 패턴에도 속을 수 있다. 주말마다 지출이 늘거나 월요일마다 업무량이 감소한다면 계절성과 요일 효과를 변화로 오해할 수 있다.
결측값과 기록 방식의 변화에도 민감하다. 기록하지 않은 날을 0으로 처리하면 실제 감소와 미기록을 구분할 수 없다.
따라서 MACD를 사용할 때는 다음 질문을 함께 던져야 한다.
- 이 변화는 실제 현상의 변화인가, 측정 방식의 변화인가?
- 반복되는 요일 효과나 계절성은 없는가?
- 값이 변한 원인을 설명할 다른 기록이 있는가?
- 매개변수를 조금 바꾸어도 결론이 유지되는가?
두 개의 기억으로 현재를 바라보는 법
MACD의 수학은 놀랄 만큼 소박하다. 같은 수열을 두 가지 속도로 기억하고, 그 차이를 다시 한 번 평활할 뿐이다.
하지만 이 단순한 구조는 세 가지 시간적 질문을 분리한다.
- 지금의 상태는 어떠한가?
- 최근의 변화 속도는 평소와 어떻게 다른가?
- 그 변화 속도는 다시 빨라지고 있는가, 느려지고 있는가?
주식시장에서 MACD는 가격의 추세와 모멘텀을 읽는 지표다. 그러나 시장 밖으로 꺼내면 더 일반적인 모습이 드러난다.
MACD는 짧은 기억과 긴 기억 사이의 불일치를 측정한다. 그 불일치는 어떤 체계가 평소의 상태에서 벗어나 새로운 방향으로 움직이기 시작했음을 알려준다.
결국 MACD가 묻는 것은 가격이 오를지 내릴지가 아니다.
최근에 일어난 변화가, 우리가 오랫동안 알고 있던 세계보다 얼마나 앞서가고 있는가.
그 질문은 시장뿐 아니라 공부, 습관, 건강, 조직과 삶의 거의 모든 시계열에 적용할 수 있다.
참고 자료
- NIST/SEMATECH, EWMA Control Charts: https://www.itl.nist.gov/div898/handbook/pmc/section3/pmc324.htm
- StockCharts ChartSchool, MACD Moving Average Convergence Divergence Oscillator: https://chartschool.stockcharts.com/table-of-contents/technical-indicators-and-overlays/technical-indicators/macd-moving-average-convergence-divergence-oscillator
이 글에서 MACD를 기울기, 히스토그램을 가속도에 비유한 것은 수학적 구조를 직관적으로 설명하기 위한 것이다. 두 값은 연속시간에서 정의되는 엄밀한 미분값이 아니라 지수평활을 거친 이산시간 지표다.
