볼린저밴드란 가격의 변동 범위를 통계로 정의하기 > 매매 기술 노트
본문 바로가기
코인랩 코인랩 업비트·빗썸 자동매매 리서치 & 기술노트
사이트 내 전체검색

매매 기술 노트

기술적지표 볼린저밴드란 가격의 변동 범위를 통계로 정의하기

게시물 옵션

본문

매매 기술 노트 · 02 · 기술적지표

볼린저밴드란
가격의 변동 범위를 통계로 정의하기

볼린저밴드(Bollinger Bands)는 가격의 변동성을 표준편차로 수치화하고, 그 범위를 대역(band)으로 시각화한 지표다. 가격이 "정상 범위"를 벗어날 때 반등 가능성이나 추세 강화 신호로 해석할 수 있다. RSI를 단독으로 믿었다가 손실을 봤던 경험 이후 이 지표를 추가하면서 매매 방식이 어떻게 바뀌었는지, 그리고 실제 봇에서는 이 지표를 어디에만 쓰고 있는지까지 함께 정리한다.

개발자
존 볼린저
발표연도
1983
표준 설정
기간 20, σ×2
신호
밴드 터치

구성

볼린저밴드는 세 개의 선으로 이루어진다:

중심선(MA) = 종가의 단순이동평균 (보통 20봉) 표준편차(SD) = 해당 기간의 가격 변동폭 상단 밴드 = MA + (SD × 2) 하단 밴드 = MA - (SD × 2)

변동성이 클수록(가격이 요동칠수록) 밴드가 넓어지고, 변동성이 작으면 밴드가 좁아진다. 이를 "스퀴즈"와 "익스팬션"이라고 부른다.

  • 스퀴즈(Squeeze): 밴드가 좁혀진 상태 → 변동성 낮음, 큰 움직임 준비 중
  • 익스팬션(Expansion): 밴드가 벌어진 상태 → 변동성 높음, 강한 추세 진행 중

매매 신호

바운스 매매 (Band Touch)

  • 가격이 하단 밴드에 닿으면 → 반등 가능성 (매수 신호)
  • 가격이 상단 밴드에 닿으면 → 조정 가능성 (매도 신호)

다만 이것도 시장 국면에 따라 달라진다. 강한 상승 추세에서는 가격이 상단 밴드를 따라가며 올라갈 수 있고, 하락 추세에서는 하단 밴드를 따라가며 내려간다.

변동성 신호 (Squeeze Break)

  • 밴드가 매우 좁혀져 있다가(스퀴즈) → 갑자기 벌어지는 순간(익스팬션) → 강한 움직임이 임박했음

내 경험: RSI 하나만 보고 놓쳤던 것

이전 글에서 RSI 30 아래 = 자동 매수 규칙으로만 운영했다가 크게 물렸던 얘기를 했다. 그 사고 이후로 로그를 전부 다시 훑어봤는데, 이상한 패턴이 하나 더 보였다. 특정 코인이 거래대금이 극도로 낮은 새벽 시간대에는 RSI가 5까지 떨어지는 경우가 있었는데, 그 순간 캔들 차트를 열어보면 가격은 거의 일자로 움직이지 않고 있었다. 숫자만 보면 "역대급 과매도"였지만, 실제 시세는 마치 멈춰 있는 것처럼 조용했다.

그때 처음으로 지표가 보여주는 숫자와 실제 시장 상황이 다를 수 있다는 걸 체감했다. RSI는 상승·하락의 비율만 계산하기 때문에, 가격이 아주 좁은 범위 안에서 미세하게 오르내려도 극단값이 나올 수 있다. 그 좁은 범위 자체를 봐야 하는데, RSI 혼자서는 그걸 알려주지 않는다.

볼린저밴드를 화면에 띄워놓으니 이 문제가 눈으로 보였다. 밴드가 극도로 좁혀 있으면 변동성이 사실상 없다는 뜻이고, 그 상태의 RSI 극단값은 믿을 게 못 된다. 반대로 밴드가 벌어져 있는 상태에서 RSI가 극단값을 보이면 실제 추세 변화일 가능성이 높다. 같은 "RSI 5"라는 숫자라도 밴드 폭에 따라 완전히 다른 의미가 된다는 걸 이때 알았다.

