Indicator Formula Template Table
| Indicator |
Component | Template | Where |
|---|---|---|---|
|
Acceleration Bands |
Upper |
AVG(Hz + 4 * w * Hz * (Hz - Lz) / (Hz + Lz), x) |
x=Period, w=Width, z=Offset |
| Lower |
AVG(Lz - 4 * w * Lz * (Hz - Lz) / (Hz + Lz), x) |
||
|
Aroon |
Down |
AROONDOWNx.z |
x=Period, z = Offset |
| Up |
AROONUPx.z |
||
| Oscillator |
AROONUPx.z - AROONDOWNx.z |
||
|
Average Directional Index |
ADX |
ADXd.s.z |
d=DI_Period, s=Smooth, z=Offset, r=ADXR_Period+Offset |
| ADXR |
(ADXd.s.z + |
||
|
Average True Range |
ATRx.z |
x=Period, z=Offset |
|
|
Balance of Power |
BOPy.z |
y=SMA, z=Offset |
|
|
Bollinger Bands |
Bottom |
BBBOT(d, x, z) |
x=Period, d=StdDev, z=Offset, Simple |
| Top |
BBTOP(d, x, z) |
||
| Center |
tAVGCx.z |
x=Period, d=StdDev, z=Offset, t=AverageType |
|
|
Bollinger Bands %B |
(Cz - tAVGCx.z) / 2 / d / STDDEVx.z + .5 |
||
|
Bollinger Bandwidth |
2 * d * STDDEVx.z / tAVGCx.z |
||
|
Chaikin Money Flow |
AVG((2 * Cz - Lz - Hz) / (Hz - Lz - (Hz = Lz)) * Vz, x) / (AVGVx.z - (AVGVx.z = 0)) |
x=Period, z=Offset |
|
|
Chaikin Oscillator |
((q - 1) * XAVG(Vz * (2 * Cz - Hz - Lz) / (Hz - Lz), q) - (p - 1) * XAVG(Vz * (2 * Cz - Hz - Lz) / (Hz - Lz), p)) / 2 |
p=ShortPeriod, q=LongPeriod, z=Offset |
|
|
Chande Momentum Oscillator |
100 * (C - Cx) / SUM(ABS(C - C1), x) |
x=Period |
|
| Close |
Cz |
z=Offset |
|
|
Commodity Channel Index |
CCIx.z |
x=Period, z=Offset |
|
|
Coppock Curve |
100 * FAVG(C / Cp + C / Cq - 2, w) |
p=ShortROC_Period, q=LongROC_Period, w=WMA Period |
|
|
Derivative Oscillator |
XAVG(XAVG(WRSIr.z, a), b) - AVG(XAVG(XAVG(WRSIr.z, a), b), c) |
r=RSI_Period, a=AVG1Period, b=AVG2Period, c=AVG3Period, z=Offset |
|
|
Detrended Price Oscillator |
C - AVGCx.y |
x=Period, y=ceiling(x/2)+1 |
|
|
Directional Movement |
-DI |
DIMINUSd.z |
d=Period, z=Offset, y=z+1 |
| +DI |
DIPLUSd.z |
||
|
Dollar Volume |
Cz * Vz |
z=Offset |
|
|
Donchian Channels |
Bottom |
MINLx.z |
x=Period, z=Offset |
| Top |
MAXHx.z |
||
| Center |
(MAXHx.z + MINLx.z) / 2 |
||
|
Double Exponential Moving Average |
2 * XAVG(w, x) - XAVG(XAVG(w, x), x) |
w=Formula, x=Period |
|
|
Double Smoothed Stochastic Bressert |
100 * XAVG((XAVG(STOCp.1.z, k) - MIN(XAVG(STOCp.1.z, k), p)) / (MAX(XAVG(STOCp.1.z, k), p) - MIN(XAVG(STOCp.1.z, k), p)), k) |
p=Period, k=%K, z=Offset |
|
|
Ease of Movement |
50000000 * AVG((H - L) * (H - H1 + L - L1) / (V + (V = 0)), x) |
x=Period |
|
|
Elder Ray Power |
Bear |
Lz - XAVGCx.z |
x=Period, z=Offset |
| Bull |
Hz - XAVGCx.z |
||
|
Elder Force Index |
Raw |
XAVG((C - C1) * V, x) |
x=Smoothing, m=MA_Period |
| Trigger |
tAVG(XAVG((C - C1) * V, x), m) |
||
|
Elliot Wave Oscillator |
AVGC5 - AVGC35 |
||
|
Envelope Channels |
Bottom |
(1 - w / 100) * tAVGCx.z |
x=Period, w=Width(%), t=AverageType, z=Offset |
| Top |
(1 + w / 100) * tAVGCx.z |
||
| Center |
tAVGCx.z |
||
| Width |
w / 50 * tAVGCx.z |
||
|
Exponential Moving Average |
XAVG(w, x) |
w=Formula, x=Period |
|
|
Fast Stochastic |
%K |
STOCk.1.z |
k=%K, d=%D, z=Offset |
| %D |
STOCk.d.z |
||
|
Fisher Transform |
2 * XAVG(ARCTANH(2 * XAVG(((Hz + Lz) / 2 - MINLx.z) / (MAXHx.z - MINLx.z) - .5, 5)), 3) |
x=Period, z=Offset |
|
|
Front Weighted Moving Average |
FAVG(w, x) |
w=Formula, x=Period |
|
|
Full Stochastic |
%K |
STOCp.k.z |
p=Period, k=%K, d=%D, z=Offset |
| %D |
AVG(STOCp.k.z, d} |
||
|
Heiken-Ashi |
Open |
XAVG(O1 + H1 + L1 + C1, 3) / 4 |
|
| High |
GREATEST(H, XAVG(O1 + H1 + L1 + C1, 3) / 4) |
||
| Low |
LEAST(L, XAVG(O1 + H1 + L1 + C1, 3) / 4) |
||
| Close |
(O + H + L + C) / 4 |
||
| High |
Hz |
z=Offset |
|
|
Historical Volatility |
1600 * ABS((SUM(LOG(C / C1) ^ 2, x) - LOG(C / Cx) ^ 2 / x) / x) ^ .5 |
x=Period |
|
|
Historical Volatility Ratio |
SQR(ABS((SUM(LOG(C / C1) ^ 2, n) - LOG(C / Cn) ^ 2 / n) / n)) / SQR(ABS((SUM(LOG(C / C1) ^ 2, d) - LOG(C / Cd) ^ 2 / d) / d)) |
n=NumeratorPeriod, d=DenominatorPeriod |
|
|
Hull Moving Average |
HAVG(w, x) |
w=Formula, x=Period |
|
|
Kaufman Efficiency Ratio |
2 * RSIx.y.z - 100 |
x=Period, y=SMA, z=Offset |
|
|
Keltner Channels |
Upper |
tAVG((Hz + Lz + Cz) / 3 + w * ATR1.z, x) |
x=Period, w=ATR_Multiplier, z=Offset, t=AverageType |
| Lower |
tAVG((Hz + Lz + Cz) / 3 - w * ATR1.z, x) |
||
| Center |
tAVG(Hz + Lz + Cz, x) / 3 |
||
| Width |
2 * w * tAVG(ATR1.z, x) |
||
|
Linear Regression |
Moving / Right End |
3 * FAVG(w, x) - 2 * AVG(w, x) |
w=Formula, x=Period |
| Slope |
6 * (FAVG(w, x) - AVG(w, x)) / (x - 1) |
||
| Left End |
4 * AVG(w, x) - 3 * FAVG(w, x) |
||
| Low |
Lz |
z=Offset |
|
|
Mass Index |
SUM(XAVG(Hz - Lz, 9) / XAVG(XAVG(Hz - Lz, 9), 9), x) |
x=Period, z=Offset |
|
|
Momentum |
100 * C / Cx |
x=Period |
|
|
Money Flow Index |
100 * SUM(IIF(H + L + C > H1 + L1 + C1, (H + L + C) * V, 0), x) / SUM((H + L + C) * V, x) |
x=Period |
|
|
MoneyStream |
MSy.z |
y=SMA, z=Offset |
|
|
Moving Average |
tAVG(w, x) |
w=Formula, x=Period, t=AverageType |
|
|
Moving Average Convergence Divergence (MACD) |
Raw |
MACDs.l.z |
s=Short, l=Long, x=Trigger, z=Offset |
| Trigger |
XAVG(MACDs.l.z, x) |
||
| Histogram |
MACDs.l.z - XAVG(MACDs.l.z, x) |
||
|
Moving Volume Weighted Average Price |
AVG((Oz + Hz + Lz + Cz) * Vz, x) / 4 / AVGVx.z |
x=Period, z=Offset |
|
|
On Balance Volume |
OBVy.z |
y=SMA, z=Offset |
|
| Open |
Oz |
z=Offset |
|
|
Percent Volume Oscillator (PVO) |
Raw |
100 * (tAVGVp.z / tAVGVq.z - 1) |
p=Short, q=Long, s=Signal, z=Offset, t=AverageType |
| Trigger |
100 * (tAVG(tAVGVp.z / tAVGVq.z, s) - 1) |
||
| Histogram |
100 * (tAVGVp.z / tAVGVq.z - XAVG(tAVGVp.z / tAVGVq.z, s)) |
||
|
Pivot Points |
R4 |
(7 * H1 - 5 * L1 + C1) / 3 |
Only matches chart in daily and longer time frames. |
| R3 |
(5 * H1 - 4 * L1 + 2 * C1) / 3 |
||
| R2 |
(4 * H1 - 2 * L1 + C1) / 3 |
||
| R1 |
(2 * H1 - L1 + 2 * C1) / 3 |
||
| PP |
(H1 + L1 + C1) / 3 |
||
| S1 |
(2 * L1 - H1 + 2 * C1) / 3 |
||
| S2 |
(4 * L1 - 2 * H1 + C1) / 3 |
||
| S3 |
(5 * L1 - 4 * H1 + 2 * C1) / 3 |
||
| S4 |
(7 * L1 - 5 * H1 + C1) / 3 |
||
| Price | Open |
Oz |
z=Offset |
| High |
Hz |
||
| Low |
Lz |
||
| Close / Current |
Cz |
||
|
Price Percent Oscillator (PPO) |
Raw |
100 * (tAVG(w, s) / tAVG(w, l) - 1) |
w=Formula, s=ShortPeriod, l=LongPeriod, x=Trigger, t=AverageType |
| Trigger |
100 * tAVG(tAVG(w, s) / tAVG(w, l) - 1), x) |
||
| Histogram |
100 * (tAVG(w, s) / tAVG(w, l) - tAVG(tAVG(w, s) / tAVG(w, l), x)) |
||
|
Percent Volume Oscillator (PVO) |
Raw |
100 * (XAVGVp.z / XAVGVq.z - 1) |
p=ShortPeriod, q=LongPeriod, s=SignalPeriod, z=Offset |
| Trigger |
100 * (XAVG(XAVGVp.z / XAVGVq.z, s) - 1) |
||
| Histogram |
100 * (XAVGVp.z / XAVGVq.z - XAVG(XAVGVp.z / XAVGVq.z, s)) |
||
| Price Zone Oscillator |
100 * XAVG(IIF(Cz <= Cy, -Cz, Cz), p) / XAVGCp |
p=Period, z=Offset |
|
|
R-Squared (R^2) |
((x + 1) / 2 * (FAVG(w, x) - AVG(w, x)) / SQR((x ^ 2 - 1) * (AVG((w ) ^ 2, x) - AVG(w, x) ^ 2) / 12)) ^ 2 |
w=Formula, x=Period |
|
|
Rate of Change |
C - Cp |
p=Period |
|
|
Rate of Change Percent |
100 * (C / Cx - 1) |
x=Period |
|
|
Relative Strength Index (Plain RSI - not Wilder's) |
RSIx.y.z |
x=Period, y=SMA, z=Offset |
|
|
Simple Moving Average |
AVG(w, x) |
w=Formula, x=Period |
|
|
Slow Stochastic |
%K |
STOCk.3.z |
k=%K, d=%D, z=Offset |
| %D |
AVG(STOCk.3.z, d) |
||
| SMI Ergodic |
Indicator |
XAVG(XAVG(C - C1, p), q) / XAVG(XAVG(ABS(C - C1), p), q) |
p=ShortPeriod, q=LongPeriod, r=SignalPeriod |
| Trigger |
XAVG(XAVG(XAVG(C - C1, p), q) / XAVG(XAVG(ABS(C - C1), p), q), r) |
||
| Oscillator |
XAVG(XAVG(C - C1, p), q) / XAVG(XAVG(ABS(C - C1), p), q) - XAVG(XAVG(XAVG(C - C1, p), q) / XAVG(XAVG(ABS(C - C1), p), q), r) |
||
|
Standard Deviation (of Closing Prices) |
STDDEVx.z |
x=Period, z=Offset |
|
|
Standard Deviation |
SQR(ABS(SUM((w) ^ 2, x)- x * AVG(w, x) ^ 2) / x) |
w=Formua, x=Period |
|
|
Stochastic |
STOCx.y.z |
x=Period, y=SMA, z=Offset |
|
|
Stochastic Momentum Index (SMI) |
Indicator |
200 * XAVG(XAVG(Cz - (MAXHp.z + MINLp.z) / 2, a), b) / XAVG(XAVG(MAXHp.z - MINLp.z, a), b) |
p=Period, a=Smoothed, b=DoubleSmoothed, c=Signal, z=Offset |
| Trigger |
200 * XAVG(XAVG(XAVG(Cz - (MAXHd.z + MINLd.z) / 2, a), b) / XAVG(XAVG(MAXHd.z - MINLd.z, a), b), c) |
||
| Stochastics RSI | %K |
100 * AVG((WRSIr.z - MIN(WRSIr.z, s)) / (MAX(WRSIr.z, s) - MIN(WRSIr.z, s)), k) |
r=RS_ Period, s=Stochastics_Period, k=%K, d=%D |
| %D |
100 * AVG((AVG(WRSIr.z - MIN(WRSIr.z, s)) / (MAX(WRSIr.z, s) - MIN(WRSIr.z, s)), k), d) |
||
| Sum - Adds together the value of w over the most recent x bars. |
SUM(w, x) |
w=Numeric, x=Period |
|
|
Tilson T3 Moving Average |
-(f ^ 3) * XAVG(XAVG(XAVG(XAVG(XAVG(XAVGCx, x), x), x), x), x) + 3 * ((f ^ 2) + (f ^ 3)) * XAVG(XAVG(XAVG(XAVG(XAVGCx, x), x), x), x) - (6 * (f ^ 2) + 3 * (f + (f ^ 3))) * XAVG(XAVG(XAVG(XAVGCx, x), x), x) + (1 + 3 * f + (f ^ 3) + 3 * (f ^ 2)) * XAVG(XAVG(XAVGCx, x), x) |
f=Volume_Factor, x=Period |
|
|
Time Segmented Volume (TSV) |
TSVx.z |
x=Period, z=Offset |
|
|
Time Series Forecast |
AVG(w, x) + ((x - 1) / 2 + y) * 6 * (FAVG(w, x) - AVG(w, x)) / (x - 1) |
w=Formula, x=Period, y=ForecastBars |
|
|
Triple Exponential Moving Average (TEMA) |
3 * XAVG(w, x) - 3 * XAVG(XAVG(w, x), x) + XAVG(XAVG(XAVG(w, x), x), x) |
w=Formula, x=Period |
|
|
Triple Exponential Moving Average (TRIX) |
100 * (XAVG(XAVG(XAVGCx, x), x) / XAVG(XAVG(XAVGCx.1, x), x) - 1) |
w=Formula, x=Period |
|
|
True Strength Index |
XAVG(XAVG(C - C1, s), l) / XAVG(XAVG(ABS(C - C1), s), l) |
s=ShortPeriod, l=Long Period |
|
| Ultimate Oscillator |
100 * (4 * SUM(C - LEAST(L, C1), p) / SUM(ATR, p) + 2 * SUM(C - LEAST(L, C1), q) / SUM(ATR, q) + SUM(C - LEAST(L, C1), r) / SUM(ATR, r)) / 7 |
p=ShortPeriod, q=MediumPeriod, r=LongPeriod |
|
| Volume |
Vz |
z=Offset |
|
| Volume Rate of Change |
V - Vp |
p=Period |
|
| Volume Rate of Change Percent |
100 * (V / Vx - 1) |
x=Period |
|
|
Volume Weighted Moving Average |
tAVG((w) * V, x) / tAVGVx |
w=Formula, x=Period, t=AverageType |
|
| Volume Zone Oscillator |
100 * XAVG(IIF(Cz <= Cy, -Vz, Vz), p) / XAVGVp.z |
p=Period, z=Offset, y=z+1 |
|
| Vortex Indicator |
+VI |
AVG(ABS(H - L1), p) / XAVG(ATR, q) |
p=Period, q=(p*2)-1
|
| -VI |
AVG(ABS(L - H1), p) / XAVG(ATR, q) |
||
|
Wilder's Relative Strength Index |
WRSIx.z |
x=Period, z=Offset |
|
|
Williams Alligator |
Jaw - Blue |
AVG(H8 + L8, 13) / 2 |
|
| Teeth - Red |
AVG(H5 + L5, 8) / 2 |
||
| Lips - Green |
AVG(H3 + L3, 5) / 2 |
||
|
Williams Acceleration/Deceleration |
(AVG(H + L, 5) - AVG(H + L, 34) - AVG(AVG(H + L, 5) - AVG(H + L, 34), 5)) / 2 |
||
|
Williams Awesome Oscillator |
(AVG(H + L, 5) - AVG(H + L, 34)) / 2 |
||
|
Williams Percent Range (%R) |
STOCx.y.z - 100 |
x=Period, y=SMA, z=Offset |
|
|
Worden Stochastic |
WSTOCx.y.z |
x=Period, y=SMA, z=Offset |
|