indicators
indicators copied to clipboard
Fastest Technical Indicators written in typescript, Supports: Browser, NodeJS, ES6, CommonJS. More than +100 indicators(SMA, EMA, RSI, MACD, ...)
Supports
Browser, ES6, CommonJS
About
Fastest Technical Indicators written in TypeScript
- Zero Dependencies: @ixjb94/Indicators is built from the ground up to be self-contained, with no external dependencies.
- No Internal Function Calls: Each Method in the library operates independently.
Tests (Jest)
All of the indicators data have been tested with TradingView data and other Libraries.
You can find few in ./tests folder.
(Or you can run: npm test)
Note: All data have been tested with at least last 3 (tail) of TradingView's data.
Data Window: DOGEUSDT-4h-2023-10 (October)
Data Source: Binance Futures ::: Binance Vision
Comparison with TradingView (EMA 10)
Benchmark
Installation
npm install @ixjb94/indicators
Usage NodeJS
import { Indicators } from "@ixjb94/indicators"
// OR
const { Indicators } = require("@ixjb94/indicators")
Usage Browser
index.html example:
<!DOCTYPE html>
<html lang="en">
<head>
<title>My Indicators</title>
</head>
<body>
<!--
PLEASE NOTE: you probably just need one of these
- browser.js
- browser-indicators.js
- browser-indicatorsNormalized.js
- browser-indicators-sync.js
- browser-indicatorsNormalized-sync.js
-->
<!-- all versions -->
<script src="./node_modules/@ixjb94/indicators/dist/browser.js"></script>
<!-- indicators -->
<script src="./node_modules/@ixjb94/indicators/dist/browser-indicators.js"></script>
<!-- normalized indicators -->
<script src="./node_modules/@ixjb94/indicators/dist/browser-indicatorsNormalized.js"></script>
<!-- sync indicators -->
<script src="./node_modules/@ixjb94/indicators/dist/browser-indicators-sync.js"></script>
<!-- sync normalized indocators -->
<script src="./node_modules/@ixjb94/indicators/dist/browser-indicatorsNormalized-sync.js"></script>
<script>
const library = indicators
const ta = new library.Indicators()
ta.ema(close, 20).then(data => console.log(data))
</script>
</body>
</html>
Note: you can move files from node_modules to somewhere else you want to like dist, public, etc.
OR you can use unpkg:
https://unpkg.com/@ixjb94/indicators@latest/dist/browser.js
https://unpkg.com/@ixjb94/indicators@latest/dist/browser-indicators.js
https://unpkg.com/@ixjb94/indicators@latest/dist/browser-indicatorsNormalized.js
https://unpkg.com/@ixjb94/indicators@latest/dist/browser-indicators-sync.js
https://unpkg.com/@ixjb94/indicators@latest/dist/browser-indicatorsNormalized-sync.js
Indicators Consists Of
Indicators consists of these classes:
1- Indicators: new Indicators()
2- IndicatorsNormalized: new IndicatorsNormalized()
3- IndicatorsSync: new IndicatorsSync()
4- IndicatorsNormalizedSync: new IndicatorsNormalizedSync()
Q: What is the difference between Indicators
and IndicatorsNormalized
?
A: IndicatorsNormalized
will fill the gap for you, example (SMA 3 with 5 closes):
[NaN, NaN, 1, 2, 3]
But the Indicators
will give you the SMA3 with 5 closes like this:
[1, 2, 3]
Note: Please note that the performance between IndicatorsNormalized
and Indicators
are the same,
so it's better to use IndicatorsNormalized
.
Examples
Note: Everything isPromised
so you need to do .then
or await
unless you use Sync
versions.
let ta = new Indicators()
ta.sma(close, 20)
ta.rsi(close, 14)
Types & Intellisense & Browser Support
Indicators
✅ = Available and fastest
❌ = Indicator is not available
🔄 = Developing...
Compared to:
node-talib, tulipnode, technicalindicators, pandas_ta
Identifier | Indicator Name | @ixjb94/indicators |
---|---|---|
ad | Accumulation/Distribution Line | ✅ |
adosc | Accumulation/Distribution Oscillator | ✅ |
adx | Average Directional Movement Index | ✅ |
adxr | Average Directional Movement Rating | ✅ |
ao | Awesome Oscillator | ✅ |
apo | Absolute Price Oscillator | ✅ |
aroon | Aroon | ✅ |
aroonosc | Aroon Oscillator | ✅ |
atr | Average True Range | ✅ |
avgprice | Average Price | ✅ |
bbands | Bollinger Bands | ✅ |
bop | Balance of Power | ✅ |
cci | Commodity Channel Index | ✅ |
cmo | Chande Momentum Oscillator | ✅ |
crossany | Crossany | ✅ |
crossover | Crossover | ✅ |
crossunder | Crossunder | ✅ |
crossOverNumber | Crossover a number | ✅ |
crossUnderNumber | Crossunder a number | ✅ |
cvi | Chaikins Volatility | ✅ |
decay | Linear Decay | ✅ |
dema | Double Exponential Moving Average | ✅ |
di | Directional Indicator | ✅ |
dm | Directional Movement | ✅ |
dpo | Detrended Price Oscillator | ✅ |
dx | Directional Movement Index | ✅ |
edecay | Exponential Decay | ✅ |
ema | Exponential Moving Average | ✅ |
emv | Ease of Movement | ✅ |
fisher | Fisher Transform | ✅ |
fosc | Forecast Oscillator | ✅ |
hma | Hull Moving Average | ✅ |
kama | Kaufman Adaptive Moving Average | ✅ |
kvo | Klinger Volume Oscillator | ✅ |
lag | Lag | ✅ |
linreg | Linear Regression | ✅ |
linregintercept | Linear Regression Intercept | ✅ |
linregslope | Linear Regression Slope | ✅ |
macd | Moving Average Convergence/Divergence | ✅ |
marketfi | Market Facilitation Index | ✅ |
mass | Mass Index | ✅ |
max | Maximum In Period | ✅ |
md | Mean Deviation Over Period | ✅ |
medprice | Median Price | ✅ |
mfi | Money Flow Index | ✅ |
min | Minimum In Period | ✅ |
mom | Momentum | ✅ |
natr | Normalized Average True Range | ✅ |
nvi | Negative Volume Index | ✅ |
obv | On Balance Volume | ✅ |
ppo | Percentage Price Oscillator | ✅ |
psar | Parabolic SAR | ✅ |
pvi | Positive Volume Index | ✅ |
qstick | Qstick | ✅ |
roc | Rate of Change | ✅ |
rocr | Rate of Change Ratio | ✅ |
rsi | Relative Strength Index | ✅ |
sma | Simple Moving Average | ✅ |
stddev | Standard Deviation Over Period | ✅ |
stderr | Standard Error Over Period | ✅ |
stoch | Stochastic Oscillator | ✅ |
stochrsi | Stochastic RSI | ✅ |
sum | Sum Over Period | ✅ |
tema | Triple Exponential Moving Average | ✅ |
tr | True Range | ✅ |
trima | Triangular Moving Average | ✅ |
trix | Trix | ✅ |
tsf | Time Series Forecast | ✅ |
typprice | Typical Price | ✅ |
ultosc | Ultimate Oscillator | ✅ |
var | Variance Over Period | ✅ |
vhf | Vertical Horizontal Filter | ✅ |
vidya | Variable Index Dynamic Average | ✅ |
volatility | Annualized Historical Volatility | ✅ |
vosc | Volume Oscillator | ✅ |
vwma | Volume Weighted Moving Average | ✅ |
wad | Williams Accumulation/Distribution | ✅ |
wcprice | Weighted Close Price | ✅ |
wilders | Wilders Smoothing | ✅ |
willr | Williams %R | ✅ |
wma | Weighted Moving Average | ✅ |
zlema | Zero-Lag Exponential Moving Average | ✅ |
abands | ✅ | |
alma | Arnaud Legoux Moving Average | ✅ |
ce | Chandelier Exit | ✅ |
cmf | Chaikin money flow | ✅ |
copp | Coppock Curve | ❌ |
dc | Donchian Channels | ✅🔄 |
fi | Force index | ✅ |
ikhts | ❌ | |
kc | Keltner Channels | ✅ |
kst | Know Sure Thing | ✅ |
mama | MESA Adaptive Moving Average | ❌ |
pbands | ✅ | |
pc | ❌ | |
pfe | Polarized Fractal Efficiency | ✅ |
posc | ✅ | |
rmi | Relative Momentum Index | ✅ |
rmta | Recursive Moving Trend Average | ✅ |
rvi | Relative Vigor Index | ✅ |
smi | Stochastic Momentum Index | ✅ |
tsi | True Strength Index | ✅ |
vwap | Volume-Weighted Average Price | ✅ |
Icon by
https://www.flaticon.com/free-icon/bar-graph_3501061
Author: Freepik
Website: https://www.freepik.com
https://www.flaticon.com/authors/freepik