@syncfusion/ej2-charts
Version:
Feature-rich chart control with built-in support for over 25 chart types, technical indictors, trendline, zooming, tooltip, selection, crosshair and trackball.
159 lines (158 loc) • 5 kB
TypeScript
/// <reference path="../series/chart-series-model.d.ts" />
import { TechnicalIndicators, FinancialDataFields, MacdType } from './../utils/enum';
import { Series, SeriesBase } from '../series/chart-series';
import { Rect } from '@syncfusion/ej2-svg-base';
import { Chart } from '../chart';
import { ConnectorModel, AccessibilityModel } from '../../common/model/base-model';
/**
* Defines how to represent the market trend using technical indicators.
*/
export declare class TechnicalIndicator extends SeriesBase {
/**
* Defines the types of technical indicators. They are:
* * 'Sma' - Predicts the trend using the Simple Moving Average approach.
* * 'Ema' - Predicts the trend using the Exponential Moving Average approach.
* * 'Tma' - Predicts the trend using the Triangular Moving Average approach.
* * 'Atr' - Predicts the trend using the Average True Range approach.
* * 'AccumulationDistribution' - Predicts the trend using the Accumulation Distribution approach.
* * 'Momentum' - Predicts the trend using the Momentum approach.
* * 'Rsi' - Predicts the trend using the Relative Strength Index (RSI) approach.
* * 'Macd' - Predicts the trend using the Moving Average Convergence Divergence (MACD) approach.
* * 'Stochastic' - Predicts the trend using the Stochastic Oscillator approach.
* * 'BollingerBands' - Predicts the trend using the Bollinger Bands approach.
*
* @default 'Sma'
*/
type: TechnicalIndicators;
/**
* Defines the period over which price changes are considered for trend prediction.
*
* @default 14
*/
period: number;
/**
* Defines the look-back period for price changes used to calculate the %K value in stochastic indicators.
*
* @default 14
*/
kPeriod: number;
/**
* Defines the period over which price changes determine the %D value in stochastic indicators.
*
* @default 3
*/
dPeriod: number;
/**
* Specifies the over-bought (threshold) values applicable for RSI and stochastic indicators.
*
* @default 80
*/
overBought: number;
/**
* Defines the over-sold (threshold) values for RSI and stochastic indicators.
*
* @default 20
*/
overSold: number;
/**
* Sets the standard deviation values used to define the upper and lower Bollinger Bands.
*
* @default 2
*/
standardDeviation: number;
/**
* Defines the field used to compare the current value with previous values.
*
* @default 'Close'
*/
field: FinancialDataFields;
/**
* Sets the slow period for defining the MACD line.
*
* @default 12
*/
slowPeriod: number;
/**
* Sets the fast period to define the MACD line.
*
* @default 26
*/
fastPeriod: number;
/**
* Specifies whether to enable or disable the over-bought and over-sold regions.
*
* @default true
*/
showZones: boolean;
/**
* Defines the appearance of the MACD line in the MACD indicator.
*
* @default { color: '#ff9933', width: 2 }
*/
macdLine: ConnectorModel;
/**
* Defines the type of the MACD (Moving Average Convergence Divergence) indicator.
*
* @default 'Both'
*/
macdType: MacdType;
/**
* Specifies the color for positive bars in the MACD indicator.
*
* @default '#2ecd71'
*/
macdPositiveColor: string;
/**
* Specifies the color for negative bars in the MACD indicator.
*
* @default '#e74c3d'
*/
macdNegativeColor: string;
/**
* Configures the settings for customizing the Bollinger Bands in the indicator.
*
* @default 'rgba(211,211,211,0.25)'
*/
bandColor: string;
/**
* Defines the appearance of the upper line in technical indicators.
*/
upperLine: ConnectorModel;
/**
* Defines the appearance of the lower line in technical indicators.
*/
lowerLine: ConnectorModel;
/**
* Defines the appearance of the period line in technical indicators.
*/
periodLine: ConnectorModel;
/**
* Options to improve accessibility for technical indicator elements.
*/
accessibility: AccessibilityModel;
/**
* Specifies the name of the series to be used for displaying the indicator data.
*
* @default ''
*/
seriesName: string;
/** @private */
targetSeries: Series[];
/** @private */
sourceSeries: Series;
/** @private */
indicatorElement: Element;
/** @private */
clipRectElement: Element;
/** @private */
clipRect: Rect;
/**
* Sets the data source for the series in the chart.
*
* @private
* @param {Series} series - The series for which the data source is being set.
* @param {Chart} chart - The chart instance.
* @returns {void}
*/
setDataSource(series: Series, chart: Chart): void;
}