이번 편은 시세를 받아 성과를 검증한 글이 아니라 규칙 자체를 해부한 글이다. 승률도 수익률도, 신호가 몇 번 났는지도 적지 않는다. 도지코인 가격을 단 한 번도 조회하지 않았으니 애초에 적을 수가 없다. 대신 규칙이 정의로 갖는 숫자, 즉 트레이딩뷰가 박아둔 파라미터 기본값만 다룬다. 본문에 실린 차트는 전부 손으로 만든 값을 넣어 그린 것이라 실제 도지코인 캔들이 아니다.
트레이딩뷰 전략 목록에서 볼린저 밴드 전략 근처에 켈트너 채널 전략이 있다. 이름만 보면 헷갈리기 쉽다. 둘 다 중심선 하나에 위아래로 밴드를 두는 3선 구조이기 때문이다. 차이는 밴드 폭을 무엇으로 재느냐에 있다. 볼린저는 표준편차를 쓰고 켈트너는 ATR(평균 실제 범위)을 쓴다. 이 시리즈에서 이미 다룬 이더리움 편(C2, 볼린저 밴드 전략)과 뼈대가 닮았으면서도 밴드를 계산하는 재료가 다르다는 점이 이번 편의 출발점이다. 무대는 도지코인이다. 특정 자산의 매수·매도를 권하는 글이 아니라는 점을 미리 밝혀둔다.
규칙: 지수이동평균에 ATR을 더하고 뺀다
켈트너 채널의 중심선(기준선)은 종가의 지수이동평균(EMA)이다. 여기에 ATR을 정해진 배수만큼 더한 값이 상단, 뺀 값이 하단이 된다.
기준선 = EMA(종가, length)
ATR = 와일더 평활한 True Range의 이동평균(atrLength)
상단 = 기준선 + multiplier × ATR
하단 = 기준선 − multiplier × ATR
트레이딩뷰가 박아둔 기본값은 length 20, multiplier 2.0, ATR 계산 기간 10이다. 기준선을 단순이동평균(SMA)이 아니라 지수이동평균으로 쓰는 이유는 최근 봉에 가중치를 더 줘서 반응을 조금이라도 빠르게 하려는 설계다. 볼린저 밴드가 표준편차로 밴드 폭을 정하는 것과 달리 켈트너는 ATR을 쓰는데, 이 차이가 생각보다 크다. 표준편차는 종가가 평균에서 얼마나 흩어져 있는지를 재는 값이라 방향이 오락가락하며 좁은 범위에서 등락해도 흩어짐 자체는 클 수 있다. ATR은 봉 하나하나의 실제 변동폭(고가·저가·직전 종가를 다 고려한 True Range)을 평활한 값이라, 갭이 크게 뜨거나 봉의 몸통이 두꺼워지는 순간을 더 직접적으로 반영한다. 켈트너 채널의 밴드는 그래서 “가격이 평균에서 얼마나 퍼졌는가"가 아니라 “봉 하나가 최근 평소보다 얼마나 크게 움직이는가"에 맞춰 넓어지고 좁아진다.
밴드 폭을 정하는 방식에도 손잡이가 하나 더 있다. 트레이딩뷰 설정에는 밴드 스타일을 고르는 항목이 있는데, 고가-저가 범위·True Range·평균 실제 범위(ATR) 중 하나를 고를 수 있고 기본값은 ATR이다. 이 기본값을 쓸 때만 ATR 계산 기간(기본 10)이 의미를 가진다. 고가-저가 범위를 고르면 그날 봉의 고가와 저가 차이를 그대로 쓰고 평활을 전혀 거치지 않으니, 봉 하나의 꼬리가 길면 밴드가 그 봉에서 바로 요동친다. 기본값인 ATR은 와일더 평활을 거치기 때문에 그보다 완만하게 움직인다.

