1. 밴드가 좁아졌다는 사실만으로 방향을 알 수 있을까
볼린저 밴드가 좁아지면 큰 움직임이 가까워졌다고 말합니다. 실제 차트에서도 조용히 횡보하던 주가가 밴드 밖으로 튀어나가는 장면을 자주 볼 수 있어요. 문제는 밴드의 모양만으로 가격의 위치와 변동성의 크기를 동시에 읽으려 하면 판단이 모호해진다는 점입니다.
볼린저 밴드 기본 구조와 스퀴즈가 상단·중심·하단 밴드를 차트에 그리는 방법이라면, %B(Percent B)와 Bandwidth는 그 그림을 두 개의 숫자로 분리합니다.
%B: 종가가 하단과 상단 사이 어디에 있는가Bandwidth: 상단과 하단 사이의 폭이 중심선에 비해 얼마나 넓은가
엘리베이터에 비유하면 %B는 몇 층에 있는지를, Bandwidth는 건물의 전체 높이가 얼마나 되는지를 알려줍니다. 높은 층에 있다는 사실과 건물이 넓게 벌어졌다는 사실은 서로 다른 정보예요.
이번 글에서는 삼성전자(A005930) 일봉으로 %B가 1을 넘으면 바로 매도해야 하는지, Bandwidth 압축 뒤 상단 돌파가 같은 결과를 만드는지를 나눠 확인합니다.
2. 수리적 원리와 계산 구조
계산은 종가, 20일 단순이동평균과 같은 20개 종가의 모집단 표준편차를 사용합니다. 존 볼린저가 설명한 기본값인 20기간·2표준편차를 적용했습니다.
Step 1. 중심선과 상·하단 밴드 구하기
20일 단순이동평균을 중심선 MB, 모집단 표준편차를 σ라고 하면 상단과 하단은 다음과 같습니다.
최근 종가의 흩어짐이 커지면 표준편차가 커져 밴드가 벌어지고, 움직임이 잦아들면 밴드가 좁아집니다.
Step 2. %B로 밴드 안의 가격 위치 표시하기
종가가 밴드 전체 폭에서 어느 위치에 있는지를 비율로 바꾸면 %B가 됩니다.
| %B 값 | 가격 위치 | 주의할 해석 |
|---|---|---|
| 1 초과 | 종가가 상단 밴드 위 | 강한 상승 추세일 수도 있어 자동 매도 신호가 아님 |
| 1 | 상단 밴드와 같은 위치 | 상대적으로 높은 가격 영역 |
| 0.5 | 중심선과 같은 위치 | 20일 평균 부근 |
| 0 | 하단 밴드와 같은 위치 | 상대적으로 낮은 가격 영역 |
| 0 미만 | 종가가 하단 밴드 아래 | 하락 지속일 수도 있어 자동 매수 신호가 아님 |
%B는 0과 1 사이에만 머무는 오실레이터가 아닙니다. 종가가 밴드 밖에서 마감하면 1을 넘거나 0보다 작아질 수 있습니다.
20일·2표준편차 조건에서는 Z-스코어와 %B = 0.5 + Z ÷ 4 관계가 성립합니다. Z=2라면 %B=1이고, Z=-2라면 %B=0입니다. 둘은 같은 가격 위치를 다른 눈금으로 표현하지만 %B는 상·하단 밴드 사이의 상대 위치를 바로 읽기 쉽다는 장점이 있습니다.
Step 3. Bandwidth로 밴드 폭 정규화하기
상단과 하단의 원화 차이를 중심선으로 나누면 가격대가 달라도 밴드 폭을 퍼센트로 비교할 수 있습니다.
기본 설정에서는 상단과 하단의 차이가 표준편차의 4배이므로 Bandwidth는 종가의 변동계수에 4를 곱한 값과 같습니다. 값이 낮으면 최근 20일 종가가 평균 주변에 모였고, 높으면 흩어짐이 커졌다는 뜻입니다.
Bandwidth 5% 이하면 압축처럼 모든 시기에 같은 숫자를 쓰기보다 종목 자신의 과거 분포와 비교하는 편이 낫습니다. 이번 분석에서는 당일을 제외한 과거 252거래일 Bandwidth의 하위 10%를 압축 기준으로 사용했습니다.
3. 실전 활용법: 위치와 폭을 따로 읽기
%B와 Bandwidth를 함께 보면 어디에 있는가와 얼마나 움직이는가를 섞지 않을 수 있습니다.
| %B 상태 | Bandwidth 상태 | 해석 | 추가 확인 |
|---|---|---|---|
| 0~1 | 낮고 횡보 | 밴드 안에서 변동성 압축 | 방향이 정해질 때까지 관찰 |
| 1 초과 | 낮은 수준에서 확대 | 상단 돌파와 변동성 확장 | 거래량·이전 고점·중심선 기울기 |
| 1 부근 반복 | 높은 수준 유지 | 상단 밴드 워킹 가능성 | 상단 접촉만으로 매도하지 않음 |
| 0 미만 | 폭이 빠르게 확대 | 하방 변동성 확장 | 자동 반등 기대보다 하락 추세 확인 |
| 0.5 회복 | 폭이 축소 | 평균 부근 복귀와 움직임 둔화 | 새로운 추세 신호로 단정하지 않음 |
%B 1 초과는 과매수가 아니라 위치 정보다
상단 밴드 위에서 마감했다는 것은 최근 20일 분포에서 가격이 높다는 뜻입니다. 그러나 강한 추세에서는 평균과 상단 밴드도 함께 올라가며 %B>1이 여러 번 나타날 수 있어요.
존 볼린저의 공식 활용 규칙도 밴드 접촉 자체는 매수·매도 신호가 아니며, 추세장에서는 가격이 상단이나 하단을 따라 움직일 수 있다고 설명합니다. 밴드 밖 종가를 처음에는 반전보다 추세 지속 신호로 본다는 규칙도 함께 제시합니다.
낮은 Bandwidth는 방향이 아니라 압축 상태다
Bandwidth는 상단과 하단 사이의 거리만 사용합니다. 가격이 위로 움직일지 아래로 움직일지는 계산식에 들어 있지 않습니다. 낮은 값은 움직임이 작았다는 과거 상태를 보여줄 뿐, 다음 돌파 방향을 알려주지 않아요.
따라서 압축을 찾은 뒤에는 %B가 어느 쪽 경계를 넘는지, 중심선 기울기가 같은 방향인지, 거래량이 평소보다 늘었는지를 따로 확인해야 합니다.
4. 차트로 보는 %B와 Bandwidth의 특성
삼성전자(A005930): 같은 압축 뒤 상단 돌파, 다른 결과
아래 차트는 신호 전 60거래일부터 이후 20거래일까지의 볼린저 밴드, 거래량, %B와 Bandwidth를 나란히 표시합니다. 회색 영역은 신호일 이후 실제 가격 경로입니다.

