Bollinger Bands
Bollinger Bands wrap a moving average in two bands set a number of standard deviations away, so the channel widens when the market is volatile and contracts when it is quiet. They turn volatility into something you can compare across instruments and wire straight into a no-code EA.
- Default settings
- 20 / 2
- Bands
- Upper / Base / Lower
- Scale
- Price
Minh họa — dữ liệu tổng hợp, không phải giá thực.
What Bollinger Bands tell you
The bands measure how far price has strayed from its own recent average, in units of that average's own volatility. That makes an extreme on EUR/USD directly comparable to an extreme on gold — and it makes the width of the channel a reading in its own right.
- Wide bands: volatility is high — moves are running
- Narrow bands: volatility is compressed — a move is being stored, not predicted
- A touch is a statement about distance from the average, not a reversal signal
- 1 Average the applied price over N bars
- 2 Measure the deviation of the same window
- 3 Place bands a multiple of it above and below
Hiển thị công thức & chi tiết tính toán
Bollinger Bands are built from a moving average and the standard deviation of the same window — 20 bars and 2 deviations by default:
- Compute the middle band: a simple moving average of the applied price over the period. In MT5 this is
BASE_LINE, buffer 0. - Compute the standard deviation of the applied price over the same window — a measure of how widely the individual prices are scattered around that average.
- Place the outer bands a multiple of that deviation above and below:
UPPER = BASE + (D × σ)andLOWER = BASE − (D × σ), withDthe deviation setting.
Because the distance is measured in the instrument’s own volatility, the channel adapts automatically: it widens when bars are large and contracts when they are small. That is also why a band touch is not a fixed distance — the same touch means something different in a quiet session than in a violent one.
In MQL5 the call is iBands(symbol, period, bands_period, bands_shift, deviation, applied_price) and it returns a handle to three buffers: BASE_LINE (0), UPPER_BAND (1) and LOWER_BAND (2). applied_price is a full ENUM_APPLIED_PRICE argument, so the bands are not fixed to closing prices. John Bollinger introduced the construction in the early 1980s.
Tín hiệu
Các tín hiệu có thể backtest của Bollinger Bands — và điều kiện thị trường phù hợp với từng tín hiệu.
Squeeze
Logic nâng caoMiddle-Band Cross
Sẵn sàng trong BuilderBand Walk
Logic nâng caoTriển khai trong MT5
Những gì MetaTrader 5 thực sự tính và vẽ — cơ sở tham chiếu cho mọi quy tắc trên trang này.
Bộ đệm
| Chỉ số | Bộ đệm | MT5 vẽ dưới dạng | Chứa gì |
|---|---|---|---|
| 0 | BASE_LINE | Line | The middle band — a simple moving average of the applied price over the chosen period. Everything else is measured from it. |
| 1 | UPPER_BAND | Line | Middle band plus the deviation multiplier times the standard deviation of the same window. |
| 2 | LOWER_BAND | Line | Middle band minus the same distance. Upper and lower are always symmetric around the base line. |
Ghi chú nền tảng
Hoạt động tốt nhất / sử dụng cẩn thận
Không có chỉ báo nào có lợi thế toàn diện. Đây là nơi Bollinger Bands hỗ trợ — và nơi nó gây hiểu lầm.
Hoạt động tốt nhất
- Ranging markets
- Comparing volatility across instruments
- With a trend or momentum filter
- On liquid pairs with steady sessions
Sử dụng cẩn thận
- Strong one-way trends
- Band touches as standalone entries
- Very tight deviation settings
- Optimised width without validation
Xây dựng chiến lược Bollinger Bands
Kết nối tín hiệu vào quy tắc vào lệnh và thoát lệnh, sau đó xuất EA MT5 có thể biên dịch — không cần code.
- Lower band (20, 2.0)
- Upper band (20, 2.0)
- Bid at or below lower band → Open Buy · SL 40 / TP 80
- Bid at or above upper band → Open Sell
Kết hợp Bollinger Bands với các chỉ báo khác
Một chỉ báo hiếm khi đứng một mình. Các cặp kết hợp này bù đắp điểm mù của Bollinger Bands.
Bollinger Bands + OBV
- Price crosses the upper band
- OBV above its value 20 bars ago
- Buy
Bollinger Bands + Stochastic
- Bid at or below lower band
- Stochastic %K < 20
- Buy
Bollinger Bands + RSI
- Price at lower band
- RSI < 30
- Buy
No single-flow template pairs Bollinger Bands with RSI — the Bollinger Bounce template trades band touches only, despite what its description says. Add an RSI node and a Compare to it.
Mở Builder →Bollinger Bands + ADX
- ADX < 20
- Price at lower band
- Buy
No single-flow template pairs Bollinger Bands with ADX. Add an ADX node with a Compare below 20 into an And gate ahead of the entry.
Mở Builder →Bollinger Bands + Donchian Channel
- Price crosses the upper band
- Price clears the 20-bar high
- Buy
No single-flow template combines them. Start from Donchian 20-Bar Break, add a Bollinger node set to the upper output with a Price node into a Compare, then join that to the existing Cross with an And gate.
Mở Builder →Tham số
Giá trị ban đầu để xác nhận trên cặp tiền và khung thời gian của bạn — không phải cài đặt được đảm bảo.
| Tham số | Mặc định | Khoảng thử nghiệm đề xuất | Chức năng |
|---|---|---|---|
| Period | 20 | 10–50 | Window for both the middle-band average and the deviation. Shorter bands hug price and touch constantly; longer bands only flag real extremes. |
| Deviation | 2 | 1.5–3.0 | How many standard deviations the outer bands sit from the base line. Lower means more touches and more false ones; higher means rarer, more meaningful stretches. |
| Applied price | Close | Close / Open / High / Low / Median / Typical / Weighted | Price series the average and deviation are computed on. Close is the default; iBands accepts any ENUM_APPLIED_PRICE value. |
| Band | Lower / Upper | — | Which buffer a rule reads: BASE_LINE, UPPER_BAND or LOWER_BAND. This is a buffer selector, not a numeric setting. |
Cài đặt sẵn ban đầu
Ví dụ thị trường
Nơi Bollinger Bands hoạt động, nơi nó thất bại, và bộ lọc thay đổi kết quả như thế nào.
Fade that worked
In a range price stretches to the lower band, stalls, and returns to the middle band — the mean-reversion case the bands describe.
Band walk in a trend
In a strong move price rides the upper band for bar after bar. Selling each touch fights the trend and pays for the privilege.
Filtered by regime
Add a trend-strength filter and the same run of upper-band touches is ignored while the move continues — the filter decides whether a touch is an extreme or just a trend.
Các chỉ báo liên quan
FAQ
- Does a touch of the upper band mean sell?
- No. A touch means price is two standard deviations from its own 20-bar average — in a range that is stretched, in a trend it is normal and can persist for weeks. Use the touch as context and confirm with momentum, structure, or a regime filter before acting.
- What is a Bollinger squeeze?
- A local minimum in the distance between the two outer bands, meaning realised volatility has compressed. It says a move is being stored, not which way it will break. Because iBands has no band-width buffer, an EA has to compute upper minus lower itself, or use Standard Deviation as a stand-in.
- Should I change the period or the deviation?
- They do different things. The period sets what counts as 'the average' and how fast the channel adapts; the deviation sets how far price must travel to be called extreme. Change one at a time in a backtest — moving both at once makes the result impossible to attribute.
- Can Bollinger Bands be built on a price other than the close?
- Yes. iBands takes an ENUM_APPLIED_PRICE argument, so the bands can be built from Open, High, Low, Median, Typical or Weighted price. Close is the default and the usual choice; Typical price folds in the bar's range and gives a marginally steadier channel on wick-heavy instruments.
- Can I build a Bollinger EA without coding?
- Yes for band touches and middle-band crosses. The Bollinger Bounce template wires two band nodes against a Price node with period, deviation and applied price as EA inputs. Squeeze detection and band-walk recognition are the exceptions — both need a value iBands does not publish.
- How should I validate settings before going live?
- Backtest on quality tick data first, then run the EA on a demo account before risking money. When optimising, hold back data the search never saw and prefer settings that stay profitable across periods over the single in-sample peak — chasing that peak is overfitting the noise. No default or preset here is a performance promise; every value is a starting point to re-validate on your own pair and broker.
Bài viết liên quan
Glossary