그림 1은 이 구조를 보여준다. 가운데 실선이 기준선이고 위아래 점선이 상단·하단 밴드다. 변동성이 커지는 구간에서는 ATR이 커지면서 채널이 넓게 벌어지고, 잠잠해지면 다시 좁아진다. 볼린저 밴드도 비슷하게 폭이 늘었다 줄었다 하지만, 재료가 표준편차와 ATR로 다른 만큼 같은 가격 경로를 넣어도 두 채널의 폭이 항상 같은 타이밍에 벌어지지는 않는다.
조건문으로 옮기면: 청산이 아니라 반전이다
트레이딩뷰 내장 켈트너 채널 전략의 진입 규칙은 두 줄이다.
if 종가가 상단 밴드를 상향 돌파:
포지션이 숏이면 청산
롱 진입
if 종가가 하단 밴드를 하향 돌파:
포지션이 롱이면 청산
숏 진입
여기서 눈에 띄는 게 있다. “청산"이라는 동작이 독립적으로 존재하지 않는다. 반대 방향 신호가 뜰 때만 기존 포지션이 정리되고 곧바로 반대 포지션이 잡힌다. 손절도 목표가도 시간 청산도 없다. 상단을 뚫어 롱을 잡으면 하단을 뚫을 때까지 계속 들고 간다는 뜻이고, 그사이 가격이 기준선 밑으로 다시 내려와도 규칙은 아무 말도 하지 않는다. 이 성질은 이 시리즈에서 이미 다룬 채널 브레이크아웃 전략(리플 편)이나 볼린저 밴드 전략(이더리움 편)과 같은 갈래다. “밴드를 뚫으면 반대 방향으로 간다"는 구조는 항상 시장에 발을 걸치고 있다는 뜻이 되고, 청산이 없다는 건 정확히는 반대 신호가 청산을 겸한다는 뜻이다.

그림 2가 이 흐름이다. 종가가 상단 밴드를 뚫는 자리에서 롱을 잡고, 한참 뒤 종가가 하단 밴드를 뚫는 자리에서 숏으로 돌아선다. 그 사이 구간에서 가격이 기준선 근처까지 눌려도 포지션은 그대로 유지된다. 파라미터가 없는 규칙이라면 과최적화 걱정에서 자유롭다는 말을 이 시리즈에서 여러 번 썼는데, 켈트너 채널 전략은 그런 경우가 아니다. length·multiplier·ATR 계산 기간까지 최소 세 개의 손잡이가 있고, 이 손잡이를 어떻게 돌리느냐에 따라 반전이 나는 자리와 빈도가 완전히 달라진다. 기본값을 그대로 쓴다고 과최적화에서 벗어나는 게 아니라, 트레이딩뷰가 대신 골라준 세 손잡이 값을 그대로 받아들이는 것뿐이다.
multiplier가 만드는 차이
세 손잡이 중 결과에 가장 직접적으로 영향을 주는 건 multiplier다. 기준선에서 ATR을 몇 배 떨어뜨려 밴드를 그을지 정하는 값이라, 이 배수가 작을수록 밴드가 기준선에 바짝 붙고 클수록 멀어진다.

그림 3은 같은 가격 경로에 multiplier를 1, 2(기본값), 3으로 바꿔가며 겹쳐 그린 것이다. multiplier가 1이면 밴드가 좁아서 가격이 잔물결처럼 움직이기만 해도 상단·하단을 들락거리며 반전 신호가 잦아진다. 3이면 밴드가 넓어서 웬만한 되돌림은 채널 안에 흡수되고, 진짜 방향이 뚜렷하게 꺾일 때만 반전이 난다. 이건 어느 쪽이 맞는 값이라는 문제가 아니라 트레이드오프다. 좁은 채널은 반응이 빠른 대신 소음에 잦게 걸리고, 넓은 채널은 소음을 걸러내는 대신 반전이 늦게 나서 이미 상당 부분 되돌린 뒤에야 방향을 바꾼다. 트레이딩뷰가 2.0을 기본값으로 골라둔 근거가 공식 문서에 상세히 나와 있진 않지만, 계산식만 보면 “너무 잦지도 너무 드물지도 않은 절충점"에 놓인 값이라는 정도는 확인할 수 있다. length나 ATR 계산 기간을 늘리는 것도 결이 비슷하다. 어느 손잡이를 돌리든 결국 “최근 며칠을 얼마나 길게 볼 것인가"라는 같은 질문으로 되돌아간다.
이 규칙이 못 보는 것
밴드가 ATR로 움직인다는 건 변동성에 맞춰 채널이 자동으로 늘었다 줄었다 한다는 뜻이라 언뜻 똑똑해 보인다. 그런데 ATR은 과거 봉들을 평활한 값이라 지금 막 시작된 변동성 확대를 실시간으로 못 따라간다. 갑자기 큰 봉 하나가 나와도 ATR은 그 봉을 반영해 서서히 커질 뿐이고, 그 큰 봉이 만든 돌파 신호 자체는 아직 좁았던 채널을 기준으로 판정된다. 즉 채널이 진짜로 넓어지는 시점은 변동성이 커지고 난 다음이고, 신호는 그 변동성이 커지기 직전의 좁은 채널에서 이미 나버린다. 반응이 한 박자 늦다는 뜻이다.
더 근본적인 문제도 있다. 이 규칙은 왜 종가가 밴드를 뚫었는지 전혀 모른다. 매수세가 꾸준히 쌓여서 뚫은 것인지, 호재 하나에 한 봉이 통째로 튀어서 뚫은 것인지 계산식 안에는 구별할 방법이 없다. 거래량이 실렸는지, 다른 시간대에서도 같은 방향인지, 뒤이은 봉이 돌파를 확인해주는지는 아예 조건에 들어있지 않다. 이걸 걸러내려면 별도의 필터를 얹어야 하는데, 그 순간 이 전략은 더 이상 “두 줄짜리 반전 규칙"이 아니게 된다.
코인 시장에서 걸리는 함정
이 전략을 코인에 그대로 옮기면 주식에는 없던 함정이 생긴다. 가장 먼저 걸리는 게 일봉 경계 문제다. 주식시장은 개장·폐장 시각이 정해져 있어 하루의 경계가 시장 규칙으로 주어지지만, 코인은 쉬는 시간이 없어서 그 경계를 거래소가 임의로 정한다. 국내 거래소는 한국 시간 자정에 봉을 끊고, 해외 거래소 여럿은 세계 표준시 자정에 끊는다. 두 기준 사이 시차는 아홉 시간이다.