그래서 밴드 폭을 매수 조건에 필터로 넣을까 한참 고민했다. 결론부터 말하면 넣지 않았다. 새벽 시간대 이상 신호는 거래대금 필터 하나로 대부분 걸러졌고, 밴드 폭 조건을 얹으면 이미 좁은 진입 문턱이 더 좁아졌다. 대신 볼린저는 나갈 때 쓰기로 했다. 보유 중인 포지션의 익절을 상단 밴드 근처로 잡으면 과매수 구간에서 빠져나올 가능성이 높아지기 때문이다. 이 결정이 지금까지 그대로 유지되고 있고, 그 결과가 아래 숫자다.

기간 설정

볼린저밴드도 기간이 짧을수록 반응이 빠르고, 길수록 신뢰도가 높아진다.

  • 기간 20 (표준): 4시간봉 이상에 적합. 중기 추세 확인용.
  • 기간 10 (단기): 1시간봉 이하에 적합. 빈번한 신호, 노이즈 많음.
  • 기간 50 (장기): 일봉 이상에 적합. 신호 드물지만 신뢰도 높음.
실전 팁 밴드 폭(상단-하단의 거리)을 따로 계산해서 화면에 표시해두면, 지표 숫자를 읽을 때 배경을 같이 볼 수 있다. 평소 대비 밴드 폭이 크게 좁아진 구간은 "숫자는 극단적이지만 시장은 죽어있는" 상태일 가능성이 높다.

실측: 우리 봇은 볼린저로 사지 않는다. 팔기만 한다

코인랩 봇 · 실거래 로그

볼린저밴드를 소개하는 글 대부분은 "하단 터치 매수, 상단 터치 매도"를 한 쌍으로 다룬다. 코인랩 역추세 봇은 그중 절반만 쓴다.

진입 — 미사용매수 판정은 별도의 다섯 가지 조건 조합으로 하고, 밴드 위치는 여기에 관여하지 않는다. 대시보드에도 매수 조건 묶음 바깥의 참고 지표 영역에 따로 놓여 있다.
청산 — 사용상단 밴드 터치를 청산 사유 중 하나로 쓴다. 매달 전체 매도의 10~20%가 이 경로로 나간다.

코드 구조와 화면 구조가 같은 말을 하고 있는 셈이다. 위에서 "밴드 폭 필터를 넣지 않았다"고 쓴 판단이 지금도 그대로 반영돼 있다.

청산 경로로서의 성적

집계 구간전체 매도볼린저 상단 청산비중성과
2026년 7월57건11건19.3%거래당 +0.27%
2026년 8월 누적118건14건11.9%손익 기여 +3.60%p

봇 전체가 손실 구간을 지나는 동안에도 이 청산 경로만 놓고 보면 플러스였다. 다만 건수가 적다. 전체 매도의 10~20% 수준이라 이것만으로 계좌를 끌어올리지는 못했다.

그런데 진짜 문제는 다른 데서 나왔다

백테스트 시뮬레이터가 실거래를 얼마나 정확히 재현하는지 대조해본 적이 있다. 같은 기간 87건을 놓고 시뮬레이터 결과와 실제 체결 결과를 맞춰봤더니 전체 손익에서 6.46%p가 어긋났다. 그 오차가 어디서 왔는지 갈라봤더니 한쪽으로 심하게 쏠려 있었다.

볼린저가 관여한 거래 건수 비중 18% 87건 중 16건 그 거래가 만든 백테스트 오차 비중 78% 전체 오차 6.46%p 중 5.02%p
전체 거래의 18%에 불과한 볼린저 관여 거래가, 시뮬레이터와 실거래 사이 오차의 78%를 만들어냈다.

거래의 18%가 오차의 78%를 만들었다. 볼린저 상단 청산은 "가격이 밴드 위로 올라간 그 순간"에 발생하는데, 그 순간을 시뮬레이터가 실거래와 똑같이 잡아내지 못했다. 캔들 하나 안에서 밴드를 스쳤다가 되돌아오는 움직임을, 봉 단위로 계산하는 시뮬레이터는 보지 못한다. 실거래에서는 그 찰나에 주문이 나갔고, 시뮬레이터에서는 아무 일도 없었던 것으로 처리된 것이다.

그래서 이 지표에 대한 결론은 "좋다 / 나쁘다"가 아니라 이렇게 됐다. 볼린저는 실거래에서는 쓸 만한 청산 신호지만, 백테스트에서 가장 믿기 어려운 항목이다. 지금은 백테스트 수치를 볼 때 볼린저 청산이 섞여 있으면 그 결과를 한 번 더 의심하고 본다. 이 문제는 백테스트와 실전 매매가 다른 이유에서 더 넓게 다뤘다.

