Library "ta" Collection of all custom and enhanced TA indicators. Same as enhanced_ta. But, removed all the displays to make it faster.
ma(source, maType, length) returns custom moving averages Parameters: source: Moving Average Source maType: Moving Average Type : Can be sma, ema, hma, rma, wma, vwma, swma, highlow, linreg, median length: Moving Average Length Returns: moving average for the given type and length
atr(maType, length) returns ATR with custom moving average Parameters: maType: Moving Average Type : Can be sma, ema, hma, rma, wma, vwma, swma, highlow, linreg, median length: Moving Average Length Returns: ATR for the given moving average type and length
atrpercent(maType, length) returns ATR as percentage of close price Parameters: maType: Moving Average Type : Can be sma, ema, hma, rma, wma, vwma, swma, highlow, linreg, median length: Moving Average Length Returns: ATR as percentage of close price for the given moving average type and length
bb(source, maType, length, multiplier, sticky) returns Bollinger band for custom moving average Parameters: source: Moving Average Source maType: Moving Average Type : Can be sma, ema, hma, rma, wma, vwma, swma, highlow, linreg, median length: Moving Average Length multiplier: Standard Deviation multiplier sticky: - sticky boundaries which will only change when value is outside boundary. Returns: Bollinger band with custom moving average for given source, length and multiplier
bbw(source, maType, length, multiplier, sticky) returns Bollinger bandwidth for custom moving average Parameters: source: Moving Average Source maType: Moving Average Type : Can be sma, ema, hma, rma, wma, vwma, swma, highlow, linreg, median length: Moving Average Length multiplier: Standard Deviation multiplier sticky: - sticky boundaries which will only change when value is outside boundary. Returns: Bollinger Bandwidth for custom moving average for given source, length and multiplier
bpercentb(source, maType, length, multiplier, sticky) returns Bollinger Percent B for custom moving average Parameters: source: Moving Average Source maType: Moving Average Type : Can be sma, ema, hma, rma, wma, vwma, swma, highlow, linreg, median length: Moving Average Length multiplier: Standard Deviation multiplier sticky: - sticky boundaries which will only change when value is outside boundary. Returns: Bollinger Percent B for custom moving average for given source, length and multiplier
kc(source, maType, length, multiplier, useTrueRange, sticky) returns Keltner Channel for custom moving average Parameters: source: Moving Average Source maType: Moving Average Type : Can be sma, ema, hma, rma, wma, vwma, swma, highlow, linreg, median length: Moving Average Length multiplier: Standard Deviation multiplier useTrueRange: - if set to false, uses high-low. sticky: - sticky boundaries which will only change when value is outside boundary. Returns: Keltner Channel for custom moving average for given souce, length and multiplier
kcw(source, maType, length, multiplier, useTrueRange, sticky) returns Keltner Channel Width with custom moving average Parameters: source: Moving Average Source maType: Moving Average Type : Can be sma, ema, hma, rma, wma, vwma, swma, highlow, linreg, median length: Moving Average Length multiplier: Standard Deviation multiplier useTrueRange: - if set to false, uses high-low. sticky: - sticky boundaries which will only change when value is outside boundary. Returns: Keltner Channel Width for custom moving average
kpercentk(source, maType, length, multiplier, useTrueRange, sticky) returns Keltner Channel Percent K Width with custom moving average Parameters: source: Moving Average Source maType: Moving Average Type : Can be sma, ema, hma, rma, wma, vwma, swma, highlow, linreg, median length: Moving Average Length multiplier: Standard Deviation multiplier useTrueRange: - if set to false, uses high-low. sticky: - sticky boundaries which will only change when value is outside boundary. Returns: Keltner Percent K for given moving average, source, length and multiplier
dc(length, useAlternateSource, alternateSource, sticky) returns Custom Donchian Channel Parameters: length: - donchian channel length useAlternateSource: - Custom source is used only if useAlternateSource is set to true alternateSource: - Custom source sticky: - sticky boundaries which will only change when value is outside boundary. Returns: Donchian channel
dcw(length, useAlternateSource, alternateSource, sticky) returns Donchian Channel Width Parameters: length: - donchian channel length useAlternateSource: - Custom source is used only if useAlternateSource is set to true alternateSource: - Custom source sticky: - sticky boundaries which will only change when value is outside boundary. Returns: Donchian channel width
dpercentd(useAlternateSource, alternateSource, length, sticky) returns Donchian Channel Percent of price Parameters: useAlternateSource: - Custom source is used only if useAlternateSource is set to true alternateSource: - Custom source length: - donchian channel length sticky: - sticky boundaries which will only change when value is outside boundary. Returns: Donchian channel Percent D
oscillatorRange(source, method, highlowLength, rangeLength, sticky) oscillatorRange - returns Custom overbought/oversold areas for an oscillator input Parameters: source: - Osillator source such as RSI, COG etc. method: - Valid values for method are : sma, ema, hma, rma, wma, vwma, swma, highlow, linreg, median highlowLength: - length on which highlow of the oscillator is calculated rangeLength: - length used for calculating oversold/overbought range - usually same as oscillator length sticky: - overbought, oversold levels won't change unless crossed Returns: Dynamic overbought and oversold range for oscillator input
oscillator(type, length, shortLength, longLength, source, highSource, lowSource, method, highlowLength, sticky) oscillator - returns Choice of oscillator with custom overbought/oversold range Parameters: type: - oscillator type. Valid values : cci, cmo, cog, mfi, roc, rsi, stoch, tsi, wpr length: - Oscillator length - not used for TSI shortLength: - shortLength only used for TSI longLength: - longLength only used for TSI source: - custom source if required highSource: - custom high source for stochastic oscillator lowSource: - custom low source for stochastic oscillator method: - Valid values for method are : sma, ema, hma, rma, wma, vwma, swma, highlow, linreg, median highlowLength: - length on which highlow of the oscillator is calculated sticky: - overbought, oversold levels won't change unless crossed Returns: Oscillator value along with dynamic overbought and oversold range for oscillator input
multibands(bandType, source, maType, length, useTrueRange, sticky, numberOfBands, multiplierStart, multiplierStep) multibands - returns Choice of oscillator with custom overbought/oversold range Parameters: bandType: - Band type - can be either bb or kc source: - custom source if required maType: Moving Average Type : Can be sma, ema, hma, rma, wma, vwma, swma, highlow, linreg, median length: - Oscillator length - not used for TSI useTrueRange: - if set to false, uses high-low. sticky: - for sticky borders which only change upon source crossover/crossunder numberOfBands: - Number of bands to generate multiplierStart: - Starting ATR or Standard deviation multiplier for first band multiplierStep: - Incremental value for multiplier for each band Returns: array of band values sorted in ascending order
mbandoscillator(bandType, source, maType, length, useTrueRange, stickyBands, numberOfBands, multiplierStart, multiplierStep) mbandoscillator - Multiband oscillator created on the basis of bands Parameters: bandType: - Band type - can be either bb or kc source: - custom source if required maType: Moving Average Type : Can be sma, ema, hma, rma, wma, vwma, swma, highlow, linreg, median length: - Oscillator length - not used for TSI useTrueRange: - if set to false, uses high-low. stickyBands: - for sticky borders which only change upon source crossover/crossunder for band detection numberOfBands: - Number of bands to generate multiplierStart: - Starting ATR or Standard deviation multiplier for first band multiplierStep: - Incremental value for multiplier for each band Returns: oscillator currentStates - Array containing states for last n bars
In true TradingView spirit, the author has published this Pine code as an open-source library so that other Pine programmers from our community can reuse it. Cheers to the author! You may use this library privately or in other open-source publications, but reuse of this code in a publication is governed by House rules.
The information and publications are not meant to be, and do not constitute, financial, investment, trading, or other types of advice or recommendations supplied or endorsed by TradingView. Read more in the Terms of Use.