kc_upper
Keltner Channels Upper Band
kc_upper(source, length, mult, matype="ema", atr_length=..., atr_matype="wilder", bandstyle="atr")
Parameters
| Name | Type | Description |
|---|---|---|
source |
field | Price field for the middle line (typically close) |
length |
int | Period for the middle line MA |
mult |
float | Multiplier for band width |
Formula
KC Upper = MA(source, length) + mult * range_value
Examples
kc_up = kc_upper(close, 20, 2.0); # Standard KC upper
kc_up = kc_upper(close, 20, 2.0, matype="sma"); # SMA-based middle
kc_up = kc_upper(close, 20, 2.0, atr_length=14); # Different ATR period
kc_up = kc_upper(close, 20, 2.0, atr_matype="ema"); # EMA-smoothed ATR
kc_up = kc_upper(close, 20, 2.0, bandstyle="range"); # Raw high - low band, no smoothing
close > kc_up; # Price above upper band (breakout)
Returns
float
Range
length is bound by matype's MA family (2-210 ema default, 2-105 wilder, 2-400 windowed sma/wma), capped at the 2-105 wilderma ATR ceiling unless atr_length overrides it; atr_length independently must be 2-105
Notes
TradingView default pairs EMA middle with ATR bands; atr_length lets the band smoothing diverge from the middle line; bandstyle="range" reproduces the original 1960s Keltner formulation
See Also
References
TradingView: part of ta.kc(); original Keltner used SMA/range, modern (Linda Bradford Raschke) uses EMA/ATR