읽을 때 주의할 점 · 7월·8월 수치는 실거래 체결 로그 집계다. 시뮬레이션이 아니다.
· 87건 대조는 성과 측정이 아니라 시뮬레이터의 재현 정확도를 측정한 별도 조사다. 이 숫자를 전략 성과로 읽으면 안 된다.
· 밴드 기간·표준편차 배수 등 봇의 실제 설정값은 공개하지 않는다. 본문의 20·2σ는 일반적인 표준 설정이다.
· 표본이 수십 건 단위다. 통계적으로 단정할 수 있는 크기가 아니다.
· 이 봇은 해당 기간을 전체적으로 손실로 마감했다.

요약

볼린저밴드는 변동성을 시각화해주는 지표로, RSI 같은 모멘텀 지표의 신뢰도를 검증할 때 유용하다. 밴드 너비가 신호의 품질을 가르는 잣대가 될 수 있다. 지표 하나의 숫자만 보지 않고, 그 숫자가 나온 배경(변동성)까지 같이 보는 습관이 생긴 게 이 지표를 쓰면서 얻은 가장 큰 변화였다.

다만 실제로 봇에 넣을 때는 교과서와 다른 선택을 했다. 사는 데는 쓰지 않고, 파는 데만 쓴다. 그 청산 경로는 실거래에서 꾸준히 플러스를 냈지만, 동시에 백테스트가 가장 크게 어긋나는 지점이기도 했다. 지표를 어디에 쓸 것인가는 지표의 성능만큼이나 "그 지표를 검증할 수 있는가"에도 달려 있다는 걸 이 과정에서 배웠다.

매매 기술 노트 · 기술적지표
  1. 01 · RSI(상대강도지수)란 무엇인가
  2. 02 · 볼린저밴드란 — 지금 글
  3. 03 · 이동평균선(MA)의 역할과 종류
  4. 04 · MACD 지표 이해하기
  5. 05 · 거래량 지표가 왜 중요한가
출처 John Bollinger, "Bollinger Bands" 공식 해설 — bollingerbands.com

이 글을 쓴 사람

코인랩 운영자

업비트 역추세 반등 실거래 전략은 운용을 종료했습니다. 현재 업비트에서는 V자 회복형·이중바닥형·BB 땅굴회복형의 V2 세 전략을 각각 독립 모의계좌로 검증하고, 빗썸에서는 추세추종(변동성 돌파) 전략을 실제 자금으로 운용합니다. 과거 게시글의 역추세 반등 기록은 당시 실거래 결과와 전략 전환 과정을 보존한 자료입니다.

  • 근거 데이터 과거 업비트 역추세 실거래 로그·현재 V2 모의매매 기록·빗썸 추세추종 실거래 로그 및 공개 시세 API
  • 집필·검수 코인랩 운영자 (AI 도구는 문장 교정에만 사용)
  • 문의 coinlabkr@gmail.com

이 글은 정보 제공 목적이며 투자 권유가 아닙니다. 투자 유의사항 및 면책조항을 함께 읽어 주세요.

추천0 비추천0
스크랩 · 신고
매매 기술 노트 • OFFICIAL

매매 기술 노트

RSI·볼린저밴드·이동평균선·MACD·거래량 지표 정리와 적용 경험
24TOTAL
24POSTS

매매 기술 노트

24건
매매 기술 노트 목록
번호 제목 글쓴이 날짜 조회
24
<
코인랩
10-18 61
23
<
코인랩
10-11 90
22
<
코인랩
09-10 226
21
<
코인랩
08-08 1592
20
<
코인랩
09-01 240
19
<
코인랩
08-27 313
18
<
코인랩
08-22 443
17
<
코인랩
08-19 346
16
<
코인랩
08-18 575
15
<
코인랩
08-17 378
14
<
코인랩
08-14 404
13
<
코인랩
08-13 451
12
<
코인랩
08-10 383
11
<
코인랩
08-09 363
10
<
코인랩
08-09 391
운영자

업비트 V2 세 전략은 독립 모의계좌로 검증하고, 빗썸 추세 추종 봇은 실제 자금으로 운용하는 개인 개발자입니다. 모의매매와 실거래 성과를 구분하고 손실도 그대로 공개합니다.

종목 추천 · 유료 리딩 · 봇 판매는 하지 않습니다.