@amcharts/amcharts5 5.1.14 → 5.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.internal/charts/stock/PanelControls.d.ts +53 -0
- package/.internal/charts/stock/PanelControls.d.ts.map +1 -0
- package/.internal/charts/stock/PanelControls.js +122 -0
- package/.internal/charts/stock/PanelControls.js.map +1 -0
- package/.internal/charts/stock/SettingsModal.d.ts +70 -0
- package/.internal/charts/stock/SettingsModal.d.ts.map +1 -0
- package/.internal/charts/stock/SettingsModal.js +457 -0
- package/.internal/charts/stock/SettingsModal.js.map +1 -0
- package/.internal/charts/stock/StockChart.d.ts +189 -0
- package/.internal/charts/stock/StockChart.d.ts.map +1 -0
- package/.internal/charts/stock/StockChart.js +696 -0
- package/.internal/charts/stock/StockChart.js.map +1 -0
- package/.internal/charts/stock/StockChartDefaultTheme.d.ts +8 -0
- package/.internal/charts/stock/StockChartDefaultTheme.d.ts.map +1 -0
- package/.internal/charts/stock/StockChartDefaultTheme.js +1204 -0
- package/.internal/charts/stock/StockChartDefaultTheme.js.map +1 -0
- package/.internal/charts/stock/StockLegend.d.ts +67 -0
- package/.internal/charts/stock/StockLegend.d.ts.map +1 -0
- package/.internal/charts/stock/StockLegend.js +136 -0
- package/.internal/charts/stock/StockLegend.js.map +1 -0
- package/.internal/charts/stock/StockPanel.d.ts +52 -0
- package/.internal/charts/stock/StockPanel.d.ts.map +1 -0
- package/.internal/charts/stock/StockPanel.js +164 -0
- package/.internal/charts/stock/StockPanel.js.map +1 -0
- package/.internal/charts/stock/drawing/AverageSeries.d.ts +22 -0
- package/.internal/charts/stock/drawing/AverageSeries.d.ts.map +1 -0
- package/.internal/charts/stock/drawing/AverageSeries.js +86 -0
- package/.internal/charts/stock/drawing/AverageSeries.js.map +1 -0
- package/.internal/charts/stock/drawing/CalloutSeries.d.ts +31 -0
- package/.internal/charts/stock/drawing/CalloutSeries.d.ts.map +1 -0
- package/.internal/charts/stock/drawing/CalloutSeries.js +103 -0
- package/.internal/charts/stock/drawing/CalloutSeries.js.map +1 -0
- package/.internal/charts/stock/drawing/DoodleSeries.d.ts +26 -0
- package/.internal/charts/stock/drawing/DoodleSeries.d.ts.map +1 -0
- package/.internal/charts/stock/drawing/DoodleSeries.js +155 -0
- package/.internal/charts/stock/drawing/DoodleSeries.js.map +1 -0
- package/.internal/charts/stock/drawing/DrawingSeries.d.ts +127 -0
- package/.internal/charts/stock/drawing/DrawingSeries.d.ts.map +1 -0
- package/.internal/charts/stock/drawing/DrawingSeries.js +849 -0
- package/.internal/charts/stock/drawing/DrawingSeries.js.map +1 -0
- package/.internal/charts/stock/drawing/EllipseSeries.d.ts +37 -0
- package/.internal/charts/stock/drawing/EllipseSeries.d.ts.map +1 -0
- package/.internal/charts/stock/drawing/EllipseSeries.js +366 -0
- package/.internal/charts/stock/drawing/EllipseSeries.js.map +1 -0
- package/.internal/charts/stock/drawing/FibonacciSeries.d.ts +56 -0
- package/.internal/charts/stock/drawing/FibonacciSeries.d.ts.map +1 -0
- package/.internal/charts/stock/drawing/FibonacciSeries.js +284 -0
- package/.internal/charts/stock/drawing/FibonacciSeries.js.map +1 -0
- package/.internal/charts/stock/drawing/FibonacciTimezoneSeries.d.ts +20 -0
- package/.internal/charts/stock/drawing/FibonacciTimezoneSeries.d.ts.map +1 -0
- package/.internal/charts/stock/drawing/FibonacciTimezoneSeries.js +120 -0
- package/.internal/charts/stock/drawing/FibonacciTimezoneSeries.js.map +1 -0
- package/.internal/charts/stock/drawing/HorizontalLineSeries.d.ts +22 -0
- package/.internal/charts/stock/drawing/HorizontalLineSeries.d.ts.map +1 -0
- package/.internal/charts/stock/drawing/HorizontalLineSeries.js +94 -0
- package/.internal/charts/stock/drawing/HorizontalLineSeries.js.map +1 -0
- package/.internal/charts/stock/drawing/HorizontalRaySeries.d.ts +29 -0
- package/.internal/charts/stock/drawing/HorizontalRaySeries.d.ts.map +1 -0
- package/.internal/charts/stock/drawing/HorizontalRaySeries.js +110 -0
- package/.internal/charts/stock/drawing/HorizontalRaySeries.js.map +1 -0
- package/.internal/charts/stock/drawing/IconSeries.d.ts +54 -0
- package/.internal/charts/stock/drawing/IconSeries.d.ts.map +1 -0
- package/.internal/charts/stock/drawing/IconSeries.js +127 -0
- package/.internal/charts/stock/drawing/IconSeries.js.map +1 -0
- package/.internal/charts/stock/drawing/LabelSeries.d.ts +54 -0
- package/.internal/charts/stock/drawing/LabelSeries.d.ts.map +1 -0
- package/.internal/charts/stock/drawing/LabelSeries.js +195 -0
- package/.internal/charts/stock/drawing/LabelSeries.js.map +1 -0
- package/.internal/charts/stock/drawing/PolylineSeries.d.ts +26 -0
- package/.internal/charts/stock/drawing/PolylineSeries.d.ts.map +1 -0
- package/.internal/charts/stock/drawing/PolylineSeries.js +158 -0
- package/.internal/charts/stock/drawing/PolylineSeries.js.map +1 -0
- package/.internal/charts/stock/drawing/QuadrantLineSeries.d.ts +26 -0
- package/.internal/charts/stock/drawing/QuadrantLineSeries.d.ts.map +1 -0
- package/.internal/charts/stock/drawing/QuadrantLineSeries.js +163 -0
- package/.internal/charts/stock/drawing/QuadrantLineSeries.js.map +1 -0
- package/.internal/charts/stock/drawing/RectangleSeries.d.ts +27 -0
- package/.internal/charts/stock/drawing/RectangleSeries.d.ts.map +1 -0
- package/.internal/charts/stock/drawing/RectangleSeries.js +202 -0
- package/.internal/charts/stock/drawing/RectangleSeries.js.map +1 -0
- package/.internal/charts/stock/drawing/RegressionSeries.d.ts +22 -0
- package/.internal/charts/stock/drawing/RegressionSeries.d.ts.map +1 -0
- package/.internal/charts/stock/drawing/RegressionSeries.js +97 -0
- package/.internal/charts/stock/drawing/RegressionSeries.js.map +1 -0
- package/.internal/charts/stock/drawing/SimpleLineSeries.d.ts +51 -0
- package/.internal/charts/stock/drawing/SimpleLineSeries.d.ts.map +1 -0
- package/.internal/charts/stock/drawing/SimpleLineSeries.js +366 -0
- package/.internal/charts/stock/drawing/SimpleLineSeries.js.map +1 -0
- package/.internal/charts/stock/drawing/SpriteResizer.d.ts +44 -0
- package/.internal/charts/stock/drawing/SpriteResizer.d.ts.map +1 -0
- package/.internal/charts/stock/drawing/SpriteResizer.js +254 -0
- package/.internal/charts/stock/drawing/SpriteResizer.js.map +1 -0
- package/.internal/charts/stock/drawing/TrendLineSeries.d.ts +22 -0
- package/.internal/charts/stock/drawing/TrendLineSeries.d.ts.map +1 -0
- package/.internal/charts/stock/drawing/TrendLineSeries.js +68 -0
- package/.internal/charts/stock/drawing/TrendLineSeries.js.map +1 -0
- package/.internal/charts/stock/drawing/VerticalLineSeries.d.ts +22 -0
- package/.internal/charts/stock/drawing/VerticalLineSeries.d.ts.map +1 -0
- package/.internal/charts/stock/drawing/VerticalLineSeries.js +95 -0
- package/.internal/charts/stock/drawing/VerticalLineSeries.js.map +1 -0
- package/.internal/charts/stock/indicators/AccumulationDistribution.d.ts +43 -0
- package/.internal/charts/stock/indicators/AccumulationDistribution.d.ts.map +1 -0
- package/.internal/charts/stock/indicators/AccumulationDistribution.js +120 -0
- package/.internal/charts/stock/indicators/AccumulationDistribution.js.map +1 -0
- package/.internal/charts/stock/indicators/AccumulativeSwingIndex.d.ts +52 -0
- package/.internal/charts/stock/indicators/AccumulativeSwingIndex.d.ts.map +1 -0
- package/.internal/charts/stock/indicators/AccumulativeSwingIndex.js +178 -0
- package/.internal/charts/stock/indicators/AccumulativeSwingIndex.js.map +1 -0
- package/.internal/charts/stock/indicators/Aroon.d.ts +48 -0
- package/.internal/charts/stock/indicators/Aroon.d.ts.map +1 -0
- package/.internal/charts/stock/indicators/Aroon.js +145 -0
- package/.internal/charts/stock/indicators/Aroon.js.map +1 -0
- package/.internal/charts/stock/indicators/AwesomeOscillator.d.ts +43 -0
- package/.internal/charts/stock/indicators/AwesomeOscillator.d.ts.map +1 -0
- package/.internal/charts/stock/indicators/AwesomeOscillator.js +120 -0
- package/.internal/charts/stock/indicators/AwesomeOscillator.js.map +1 -0
- package/.internal/charts/stock/indicators/BollingerBands.d.ts +51 -0
- package/.internal/charts/stock/indicators/BollingerBands.d.ts.map +1 -0
- package/.internal/charts/stock/indicators/BollingerBands.js +194 -0
- package/.internal/charts/stock/indicators/BollingerBands.js.map +1 -0
- package/.internal/charts/stock/indicators/ChaikinMoneyFlow.d.ts +39 -0
- package/.internal/charts/stock/indicators/ChaikinMoneyFlow.d.ts.map +1 -0
- package/.internal/charts/stock/indicators/ChaikinMoneyFlow.js +129 -0
- package/.internal/charts/stock/indicators/ChaikinMoneyFlow.js.map +1 -0
- package/.internal/charts/stock/indicators/ChaikinOscillator.d.ts +43 -0
- package/.internal/charts/stock/indicators/ChaikinOscillator.d.ts.map +1 -0
- package/.internal/charts/stock/indicators/ChaikinOscillator.js +130 -0
- package/.internal/charts/stock/indicators/ChaikinOscillator.js.map +1 -0
- package/.internal/charts/stock/indicators/ChartIndicator.d.ts +36 -0
- package/.internal/charts/stock/indicators/ChartIndicator.d.ts.map +1 -0
- package/.internal/charts/stock/indicators/ChartIndicator.js +140 -0
- package/.internal/charts/stock/indicators/ChartIndicator.js.map +1 -0
- package/.internal/charts/stock/indicators/CommodityChannelIndex.d.ts +58 -0
- package/.internal/charts/stock/indicators/CommodityChannelIndex.d.ts.map +1 -0
- package/.internal/charts/stock/indicators/CommodityChannelIndex.js +233 -0
- package/.internal/charts/stock/indicators/CommodityChannelIndex.js.map +1 -0
- package/.internal/charts/stock/indicators/DisparityIndex.d.ts +40 -0
- package/.internal/charts/stock/indicators/DisparityIndex.d.ts.map +1 -0
- package/.internal/charts/stock/indicators/DisparityIndex.js +128 -0
- package/.internal/charts/stock/indicators/DisparityIndex.js.map +1 -0
- package/.internal/charts/stock/indicators/Indicator.d.ts +114 -0
- package/.internal/charts/stock/indicators/Indicator.d.ts.map +1 -0
- package/.internal/charts/stock/indicators/Indicator.js +443 -0
- package/.internal/charts/stock/indicators/Indicator.js.map +1 -0
- package/.internal/charts/stock/indicators/MACD.d.ts +70 -0
- package/.internal/charts/stock/indicators/MACD.d.ts.map +1 -0
- package/.internal/charts/stock/indicators/MACD.js +233 -0
- package/.internal/charts/stock/indicators/MACD.js.map +1 -0
- package/.internal/charts/stock/indicators/MovingAverage.d.ts +45 -0
- package/.internal/charts/stock/indicators/MovingAverage.d.ts.map +1 -0
- package/.internal/charts/stock/indicators/MovingAverage.js +174 -0
- package/.internal/charts/stock/indicators/MovingAverage.js.map +1 -0
- package/.internal/charts/stock/indicators/MovingAverageDeviation.d.ts +54 -0
- package/.internal/charts/stock/indicators/MovingAverageDeviation.d.ts.map +1 -0
- package/.internal/charts/stock/indicators/MovingAverageDeviation.js +169 -0
- package/.internal/charts/stock/indicators/MovingAverageDeviation.js.map +1 -0
- package/.internal/charts/stock/indicators/MovingAverageEnvelope.d.ts +60 -0
- package/.internal/charts/stock/indicators/MovingAverageEnvelope.d.ts.map +1 -0
- package/.internal/charts/stock/indicators/MovingAverageEnvelope.js +213 -0
- package/.internal/charts/stock/indicators/MovingAverageEnvelope.js.map +1 -0
- package/.internal/charts/stock/indicators/OnBalanceVolume.d.ts +39 -0
- package/.internal/charts/stock/indicators/OnBalanceVolume.d.ts.map +1 -0
- package/.internal/charts/stock/indicators/OnBalanceVolume.js +115 -0
- package/.internal/charts/stock/indicators/OnBalanceVolume.js.map +1 -0
- package/.internal/charts/stock/indicators/RelativeStrengthIndex.d.ts +58 -0
- package/.internal/charts/stock/indicators/RelativeStrengthIndex.d.ts.map +1 -0
- package/.internal/charts/stock/indicators/RelativeStrengthIndex.js +275 -0
- package/.internal/charts/stock/indicators/RelativeStrengthIndex.js.map +1 -0
- package/.internal/charts/stock/indicators/StochasticOscillator.d.ts +65 -0
- package/.internal/charts/stock/indicators/StochasticOscillator.d.ts.map +1 -0
- package/.internal/charts/stock/indicators/StochasticOscillator.js +245 -0
- package/.internal/charts/stock/indicators/StochasticOscillator.js.map +1 -0
- package/.internal/charts/stock/indicators/Volume.d.ts +43 -0
- package/.internal/charts/stock/indicators/Volume.d.ts.map +1 -0
- package/.internal/charts/stock/indicators/Volume.js +107 -0
- package/.internal/charts/stock/indicators/Volume.js.map +1 -0
- package/.internal/charts/stock/indicators/WilliamsR.d.ts +58 -0
- package/.internal/charts/stock/indicators/WilliamsR.d.ts.map +1 -0
- package/.internal/charts/stock/indicators/WilliamsR.js +235 -0
- package/.internal/charts/stock/indicators/WilliamsR.js.map +1 -0
- package/.internal/charts/stock/toolbar/ColorControl.d.ts +40 -0
- package/.internal/charts/stock/toolbar/ColorControl.d.ts.map +1 -0
- package/.internal/charts/stock/toolbar/ColorControl.js +118 -0
- package/.internal/charts/stock/toolbar/ColorControl.js.map +1 -0
- package/.internal/charts/stock/toolbar/ComparisonControl.d.ts +21 -0
- package/.internal/charts/stock/toolbar/ComparisonControl.d.ts.map +1 -0
- package/.internal/charts/stock/toolbar/ComparisonControl.js +35 -0
- package/.internal/charts/stock/toolbar/ComparisonControl.js.map +1 -0
- package/.internal/charts/stock/toolbar/DateRangeSelector.d.ts +44 -0
- package/.internal/charts/stock/toolbar/DateRangeSelector.d.ts.map +1 -0
- package/.internal/charts/stock/toolbar/DateRangeSelector.js +346 -0
- package/.internal/charts/stock/toolbar/DateRangeSelector.js.map +1 -0
- package/.internal/charts/stock/toolbar/DrawingControl.d.ts +134 -0
- package/.internal/charts/stock/toolbar/DrawingControl.d.ts.map +1 -0
- package/.internal/charts/stock/toolbar/DrawingControl.js +788 -0
- package/.internal/charts/stock/toolbar/DrawingControl.js.map +1 -0
- package/.internal/charts/stock/toolbar/DrawingToolControl.d.ts +31 -0
- package/.internal/charts/stock/toolbar/DrawingToolControl.d.ts.map +1 -0
- package/.internal/charts/stock/toolbar/DrawingToolControl.js +132 -0
- package/.internal/charts/stock/toolbar/DrawingToolControl.js.map +1 -0
- package/.internal/charts/stock/toolbar/Dropdown.d.ts +38 -0
- package/.internal/charts/stock/toolbar/Dropdown.d.ts.map +1 -0
- package/.internal/charts/stock/toolbar/Dropdown.js +174 -0
- package/.internal/charts/stock/toolbar/Dropdown.js.map +1 -0
- package/.internal/charts/stock/toolbar/DropdownColors.d.ts +38 -0
- package/.internal/charts/stock/toolbar/DropdownColors.d.ts.map +1 -0
- package/.internal/charts/stock/toolbar/DropdownColors.js +158 -0
- package/.internal/charts/stock/toolbar/DropdownColors.js.map +1 -0
- package/.internal/charts/stock/toolbar/DropdownList.d.ts +52 -0
- package/.internal/charts/stock/toolbar/DropdownList.d.ts.map +1 -0
- package/.internal/charts/stock/toolbar/DropdownList.js +283 -0
- package/.internal/charts/stock/toolbar/DropdownList.js.map +1 -0
- package/.internal/charts/stock/toolbar/DropdownListControl.d.ts +34 -0
- package/.internal/charts/stock/toolbar/DropdownListControl.d.ts.map +1 -0
- package/.internal/charts/stock/toolbar/DropdownListControl.js +175 -0
- package/.internal/charts/stock/toolbar/DropdownListControl.js.map +1 -0
- package/.internal/charts/stock/toolbar/IconControl.d.ts +38 -0
- package/.internal/charts/stock/toolbar/IconControl.d.ts.map +1 -0
- package/.internal/charts/stock/toolbar/IconControl.js +133 -0
- package/.internal/charts/stock/toolbar/IconControl.js.map +1 -0
- package/.internal/charts/stock/toolbar/IndicatorControl.d.ts +32 -0
- package/.internal/charts/stock/toolbar/IndicatorControl.d.ts.map +1 -0
- package/.internal/charts/stock/toolbar/IndicatorControl.js +271 -0
- package/.internal/charts/stock/toolbar/IndicatorControl.js.map +1 -0
- package/.internal/charts/stock/toolbar/IntervalControl.d.ts +29 -0
- package/.internal/charts/stock/toolbar/IntervalControl.d.ts.map +1 -0
- package/.internal/charts/stock/toolbar/IntervalControl.js +35 -0
- package/.internal/charts/stock/toolbar/IntervalControl.js.map +1 -0
- package/.internal/charts/stock/toolbar/PeriodSelector.d.ts +31 -0
- package/.internal/charts/stock/toolbar/PeriodSelector.d.ts.map +1 -0
- package/.internal/charts/stock/toolbar/PeriodSelector.js +114 -0
- package/.internal/charts/stock/toolbar/PeriodSelector.js.map +1 -0
- package/.internal/charts/stock/toolbar/ResetControl.d.ts +24 -0
- package/.internal/charts/stock/toolbar/ResetControl.d.ts.map +1 -0
- package/.internal/charts/stock/toolbar/ResetControl.js +55 -0
- package/.internal/charts/stock/toolbar/ResetControl.js.map +1 -0
- package/.internal/charts/stock/toolbar/SeriesTypeControl.d.ts +18 -0
- package/.internal/charts/stock/toolbar/SeriesTypeControl.d.ts.map +1 -0
- package/.internal/charts/stock/toolbar/SeriesTypeControl.js +26 -0
- package/.internal/charts/stock/toolbar/SeriesTypeControl.js.map +1 -0
- package/.internal/charts/stock/toolbar/SettingsControl.d.ts +28 -0
- package/.internal/charts/stock/toolbar/SettingsControl.d.ts.map +1 -0
- package/.internal/charts/stock/toolbar/SettingsControl.js +163 -0
- package/.internal/charts/stock/toolbar/SettingsControl.js.map +1 -0
- package/.internal/charts/stock/toolbar/StockControl.d.ts +80 -0
- package/.internal/charts/stock/toolbar/StockControl.d.ts.map +1 -0
- package/.internal/charts/stock/toolbar/StockControl.js +199 -0
- package/.internal/charts/stock/toolbar/StockControl.js.map +1 -0
- package/.internal/charts/stock/toolbar/StockIcons.d.ts +16 -0
- package/.internal/charts/stock/toolbar/StockIcons.d.ts.map +1 -0
- package/.internal/charts/stock/toolbar/StockIcons.js +86 -0
- package/.internal/charts/stock/toolbar/StockIcons.js.map +1 -0
- package/.internal/charts/stock/toolbar/StockToolbar.d.ts +57 -0
- package/.internal/charts/stock/toolbar/StockToolbar.d.ts.map +1 -0
- package/.internal/charts/stock/toolbar/StockToolbar.js +118 -0
- package/.internal/charts/stock/toolbar/StockToolbar.js.map +1 -0
- package/.internal/charts/stock/toolbar/StockToolbarCSS.d.ts +7 -0
- package/.internal/charts/stock/toolbar/StockToolbarCSS.d.ts.map +1 -0
- package/.internal/charts/stock/toolbar/StockToolbarCSS.js +286 -0
- package/.internal/charts/stock/toolbar/StockToolbarCSS.js.map +1 -0
- package/.internal/charts/xy/axes/Axis.d.ts +1 -0
- package/.internal/charts/xy/axes/Axis.d.ts.map +1 -1
- package/.internal/charts/xy/axes/Axis.js +18 -0
- package/.internal/charts/xy/axes/Axis.js.map +1 -1
- package/.internal/charts/xy/axes/AxisRendererX.js +1 -1
- package/.internal/charts/xy/axes/AxisRendererX.js.map +1 -1
- package/.internal/charts/xy/axes/DateAxis.d.ts.map +1 -1
- package/.internal/charts/xy/axes/DateAxis.js +1 -5
- package/.internal/charts/xy/axes/DateAxis.js.map +1 -1
- package/.internal/charts/xy/series/BaseColumnSeries.d.ts +1 -1
- package/.internal/charts/xy/series/BaseColumnSeries.d.ts.map +1 -1
- package/.internal/charts/xy/series/BaseColumnSeries.js +1 -0
- package/.internal/charts/xy/series/BaseColumnSeries.js.map +1 -1
- package/.internal/charts/xy/series/LineSeries.d.ts.map +1 -1
- package/.internal/charts/xy/series/LineSeries.js +4 -1
- package/.internal/charts/xy/series/LineSeries.js.map +1 -1
- package/.internal/core/Classes.d.ts +124 -0
- package/.internal/core/Classes.d.ts.map +1 -1
- package/.internal/core/Classes.js.map +1 -1
- package/.internal/core/Root.d.ts +13 -12
- package/.internal/core/Root.d.ts.map +1 -1
- package/.internal/core/Root.js +22 -12
- package/.internal/core/Root.js.map +1 -1
- package/.internal/core/render/Legend.d.ts.map +1 -1
- package/.internal/core/render/Legend.js +16 -0
- package/.internal/core/render/Legend.js.map +1 -1
- package/.internal/core/util/Modal.d.ts.map +1 -1
- package/.internal/core/util/Modal.js +66 -2
- package/.internal/core/util/Modal.js.map +1 -1
- package/.internal/core/util/PopulateString.d.ts +4 -0
- package/.internal/core/util/PopulateString.d.ts.map +1 -1
- package/.internal/core/util/PopulateString.js +1 -1
- package/.internal/core/util/PopulateString.js.map +1 -1
- package/.internal/core/util/Utils.d.ts +16 -0
- package/.internal/core/util/Utils.d.ts.map +1 -1
- package/.internal/core/util/Utils.js +55 -3
- package/.internal/core/util/Utils.js.map +1 -1
- package/.internal/plugins/exporting/ExportingCSS.d.ts.map +1 -1
- package/.internal/plugins/exporting/ExportingCSS.js +1 -0
- package/.internal/plugins/exporting/ExportingCSS.js.map +1 -1
- package/.internal/plugins/exporting/ExportingMenu.js +2 -2
- package/.internal/plugins/exporting/ExportingMenu.js.map +1 -1
- package/.internal/plugins/json/Classes-script.d.ts +124 -0
- package/.internal/plugins/json/Classes-script.d.ts.map +1 -1
- package/.internal/plugins/json/Classes-script.js +62 -0
- package/.internal/plugins/json/Classes-script.js.map +1 -1
- package/.internal/plugins/json/Classes.d.ts +124 -0
- package/.internal/plugins/json/Classes.d.ts.map +1 -1
- package/.internal/plugins/json/Classes.js +62 -0
- package/.internal/plugins/json/Classes.js.map +1 -1
- package/.internal/themes/DefaultTheme.d.ts.map +1 -1
- package/.internal/themes/DefaultTheme.js +15 -0
- package/.internal/themes/DefaultTheme.js.map +1 -1
- package/CHANGELOG.md +13 -0
- package/examples/javascript/flow-chord/package.json +1 -1
- package/examples/javascript/flow-chord-directed/package.json +1 -1
- package/examples/javascript/flow-chord-non-ribbon/package.json +1 -1
- package/examples/javascript/flow-sankey/package.json +1 -1
- package/examples/javascript/gauge/package.json +1 -1
- package/examples/javascript/gauge-bands/package.json +1 -1
- package/examples/javascript/hierarchy-force-directed/package.json +1 -1
- package/examples/javascript/hierarchy-pack/package.json +1 -1
- package/examples/javascript/hierarchy-partition/package.json +1 -1
- package/examples/javascript/hierarchy-sunburst/package.json +1 -1
- package/examples/javascript/hierarchy-tree/package.json +1 -1
- package/examples/javascript/hierarchy-treemap/package.json +1 -1
- package/examples/javascript/json/package.json +1 -1
- package/examples/javascript/map-animating-along-lines/package.json +1 -1
- package/examples/javascript/map-day-and-night/package.json +1 -1
- package/examples/javascript/map-globe-rotate-to-country/package.json +1 -1
- package/examples/javascript/map-globe-with-projected-circles/package.json +1 -1
- package/examples/javascript/map-with-bubbles/package.json +1 -1
- package/examples/javascript/map-zoom-to-country/package.json +1 -1
- package/examples/javascript/misc-40-charts/package.json +1 -1
- package/examples/javascript/misc-microchart-grid/package.json +1 -1
- package/examples/javascript/pie-chart/package.json +1 -1
- package/examples/javascript/pie-donut-chart/package.json +1 -1
- package/examples/javascript/pie-variable-radius/package.json +1 -1
- package/examples/javascript/radar-column-iwatch-style/package.json +1 -1
- package/examples/javascript/radar-heat-map/package.json +1 -1
- package/examples/javascript/radar-line/package.json +1 -1
- package/examples/javascript/radar-time-line/package.json +1 -1
- package/examples/javascript/sliced-funnel/package.json +1 -1
- package/examples/javascript/sliced-pictorial-stacked/package.json +1 -1
- package/examples/javascript/sliced-pyramid/package.json +1 -1
- package/examples/javascript/stock-chart/README.md +6 -0
- package/examples/javascript/stock-chart/index.css +11 -0
- package/examples/javascript/stock-chart/index.html +13 -0
- package/examples/javascript/stock-chart/index.js +552 -0
- package/examples/javascript/stock-chart/package.json +16 -0
- package/examples/javascript/stock-chart/webpack.config.js +38 -0
- package/examples/javascript/stock-chart-comparing-stocks/README.md +6 -0
- package/examples/javascript/stock-chart-comparing-stocks/data/AAPL_day.js +255 -0
- package/examples/javascript/stock-chart-comparing-stocks/data/AMD_day.js +255 -0
- package/examples/javascript/stock-chart-comparing-stocks/data/AMZN_day.js +255 -0
- package/examples/javascript/stock-chart-comparing-stocks/data/GOOG_day.js +255 -0
- package/examples/javascript/stock-chart-comparing-stocks/data/MSFT_day.js +255 -0
- package/examples/javascript/stock-chart-comparing-stocks/data/NFLX_day.js +255 -0
- package/examples/javascript/stock-chart-comparing-stocks/data/NVDA_day.js +255 -0
- package/examples/javascript/stock-chart-comparing-stocks/data/TSLA_day.js +255 -0
- package/examples/javascript/stock-chart-comparing-stocks/index.css +11 -0
- package/examples/javascript/stock-chart-comparing-stocks/index.html +13 -0
- package/examples/javascript/stock-chart-comparing-stocks/index.js +361 -0
- package/examples/javascript/stock-chart-comparing-stocks/package.json +16 -0
- package/examples/javascript/stock-chart-comparing-stocks/webpack.config.js +38 -0
- package/examples/javascript/stock-chart-data-granularity/README.md +6 -0
- package/examples/javascript/stock-chart-data-granularity/data/MSFT_day.js +255 -0
- package/examples/javascript/stock-chart-data-granularity/data/MSFT_minute.js +392 -0
- package/examples/javascript/stock-chart-data-granularity/data/MSFT_month.js +14 -0
- package/examples/javascript/stock-chart-data-granularity/data/MSFT_week.js +55 -0
- package/examples/javascript/stock-chart-data-granularity/index.css +11 -0
- package/examples/javascript/stock-chart-data-granularity/index.html +13 -0
- package/examples/javascript/stock-chart-data-granularity/index.js +344 -0
- package/examples/javascript/stock-chart-data-granularity/package.json +16 -0
- package/examples/javascript/stock-chart-data-granularity/webpack.config.js +38 -0
- package/examples/javascript/stock-chart-data-grouping/README.md +6 -0
- package/examples/javascript/stock-chart-data-grouping/data/MSFT_day.js +3103 -0
- package/examples/javascript/stock-chart-data-grouping/index.css +11 -0
- package/examples/javascript/stock-chart-data-grouping/index.html +13 -0
- package/examples/javascript/stock-chart-data-grouping/index.js +343 -0
- package/examples/javascript/stock-chart-data-grouping/package.json +16 -0
- package/examples/javascript/stock-chart-data-grouping/webpack.config.js +38 -0
- package/examples/javascript/stock-chart-intraday/README.md +6 -0
- package/examples/javascript/stock-chart-intraday/index.css +11 -0
- package/examples/javascript/stock-chart-intraday/index.html +13 -0
- package/examples/javascript/stock-chart-intraday/index.js +678 -0
- package/examples/javascript/stock-chart-intraday/package.json +16 -0
- package/examples/javascript/stock-chart-intraday/webpack.config.js +38 -0
- package/examples/javascript/stock-chart-live/README.md +6 -0
- package/examples/javascript/stock-chart-live/index.css +11 -0
- package/examples/javascript/stock-chart-live/index.html +13 -0
- package/examples/javascript/stock-chart-live/index.js +308 -0
- package/examples/javascript/stock-chart-live/package.json +16 -0
- package/examples/javascript/stock-chart-live/webpack.config.js +38 -0
- package/examples/javascript/stock-chart-volume-separate-panel/README.md +6 -0
- package/examples/javascript/stock-chart-volume-separate-panel/index.css +11 -0
- package/examples/javascript/stock-chart-volume-separate-panel/index.html +13 -0
- package/examples/javascript/stock-chart-volume-separate-panel/index.js +590 -0
- package/examples/javascript/stock-chart-volume-separate-panel/package.json +16 -0
- package/examples/javascript/stock-chart-volume-separate-panel/webpack.config.js +38 -0
- package/examples/javascript/venn-diagram/package.json +1 -1
- package/examples/javascript/wordcloud-with-data/package.json +1 -1
- package/examples/javascript/wordcloud-with-text/package.json +1 -1
- package/examples/javascript/xy-100-percent-stacked-column/package.json +1 -1
- package/examples/javascript/xy-animated-bullet-at-the-end-of-the-series/package.json +1 -1
- package/examples/javascript/xy-bubble/package.json +1 -1
- package/examples/javascript/xy-candlestick/package.json +1 -1
- package/examples/javascript/xy-clustered-column/package.json +1 -1
- package/examples/javascript/xy-column/package.json +1 -1
- package/examples/javascript/xy-comparing-series-google-analytics-style/package.json +1 -1
- package/examples/javascript/xy-data-grouping/package.json +1 -1
- package/examples/javascript/xy-draggable-range/package.json +1 -1
- package/examples/javascript/xy-drawing-series-with-mouse-or-touch/package.json +1 -1
- package/examples/javascript/xy-dumbbell plot/package.json +1 -1
- package/examples/javascript/xy-evenly-spaced-date-axis/package.json +1 -1
- package/examples/javascript/xy-line/package.json +1 -1
- package/examples/javascript/xy-line-highlight-on-legend-hover/package.json +1 -1
- package/examples/javascript/xy-live-data/package.json +1 -1
- package/examples/javascript/xy-multiple-synced-value-axes/package.json +1 -1
- package/examples/javascript/xy-ohlc/package.json +1 -1
- package/examples/javascript/xy-real-time-data-sorting/package.json +1 -1
- package/examples/javascript/xy-smoothed-line/package.json +1 -1
- package/examples/javascript/xy-stacked-and-clustered-column/package.json +1 -1
- package/examples/javascript/xy-stacked-column/package.json +1 -1
- package/examples/javascript/xy-stacked-step/package.json +1 -1
- package/examples/javascript/xy-stock/package.json +1 -1
- package/examples/javascript/xy-stock-comparing/package.json +1 -1
- package/examples/typescript/flow-chord/package.json +1 -1
- package/examples/typescript/flow-chord-directed/package.json +1 -1
- package/examples/typescript/flow-chord-non-ribbon/package.json +1 -1
- package/examples/typescript/flow-sankey/package.json +1 -1
- package/examples/typescript/gauge/package.json +1 -1
- package/examples/typescript/gauge-bands/package.json +1 -1
- package/examples/typescript/hierarchy-force-directed/package.json +1 -1
- package/examples/typescript/hierarchy-pack/package.json +1 -1
- package/examples/typescript/hierarchy-partition/package.json +1 -1
- package/examples/typescript/hierarchy-sunburst/package.json +1 -1
- package/examples/typescript/hierarchy-tree/package.json +1 -1
- package/examples/typescript/hierarchy-treemap/package.json +1 -1
- package/examples/typescript/json/package.json +1 -1
- package/examples/typescript/map-animating-along-lines/package.json +1 -1
- package/examples/typescript/map-day-and-night/package.json +1 -1
- package/examples/typescript/map-globe-rotate-to-country/package.json +1 -1
- package/examples/typescript/map-globe-with-projected-circles/package.json +1 -1
- package/examples/typescript/map-with-bubbles/package.json +1 -1
- package/examples/typescript/map-zoom-to-country/package.json +1 -1
- package/examples/typescript/misc-40-charts/package.json +1 -1
- package/examples/typescript/misc-microchart-grid/package.json +1 -1
- package/examples/typescript/pie-chart/package.json +1 -1
- package/examples/typescript/pie-donut-chart/package.json +1 -1
- package/examples/typescript/pie-variable-radius/package.json +1 -1
- package/examples/typescript/radar-column-iwatch-style/package.json +1 -1
- package/examples/typescript/radar-heat-map/package.json +1 -1
- package/examples/typescript/radar-line/package.json +1 -1
- package/examples/typescript/radar-time-line/package.json +1 -1
- package/examples/typescript/sliced-funnel/package.json +1 -1
- package/examples/typescript/sliced-pictorial-stacked/package.json +1 -1
- package/examples/typescript/sliced-pyramid/package.json +1 -1
- package/examples/typescript/stock-chart/README.md +6 -0
- package/examples/typescript/stock-chart/index.css +11 -0
- package/examples/typescript/stock-chart/index.html +13 -0
- package/examples/typescript/stock-chart/index.ts +552 -0
- package/examples/typescript/stock-chart/package.json +18 -0
- package/examples/typescript/stock-chart/tsconfig.json +12 -0
- package/examples/typescript/stock-chart/webpack.config.js +45 -0
- package/examples/typescript/stock-chart-comparing-stocks/README.md +6 -0
- package/examples/typescript/stock-chart-comparing-stocks/data/AAPL_day.js +255 -0
- package/examples/typescript/stock-chart-comparing-stocks/data/AMD_day.js +255 -0
- package/examples/typescript/stock-chart-comparing-stocks/data/AMZN_day.js +255 -0
- package/examples/typescript/stock-chart-comparing-stocks/data/GOOG_day.js +255 -0
- package/examples/typescript/stock-chart-comparing-stocks/data/MSFT_day.js +255 -0
- package/examples/typescript/stock-chart-comparing-stocks/data/NFLX_day.js +255 -0
- package/examples/typescript/stock-chart-comparing-stocks/data/NVDA_day.js +255 -0
- package/examples/typescript/stock-chart-comparing-stocks/data/TSLA_day.js +255 -0
- package/examples/typescript/stock-chart-comparing-stocks/index.css +11 -0
- package/examples/typescript/stock-chart-comparing-stocks/index.html +13 -0
- package/examples/typescript/stock-chart-comparing-stocks/index.ts +361 -0
- package/examples/typescript/stock-chart-comparing-stocks/package.json +18 -0
- package/examples/typescript/stock-chart-comparing-stocks/tsconfig.json +12 -0
- package/examples/typescript/stock-chart-comparing-stocks/webpack.config.js +45 -0
- package/examples/typescript/stock-chart-data-granularity/README.md +6 -0
- package/examples/typescript/stock-chart-data-granularity/data/MSFT_day.js +255 -0
- package/examples/typescript/stock-chart-data-granularity/data/MSFT_minute.js +392 -0
- package/examples/typescript/stock-chart-data-granularity/data/MSFT_month.js +14 -0
- package/examples/typescript/stock-chart-data-granularity/data/MSFT_week.js +55 -0
- package/examples/typescript/stock-chart-data-granularity/index.css +11 -0
- package/examples/typescript/stock-chart-data-granularity/index.html +13 -0
- package/examples/typescript/stock-chart-data-granularity/index.ts +344 -0
- package/examples/typescript/stock-chart-data-granularity/package.json +18 -0
- package/examples/typescript/stock-chart-data-granularity/tsconfig.json +12 -0
- package/examples/typescript/stock-chart-data-granularity/webpack.config.js +45 -0
- package/examples/typescript/stock-chart-data-grouping/README.md +6 -0
- package/examples/typescript/stock-chart-data-grouping/data/MSFT_day.js +3103 -0
- package/examples/typescript/stock-chart-data-grouping/index.css +11 -0
- package/examples/typescript/stock-chart-data-grouping/index.html +13 -0
- package/examples/typescript/stock-chart-data-grouping/index.ts +343 -0
- package/examples/typescript/stock-chart-data-grouping/package.json +18 -0
- package/examples/typescript/stock-chart-data-grouping/tsconfig.json +12 -0
- package/examples/typescript/stock-chart-data-grouping/webpack.config.js +45 -0
- package/examples/typescript/stock-chart-intraday/README.md +6 -0
- package/examples/typescript/stock-chart-intraday/index.css +11 -0
- package/examples/typescript/stock-chart-intraday/index.html +13 -0
- package/examples/typescript/stock-chart-intraday/index.ts +678 -0
- package/examples/typescript/stock-chart-intraday/package.json +18 -0
- package/examples/typescript/stock-chart-intraday/tsconfig.json +12 -0
- package/examples/typescript/stock-chart-intraday/webpack.config.js +45 -0
- package/examples/typescript/stock-chart-live/README.md +6 -0
- package/examples/typescript/stock-chart-live/index.css +11 -0
- package/examples/typescript/stock-chart-live/index.html +13 -0
- package/examples/typescript/stock-chart-live/index.ts +308 -0
- package/examples/typescript/stock-chart-live/package.json +18 -0
- package/examples/typescript/stock-chart-live/tsconfig.json +12 -0
- package/examples/typescript/stock-chart-live/webpack.config.js +45 -0
- package/examples/typescript/stock-chart-volume-separate-panel/README.md +6 -0
- package/examples/typescript/stock-chart-volume-separate-panel/index.css +11 -0
- package/examples/typescript/stock-chart-volume-separate-panel/index.html +13 -0
- package/examples/typescript/stock-chart-volume-separate-panel/index.ts +590 -0
- package/examples/typescript/stock-chart-volume-separate-panel/package.json +18 -0
- package/examples/typescript/stock-chart-volume-separate-panel/tsconfig.json +12 -0
- package/examples/typescript/stock-chart-volume-separate-panel/webpack.config.js +45 -0
- package/examples/typescript/venn-diagram/package.json +1 -1
- package/examples/typescript/wordcloud-with-data/package.json +1 -1
- package/examples/typescript/wordcloud-with-text/package.json +1 -1
- package/examples/typescript/xy-100-percent-stacked-column/package.json +1 -1
- package/examples/typescript/xy-animated-bullet-at-the-end-of-the-series/package.json +1 -1
- package/examples/typescript/xy-bubble/package.json +1 -1
- package/examples/typescript/xy-candlestick/package.json +1 -1
- package/examples/typescript/xy-clustered-column/package.json +1 -1
- package/examples/typescript/xy-column/package.json +1 -1
- package/examples/typescript/xy-comparing-series-google-analytics-style/package.json +1 -1
- package/examples/typescript/xy-data-grouping/package.json +1 -1
- package/examples/typescript/xy-draggable-range/package.json +1 -1
- package/examples/typescript/xy-drawing-series-with-mouse-or-touch/package.json +1 -1
- package/examples/typescript/xy-dumbbell plot/package.json +1 -1
- package/examples/typescript/xy-evenly-spaced-date-axis/package.json +1 -1
- package/examples/typescript/xy-line/package.json +1 -1
- package/examples/typescript/xy-line-highlight-on-legend-hover/package.json +1 -1
- package/examples/typescript/xy-live-data/package.json +1 -1
- package/examples/typescript/xy-multiple-synced-value-axes/package.json +1 -1
- package/examples/typescript/xy-ohlc/package.json +1 -1
- package/examples/typescript/xy-real-time-data-sorting/package.json +1 -1
- package/examples/typescript/xy-smoothed-line/package.json +1 -1
- package/examples/typescript/xy-stacked-and-clustered-column/package.json +1 -1
- package/examples/typescript/xy-stacked-column/package.json +1 -1
- package/examples/typescript/xy-stacked-step/package.json +1 -1
- package/examples/typescript/xy-stock/package.json +1 -1
- package/examples/typescript/xy-stock-comparing/package.json +1 -1
- package/package.json +3 -1
- package/stock.d.ts +64 -0
- package/stock.d.ts.map +1 -0
- package/stock.js +64 -0
- package/stock.js.map +1 -0
|
@@ -0,0 +1,443 @@
|
|
|
1
|
+
import { __extends } from "tslib";
|
|
2
|
+
import { Container } from "../../../core/render/Container";
|
|
3
|
+
import { LineSeries } from "../../xy/series/LineSeries";
|
|
4
|
+
import { BaseColumnSeries } from "../../xy/series/BaseColumnSeries";
|
|
5
|
+
import { MultiDisposer } from "../../../core/util/Disposer";
|
|
6
|
+
import * as $array from "../../../core/util/Array";
|
|
7
|
+
/**
|
|
8
|
+
* Base class for [[StockChart]] indicators.
|
|
9
|
+
*
|
|
10
|
+
* @see {@link https://www.amcharts.com/docs/v5/charts/stock/indicators/} for more info
|
|
11
|
+
*/
|
|
12
|
+
var Indicator = /** @class */ (function (_super) {
|
|
13
|
+
__extends(Indicator, _super);
|
|
14
|
+
function Indicator() {
|
|
15
|
+
var _this = _super !== null && _super.apply(this, arguments) || this;
|
|
16
|
+
Object.defineProperty(_this, "_editableSettings", {
|
|
17
|
+
enumerable: true,
|
|
18
|
+
configurable: true,
|
|
19
|
+
writable: true,
|
|
20
|
+
value: []
|
|
21
|
+
});
|
|
22
|
+
Object.defineProperty(_this, "series", {
|
|
23
|
+
enumerable: true,
|
|
24
|
+
configurable: true,
|
|
25
|
+
writable: true,
|
|
26
|
+
value: void 0
|
|
27
|
+
});
|
|
28
|
+
Object.defineProperty(_this, "_dataDirty", {
|
|
29
|
+
enumerable: true,
|
|
30
|
+
configurable: true,
|
|
31
|
+
writable: true,
|
|
32
|
+
value: false
|
|
33
|
+
});
|
|
34
|
+
Object.defineProperty(_this, "_sDP", {
|
|
35
|
+
enumerable: true,
|
|
36
|
+
configurable: true,
|
|
37
|
+
writable: true,
|
|
38
|
+
value: void 0
|
|
39
|
+
});
|
|
40
|
+
Object.defineProperty(_this, "_vDP", {
|
|
41
|
+
enumerable: true,
|
|
42
|
+
configurable: true,
|
|
43
|
+
writable: true,
|
|
44
|
+
value: void 0
|
|
45
|
+
});
|
|
46
|
+
return _this;
|
|
47
|
+
}
|
|
48
|
+
Object.defineProperty(Indicator.prototype, "_afterNew", {
|
|
49
|
+
enumerable: false,
|
|
50
|
+
configurable: true,
|
|
51
|
+
writable: true,
|
|
52
|
+
value: function () {
|
|
53
|
+
_super.prototype._afterNew.call(this);
|
|
54
|
+
this.set("position", "absolute");
|
|
55
|
+
}
|
|
56
|
+
});
|
|
57
|
+
Object.defineProperty(Indicator.prototype, "_prepareChildren", {
|
|
58
|
+
enumerable: false,
|
|
59
|
+
configurable: true,
|
|
60
|
+
writable: true,
|
|
61
|
+
value: function () {
|
|
62
|
+
var _this = this;
|
|
63
|
+
_super.prototype._prepareChildren.call(this);
|
|
64
|
+
if (this.isDirty("stockSeries") || this.isDirty("volumeSeries")) {
|
|
65
|
+
this._dataDirty = true;
|
|
66
|
+
var stockSeries = this.get("stockSeries");
|
|
67
|
+
var previousS = this._prevSettings.stockSeries;
|
|
68
|
+
if (previousS && this._sDP) {
|
|
69
|
+
this._sDP.dispose();
|
|
70
|
+
}
|
|
71
|
+
if (stockSeries) {
|
|
72
|
+
this._sDP = new MultiDisposer([
|
|
73
|
+
stockSeries.events.on("datavalidated", function () {
|
|
74
|
+
_this.markDataDirty();
|
|
75
|
+
}),
|
|
76
|
+
stockSeries.events.on("datasetchanged", function () {
|
|
77
|
+
_this.markDataDirty();
|
|
78
|
+
})
|
|
79
|
+
]);
|
|
80
|
+
}
|
|
81
|
+
var previousV = this._prevSettings.volumeSeries;
|
|
82
|
+
if (previousV && this._vDP) {
|
|
83
|
+
this._vDP.dispose();
|
|
84
|
+
}
|
|
85
|
+
var volumeSeries = this.get("volumeSeries");
|
|
86
|
+
if (volumeSeries) {
|
|
87
|
+
this._vDP = new MultiDisposer([
|
|
88
|
+
volumeSeries.events.on("datavalidated", function () {
|
|
89
|
+
_this.markDataDirty();
|
|
90
|
+
}),
|
|
91
|
+
volumeSeries.events.on("datasetchanged", function () {
|
|
92
|
+
_this.markDataDirty();
|
|
93
|
+
})
|
|
94
|
+
]);
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
if (this.isDirty("field")) {
|
|
98
|
+
if (this.get("field")) {
|
|
99
|
+
this._dataDirty = true;
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
if (this.isDirty("period")) {
|
|
103
|
+
this._dataDirty = true;
|
|
104
|
+
this.setCustomData("period", this.get("period"));
|
|
105
|
+
}
|
|
106
|
+
if (this._dataDirty) {
|
|
107
|
+
this.prepareData();
|
|
108
|
+
this._dataDirty = false;
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
});
|
|
112
|
+
Object.defineProperty(Indicator.prototype, "markDataDirty", {
|
|
113
|
+
enumerable: false,
|
|
114
|
+
configurable: true,
|
|
115
|
+
writable: true,
|
|
116
|
+
value: function () {
|
|
117
|
+
this._dataDirty = true;
|
|
118
|
+
this.markDirty();
|
|
119
|
+
}
|
|
120
|
+
});
|
|
121
|
+
Object.defineProperty(Indicator.prototype, "_updateChildren", {
|
|
122
|
+
enumerable: false,
|
|
123
|
+
configurable: true,
|
|
124
|
+
writable: true,
|
|
125
|
+
value: function () {
|
|
126
|
+
_super.prototype._updateChildren.call(this);
|
|
127
|
+
if (this.isDirty("seriesColor")) {
|
|
128
|
+
this._updateSeriesColor(this.series, this.get("seriesColor"), "seriesColor");
|
|
129
|
+
}
|
|
130
|
+
this.setCustomData("period", this.get("period"));
|
|
131
|
+
this.setCustomData("field", this.get("field"));
|
|
132
|
+
this.setCustomData("name", this.get("name"));
|
|
133
|
+
this.setCustomData("shortName", this.get("shortName"));
|
|
134
|
+
}
|
|
135
|
+
});
|
|
136
|
+
Object.defineProperty(Indicator.prototype, "_dispose", {
|
|
137
|
+
enumerable: false,
|
|
138
|
+
configurable: true,
|
|
139
|
+
writable: true,
|
|
140
|
+
value: function () {
|
|
141
|
+
_super.prototype._dispose.call(this);
|
|
142
|
+
if (this._sDP) {
|
|
143
|
+
this._sDP.dispose();
|
|
144
|
+
}
|
|
145
|
+
if (this._vDP) {
|
|
146
|
+
this._vDP.dispose();
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
});
|
|
150
|
+
Object.defineProperty(Indicator.prototype, "_handleLegend", {
|
|
151
|
+
enumerable: false,
|
|
152
|
+
configurable: true,
|
|
153
|
+
writable: true,
|
|
154
|
+
value: function (series) {
|
|
155
|
+
var _this = this;
|
|
156
|
+
var legend = this.get("legend");
|
|
157
|
+
if (legend) {
|
|
158
|
+
legend.data.push(series);
|
|
159
|
+
var legendDataItem = legend.dataItems[legend.dataItems.length - 1];
|
|
160
|
+
legendDataItem.get("marker").set("forceHidden", true);
|
|
161
|
+
var closeButton = legendDataItem.get("closeButton");
|
|
162
|
+
closeButton.set("forceHidden", false);
|
|
163
|
+
closeButton.events.on("click", function () {
|
|
164
|
+
_this.dispose();
|
|
165
|
+
});
|
|
166
|
+
var settingsButton = legendDataItem.get("settingsButton");
|
|
167
|
+
settingsButton.setPrivate("customData", this);
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
});
|
|
171
|
+
Object.defineProperty(Indicator.prototype, "_updateSeriesColor", {
|
|
172
|
+
enumerable: false,
|
|
173
|
+
configurable: true,
|
|
174
|
+
writable: true,
|
|
175
|
+
value: function (series, color, contextName) {
|
|
176
|
+
if (series) {
|
|
177
|
+
series.set("stroke", color);
|
|
178
|
+
series.set("fill", color);
|
|
179
|
+
if (series instanceof LineSeries) {
|
|
180
|
+
series.strokes.template.set("stroke", color);
|
|
181
|
+
}
|
|
182
|
+
if (series instanceof BaseColumnSeries) {
|
|
183
|
+
series.columns.template.setAll({ stroke: color, fill: color });
|
|
184
|
+
}
|
|
185
|
+
if (contextName && color) {
|
|
186
|
+
this.setCustomData(contextName, color.toCSSHex());
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
});
|
|
191
|
+
Object.defineProperty(Indicator.prototype, "setCustomData", {
|
|
192
|
+
enumerable: false,
|
|
193
|
+
configurable: true,
|
|
194
|
+
writable: true,
|
|
195
|
+
value: function (name, value) {
|
|
196
|
+
var customData = this.series.getPrivate("customData");
|
|
197
|
+
if (customData) {
|
|
198
|
+
customData[name] = value;
|
|
199
|
+
}
|
|
200
|
+
}
|
|
201
|
+
});
|
|
202
|
+
/**
|
|
203
|
+
* @ignore
|
|
204
|
+
*/
|
|
205
|
+
Object.defineProperty(Indicator.prototype, "prepareData", {
|
|
206
|
+
enumerable: false,
|
|
207
|
+
configurable: true,
|
|
208
|
+
writable: true,
|
|
209
|
+
value: function () {
|
|
210
|
+
}
|
|
211
|
+
});
|
|
212
|
+
Object.defineProperty(Indicator.prototype, "_getValue", {
|
|
213
|
+
enumerable: false,
|
|
214
|
+
configurable: true,
|
|
215
|
+
writable: true,
|
|
216
|
+
value: function (dataItem) {
|
|
217
|
+
var field = this.get("field");
|
|
218
|
+
var o = dataItem.get("openValueY");
|
|
219
|
+
var h = dataItem.get("highValueY");
|
|
220
|
+
var l = dataItem.get("lowValueY");
|
|
221
|
+
var c = dataItem.get("valueY");
|
|
222
|
+
switch (field) {
|
|
223
|
+
case "close":
|
|
224
|
+
return c;
|
|
225
|
+
break;
|
|
226
|
+
case "open":
|
|
227
|
+
return o;
|
|
228
|
+
break;
|
|
229
|
+
case "high":
|
|
230
|
+
return h;
|
|
231
|
+
break;
|
|
232
|
+
case "low":
|
|
233
|
+
return l;
|
|
234
|
+
break;
|
|
235
|
+
case "hl/2":
|
|
236
|
+
return (h + l) / 2;
|
|
237
|
+
break;
|
|
238
|
+
case "hlc/3":
|
|
239
|
+
return (h + l + c) / 3;
|
|
240
|
+
break;
|
|
241
|
+
case "hlcc/4":
|
|
242
|
+
return (h + l + c + c) / 4;
|
|
243
|
+
break;
|
|
244
|
+
case "ohlc/4":
|
|
245
|
+
return (o + h + l + c) / 4;
|
|
246
|
+
break;
|
|
247
|
+
}
|
|
248
|
+
}
|
|
249
|
+
});
|
|
250
|
+
/**
|
|
251
|
+
* @ignore
|
|
252
|
+
*/
|
|
253
|
+
Object.defineProperty(Indicator.prototype, "_getDataArray", {
|
|
254
|
+
enumerable: false,
|
|
255
|
+
configurable: true,
|
|
256
|
+
writable: true,
|
|
257
|
+
value: function (dataItems) {
|
|
258
|
+
var _this = this;
|
|
259
|
+
var data = [];
|
|
260
|
+
$array.each(dataItems, function (dataItem) {
|
|
261
|
+
data.push({ valueX: dataItem.get("valueX"), value_y: _this._getValue(dataItem) });
|
|
262
|
+
});
|
|
263
|
+
return data;
|
|
264
|
+
}
|
|
265
|
+
});
|
|
266
|
+
/**
|
|
267
|
+
* @ignore
|
|
268
|
+
*/
|
|
269
|
+
Object.defineProperty(Indicator.prototype, "_getTypicalPrice", {
|
|
270
|
+
enumerable: false,
|
|
271
|
+
configurable: true,
|
|
272
|
+
writable: true,
|
|
273
|
+
value: function (dataItems) {
|
|
274
|
+
var data = [];
|
|
275
|
+
$array.each(dataItems, function (dataItem) {
|
|
276
|
+
data.push({ valueX: dataItem.get("valueX"), value_y: (dataItem.get("valueY", 0) + dataItem.get("highValueY", 0) + dataItem.get("lowValueY", 0)) / 2 });
|
|
277
|
+
});
|
|
278
|
+
return data;
|
|
279
|
+
}
|
|
280
|
+
});
|
|
281
|
+
Object.defineProperty(Indicator.prototype, "_sma", {
|
|
282
|
+
enumerable: false,
|
|
283
|
+
configurable: true,
|
|
284
|
+
writable: true,
|
|
285
|
+
value: function (data, period, field, toField) {
|
|
286
|
+
var i = 0;
|
|
287
|
+
var index = 0;
|
|
288
|
+
var ma = 0;
|
|
289
|
+
$array.each(data, function (dataItem) {
|
|
290
|
+
var value = dataItem[field];
|
|
291
|
+
if (value != null) {
|
|
292
|
+
i++;
|
|
293
|
+
ma += value / period;
|
|
294
|
+
if (i >= period) {
|
|
295
|
+
if (i > period) {
|
|
296
|
+
var valueToRemove = data[index - period][field];
|
|
297
|
+
if (valueToRemove != null) {
|
|
298
|
+
ma -= valueToRemove / period;
|
|
299
|
+
}
|
|
300
|
+
}
|
|
301
|
+
dataItem[toField] = ma;
|
|
302
|
+
}
|
|
303
|
+
}
|
|
304
|
+
index++;
|
|
305
|
+
});
|
|
306
|
+
}
|
|
307
|
+
});
|
|
308
|
+
Object.defineProperty(Indicator.prototype, "_wma", {
|
|
309
|
+
enumerable: false,
|
|
310
|
+
configurable: true,
|
|
311
|
+
writable: true,
|
|
312
|
+
value: function (data, period, field, toField) {
|
|
313
|
+
var i = 0;
|
|
314
|
+
var index = 0;
|
|
315
|
+
var ma = 0;
|
|
316
|
+
$array.each(data, function (dataItem) {
|
|
317
|
+
var value = dataItem[field];
|
|
318
|
+
if (value != null) {
|
|
319
|
+
i++;
|
|
320
|
+
if (i >= period) {
|
|
321
|
+
var sum = 0;
|
|
322
|
+
var m = 0;
|
|
323
|
+
var count = 0;
|
|
324
|
+
var k = 0;
|
|
325
|
+
for (var n = index; n >= 0; n--) {
|
|
326
|
+
var pValue = data[n][field];
|
|
327
|
+
if (pValue != null) {
|
|
328
|
+
sum += pValue * (period - m);
|
|
329
|
+
count += (period - m);
|
|
330
|
+
k++;
|
|
331
|
+
}
|
|
332
|
+
m++;
|
|
333
|
+
if (k == period) {
|
|
334
|
+
break;
|
|
335
|
+
}
|
|
336
|
+
}
|
|
337
|
+
ma = sum / count;
|
|
338
|
+
dataItem[toField] = ma;
|
|
339
|
+
}
|
|
340
|
+
}
|
|
341
|
+
index++;
|
|
342
|
+
});
|
|
343
|
+
}
|
|
344
|
+
});
|
|
345
|
+
Object.defineProperty(Indicator.prototype, "_ema", {
|
|
346
|
+
enumerable: false,
|
|
347
|
+
configurable: true,
|
|
348
|
+
writable: true,
|
|
349
|
+
value: function (data, period, field, toField) {
|
|
350
|
+
var i = 0;
|
|
351
|
+
var ma = 0;
|
|
352
|
+
var multiplier = 2 / (1 + period);
|
|
353
|
+
$array.each(data, function (dataItem) {
|
|
354
|
+
var value = dataItem[field];
|
|
355
|
+
if (value != null) {
|
|
356
|
+
i++;
|
|
357
|
+
if (i > period) {
|
|
358
|
+
ma = value * multiplier + ma * (1 - multiplier);
|
|
359
|
+
dataItem[toField] = ma;
|
|
360
|
+
}
|
|
361
|
+
else {
|
|
362
|
+
ma += value / period;
|
|
363
|
+
if (i == period) {
|
|
364
|
+
dataItem[toField] = ma;
|
|
365
|
+
}
|
|
366
|
+
}
|
|
367
|
+
}
|
|
368
|
+
});
|
|
369
|
+
}
|
|
370
|
+
});
|
|
371
|
+
Object.defineProperty(Indicator.prototype, "_dema", {
|
|
372
|
+
enumerable: false,
|
|
373
|
+
configurable: true,
|
|
374
|
+
writable: true,
|
|
375
|
+
value: function (data, period, field, toField) {
|
|
376
|
+
var i = 0;
|
|
377
|
+
var ema2 = 0;
|
|
378
|
+
var multiplier = 2 / (1 + period);
|
|
379
|
+
this._ema(data, period, field, "ema");
|
|
380
|
+
$array.each(data, function (dataItem) {
|
|
381
|
+
var ema = dataItem.ema;
|
|
382
|
+
if (ema != null) {
|
|
383
|
+
i++;
|
|
384
|
+
if (i > period) {
|
|
385
|
+
ema2 = ema * multiplier + ema2 * (1 - multiplier);
|
|
386
|
+
dataItem[toField] = 2 * ema - ema2;
|
|
387
|
+
dataItem.ema2 = ema2;
|
|
388
|
+
}
|
|
389
|
+
else {
|
|
390
|
+
ema2 += ema / period;
|
|
391
|
+
if (i == period) {
|
|
392
|
+
dataItem[toField] = 2 * ema - ema2;
|
|
393
|
+
dataItem.ema2 = ema2;
|
|
394
|
+
}
|
|
395
|
+
}
|
|
396
|
+
}
|
|
397
|
+
});
|
|
398
|
+
}
|
|
399
|
+
});
|
|
400
|
+
Object.defineProperty(Indicator.prototype, "_tema", {
|
|
401
|
+
enumerable: false,
|
|
402
|
+
configurable: true,
|
|
403
|
+
writable: true,
|
|
404
|
+
value: function (data, period, field, toField) {
|
|
405
|
+
var i = 0;
|
|
406
|
+
var ema3 = 0;
|
|
407
|
+
var multiplier = 2 / (1 + period);
|
|
408
|
+
this._dema(data, period, field, "dema");
|
|
409
|
+
$array.each(data, function (dataItem) {
|
|
410
|
+
var ema = dataItem.ema;
|
|
411
|
+
var ema2 = dataItem.ema2;
|
|
412
|
+
if (ema2 != null) {
|
|
413
|
+
i++;
|
|
414
|
+
if (i > period) {
|
|
415
|
+
ema3 = ema2 * multiplier + ema3 * (1 - multiplier);
|
|
416
|
+
dataItem[toField] = 3 * ema - 3 * ema2 + ema3;
|
|
417
|
+
}
|
|
418
|
+
else {
|
|
419
|
+
ema3 += ema2 / period;
|
|
420
|
+
if (i == period) {
|
|
421
|
+
dataItem[toField] = 3 * ema - 3 * ema2 + ema3;
|
|
422
|
+
}
|
|
423
|
+
}
|
|
424
|
+
}
|
|
425
|
+
});
|
|
426
|
+
}
|
|
427
|
+
});
|
|
428
|
+
Object.defineProperty(Indicator, "className", {
|
|
429
|
+
enumerable: true,
|
|
430
|
+
configurable: true,
|
|
431
|
+
writable: true,
|
|
432
|
+
value: "Indicator"
|
|
433
|
+
});
|
|
434
|
+
Object.defineProperty(Indicator, "classNames", {
|
|
435
|
+
enumerable: true,
|
|
436
|
+
configurable: true,
|
|
437
|
+
writable: true,
|
|
438
|
+
value: Container.classNames.concat([Indicator.className])
|
|
439
|
+
});
|
|
440
|
+
return Indicator;
|
|
441
|
+
}(Container));
|
|
442
|
+
export { Indicator };
|
|
443
|
+
//# sourceMappingURL=Indicator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Indicator.js","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/indicators/Indicator.ts"],"names":[],"mappings":"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","sourcesContent":["import type { XYSeries, IXYSeriesDataItem } from \"../../xy/series/XYSeries\";\r\nimport type { StockLegend } from \"../StockLegend\";\r\nimport type { StockChart } from \"../StockChart\";\r\nimport type { DataItem } from \"../../../core/render/Component\";\r\nimport type { Color } from \"../../../core/util/Color\";\r\n\r\nimport { Container, IContainerSettings, IContainerPrivate, IContainerEvents } from \"../../../core/render/Container\";\r\nimport { LineSeries } from \"../../xy/series/LineSeries\";\r\nimport { BaseColumnSeries } from \"../../xy/series/BaseColumnSeries\";\r\nimport { MultiDisposer } from \"../../../core/util/Disposer\";\r\n\r\nimport * as $array from \"../../../core/util/Array\";\r\n\r\nexport interface IIndicatorEditableSetting {\r\n\t/**\r\n\t * @todo review\r\n\t */\t\r\n\tkey: string;\r\n\t/**\r\n\t * @todo review\r\n\t */\t\r\n\tname: string;\r\n\t/**\r\n\t * @todo review\r\n\t */\t\r\n\ttype: \"color\" | \"number\" | \"dropdown\" | \"checkbox\";\r\n\t/**\r\n\t * @todo review\r\n\t */\t\r\n\toptions?: Array<string | { value: number | string, text: string }>;\r\n}\r\n\r\nexport interface IIndicatorSettings extends IContainerSettings {\r\n\t/**\r\n\t * @todo review\r\n\t */\t\r\n\tstockChart: StockChart;\r\n\t/**\r\n\t * @todo review\r\n\t */\t\r\n\tstockSeries: XYSeries;\r\n\t/**\r\n\t * @todo review\r\n\t */\t\r\n\tvolumeSeries?: XYSeries;\r\n\t/**\r\n\t * @todo review\r\n\t */\t\r\n\tlegend?: StockLegend;\r\n\t/**\r\n\t * @todo review\r\n\t */\r\n\tperiod?: number;\r\n\t/**\r\n\t * @todo review\r\n\t */\t\r\n\tfield?: \"open\" | \"close\" | \"low\" | \"high\" | \"hl/2\" | \"hlc/3\" | \"hlcc/4\" | \"ohlc/4\";\r\n\t/**\r\n\t * @todo review\r\n\t */\t\r\n\tname?: string;\r\n\t/**\r\n\t * @todo review\r\n\t */\t\r\n\tshortName?: string;\r\n\t/**\r\n\t * @todo review\r\n\t */\t\r\n\tseriesColor?: Color;\r\n}\r\n\r\nexport interface IIndicatorPrivate extends IContainerPrivate {\r\n}\r\n\r\nexport interface IIndicatorEvents extends IContainerEvents {\r\n\r\n}\r\n\r\n/**\r\n * Base class for [[StockChart]] indicators.\r\n *\r\n * @see {@link https://www.amcharts.com/docs/v5/charts/stock/indicators/} for more info\r\n */\r\nexport abstract class Indicator extends Container {\r\n\tpublic static className: string = \"Indicator\";\r\n\tpublic static classNames: Array<string> = Container.classNames.concat([Indicator.className]);\r\n\r\n\tdeclare public _settings: IIndicatorSettings;\r\n\tdeclare public _privateSettings: IIndicatorPrivate;\r\n\tdeclare public _events: IIndicatorEvents;\r\n\r\n\tpublic _editableSettings: IIndicatorEditableSetting[] = [];\r\n\r\n\tpublic series!: XYSeries;\r\n\r\n\tprotected _dataDirty = false;\r\n\r\n\tprotected _afterNew() {\r\n\t\tsuper._afterNew();\r\n\t\tthis.set(\"position\", \"absolute\");\r\n\t}\r\n\r\n\tprotected _sDP?: MultiDisposer;\r\n\tprotected _vDP?: MultiDisposer;\r\n\r\n\tpublic _prepareChildren() {\r\n\t\tsuper._prepareChildren();\r\n\r\n\t\tif (this.isDirty(\"stockSeries\") || this.isDirty(\"volumeSeries\")) {\r\n\t\t\tthis._dataDirty = true;\r\n\r\n\t\t\tconst stockSeries = this.get(\"stockSeries\");\r\n\t\t\tconst previousS = this._prevSettings.stockSeries;\r\n\t\t\tif (previousS && this._sDP) {\r\n\t\t\t\tthis._sDP.dispose();\r\n\t\t\t}\r\n\t\t\tif (stockSeries) {\r\n\t\t\t\tthis._sDP = new MultiDisposer([\r\n\t\t\t\t\tstockSeries.events.on(\"datavalidated\", () => {\r\n\t\t\t\t\t\tthis.markDataDirty();\r\n\t\t\t\t\t}),\r\n\t\t\t\t\tstockSeries.events.on(\"datasetchanged\", () => {\r\n\t\t\t\t\t\tthis.markDataDirty();\r\n\t\t\t\t\t})\r\n\t\t\t\t])\r\n\t\t\t}\r\n\r\n\t\t\tconst previousV = this._prevSettings.volumeSeries;\r\n\t\t\tif (previousV && this._vDP) {\r\n\t\t\t\tthis._vDP.dispose();\r\n\t\t\t}\r\n\t\t\tconst volumeSeries = this.get(\"volumeSeries\");\r\n\t\t\tif (volumeSeries) {\r\n\t\t\t\tthis._vDP = new MultiDisposer([\r\n\t\t\t\t\tvolumeSeries.events.on(\"datavalidated\", () => {\r\n\t\t\t\t\t\tthis.markDataDirty();\r\n\t\t\t\t\t}),\r\n\t\t\t\t\tvolumeSeries.events.on(\"datasetchanged\", () => {\r\n\t\t\t\t\t\tthis.markDataDirty();\r\n\t\t\t\t\t})\r\n\t\t\t\t])\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tif (this.isDirty(\"field\")) {\r\n\t\t\tif (this.get(\"field\")) {\r\n\t\t\t\tthis._dataDirty = true;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tif (this.isDirty(\"period\")) {\r\n\t\t\tthis._dataDirty = true;\r\n\t\t\tthis.setCustomData(\"period\", this.get(\"period\"));\r\n\t\t}\r\n\r\n\t\tif (this._dataDirty) {\r\n\t\t\tthis.prepareData();\r\n\t\t\tthis._dataDirty = false;\r\n\t\t}\r\n\t}\r\n\r\n\tprotected markDataDirty() {\r\n\t\tthis._dataDirty = true;\r\n\t\tthis.markDirty();\r\n\t}\r\n\r\n\tpublic _updateChildren() {\r\n\t\tsuper._updateChildren();\r\n\r\n\t\tif (this.isDirty(\"seriesColor\")) {\r\n\t\t\tthis._updateSeriesColor(this.series, this.get(\"seriesColor\"), \"seriesColor\");\r\n\t\t}\r\n\r\n\t\tthis.setCustomData(\"period\", this.get(\"period\"));\r\n\t\tthis.setCustomData(\"field\", this.get(\"field\"));\r\n\t\tthis.setCustomData(\"name\", this.get(\"name\"));\r\n\t\tthis.setCustomData(\"shortName\", this.get(\"shortName\"));\r\n\r\n\t}\r\n\r\n\tprotected _dispose() {\r\n\t\tsuper._dispose();\r\n\t\tif (this._sDP) {\r\n\t\t\tthis._sDP.dispose();\r\n\t\t}\r\n\t\tif (this._vDP) {\r\n\t\t\tthis._vDP.dispose();\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _handleLegend(series: XYSeries) {\r\n\t\tconst legend = this.get(\"legend\");\r\n\t\tif (legend) {\r\n\t\t\tlegend.data.push(series);\r\n\r\n\t\t\tvar legendDataItem = legend.dataItems[legend.dataItems.length - 1];\r\n\t\t\tlegendDataItem.get(\"marker\").set(\"forceHidden\", true);\r\n\r\n\t\t\tvar closeButton = legendDataItem.get(\"closeButton\");\r\n\t\t\tcloseButton.set(\"forceHidden\", false);\r\n\t\t\tcloseButton.events.on(\"click\", () => {\r\n\t\t\t\tthis.dispose();\r\n\t\t\t})\r\n\r\n\t\t\tvar settingsButton = legendDataItem.get(\"settingsButton\");\r\n\t\t\tsettingsButton.setPrivate(\"customData\", this);\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _updateSeriesColor(series?: XYSeries, color?: Color, contextName?: string) {\r\n\t\tif (series) {\r\n\t\t\tseries.set(\"stroke\", color);\r\n\t\t\tseries.set(\"fill\", color);\r\n\t\t\tif (series instanceof LineSeries) {\r\n\t\t\t\tseries.strokes.template.set(\"stroke\", color);\r\n\t\t\t}\r\n\r\n\t\t\tif (series instanceof BaseColumnSeries) {\r\n\t\t\t\tseries.columns.template.setAll({ stroke: color, fill: color });\r\n\t\t\t}\r\n\r\n\t\t\tif (contextName && color) {\r\n\t\t\t\tthis.setCustomData(contextName, color.toCSSHex());\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\r\n\tpublic setCustomData(name: string, value?: any) {\r\n\t\tconst customData = this.series.getPrivate(\"customData\");\r\n\t\tif (customData) {\r\n\t\t\tcustomData[name] = value;\r\n\t\t}\r\n\t}\r\n\r\n\r\n\t/**\r\n\t * @ignore\r\n\t */\r\n\tpublic prepareData() {\r\n\r\n\t}\r\n\r\n\tprotected _getValue(dataItem: DataItem<IXYSeriesDataItem>): number | undefined {\r\n\t\tconst field = this.get(\"field\");\r\n\r\n\t\tlet o = dataItem.get(\"openValueY\") as number;\r\n\t\tlet h = dataItem.get(\"highValueY\") as number;\r\n\t\tlet l = dataItem.get(\"lowValueY\") as number;\r\n\t\tlet c = dataItem.get(\"valueY\") as number;\r\n\r\n\t\tswitch (field) {\r\n\t\t\tcase \"close\":\r\n\t\t\t\treturn c;\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"open\":\r\n\t\t\t\treturn o;\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"high\":\r\n\t\t\t\treturn h;\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"low\":\r\n\t\t\t\treturn l;\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"hl/2\":\r\n\t\t\t\treturn (h + l) / 2;\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"hlc/3\":\r\n\t\t\t\treturn (h + l + c) / 3;\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"hlcc/4\":\r\n\t\t\t\treturn (h + l + c + c) / 4;\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"ohlc/4\":\r\n\t\t\t\treturn (o + h + l + c) / 4;\r\n\t\t\t\tbreak;\r\n\t\t}\r\n\t}\r\n\r\n\t/**\r\n\t * @ignore\r\n\t */\r\n\tprotected _getDataArray(dataItems: Array<DataItem<any>>): Array<any> {\r\n\t\tconst data: Array<any> = [];\r\n\t\t$array.each(dataItems, (dataItem) => {\r\n\t\t\tdata.push({ valueX: dataItem.get(\"valueX\"), value_y: this._getValue(dataItem) });\r\n\t\t})\r\n\t\treturn data;\r\n\t}\r\n\r\n\t/**\r\n\t * @ignore\r\n\t */\r\n\tprotected _getTypicalPrice(dataItems: Array<DataItem<any>>): Array<any> {\r\n\t\tconst data: Array<any> = [];\r\n\t\t$array.each(dataItems, (dataItem) => {\r\n\t\t\tdata.push({ valueX: dataItem.get(\"valueX\"), value_y: (dataItem.get(\"valueY\", 0) + dataItem.get(\"highValueY\", 0) + dataItem.get(\"lowValueY\", 0)) / 2 });\r\n\t\t})\r\n\t\treturn data;\r\n\t}\r\n\r\n\tprotected _sma(data: Array<any>, period: number, field: string, toField: string) {\r\n\t\tlet i = 0;\r\n\t\tlet index = 0;\r\n\t\tlet ma = 0;\r\n\t\t$array.each(data, (dataItem) => {\r\n\t\t\tlet value = dataItem[field];\r\n\t\t\tif (value != null) {\r\n\t\t\t\ti++;\r\n\t\t\t\tma += value / period;\r\n\r\n\t\t\t\tif (i >= period) {\r\n\t\t\t\t\tif (i > period) {\r\n\t\t\t\t\t\tlet valueToRemove = data[index - period][field];\r\n\t\t\t\t\t\tif (valueToRemove != null) {\r\n\t\t\t\t\t\t\tma -= valueToRemove / period;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t\tdataItem[toField] = ma;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tindex++;\r\n\t\t})\r\n\t}\r\n\r\n\tprotected _wma(data: Array<any>, period: number, field: string, toField: string) {\r\n\t\tlet i = 0;\r\n\t\tlet index = 0;\r\n\t\tlet ma = 0;\r\n\t\t$array.each(data, (dataItem) => {\r\n\t\t\tlet value = dataItem[field];\r\n\t\t\tif (value != null) {\r\n\t\t\t\ti++;\r\n\t\t\t\tif (i >= period) {\r\n\t\t\t\t\tlet sum = 0;\r\n\t\t\t\t\tlet m = 0;\r\n\t\t\t\t\tlet count = 0;\r\n\t\t\t\t\tlet k = 0\r\n\t\t\t\t\tfor (let n = index; n >= 0; n--) {\r\n\t\t\t\t\t\tlet pValue = data[n][field];\r\n\r\n\t\t\t\t\t\tif (pValue != null) {\r\n\t\t\t\t\t\t\tsum += pValue * (period - m);\r\n\t\t\t\t\t\t\tcount += (period - m);\r\n\t\t\t\t\t\t\tk++;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tm++;\r\n\r\n\t\t\t\t\t\tif (k == period) {\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tma = sum / count;\r\n\t\t\t\t\tdataItem[toField] = ma;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tindex++;\r\n\t\t})\r\n\t}\r\n\r\n\tprotected _ema(data: Array<any>, period: number, field: string, toField: string) {\r\n\t\tlet i = 0;\r\n\t\tlet ma = 0;\r\n\t\tlet multiplier = 2 / (1 + period);\r\n\t\t$array.each(data, (dataItem) => {\r\n\t\t\tlet value = dataItem[field];\r\n\t\t\tif (value != null) {\r\n\t\t\t\ti++;\r\n\r\n\t\t\t\tif (i > period) {\r\n\t\t\t\t\tma = value * multiplier + ma * (1 - multiplier);\r\n\t\t\t\t\tdataItem[toField] = ma;\r\n\t\t\t\t}\r\n\t\t\t\telse {\r\n\t\t\t\t\tma += value / period;\r\n\t\t\t\t\tif (i == period) {\r\n\t\t\t\t\t\tdataItem[toField] = ma;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t})\r\n\t}\r\n\r\n\tprotected _dema(data: Array<any>, period: number, field: string, toField: string) {\r\n\t\tlet i = 0;\r\n\t\tlet ema2 = 0;\r\n\t\tlet multiplier = 2 / (1 + period);\r\n\r\n\t\tthis._ema(data, period, field, \"ema\");\r\n\r\n\t\t$array.each(data, (dataItem) => {\r\n\t\t\tlet ema = dataItem.ema;\r\n\t\t\tif (ema != null) {\r\n\t\t\t\ti++;\r\n\t\t\t\tif (i > period) {\r\n\t\t\t\t\tema2 = ema * multiplier + ema2 * (1 - multiplier);\r\n\t\t\t\t\tdataItem[toField] = 2 * ema - ema2;\r\n\t\t\t\t\tdataItem.ema2 = ema2;\r\n\t\t\t\t}\r\n\t\t\t\telse {\r\n\t\t\t\t\tema2 += ema / period;\r\n\t\t\t\t\tif (i == period) {\r\n\t\t\t\t\t\tdataItem[toField] = 2 * ema - ema2;\r\n\t\t\t\t\t\tdataItem.ema2 = ema2;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t})\r\n\t}\r\n\r\n\tprotected _tema(data: Array<any>, period: number, field: string, toField: string) {\r\n\t\tlet i = 0;\r\n\t\tlet ema3 = 0;\r\n\t\tlet multiplier = 2 / (1 + period);\r\n\r\n\t\tthis._dema(data, period, field, \"dema\");\r\n\r\n\t\t$array.each(data, (dataItem) => {\r\n\t\t\tlet ema = dataItem.ema;\r\n\t\t\tlet ema2 = dataItem.ema2;\r\n\r\n\t\t\tif (ema2 != null) {\r\n\t\t\t\ti++;\r\n\t\t\t\tif (i > period) {\r\n\t\t\t\t\tema3 = ema2 * multiplier + ema3 * (1 - multiplier);\r\n\t\t\t\t\tdataItem[toField] = 3 * ema - 3 * ema2 + ema3;\r\n\t\t\t\t}\r\n\t\t\t\telse {\r\n\t\t\t\t\tema3 += ema2 / period;\r\n\t\t\t\t\tif (i == period) {\r\n\t\t\t\t\t\tdataItem[toField] = 3 * ema - 3 * ema2 + ema3;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t})\r\n\t}\r\n}"]}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import type { IIndicatorEditableSetting } from "./Indicator";
|
|
2
|
+
import { Color } from "../../../core/util/Color";
|
|
3
|
+
import { ChartIndicator, IChartIndicatorSettings, IChartIndicatorPrivate, IChartIndicatorEvents } from "./ChartIndicator";
|
|
4
|
+
import { LineSeries } from "../../xy/series/LineSeries";
|
|
5
|
+
import { ColumnSeries } from "../../xy/series/ColumnSeries";
|
|
6
|
+
export interface IMACDSettings extends IChartIndicatorSettings {
|
|
7
|
+
/**
|
|
8
|
+
* @todo review
|
|
9
|
+
*/
|
|
10
|
+
increasingColor?: Color;
|
|
11
|
+
/**
|
|
12
|
+
* @todo review
|
|
13
|
+
*/
|
|
14
|
+
decreasingColor?: Color;
|
|
15
|
+
/**
|
|
16
|
+
* @todo review
|
|
17
|
+
*/
|
|
18
|
+
signalColor?: Color;
|
|
19
|
+
/**
|
|
20
|
+
* @todo review
|
|
21
|
+
*/
|
|
22
|
+
fastPeriod?: number;
|
|
23
|
+
/**
|
|
24
|
+
* @todo review
|
|
25
|
+
*/
|
|
26
|
+
slowPeriod?: number;
|
|
27
|
+
/**
|
|
28
|
+
* @todo review
|
|
29
|
+
*/
|
|
30
|
+
signalPeriod?: number;
|
|
31
|
+
}
|
|
32
|
+
export interface IMACDPrivate extends IChartIndicatorPrivate {
|
|
33
|
+
}
|
|
34
|
+
export interface IMACDEvents extends IChartIndicatorEvents {
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* An implementation of a [[StockChart]] indicator.
|
|
38
|
+
*
|
|
39
|
+
* @see {@link https://www.amcharts.com/docs/v5/charts/stock/indicators/} for more info
|
|
40
|
+
*/
|
|
41
|
+
export declare class MACD extends ChartIndicator {
|
|
42
|
+
static className: string;
|
|
43
|
+
static classNames: Array<string>;
|
|
44
|
+
_settings: IMACDSettings;
|
|
45
|
+
_privateSettings: IMACDPrivate;
|
|
46
|
+
_events: IMACDEvents;
|
|
47
|
+
/**
|
|
48
|
+
* Indicator series.
|
|
49
|
+
*/
|
|
50
|
+
series: LineSeries;
|
|
51
|
+
/**
|
|
52
|
+
* Indicator series for the signal.
|
|
53
|
+
*/
|
|
54
|
+
signalSeries: LineSeries;
|
|
55
|
+
/**
|
|
56
|
+
* Indicator series for the difference.
|
|
57
|
+
*/
|
|
58
|
+
differenceSeries: ColumnSeries;
|
|
59
|
+
_editableSettings: IIndicatorEditableSetting[];
|
|
60
|
+
protected _themeTag: string;
|
|
61
|
+
_createSeries(): LineSeries;
|
|
62
|
+
protected _afterNew(): void;
|
|
63
|
+
_prepareChildren(): void;
|
|
64
|
+
_updateChildren(): void;
|
|
65
|
+
/**
|
|
66
|
+
* @ignore
|
|
67
|
+
*/
|
|
68
|
+
prepareData(): void;
|
|
69
|
+
}
|
|
70
|
+
//# sourceMappingURL=MACD.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MACD.d.ts","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/indicators/MACD.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAC;AAE7D,OAAO,EAAS,KAAK,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,uBAAuB,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAC1H,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAI5D,MAAM,WAAW,aAAc,SAAQ,uBAAuB;IAC7D;;OAEG;IACH,eAAe,CAAC,EAAE,KAAK,CAAC;IAExB;;OAEG;IACH,eAAe,CAAC,EAAE,KAAK,CAAC;IAExB;;OAEG;IACH,WAAW,CAAC,EAAE,KAAK,CAAC;IAEpB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CAEtB;AAED,MAAM,WAAW,YAAa,SAAQ,sBAAsB;CAC3D;AAED,MAAM,WAAW,WAAY,SAAQ,qBAAqB;CACzD;AAED;;;;GAIG;AACH,qBAAa,IAAK,SAAQ,cAAc;IACvC,OAAc,SAAS,EAAE,MAAM,CAAU;IACzC,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAAsD;IAE9E,SAAS,EAAE,aAAa,CAAC;IACzB,gBAAgB,EAAE,YAAY,CAAC;IAC/B,OAAO,EAAE,WAAW,CAAC;IAEpC;;OAEG;IACY,MAAM,EAAE,UAAU,CAAC;IAElC;;OAEG;IACI,YAAY,EAAG,UAAU,CAAC;IAEjC;;OAEG;IACI,gBAAgB,EAAG,YAAY,CAAC;IAEhC,iBAAiB,EAAE,yBAAyB,EAAE,CA4BlD;IAEH,SAAS,CAAC,SAAS,EAAE,MAAM,CAAU;IAE9B,aAAa,IAAI,UAAU;IAYlC,SAAS,CAAC,SAAS;IAgCZ,gBAAgB;IAUhB,eAAe;IAqCtB;;OAEG;IACI,WAAW;CAkDlB"}
|