켈트너 채널은 이동평균선 하나에 변동성 폭을 씌운 밴드다. 볼린저 밴드가 종가의 표준편차로 폭을 정하는 것과 달리, 켈트너는 고가·저가·전일종가를 함께 보는 ATR(Average True Range)로 폭을 정한다. 그래서 하루 만에 범위가 크게 벌어진 날에는 폭도 그날 바로 넓어진다. 분산이 쌓이길 기다리는 볼린저보다 반응이 빠르다는 뜻이다.

이 성질을 시험하려면 변동성 레짐이 한 구간 안에 여러 번 바뀌는 종목이 좋다. 카카오는 이번 50거래일 동안 상승 랠리, 거래량이 평소의 5배 넘게 튄 단일 급락일, 그리고 그 뒤로 이어진 완만한 하락을 모두 지나왔다. 밴드가 추세 초입에서 반응하는지, 충격일에 즉시 벌어지는지, 완만한 하락에서는 어떻게 무너지는지를 한 편에서 같이 볼 수 있는 구간이다.

이 글의 데이터 범위
종목      카카오 (035720)
구간      2026-07-14 ~ 2026-09-23 (50거래일)
출처      stockanalysis.com 일봉
--------------------------------------------------
최고가    41,450원 (08-12)
최저가    33,000원 (09-21)
시작 종가  33,850원 (07-14)
종료 종가  33,450원 (09-23)
--------------------------------------------------
최고 대비 최저 낙폭  -20.39%
구간 전체 등락      -1.18%

이 글은 투자 권유가 아니다. 계산과 해석은 참고용이고 매매 판단의 책임은 각자에게 있다.

카카오 일봉 개요

계산식과 이 구간에 고른 파라미터

켈트너 채널은 중심선 하나와 상하단 두 개, 총 세 개의 선으로 이뤄진다. 중심선은 지수이동평균(EMA)이고, 상하단은 그 중심선에 ATR을 곱한 값을 더하고 뺀 것이다.

켈트너 채널 계산식
중심선   EMA(종가, N), N=20
EMA 재귀식 EMA_t = α×종가_t + (1-α)×EMA_(t-1),  α = 2/(N+1)
--------------------------------------------------
TR       max(고가-저가, |고가-전일종가|, |저가-전일종가|)
ATR(10)  Wilder 평활, ATR_t = (ATR_(t-1)×9 + TR_t) / 10
--------------------------------------------------
상단     중심선 + 2 × ATR(10)
하단     중심선 - 2 × ATR(10)

N=20은 코스피 한 달 거래일 수와 거의 같아서 가장 흔히 쓰이는 기본값이고, TradingView를 포함한 대부분의 차트 도구가 이 값을 기본으로 깔아 둔다. ATR 기간은 10, 승수는 2.0으로 잡았는데 이 역시 관행적인 기본값이다. 처음 보는 종목에 임의의 숫자를 끼워 맞추는 것보다, 널리 쓰이는 기본값이 이 종목에서 실제로 어떻게 작동하는지 먼저 확인하는 쪽이 순서에 맞다고 봤다.

여기서 예열 구간을 밝혀야 한다. EMA(20)이 자리 잡으려면 최소 20개 종가가, ATR(10)이 Wilder 평활로 안정되려면 최소 10개 TR이 필요하다. 50거래일 중 처음 19거래일(07-14~08-10)은 두 지표 모두 값이 불안정해 신호 판단에서 제외했다. 실제로 신호를 볼 수 있는 구간은 08-11부터 09-23까지 31거래일뿐이다. 표본이 넉넉하다고 말하기는 어렵다.