2021년 8월 3일: %B 1.14였지만 상승은 이어지지 않았다
삼성전자 종가는 81,400원이었고 %B는 1.14로 상단 밴드 위에서 마감했습니다. Bandwidth는 3.79%, 직전 10거래일 최저값은 7월 28일의 3.59%였습니다. 종목 자신의 과거 252거래일 하위 10%에 해당하는 압축 구간에서 나온 상단 돌파였습니다.
하지만 이후 10거래일 수익률은 -9.21%, 20거래일은 -5.65%였습니다. %B>1은 그날 종가의 위치를 정확히 보여줬지만, 돌파가 지속될지는 알려주지 못했습니다.
2025년 9월 11일: 압축 뒤 폭이 확대되며 상승이 이어졌다
다른 사례의 종가는 73,400원, %B는 1.09였습니다. 직전 10거래일 Bandwidth 최저값은 8월 29일의 5.03%였고, 신호일에는 7.07%로 밴드가 이미 벌어지기 시작했습니다.
이후 10거래일 수익률은 +17.30%, 20거래일은 +33.11%였습니다. %B의 상단 돌파와 Bandwidth 확대가 함께 나타난 추세 지속 사례지만, 앞선 실패 사례가 보여주듯 같은 조합이 미래 수익을 보장하지는 않습니다.
15개 신호를 나란히 놓으면 방향이 하나로 고정되지 않는다
2018~2025년 삼성전자에서 과거 252일 Bandwidth 하위 10% 압축이 나타난 뒤 10거래일 안에 %B가 처음 1을 넘은 사례를 찾았습니다. 결과 구간이 겹치지 않도록 신호 사이에 20거래일 간격을 두자 15회가 남았습니다.

