@4ex/indicators
Version:
Technical indicators for ohlc charts written in TypeScript
55 lines (54 loc) • 2.14 kB
TypeScript
import { Stochastic as StochIndicator } from 'technicalindicators';
import { OHLC } from '../types';
import { IndicatorInput, Indicator } from './base-indicator';
export interface StochasticOscillatorInput extends IndicatorInput {
period?: number;
signalPeriod?: number;
}
export interface StochasticOscillatorOutput {
k: number;
d?: number;
}
/**
* A stochastic oscillator is a momentum indicator comparing a particular
* closing price of a security to a range of its prices over a certain
* period of time. The sensitivity of the oscillator to market movements
* is reducible by adjusting that time period or by taking a moving average
* of the result. It is used to generate overbought and oversold trading
* signals, utilizing a 0–100 bounded range of values.
*/
export declare class Stoch implements Indicator {
indicator: StochIndicator;
period: number;
signalPeriod: number;
/**
* @param {OHLC[]} series candles series
* @param {number} period period for indicator
* @param {number} signalPeriod period for indicator
*/
constructor(series: OHLC[], period?: number, signalPeriod?: number);
/**
* Retrieve Stoch values for instance
* @return {StochasticOscillatorOutput[]} values for instance data
*/
getResults(): StochasticOscillatorOutput[];
/**
* Calculate Stoch to next tick
* @param {OHLC} candle new candle to add to series
* @return {StochasticOscillatorOutput | undefined} next Stoch value or
* undefined if period is greater than actual series length
*/
next(candle: OHLC): StochasticOscillatorOutput | undefined;
/**
* Create instance from data
* @param {StochasticOscillatorInput} input input data
* @return {Stoch} Stoch instance
*/
static generator({ series, period, signalPeriod, }: StochasticOscillatorInput): Stoch;
/**
* Get Stoch values from input
* @param {StochasticOscillatorInput} input input data
* @return {StochasticOscillatorOutput[]} Stoch values
*/
static calculate(input: StochasticOscillatorInput): StochasticOscillatorOutput[];
}