데이터 수집에도 한계가 있었다. stockanalysis.com의 일봉 테이블은 페이지 넘김이 자바스크립트로 처리돼 있어, 요청 주소의 파라미터를 바꿔가며 다시 받아도 항상 같은 50행(3페이지 중 1페이지)만 돌아왔다. 60거래일 이상을 확보하려던 목표에는 못 미쳤고, 없는 열흘어치를 지어내는 대신 실제로 받은 50거래일만 썼다. 대신 서로 다른 세 번의 요청에서 겹치는 날짜의 시가·고가·저가·종가·거래량이 전부 일치하는지는 확인했다. 세 응답이 한 글자도 다르지 않았으니 적어도 이 50거래일 안에서는 소스가 흔들리지 않았다고 볼 수 있다.

원래 체스터 켈트너가 1960년에 제안한 원형은 지금과 달랐다. 중심선을 10일 단순이동평균(SMA)으로 잡고 폭도 고가·저가 범위의 단순평균으로 정했다. 지금 널리 쓰이는 EMA 중심선과 ATR 기반 폭은 1980년대에 린다 라쉬키가 다시 정리한 버전이다. 지수이동평균은 최근 종가에 더 큰 가중치를 주기 때문에 단순이동평균보다 방향 전환에 조금 더 빨리 반응한다. 이 글에서는 지금 실무에서 기본값으로 굳어진 라쉬키 버전을 썼다.

켈트너 채널 신호 구간

31개 유효 봉 중에서 종가가 상단 밴드를 넘은 날은 08-11 단 하루였다. 종가 40,700원이 상단 밴드 40,547원을 152원, 비율로는 0.38% 넘었다. 크게 뚫은 것도 아니었다.

08-11 상단 돌파 이후 흐름
돌파일 종가   40,700원
--------------------------------------------------
+1거래일  08-12  39,550원   -2.83%
+3거래일  08-14  40,000원   -1.72%
+5거래일  08-19  37,400원   -8.11%

돌파 다음 날부터 밀렸고 닷새째는 -8.11%까지 내줬다. 상단 돌파를 추세 지속의 매수 신호로 읽었다면 이번 구간에서는 손실로 끝났을 신호다. 맞은 신호를 찾으려 했는데 표본에 있는 유일한 종가 기준 돌파가 하필 이거였다.

반대쪽도 봐야 공평하다. 08-21 이후 카카오 종가는 09-23까지 24거래일 내내 중심선 아래에 머물렀다. 이 구간에 고점 대비 저점 낙폭 대부분이 몰려 있는데도, 같은 기간 하단 밴드를 종가로 뚫은 날은 하나도 없었다. 가장 가깝게 다가간 날은 09-21로, 종가 33,200원이 하단 밴드 32,845원에서 355원(1.08%) 떨어진 지점까지 내려왔지만 끝내 넘지 않았다. 실제로 진행 중이던 20%대 하락 추세를 종가 기준 돌파 규칙은 단 한 번도 잡아내지 못했다. 상단은 헛돌았고 하단은 아예 울리지 않았다.

파라미터를 바꾸면 이야기가 달라진다. 승수를 2.0에서 1.5로 낮추면 08-11 돌파에 08-13(종가 40,100원, 밴드 40,090원)이 확인 신호로 하나 더 붙고, 09-16·09-17·09-21 세 거래일이 새로 하단 이탈로 잡힌다. 반대로 중심선과 ATR 기간을 모두 10으로 좁히면(승수는 2.0 유지) 이번 구간에서 신호가 하나도 나오지 않는다. 기준선이 가격을 더 바짝 따라가면서 밴드 자체가 좀처럼 뚫리지 않는 형태가 되기 때문이다. 같은 31개 봉을 놓고 “신호 0개”, “신호 1개(오답)”, “신호 4개(승수 1.5)“가 모두 나온다는 뜻이라, 이 지표는 파라미터를 밝히지 않은 채 결과만 말하면 의미가 없다.

밴드 폭 변화