20거래일 뒤 상승은 12회, 하락은 3회였습니다. 이 표본에서는 상승 사례가 더 많았지만, 단일 종목·단일 기간·임의의 압축 기준을 사용한 작은 관측입니다. 거래비용과 체결 조건도 없으므로 80% 승률의 전략이라고 해석하면 안 됩니다. 세 번의 하락 사례만으로도 압축과 상단 돌파가 방향을 확정하지 않는다는 점은 확인할 수 있습니다.
5. 장점과 한계
두 숫자로 볼린저 밴드를 규칙화할 수 있다
차트 모양을 눈으로만 설명하면 많이 좁아졌다, 상단에 가까워졌다처럼 기준이 흔들릴 수 있습니다. %B와 Bandwidth를 사용하면 가격 위치와 밴드 폭을 숫자로 저장해 종목 검색, 알림과 백테스트 조건으로 바꿀 수 있습니다.
| 구분 | %B | Bandwidth |
|---|---|---|
| 측정 대상 | 밴드 안에서 종가의 위치 | 중심선 대비 밴드 전체 폭 |
| 방향 정보 | 상단·하단 중 어느 쪽인지 표시 | 방향 정보 없음 |
| 고정 범위 | 없음 | 0 이상, 고정 상한 없음 |
| 대표 활용 | 돌파·밴드 워킹·패턴 비교 | 스퀴즈·변동성 확대와 축소 |
| 단독 신호의 함정 | 상단을 매도, 하단을 매수로 단정 | 낮은 폭을 상승 예고로 단정 |
반드시 알아둘 한계
- 20기간과 2표준편차는 기본값이지 모든 종목과 매매 주기에 맞는 최적값이 아닙니다.
- 표준편차를 사용한다고 주가가 정규분포를 따르거나 약 95%가 밴드 안에 머문다고 가정할 수 없습니다.
- 당일 종가가 이동평균과 표준편차 계산에도 포함되므로 큰 움직임은 가격 위치뿐 아니라 밴드 자체도 바꿉니다.
- 모집단 표준편차와 표본 표준편차 중 무엇을 쓰는지에 따라 플랫폼별 %B와 Bandwidth가 조금 달라질 수 있습니다.
- 낮은 Bandwidth는 과거의 조용함만 측정하며 다음 움직임의 시점·방향·크기를 예측하지 않습니다.
- 거래정지, 액면분할과 권리락 구간은 수정주가 처리가 일관되지 않으면 밴드 폭이 왜곡될 수 있습니다.
- 종목마다 평소 변동성이 다르므로 Bandwidth 절댓값 하나로 여러 종목을 일괄 비교하기 어렵습니다.
존 볼린저의 공식 설명도 가격 분포를 정규분포로 가정하지 말아야 하며, 기본 설정은 출발점일 뿐이라고 밝힙니다. %B=1이나 하위 10% 같은 기준은 가격 상태를 분류하는 규칙이지 통계적으로 보장된 확률이 아닙니다.
6. 실전 Tip 및 요약
%B와 Bandwidth는 다음 순서로 확인하면 됩니다.
- Bandwidth를 종목 자신의 과거 분포와 비교해 압축 여부를 확인합니다.
- %B가 1 또는 0을 넘을 때 가격 방향과 중심선 기울기를 확인합니다.
- 거래량과 이전 고점·저점을 함께 보고 돌파의 지속 여부를 별도로 검증합니다.
핵심은 간단합니다. %B는 가격의 위치이고, Bandwidth는 밴드의 폭입니다. 압축은 방향을 말하지 않으며 상단 돌파도 자동 매수나 매도 신호가 아닙니다. 두 지표를 분리해 읽어야 스퀴즈라는 모양을 재현 가능한 조건으로 바꿀 수 있습니다.
다음 지표 백과에서는 종가만 사용하는 변동성과 장중 고가·저가를 활용하는 Parkinson·Garman–Klass·Rogers–Satchell 변동성 추정치를 비교합니다.