docs: rewrite pinescript.md with all 396 .pine indicators

Complete rewrite of docs/pinescript.md to include every .pine file
organized by category (core, FIR trends, IIR trends, filters,
oscillators, dynamics, momentum, volatility, volume, channels,
cycles, reversals, forecasts, statistics, numerics, errors).
Previously listed ~120 indicators with many missing categories.
This commit is contained in:
Miha Kralj
2026-03-12 14:20:41 -07:00
parent 8f387e72b8
commit 107f64c7c6
+469 -135
View File
@@ -6,13 +6,13 @@
You are here because you want an indicator on your TradingView chart. Maybe someone on Crypto Twitter posted a screenshot with colored lines and you thought "I need that." Maybe you googled "best RSI Pine Script" at 2 AM. Maybe you clicked a link by accident. All valid paths to enlightenment. You are here because you want an indicator on your TradingView chart. Maybe someone on Crypto Twitter posted a screenshot with colored lines and you thought "I need that." Maybe you googled "best RSI Pine Script" at 2 AM. Maybe you clicked a link by accident. All valid paths to enlightenment.
Here is the good news: QuanTAlib provides **Pine Script v6 source code** for every one of its 393 indicators. Each script is self-contained, tested against the C# reference implementation, and ready to paste into TradingView's Pine Editor. No dependencies. No imports. No subscription to someone's Discord. Here is the good news: QuanTAlib provides **Pine Script v6 source code** for every one of its 396 indicators. Each script is self-contained, tested against the C# reference implementation, and ready to paste into TradingView's Pine Editor. No dependencies. No imports. No subscription to someone's Discord.
Here is the less-good news: the scripts contain actual mathematics. You do not have to read it. But it is there, silently judging. Here is the less-good news: the scripts contain actual mathematics. You do not have to read it. But it is there, silently judging.
## How to Use a Pine Script (The Short Version) ## How to Use a Pine Script (The Short Version)
1. Find the indicator you want (see table below) 1. Find the indicator you want (see tables below)
2. Click the link to open the `.pine` file 2. Click the link to open the `.pine` file
3. Copy the entire file contents 3. Copy the entire file contents
4. Open TradingView. Click "Pine Editor" at the bottom 4. Open TradingView. Click "Pine Editor" at the bottom
@@ -39,19 +39,23 @@ lib/
Pick your category. Find your indicator. Click the `.pine` link. Copy. Paste. Done. Pick your category. Find your indicator. Click the `.pine` link. Copy. Paste. Done.
---
#### Core (price transforms) #### Core (price transforms)
These turn OHLC data into derived price series. If you do not know what "typical price" means, you probably want `close` instead. These turn OHLC data into derived price series. If you do not know what "typical price" means, you probably want `close` instead.
| Indicator | What It Does | Pine Script | | Indicator | What It Does | Pine Script |
| :--- | :--- | :--- | | :--- | :--- | :--- |
| AVGPRICE | Average of OHLC | [avgprice.pine](../lib/core/avgprice/avgprice.pine) | | AVGPRICE | Average Price | [avgprice.pine](../lib/core/avgprice/avgprice.pine) |
| HA | Heikin-Ashi candles | [ha.pine](../lib/core/ha/ha.pine) | | HA | Heikin-Ashi | [ha.pine](../lib/core/ha/ha.pine) |
| MEDPRICE | Median of high and low | [medprice.pine](../lib/core/medprice/medprice.pine) | | MEDPRICE | Median Price | [medprice.pine](../lib/core/medprice/medprice.pine) |
| MIDPOINT | Midpoint of highest and lowest | [midpoint.pine](../lib/core/midpoint/midpoint.pine) | | MIDPOINT | Rolling Range Midpoint | [midpoint.pine](../lib/core/midpoint/midpoint.pine) |
| MIDPRICE | Midpoint of high and low | [midprice.pine](../lib/core/midprice/midprice.pine) | | MIDPRICE | Midpoint Price | [midprice.pine](../lib/core/midprice/midprice.pine) |
| TYPPRICE | Typical price: (H+L+C)/3 | [typprice.pine](../lib/core/typprice/typprice.pine) | | TYPPRICE | Typical Price | [typprice.pine](../lib/core/typprice/typprice.pine) |
| WCLPRICE | Weighted close: (H+L+2C)/4 | [wclprice.pine](../lib/core/wclprice/wclprice.pine) | | WCLPRICE | Weighted Close Price | [wclprice.pine](../lib/core/wclprice/wclprice.pine) |
---
#### Moving Averages: FIR (the "simple" ones) #### Moving Averages: FIR (the "simple" ones)
@@ -59,39 +63,41 @@ FIR stands for Finite Impulse Response. It means the average uses a fixed window
| Indicator | What It Does | Pine Script | | Indicator | What It Does | Pine Script |
| :--- | :--- | :--- | | :--- | :--- | :--- |
| SMA | Simple Moving Average (the one everyone knows) | [sma.pine](../lib/trends_FIR/sma/sma.pine) | | ALMA | Arnaud Legoux MA | [alma.pine](../lib/trends_FIR/alma/alma.pine) |
| WMA | Weighted Moving Average | [wma.pine](../lib/trends_FIR/wma/wma.pine) | | BLMA | Blackman Window MA | [blma.pine](../lib/trends_FIR/blma/blma.pine) |
| HMA | Hull Moving Average (fast, smooth) | [hma.pine](../lib/trends_FIR/hma/hma.pine) | | BWMA | Bessel-Weighted MA | [bwma.pine](../lib/trends_FIR/bwma/bwma.pine) |
| ALMA | Arnaud Legoux MA (offset + sigma tuning) | [alma.pine](../lib/trends_FIR/alma/alma.pine) | | CONV | Convolution MA | [conv.pine](../lib/trends_FIR/conv/conv.pine) |
| TRIMA | Triangular Moving Average | [trima.pine](../lib/trends_FIR/trima/trima.pine) | | CRMA | Cubic Regression MA | [crma.pine](../lib/trends_FIR/crma/crma.pine) |
| LSMA | Least Squares (linear regression line) | [lsma.pine](../lib/trends_FIR/lsma/lsma.pine) | | DWMA | Double Weighted MA | [dwma.pine](../lib/trends_FIR/dwma/dwma.pine) |
| FWMA | Fibonacci Weighted MA | [fwma.pine](../lib/trends_FIR/fwma/fwma.pine) | | FWMA | Fibonacci Weighted MA | [fwma.pine](../lib/trends_FIR/fwma/fwma.pine) |
| GWMA | Gaussian Weighted MA | [gwma.pine](../lib/trends_FIR/gwma/gwma.pine) | | GWMA | Gaussian Weighted MA | [gwma.pine](../lib/trends_FIR/gwma/gwma.pine) |
| SWMA | Symmetric Weighted MA | [swma.pine](../lib/trends_FIR/swma/swma.pine) |
| DWMA | Double Weighted MA | [dwma.pine](../lib/trends_FIR/dwma/dwma.pine) |
| SINEMA | Sine-Weighted MA | [sinema.pine](../lib/trends_FIR/sinema/sinema.pine) |
| HANMA | Hann-Weighted MA | [hanma.pine](../lib/trends_FIR/hanma/hanma.pine) |
| PARZEN | Parzen-Weighted MA | [parzen.pine](../lib/trends_FIR/parzen/parzen.pine) |
| SGMA | Savitzky-Golay MA | [sgma.pine](../lib/trends_FIR/sgma/sgma.pine) |
| TSF | Time Series Forecast | [tsf.pine](../lib/trends_FIR/tsf/tsf.pine) |
| BLMA | Blackman MA | [blma.pine](../lib/trends_FIR/blma/blma.pine) |
| PWMA | Pascal Weighted MA | [pwma.pine](../lib/trends_FIR/pwma/pwma.pine) |
| NLMA | Non-Linear MA | [nlma.pine](../lib/trends_FIR/nlma/nlma.pine) |
| ILRS | Integral of Linear Regression Slope | [ilrs.pine](../lib/trends_FIR/ilrs/ilrs.pine) |
| HAMMA | Hamming MA | [hamma.pine](../lib/trends_FIR/hamma/hamma.pine) | | HAMMA | Hamming MA | [hamma.pine](../lib/trends_FIR/hamma/hamma.pine) |
| KAISER | Kaiser-Windowed MA | [kaiser.pine](../lib/trends_FIR/kaiser/kaiser.pine) | | HANMA | Hanning MA | [hanma.pine](../lib/trends_FIR/hanma/hanma.pine) |
| LANCZOS | Lanczos MA | [lanczos.pine](../lib/trends_FIR/lanczos/lanczos.pine) | | HEND | Henderson Moving Average | [hend.pine](../lib/trends_FIR/hend/hend.pine) |
| PMA | Polynomial MA | [pma.pine](../lib/trends_FIR/pma/pma.pine) | | HMA | Hull MA | [hma.pine](../lib/trends_FIR/hma/hma.pine) |
| ILRS | Integral of LinReg Slope | [ilrs.pine](../lib/trends_FIR/ilrs/ilrs.pine) |
| KAISER | Kaiser Window MA | [kaiser.pine](../lib/trends_FIR/kaiser/kaiser.pine) |
| LANCZOS | Lanczos (sinc) Window MA | [lanczos.pine](../lib/trends_FIR/lanczos/lanczos.pine) |
| LSMA | Least Squares MA | [lsma.pine](../lib/trends_FIR/lsma/lsma.pine) |
| NLMA | Non-Lag MA | [nlma.pine](../lib/trends_FIR/nlma/nlma.pine) |
| NYQMA | Nyquist MA | [nyqma.pine](../lib/trends_FIR/nyqma/nyqma.pine) | | NYQMA | Nyquist MA | [nyqma.pine](../lib/trends_FIR/nyqma/nyqma.pine) |
| QRMA | QR Decomposition MA | [qrma.pine](../lib/trends_FIR/qrma/qrma.pine) | | PARZEN | Parzen Window MA | [parzen.pine](../lib/trends_FIR/parzen/parzen.pine) |
| PMA | Predictive Moving Average | [pma.pine](../lib/trends_FIR/pma/pma.pine) |
| PWMA | Pascal Weighted MA | [pwma.pine](../lib/trends_FIR/pwma/pwma.pine) |
| QRMA | Quadratic Regression MA | [qrma.pine](../lib/trends_FIR/qrma/qrma.pine) |
| RAIN | Rainbow MA | [rain.pine](../lib/trends_FIR/rain/rain.pine) |
| RWMA | Range Weighted MA | [rwma.pine](../lib/trends_FIR/rwma/rwma.pine) | | RWMA | Range Weighted MA | [rwma.pine](../lib/trends_FIR/rwma/rwma.pine) |
| HEND | Henderson MA | [hend.pine](../lib/trends_FIR/hend/hend.pine) | | SGMA | Savitzky-Golay MA | [sgma.pine](../lib/trends_FIR/sgma/sgma.pine) |
| CONV | Convolution (custom kernel) | [conv.pine](../lib/trends_FIR/conv/conv.pine) | | SINEMA | Sine Weighted MA | [sinema.pine](../lib/trends_FIR/sinema/sinema.pine) |
| BWMA | Butterworth-Weighted MA | [bwma.pine](../lib/trends_FIR/bwma/bwma.pine) | | SMA | Simple MA | [sma.pine](../lib/trends_FIR/sma/sma.pine) |
| CRMA | Crowley MA | [crma.pine](../lib/trends_FIR/crma/crma.pine) | | SP15 | Spencer's 15-Point MA | [sp15.pine](../lib/trends_FIR/sp15/sp15.pine) |
| SP15 | SP-15 MA | [sp15.pine](../lib/trends_FIR/sp15/sp15.pine) | | SWMA | Symmetric Weighted MA | [swma.pine](../lib/trends_FIR/swma/swma.pine) |
| TUKEY_W | Tukey-Windowed MA | [tukey_w.pine](../lib/trends_FIR/tukey_w/tukey_w.pine) | | TRIMA | Triangular MA | [trima.pine](../lib/trends_FIR/trima/trima.pine) |
| RAIN | RAIN MA | [rain.pine](../lib/trends_FIR/rain/rain.pine) | | TSF | Time Series Forecast | [tsf.pine](../lib/trends_FIR/tsf/tsf.pine) |
| TUKEY_W | Tukey (Tapered Cosine) Window MA | [tukey_w.pine](../lib/trends_FIR/tukey_w/tukey_w.pine) |
| WMA | Weighted MA | [wma.pine](../lib/trends_FIR/wma/wma.pine) |
---
#### Moving Averages: IIR (the "smart" ones) #### Moving Averages: IIR (the "smart" ones)
@@ -99,42 +105,90 @@ IIR stands for Infinite Impulse Response. These use recursive feedback: the prev
| Indicator | What It Does | Pine Script | | Indicator | What It Does | Pine Script |
| :--- | :--- | :--- | | :--- | :--- | :--- |
| EMA | Exponential MA (the popular one) | [ema.pine](../lib/trends_IIR/ema/ema.pine) |
| DEMA | Double EMA (less lag) | [dema.pine](../lib/trends_IIR/dema/dema.pine) |
| TEMA | Triple EMA (even less lag) | [tema.pine](../lib/trends_IIR/tema/tema.pine) |
| T3 | Tillson T3 (six-stage cascade) | [t3.pine](../lib/trends_IIR/t3/t3.pine) |
| JMA | Jurik MA (adaptive, low noise) | [jma.pine](../lib/trends_IIR/jma/jma.pine) |
| KAMA | Kaufman Adaptive MA | [kama.pine](../lib/trends_IIR/kama/kama.pine) |
| VIDYA | Variable Index Dynamic Average | [vidya.pine](../lib/trends_IIR/vidya/vidya.pine) |
| FRAMA | Fractal Adaptive MA | [frama.pine](../lib/trends_IIR/frama/frama.pine) |
| MAMA | MESA Adaptive MA (Ehlers) | [mama.pine](../lib/trends_IIR/mama/mama.pine) |
| HOLT | Holt Exponential Smoothing | [holt.pine](../lib/trends_IIR/holt/holt.pine) |
| HWMA | Holt-Winters MA | [hwma.pine](../lib/trends_IIR/hwma/hwma.pine) |
| RMA | Wilder's MA (used inside RSI) | [rma.pine](../lib/trends_IIR/rma/rma.pine) |
| ZLEMA | Zero-Lag EMA | [zlema.pine](../lib/trends_IIR/zlema/zlema.pine) |
| ZLDEMA | Zero-Lag Double EMA | [zldema.pine](../lib/trends_IIR/zldema/zldema.pine) |
| ZLTEMA | Zero-Lag Triple EMA | [zltema.pine](../lib/trends_IIR/zltema/zltema.pine) |
| MGDI | McGinley Dynamic | [mgdi.pine](../lib/trends_IIR/mgdi/mgdi.pine) |
| LEMA | Leader EMA | [lema.pine](../lib/trends_IIR/lema/lema.pine) |
| HEMA | Hull EMA | [hema.pine](../lib/trends_IIR/hema/hema.pine) |
| GDEMA | Generalized Double EMA | [gdema.pine](../lib/trends_IIR/gdema/gdema.pine) |
| DSMA | Deviation-Scaled MA | [dsma.pine](../lib/trends_IIR/dsma/dsma.pine) |
| CORAL | Coral Trend Filter | [coral.pine](../lib/trends_IIR/coral/coral.pine) |
| AHRENS | Ahrens MA | [ahrens.pine](../lib/trends_IIR/ahrens/ahrens.pine) |
| DECYCLER | Ehlers Decycler | [decycler.pine](../lib/trends_IIR/decycler/decycler.pine) |
| MCNMA | McNicholl EMA | [mcnma.pine](../lib/trends_IIR/mcnma/mcnma.pine) |
| MMA | Modified MA | [mma.pine](../lib/trends_IIR/mma/mma.pine) |
| NMA | Natural MA | [nma.pine](../lib/trends_IIR/nma/nma.pine) |
| QEMA | Quad EMA | [qema.pine](../lib/trends_IIR/qema/qema.pine) |
| REMA | Regularized EMA | [rema.pine](../lib/trends_IIR/rema/rema.pine) |
| RGMA | Recursive Gaussian MA | [rgma.pine](../lib/trends_IIR/rgma/rgma.pine) |
| TRAMA | Trend Regularity Adaptive MA | [trama.pine](../lib/trends_IIR/trama/trama.pine) |
| LTMA | Linear Trend MA | [ltma.pine](../lib/trends_IIR/ltma/ltma.pine) |
| HTIT | Hilbert Transform Instantaneous Trend | [htit.pine](../lib/trends_IIR/htit/htit.pine) |
| ADXVMA | ADX Variable MA | [adxvma.pine](../lib/trends_IIR/adxvma/adxvma.pine) | | ADXVMA | ADX Variable MA | [adxvma.pine](../lib/trends_IIR/adxvma/adxvma.pine) |
| VAMA | Volatility Adjusted MA | [vama.pine](../lib/trends_IIR/vama/vama.pine) | | AHRENS | Ahrens MA | [ahrens.pine](../lib/trends_IIR/ahrens/ahrens.pine) |
| YZVAMA | Yang-Zhang Volatility Adjusted MA | [yzvama.pine](../lib/trends_IIR/yzvama/yzvama.pine) | | CORAL | Coral Trend Filter | [coral.pine](../lib/trends_IIR/coral/coral.pine) |
| DECYCLER | Ehlers Decycler | [decycler.pine](../lib/trends_IIR/decycler/decycler.pine) |
| DEMA | Double Exponential MA | [dema.pine](../lib/trends_IIR/dema/dema.pine) |
| DSMA | Deviation-Scaled MA | [dsma.pine](../lib/trends_IIR/dsma/dsma.pine) |
| EMA | Exponential MA | [ema.pine](../lib/trends_IIR/ema/ema.pine) |
| FRAMA | Ehlers Fractal Adaptive MA | [frama.pine](../lib/trends_IIR/frama/frama.pine) |
| GDEMA | Generalized DEMA | [gdema.pine](../lib/trends_IIR/gdema/gdema.pine) |
| HEMA | Hull Exponential MA | [hema.pine](../lib/trends_IIR/hema/hema.pine) |
| HOLT | Holt Exponential Smoothing | [holt.pine](../lib/trends_IIR/holt/holt.pine) |
| HTIT | Ehlers Hilbert Transform Instant Trendline | [htit.pine](../lib/trends_IIR/htit/htit.pine) |
| HWMA | Holt-Winters MA | [hwma.pine](../lib/trends_IIR/hwma/hwma.pine) |
| JMA | Jurik MA | [jma.pine](../lib/trends_IIR/jma/jma.pine) |
| KAMA | Kaufman Adaptive MA | [kama.pine](../lib/trends_IIR/kama/kama.pine) |
| LEMA | Leader EMA | [lema.pine](../lib/trends_IIR/lema/lema.pine) |
| LTMA | Linear Trend MA | [ltma.pine](../lib/trends_IIR/ltma/ltma.pine) |
| MAMA | Ehlers MESA Adaptive MA | [mama.pine](../lib/trends_IIR/mama/mama.pine) |
| MAVP | Moving Average Variable Period | [mavp.pine](../lib/trends_IIR/mavp/mavp.pine) | | MAVP | Moving Average Variable Period | [mavp.pine](../lib/trends_IIR/mavp/mavp.pine) |
| MCNMA | McNicholl EMA | [mcnma.pine](../lib/trends_IIR/mcnma/mcnma.pine) |
| MGDI | McGinley Dynamic | [mgdi.pine](../lib/trends_IIR/mgdi/mgdi.pine) |
| MMA | Modified MA | [mma.pine](../lib/trends_IIR/mma/mma.pine) |
| NMA | Natural Moving Average | [nma.pine](../lib/trends_IIR/nma/nma.pine) |
| QEMA | Quadruple Exponential MA | [qema.pine](../lib/trends_IIR/qema/qema.pine) |
| REMA | Regularized Exponential MA | [rema.pine](../lib/trends_IIR/rema/rema.pine) |
| RGMA | Recursive Gaussian MA | [rgma.pine](../lib/trends_IIR/rgma/rgma.pine) |
| RMA | wildeR MA | [rma.pine](../lib/trends_IIR/rma/rma.pine) |
| T3 | Tillson T3 MA | [t3.pine](../lib/trends_IIR/t3/t3.pine) |
| TEMA | Triple Exponential MA | [tema.pine](../lib/trends_IIR/tema/tema.pine) |
| TRAMA | Trend Regularity Adaptive MA | [trama.pine](../lib/trends_IIR/trama/trama.pine) |
| VAMA | Volatility Adjusted MA | [vama.pine](../lib/trends_IIR/vama/vama.pine) |
| VIDYA | Variable Index Dynamic Average | [vidya.pine](../lib/trends_IIR/vidya/vidya.pine) |
| YZVAMA | Yang-Zhang Volatility Adjusted MA | [yzvama.pine](../lib/trends_IIR/yzvama/yzvama.pine) |
| ZLDEMA | Zero-Lag Double Exponential MA | [zldema.pine](../lib/trends_IIR/zldema/zldema.pine) |
| ZLEMA | Zero-Lag Exponential MA | [zlema.pine](../lib/trends_IIR/zlema/zlema.pine) |
| ZLTEMA | Zero-Lag Triple Exponential MA | [zltema.pine](../lib/trends_IIR/zltema/zltema.pine) |
---
#### Filters (signal processing)
These are the heavy artillery. Kalman filters, Butterworth filters, wavelets. If you do not know what a transfer function is, start with the moving averages above and come back when you are ready. No judgment. (Some judgment.)
| Indicator | What It Does | Pine Script |
| :--- | :--- | :--- |
| AGC | Ehlers Automatic Gain Control | [agc.pine](../lib/filters/agc/agc.pine) |
| ALAGUERRE | Ehlers Adaptive Laguerre Filter | [alaguerre.pine](../lib/filters/alaguerre/alaguerre.pine) |
| BAXTERKING | Baxter-King Band-Pass Filter | [baxterking.pine](../lib/filters/baxterking/baxterking.pine) |
| BESSEL | Bessel Filter | [bessel.pine](../lib/filters/bessel/bessel.pine) |
| BILATERAL | Bilateral Filter | [Bilateral.pine](../lib/filters/bilateral/Bilateral.pine) |
| BPF | Bandpass Filter | [bpf.pine](../lib/filters/bpf/bpf.pine) |
| BUTTER2 | Ehlers 2-Pole Butterworth Filter | [butter2.pine](../lib/filters/butter2/butter2.pine) |
| BUTTER3 | Ehlers 3-Pole Butterworth Filter | [butter3.pine](../lib/filters/butter3/butter3.pine) |
| CFITZ | Christiano-Fitzgerald Filter | [cfitz.pine](../lib/filters/cfitz/cfitz.pine) |
| CHEBY1 | Chebyshev Type I | [cheby1.pine](../lib/filters/cheby1/cheby1.pine) |
| CHEBY2 | Chebyshev Type II | [cheby2.pine](../lib/filters/cheby2/cheby2.pine) |
| EDCF | Ehlers Distance Coefficient Filter | [edcf.pine](../lib/filters/edcf/edcf.pine) |
| ELLIPTIC | Elliptic Filter | [elliptic.pine](../lib/filters/elliptic/elliptic.pine) |
| GAUSS | Gaussian Filter | [gauss.pine](../lib/filters/gauss/gauss.pine) |
| HANN | Hann Filter | [hann.pine](../lib/filters/hann/hann.pine) |
| HP | Hodrick-Prescott Filter | [hp.pine](../lib/filters/hp/hp.pine) |
| HPF | Ehlers Highpass Filter | [hpf.pine](../lib/filters/hpf/hpf.pine) |
| KALMAN | Kalman Filter | [kalman.pine](../lib/filters/kalman/kalman.pine) |
| LAGUERRE | Ehlers Laguerre Filter | [laguerre.pine](../lib/filters/laguerre/laguerre.pine) |
| LMS | Least Mean Squares | [lms.pine](../lib/filters/lms/lms.pine) |
| LOESS | LOESS Smoothing | [loess.pine](../lib/filters/loess/loess.pine) |
| MODF | Modular Filter | [modf.pine](../lib/filters/modf/modf.pine) |
| NOTCH | Notch Filter | [notch.pine](../lib/filters/notch/notch.pine) |
| NW | Nadaraya-Watson Estimator | [nw.pine](../lib/filters/nw/nw.pine) |
| ONEEURO | One Euro Filter | [oneeuro.pine](../lib/filters/oneeuro/oneeuro.pine) |
| RLS | Recursive Least Squares | [rls.pine](../lib/filters/rls/rls.pine) |
| RMED | Ehlers Recursive Median Filter | [rmed.pine](../lib/filters/rmed/rmed.pine) |
| ROOFING | Ehlers Roofing Filter | [roofing.pine](../lib/filters/roofing/roofing.pine) |
| SAK | Ehlers Swiss Army Knife | [sak.pine](../lib/filters/sak/sak.pine) |
| SGF | Savitzky-Golay Filter | [sgf.pine](../lib/filters/sgf/sgf.pine) |
| SPBF | Ehlers Super Passband Filter | [spbf.pine](../lib/filters/spbf/spbf.pine) |
| SSF2 | Ehlers 2-Pole Super Smoother Filter | [ssf2.pine](../lib/filters/ssf2/ssf2.pine) |
| SSF3 | Ehlers 3-Pole Super Smoother Filter | [ssf3.pine](../lib/filters/ssf3/ssf3.pine) |
| USF | Ehlers Ultimate Smoother Filter | [usf.pine](../lib/filters/usf/usf.pine) |
| VOSS | Ehlers Voss Predictive Filter | [voss.pine](../lib/filters/voss/voss.pine) |
| WAVELET | Wavelet Denoising Filter | [wavelet.pine](../lib/filters/wavelet/wavelet.pine) |
| WIENER | Wiener Filter | [wiener.pine](../lib/filters/wiener/wiener.pine) |
---
#### Oscillators #### Oscillators
@@ -142,37 +196,56 @@ Numbers that bounce between limits. Overbought, oversold, divergence. You know t
| Indicator | What It Does | Pine Script | | Indicator | What It Does | Pine Script |
| :--- | :--- | :--- | | :--- | :--- | :--- |
| RSI | Relative Strength Index (the king) | [rsi.pine](../lib/momentum/rsi/rsi.pine) | | AC | Acceleration Oscillator | [ac.pine](../lib/oscillators/ac/ac.pine) |
| STOCH | Stochastic Oscillator | [stoch.pine](../lib/oscillators/stoch/stoch.pine) | | AO | Awesome Oscillator | [ao.pine](../lib/oscillators/ao/ao.pine) |
| STOCHF | Fast Stochastic | [stochf.pine](../lib/oscillators/stochf/stochf.pine) | | APO | Absolute Price Oscillator | [apo.pine](../lib/oscillators/apo/apo.pine) |
| STOCHRSI | Stochastic RSI | [stochrsi.pine](../lib/oscillators/stochrsi/stochrsi.pine) | | BBB | Bollinger %B | [bbb.pine](../lib/oscillators/bbb/bbb.pine) |
| CCI | Commodity Channel Index | [cci.pine](../lib/momentum/cci/cci.pine) | | BBI | Bulls Bears Index | [bbi.pine](../lib/oscillators/bbi/bbi.pine) |
| WILLR | Williams %R | [willr.pine](../lib/oscillators/willr/willr.pine) | | BBS | Bollinger Band Squeeze | [bbs.pine](../lib/oscillators/bbs/bbs.pine) |
| FISHER | Fisher Transform (Ehlers) | [fisher.pine](../lib/oscillators/fisher/Fisher.pine) | | BRAR | Bull-Bear Power Ratio | [brar.pine](../lib/oscillators/brar/brar.pine) |
| QQE | Qualitative Quantitative Estimation | [qqe.pine](../lib/oscillators/qqe/qqe.pine) | | CFO | Chande Forecast Oscillator | [cfo.pine](../lib/oscillators/cfo/cfo.pine) |
| TRIX | Triple EMA Rate of Change | [trix.pine](../lib/oscillators/trix/trix.pine) | | COPPOCK | Coppock Curve | [coppock.pine](../lib/oscillators/coppock/coppock.pine) |
| KDJ | KDJ Indicator | [See oscillators](../lib/oscillators/) | | CRSI | Connors RSI | [crsi.pine](../lib/oscillators/crsi/crsi.pine) |
| CTI | Correlation Trend Indicator | [cti.pine](../lib/oscillators/cti/cti.pine) | | CTI | Correlation Trend Indicator | [cti.pine](../lib/oscillators/cti/cti.pine) |
| LRSI | Laguerre RSI | [lrsi.pine](../lib/oscillators/lrsi/lrsi.pine) | | DECO | Ehlers Decycler Oscillator | [deco.pine](../lib/oscillators/deco/deco.pine) |
| DEM | DeMarker Oscillator | [dem.pine](../lib/oscillators/dem/dem.pine) |
| DOSC | Derivative Oscillator | [dosc.pine](../lib/oscillators/dosc/dosc.pine) |
| DPO | Detrended Price Oscillator | [dpo.pine](../lib/oscillators/dpo/dpo.pine) |
| DYMOI | Dynamic Momentum Index | [dymoi.pine](../lib/oscillators/dymoi/dymoi.pine) |
| ER | Efficiency Ratio | [er.pine](../lib/oscillators/er/er.pine) |
| ERI | Elder Ray Index | [eri.pine](../lib/oscillators/eri/eri.pine) |
| FI | Force Index | [fi.pine](../lib/oscillators/fi/fi.pine) |
| FISHER | Ehlers Fisher Transform | [fisher.pine](../lib/oscillators/fisher/fisher.pine) |
| FISHER04 | Ehlers Fisher Transform (2004) | [fisher04.pine](../lib/oscillators/fisher04/fisher04.pine) |
| GATOR | Williams Gator Oscillator | [gator.pine](../lib/oscillators/gator/gator.pine) |
| IMI | Intraday Momentum Index | [imi.pine](../lib/oscillators/imi/imi.pine) |
| INERTIA | Inertia | [inertia.pine](../lib/oscillators/inertia/inertia.pine) |
| KDJ | KDJ Indicator | [kdj.pine](../lib/oscillators/kdj/kdj.pine) |
| KRI | Kairi Relative Index | [kri.pine](../lib/oscillators/kri/kri.pine) |
| KST | Know Sure Thing Oscillator | [kst.pine](../lib/oscillators/kst/kst.pine) |
| LRSI | Ehlers Laguerre RSI | [lrsi.pine](../lib/oscillators/lrsi/lrsi.pine) |
| MARKETFI | Market Facilitation Index | [marketfi.pine](../lib/oscillators/marketfi/marketfi.pine) |
| MSTOCH | Ehlers MESA Stochastic | [mstoch.pine](../lib/oscillators/mstoch/mstoch.pine) |
| PGO | Pretty Good Oscillator | [pgo.pine](../lib/oscillators/pgo/pgo.pine) |
| PSL | Psychological Line | [psl.pine](../lib/oscillators/psl/psl.pine) |
| QQE | Quantitative Qualitative Estimation | [qqe.pine](../lib/oscillators/qqe/qqe.pine) |
| REFLEX | Ehlers Reflex | [reflex.pine](../lib/oscillators/reflex/reflex.pine) | | REFLEX | Ehlers Reflex | [reflex.pine](../lib/oscillators/reflex/reflex.pine) |
| REVERSEEMA | Ehlers Reverse EMA | [reverseema.pine](../lib/oscillators/reverseema/reverseema.pine) |
| RVGI | Relative Vigor Index | [rvgi.pine](../lib/oscillators/rvgi/rvgi.pine) |
| SMI | Stochastic Momentum Index | [smi.pine](../lib/oscillators/smi/smi.pine) | | SMI | Stochastic Momentum Index | [smi.pine](../lib/oscillators/smi/smi.pine) |
| SQUEEZE | Squeeze Momentum | [squeeze.pine](../lib/oscillators/squeeze/squeeze.pine) |
| STC | Schaff Trend Cycle | [stc.pine](../lib/oscillators/stc/stc.pine) | | STC | Schaff Trend Cycle | [stc.pine](../lib/oscillators/stc/stc.pine) |
| STOCH | Stochastic Oscillator | [stoch.pine](../lib/oscillators/stoch/stoch.pine) |
| STOCHF | Stochastic Fast | [stochf.pine](../lib/oscillators/stochf/stochf.pine) |
| STOCHRSI | Stochastic RSI | [stochrsi.pine](../lib/oscillators/stochrsi/stochrsi.pine) |
| TD_SEQ | TD Sequential | [td_seq.pine](../lib/oscillators/td_seq/td_seq.pine) |
| TRENDFLEX | Ehlers Trendflex | [trendflex.pine](../lib/oscillators/trendflex/trendflex.pine) |
| TRIX | Triple Exponential Average | [trix.pine](../lib/oscillators/trix/trix.pine) |
| TTM_WAVE | TTM Wave | [ttm_wave.pine](../lib/oscillators/ttm_wave/ttm_wave.pine) |
| ULTOSC | Ultimate Oscillator | [ultosc.pine](../lib/oscillators/ultosc/ultosc.pine) |
| WILLR | Williams %R | [willr.pine](../lib/oscillators/willr/willr.pine) |
#### Momentum ---
How fast price is moving. Direction matters here.
| Indicator | What It Does | Pine Script |
| :--- | :--- | :--- |
| MACD | Moving Average Convergence Divergence | [macd.pine](../lib/momentum/macd/macd.pine) |
| ROC | Rate of Change | [roc.pine](../lib/momentum/roc/roc.pine) |
| MOM | Momentum (price change over N bars) | [mom.pine](../lib/momentum/mom/mom.pine) |
| TSI | True Strength Index | [tsi.pine](../lib/momentum/tsi/tsi.pine) |
| CMO | Chande Momentum Oscillator | [cmo.pine](../lib/momentum/cmo/cmo.pine) |
| PPO | Percentage Price Oscillator | [ppo.pine](../lib/momentum/ppo/ppo.pine) |
| VEL | Velocity | [vel.pine](../lib/momentum/vel/vel.pine) |
| BOP | Balance of Power | [bop.pine](../lib/momentum/bop/bop.pine) |
| CFB | Composite Force Balance | [cfb.pine](../lib/momentum/cfb/cfb.pine) |
#### Dynamics (trend strength) #### Dynamics (trend strength)
@@ -181,13 +254,58 @@ Is there a trend? How strong? These indicators answer that.
| Indicator | What It Does | Pine Script | | Indicator | What It Does | Pine Script |
| :--- | :--- | :--- | | :--- | :--- | :--- |
| ADX | Average Directional Index | [adx.pine](../lib/dynamics/adx/adx.pine) | | ADX | Average Directional Index | [adx.pine](../lib/dynamics/adx/adx.pine) |
| AROON | Aroon Up/Down | [aroon.pine](../lib/dynamics/aroon/aroon.pine) | | ADXR | Average Directional Movement Rating | [adxr.pine](../lib/dynamics/adxr/adxr.pine) |
| SUPERTREND | SuperTrend (ATR-based stops) | [super.pine](../lib/dynamics/super/super.pine) |
| ICHIMOKU | Ichimoku Cloud | [ichimoku.pine](../lib/dynamics/ichimoku/ichimoku.pine) |
| VORTEX | Vortex Indicator | [vortex.pine](../lib/dynamics/vortex/vortex.pine) |
| CHOP | Choppiness Index | [chop.pine](../lib/dynamics/chop/chop.pine) |
| ALLIGATOR | Williams Alligator | [alligator.pine](../lib/dynamics/alligator/alligator.pine) | | ALLIGATOR | Williams Alligator | [alligator.pine](../lib/dynamics/alligator/alligator.pine) |
| PSAR | Parabolic SAR | [psar.pine](../lib/reversals/psar/psar.pine) | | AMAT | Archer Moving Averages Trends | [amat.pine](../lib/dynamics/amat/amat.pine) |
| AROON | Aroon | [aroon.pine](../lib/dynamics/aroon/aroon.pine) |
| AROONOSC | Aroon Oscillator | [aroonosc.pine](../lib/dynamics/aroonosc/aroonosc.pine) |
| CHOP | Choppiness Index | [chop.pine](../lib/dynamics/chop/chop.pine) |
| DMX | Jurik Directional Movement Index | [dmx.pine](../lib/dynamics/dmx/dmx.pine) |
| DX | Directional Movement Index | [dx.pine](../lib/dynamics/dx/dx.pine) |
| GHLA | Gann High-Low Activator | [ghla.pine](../lib/dynamics/ghla/ghla.pine) |
| HT_TRENDMODE | Ehlers Hilbert Transform Trend vs Cycle Mode | [ht_trendmode.pine](../lib/dynamics/ht_trendmode/ht_trendmode.pine) |
| ICHIMOKU | Ichimoku Cloud | [ichimoku.pine](../lib/dynamics/ichimoku/ichimoku.pine) |
| MINUS_DI | Minus Directional Indicator | [minusdi.pine](../lib/dynamics/minusdi/minusdi.pine) |
| MINUS_DM | Minus Directional Movement | [minusdm.pine](../lib/dynamics/minusdm/minusdm.pine) |
| PFE | Polarized Fractal Efficiency | [pfe.pine](../lib/dynamics/pfe/pfe.pine) |
| PLUS_DI | Plus Directional Indicator | [plusdi.pine](../lib/dynamics/plusdi/plusdi.pine) |
| PLUS_DM | Plus Directional Movement | [plusdm.pine](../lib/dynamics/plusdm/plusdm.pine) |
| QSTICK | Qstick Indicator | [qstick.pine](../lib/dynamics/qstick/qstick.pine) |
| RAVI | Chande Range Action Verification Index | [ravi.pine](../lib/dynamics/ravi/ravi.pine) |
| SUPER | SuperTrend | [super.pine](../lib/dynamics/super/super.pine) |
| TTM_TREND | TTM Trend | [TtmTrend.pine](../lib/dynamics/ttm_trend/TtmTrend.pine) |
| VHF | Vertical Horizontal Filter | [vhf.pine](../lib/dynamics/vhf/vhf.pine) |
| VORTEX | Vortex Indicator | [vortex.pine](../lib/dynamics/vortex/vortex.pine) |
---
#### Momentum
How fast price is moving. Direction matters here.
| Indicator | What It Does | Pine Script |
| :--- | :--- | :--- |
| ASI | Accumulation Swing Index | [asi.pine](../lib/momentum/asi/asi.pine) |
| BIAS | Bias / Disparity Index | [bias.pine](../lib/momentum/bias/bias.pine) |
| BOP | Balance of Power | [bop.pine](../lib/momentum/bop/bop.pine) |
| CCI | Commodity Channel Index | [cci.pine](../lib/momentum/cci/cci.pine) |
| CFB | Jurik Composite Fractal Behavior | [cfb.pine](../lib/momentum/cfb/cfb.pine) |
| CMO | Chande Momentum Oscillator | [cmo.pine](../lib/momentum/cmo/cmo.pine) |
| MACD | Moving Average Convergence Divergence | [macd.pine](../lib/momentum/macd/macd.pine) |
| MOM | Momentum | [mom.pine](../lib/momentum/mom/mom.pine) |
| PMO | Price Momentum Oscillator | [pmo.pine](../lib/momentum/pmo/pmo.pine) |
| PPO | Percentage Price Oscillator | [ppo.pine](../lib/momentum/ppo/ppo.pine) |
| PRS | Price Relative Strength | [prs.pine](../lib/momentum/prs/prs.pine) |
| ROC | Rate of Change | [roc.pine](../lib/momentum/roc/roc.pine) |
| ROCP | Rate of Change Percentage | [rocp.pine](../lib/momentum/rocp/rocp.pine) |
| ROCR | Rate of Change Ratio | [rocr.pine](../lib/momentum/rocr/rocr.pine) |
| RSI | Relative Strength Index | [rsi.pine](../lib/momentum/rsi/rsi.pine) |
| RSX | Jurik Relative Strength X | [rsx.pine](../lib/momentum/rsx/rsx.pine) |
| SAM | Smoothed Adaptive Momentum | [sam.pine](../lib/momentum/sam/sam.pine) |
| TSI | True Strength Index | [tsi.pine](../lib/momentum/tsi/tsi.pine) |
| VEL | Jurik Velocity | [vel.pine](../lib/momentum/vel/vel.pine) |
---
#### Volatility #### Volatility
@@ -195,23 +313,34 @@ How much price moves. Not direction. Just magnitude.
| Indicator | What It Does | Pine Script | | Indicator | What It Does | Pine Script |
| :--- | :--- | :--- | | :--- | :--- | :--- |
| ADR | Average Daily Range | [adr.pine](../lib/volatility/adr/adr.pine) |
| ATR | Average True Range | [atr.pine](../lib/volatility/atr/atr.pine) | | ATR | Average True Range | [atr.pine](../lib/volatility/atr/atr.pine) |
| TR | True Range | [tr.pine](../lib/volatility/tr/tr.pine) | | ATRN | ATR Normalized | [atrn.pine](../lib/volatility/atrn/atrn.pine) |
| BBW | Bollinger Band Width | [bbw.pine](../lib/volatility/bbw/bbw.pine) | | BBW | Bollinger Band Width | [bbw.pine](../lib/volatility/bbw/bbw.pine) |
| BBWN | Bollinger Band Width Normalized | [bbwn.pine](../lib/volatility/bbwn/bbwn.pine) |
| BBWP | Bollinger Band Width Percentile | [bbwp.pine](../lib/volatility/bbwp/bbwp.pine) |
| CCV | Close-to-Close Volatility | [ccv.pine](../lib/volatility/ccv/ccv.pine) |
| CV | Coefficient of Variation | [cv.pine](../lib/volatility/cv/cv.pine) |
| CVI | Chaikin's Volatility | [cvi.pine](../lib/volatility/cvi/cvi.pine) |
| ETHERM | Elder's Thermometer | [etherm.pine](../lib/volatility/etherm/etherm.pine) |
| EWMA | Exponential Weighted MA Volatility | [ewma.pine](../lib/volatility/ewma/ewma.pine) |
| GKV | Garman-Klass Volatility | [gkv.pine](../lib/volatility/gkv/gkv.pine) |
| HLV | High-Low Volatility | [hlv.pine](../lib/volatility/hlv/hlv.pine) |
| HV | Historical Volatility | [hv.pine](../lib/volatility/hv/hv.pine) | | HV | Historical Volatility | [hv.pine](../lib/volatility/hv/hv.pine) |
| JVOLTY | Jurik Volatility | [jvolty.pine](../lib/volatility/jvolty/jvolty.pine) |
| JVOLTYN | Jurik Volatility Normalized | [jvoltyn.pine](../lib/volatility/jvoltyn/jvoltyn.pine) |
| MASSI | Mass Index | [massi.pine](../lib/volatility/massi/massi.pine) |
| NATR | Normalized ATR | [natr.pine](../lib/volatility/natr/natr.pine) | | NATR | Normalized ATR | [natr.pine](../lib/volatility/natr/natr.pine) |
| RSV | Rogers-Satchell Volatility | [rsv.pine](../lib/volatility/rsv/rsv.pine) |
| RV | Realized Volatility | [rv.pine](../lib/volatility/rv/rv.pine) |
| RVI | Relative Volatility Index | [rvi.pine](../lib/volatility/rvi/rvi.pine) |
| TR | True Range | [tr.pine](../lib/volatility/tr/tr.pine) |
| UI | Ulcer Index | [ui.pine](../lib/volatility/ui/ui.pine) |
| VOV | Volatility of Volatility | [vov.pine](../lib/volatility/vov/vov.pine) |
| VR | Volatility Ratio | [vr.pine](../lib/volatility/vr/vr.pine) |
| YZV | Yang-Zhang Volatility | [yzv.pine](../lib/volatility/yzv/yzv.pine) |
#### Channels (bands around price) ---
Upper band, lower band, sometimes a middle. Price bounces between them. In theory.
| Indicator | What It Does | Pine Script |
| :--- | :--- | :--- |
| BBANDS | Bollinger Bands | [bbands.pine](../lib/channels/bbands/bbands.pine) |
| KCHANNEL | Keltner Channels | [kchannel.pine](../lib/channels/kchannel/kchannel.pine) |
| DCHANNEL | Donchian Channels | [dchannel.pine](../lib/channels/dchannel/dchannel.pine) |
| PCHANNEL | Price Channels | [pchannel.pine](../lib/channels/pchannel/pchannel.pine) |
| ACCBANDS | Acceleration Bands | [accbands.pine](../lib/channels/accbands/accbands.pine) |
#### Volume #### Volume
@@ -219,33 +348,238 @@ What the crowd is doing with their money.
| Indicator | What It Does | Pine Script | | Indicator | What It Does | Pine Script |
| :--- | :--- | :--- | | :--- | :--- | :--- |
| OBV | On-Balance Volume | [obv.pine](../lib/volume/obv/obv.pine) |
| VWAP | Volume Weighted Average Price | [vwap.pine](../lib/volume/vwap/vwap.pine) |
| MFI | Money Flow Index (volume RSI) | [mfi.pine](../lib/volume/mfi/mfi.pine) |
| CMF | Chaikin Money Flow | [cmf.pine](../lib/volume/cmf/cmf.pine) |
| ADL | Accumulation/Distribution Line | [adl.pine](../lib/volume/adl/adl.pine) | | ADL | Accumulation/Distribution Line | [adl.pine](../lib/volume/adl/adl.pine) |
| VWMA | Volume Weighted MA | [vwma.pine](../lib/volume/vwma/vwma.pine) | | ADOSC | Chaikin A/D Oscillator | [adosc.pine](../lib/volume/adosc/adosc.pine) |
| AOBV | Archer On-Balance Volume | [aobv.pine](../lib/volume/aobv/aobv.pine) |
| CMF | Chaikin Money Flow | [cmf.pine](../lib/volume/cmf/cmf.pine) |
| EFI | Elder's Force Index | [efi.pine](../lib/volume/efi/efi.pine) |
| EOM | Ease of Movement | [eom.pine](../lib/volume/eom/eom.pine) |
| EVWMA | Elastic Volume Weighted MA | [evwma.pine](../lib/volume/evwma/evwma.pine) |
| III | Intraday Intensity Index | [iii.pine](../lib/volume/iii/iii.pine) |
| KVO | Klinger Volume Oscillator | [kvo.pine](../lib/volume/kvo/kvo.pine) | | KVO | Klinger Volume Oscillator | [kvo.pine](../lib/volume/kvo/kvo.pine) |
| MFI | Money Flow Index | [mfi.pine](../lib/volume/mfi/mfi.pine) |
| NVI | Negative Volume Index | [nvi.pine](../lib/volume/nvi/nvi.pine) |
| OBV | On Balance Volume | [obv.pine](../lib/volume/obv/obv.pine) |
| PVD | Price Volume Divergence | [pvd.pine](../lib/volume/pvd/pvd.pine) |
| PVI | Positive Volume Index | [pvi.pine](../lib/volume/pvi/pvi.pine) |
| PVO | Percentage Volume Oscillator | [pvo.pine](../lib/volume/pvo/pvo.pine) |
| PVR | Price Volume Rank | [pvr.pine](../lib/volume/pvr/pvr.pine) |
| PVT | Price Volume Trend | [pvt.pine](../lib/volume/pvt/pvt.pine) |
| TVI | Trade Volume Index | [tvi.pine](../lib/volume/tvi/tvi.pine) |
| TWAP | Time Weighted Average Price | [twap.pine](../lib/volume/twap/twap.pine) |
| VA | Volume Accumulation | [va.pine](../lib/volume/va/va.pine) |
| VF | Volume Force | [vf.pine](../lib/volume/vf/vf.pine) |
| VO | Volume Oscillator | [vo.pine](../lib/volume/vo/vo.pine) |
| VROC | Volume Rate of Change | [vroc.pine](../lib/volume/vroc/vroc.pine) |
| VWAD | Volume Weighted A/D | [vwad.pine](../lib/volume/vwad/vwad.pine) |
| VWAP | Volume Weighted Average Price | [vwap.pine](../lib/volume/vwap/vwap.pine) |
| VWMA | Volume Weighted MA | [vwma.pine](../lib/volume/vwma/vwma.pine) |
| WAD | Williams A/D | [wad.pine](../lib/volume/wad/wad.pine) |
#### Filters (signal processing) ---
These are the heavy artillery. Kalman filters, Butterworth filters, wavelets. If you do not know what a transfer function is, start with the moving averages above and come back when you are ready. No judgment. (Some judgment.) #### Channels (bands around price)
Upper band, lower band, sometimes a middle. Price bounces between them. In theory.
| Indicator | What It Does | Pine Script | | Indicator | What It Does | Pine Script |
| :--- | :--- | :--- | | :--- | :--- | :--- |
| KALMAN | Kalman Filter | [kalman.pine](../lib/filters/kalman/kalman.pine) | | ABERR | Aberration Bands | [aberr.pine](../lib/channels/aberr/aberr.pine) |
| SGF | Savitzky-Golay Filter | [sgf.pine](../lib/filters/sgf/sgf.pine) | | ACCBANDS | Acceleration Bands | [accbands.pine](../lib/channels/accbands/accbands.pine) |
| SSF2 | Ehlers Super Smoother (2-pole) | [ssf2.pine](../lib/filters/ssf2/ssf2.pine) | | APCHANNEL | Andrews' Pitchfork | [apchannel.pine](../lib/channels/apchannel/apchannel.pine) |
| SSF3 | Ehlers Super Smoother (3-pole) | [ssf3.pine](../lib/filters/ssf3/ssf3.pine) | | APZ | Adaptive Price Zone | [apz.pine](../lib/channels/apz/apz.pine) |
| GAUSS | Gaussian Filter | [gauss.pine](../lib/filters/gauss/gauss.pine) | | ATRBANDS | ATR Bands | [atrbands.pine](../lib/channels/atrbands/atrbands.pine) |
| BUTTER2 | Butterworth (2nd order) | [butter2.pine](../lib/filters/butter2/butter2.pine) | | BBANDS | Bollinger Bands | [bbands.pine](../lib/channels/bbands/bbands.pine) |
| BUTTER3 | Butterworth (3rd order) | [butter3.pine](../lib/filters/butter3/butter3.pine) | | DCHANNEL | Donchian Channels | [dchannel.pine](../lib/channels/dchannel/dchannel.pine) |
| HPF | High-Pass Filter | [hpf.pine](../lib/filters/hpf/hpf.pine) | | DECAYCHANNEL | Decay Min-Max Channel | [decaychannel.pine](../lib/channels/decaychannel/decaychannel.pine) |
| LAGUERRE | Laguerre Filter | [laguerre.pine](../lib/filters/laguerre/laguerre.pine) | | FCB | Fractal Chaos Bands | [fcb.pine](../lib/channels/fcb/fcb.pine) |
| ROOFING | Ehlers Roofing Filter | [roofing.pine](../lib/filters/roofing/roofing.pine) | | JBANDS | Jurik Volatility Bands | [Jbands.pine](../lib/channels/jbands/Jbands.pine) |
| VOSS | Voss Predictor | [voss.pine](../lib/filters/voss/voss.pine) | | KCHANNEL | Keltner Channel | [kchannel.pine](../lib/channels/kchannel/kchannel.pine) |
| MAENV | Moving Average Envelope | [maenv.pine](../lib/channels/maenv/maenv.pine) |
| MMCHANNEL | Min-Max Channel | [mmchannel.pine](../lib/channels/mmchannel/mmchannel.pine) |
| PCHANNEL | Price Channel | [pchannel.pine](../lib/channels/pchannel/pchannel.pine) |
| REGCHANNEL | Regression Channels | [regchannel.pine](../lib/channels/regchannel/regchannel.pine) |
| SDCHANNEL | Standard Deviation Channel | [sdchannel.pine](../lib/channels/sdchannel/sdchannel.pine) |
| STARCHANNEL | Stoller Average Range Channel | [starchannel.pine](../lib/channels/starchannel/starchannel.pine) |
| STBANDS | Super Trend Bands | [stbands.pine](../lib/channels/stbands/stbands.pine) |
| UBANDS | Ehlers Ultimate Bands | [ubands.pine](../lib/channels/ubands/ubands.pine) |
| UCHANNEL | Ehlers Ultimate Channel | [uchannel.pine](../lib/channels/uchannel/uchannel.pine) |
| VWAPBANDS | VWAP Bands | [vwapbands.pine](../lib/channels/vwapbands/vwapbands.pine) |
| VWAPSD | VWAP with Standard Deviation Bands | [vwapsd.pine](../lib/channels/vwapsd/vwapsd.pine) |
**Not every indicator is listed here.** Browse the [full catalog of 393 indicators](../lib/_index.md) for the complete collection, including cycles, statistics, error metrics, reversals, numerics, and forecasts. ---
#### Cycles
Markets oscillate. These indicators try to measure the oscillation itself — the period, phase, and amplitude of dominant cycles.
| Indicator | What It Does | Pine Script |
| :--- | :--- | :--- |
| CCOR | Ehlers Correlation Cycle | [ccor.pine](../lib/cycles/ccor/ccor.pine) |
| CCYC | Ehlers Cyber Cycle | [ccyc.pine](../lib/cycles/ccyc/ccyc.pine) |
| CG | Ehlers Center of Gravity | [cg.pine](../lib/cycles/cg/cg.pine) |
| DSP | Ehlers Detrended Synthetic Price | [dsp.pine](../lib/cycles/dsp/dsp.pine) |
| EACP | Ehlers Autocorrelation Periodogram | [eacp.pine](../lib/cycles/eacp/eacp.pine) |
| EBSW | Ehlers Even Better Sinewave | [ebsw.pine](../lib/cycles/ebsw/ebsw.pine) |
| HOMOD | Ehlers Homodyne Discriminator | [homod.pine](../lib/cycles/homod/homod.pine) |
| HT_DCPERIOD | Ehlers Hilbert Transform Dominant Cycle Period | [ht_dcperiod.pine](../lib/cycles/ht_dcperiod/ht_dcperiod.pine) |
| HT_DCPHASE | Ehlers Hilbert Transform Dominant Cycle Phase | [ht_dcphase.pine](../lib/cycles/ht_dcphase/ht_dcphase.pine) |
| HT_PHASOR | Ehlers Hilbert Transform Phasor Components | [phasor.pine](../lib/cycles/ht_phasor/phasor.pine) |
| HT_SINE | Ehlers Hilbert Transform SineWave | [ht_sine.pine](../lib/cycles/ht_sine/ht_sine.pine) |
| LUNAR | Lunar Phase | [lunar.pine](../lib/cycles/lunar/lunar.pine) |
| SOLAR | Solar Activity Cycle | [solar.pine](../lib/cycles/solar/solar.pine) |
| SSFDSP | Ehlers SSF Detrended Synthetic Price | [ssfdsp.pine](../lib/cycles/ssfdsp/ssfdsp.pine) |
---
#### Reversals
Where price might turn around. Pivots, stops, and fractal patterns.
| Indicator | What It Does | Pine Script |
| :--- | :--- | :--- |
| CHANDELIER | Chandelier Exit | [chandelier.pine](../lib/reversals/chandelier/chandelier.pine) |
| CKSTOP | Chande Kroll Stop | [ckstop.pine](../lib/reversals/ckstop/ckstop.pine) |
| FRACTALS | Williams Fractals | [fractals.pine](../lib/reversals/fractals/fractals.pine) |
| PIVOT | Pivot Points | [pivot.pine](../lib/reversals/pivot/pivot.pine) |
| PIVOTCAM | Camarilla Pivot Points | [pivotcam.pine](../lib/reversals/pivotcam/pivotcam.pine) |
| PIVOTDEM | DeMark Pivot Points | [pivotdem.pine](../lib/reversals/pivotdem/pivotdem.pine) |
| PIVOTEXT | Extended Traditional Pivots | [pivotext.pine](../lib/reversals/pivotext/pivotext.pine) |
| PIVOTFIB | Fibonacci Pivot Points | [pivotfib.pine](../lib/reversals/pivotfib/pivotfib.pine) |
| PIVOTWOOD | Woodie's Pivot Points | [pivotwood.pine](../lib/reversals/pivotwood/pivotwood.pine) |
| PSAR | Parabolic Stop And Reverse | [psar.pine](../lib/reversals/psar/psar.pine) |
| SAREXT | Parabolic SAR Extended | [sarext.pine](../lib/reversals/sarext/sarext.pine) |
| SWINGS | Swing High/Low Detection | [swings.pine](../lib/reversals/swings/swings.pine) |
| TTM_SCALPER | TTM Scalper Alert | [ttmscalper.pine](../lib/reversals/ttm_scalper/ttmscalper.pine) |
---
#### Forecasts
Predictions. Use with appropriate skepticism.
| Indicator | What It Does | Pine Script |
| :--- | :--- | :--- |
| AFIRMA | Adaptive FIR MA | [afirma.pine](../lib/forecasts/afirma/afirma.pine) |
---
#### Statistics
Quantitative measures of price behavior. Correlation, regression, distribution analysis.
| Indicator | What It Does | Pine Script |
| :--- | :--- | :--- |
| ACF | Autocorrelation Function | [acf.pine](../lib/statistics/acf/acf.pine) |
| BETA | Beta Coefficient | [beta.pine](../lib/statistics/beta/beta.pine) |
| CMA | Cumulative MA | [cma.pine](../lib/statistics/cma/cma.pine) |
| COINTEGRATION | Cointegration | [cointegration.pine](../lib/statistics/cointegration/cointegration.pine) |
| CORRELATION | Correlation | [correlation.pine](../lib/statistics/correlation/correlation.pine) |
| COVARIANCE | Covariance | [covariance.pine](../lib/statistics/covariance/covariance.pine) |
| ENTROPY | Shannon Entropy | [entropy.pine](../lib/statistics/entropy/entropy.pine) |
| GEOMEAN | Geometric Mean | [geomean.pine](../lib/statistics/geomean/geomean.pine) |
| GRANGER | Granger Causality | [granger.pine](../lib/statistics/granger/granger.pine) |
| HARMEAN | Harmonic Mean | [harmean.pine](../lib/statistics/harmean/harmean.pine) |
| HURST | Hurst Exponent | [hurst.pine](../lib/statistics/hurst/hurst.pine) |
| IQR | Interquartile Range | [iqr.pine](../lib/statistics/iqr/iqr.pine) |
| JB | Jarque-Bera Test | [jb.pine](../lib/statistics/jb/jb.pine) |
| KENDALL | Kendall Rank Correlation | [kendall.pine](../lib/statistics/kendall/kendall.pine) |
| KURTOSIS | Kurtosis | [kurtosis.pine](../lib/statistics/kurtosis/kurtosis.pine) |
| LINREG | Linear Regression Curve | [linreg.pine](../lib/statistics/linreg/linreg.pine) |
| MEANDEV | Mean Absolute Deviation | [meandev.pine](../lib/statistics/meandev/meandev.pine) |
| MEDIAN | Rolling Median | [median.pine](../lib/statistics/median/median.pine) |
| MODE | Mode | [mode.pine](../lib/statistics/mode/mode.pine) |
| PACF | Partial Autocorrelation Function | [pacf.pine](../lib/statistics/pacf/pacf.pine) |
| PERCENTILE | Percentile | [percentile.pine](../lib/statistics/percentile/percentile.pine) |
| POLYFIT | Polynomial Fitting | [polyfit.pine](../lib/statistics/polyfit/polyfit.pine) |
| QUANTILE | Quantile | [quantile.pine](../lib/statistics/quantile/quantile.pine) |
| SKEW | Skewness | [skew.pine](../lib/statistics/skew/skew.pine) |
| SPEARMAN | Spearman Rank Correlation | [spearman.pine](../lib/statistics/spearman/spearman.pine) |
| STDDEV | Standard Deviation | [stddev.pine](../lib/statistics/stddev/stddev.pine) |
| STDERR | Standard Error of Regression | [stderr.pine](../lib/statistics/stderr/stderr.pine) |
| SUM | Rolling Sum | [sum.pine](../lib/statistics/sum/sum.pine) |
| THEIL | Theil Index | [theil.pine](../lib/statistics/theil/theil.pine) |
| TRIM | Trimmed Mean MA | [trim.pine](../lib/statistics/trim/trim.pine) |
| VARIANCE | Population and Sample Variance | [variance.pine](../lib/statistics/variance/variance.pine) |
| WAVG | Weighted Average | [wavg.pine](../lib/statistics/wavg/wavg.pine) |
| WINS | Winsorized Mean MA | [wins.pine](../lib/statistics/wins/wins.pine) |
| ZSCORE | Z-score | [zscore.pine](../lib/statistics/zscore/zscore.pine) |
| ZTEST | Z-Test | [ztest.pine](../lib/statistics/ztest/ztest.pine) |
---
#### Numerics (transforms and distributions)
Mathematical transforms, derivatives, and probability distributions. The kind of tools a quant reaches for at 3 AM.
| Indicator | What It Does | Pine Script |
| :--- | :--- | :--- |
| ACCEL | Acceleration | [accel.pine](../lib/numerics/accel/accel.pine) |
| BETADIST | Beta Distribution | [betadist.pine](../lib/numerics/betadist/betadist.pine) |
| BINOMDIST | Binomial Distribution | [binomdist.pine](../lib/numerics/binomdist/binomdist.pine) |
| CHANGE | Percentage Change | [change.pine](../lib/numerics/change/change.pine) |
| CWT | Continuous Wavelet Transform | [cwt.pine](../lib/numerics/cwt/cwt.pine) |
| DECAY | Linear Decay | [decay.pine](../lib/numerics/decay/decay.pine) |
| DWT | Discrete Wavelet Transform | [dwt.pine](../lib/numerics/dwt/dwt.pine) |
| EDECAY | Exponential Decay | [edecay.pine](../lib/numerics/edecay/edecay.pine) |
| EXPDIST | Exponential Distribution | [expdist.pine](../lib/numerics/expdist/expdist.pine) |
| EXPTRANS | Exponential Transform | [exptrans.pine](../lib/numerics/exptrans/exptrans.pine) |
| FDIST | F-Distribution | [fdist.pine](../lib/numerics/fdist/fdist.pine) |
| FFT | Fast Fourier Transform | [fft.pine](../lib/numerics/fft/fft.pine) |
| GAMMADIST | Gamma Distribution | [gammadist.pine](../lib/numerics/gammadist/gammadist.pine) |
| HIGHEST | Rolling Maximum | [highest.pine](../lib/numerics/highest/highest.pine) |
| IFFT | Inverse Fast Fourier Transform | [ifft.pine](../lib/numerics/ifft/ifft.pine) |
| JERK | Jerk | [jerk.pine](../lib/numerics/jerk/jerk.pine) |
| LINEARTRANS | Linear Transform | [lineartrans.pine](../lib/numerics/lineartrans/lineartrans.pine) |
| LOGNORMDIST | Log-Normal Distribution | [lognormdist.pine](../lib/numerics/lognormdist/lognormdist.pine) |
| LOGTRANS | Logarithmic Transform | [logtrans.pine](../lib/numerics/logtrans/logtrans.pine) |
| LOWEST | Rolling Minimum | [lowest.pine](../lib/numerics/lowest/lowest.pine) |
| NORMALIZE | Min-Max Normalization | [normalize.pine](../lib/numerics/normalize/normalize.pine) |
| NORMDIST | Normal Distribution | [normdist.pine](../lib/numerics/normdist/normdist.pine) |
| POISSONDIST | Poisson Distribution | [poissondist.pine](../lib/numerics/poissondist/poissondist.pine) |
| RELU | Rectified Linear Unit | [relu.pine](../lib/numerics/relu/relu.pine) |
| SIGMOID | Logistic Function | [sigmoid.pine](../lib/numerics/sigmoid/sigmoid.pine) |
| SLOPE | First Derivative | [slope.pine](../lib/numerics/slope/slope.pine) |
| SQRTTRANS | Square Root Transform | [sqrttrans.pine](../lib/numerics/sqrttrans/sqrttrans.pine) |
| TDIST | Student's t-Distribution | [tdist.pine](../lib/numerics/tdist/tdist.pine) |
| WEIBULLDIST | Weibull Distribution | [weibulldist.pine](../lib/numerics/weibulldist/weibulldist.pine) |
---
#### Errors (forecast accuracy metrics)
How wrong was your model? These metrics quantify the answer. Useful for comparing indicator accuracy or building adaptive systems.
| Indicator | What It Does | Pine Script |
| :--- | :--- | :--- |
| HUBER | Huber Loss | [huber.pine](../lib/errors/huber/huber.pine) |
| LOGCOSH | Log-Cosh Loss | [logcosh.pine](../lib/errors/logcosh/logcosh.pine) |
| MAAPE | Mean Arctangent Absolute Percentage Error | [maape.pine](../lib/errors/maape/maape.pine) |
| MAE | Mean Absolute Error | [mae.pine](../lib/errors/mae/mae.pine) |
| MAPD | Mean Absolute Percentage Deviation | [mapd.pine](../lib/errors/mapd/mapd.pine) |
| MAPE | Mean Absolute Percentage Error | [mape.pine](../lib/errors/mape/mape.pine) |
| MASE | Mean Absolute Scaled Error | [mase.pine](../lib/errors/mase/mase.pine) |
| MDAE | Median Absolute Error | [mdae.pine](../lib/errors/mdae/mdae.pine) |
| MDAPE | Median Absolute Percentage Error | [mdape.pine](../lib/errors/mdape/mdape.pine) |
| ME | Mean Error | [me.pine](../lib/errors/me/me.pine) |
| MPE | Mean Percentage Error | [mpe.pine](../lib/errors/mpe/mpe.pine) |
| MRAE | Mean Relative Absolute Error | [mrae.pine](../lib/errors/mrae/mrae.pine) |
| MSE | Mean Squared Error | [mse.pine](../lib/errors/mse/mse.pine) |
| MSLE | Mean Squared Logarithmic Error | [msle.pine](../lib/errors/msle/msle.pine) |
| PSEUDOHUBER | Pseudo-Huber Loss | [pseudohuber.pine](../lib/errors/pseudohuber/pseudohuber.pine) |
| QUANTILELOSS | Quantile Loss | [quantileloss.pine](../lib/errors/quantileloss/quantileloss.pine) |
| RAE | Relative Absolute Error | [rae.pine](../lib/errors/rae/rae.pine) |
| RMSE | Root Mean Squared Error | [rmse.pine](../lib/errors/rmse/rmse.pine) |
| RMSLE | Root Mean Squared Logarithmic Error | [rmsle.pine](../lib/errors/rmsle/rmsle.pine) |
| RSE | Relative Squared Error | [rse.pine](../lib/errors/rse/rse.pine) |
| RSQUARED | Coefficient of Determination | [rsquared.pine](../lib/errors/rsquared/rsquared.pine) |
| SMAPE | Symmetric Mean Absolute Percentage Error | [smape.pine](../lib/errors/smape/smape.pine) |
| THEILU | Theil's U Statistic | [theilu.pine](../lib/errors/theilu/theilu.pine) |
| TUKEY | Tukey Biweight Loss | [tukeybiweight.pine](../lib/errors/tukeybiweight/tukeybiweight.pine) |
| WMAPE | Weighted Mean Absolute Percentage Error | [wmape.pine](../lib/errors/wmape/wmape.pine) |
| WRMSE | Weighted RMSE | [wrmse.pine](../lib/errors/wrmse/wrmse.pine) |
---
## Anatomy of a QuanTAlib Pine Script ## Anatomy of a QuanTAlib Pine Script
@@ -343,7 +677,7 @@ You do not have to read any of this. But if you ever wonder why your backtest re
## The Full Catalog ## The Full Catalog
**[All 393 indicators with descriptions →](../lib/_index.md)** **[All 396 indicators with descriptions →](../lib/_index.md)**
Every indicator in that list has a `.pine` file. Every `.pine` file works on TradingView. Every implementation matches the C# reference engine. Every indicator in that list has a `.pine` file. Every `.pine` file works on TradingView. Every implementation matches the C# reference engine.