Momentum
30 algorithms in Technical Indicators · 30 with asserted arithmetic.
In this family#
-
Relative Strength Index (RSI) verified
Relative strength index: Wilder-smoothed average gain over average loss, mapped to 0–100. In a strong trend a high reading means strength persisting, not exhaustion — which is the most common misreading of this indicator.
rsi(close, p) -
Stochastic Oscillator verified
Where the close sits within the high–low range of the lookback, expressed as 0–100, then smoothed twice.
stochastic(high, low, close, kp, sk, sd) -
Stochastic RSI verified
The stochastic formula applied to RSI rather than to price — a second-order indicator that measures where RSI sits within its own recent range, and therefore moves far faster than either input.
stochasticRsi(close, rp, sp, sk, sd) -
Williams %R verified
Where the close sits within the lookback's high–low range, on a −100…0 scale. Arithmetically the inverse of fast %K.
williamsR(high, low, close, p) -
Commodity Channel Index (CCI) verified
Commodity channel index: the typical price's distance from its moving average, scaled by mean absolute deviation. Unbounded, unlike RSI or the stochastics.
cci(high, low, close, p, k) -
Ultimate Oscillator verified
Weighted buying pressure across three lookbacks at once, which is what makes it less sensitive to the choice of any single period than a plain oscillator.
ultimateOscillator(high, low, close, s, m, g) -
True Strength Index (TSI) verified
True strength index: price change smoothed twice, divided by absolute price change smoothed the same way. The double smoothing is what separates it from a plain momentum reading.
tsi(close, g, s) -
Connors RSI verified
The average of three components: RSI of price, RSI of the up/down streak length, and the percentile rank of the latest return. Designed for short-horizon mean reversion rather than trend.
connorsRsi(close, pp, sp, rp) -
Absolute Price Oscillator verified
Subtracts a slow EMA of
closefrom a fast EMA ofclose, leaving the momentum spread in price units rather than as a percentage.absolutePriceOscillator(input) -
Rate-of-Change Variants (ROC, ROCP, and ROCR) verified
Expresses the same
period-bar price ratio three ways: as a percentage, as a proportion, and as the raw ratio.rateOfChangeVariantsRocRocpAndRocr(input) -
Price Momentum (MOM) verified
The plain price difference between the current close and the close
periodbars earlier.priceMomentumMom(input) -
Chande Momentum Oscillator verified
Compares summed up-closes against summed down-closes over a
periodwindow and scales the imbalance to a -100..100 range.chandeMomentumOscillator(input) -
Awesome Oscillator verified
Subtracts a 34-period simple average of the median price from a 5-period one, measuring the gap between short and long swing momentum.
awesomeOscillator(input) -
Accelerator Oscillator verified
Subtracts a 5-period simple average of the Awesome Oscillator from the oscillator itself, isolating the change in momentum rather than its level.
acceleratorOscillator(input) -
TRIX verified
The one-bar percentage rate of change of a triple-smoothed EMA of
close, which strips most short-cycle noise before measuring momentum.trix(input) -
Stochastic Momentum Index verified
Measures where
closesits relative to the midpoint of theperiodhigh-low range, then double-smooths both the distance and the range before scaling to -100..100.stochasticMomentumIndex(input) -
Relative Vigor Index verified
Divides the
periodaverage of the candle body by theperiodaverage of the candle range, reading closing vigour relative to the day's travel.relativeVigorIndex(input) -
Relative Momentum Index verified
An RSI-shaped 0..100 reading built on the change over
momentum_lagbars instead of the one-bar change, Wilder-smoothed overperiod.relativeMomentumIndex(input) -
Fisher Transform verified
Rescales
closeto its position within theperiodhigh-low range of closes, clamps it just inside -1..1, and applies the Fisher transform to give the result near-Gaussian tails.fisherTransform(input) -
Inverse Fisher Transform verified
Squashes a scaled one-bar close change into -1..1 with the inverse Fisher transform, which is the hyperbolic tangent of the scaled input.
inverseFisherTransform(input) -
Schaff Trend Cycle verified
Runs the MACD line through two stochastic passes, each followed by a 3-period EMA, turning a trend measure into a 0..100 cycle oscillator.
schaffTrendCycle(input) -
Quantitative Qualitative Estimation (QQE) verified
Smooths a Wilder RSI with a 5-period EMA and wraps it in a volatility band derived from a double Wilder-smoothed average of the smoothed RSI's own absolute change.
quantitativeQualitativeEstimationQqe(input) -
WaveTrend Oscillator verified
Builds a CCI-style channel index from the typical price against its own 10-period EMA and mean deviation, then smooths it into a fast line and a slower trigger.
wavetrendOscillator(input) -
Know Sure Thing (KST) verified
Weights four smoothed rate-of-change readings taken over different lookbacks into a single momentum line, with a simple-average signal.
knowSureThingKst(input) -
Chande Forecast Oscillator verified
Fits a least-squares line to the last
periodcloses and reports how far the actual close sits from that line's endpoint, as a percentage of price.chandeForecastOscillator(input) -
Detrended Price Oscillator verified
Removes the trend by subtracting the current
periodsimple average from a close shifted back half that window, leaving the short cycle around the average.detrendedPriceOscillator(input) -
Balance of Power verified
Divides each candle's body by its full range, giving a per-bar -1..1 reading of how much of the session's travel the close managed to keep.
balanceOfPower(input) -
Psychological Line verified
The percentage of the last
periodbars that closed above the previous close, a plain count of how one-sided recent sentiment has been.psychologicalLine(input) -
Pretty Good Oscillator verified
Expresses the gap between
closeand itsperiodsimple average in units of average true range, so readings stay comparable across volatility regimes.prettyGoodOscillator(input) -
Price Momentum Oscillator verified
Smooths a heavily scaled one-bar rate of change through two successive EMAs, then adds a third EMA as the signal line.
priceMomentumOscillator(input)
What they share#
Every topic here is a series-transform, so once you have
called one the rest follow the same shape. Import paths differ only in the final segment:
import { rsi } from "fintech-algorithms/technical-indicators/momentum/rsi";
import { stochastic } from "fintech-algorithms/technical-indicators/momentum/stochastic-oscillator";Read them in the order above — the sequence is pedagogical, not alphabetical.
Where this sits#
Technical Indicators collects 137 algorithms across 9 families. For the concept behind this family rather than the call signatures, see the concept guides.