唐奇安通道、肯特納通道與布林通道:三方比較(2026)
你在 TradingView 打開圖表,看到三條圍著價格走的通道:唐奇安、肯特納、布林。三條線畫出來長得都像「上下夾一根價格」,於是被當成同一種東西——只要價格碰上軌就賣、碰下軌就買。這是這三條通道最常見的用法,也是最常翻車的用法。
這三條通道的公式完全不一樣,最擅長的市況也不一樣。這篇不教你「哪條最強」——沒有這種答案。它把三條的機制拆開放在一起,講各自的通道寬度怎麼算、對突發波動怎麼反應、在什麼場景會安靜地失效。最後附一段可以直接貼到 TradingView 的 Pine Script(也就是 TradingView 內建的策略腳本語言)程式碼,你可以把三條疊在同一張圖上比較。
三條通道看起來像,但夾住價格的方式完全不一樣
從公式看最直觀。用 20 期作為共同參數,三條的定義是:
| 面向 | 唐奇安通道 | 肯特納通道(現代 ATR 版) | 布林通道 |
|---|---|---|---|
| 中軸來源 | (20 期最高 + 20 期最低) / 2 | EMA(close, 20) | SMA(close, 20) |
| 上下軌來源 | 20 期最高 / 20 期最低 | 中軸 ± 2 × ATR(10) | 中軸 ± 2 × 標準差(20) |
| 通道寬度反映的是 | 近期價格的極值 | 近期真實波動(含跳空) | 近期收盤價的離散程度 |
| 中軸更新頻率 | 只在新高或新低出現時才動 | 每一根 K 棒都在動 | 每一根 K 棒都在動 |
| 對盤整的表現 | 通道保持穩定 | 通道慢慢收窄 | 通道快速收窄(會出現 Squeeze) |
來源:Pine Script v6 官方指標 ta.highest / ta.lowest / ta.ema / ta.atr / ta.sma / ta.stdev 定義;查證日期 2026 年 8 月。
唐奇安在問「現在的價格有沒有比最近所有人看過的都高」,肯特納在問「現在的偏離是不是比平常波動多」,布林在問「現在的偏離是不是統計上罕見」。同樣寫「上軌」兩個字,背後的意思完全不同。
唐奇安通道:追的是價格的極值
Richard Donchian 在 1950 年代發明的通道,公式最簡單:
上軌 = highest(high, 20)
下軌 = lowest(low, 20)
中軸 = (上軌 + 下軌) / 2沒有平均、沒有標準差、沒有波動率。它只回答一個問題:過去 N 根 K 棒裡的最高最低是多少。這個「極值本位」的設計帶來三個明顯的特徵。
第一,通道的邊界會平走。只要 20 期內的最高沒被打破,上軌會一路水平延伸到那個高點滑出視窗為止。中軸也一樣——只在新高或新低出現的那一根 K 棒才會跳一次。這在盤整市場裡看起來很像故障,實際上是刻意的。
第二,突破訊號很乾淨。價格碰到上軌,代表它剛創下 N 期新高——不是接近某個平均值加幾個標準差、不是超出 ATR 幾倍,是字面上的新高。要判斷「這是不是突破」不用做二次判斷。這就是 1983 年海龜交易系統用它的原因:Donchian 20 進場(System 1)、Donchian 55 進場(System 2)、Donchian 10 或 20 出場,整套規則沒有一個模糊詞。
第三,它對盤整無能為力。價格在區間內盤來盤去,永遠碰不到通道邊——因為通道邊就是這段區間的最高最低。你想從中找到均值回歸的訊號,唐奇安幾乎給不了。這是它的守備範圍以外的事。
想看完整的突破實作,包括假突破怎麼過濾,可以直接讀突破策略完整教學;海龜系統整套用 Donchian 怎麼跑,CTA 趨勢跟隨與海龜交易有一次講完。
肯特納通道:讓通道跟著真實波動走
肯特納通道原型是 Chester Keltner 在 1960 年出版的《How to Make Money in Commodities》一書提出的,那一版用的是移動平均加減 typical price 的高低差。你現在在 TradingView 看到的預設版本不是那個原型——是 Linda Bradford Raschke 在 1990 年代改用 ATR 之後普及的版本。兩者長得像,但只有 ATR 版本廣為使用,本文接下來都指這個現代版本。
中軸 = EMA(close, 20)
ATR = ta.atr(10) // 真實波幅,含跳空
上軌 = 中軸 + 2 × ATR
下軌 = 中軸 - 2 × ATR它是「這根 K 棒真實的波動範圍」,等於 max(當日高低差、當日高減昨日收、當日低減昨日收) 的 N 期平均。跟只看高低差比,ATR 把跳空也算進去。詳細機制與部位大小的算法在 ATR 完整教學 裡有拆過,這裡只用結論。
跟唐奇安比起來,肯特納最大的差別是中軸每根 K 棒都在動。EMA 對近期資料的權重比較高——20 期 EMA 大概對過去 5-7 根 K 棒最敏感,之前的資料權重會很快衰減。所以中軸像是一條「稍微延遲」的價格,通道則是那條線的上下 2 倍 ATR。
跟布林比起來,肯特納最大的差別是ATR 對突發波動的反應比較穩定。同樣是一根長黑 K,布林的標準差會被拉大一次然後在幾根 K 之後慢慢收回;ATR 是 N 期平均,長黑 K 只會被算成 1/N 的貢獻,通道不會突然爆開也不會突然收窄。這帶來一個實用的性質:肯特納通道的寬度變化平滑,容易當趨勢跟隨的移動停損。
如果你想更深入理解為什麼 EMA 跟 SMA 在趨勢跟隨上會給出不同訊號,EMA 均線完整教學有一次講完權重公式跟 lag 的差。
布林通道:用標準差抓「不尋常的距離」
布林通道由 John Bollinger 在 1980 年代發明,公式看起來只跟肯特納差一個字:
中軸 = SMA(close, 20)
stdev = 過去 20 期收盤價的標準差
上軌 = 中軸 + 2 × stdev
下軌 = 中軸 - 2 × stdev差別在通道寬度的來源:布林用的是統計上的離散程度(標準差),肯特納用的是價格自己走出來的波動(ATR)。這個差別實作上很小,行為上差很多。
標準差對極端值放大。ATR 是絕對值的算術平均,一根長 K 貢獻 1/N;標準差是離差平方後開根號,同樣一根長 K 對通道寬度的貢獻遠比 ATR 多。實務結果是:盤整轉波動時,布林通道會比肯特納早打開、也早收回。這個「打開又收回」的節奏,就是 John Bollinger 自己命名的 Squeeze——通道極窄之後跟著一次擴張,方向常常帶來一段行情。
但通道邊不是絕對範圍。價格連續碰上軌不代表要反轉——Bollinger 自己把這個現象叫做 Walking the Bands,是強趨勢的正常表現。這件事在盤整市場對,在趨勢市場錯,而三條通道裡最容易被誤用成「碰軌就反手」的就是布林,因為它的中軸是 SMA 平滑價、上下軌又常常被畫得像明確的支撐壓力。
布林通道的完整用法——Squeeze、%B、Walking the Bands、跟趨勢過濾的組合——在 Bollinger Bands 完整教學 裡另外一整篇拆過。本文只把它放在跟另外兩條的對照位置。
一張表放在一起:什麼場景該用哪一條
| 唐奇安 | 肯特納 | 布林 | ||
|---|---|---|---|---|
| 突破訊號乾淨程度 | 最乾淨(就是字面新高) | 中等(要跟 ATR 比) | 會被 Walking the Bands 干擾 | |
| 當作追蹤停損好用嗎 | 還可以(用出場 N 期) | 最順手(寬度平滑) | 會太緊或太鬆 | |
| 抓 Squeeze/低波動的能力 | 幾乎不會顯示 | 會慢慢收窄 | 最快看得出來 | |
| 應對盤整市場 | 幾乎不動 | 通道慢慢縮 | 頻繁碰軌,容易被騙 | |
| 遇到跳空的行為 | 立刻反映在極值 | 算進 ATR,通道拉開 | 算進標準差,通道拉開更多 | |
| 第一次上手要調的參數 | 長度 N(20 / 55) | EMA 長度、ATR 長度、乘數 | 長度、標準差倍數 |
如果你在寫的是趨勢跟隨、突破類的策略,唐奇安是最直接的起點,肯特納是最順手的停損。如果你要的是「等這一段悶住之後爆出來的方向」,布林的 Squeeze 是三條裡最靈敏的。不要把它們當成「布林最進階、唐奇安最原始」——它們是三個工具,不是三個世代。
Pine 三條疊在一起:直接看差異
把三條通道疊在同一張圖上,一根 K 棒一根 K 棒看,比任何比較文都快。這段拆成三塊——共同參數與唐奇安、肯特納與布林的算法、疊在圖上的 plot——直接複製到 TradingView 的 Pine Editor 就能跑。
共同參數與唐奇安
//@version=5
indicator("Donchian vs Keltner vs Bollinger", overlay=true)
length = input.int(20, "共用長度")
atrLen = input.int(10, "肯特納 ATR 長度")
kMult = input.float(2.0, "肯特納倍數")
bMult = input.float(2.0, "布林標準差倍數")
// 唐奇安
donUp = ta.highest(high, length)
donLow = ta.lowest(low, length)
donMid = (donUp + donLow) / 2肯特納與布林
// 肯特納(現代 ATR 版)
kMid = ta.ema(close, length)
kBand = kMult * ta.atr(atrLen)
kUp = kMid + kBand
kLow = kMid - kBand
// 布林
bMid = ta.sma(close, length)
bDev = bMult * ta.stdev(close, length)
bUp = bMid + bDev
bLow = bMid - bDev疊在同一張圖上
plot(donUp, "Donchian 上", color=color.new(color.red, 0))
plot(donLow, "Donchian 下", color=color.new(color.red, 0))
plot(kUp, "Keltner 上", color=color.new(color.orange, 0))
plot(kLow, "Keltner 下", color=color.new(color.orange, 0))
plot(bUp, "Bollinger 上", color=color.new(color.aqua, 0))
plot(bLow, "Bollinger 下", color=color.new(color.aqua, 0))貼上去之後,把圖切到 BTC 的日線或 4 小時。你會看到三個規律性現象:盤整時,紅色(Donchian)幾乎不動,橙色(Keltner)慢慢收,藍色(Bollinger)最快收窄;一根長 K 之後,藍色的通道被拉開最多,橙色次之,紅色只在那根 K 創新高/新低時才動;上漲趨勢裡,價格會靠著藍色的上軌走(Walking the Bands),碰了不代表反轉。
三個常見的誤用,全部都跟「通道類是同一種東西」的假設有關
誤用一:把布林通道當唐奇安通道用。看到價格碰布林上軌就當作「創新高」進場——但布林上軌只是「距離平均 2 個標準差以上」,跟過去多少期的最高沒有關係。真要抓突破,直接用 highest/lowest 更省心。
誤用二:把唐奇安通道當肯特納通道用。用唐奇安當追蹤停損,然後不斷抱怨「停損距離忽寬忽窄」——那不是唐奇安的問題,是你要的功能它做不到。追蹤停損要平滑的通道寬度,那是 ATR 系(肯特納)或百分比停損的守備範圍。
誤用三:三條的參數互抄。看到有人推薦「Donchian 用 20」就把肯特納的 EMA 也改成 20——這兩個 20 的意義完全不同。Donchian 的 20 是「往回看 20 根找極值」,肯特納的 20 是「20 期指數移動平均的衰減常數」,前者是硬視窗、後者是連續加權。想改參數之前先想清楚你在改哪個機制。
常見問題
用法與參數
海龜策略為什麼用唐奇安,不用肯特納或布林?
肯特納用 EMA 好還是 SMA 好?
布林通道的 20 / 2.0 可以改嗎?
組合與市場差異
三條通道能同時用嗎?
這三條在加密貨幣跟股票有沒有明顯差別?
Get started
TVSBot 把你在 Pine 裡寫好的通道策略接到交易所——用你自己的 API key,先 dry-run 驗證,7 家交易所可選。
免費開始使用