This module is lack of maintainance.
If you are familiar with python programming maybe you could check stock-pandas which provides powerful statistic indicators support, and is backed by numpy
and pandas
. Its performance is many times higher than JavaScript libraries, and can be directly used by machine learning programs.
FinTech utility method to calculate the KDJ indicator.
KDJ is a derived form of the Stochastic Oscillator Indicator with the only difference of having an extra line called the J line.
The J line represents the divergence of the %D value from the %K.
$ npm install kdj
import kdj from 'kdj'
kdj(close, low, high)
// is equivalent to
kdj(close, low, high, 9, 3, 3, 3, 2)
// which returns:
// {
// K: <Array>,
// D: <Array>,
// J: <Array>
// }
To understand the parameters better, we need to mathematically describe the calculation of K, D, J lines. (via wikipedia)
%K = SMA( (closePrices - L) / (H - L), kPeriods )
L
is the lowest prices over the last periods
periods.
H
is the highst prices over the last periods
periods.
%D = SMA( %K, dPeriods )
%D
is the dPeriods
-periods moving average of %K
.
KDJ is calculated quite alike Stochastic indicator, but the difference is in having a J line, which Stochastic does not have.
%J = %K * kTimes + %D * dTimes
- close
Array.<Number>
array of closing prices. - low
Array.<Number>
array of low prices. - high
Array.<Number>
array of high prices. - periods
Number=9
the size of time periods to get the highest / lowest prices. Defaults to9
. - kPeriods
Number=3
the time periods to calculate the moving average for %K. Defaults to3
. - dPeriods
Number=3
the time periods to calculate the moving average for %D. Defaults to3
. - kTimes
Number=3
- dTimes
Number=2
Returns DKJValue
- K
Array.<Number|>
the array of K values. - D
Array.<Number|>
the array of D values. - J
Array.<Number|>
the array of J values.
MIT