그림 4는 이 상황을 보여준다. 똑같은 시간대의 가격 흐름을 자정 기준만 다르게 잡아 일봉으로 묶었는데, 같은 구간이 한쪽에서는 양봉으로, 다른 쪽에서는 음봉으로 잡힌다. 켈트너 채널은 종가로 기준선(EMA)을 계산하고 고가·저가·직전 종가로 ATR을 계산하니, 봉 하나의 종가 위치가 달라지면 기준선과 채널 폭이 함께 밀린다. 반전 신호가 나는 정확한 시점, 심지어 신호가 나느냐 안 나느냐까지 거래소의 일봉 마감 시각 설정 하나에 좌우될 수 있다는 뜻이다. 봇을 돌리는 거래소를 바꾸는 것만으로 채널의 모양이 통째로 달라질 수 있다.
둘째, 하단 돌파에서 나오는 숏 신호를 그대로 못 쓴다. 하단 밴드를 뚫으면 숏으로 진입하라는 규칙인데, 현물만 지원하는 봇에서는 공매도 자체가 불가능하다. 그러면 하단 돌파 신호가 뜰 때 할 수 있는 건 기존 롱 포지션을 정리하는 것까지고, 그 자리에서 새로 숏을 잡는 건 선물 계좌로 넘어가지 않는 한 못 한다. 규칙을 현물 봇에 옮긴다면 처음부터 “하단 돌파 = 청산만"이라고 절반을 잘라내고 시작해야 한다.
셋째는 24시간 시장이라는 성질 자체다. 주식은 장이 닫혀 있는 동안 쌓인 뉴스가 다음 날 시가 갭으로 한 번에 반영된다. 코인은 장이 안 닫히니 그런 갭이 거의 없는 대신, 뉴스가 나오는 그 순간 봉 안에서 바로 가격이 튄다. ATR은 그 튐을 평소보다 큰 True Range로 인식하고 채널을 넓히지만, 앞서 짚었듯 이 반영은 한 박자 늦다. 뉴스가 봉 하나를 통째로 흔들어놓는 시장에서, 뒤늦게 넓어지는 채널은 그 뉴스가 진짜 추세의 시작인지 아니면 그 자리에서 끝날 소음인지 구별해주지 못한다.
도지코인이라는 무대
도지코인을 이번 편의 무대로 고른 건 성과를 보여주기 좋아서가 아니라, 뉴스 한 방에 방향이 뒤집히는 성격이 이 전략의 약점과 정확히 맞물리는 코인이라서다. 도지코인은 2013년 시바견 밈을 소재로 만들어진 패러디성 코인으로 출발했고, 라이트코인 계열의 작업증명(PoW) 방식을 쓴다. 비트코인처럼 발행량 상한이 정해져 있지 않다는 점도 성격이 다르다. 블록마다 1만 도지가 고정 보상으로 채굴되는 구조라 최대 발행량이라는 개념 자체가 없다. “디지털 금” 서사로 희소성을 앞세우는 비트코인과는 출발선이 다른 자산이다.
무엇보다 유명인의 발언 한 줄에 가격 방향이 급격히 흔들린 사례가 여러 차례 있었다는 건 널리 알려진 사실이다. 이런 종류의 급등락은 펀더멘털이나 기술적 흐름과 무관하게 일어난다. 켈트너 채널 전략처럼 “최근 며칠의 종가·고가·저가"만 보고 판단하는 규칙 입장에서, 이런 소식발 급변동은 앞서 설명한 반응 지연 문제를 그대로 만난다. 채널이 아직 좁은 상태에서 소식 하나로 봉이 크게 튀면 상단이든 하단이든 일단 뚫리고 반전 신호가 뜨는데, 그 신호가 추세의 시작인지 그 봉에서 끝날 반짝 반응인지는 채널 폭이 뒤늦게 넓어지고 나서야, 그것도 간접적으로만 드러난다. 밈코인 특유의 변동성과 ATR 기반 채널의 지연이라는 두 성질이 서로를 최악의 조합으로 만드는 지점이 여기다.
결론: 내 봇 게이트에 넣을 것인가
넣지 않는 쪽으로 정리한다. 이유를 그대로 남긴다.
첫째, 청산이 독립적으로 없고 반대 신호가 청산을 겸하는 “항상 포지션 보유” 구조가 내 봇의 설계와 안 맞는다. 내 봇은 얼마에 사고 얼마에 파느냐를 서로 다른 코드 블록으로 짜두는데, 이 전략은 그 두 판단을 조건 하나로 합쳐버린다. 반대 신호가 뜨기 전까지 무조건 버티는 구조를 게이트 하나로 편입시키려면 별도의 손절 레이어를 처음부터 새로 설계해야 하고, 그러면 이미 원래 전략이 아니게 된다.
둘째, ATR 기반 채널의 반응 지연이 밈코인의 소식발 급변동과 만나면 가장 나쁜 조합이 된다. 변동성이 실제로 커진 다음에야 채널이 넓어지니, 소식 하나로 튄 봉을 놓고 “이게 진짜 추세인가"를 판단할 때 이 전략은 가장 늦게 답한다.
셋째, 숏 신호의 절반을 실행할 수 없는 현물 환경에서는 규칙의 절반만 살아남는다. 롱 쪽만 쓰겠다고 정하면 그건 더 이상 켈트너 채널 전략이 아니라 “상단 돌파 매수, 하단 돌파 청산"이라는 다른 규칙이 된다.
그래도 폐기하지는 않고 메모 한 줄은 남긴다. 밴드 폭을 표준편차가 아니라 ATR로 재는 발상 자체는 쓸모가 있다. 이 시리즈에서 다룬 샹들리에 청산처럼, ATR을 손절폭이 아니라 진입 판단의 재료로 쓰는 접근은 종목마다 다른 평소 변동폭을 자동으로 맞춰준다는 점에서 여전히 매력적이다. 진입 신호는 다른 규칙에서 가져오고 청산선만 ATR 배수로 갈아 끼우는 조합은 다음에 다른 전략을 다룰 때 다시 꺼내볼 만한 메모로 남겨둔다.
다시 한번 밝힌다. 이 글에 실린 계산식과 그림은 규칙의 구조를 보여주려고 만든 것일 뿐 매수·매도를 권하는 신호가 아니다.
약어 풀이
- EMA (Exponential Moving Average) — 지수이동평균. 최근 값에 더 큰 가중치를 주는 이동평균으로, 켈트너 채널의 기준선을 만드는 데 쓰인다.
- SMA (Simple Moving Average) — 단순이동평균. 최근 n개 값을 동일한 가중치로 평균 낸 값으로, 볼린저 밴드의 기준선에 쓰인다.
- ATR (Average True Range) — 평균 실제 범위. 고가·저가·직전 종가를 함께 고려한 봉의 실제 변동폭을 와일더 방식으로 평활한 값으로, 켈트너 채널의 밴드 폭을 정한다.
- PoW (Proof of Work) — 작업증명. 연산량을 소모해 블록을 검증하는 합의 방식으로, 도지코인과 그 원형인 라이트코인이 쓴다.
- KST (Korea Standard Time) — 한국 표준시. 국내 거래소가 일봉을 끊는 기준 시각으로 삼는다.
- UTC (Coordinated Universal Time) — 협정 세계시. 해외 거래소 다수가 일봉을 끊는 기준 시각으로 삼는다.