# Indicator catalog



Choose from 244 callable indicators. Each page contains a complete example, parameter meanings, and named outputs.

Start with [EMA](https://docs.openbacktesting.com/reference/indicators/ema/index.md), [RSI](https://docs.openbacktesting.com/reference/indicators/rsi/index.md), [MACD](https://docs.openbacktesting.com/reference/indicators/macd/index.md), [Bollinger Bands](https://docs.openbacktesting.com/reference/indicators/bbands/index.md), or [ATR](https://docs.openbacktesting.com/reference/indicators/atr/index.md). Read [indicator usage](https://docs.openbacktesting.com/reference/indicator-api/index.md) for registration and validity checks. Use the documentation site's search to find names or IDs, or your reader's Find command when reading Markdown.

[Candles and patterns](https://docs.openbacktesting.com/reference/indicators/#candles) · [Cycles](https://docs.openbacktesting.com/reference/indicators/#cycles) · [Momentum](https://docs.openbacktesting.com/reference/indicators/#momentum) · [Moving averages and prices](https://docs.openbacktesting.com/reference/indicators/#overlap) · [Returns and drawdowns](https://docs.openbacktesting.com/reference/indicators/#performance) · [Statistics](https://docs.openbacktesting.com/reference/indicators/#statistics) · [Trend](https://docs.openbacktesting.com/reference/indicators/#trend) · [Series utilities](https://docs.openbacktesting.com/reference/indicators/#utility) · [Volatility](https://docs.openbacktesting.com/reference/indicators/#volatility) · [Volume](https://docs.openbacktesting.com/reference/indicators/#volume)

<a id="candles"></a>

## Candles and patterns

| Indicator | Use |
| --- | --- |
| [Doji (`cdl_doji`)](https://docs.openbacktesting.com/reference/indicators/cdl_doji/index.md) | Compare the body with the preceding window's range to identify small-bodied candles; a positive value denotes a doji, not a bullish signal. |
| [Engulfing pattern (`cdl_engulfing`)](https://docs.openbacktesting.com/reference/indicators/cdl_engulfing/index.md) | Identify engulfing relationships between adjacent candle bodies; scores retain direction and strength. |
| [Evening Star (`cdl_eveningstar`)](https://docs.openbacktesting.com/reference/indicators/cdl_eveningstar/index.md) | Identify a three-candle evening-star pattern; confirmation requires the third candle. |
| [Hammer (`cdl_hammer`)](https://docs.openbacktesting.com/reference/indicators/cdl_hammer/index.md) | Identify conditions such as a small body and long lower shadow, outputting a pattern score. |
| [Harami (`cdl_harami`)](https://docs.openbacktesting.com/reference/indicators/cdl_harami/index.md) | Identify containment relationships between consecutive bodies; scores retain direction and strength. |
| [Inside bar (`cdl_inside`)](https://docs.openbacktesting.com/reference/indicators/cdl_inside/index.md) | Identify candles whose high-low range lies inside the previous bar; the score sign denotes the current candle's direction. |
| [Marubozu (`cdl_marubozu`)](https://docs.openbacktesting.com/reference/indicators/cdl_marubozu/index.md) | Identify body candles with very short shadows and output a directional score. |
| [Morning Star (`cdl_morningstar`)](https://docs.openbacktesting.com/reference/indicators/cdl_morningstar/index.md) | Identify a three-candle morning-star pattern; confirmation requires the third candle. |
| [Shooting Star (`cdl_shootingstar`)](https://docs.openbacktesting.com/reference/indicators/cdl_shootingstar/index.md) | Identify conditions such as a small body and long upper shadow, outputting a pattern score. |
| [Candle z-score (`cdl_z`)](https://docs.openbacktesting.com/reference/indicators/cdl_z/index.md) | Standardize open, high, low, and close separately to measure each price's deviation from its rolling mean. |
| [Heikin-Ashi (`ha`)](https://docs.openbacktesting.com/reference/indicators/ha/index.md) | Transform OHLC into smoothed candles; the outputs are not original traded prices. |

<a id="cycles"></a>

## Cycles

| Indicator | Use |
| --- | --- |
| [Detrended synthetic price (`dsp`)](https://docs.openbacktesting.com/reference/indicators/dsp/index.md) | Remove the price trend component to examine the remaining cyclical fluctuations. |
| [Even Better Sine Wave (`ebsw`)](https://docs.openbacktesting.com/reference/indicators/ebsw/index.md) | Use a filtered waveform to examine cycle states; the output oscillates within a bounded range. |
| [Hilbert dominant cycle period (`ht_dcperiod`)](https://docs.openbacktesting.com/reference/indicators/ht_dcperiod/index.md) | Estimate the length of the dominant price cycle to examine changes in its period. |
| [Hilbert dominant cycle phase (`ht_dcphase`)](https://docs.openbacktesting.com/reference/indicators/ht_dcphase/index.md) | Estimate the dominant cycle phase for cycle analysis. |
| [Hilbert phasor (`ht_phasor`)](https://docs.openbacktesting.com/reference/indicators/ht_phasor/index.md) | Provide in-phase and quadrature components to describe cycle phase relationships. |
| [Hilbert sine wave (`ht_sine`)](https://docs.openbacktesting.com/reference/indicators/ht_sine/index.md) | Output sine and leading-sine components to compare cycle phases. |
| [Hilbert trend mode (`ht_trendmode`)](https://docs.openbacktesting.com/reference/indicators/ht_trendmode/index.md) | Distinguish trend and cycle market regimes using a state value. |
| [Mesa Sine Wave (`msw`)](https://docs.openbacktesting.com/reference/indicators/msw/index.md) | Estimate phase over the recent window and generate sine and leading-sine components; period must exceed one. |

<a id="momentum"></a>

## Momentum

| Indicator | Use |
| --- | --- |
| [Acceleration Oscillator (`ac`)](https://docs.openbacktesting.com/reference/indicators/ac/index.md) | Compare momentum oscillator values with their smoothed values to examine momentum's rate of change. |
| [Awesome Oscillator (`ao`)](https://docs.openbacktesting.com/reference/indicators/ao/index.md) | Compare fast and slow averages of the midpoint price to examine momentum direction and changes. |
| [Absolute Price Oscillator (`apo`)](https://docs.openbacktesting.com/reference/indicators/apo/index.md) | Compute the absolute difference between fast and slow moving averages, retaining the price scale. |
| [Bias (`bias`)](https://docs.openbacktesting.com/reference/indicators/bias/index.md) | Measure the proportional deviation of price from its moving average. |
| [Balance of Power (`bop`)](https://docs.openbacktesting.com/reference/indicators/bop/index.md) | Describe the current candle's price pressure through the relationship between the open-close difference and high-low range. |
| [BRAR sentiment indicators (`brar`)](https://docs.openbacktesting.com/reference/indicators/brar/index.md) | Measure upward and downward pressure relative to the open and previous close separately. |
| [Commodity Channel Index (`cci`)](https://docs.openbacktesting.com/reference/indicators/cci/index.md) | Standardize price deviation by mean deviation to measure the distance from the mean. |
| [Chande Forecast Oscillator (`cfo`)](https://docs.openbacktesting.com/reference/indicators/cfo/index.md) | Compare actual price with the regression forecast to examine forecast deviation. |
| [Center of Gravity Oscillator (`cg`)](https://docs.openbacktesting.com/reference/indicators/cg/index.md) | Use the weighted center of gravity of window prices to describe turning patterns. |
| [Chande Momentum Oscillator (`cmo`)](https://docs.openbacktesting.com/reference/indicators/cmo/index.md) | Compare gains and losses within the window to measure net momentum. |
| [Coppock Curve (`coppock`)](https://docs.openbacktesting.com/reference/indicators/coppock/index.md) | Smooth a combination of rates of change at different periods to examine longer-term momentum. |
| [Connors RSI (`crsi`)](https://docs.openbacktesting.com/reference/indicators/crsi/index.md) | Combine price RSI, consecutive-rise/fall RSI, and rate-of-change rank. |
| [Correlation Trend Indicator (`cti`)](https://docs.openbacktesting.com/reference/indicators/cti/index.md) | Measure how closely window prices follow a linear trend. |
| [Directional movement (`dm`)](https://docs.openbacktesting.com/reference/indicators/dm/index.md) | Compute positive and negative directional movement separately; read the two channels individually. |
| [Efficiency ratio (`er`)](https://docs.openbacktesting.com/reference/indicators/er/index.md) | Compare net change with cumulative movement to examine directionality and noise along the path. |
| [Elder Ray Index (`eri`)](https://docs.openbacktesting.com/reference/indicators/eri/index.md) | Compute high and low distances from a moving average to represent bull and bear power separately. |
| [Fisher Transform (`fisher`)](https://docs.openbacktesting.com/reference/indicators/fisher/index.md) | Transform normalized prices and provide a main line and signal line. |
| [Forecast Oscillator (`fosc`)](https://docs.openbacktesting.com/reference/indicators/fosc/index.md) | Compute the relative difference between the actual close and the one-step-ahead regression forecast. |
| [Gator Oscillator (`gator`)](https://docs.openbacktesting.com/reference/indicators/gator/index.md) | Examine distances between Alligator moving averages, providing upper and lower channels. |
| [Internal Bar Strength (`ibs`)](https://docs.openbacktesting.com/reference/indicators/ibs/index.md) | Measure the close's position within the current high-low range. |
| [Inertia (`inertia`)](https://docs.openbacktesting.com/reference/indicators/inertia/index.md) | Apply linear-regression smoothing to the relative volatility index RVI to examine slower changes. |
| [KDJ stochastic indicator (`kdj`)](https://docs.openbacktesting.com/reference/indicators/kdj/index.md) | Form K, D, and derived J lines from the stochastic position and smoothed values. |
| [Know Sure Thing (`kst`)](https://docs.openbacktesting.com/reference/indicators/kst/index.md) | Combine and smooth rates of change at different periods, providing a main line and signal line. |
| [Laguerre RSI (`lrsi`)](https://docs.openbacktesting.com/reference/indicators/lrsi/index.md) | Construct a relative-strength series with Laguerre filtering; parameters control smoothing. |
| [Moving Average Convergence Divergence (`macd`)](https://docs.openbacktesting.com/reference/indicators/macd/index.md) | The fast-minus-slow EMA difference forms the main line; the signal smooths that line, and the histogram is their difference. |
| [Extended MACD (`macdext`)](https://docs.openbacktesting.com/reference/indicators/macdext/index.md) | Allow different moving-average types for the fast, slow, and signal lines. |
| [Fixed-period MACD (`macdfix`)](https://docs.openbacktesting.com/reference/indicators/macdfix/index.md) | Fix the fast and slow periods at 12 and 26; only the signal period is adjustable. |
| [Momentum difference (`mom`)](https://docs.openbacktesting.com/reference/indicators/mom/index.md) | Compute the difference between current price and the historical price at the specified interval. |
| [Pretty Good Oscillator (`pgo`)](https://docs.openbacktesting.com/reference/indicators/pgo/index.md) | Measure the distance from price to its simple moving average in units of average true range. |
| [Price Momentum Oscillator (`pmo`)](https://docs.openbacktesting.com/reference/indicators/pmo/index.md) | Recursively smooth price momentum, providing a main line and signal line. |
| [Projection Oscillator (`po`)](https://docs.openbacktesting.com/reference/indicators/po/index.md) | Measure price deviation from a linear-regression trend. |
| [Percentage Price Oscillator (`ppo`)](https://docs.openbacktesting.com/reference/indicators/ppo/index.md) | Normalize the fast-minus-slow moving-average difference as a percentage and provide signal and histogram values. |
| [Psychological Line (`psl`)](https://docs.openbacktesting.com/reference/indicators/psl/index.md) | Count the fraction of rising periods within the window to examine how frequently gains occur. |
| [Percentage Volume Oscillator (`pvo`)](https://docs.openbacktesting.com/reference/indicators/pvo/index.md) | Compare fast and slow volume moving averages, providing main, signal, and histogram channels. |
| [Quantitative Qualitative Estimation (`qqe`)](https://docs.openbacktesting.com/reference/indicators/qqe/index.md) | Construct dynamic bands and directional states from smoothed RSI; the long and short bands have sparse outputs. |
| [Rank Correlation Index (`rci`)](https://docs.openbacktesting.com/reference/indicators/rci/index.md) | Compare price ranks with time ranks to examine monotonic price direction within the window. |
| [Relative Momentum Index (`rmi`)](https://docs.openbacktesting.com/reference/indicators/rmi/index.md) | Construct relative strength using momentum over the specified interval rather than only adjacent prices. |
| [Percentage rate of change (`roc`)](https://docs.openbacktesting.com/reference/indicators/roc/index.md) | Compute price change over the specified interval and express it as a percentage. |
| [Fractional rate of change (`rocp`)](https://docs.openbacktesting.com/reference/indicators/rocp/index.md) | Compute the proportional price change without multiplying by one hundred. |
| [Price ratio (`rocr`)](https://docs.openbacktesting.com/reference/indicators/rocr/index.md) | Compute the ratio of current price to the specified historical price; one denotes no change. |
| [Price ratio on a percentage scale (`rocr100`)](https://docs.openbacktesting.com/reference/indicators/rocr100/index.md) | Multiply the price ratio by one hundred; one hundred denotes no change. |
| [Relative Strength Index (`rsi`)](https://docs.openbacktesting.com/reference/indicators/rsi/index.md) | Compare smoothed gains and losses to examine price momentum. |
| [Smoothed relative strength (`rsx`)](https://docs.openbacktesting.com/reference/indicators/rsx/index.md) | Use multistage smoothing to form a relative-strength series; the algorithm differs from ordinary RSI. |
| [Relative Vigor Index (`rvgi`)](https://docs.openbacktesting.com/reference/indicators/rvgi/index.md) | Compare open-close changes with high-low ranges, providing main, signal, and difference channels. |
| [Change slope (`slope`)](https://docs.openbacktesting.com/reference/indicators/slope/index.md) | Compute the slope over the specified interval, optionally expressed as an angle. |
| [Liquidity sweep (`smc_sweep`)](https://docs.openbacktesting.com/reference/indicators/smc_sweep/index.md) | Identify rejection patterns after crossing local high or low levels; this does not observe order-book liquidity. |
| [SMI Ergodic (`smi`)](https://docs.openbacktesting.com/reference/indicators/smi/index.md) | Form main, signal, and difference channels from doubly smoothed momentum; this differs from stochastic momentum SMI. |
| [Stochastic Momentum Index (`smi_stochastic`)](https://docs.openbacktesting.com/reference/indicators/smi_stochastic/index.md) | Smooth the price's distance from the window midpoint and normalize by the range; this differs from SMI Ergodic. |
| [Squeeze (`squeeze`)](https://docs.openbacktesting.com/reference/indicators/squeeze/index.md) | Compare Bollinger Bands with Keltner Channels and combine momentum with compression and release states. |
| [Multilevel Squeeze (`squeeze_pro`)](https://docs.openbacktesting.com/reference/indicators/squeeze_pro/index.md) | Provide squeeze states and momentum for different channel widths; read state channels individually. |
| [Schaff Trend Cycle (`stc`)](https://docs.openbacktesting.com/reference/indicators/stc/index.md) | Apply successive stochastic normalization and smoothing to MACD to form cycle readings. |
| [Stochastic Oscillator (`stoch`)](https://docs.openbacktesting.com/reference/indicators/stoch/index.md) | Measure the close's position within the recent high-low range, providing smoothed K and D lines. |
| [Fast Stochastic Oscillator (`stochf`)](https://docs.openbacktesting.com/reference/indicators/stochf/index.md) | Provide a less-smoothed stochastic K line and its D line. |
| [Stochastic RSI (`stochrsi`)](https://docs.openbacktesting.com/reference/indicators/stochrsi/index.md) | Normalize RSI within a window and provide K and D lines. |
| [TD Sequential count (`td_seq`)](https://docs.openbacktesting.com/reference/indicators/td_seq/index.md) | Accumulate upward and downward sequence counts by comparing historical prices; no trading outcome is guaranteed. |
| [Triple-smoothed rate of change (`trix`)](https://docs.openbacktesting.com/reference/indicators/trix/index.md) | Compute the rate of change after triple exponential smoothing and provide a signal line. |
| [Triple-smoothed histogram (`trixh`)](https://docs.openbacktesting.com/reference/indicators/trixh/index.md) | Output the difference between TRIX and its signal line in addition to both lines. |
| [True Strength Index (`tsi`)](https://docs.openbacktesting.com/reference/indicators/tsi/index.md) | Double-smooth momentum and absolute momentum, providing strength and signal values. |
| [Ultimate Oscillator (`uo`)](https://docs.openbacktesting.com/reference/indicators/uo/index.md) | Combine buying-pressure-to-true-range relationships across multiple periods to examine momentum. |
| [Volume-weighted MACD (`vwmacd`)](https://docs.openbacktesting.com/reference/indicators/vwmacd/index.md) | Replace ordinary fast and slow averages with volume-weighted averages, outputting main, signal, and histogram channels. |
| [WaveTrend (`wavetrend`)](https://docs.openbacktesting.com/reference/indicators/wavetrend/index.md) | Standardize and smooth typical-price deviation, providing a main wave line and signal line. |
| [Williams Percent Range (`willr`)](https://docs.openbacktesting.com/reference/indicators/willr/index.md) | Measure the close's position relative to the window's highest and lowest prices. |

<a id="overlap"></a>

## Moving averages and prices

| Indicator | Use |
| --- | --- |
| [Alligator moving averages (`alligator`)](https://docs.openbacktesting.com/reference/indicators/alligator/index.md) | Output jaw, teeth, and lips lines with different smoothing periods; no plotting displacement is applied. |
| [Arnaud Legoux Moving Average (`alma`)](https://docs.openbacktesting.com/reference/indicators/alma/index.md) | Smooth price with an offsettable Gaussian weight distribution to control smoothing and response. floor=True rounds the weight center down and normalizes stably; the fixed backend weight direction is retained, without promising numerical parity with Pine. |
| [Condition-anchored VWAP (`anchored_vwap`)](https://docs.openbacktesting.com/reference/indicators/anchored_vwap/index.md) | Explicit 0/1 anchors reset before including the current observation; values are invalid before the first anchor, missing source or volume is skipped, zero volume retains an existing positive-weight mean, and negative volume is rejected. |
| [Condition-anchored VWAP bands (`anchored_vwap_bands`)](https://docs.openbacktesting.com/reference/indicators/anchored_vwap_bands/index.md) | The center matches condition-anchored VWAP; outer bands use the volume-weighted population standard deviation. Accumulation or output overflow raises an error. |
| [Average OHLC price (`avgprice`)](https://docs.openbacktesting.com/reference/indicators/avgprice/index.md) | Compute the arithmetic mean of open, high, low, and close. |
| [Double Exponential Moving Average (`dema`)](https://docs.openbacktesting.com/reference/indicators/dema/index.md) | Combine first- and second-level EMAs to reduce lag introduced by ordinary smoothing. |
| [Exponential Moving Average (`ema`)](https://docs.openbacktesting.com/reference/indicators/ema/index.md) | Give recent prices greater weight to smooth price and examine trends; the default seed is a simple average. |
| [Fractal Adaptive Moving Average (`frama`)](https://docs.openbacktesting.com/reference/indicators/frama/index.md) | Adjust smoothing speed according to the window's fractal characteristics. |
| [Fibonacci Weighted Moving Average (`fwma`)](https://docs.openbacktesting.com/reference/indicators/fwma/index.md) | Smooth window prices using Fibonacci weights. |
| [Gann High Low Activator (`hilo`)](https://docs.openbacktesting.com/reference/indicators/hilo/index.md) | Combine high and low moving averages to form levels and direction outputs that switch with the trend. |
| [High-low midpoint (`hl2`)](https://docs.openbacktesting.com/reference/indicators/hl2/index.md) | Compute the mean of high and low. |
| [Typical price (`hlc3`)](https://docs.openbacktesting.com/reference/indicators/hlc3/index.md) | Compute the mean of high, low, and close. |
| [Hull Moving Average (`hma`)](https://docs.openbacktesting.com/reference/indicators/hma/index.md) | Combine weighted averages of different window lengths to smooth price and reduce lag. |
| [Hilbert trendline (`ht_trendline`)](https://docs.openbacktesting.com/reference/indicators/ht_trendline/index.md) | Use cycle estimation to form a smoothed trendline. |
| [Holt-Winters Moving Average (`hwma`)](https://docs.openbacktesting.com/reference/indicators/hwma/index.md) | Smooth prices using recursively updated components such as level and trend. |
| [Ichimoku (`ichimoku`)](https://docs.openbacktesting.com/reference/indicators/ichimoku/index.md) | Provide conversion, base, and same-index cloud lines; no future extension or lagging line is output. |
| [Jurik-style Moving Average (`jma`)](https://docs.openbacktesting.com/reference/indicators/jma/index.md) | Examine price trends through adaptive smoothing; this implementation does not promise exact equivalence with other platforms. |
| [Kaufman Adaptive Moving Average (`kama`)](https://docs.openbacktesting.com/reference/indicators/kama/index.md) | Use the efficiency ratio to adjust smoothing speed and distinguish directional change from noise. |
| [Linear regression value (`linreg`)](https://docs.openbacktesting.com/reference/indicators/linreg/index.md) | Fit a rolling linear trend and read its regression value. offset selects position length-1-offset on the current window's fitted line, permitting negative extrapolation; it does not shift the result series, and length=1 remains invalid. |
| [Linear regression angle (`linregangle`)](https://docs.openbacktesting.com/reference/indicators/linregangle/index.md) | Convert the linear-regression slope to an angle. |
| [Linear regression intercept (`linregintercept`)](https://docs.openbacktesting.com/reference/indicators/linregintercept/index.md) | Output the intercept of the rolling linear fit. |
| [Linear regression slope (`linregslope`)](https://docs.openbacktesting.com/reference/indicators/linregslope/index.md) | Output the per-step slope of the rolling linear fit. |
| [Selectable moving average (`ma`)](https://docs.openbacktesting.com/reference/indicators/ma/index.md) | Compute a smoothed value using the specified moving-average type; available types are constrained by the parameter domain. |
| [Moving-average envelopes (`ma_envelopes`)](https://docs.openbacktesting.com/reference/indicators/ma_envelopes/index.md) | Set upper and lower bands at a fixed proportion on either side of the moving average. |
| [Mesa Adaptive Moving Average (`mama`)](https://docs.openbacktesting.com/reference/indicators/mama/index.md) | Adjust smoothing speed according to cycle-phase changes and provide a following moving average. |
| [Variable-period Moving Average (`mavp`)](https://docs.openbacktesting.com/reference/indicators/mavp/index.md) | Use a caller-supplied per-bar periods series to vary the moving-average window within the permitted range. |
| [McGinley Dynamic (`mcgd`)](https://docs.openbacktesting.com/reference/indicators/mcgd/index.md) | Adjust recursive smoothing according to the distance between price and the dynamic line. |
| [Median price (`medprice`)](https://docs.openbacktesting.com/reference/indicators/medprice/index.md) | Compute the high-low mean for subsequent price transformations and smoothing. |
| [Window midpoint (`midpoint`)](https://docs.openbacktesting.com/reference/indicators/midpoint/index.md) | Compute the midpoint of the maximum and minimum within a window of one input series. |
| [Window high-low midpoint (`midprice`)](https://docs.openbacktesting.com/reference/indicators/midprice/index.md) | Compute the midpoint of the highest high and lowest low within the window. |
| [Madrid moving-average ribbon (`mmar`)](https://docs.openbacktesting.com/reference/indicators/mmar/index.md) | Compute moving averages at different periods simultaneously to examine their ordering and spacing. |
| [OHLC average (`ohlc4`)](https://docs.openbacktesting.com/reference/indicators/ohlc4/index.md) | Compute the average of the four OHLC prices for use as a composite indicator input. |
| [Pascal Weighted Moving Average (`pwma`)](https://docs.openbacktesting.com/reference/indicators/pwma/index.md) | Smooth the window using Pascal triangle weights. |
| [Rainbow moving-average ribbon (`rainbow`)](https://docs.openbacktesting.com/reference/indicators/rainbow/index.md) | Repeatedly average the previous smoothing stage to output multiple moving-average layers. |
| [Wilder Moving Average (`rma`)](https://docs.openbacktesting.com/reference/indicators/rma/index.md) | Use a Wilder smoothing coefficient related to window length. |
| [Sine Weighted Moving Average (`sinwma`)](https://docs.openbacktesting.com/reference/indicators/sinwma/index.md) | Smooth window prices using sine weights. |
| [Simple Moving Average (`sma`)](https://docs.openbacktesting.com/reference/indicators/sma/index.md) | Compute the arithmetic mean of recent window prices with equal weight for each sample. |
| [Super Smoother Filter (`ssf`)](https://docs.openbacktesting.com/reference/indicators/ssf/index.md) | Use recursive filtering with the specified pole count to reduce high-frequency price fluctuations. |
| [Supertrend (`supertrend`)](https://docs.openbacktesting.com/reference/indicators/supertrend/index.md) | Construct trend-following levels from average true range, providing direction and long/short levels. |
| [Symmetric Weighted Moving Average (`swma`)](https://docs.openbacktesting.com/reference/indicators/swma/index.md) | Smooth the series with symmetric triangular weights; window length is configurable. |
| [T3 Moving Average (`t3`)](https://docs.openbacktesting.com/reference/indicators/t3/index.md) | Combine multistage EMAs with a volume factor to form a smoothed trendline. |
| [Triple Exponential Moving Average (`tema`)](https://docs.openbacktesting.com/reference/indicators/tema/index.md) | Combine first-, second-, and third-level EMAs to reduce smoothing lag. |
| [Triangular Moving Average (`trima`)](https://docs.openbacktesting.com/reference/indicators/trima/index.md) | Smooth prices using triangular weights. |
| [Time Series Forecast (`tsf`)](https://docs.openbacktesting.com/reference/indicators/tsf/index.md) | Compute a one-step-ahead forecast from window linear regression without reading future prices. |
| [Typical price (`typprice`)](https://docs.openbacktesting.com/reference/indicators/typprice/index.md) | Average high, low, and close into a single channel. |
| [Variable Index Dynamic Average (`vidya`)](https://docs.openbacktesting.com/reference/indicators/vidya/index.md) | Adjust the EMA smoothing coefficient using relative momentum. |
| [Volume Weighted Average Price (`vwap`)](https://docs.openbacktesting.com/reference/indicators/vwap/index.md) | Accumulate price and volume within groups defined by the datetime index; exchange sessions are not inferred automatically. |
| [Volume Weighted Moving Average (`vwma`)](https://docs.openbacktesting.com/reference/indicators/vwma/index.md) | Weight prices by volume within a rolling window. |
| [Weighted Close Price (`wcp`)](https://docs.openbacktesting.com/reference/indicators/wcp/index.md) | Compute the weighted average of high, low, and twice the close. |
| [Linear Weighted Moving Average (`wma`)](https://docs.openbacktesting.com/reference/indicators/wma/index.md) | Apply linear weights to window prices. |
| [Zero-lag Moving Average (`zlma`)](https://docs.openbacktesting.com/reference/indicators/zlma/index.md) | Apply lag compensation before smoothing to examine a faster-responding trend value. |

<a id="performance"></a>

## Returns and drawdowns

| Indicator | Use |
| --- | --- |
| [Drawdown series (`drawdown`)](https://docs.openbacktesting.com/reference/indicators/drawdown/index.md) | Compute price drawdown relative to historical peaks, outputting channels at different scales. |
| [Log return (`log_return`)](https://docs.openbacktesting.com/reference/indicators/log_return/index.md) | Compute the logarithm of price ratios, optionally cumulatively. |
| [Fractional return (`percent_return`)](https://docs.openbacktesting.com/reference/indicators/percent_return/index.md) | Compute relative price changes, optionally cumulatively; the output definition determines the precise scale. |

<a id="statistics"></a>

## Statistics

| Indicator | Use |
| --- | --- |
| [Rolling beta (`beta`)](https://docs.openbacktesting.com/reference/indicators/beta/index.md) | Compare joint changes of price and a benchmark series; the caller must supply a benchmark on the same calendar. |
| [Rolling correlation (`correl`)](https://docs.openbacktesting.com/reference/indicators/correl/index.md) | Measure linear correlation between two price series on the same calendar. |
| [Rolling entropy (`entropy`)](https://docs.openbacktesting.com/reference/indicators/entropy/index.md) | Compute information content from the relative distribution within the window to examine distribution changes. |
| [Rolling kurtosis (`kurtosis`)](https://docs.openbacktesting.com/reference/indicators/kurtosis/index.md) | Measure tail and peak characteristics of the window distribution. |
| [Mean Absolute Deviation (`mad`)](https://docs.openbacktesting.com/reference/indicators/mad/index.md) | Compute the mean absolute deviation of window samples from their mean. |
| [Mean Deviation (`md`)](https://docs.openbacktesting.com/reference/indicators/md/index.md) | Compute the mean absolute deviation of window samples from their mean; the current implementation calls MAD. |
| [Rolling median (`median`)](https://docs.openbacktesting.com/reference/indicators/median/index.md) | Read the middle of the window distribution to reduce the influence of extreme values. |
| [Mode of finite observations (`mode`)](https://docs.openbacktesting.com/reference/indicators/mode/index.md) | Return the mode of the most recent length finite observations; ties choose the smallest, non-finite values are skipped, and missing rows retain the result after the window fills. |
| [Rolling quantile (`quantile`)](https://docs.openbacktesting.com/reference/indicators/quantile/index.md) | Read the window statistic at the quantile specified by the parameter. |
| [Rolling skewness (`skew`)](https://docs.openbacktesting.com/reference/indicators/skew/index.md) | Measure asymmetry of the window distribution. |
| [Standard error of the mean (`stderr`)](https://docs.openbacktesting.com/reference/indicators/stderr/index.md) | Estimate uncertainty of the mean using sample standard deviation and window length. |
| [Rolling standard deviation (`stdev`)](https://docs.openbacktesting.com/reference/indicators/stdev/index.md) | Measure dispersion of window prices; the parameter determines degrees of freedom. |
| [Rolling variance (`variance`)](https://docs.openbacktesting.com/reference/indicators/variance/index.md) | Compute window dispersion on a squared scale. |
| [Rolling z-score (`zscore`)](https://docs.openbacktesting.com/reference/indicators/zscore/index.md) | Standardize price deviation using the mean and standard deviation. |

<a id="trend"></a>

## Trend

| Indicator | Use |
| --- | --- |
| [Average Directional Index (`adx`)](https://docs.openbacktesting.com/reference/indicators/adx/index.md) | Smooth directional-movement strength and provide positive and negative direction channels; strength itself does not denote direction. |
| [Average Directional Index Rating (`adxr`)](https://docs.openbacktesting.com/reference/indicators/adxr/index.md) | Combine current and lagged ADX to further smooth trend strength. |
| [Archer Moving Average Trend (`amat`)](https://docs.openbacktesting.com/reference/indicators/amat/index.md) | Compare changes in fast and slow moving averages to output bullish and bearish trend states. |
| [Aroon (`aroon`)](https://docs.openbacktesting.com/reference/indicators/aroon/index.md) | Measure the time since recent highs and lows, outputting up, down, and difference channels. |
| [ATR trailing stop (`atr_stop`)](https://docs.openbacktesting.com/reference/indicators/atr_stop/index.md) | Recursively compute stop levels from price and ATR and output directional states. |
| [Choppiness Index (`chop`)](https://docs.openbacktesting.com/reference/indicators/chop/index.md) | Combine cumulative true range with the price range to distinguish trending and ranging characteristics. |
| [Chande Kroll Stop (`cksp`)](https://docs.openbacktesting.com/reference/indicators/cksp/index.md) | Form long and short reference stop levels from price extremes and volatility. |
| [Central Pivot Range (`cpr`)](https://docs.openbacktesting.com/reference/indicators/cpr/index.md) | Compute the pivot and support/resistance using only the previous input bar; no cross-timeframe aggregation is automatic. |
| [Signal decay (`decay`)](https://docs.openbacktesting.com/reference/indicators/decay/index.md) | Propagate historical signals forward using the selected decay mode. |
| [Decreasing test (`decreasing`)](https://docs.openbacktesting.com/reference/indicators/decreasing/index.md) | Test whether input decreases over the specified period, optionally requiring consecutive decreases. |
| [Detrended Price Oscillator (`dpo`)](https://docs.openbacktesting.com/reference/indicators/dpo/index.md) | Remove the moving-average trend; the current mode is fixed as non-centered and without lookahead. |
| [Directional Index (`dx`)](https://docs.openbacktesting.com/reference/indicators/dx/index.md) | Compute trend strength from the relative difference between positive and negative directional movement. |
| [Exponential decay (`edecay`)](https://docs.openbacktesting.com/reference/indicators/edecay/index.md) | Recursively decay historical series values while remaining constrained by the current input. |
| [Increasing test (`increasing`)](https://docs.openbacktesting.com/reference/indicators/increasing/index.md) | Test whether input increases over the specified period, optionally requiring consecutive increases. |
| [Long trend phase (`long_run`)](https://docs.openbacktesting.com/reference/indicators/long_run/index.md) | Identify bullish phases from rising and falling relationships of fast and slow series. |
| [Negative directional movement (`minus_dm`)](https://docs.openbacktesting.com/reference/indicators/minus_dm/index.md) | Smooth downward directional movement; it is not yet normalized into the negative directional index. |
| [Confirmed period pivots (`pivot_points`)](https://docs.openbacktesting.com/reference/indicators/pivot_points/index.md) | Compute support and resistance from the previous complete period marked by explicit anchor values; Woodie additionally uses the new period's open. developing=True outputs cumulative levels for the current anchored interval; the first anchor bar is immediately available, invalid OHLC contaminates values until the next anchor, and Woodie forbids developing. |
| [Confirmed pivot high (`pivothigh`)](https://docs.openbacktesting.com/reference/indicators/pivothigh/index.md) | Output the high, original position, and confirmation position after the right window completes; do not backfill the original high. |
| [Confirmed pivot low (`pivotlow`)](https://docs.openbacktesting.com/reference/indicators/pivotlow/index.md) | Output the low, original position, and confirmation position after the right window completes; do not backfill the original low. |
| [Positive directional movement (`plus_dm`)](https://docs.openbacktesting.com/reference/indicators/plus_dm/index.md) | Smooth upward directional movement; it is not yet normalized into the positive directional index. |
| [Price Maximizer stop (`pmax`)](https://docs.openbacktesting.com/reference/indicators/pmax/index.md) | Combine moving averages and true range to generate dynamic trend reference levels. |
| [Parabolic SAR (`psar`)](https://docs.openbacktesting.com/reference/indicators/psar/index.md) | Recursively track trends and reversals, providing long/short levels, acceleration factors, and reversal flags. |
| [Qstick (`qstick`)](https://docs.openbacktesting.com/reference/indicators/qstick/index.md) | Smooth the close-minus-open difference to examine the average candle-body direction. |
| [Extended Parabolic SAR (`sarext`)](https://docs.openbacktesting.com/reference/indicators/sarext/index.md) | Control acceleration parameters separately for long and short phases. |
| [Short trend phase (`short_run`)](https://docs.openbacktesting.com/reference/indicators/short_run/index.md) | Identify bearish phases from directional changes of fast and slow series. |
| [Trend events (`tsignals`)](https://docs.openbacktesting.com/reference/indicators/tsignals/index.md) | Convert input trend states into trading changes, entry events, and exit events. |
| [TTM Trend (`ttm_trend`)](https://docs.openbacktesting.com/reference/indicators/ttm_trend/index.md) | Compare the close with recent average price levels to provide trend direction. |
| [Vertical Horizontal Filter (`vhf`)](https://docs.openbacktesting.com/reference/indicators/vhf/index.md) | Compare the price range with cumulative changes to examine concentration of directional movement. |
| [Volatility trailing stop (`volatility_stop`)](https://docs.openbacktesting.com/reference/indicators/volatility_stop/index.md) | Recursively compute stops from volatility and direction; output starts on the bar after the first reversal, without historical backfilling. |
| [Vortex Indicator (`vortex`)](https://docs.openbacktesting.com/reference/indicators/vortex/index.md) | Measure positive and negative trend movement separately. |
| [Threshold-crossing events (`xsignals`)](https://docs.openbacktesting.com/reference/indicators/xsignals/index.md) | Convert input signal threshold crossings into trend, entry, and exit events. |

<a id="utility"></a>

## Series utilities

| Indicator | Use |
| --- | --- |
| [Bars since condition (`barssince`)](https://docs.openbacktesting.com/reference/indicators/barssince/index.md) | Count bars since the most recent true condition; no valid result exists before the first occurrence. |
| [Interval change (`change`)](https://docs.openbacktesting.com/reference/indicators/change/index.md) | Compute the difference between the current input and the value at the specified historical interval. |
| [Bidirectional crossover series (`cross`)](https://docs.openbacktesting.com/reference/indicators/cross/index.md) | Mark crossings in either direction between the previous and current bars, returning a historical series. |
| [Crossover series (`crossover`)](https://docs.openbacktesting.com/reference/indicators/crossover/index.md) | Mark a crossover when the current left value exceeds the right and the previous left value was less than or equal to the right; return a historical series. |
| [Crossunder series (`crossunder`)](https://docs.openbacktesting.com/reference/indicators/crossunder/index.md) | Mark a crossunder when the current left value is below the right and the previous left value was greater than or equal to the right; return a historical series. |
| [Cumulative sum (`cum`)](https://docs.openbacktesting.com/reference/indicators/cum/index.md) | Accumulate inputs in historical order; missing positions have no valid output, and subsequent valid values continue the prior total. |
| [Below preceding window test (`falling`)](https://docs.openbacktesting.com/reference/indicators/falling/index.md) | Test whether the current value is strictly below the minimum of the preceding length bars; consecutive falls are not required. |
| [Window highest value (`highest`)](https://docs.openbacktesting.com/reference/indicators/highest/index.md) | Read the maximum valid value within the recent fixed window. |
| [Highest-value position (`highestbars`)](https://docs.openbacktesting.com/reference/indicators/highestbars/index.md) | Return the non-positive bar offset of the window maximum relative to the current bar; ties choose the rightmost position. |
| [Window lowest value (`lowest`)](https://docs.openbacktesting.com/reference/indicators/lowest/index.md) | Read the minimum valid value within the recent fixed window. |
| [Lowest-value position (`lowestbars`)](https://docs.openbacktesting.com/reference/indicators/lowestbars/index.md) | Return the non-positive bar offset of the window minimum relative to the current bar; ties choose the rightmost position. |
| [Interpolated percentile (`percentile_linear_interpolation`)](https://docs.openbacktesting.com/reference/indicators/percentile_linear_interpolation/index.md) | Compute the specified window percentile using linear interpolation. |
| [Nearest-rank percentile (`percentile_nearest_rank`)](https://docs.openbacktesting.com/reference/indicators/percentile_nearest_rank/index.md) | Read the specified window percentile using the nearest-rank rule. |
| [Percentile rank (`percentrank`)](https://docs.openbacktesting.com/reference/indicators/percentrank/index.md) | Measure the current input's relative rank within the window. |
| [Window range (`range`)](https://docs.openbacktesting.com/reference/indicators/range/index.md) | Compute the difference between the window maximum and minimum. |
| [Above preceding window test (`rising`)](https://docs.openbacktesting.com/reference/indicators/rising/index.md) | Test whether the current value strictly exceeds the maximum of the preceding length bars; consecutive rises are not required. |
| [Condition count (`rolling_count`)](https://docs.openbacktesting.com/reference/indicators/rolling_count/index.md) | Count how often the condition holds within the window. |
| [Rolling sum (`rolling_sum`)](https://docs.openbacktesting.com/reference/indicators/rolling_sum/index.md) | Compute the input sum within the recent fixed window. |
| [Running maximum (`running_max`)](https://docs.openbacktesting.com/reference/indicators/running_max/index.md) | Recursively record the largest value observed in history. |
| [Running minimum (`running_min`)](https://docs.openbacktesting.com/reference/indicators/running_min/index.md) | Recursively record the smallest value observed in history. |
| [Historical shift (`shift`)](https://docs.openbacktesting.com/reference/indicators/shift/index.md) | Read input from the specified number of bars ago; future shifts are unavailable. |
| [Condition-event value (`valuewhen`)](https://docs.openbacktesting.com/reference/indicators/valuewhen/index.md) | Return the input at the specified historical occurrence of a true condition; unconfirmed events are not written back into the past. |

<a id="volatility"></a>

## Volatility

| Indicator | Use |
| --- | --- |
| [Aberration volatility channel (`aberration`)](https://docs.openbacktesting.com/reference/indicators/aberration/index.md) | Construct upper and lower channels around smoothed prices and output true range. |
| [Acceleration Bands (`accbands`)](https://docs.openbacktesting.com/reference/indicators/accbands/index.md) | Adjust upper and lower envelopes using the price range, then smooth them. |
| [Average intrabar range (`adr`)](https://docs.openbacktesting.com/reference/indicators/adr/index.md) | Average the input bars' high-low ranges; non-daily input is not automatically converted to daily data. |
| [Average True Range (`atr`)](https://docs.openbacktesting.com/reference/indicators/atr/index.md) | Smooth true ranges including gap effects to measure the scale of volatility. |
| [Annualized historical volatility (`avolume`)](https://docs.openbacktesting.com/reference/indicators/avolume/index.md) | Scale the population standard deviation of log returns by a fixed annualization factor; this is not a volume indicator. |
| [Bollinger Bands (`bbands`)](https://docs.openbacktesting.com/reference/indicators/bbands/index.md) | Construct upper and lower bands around a moving average using standard deviation, providing bandwidth and relative position. |
| [Chandelier Exit (`ce`)](https://docs.openbacktesting.com/reference/indicators/ce/index.md) | Form long and short exit reference levels from price extremes and ATR. |
| [Chaikin Volatility (`cvi`)](https://docs.openbacktesting.com/reference/indicators/cvi/index.md) | Examine the rate of change of the smoothed high-low range. |
| [Donchian Channel (`donchian`)](https://docs.openbacktesting.com/reference/indicators/donchian/index.md) | Read the rolling highest high and lowest low and provide the channel midpoint. |
| [Historical volatility (`hvol`)](https://docs.openbacktesting.com/reference/indicators/hvol/index.md) | Compute annualized standard deviation of window log returns. |
| [Holt-Winters Channel (`hwc`)](https://docs.openbacktesting.com/reference/indicators/hwc/index.md) | Construct upper and lower channels around Holt-Winters smoothed values. |
| [Keltner Channel (`kc`)](https://docs.openbacktesting.com/reference/indicators/kc/index.md) | Construct channels around a moving average using price range or true range. use_true_range=False uses smoothed H-L ranges; it does not change the price moving average or ATR, and all parameters still follow the fixed backend. |
| [Mass Index (`massi`)](https://docs.openbacktesting.com/reference/indicators/massi/index.md) | Examine range expansion through a smoothed ratio of high-low ranges. |
| [Normalized Average True Range (`natr`)](https://docs.openbacktesting.com/reference/indicators/natr/index.md) | Normalize ATR by the price scale to compare relative volatility. |
| [Price distance (`pdist`)](https://docs.openbacktesting.com/reference/indicators/pdist/index.md) | Combine OHLC movement distances to examine current-bar price activity. |
| [Relative Volatility Index (`rvi`)](https://docs.openbacktesting.com/reference/indicators/rvi/index.md) | Accumulate volatility according to rising and falling directions; this differs from relative vigor RVGI. |
| [STARC Bands (`starc`)](https://docs.openbacktesting.com/reference/indicators/starc/index.md) | Use a moving average as the center and ATR multiples for upper and lower bands. |
| [Elder Thermometer (`thermo`)](https://docs.openbacktesting.com/reference/indicators/thermo/index.md) | Examine the intensity of high and low price changes, providing temperature, smoothing, and threshold states. |
| [True Range (`true_range`)](https://docs.openbacktesting.com/reference/indicators/true_range/index.md) | Take the maximum of the high-low range and gap ranges relative to the previous close. With handle_na=True, a missing previous close falls back to H-L and the current Close may be missing; non-finite or inverted H/L is invalid. The default retains the previous output. |
| [Ulcer Index (`ui`)](https://docs.openbacktesting.com/reference/indicators/ui/index.md) | Measure downside volatility using mean squared drawdown, assigning greater weight to larger drawdowns. |

<a id="volume"></a>

## Volume

| Indicator | Use |
| --- | --- |
| [Accumulation/Distribution Line (`ad`)](https://docs.openbacktesting.com/reference/indicators/ad/index.md) | Allocate volume according to the close's position within the high-low range and accumulate the result. |
| [Chaikin Accumulation/Distribution Oscillator (`adosc`)](https://docs.openbacktesting.com/reference/indicators/adosc/index.md) | Compute the difference between fast and slow smoothed accumulation/distribution values. |
| [Archer On-Balance Volume (`aobv`)](https://docs.openbacktesting.com/reference/indicators/aobv/index.md) | Add moving averages, range extremes, and trend states to OBV. |
| [Chaikin Money Flow (`cmf`)](https://docs.openbacktesting.com/reference/indicators/cmf/index.md) | Combine the close's range position with volume to measure the window's money-flow tendency. |
| [Elder Force Index (`efi`)](https://docs.openbacktesting.com/reference/indicators/efi/index.md) | Combine price change and volume to measure the force of price movement. |
| [Raw Ease of Movement (`emv`)](https://docs.openbacktesting.com/reference/indicators/emv/index.md) | Measure the relationship between price-range movement and volume without subsequent smoothing. |
| [Smoothed Ease of Movement (`eom`)](https://docs.openbacktesting.com/reference/indicators/eom/index.md) | Smooth the relationship between price movement and volume to examine relative ease of movement. |
| [Intraday Intensity Index (`iii`)](https://docs.openbacktesting.com/reference/indicators/iii/index.md) | Combine the close's range position with volume to describe intraday pressure. |
| [Klinger Volume Oscillator (`kvo`)](https://docs.openbacktesting.com/reference/indicators/kvo/index.md) | Combine price and volume changes, providing a main line and signal line. |
| [Market Facilitation Index (`marketfi`)](https://docs.openbacktesting.com/reference/indicators/marketfi/index.md) | Measure the high-low range per unit of volume; this differs from the money-flow MFI. |
| [Money Flow Index (`mfi`)](https://docs.openbacktesting.com/reference/indicators/mfi/index.md) | Combine typical price and volume to compare positive and negative money flow. |
| [Negative Volume Index (`nvi`)](https://docs.openbacktesting.com/reference/indicators/nvi/index.md) | Update the index by price ratios when volume falls; missing values preserve internal state. |
| [On-Balance Volume (`obv`)](https://docs.openbacktesting.com/reference/indicators/obv/index.md) | Accumulate volume according to whether prices rise or fall. |
| [Positive Volume Index (`pvi`)](https://docs.openbacktesting.com/reference/indicators/pvi/index.md) | Update the index by price ratios when volume rises; missing values preserve internal state. |
| [Price-volume product (`pvol`)](https://docs.openbacktesting.com/reference/indicators/pvol/index.md) | Compute the product of price and volume with optional directional handling. |
| [Price Volume Rank (`pvr`)](https://docs.openbacktesting.com/reference/indicators/pvr/index.md) | Assign categorical ranks to combinations of rising/falling price and volume. |
| [Price Volume Trend (`pvt`)](https://docs.openbacktesting.com/reference/indicators/pvt/index.md) | Weight volume by the price rate of change and accumulate it. |
| [Relative volume (`rvol`)](https://docs.openbacktesting.com/reference/indicators/rvol/index.md) | Compare current volume with recent average volume. |
| [Volume Flow Indicator (`vfi`)](https://docs.openbacktesting.com/reference/indicators/vfi/index.md) | Combine a price-change threshold with volume to examine money-flow direction. |
| [Volume Oscillator (`vosc`)](https://docs.openbacktesting.com/reference/indicators/vosc/index.md) | Normalize the fast-minus-slow volume moving-average difference by the slow average. |
| [Williams Accumulation/Distribution (`wad`)](https://docs.openbacktesting.com/reference/indicators/wad/index.md) | Accumulate directional pressure from price changes relative to the previous close. |
| [Williams Variable Accumulation/Distribution (`wvad`)](https://docs.openbacktesting.com/reference/indicators/wvad/index.md) | Weight volume by the open-close change relative to the high-low range. |

## Unavailable entries

These names cannot be called; their pages explain the boundary.

- [ta.cdl_pattern](https://docs.openbacktesting.com/reference/indicators/cdl_pattern/index.md): Pattern recognition is deferred within the approved scope; scores, warmup, confirmation delay, and native dispatch require separate approval before exposure.
- [ta.tos_stdevall](https://docs.openbacktesting.com/reference/indicators/tos_stdevall/index.md): Apply polyfit and standard deviation to the entire selected sample; historical outputs depend on later samples and require a causal definition before exposure.
- [ta.vp](https://docs.openbacktesting.com/reference/indicators/vp/index.md): Volume Profile bins output by price, with width rows; it is not a market-data time series.
