Open-source scriptindicator/v1
Keltner Channels
Place volatility-based upper and lower bands around an exponential moving average.
#channel#keltner#volatility
Description
Keltner Channels combine an exponential moving-average basis with bands derived from smoothed true range. The channel adapts to changes in volatility and can help frame trend direction, breakouts, and price extension.
Open-source script. Everyone can inspect the source code, use the script on a chart, and save an editable copy.
Release notes
Version history · 1 published version
Version 1CurrentChart updatedKeltner Channels · Aug 31, 2026
Source codempl-2.0View sourceHide source
indicator("Keltner Channels", { overlay: true });
const length = input.int("Length", 20, { min: 1, max: 500 });
const multiplier = input.float("Multiplier", 2, { min: 0.1, max: 10, step: 0.1 });
const source = input.source("Source", "close");
const [basis, upper, lower] = kc(source, length, multiplier, true);
plot(upper, { title: "Upper", color: "#2962ff" });
plot(basis, { title: "Basis", color: "#ff9800" });
plot(lower, { title: "Lower", color: "#2962ff" });
fill(upper, lower, { color: "#2962ff", opacity: 0.08 });
Community discussion
0 comments
No comments yet. Start the discussion.