UNPKG

igniteui-angular-charts

Version:

Ignite UI Angular charting components for building rich data visualizations for modern web apps.

125 lines (124 loc) 7.05 kB
import { __extends } from "tslib"; import { Component, forwardRef, Input, ChangeDetectionStrategy } from '@angular/core'; import { IgxStrategyBasedIndicatorComponent } from "./igx-strategy-based-indicator-component"; import { IgxFinancialIndicatorComponent } from "./igx-financial-indicator-component"; import { IgxFinancialSeriesComponent } from "./igx-financial-series-component"; import { IgxSeriesComponent } from "./igx-series-component"; import { SlowStochasticOscillatorIndicator } from "./SlowStochasticOscillatorIndicator"; import * as i0 from "@angular/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`. * * ```html * <igx-data-chart * width=500px * height=500px * [dataSource]="data" > * <igx-ordinal-time-x-axis * dateTimeMemberPath="TimeStamp" * #xAxis> * </igx-ordinal-time-x-axis> * <igx-numeric-y-axis * #yAxis></igx-numeric-y-axis> * <igx-slow-stochastic-oscillator-indicator * [xAxis]="xAxis" * [yAxis]="yAxis" * volumeMemberPath="Volume" * highMemberPath="High" * lowMemberPath="Low"> * </igx-slow-stochastic-oscillator-indicator> * </igx-data-chart> * ``` * * ```ts * let series = new IgxSlowStochasticOscillatorIndicatorComponent(); * series.xAxis = this.xAxis; * series.yAxis = this.yAxis; * series.volumeMemberPath = "Volume"; * series.highMemberPath = "high"; * series.lowMemberPath = "low"; * this.chart.series.add(series); * ``` */ var IgxSlowStochasticOscillatorIndicatorComponent = /** @class */ /*@__PURE__*/ (function (_super) { __extends(IgxSlowStochasticOscillatorIndicatorComponent, _super); function IgxSlowStochasticOscillatorIndicatorComponent() { return _super.call(this) || this; } IgxSlowStochasticOscillatorIndicatorComponent.prototype.createImplementation = function () { return new SlowStochasticOscillatorIndicator(); }; Object.defineProperty(IgxSlowStochasticOscillatorIndicatorComponent.prototype, "i", { /** * @hidden */ get: function () { return this._implementation; }, enumerable: false, configurable: true }); Object.defineProperty(IgxSlowStochasticOscillatorIndicatorComponent.prototype, "period", { /** * Gets or sets the moving average period for the current SlowStochasticOscillatorIndicator object. * The typical, and initial, value for SlowStochasticOscillatorIndicator periods is 14. * * ```html * <igx-data-chart * width=500px * height=500px * [dataSource]="data" > * <igx-ordinal-time-x-axis * dateTimeMemberPath="TimeStamp" * #xAxis> * </igx-ordinal-time-x-axis> * <igx-numeric-y-axis * #yAxis></igx-numeric-y-axis> * <igx-slow-stochastic-oscillator-indicator * [xAxis]="xAxis" * [yAxis]="yAxis" * closeMemberPath="Close" * highMemberPath="High" * lowMemberPath="Low" * period=10> * </igx-slow-stochastic-oscillator-indicator> * </igx-data-chart> * ``` * * ```ts * let series = new IgxSlowStochasticOscillatorIndicatorComponent(); * series.period=10; * ``` */ get: function () { return this.i.acf; }, set: function (v) { this.i.acf = +v; }, enumerable: false, configurable: true }); IgxSlowStochasticOscillatorIndicatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: IgxSlowStochasticOscillatorIndicatorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); IgxSlowStochasticOscillatorIndicatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: IgxSlowStochasticOscillatorIndicatorComponent, selector: "igx-slow-stochastic-oscillator-indicator", inputs: { period: "period" }, providers: [{ provide: IgxStrategyBasedIndicatorComponent, useExisting: forwardRef(function () { return IgxSlowStochasticOscillatorIndicatorComponent; }) }, { provide: IgxFinancialIndicatorComponent, useExisting: forwardRef(function () { return IgxSlowStochasticOscillatorIndicatorComponent; }) }, { provide: IgxFinancialSeriesComponent, useExisting: forwardRef(function () { return IgxSlowStochasticOscillatorIndicatorComponent; }) }, { provide: IgxSeriesComponent, useExisting: forwardRef(function () { return IgxSlowStochasticOscillatorIndicatorComponent; }) }], usesInheritance: true, ngImport: i0, template: "", isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); return IgxSlowStochasticOscillatorIndicatorComponent; }(IgxStrategyBasedIndicatorComponent)); export { IgxSlowStochasticOscillatorIndicatorComponent }; i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: IgxSlowStochasticOscillatorIndicatorComponent, decorators: [{ type: Component, args: [{ selector: 'igx-slow-stochastic-oscillator-indicator', template: "", providers: [{ provide: IgxStrategyBasedIndicatorComponent, useExisting: forwardRef(function () { return IgxSlowStochasticOscillatorIndicatorComponent; }) }, { provide: IgxFinancialIndicatorComponent, useExisting: forwardRef(function () { return IgxSlowStochasticOscillatorIndicatorComponent; }) }, { provide: IgxFinancialSeriesComponent, useExisting: forwardRef(function () { return IgxSlowStochasticOscillatorIndicatorComponent; }) }, { provide: IgxSeriesComponent, useExisting: forwardRef(function () { return IgxSlowStochasticOscillatorIndicatorComponent; }) }], changeDetection: ChangeDetectionStrategy.OnPush }] }], ctorParameters: function () { return []; }, propDecorators: { period: [{ type: Input }] } });