UNPKG

igniteui-webcomponents-charts

Version:

Ignite UI Web Components charting components for building rich data visualizations using TypeScript APIs.

85 lines (84 loc) 4.42 kB
import { IgcStrategyBasedIndicatorComponent } from "./igc-strategy-based-indicator-component"; import { SlowStochasticOscillatorIndicator } from "./SlowStochasticOscillatorIndicator"; import { getAllPropertyNames, toSpinal } from "igniteui-webcomponents-core"; import { RegisterElementHelper } from "igniteui-webcomponents-core"; /** * Represents a IgxDataChartComponent Slow Stochastic Oscillator indicator series. * Default required members: High, Low, Close * * `SlowStochasticOscillatorIndicator` (SSO) displays the closing price relative to the high-low range over a given period of time. There are three types of Stochastic Oscillators: Fast, Slow, and Full. The Stochastic Oscillator is a momentum indicator that shows the relation of the current close price relative to the high/low range over a given time period using a scale of 0 to 100. It is based on the premise that prices will close near 100 in a rising market and closer to 0 in a declining market. * * The Fast Stochastic Oscillator Indicator is used to identify buying or selling divergences. The Slow Stochastic Oscillator uses a 3-day SMA and the Full Stochastic Oscillator is the Slow Stochastic Oscillator with time period. * * Using this indicator requires setting both the `HighMemberPath`, `LowMemberPath` and `VolumeMemberPath`. */ export let IgcSlowStochasticOscillatorIndicatorComponent = /*@__PURE__*/ (() => { class IgcSlowStochasticOscillatorIndicatorComponent extends IgcStrategyBasedIndicatorComponent { createImplementation() { return new SlowStochasticOscillatorIndicator(); } /** * @hidden */ get i() { return this._implementation; } constructor() { super(); } connectedCallback() { if (super["connectedCallback"]) { super["connectedCallback"](); } if (this.i.connectedCallback) { this.i.connectedCallback(); } if (!this._attached) { this._attached = true; this._flushQueuedAttributes(); } } disconnectedCallback() { if (super["disconnectedCallback"]) { super["disconnectedCallback"](); } if (this.i.disconnectedCallback) { this.i.disconnectedCallback(); } if (this._attached) { this._attached = false; } } static get observedAttributes() { if (IgcSlowStochasticOscillatorIndicatorComponent._observedAttributesIgcSlowStochasticOscillatorIndicatorComponent == null) { let names = getAllPropertyNames(IgcSlowStochasticOscillatorIndicatorComponent); for (let i = 0; i < names.length; i++) { names[i] = toSpinal(names[i]); } IgcSlowStochasticOscillatorIndicatorComponent._observedAttributesIgcSlowStochasticOscillatorIndicatorComponent = names; } return IgcSlowStochasticOscillatorIndicatorComponent._observedAttributesIgcSlowStochasticOscillatorIndicatorComponent; } static register() { if (!IgcSlowStochasticOscillatorIndicatorComponent._isElementRegistered) { IgcSlowStochasticOscillatorIndicatorComponent._isElementRegistered = true; RegisterElementHelper.registerElement(IgcSlowStochasticOscillatorIndicatorComponent.htmlTagName, IgcSlowStochasticOscillatorIndicatorComponent); } } /** * Gets or sets the moving average period for the current SlowStochasticOscillatorIndicator object. * The typical, and initial, value for SlowStochasticOscillatorIndicator periods is 14. */ get period() { return this.i.acl; } set period(v) { this.i.acl = +v; this._a("period", this.i.acl); } } IgcSlowStochasticOscillatorIndicatorComponent._observedAttributesIgcSlowStochasticOscillatorIndicatorComponent = null; IgcSlowStochasticOscillatorIndicatorComponent.htmlTagName = "igc-slow-stochastic-oscillator-indicator"; IgcSlowStochasticOscillatorIndicatorComponent._isElementRegistered = false; return IgcSlowStochasticOscillatorIndicatorComponent; })();