밴드 폭, 즉 (상단-하단)/중심선을 보면 08-21 하루 만에 19.79%에서 23.39%로 튀었다. 이날 거래량은 10,109,356주로 이 구간 최대치였고 종가는 전일 대비 -7.49%였다. ATR 기반 밴드는 분산이 쌓이길 기다리지 않고 그날의 넓은 변동폭을 바로 반영한다는 점이 여기서 드러난다. 이후 폭은 완만하게 줄어 09-21에 12.34%로 이 구간 최소치를 찍었다. 하락이 이어지는 와중에 변동성은 오히려 잦아들었다. 흔히 말하는 “스퀴즈 후 돌파” 그림과는 다르다. 스퀴즈가 새 추세를 예고한 게 아니라 이미 진행 중이던 하락에 뒤따라온 수축이었다.

민감도 비교

승수 1.5에서 추가로 잡힌 하단 이탈 세 건을 구체적으로 보면 09-16 종가 33,500원(밴드 33,714원), 09-17 종가 33,500원(밴드 33,620원), 09-21 종가 33,200원(밴드 33,384원)이다. 모두 밴드를 200원 안팎, 1% 미만으로 살짝 밑돈 정도라 승수 2.0에서는 잡히지 않았을 뿐 추세 자체가 없었던 건 아니다. 반대로 EMA와 ATR 기간을 모두 10으로 좁히면 중심선이 종가를 거의 따라붙어서 밴드 자체가 넓게 벌어지지 않고, 이번 31봉에서는 상단도 하단도 한 번도 뚫리지 않았다.

이 조합을 봇 게이트에 넣을지 판단해보면, 기본값(EMA(20)·ATR(10)·승수 2.0)의 종가 돌파 규칙은 이번 카카오 구간에서 넣기 어렵다는 쪽으로 기운다. 유효 31봉 중 신호는 하나뿐이었고 그 하나도 닷새 만에 -8.11%로 빗나갔다. 정작 실제로 벌어진 20%대 하락은 하단 돌파로 한 번도 확인되지 않았다. 승수를 낮추면 신호가 늘어나지만 그만큼 오탐 가능성도 같이 늘어날 텐데, 31봉짜리 표본으로는 그 둘을 가르기 어렵다. 지금 쓸 만한 부분은 오히려 밴드 폭 쪽이다. 충격일에 바로 반응한다는 특성은 진입 신호보다 손절 폭이나 포지션 크기를 정하는 변동성 잣대로 쓰는 편이 이 구간 데이터와는 더 잘 맞는다. 예를 들어 08-21 직후처럼 밴드 폭이 하루 만에 19.79%에서 23.39%로 뛴 날에는 같은 원화 기준 손절 폭도 그만큼 넓어져야 한다. 진입 여부를 판단하는 용도보다 손절 거리를 다시 계산하라는 경고로 삼는 쪽이 이번 데이터와는 더 맞아떨어진다.

이번 구간에서 남는 건 두 가지다. 신호가 났을 때보다 신호가 안 났을 때를 어떻게 읽을지가 더 까다로웠다는 점, 그리고 승수 하나 바꾸는 것만으로 신호 개수가 0개에서 4개까지 오갔다는 점이다. 밴드 폭을 진입 신호보다 리스크 관리 쪽으로 돌려 쓰는 게 이번엔 더 그럴듯해 보였는데, 이것도 31봉짜리 표본 위에서 내린 잠정 결론이다. 승수를 낮춘 조합이 더 긴 구간에서도 오탐 없이 버티는지는 다음에 다른 종목으로 다시 확인해봐야 할 숙제로 남긴다.

이 글은 투자 조언이나 매매 추천이 아니며, 언급된 수치는 모두 수집한 일봉 데이터를 직접 계산한 결과다.

약어 풀이

  • 이 글에 나온 영어 약어를 풀어 둔다.
  • EMA (Exponential Moving Average): 최근 종가에 더 큰 가중치를 주는 지수이동평균.
  • SMA (Simple Moving Average): 일정 기간 종가를 동일 가중치로 평균한 단순이동평균. 체스터 켈트너의 원형이 쓴 방식이다.
  • ATR (Average True Range): 고가·저가·전일종가를 함께 반영한 평균 변동폭.
  • TR (True Range): ATR을 구성하는 하루치 변동폭 원값.