@363045841yyt/klinechart-core 0.7.12-alpha.1 → 0.7.13
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/dist/controllers/createIndicatorSelectorController.d.ts.map +1 -1
- package/dist/controllers/createIndicatorSelectorController.js +4 -6
- package/dist/controllers/createIndicatorSelectorController.js.map +1 -1
- package/dist/controllers/index.d.ts +0 -1
- package/dist/controllers/index.d.ts.map +1 -1
- package/dist/controllers/index.js +0 -1
- package/dist/controllers/index.js.map +1 -1
- package/dist/engine/chart.d.ts +6 -2
- package/dist/engine/chart.d.ts.map +1 -1
- package/dist/engine/chart.js +26 -23
- package/dist/engine/chart.js.map +1 -1
- package/dist/engine/indicators/indicator.worker.js +32 -4
- package/dist/engine/indicators/indicator.worker.js.map +1 -1
- package/dist/engine/indicators/indicatorDefinitionRegistry.d.ts +5 -3
- package/dist/engine/indicators/indicatorDefinitionRegistry.d.ts.map +1 -1
- package/dist/engine/indicators/indicatorDefinitionRegistry.js +26 -1
- package/dist/engine/indicators/indicatorDefinitionRegistry.js.map +1 -1
- package/dist/engine/indicators/indicatorMetadata.d.ts +54 -1
- package/dist/engine/indicators/indicatorMetadata.d.ts.map +1 -1
- package/dist/engine/indicators/indicatorMetadata.js.map +1 -1
- package/dist/engine/indicators/indicatorRuntime.d.ts +12 -117
- package/dist/engine/indicators/indicatorRuntime.d.ts.map +1 -1
- package/dist/engine/indicators/indicatorRuntime.js +124 -1308
- package/dist/engine/indicators/indicatorRuntime.js.map +1 -1
- package/dist/engine/indicators/scheduler.d.ts +19 -143
- package/dist/engine/indicators/scheduler.d.ts.map +1 -1
- package/dist/engine/indicators/scheduler.js +81 -434
- package/dist/engine/indicators/scheduler.js.map +1 -1
- package/dist/engine/indicators/stateComposer.d.ts.map +1 -1
- package/dist/engine/indicators/stateComposer.js +15 -47
- package/dist/engine/indicators/stateComposer.js.map +1 -1
- package/dist/engine/indicators/workerProtocol.d.ts +12 -36
- package/dist/engine/indicators/workerProtocol.d.ts.map +1 -1
- package/dist/engine/indicators/workerProtocol.js.map +1 -1
- package/dist/engine/renderers/Indicator/atr.d.ts +2 -1
- package/dist/engine/renderers/Indicator/atr.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/atr.js +11 -9
- package/dist/engine/renderers/Indicator/atr.js.map +1 -1
- package/dist/engine/renderers/Indicator/boll.d.ts +4 -1
- package/dist/engine/renderers/Indicator/boll.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/boll.js +24 -10
- package/dist/engine/renderers/Indicator/boll.js.map +1 -1
- package/dist/engine/renderers/Indicator/cci.d.ts +2 -1
- package/dist/engine/renderers/Indicator/cci.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/cci.js +12 -10
- package/dist/engine/renderers/Indicator/cci.js.map +1 -1
- package/dist/engine/renderers/Indicator/chaikinVol.d.ts +4 -1
- package/dist/engine/renderers/Indicator/chaikinVol.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/chaikinVol.js +21 -7
- package/dist/engine/renderers/Indicator/chaikinVol.js.map +1 -1
- package/dist/engine/renderers/Indicator/cmf.d.ts +4 -1
- package/dist/engine/renderers/Indicator/cmf.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/cmf.js +20 -7
- package/dist/engine/renderers/Indicator/cmf.js.map +1 -1
- package/dist/engine/renderers/Indicator/dema.d.ts +2 -0
- package/dist/engine/renderers/Indicator/dema.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/dema.js +19 -8
- package/dist/engine/renderers/Indicator/dema.js.map +1 -1
- package/dist/engine/renderers/Indicator/donchian.d.ts +4 -1
- package/dist/engine/renderers/Indicator/donchian.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/donchian.js +20 -8
- package/dist/engine/renderers/Indicator/donchian.js.map +1 -1
- package/dist/engine/renderers/Indicator/ene.d.ts +12 -1
- package/dist/engine/renderers/Indicator/ene.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/ene.js +25 -11
- package/dist/engine/renderers/Indicator/ene.js.map +1 -1
- package/dist/engine/renderers/Indicator/expma.d.ts +4 -1
- package/dist/engine/renderers/Indicator/expma.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/expma.js +22 -9
- package/dist/engine/renderers/Indicator/expma.js.map +1 -1
- package/dist/engine/renderers/Indicator/fastk.d.ts +2 -1
- package/dist/engine/renderers/Indicator/fastk.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/fastk.js +12 -10
- package/dist/engine/renderers/Indicator/fastk.js.map +1 -1
- package/dist/engine/renderers/Indicator/fib.d.ts +2 -0
- package/dist/engine/renderers/Indicator/fib.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/fib.js +26 -8
- package/dist/engine/renderers/Indicator/fib.js.map +1 -1
- package/dist/engine/renderers/Indicator/hma.d.ts +2 -0
- package/dist/engine/renderers/Indicator/hma.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/hma.js +19 -8
- package/dist/engine/renderers/Indicator/hma.js.map +1 -1
- package/dist/engine/renderers/Indicator/hv.d.ts +4 -1
- package/dist/engine/renderers/Indicator/hv.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/hv.js +18 -8
- package/dist/engine/renderers/Indicator/hv.js.map +1 -1
- package/dist/engine/renderers/Indicator/ichimoku.d.ts +4 -1
- package/dist/engine/renderers/Indicator/ichimoku.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/ichimoku.js +27 -8
- package/dist/engine/renderers/Indicator/ichimoku.js.map +1 -1
- package/dist/engine/renderers/Indicator/index.d.ts +27 -28
- package/dist/engine/renderers/Indicator/index.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/index.js +27 -28
- package/dist/engine/renderers/Indicator/index.js.map +1 -1
- package/dist/engine/renderers/Indicator/kama.d.ts +2 -0
- package/dist/engine/renderers/Indicator/kama.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/kama.js +19 -8
- package/dist/engine/renderers/Indicator/kama.js.map +1 -1
- package/dist/engine/renderers/Indicator/keltner.d.ts +4 -1
- package/dist/engine/renderers/Indicator/keltner.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/keltner.js +20 -8
- package/dist/engine/renderers/Indicator/keltner.js.map +1 -1
- package/dist/engine/renderers/Indicator/kst.d.ts +2 -1
- package/dist/engine/renderers/Indicator/kst.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/kst.js +13 -11
- package/dist/engine/renderers/Indicator/kst.js.map +1 -1
- package/dist/engine/renderers/Indicator/ma.d.ts +4 -1
- package/dist/engine/renderers/Indicator/ma.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/ma.js +36 -8
- package/dist/engine/renderers/Indicator/ma.js.map +1 -1
- package/dist/engine/renderers/Indicator/macd.d.ts +1 -1
- package/dist/engine/renderers/Indicator/macd.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/macd.js +9 -10
- package/dist/engine/renderers/Indicator/macd.js.map +1 -1
- package/dist/engine/renderers/Indicator/mainIndicatorLegend.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/mainIndicatorLegend.js +38 -136
- package/dist/engine/renderers/Indicator/mainIndicatorLegend.js.map +1 -1
- package/dist/engine/renderers/Indicator/mfi.d.ts +4 -1
- package/dist/engine/renderers/Indicator/mfi.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/mfi.js +20 -7
- package/dist/engine/renderers/Indicator/mfi.js.map +1 -1
- package/dist/engine/renderers/Indicator/mom.d.ts +2 -1
- package/dist/engine/renderers/Indicator/mom.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/mom.js +12 -10
- package/dist/engine/renderers/Indicator/mom.js.map +1 -1
- package/dist/engine/renderers/Indicator/obv.d.ts +4 -1
- package/dist/engine/renderers/Indicator/obv.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/obv.js +19 -7
- package/dist/engine/renderers/Indicator/obv.js.map +1 -1
- package/dist/engine/renderers/Indicator/parkinson.d.ts +4 -1
- package/dist/engine/renderers/Indicator/parkinson.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/parkinson.js +18 -8
- package/dist/engine/renderers/Indicator/parkinson.js.map +1 -1
- package/dist/engine/renderers/Indicator/pivot.d.ts +2 -0
- package/dist/engine/renderers/Indicator/pivot.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/pivot.js +43 -8
- package/dist/engine/renderers/Indicator/pivot.js.map +1 -1
- package/dist/engine/renderers/Indicator/pvt.d.ts +4 -1
- package/dist/engine/renderers/Indicator/pvt.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/pvt.js +19 -7
- package/dist/engine/renderers/Indicator/pvt.js.map +1 -1
- package/dist/engine/renderers/Indicator/roc.d.ts +4 -1
- package/dist/engine/renderers/Indicator/roc.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/roc.js +20 -7
- package/dist/engine/renderers/Indicator/roc.js.map +1 -1
- package/dist/engine/renderers/Indicator/rsi.d.ts +2 -1
- package/dist/engine/renderers/Indicator/rsi.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/rsi.js +14 -11
- package/dist/engine/renderers/Indicator/rsi.js.map +1 -1
- package/dist/engine/renderers/Indicator/sar.d.ts +4 -1
- package/dist/engine/renderers/Indicator/sar.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/sar.js +18 -8
- package/dist/engine/renderers/Indicator/sar.js.map +1 -1
- package/dist/engine/renderers/Indicator/stoch.d.ts +2 -1
- package/dist/engine/renderers/Indicator/stoch.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/stoch.js +10 -11
- package/dist/engine/renderers/Indicator/stoch.js.map +1 -1
- package/dist/engine/renderers/Indicator/structure.d.ts +4 -1
- package/dist/engine/renderers/Indicator/structure.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/structure.js +21 -8
- package/dist/engine/renderers/Indicator/structure.js.map +1 -1
- package/dist/engine/renderers/Indicator/supertrend.d.ts +4 -1
- package/dist/engine/renderers/Indicator/supertrend.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/supertrend.js +18 -8
- package/dist/engine/renderers/Indicator/supertrend.js.map +1 -1
- package/dist/engine/renderers/Indicator/tema.d.ts +2 -0
- package/dist/engine/renderers/Indicator/tema.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/tema.js +19 -8
- package/dist/engine/renderers/Indicator/tema.js.map +1 -1
- package/dist/engine/renderers/Indicator/trix.d.ts +4 -1
- package/dist/engine/renderers/Indicator/trix.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/trix.js +30 -8
- package/dist/engine/renderers/Indicator/trix.js.map +1 -1
- package/dist/engine/renderers/Indicator/vma.d.ts +4 -1
- package/dist/engine/renderers/Indicator/vma.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/vma.js +20 -7
- package/dist/engine/renderers/Indicator/vma.js.map +1 -1
- package/dist/engine/renderers/Indicator/volumeProfile.d.ts +4 -1
- package/dist/engine/renderers/Indicator/volumeProfile.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/volumeProfile.js +28 -8
- package/dist/engine/renderers/Indicator/volumeProfile.js.map +1 -1
- package/dist/engine/renderers/Indicator/vwap.d.ts +4 -1
- package/dist/engine/renderers/Indicator/vwap.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/vwap.js +19 -7
- package/dist/engine/renderers/Indicator/vwap.js.map +1 -1
- package/dist/engine/renderers/Indicator/wma.d.ts +2 -0
- package/dist/engine/renderers/Indicator/wma.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/wma.js +19 -8
- package/dist/engine/renderers/Indicator/wma.js.map +1 -1
- package/dist/engine/renderers/Indicator/wmsr.d.ts +2 -1
- package/dist/engine/renderers/Indicator/wmsr.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/wmsr.js +12 -10
- package/dist/engine/renderers/Indicator/wmsr.js.map +1 -1
- package/dist/engine/renderers/Indicator/zones.d.ts +2 -0
- package/dist/engine/renderers/Indicator/zones.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/zones.js +24 -8
- package/dist/engine/renderers/Indicator/zones.js.map +1 -1
- package/dist/engine/renderers/paneTitle.d.ts +4 -10
- package/dist/engine/renderers/paneTitle.d.ts.map +1 -1
- package/dist/engine/renderers/paneTitle.js +28 -6
- package/dist/engine/renderers/paneTitle.js.map +1 -1
- package/dist/engine/renderers/subVolume.js +0 -3
- package/dist/engine/renderers/subVolume.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.d.ts.map +1 -1
- package/dist/version.js +1 -1
- package/dist/version.js.map +1 -1
- package/package.json +4 -4
- package/src/controllers/__tests__/indicatorSelector.test.ts +4 -3
- package/src/controllers/createIndicatorSelectorController.ts +4 -6
- package/src/controllers/index.ts +0 -4
- package/src/engine/chart.ts +30 -22
- package/src/engine/indicators/__tests__/registerBuiltins.test.ts +14 -23
- package/src/engine/indicators/__tests__/scheduler.test.ts +14 -14
- package/src/engine/indicators/__tests__/stateComposer.test.ts +7 -4
- package/src/engine/indicators/indicator.worker.ts +36 -4
- package/src/engine/indicators/indicatorDefinitionRegistry.ts +38 -3
- package/src/engine/indicators/indicatorMetadata.ts +66 -1
- package/src/engine/indicators/indicatorRuntime.ts +121 -1447
- package/src/engine/indicators/scheduler.ts +85 -489
- package/src/engine/indicators/stateComposer.ts +16 -60
- package/src/engine/indicators/workerProtocol.ts +14 -36
- package/src/engine/renderers/Indicator/atr.ts +14 -11
- package/src/engine/renderers/Indicator/boll.ts +33 -10
- package/src/engine/renderers/Indicator/cci.ts +15 -14
- package/src/engine/renderers/Indicator/chaikinVol.ts +29 -7
- package/src/engine/renderers/Indicator/cmf.ts +28 -7
- package/src/engine/renderers/Indicator/dema.ts +28 -9
- package/src/engine/renderers/Indicator/donchian.ts +28 -9
- package/src/engine/renderers/Indicator/ene.ts +34 -11
- package/src/engine/renderers/Indicator/expma.ts +31 -9
- package/src/engine/renderers/Indicator/fastk.ts +15 -14
- package/src/engine/renderers/Indicator/fib.ts +29 -9
- package/src/engine/renderers/Indicator/hma.ts +28 -9
- package/src/engine/renderers/Indicator/hv.ts +27 -8
- package/src/engine/renderers/Indicator/ichimoku.ts +31 -9
- package/src/engine/renderers/Indicator/index.ts +27 -28
- package/src/engine/renderers/Indicator/kama.ts +28 -9
- package/src/engine/renderers/Indicator/keltner.ts +28 -9
- package/src/engine/renderers/Indicator/kst.ts +16 -19
- package/src/engine/renderers/Indicator/ma.ts +44 -9
- package/src/engine/renderers/Indicator/macd.ts +31 -36
- package/src/engine/renderers/Indicator/mainIndicatorLegend.ts +43 -162
- package/src/engine/renderers/Indicator/mfi.ts +28 -7
- package/src/engine/renderers/Indicator/mom.ts +15 -14
- package/src/engine/renderers/Indicator/obv.ts +27 -7
- package/src/engine/renderers/Indicator/parkinson.ts +27 -8
- package/src/engine/renderers/Indicator/pivot.ts +47 -9
- package/src/engine/renderers/Indicator/pvt.ts +27 -7
- package/src/engine/renderers/Indicator/roc.ts +29 -7
- package/src/engine/renderers/Indicator/rsi.ts +14 -17
- package/src/engine/renderers/Indicator/sar.ts +26 -9
- package/src/engine/renderers/Indicator/stoch.ts +13 -16
- package/src/engine/renderers/Indicator/structure.ts +31 -8
- package/src/engine/renderers/Indicator/supertrend.ts +26 -9
- package/src/engine/renderers/Indicator/tema.ts +28 -9
- package/src/engine/renderers/Indicator/trix.ts +39 -8
- package/src/engine/renderers/Indicator/vma.ts +28 -7
- package/src/engine/renderers/Indicator/volumeProfile.ts +40 -8
- package/src/engine/renderers/Indicator/vwap.ts +27 -7
- package/src/engine/renderers/Indicator/wma.ts +28 -9
- package/src/engine/renderers/Indicator/wmsr.ts +15 -14
- package/src/engine/renderers/Indicator/zones.ts +29 -9
- package/src/engine/renderers/__tests__/mainIndicatorLegend.renderer.test.ts +142 -79
- package/src/engine/renderers/paneTitle.ts +43 -18
- package/src/engine/renderers/subVolume.ts +0 -2
- package/src/version.ts +1 -1
- package/dist/engine/renderers/Indicator/macdLegend.d.ts +0 -13
- package/dist/engine/renderers/Indicator/macdLegend.d.ts.map +0 -1
- package/dist/engine/renderers/Indicator/macdLegend.js +0 -116
- package/dist/engine/renderers/Indicator/macdLegend.js.map +0 -1
- package/dist/engine/renderers/Indicator/subPaneConfig.d.ts +0 -16
- package/dist/engine/renderers/Indicator/subPaneConfig.d.ts.map +0 -1
- package/dist/engine/renderers/Indicator/subPaneConfig.js +0 -194
- package/dist/engine/renderers/Indicator/subPaneConfig.js.map +0 -1
- package/src/engine/renderers/Indicator/macdLegend.ts +0 -141
- package/src/engine/renderers/Indicator/subPaneConfig.ts +0 -265
|
@@ -38,6 +38,7 @@ import { EMPTY_VMA_STATE } from '../../indicators/vmaState';
|
|
|
38
38
|
import { createNonNegativeSparseVisibleStateComposer } from '../../indicators/visibleStateComposers';
|
|
39
39
|
import { Indicator } from '../../indicators/indicatorDefinitionRegistry';
|
|
40
40
|
import { resolveStateKey } from '../../indicators/indicatorMetadata';
|
|
41
|
+
import { calcVMAData } from '../../indicators/calculators';
|
|
41
42
|
const VMA_COLOR = '#0ea5e9';
|
|
42
43
|
function getVMAStateKey(host, paneId) {
|
|
43
44
|
const scheduler = host?.getService('indicatorScheduler');
|
|
@@ -131,21 +132,33 @@ export function createVMARendererPlugin(options = {}) {
|
|
|
131
132
|
setConfig() { },
|
|
132
133
|
};
|
|
133
134
|
}
|
|
135
|
+
export function getVMATitleInfo(_data, index, params, host, paneId) {
|
|
136
|
+
if (index === null)
|
|
137
|
+
return null;
|
|
138
|
+
const period = params.period ?? 5;
|
|
139
|
+
const state = host.getSharedState(createVMAStateKey(paneId));
|
|
140
|
+
const value = state?.series[index];
|
|
141
|
+
if (value === undefined)
|
|
142
|
+
return null;
|
|
143
|
+
return {
|
|
144
|
+
name: 'VMA',
|
|
145
|
+
params: [period],
|
|
146
|
+
values: [{ label: 'VMA', value, color: VMA_COLOR }],
|
|
147
|
+
};
|
|
148
|
+
}
|
|
134
149
|
let VMAIndicatorDefinition = (() => {
|
|
135
150
|
let _classDecorators = [Indicator({
|
|
136
151
|
name: 'vma',
|
|
137
152
|
displayName: 'VMA',
|
|
138
153
|
category: 'volume',
|
|
139
|
-
stateKey: createVMAStateKey,
|
|
140
154
|
defaultPaneId: 'sub_VMA',
|
|
141
|
-
paneIdField: 'vmaPaneId',
|
|
142
155
|
scale: { indicatorKey: 'vma', label: 'VMA', decimals: 0 },
|
|
143
|
-
|
|
144
|
-
scheduler.updateVMAConfig(params, paneId);
|
|
145
|
-
},
|
|
156
|
+
getTitleInfo: getVMATitleInfo,
|
|
146
157
|
visibleState: { compose: createNonNegativeSparseVisibleStateComposer('vma', EMPTY_VMA_STATE) },
|
|
147
|
-
|
|
148
|
-
|
|
158
|
+
runtime: {
|
|
159
|
+
defaultConfig: { period: 5, showVMA: true },
|
|
160
|
+
computeKey: 'calcVMAData',
|
|
161
|
+
compute: (data, c) => calcVMAData(data, c.period),
|
|
149
162
|
},
|
|
150
163
|
})];
|
|
151
164
|
let _classDescriptor;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vma.js","sourceRoot":"","sources":["../../../../src/engine/renderers/Indicator/vma.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAA;AAEnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAA;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAA;
|
|
1
|
+
{"version":3,"file":"vma.js","sourceRoot":"","sources":["../../../../src/engine/renderers/Indicator/vma.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,8 @@
|
|
|
1
|
-
import type { RendererPluginWithHost } from '../../../plugin';
|
|
1
|
+
import type { RendererPluginWithHost, PluginHost } from '../../../plugin';
|
|
2
|
+
import type { TitleInfo } from '../../indicators/indicatorMetadata';
|
|
3
|
+
import type { KLineData } from '../../../types/price';
|
|
2
4
|
export declare function createVolumeProfileRendererPlugin(options?: {
|
|
3
5
|
paneId?: string;
|
|
4
6
|
}): RendererPluginWithHost;
|
|
7
|
+
export declare function getVolumeProfileTitleInfo(_data: KLineData[], index: number | null, params: Record<string, number | boolean | string>, host: PluginHost, paneId: string): TitleInfo | null;
|
|
5
8
|
//# sourceMappingURL=volumeProfile.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"volumeProfile.d.ts","sourceRoot":"","sources":["../../../../src/engine/renderers/Indicator/volumeProfile.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,
|
|
1
|
+
{"version":3,"file":"volumeProfile.d.ts","sourceRoot":"","sources":["../../../../src/engine/renderers/Indicator/volumeProfile.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAiB,UAAU,EAAE,MAAM,iBAAiB,CAAA;AASxF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oCAAoC,CAAA;AACnE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAuBrD,wBAAgB,iCAAiC,CAAC,OAAO,GAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAA;CAAO,GAAG,sBAAsB,CAiF3G;AAMD,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,SAAS,EAAE,EAClB,KAAK,EAAE,MAAM,GAAG,IAAI,EACpB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC,EACjD,IAAI,EAAE,UAAU,EAChB,MAAM,EAAE,MAAM,GACb,SAAS,GAAG,IAAI,CAsBlB"}
|
|
@@ -37,6 +37,7 @@ import { createVolumeProfileStateKey, EMPTY_VOLUME_PROFILE_STATE } from '../../i
|
|
|
37
37
|
import { Indicator } from '../../indicators/indicatorDefinitionRegistry';
|
|
38
38
|
import { createVolumeProfileVisibleStateComposer } from '../../indicators/visibleStateComposers';
|
|
39
39
|
import { resolveStateKey } from '../../indicators/indicatorMetadata';
|
|
40
|
+
import { calcVolumeProfileData } from '../../indicators/calculators';
|
|
40
41
|
const BAR_FILL = 'rgba(99, 102, 241, 0.35)';
|
|
41
42
|
const POC_COLOR = '#f59e0b';
|
|
42
43
|
const VA_COLOR = 'rgba(99, 102, 241, 0.6)';
|
|
@@ -133,22 +134,41 @@ export function createVolumeProfileRendererPlugin(options = {}) {
|
|
|
133
134
|
setConfig() { },
|
|
134
135
|
};
|
|
135
136
|
}
|
|
137
|
+
const VP_POC_COLOR = '#8b5cf6';
|
|
138
|
+
const VP_VAH_COLOR = '#6366f1';
|
|
139
|
+
const VP_VAL_COLOR = '#818cf8';
|
|
140
|
+
export function getVolumeProfileTitleInfo(_data, index, params, host, paneId) {
|
|
141
|
+
if (index === null)
|
|
142
|
+
return null;
|
|
143
|
+
const bins = params.bins ?? 24;
|
|
144
|
+
const state = host.getSharedState(createVolumeProfileStateKey(paneId));
|
|
145
|
+
const vp = state?.series;
|
|
146
|
+
const values = [];
|
|
147
|
+
if (vp && vp.bins.length > 0) {
|
|
148
|
+
if (state.params.showPOC) {
|
|
149
|
+
values.push({ label: 'POC', value: vp.poc, color: VP_POC_COLOR });
|
|
150
|
+
}
|
|
151
|
+
if (state.params.showValueArea) {
|
|
152
|
+
values.push({ label: 'VAH', value: vp.vah, color: VP_VAH_COLOR });
|
|
153
|
+
values.push({ label: 'VAL', value: vp.val, color: VP_VAL_COLOR });
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
return {
|
|
157
|
+
name: 'VP',
|
|
158
|
+
params: [bins],
|
|
159
|
+
values,
|
|
160
|
+
};
|
|
161
|
+
}
|
|
136
162
|
let VolumeProfileIndicatorDefinition = (() => {
|
|
137
163
|
let _classDecorators = [Indicator({
|
|
138
164
|
name: 'volumeProfile',
|
|
139
165
|
displayName: 'VP',
|
|
140
166
|
category: 'volume',
|
|
141
|
-
stateKey: createVolumeProfileStateKey,
|
|
142
167
|
defaultPaneId: 'sub_VolumeProfile',
|
|
143
|
-
paneIdField: 'volumeProfilePaneId',
|
|
144
168
|
scale: { indicatorKey: 'volumeProfile', label: 'VP', decimals: 0 },
|
|
169
|
+
getTitleInfo: getVolumeProfileTitleInfo,
|
|
145
170
|
visibleState: { compose: createVolumeProfileVisibleStateComposer('volumeProfile', EMPTY_VOLUME_PROFILE_STATE) },
|
|
146
|
-
|
|
147
|
-
scheduler.updateVolumeProfileConfig(params, paneId);
|
|
148
|
-
},
|
|
149
|
-
applyResult: (host, state, paneId) => {
|
|
150
|
-
host.setSharedState(createVolumeProfileStateKey(paneId), state, 'indicator_scheduler');
|
|
151
|
-
},
|
|
171
|
+
runtime: { defaultConfig: { bins: 24, lookback: 100, valueAreaPercent: 70, showPOC: true, showValueArea: true }, computeKey: 'calcVolumeProfileData', compute: (data, c) => calcVolumeProfileData(data, c.bins, c.lookback, c.valueAreaPercent) },
|
|
152
172
|
})];
|
|
153
173
|
let _classDescriptor;
|
|
154
174
|
let _classExtraInitializers = [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"volumeProfile.js","sourceRoot":"","sources":["../../../../src/engine/renderers/Indicator/volumeProfile.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAA;AAEnD,OAAO,EAAE,2BAA2B,EAAE,0BAA0B,EAAE,MAAM,qCAAqC,CAAA;AAC7G,OAAO,EAAE,SAAS,EAAE,MAAM,8CAA8C,CAAA;AACxE,OAAO,EAAE,uCAAuC,EAAE,MAAM,wCAAwC,CAAA;AAChG,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAA;
|
|
1
|
+
{"version":3,"file":"volumeProfile.js","sourceRoot":"","sources":["../../../../src/engine/renderers/Indicator/volumeProfile.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,8 @@
|
|
|
1
|
-
import type { RendererPluginWithHost } from '../../../plugin';
|
|
1
|
+
import type { RendererPluginWithHost, PluginHost } from '../../../plugin';
|
|
2
|
+
import type { TitleInfo } from '../../indicators/indicatorMetadata';
|
|
3
|
+
import type { KLineData } from '../../../types/price';
|
|
2
4
|
export declare function createVWAPRendererPlugin(options?: {
|
|
3
5
|
paneId?: string;
|
|
4
6
|
}): RendererPluginWithHost;
|
|
7
|
+
export declare function getVWAPTitleInfo(_data: KLineData[], index: number | null, _params: Record<string, number | boolean | string>, host: PluginHost, paneId: string): TitleInfo | null;
|
|
5
8
|
//# sourceMappingURL=vwap.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vwap.d.ts","sourceRoot":"","sources":["../../../../src/engine/renderers/Indicator/vwap.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,
|
|
1
|
+
{"version":3,"file":"vwap.d.ts","sourceRoot":"","sources":["../../../../src/engine/renderers/Indicator/vwap.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAiB,UAAU,EAAE,MAAM,iBAAiB,CAAA;AASxF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oCAAoC,CAAA;AACnE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAoBrD,wBAAgB,wBAAwB,CAAC,OAAO,GAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAA;CAAO,GAAG,sBAAsB,CAiFlG;AAED,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,SAAS,EAAE,EAClB,KAAK,EAAE,MAAM,GAAG,IAAI,EACpB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC,EAClD,IAAI,EAAE,UAAU,EAChB,MAAM,EAAE,MAAM,GACb,SAAS,GAAG,IAAI,CAWlB"}
|
|
@@ -37,6 +37,7 @@ import { createVWAPStateKey, EMPTY_VWAP_STATE } from '../../indicators/vwapState
|
|
|
37
37
|
import { Indicator } from '../../indicators/indicatorDefinitionRegistry';
|
|
38
38
|
import { resolveStateKey } from '../../indicators/indicatorMetadata';
|
|
39
39
|
import { createSparseVisibleStateComposer } from '../../indicators/visibleStateComposers';
|
|
40
|
+
import { calcVWAPData } from '../../indicators/calculators';
|
|
40
41
|
const VWAP_COLOR = '#ec4899';
|
|
41
42
|
function getVWAPStateKey(host, paneId) {
|
|
42
43
|
const scheduler = host?.getService('indicatorScheduler');
|
|
@@ -130,21 +131,32 @@ export function createVWAPRendererPlugin(options = {}) {
|
|
|
130
131
|
setConfig() { },
|
|
131
132
|
};
|
|
132
133
|
}
|
|
134
|
+
export function getVWAPTitleInfo(_data, index, _params, host, paneId) {
|
|
135
|
+
if (index === null)
|
|
136
|
+
return null;
|
|
137
|
+
const state = host.getSharedState(createVWAPStateKey(paneId));
|
|
138
|
+
const value = state?.series[index];
|
|
139
|
+
if (value === undefined)
|
|
140
|
+
return null;
|
|
141
|
+
return {
|
|
142
|
+
name: 'VWAP',
|
|
143
|
+
params: [],
|
|
144
|
+
values: [{ label: 'VWAP', value, color: VWAP_COLOR }],
|
|
145
|
+
};
|
|
146
|
+
}
|
|
133
147
|
let VWAPIndicatorDefinition = (() => {
|
|
134
148
|
let _classDecorators = [Indicator({
|
|
135
149
|
name: 'vwap',
|
|
136
150
|
displayName: 'VWAP',
|
|
137
151
|
category: 'volume',
|
|
138
|
-
stateKey: createVWAPStateKey,
|
|
139
152
|
defaultPaneId: 'sub_VWAP',
|
|
140
|
-
paneIdField: 'vwapPaneId',
|
|
141
153
|
visibleState: { compose: createSparseVisibleStateComposer('vwap', EMPTY_VWAP_STATE) },
|
|
142
154
|
scale: { indicatorKey: 'vwap', label: 'VWAP', decimals: 2 },
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
155
|
+
getTitleInfo: getVWAPTitleInfo,
|
|
156
|
+
runtime: {
|
|
157
|
+
defaultConfig: { sessionResetGapMs: 0, showVWAP: true },
|
|
158
|
+
computeKey: 'calcVWAPData',
|
|
159
|
+
compute: (data, c) => calcVWAPData(data, c.sessionResetGapMs),
|
|
148
160
|
},
|
|
149
161
|
})];
|
|
150
162
|
let _classDescriptor;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vwap.js","sourceRoot":"","sources":["../../../../src/engine/renderers/Indicator/vwap.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAA;AAEnD,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAA;AACjF,OAAO,EAAE,SAAS,EAAE,MAAM,8CAA8C,CAAA;AACxE,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAA;AACpE,OAAO,EAAE,gCAAgC,EAAE,MAAM,wCAAwC,CAAA;
|
|
1
|
+
{"version":3,"file":"vwap.js","sourceRoot":"","sources":["../../../../src/engine/renderers/Indicator/vwap.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import type { RendererPluginWithHost } from '../../../plugin';
|
|
2
|
+
import { type GetTitleInfoFn } from '../../indicators/indicatorMetadata';
|
|
2
3
|
export interface WMARendererOptions {
|
|
3
4
|
paneId?: string;
|
|
4
5
|
}
|
|
5
6
|
export declare function createWMARendererPlugin(options?: WMARendererOptions): RendererPluginWithHost;
|
|
7
|
+
export declare const getWMATitleInfo: GetTitleInfoFn;
|
|
6
8
|
//# sourceMappingURL=wma.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wma.d.ts","sourceRoot":"","sources":["../../../../src/engine/renderers/Indicator/wma.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAA6B,MAAM,iBAAiB,CAAA;
|
|
1
|
+
{"version":3,"file":"wma.d.ts","sourceRoot":"","sources":["../../../../src/engine/renderers/Indicator/wma.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAA6B,MAAM,iBAAiB,CAAA;AAMxF,OAAO,EAAwD,KAAK,cAAc,EAAE,MAAM,oCAAoC,CAAA;AAS9H,MAAM,WAAW,kBAAkB;IAC/B,MAAM,CAAC,EAAE,MAAM,CAAA;CAClB;AAgBD,wBAAgB,uBAAuB,CAAC,OAAO,GAAE,kBAAuB,GAAG,sBAAsB,CAyFhG;AAED,eAAO,MAAM,eAAe,EAAE,cAqB7B,CAAA"}
|
|
@@ -37,6 +37,7 @@ import { createWMAStateKey, EMPTY_WMA_STATE } from '../../indicators/wmaState';
|
|
|
37
37
|
import { Indicator } from '../../indicators/indicatorDefinitionRegistry';
|
|
38
38
|
import { resolveStateKey } from '../../indicators/indicatorMetadata';
|
|
39
39
|
import { createSparseVisibleStateComposer } from '../../indicators/visibleStateComposers';
|
|
40
|
+
import { calcWMAData } from '../../indicators/calculators';
|
|
40
41
|
const WMA_COLOR = '#10b981';
|
|
41
42
|
function getWMAStateKey(host, paneId) {
|
|
42
43
|
const scheduler = host?.getService('indicatorScheduler');
|
|
@@ -131,24 +132,34 @@ export function createWMARendererPlugin(options = {}) {
|
|
|
131
132
|
},
|
|
132
133
|
};
|
|
133
134
|
}
|
|
135
|
+
export const getWMATitleInfo = (_data, index, _params, pluginHost, paneId) => {
|
|
136
|
+
if (index === null)
|
|
137
|
+
return null;
|
|
138
|
+
const stateKey = createWMAStateKey(paneId);
|
|
139
|
+
const state = pluginHost?.getSharedState(stateKey);
|
|
140
|
+
if (!state || state.visibleMin > state.visibleMax)
|
|
141
|
+
return null;
|
|
142
|
+
const value = state.series[index];
|
|
143
|
+
if (value === undefined)
|
|
144
|
+
return null;
|
|
145
|
+
return {
|
|
146
|
+
name: 'WMA',
|
|
147
|
+
params: [state.params.period],
|
|
148
|
+
values: [{ label: 'WMA', value, color: '#10b981' }],
|
|
149
|
+
};
|
|
150
|
+
};
|
|
134
151
|
let WMADefinition = (() => {
|
|
135
152
|
let _classDecorators = [Indicator({
|
|
136
153
|
name: 'wma',
|
|
137
154
|
displayName: 'WMA',
|
|
155
|
+
getTitleInfo: getWMATitleInfo,
|
|
138
156
|
category: 'main',
|
|
139
|
-
stateKey: createWMAStateKey,
|
|
140
157
|
defaultPaneId: 'main',
|
|
141
|
-
paneIdField: 'wmaPaneId',
|
|
142
158
|
allowMainPane: true,
|
|
143
159
|
mainPane: { rendererName: 'wma_main', toActiveConfig: (params, active) => ({ ...params, showWMA: active }) },
|
|
144
160
|
visibleState: { compose: createSparseVisibleStateComposer('wma', EMPTY_WMA_STATE) },
|
|
145
161
|
scale: { indicatorKey: 'wma', label: 'WMA', decimals: 2 },
|
|
146
|
-
|
|
147
|
-
scheduler.updateWMAConfig(params, paneId);
|
|
148
|
-
},
|
|
149
|
-
applyResult: (host, state, paneId) => {
|
|
150
|
-
host.setSharedState(createWMAStateKey(paneId), state, 'indicator_scheduler');
|
|
151
|
-
},
|
|
162
|
+
runtime: { defaultConfig: { period: 10, showWMA: true }, computeKey: 'calcWMAData', compute: (data, c) => calcWMAData(data, c.period) },
|
|
152
163
|
})];
|
|
153
164
|
let _classDescriptor;
|
|
154
165
|
let _classExtraInitializers = [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wma.js","sourceRoot":"","sources":["../../../../src/engine/renderers/Indicator/wma.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"wma.js","sourceRoot":"","sources":["../../../../src/engine/renderers/Indicator/wma.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { RendererPluginWithHost, PluginHost } from '../../../plugin';
|
|
2
|
+
import type { KLineData } from '../../../types/price';
|
|
2
3
|
export interface WMSRRendererOptions {
|
|
3
4
|
/** 目标 pane ID(默认 'sub') */
|
|
4
5
|
paneId?: string;
|
|
@@ -10,7 +11,7 @@ export declare function createWMSRRendererPlugin(options?: WMSRRendererOptions):
|
|
|
10
11
|
/**
|
|
11
12
|
* 获取 WMSR 标题信息(供 paneTitle 使用)
|
|
12
13
|
*/
|
|
13
|
-
export declare function getWMSRTitleInfo(
|
|
14
|
+
export declare function getWMSRTitleInfo(_data: KLineData[], index: number | null, params: Record<string, number | boolean | string>, pluginHost: PluginHost, paneId: string): {
|
|
14
15
|
name: string;
|
|
15
16
|
params: number[];
|
|
16
17
|
values: Array<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wmsr.d.ts","sourceRoot":"","sources":["../../../../src/engine/renderers/Indicator/wmsr.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAiB,UAAU,EAAE,MAAM,iBAAiB,CAAA;
|
|
1
|
+
{"version":3,"file":"wmsr.d.ts","sourceRoot":"","sources":["../../../../src/engine/renderers/Indicator/wmsr.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAiB,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAYxF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAIrD,MAAM,WAAW,mBAAmB;IAChC,2BAA2B;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAA;CAClB;AAgBD;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,GAAE,mBAAwB,GAAG,sBAAsB,CAgOlG;AA8BD;;GAEG;AACH,wBAAgB,gBAAgB,CAC5B,KAAK,EAAE,SAAS,EAAE,EAClB,KAAK,EAAE,MAAM,GAAG,IAAI,EACpB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC,EACjD,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,MAAM,GACf;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAC;IAAC,MAAM,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,GAAG,IAAI,CAiB3G"}
|
|
@@ -40,6 +40,7 @@ import { Indicator } from '../../indicators/indicatorDefinitionRegistry';
|
|
|
40
40
|
import { createFixedRangeSparseVisibleStateComposer } from '../../indicators/visibleStateComposers';
|
|
41
41
|
import { resolveStateKey } from '../../indicators/indicatorMetadata';
|
|
42
42
|
import { createWmsrScaleRendererPlugin } from './scale/wmsr_scale';
|
|
43
|
+
import { calcWMSRData } from '../../indicators/calculators';
|
|
43
44
|
function getWMSRStateKey(host, paneId) {
|
|
44
45
|
const scheduler = host?.getService('indicatorScheduler');
|
|
45
46
|
if (!scheduler) {
|
|
@@ -223,7 +224,7 @@ export function createWMSRRendererPlugin(options = {}) {
|
|
|
223
224
|
return state?.params ?? {};
|
|
224
225
|
},
|
|
225
226
|
setConfig() {
|
|
226
|
-
// no-op: 配置通过 scheduler.
|
|
227
|
+
// no-op: 配置通过 scheduler.updateIndicatorConfig() 更新
|
|
227
228
|
},
|
|
228
229
|
};
|
|
229
230
|
}
|
|
@@ -251,8 +252,11 @@ function drawWMSRLineWithCanvas2D(ctx, scrollLeft, wmsrPoints, params, colors) {
|
|
|
251
252
|
/**
|
|
252
253
|
* 获取 WMSR 标题信息(供 paneTitle 使用)
|
|
253
254
|
*/
|
|
254
|
-
export function getWMSRTitleInfo(index,
|
|
255
|
-
|
|
255
|
+
export function getWMSRTitleInfo(_data, index, params, pluginHost, paneId) {
|
|
256
|
+
if (index === null)
|
|
257
|
+
return null;
|
|
258
|
+
const period = params.period ?? 14;
|
|
259
|
+
const colors = resolveThemeColors('light');
|
|
256
260
|
const state = pluginHost.getSharedState(createWMSRStateKey(paneId));
|
|
257
261
|
if (!state)
|
|
258
262
|
return null;
|
|
@@ -272,16 +276,14 @@ let WMSRIndicatorDefinition = (() => {
|
|
|
272
276
|
name: 'wmsr',
|
|
273
277
|
displayName: 'WMSR',
|
|
274
278
|
category: 'oscillator',
|
|
275
|
-
stateKey: createWMSRStateKey,
|
|
276
279
|
defaultPaneId: 'sub_WMSR',
|
|
277
|
-
paneIdField: 'wmsrPaneId',
|
|
278
280
|
visibleState: { compose: createFixedRangeSparseVisibleStateComposer('wmsr', EMPTY_WMSR_STATE) },
|
|
279
281
|
scaleRendererFactory: createWmsrScaleRendererPlugin,
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
282
|
+
getTitleInfo: getWMSRTitleInfo,
|
|
283
|
+
runtime: {
|
|
284
|
+
defaultConfig: { period: 14, showWMSR: true },
|
|
285
|
+
computeKey: 'calcWMSRData',
|
|
286
|
+
compute: (data, c) => calcWMSRData(data, c.period),
|
|
285
287
|
},
|
|
286
288
|
})];
|
|
287
289
|
let _classDescriptor;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wmsr.js","sourceRoot":"","sources":["../../../../src/engine/renderers/Indicator/wmsr.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAA;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AACpD,OAAO,EAAE,0BAA0B,EAAE,MAAM,uBAAuB,CAAA;AAElE,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAA;AACjF,OAAO,EAAE,SAAS,EAAE,MAAM,8CAA8C,CAAA;AACxE,OAAO,EAAE,0CAA0C,EAAE,MAAM,wCAAwC,CAAA;AACnG,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAA;AAEpE,OAAO,EAAE,6BAA6B,EAAE,MAAM,oBAAoB,CAAA;
|
|
1
|
+
{"version":3,"file":"wmsr.js","sourceRoot":"","sources":["../../../../src/engine/renderers/Indicator/wmsr.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import type { RendererPluginWithHost } from '../../../plugin';
|
|
2
|
+
import { type GetTitleInfoFn } from '../../indicators/indicatorMetadata';
|
|
2
3
|
export declare function createZonesRendererPlugin(options?: {
|
|
3
4
|
paneId?: string;
|
|
4
5
|
}): RendererPluginWithHost;
|
|
6
|
+
export declare const getZonesTitleInfo: GetTitleInfoFn;
|
|
5
7
|
//# sourceMappingURL=zones.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"zones.d.ts","sourceRoot":"","sources":["../../../../src/engine/renderers/Indicator/zones.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,sBAAsB,EAA6B,MAAM,iBAAiB,CAAA;
|
|
1
|
+
{"version":3,"file":"zones.d.ts","sourceRoot":"","sources":["../../../../src/engine/renderers/Indicator/zones.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,sBAAsB,EAA6B,MAAM,iBAAiB,CAAA;AAMxF,OAAO,EAAwD,KAAK,cAAc,EAAE,MAAM,oCAAoC,CAAA;AAkB9H,wBAAgB,yBAAyB,CAAC,OAAO,GAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAA;CAAO,GAAG,sBAAsB,CAiEnG;AAED,eAAO,MAAM,iBAAiB,EAAE,cAuB/B,CAAA"}
|
|
@@ -38,6 +38,7 @@ import { createZonesStateKey, EMPTY_ZONES_STATE } from '../../indicators/zonesSt
|
|
|
38
38
|
import { Indicator } from '../../indicators/indicatorDefinitionRegistry';
|
|
39
39
|
import { createFixedUnitVisibleStateComposer } from '../../indicators/visibleStateComposers';
|
|
40
40
|
import { resolveStateKey } from '../../indicators/indicatorMetadata';
|
|
41
|
+
import { calcZonesData } from '../../indicators/calculators';
|
|
41
42
|
function getZonesStateKey(host, paneId) {
|
|
42
43
|
const scheduler = host?.getService('indicatorScheduler');
|
|
43
44
|
if (!scheduler) {
|
|
@@ -118,24 +119,39 @@ export function createZonesRendererPlugin(options = {}) {
|
|
|
118
119
|
setConfig() { },
|
|
119
120
|
};
|
|
120
121
|
}
|
|
122
|
+
export const getZonesTitleInfo = (_data, index, _params, host, paneId) => {
|
|
123
|
+
if (index === null)
|
|
124
|
+
return null;
|
|
125
|
+
const stateKey = createZonesStateKey(paneId);
|
|
126
|
+
const state = host?.getSharedState(stateKey);
|
|
127
|
+
if (!state)
|
|
128
|
+
return null;
|
|
129
|
+
const activeZones = state.series.filter(z => z.startIndex <= index && (z.endIndex === undefined || z.endIndex >= index));
|
|
130
|
+
if (activeZones.length === 0)
|
|
131
|
+
return null;
|
|
132
|
+
const values = activeZones.slice(0, 5).map(z => ({
|
|
133
|
+
label: z.kind,
|
|
134
|
+
value: z.high,
|
|
135
|
+
color: z.kind.includes('Bull') ? '#22c55e' : '#ef4444',
|
|
136
|
+
}));
|
|
137
|
+
return {
|
|
138
|
+
name: 'Zones',
|
|
139
|
+
params: [activeZones.length],
|
|
140
|
+
values,
|
|
141
|
+
};
|
|
142
|
+
};
|
|
121
143
|
let ZonesDefinition = (() => {
|
|
122
144
|
let _classDecorators = [Indicator({
|
|
123
145
|
name: 'zones',
|
|
124
146
|
displayName: 'Zones',
|
|
147
|
+
getTitleInfo: getZonesTitleInfo,
|
|
125
148
|
category: 'main',
|
|
126
|
-
stateKey: createZonesStateKey,
|
|
127
149
|
defaultPaneId: 'main',
|
|
128
|
-
paneIdField: 'zonesPaneId',
|
|
129
150
|
allowMainPane: true,
|
|
130
151
|
mainPane: { rendererName: 'zones_main', toActiveConfig: (params, active) => ({ ...params, showFVG: active, showOB: active, showFilledZones: active }) },
|
|
131
152
|
scale: { indicatorKey: 'zones', label: 'Zones', decimals: 2 },
|
|
132
153
|
visibleState: { compose: createFixedUnitVisibleStateComposer('zones', EMPTY_ZONES_STATE) },
|
|
133
|
-
|
|
134
|
-
scheduler.updateZonesConfig(params, paneId);
|
|
135
|
-
},
|
|
136
|
-
applyResult: (host, state, paneId) => {
|
|
137
|
-
host.setSharedState(createZonesStateKey(paneId), state, 'indicator_scheduler');
|
|
138
|
-
},
|
|
154
|
+
runtime: { defaultConfig: { showFVG: true, showOB: true, showFilledZones: true, obLookback: 20 }, computeKey: 'calcZonesData', compute: (data, c) => calcZonesData(data, c.obLookback, 5, 2, 'close') },
|
|
139
155
|
})];
|
|
140
156
|
let _classDescriptor;
|
|
141
157
|
let _classExtraInitializers = [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"zones.js","sourceRoot":"","sources":["../../../../src/engine/renderers/Indicator/zones.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AAEpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAA;AAEnD,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAA;AACpF,OAAO,EAAE,SAAS,EAAE,MAAM,8CAA8C,CAAA;AACxE,OAAO,EAAE,mCAAmC,EAAE,MAAM,wCAAwC,CAAA;AAC5F,OAAO,EAAE,eAAe,
|
|
1
|
+
{"version":3,"file":"zones.js","sourceRoot":"","sources":["../../../../src/engine/renderers/Indicator/zones.ts"],"names":[],"mappings":"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"}
|