@363045841yyt/klinechart-core 0.7.3 → 0.7.5
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/README.md +201 -201
- package/README.zh-CN.md +201 -201
- package/dist/controllers/index.d.ts +1 -0
- package/dist/controllers/index.d.ts.map +1 -1
- package/dist/controllers/index.js +1 -0
- package/dist/controllers/index.js.map +1 -1
- package/dist/engine/chart.d.ts +11 -19
- package/dist/engine/chart.d.ts.map +1 -1
- package/dist/engine/chart.js +92 -109
- package/dist/engine/chart.js.map +1 -1
- package/dist/engine/renderers/Indicator/indicatorData.d.ts +1 -0
- package/dist/engine/renderers/Indicator/indicatorData.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/indicatorData.js +1 -1
- package/dist/engine/renderers/Indicator/indicatorData.js.map +1 -1
- package/dist/engine/renderers/webgl/candleSurface.js +47 -47
- package/dist/engine/subPaneManager.d.ts +4 -0
- package/dist/engine/subPaneManager.d.ts.map +1 -1
- package/dist/engine/subPaneManager.js +13 -0
- package/dist/engine/subPaneManager.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.d.ts.map +1 -1
- package/dist/version.js +1 -2
- package/dist/version.js.map +1 -1
- package/package.json +129 -122
- package/src/__tests__/signal.test.ts +124 -124
- package/src/config/chartSettings.ts +66 -66
- package/src/controllers/__tests__/drawing.test.ts +214 -214
- package/src/controllers/__tests__/indicatorSelector.test.ts +481 -481
- package/src/controllers/__tests__/toolbar.test.ts +225 -225
- package/src/controllers/createChartController.ts +665 -665
- package/src/controllers/createDrawingController.ts +96 -96
- package/src/controllers/createIndicatorSelectorController.ts +307 -307
- package/src/controllers/createToolbarController.ts +146 -146
- package/src/controllers/index.ts +20 -19
- package/src/controllers/types.ts +284 -284
- package/src/engine/__tests__/chart.dpr.test.ts +401 -401
- package/src/engine/__tests__/paneRenderer.resize.test.ts +92 -92
- package/src/engine/chart-store.ts +121 -121
- package/src/engine/chart.d.ts +617 -617
- package/src/engine/chart.ts +2803 -2815
- package/src/engine/controller/__tests__/interaction.dpr.test.ts +259 -259
- package/src/engine/controller/interaction.ts +722 -722
- package/src/engine/controller/markerInteraction.ts +130 -130
- package/src/engine/controller/pinchTracker.ts +82 -82
- package/src/engine/controller/tooltipPosition.ts +48 -48
- package/src/engine/draw/__tests__/pixelAlign.spec.ts +176 -176
- package/src/engine/draw/pixelAlign.ts +259 -259
- package/src/engine/drawing/index.ts +655 -655
- package/src/engine/drawing/interaction.ts +842 -842
- package/src/engine/drawing/plugin.ts +343 -343
- package/src/engine/indicators/__tests__/__fixtures__/golden/atr.json +38 -38
- package/src/engine/indicators/__tests__/__fixtures__/golden/dema.json +14 -14
- package/src/engine/indicators/__tests__/__fixtures__/golden/hma.json +14 -14
- package/src/engine/indicators/__tests__/__fixtures__/golden/index.ts +55 -55
- package/src/engine/indicators/__tests__/__fixtures__/golden/kama.json +14 -14
- package/src/engine/indicators/__tests__/__fixtures__/golden/tema.json +14 -14
- package/src/engine/indicators/__tests__/__fixtures__/golden/wma.json +40 -40
- package/src/engine/indicators/__tests__/__fixtures__/synthetic.ts +65 -65
- package/src/engine/indicators/__tests__/_propertyAssertions.ts +76 -76
- package/src/engine/indicators/__tests__/atr.test.ts +153 -153
- package/src/engine/indicators/__tests__/calculators.test.ts +614 -614
- package/src/engine/indicators/__tests__/cmf-mfi.test.ts +100 -100
- package/src/engine/indicators/__tests__/dema.test.ts +73 -73
- package/src/engine/indicators/__tests__/donchian.test.ts +70 -70
- package/src/engine/indicators/__tests__/hma.test.ts +73 -73
- package/src/engine/indicators/__tests__/ichimoku.test.ts +105 -105
- package/src/engine/indicators/__tests__/kama.test.ts +80 -80
- package/src/engine/indicators/__tests__/keltner.test.ts +65 -65
- package/src/engine/indicators/__tests__/pivot-fib.test.ts +110 -110
- package/src/engine/indicators/__tests__/roc.test.ts +68 -68
- package/src/engine/indicators/__tests__/sar.test.ts +86 -86
- package/src/engine/indicators/__tests__/scheduler.test.ts +831 -831
- package/src/engine/indicators/__tests__/soa.test.ts +533 -533
- package/src/engine/indicators/__tests__/structure.test.ts +110 -110
- package/src/engine/indicators/__tests__/supertrend.test.ts +65 -65
- package/src/engine/indicators/__tests__/tema.test.ts +68 -68
- package/src/engine/indicators/__tests__/trix.test.ts +70 -70
- package/src/engine/indicators/__tests__/volatility.test.ts +117 -117
- package/src/engine/indicators/__tests__/volume.test.ts +115 -115
- package/src/engine/indicators/__tests__/volumeProfile.test.ts +74 -74
- package/src/engine/indicators/__tests__/vwap.test.ts +69 -69
- package/src/engine/indicators/__tests__/wma.test.ts +112 -112
- package/src/engine/indicators/__tests__/zones.test.ts +95 -95
- package/src/engine/indicators/atrState.ts +27 -27
- package/src/engine/indicators/bollState.ts +51 -51
- package/src/engine/indicators/calculators.ts +2593 -2593
- package/src/engine/indicators/cciState.ts +25 -25
- package/src/engine/indicators/chaikinVolState.ts +32 -32
- package/src/engine/indicators/cmfState.ts +27 -27
- package/src/engine/indicators/demaState.ts +27 -27
- package/src/engine/indicators/donchianState.ts +43 -43
- package/src/engine/indicators/eneState.ts +43 -43
- package/src/engine/indicators/expmaState.ts +43 -43
- package/src/engine/indicators/fastkState.ts +25 -25
- package/src/engine/indicators/fibState.ts +41 -41
- package/src/engine/indicators/hmaState.ts +27 -27
- package/src/engine/indicators/hvState.ts +28 -28
- package/src/engine/indicators/ichimokuState.ts +70 -70
- package/src/engine/indicators/indicator.worker.ts +169 -169
- package/src/engine/indicators/indicatorDefinitionRegistry.ts +62 -62
- package/src/engine/indicators/indicatorMetadata.ts +110 -110
- package/src/engine/indicators/indicatorRegistry.ts +106 -106
- package/src/engine/indicators/indicatorRuntime.ts +1548 -1548
- package/src/engine/indicators/kamaState.ts +34 -34
- package/src/engine/indicators/keltnerState.ts +49 -49
- package/src/engine/indicators/kstState.ts +42 -42
- package/src/engine/indicators/maState.ts +36 -36
- package/src/engine/indicators/macdState.ts +76 -76
- package/src/engine/indicators/mfiState.ts +27 -27
- package/src/engine/indicators/momState.ts +25 -25
- package/src/engine/indicators/obvState.ts +25 -25
- package/src/engine/indicators/parkinsonState.ts +28 -28
- package/src/engine/indicators/pivotState.ts +51 -51
- package/src/engine/indicators/pvtState.ts +25 -25
- package/src/engine/indicators/rocState.ts +27 -27
- package/src/engine/indicators/rsiState.ts +65 -65
- package/src/engine/indicators/sarState.ts +41 -41
- package/src/engine/indicators/scheduler.ts +1205 -1205
- package/src/engine/indicators/soa.ts +352 -352
- package/src/engine/indicators/stateComposer.ts +1262 -1262
- package/src/engine/indicators/stochState.ts +26 -26
- package/src/engine/indicators/structureState.ts +69 -69
- package/src/engine/indicators/supertrendState.ts +37 -37
- package/src/engine/indicators/temaState.ts +27 -27
- package/src/engine/indicators/trixState.ts +35 -35
- package/src/engine/indicators/vmaState.ts +27 -27
- package/src/engine/indicators/volumeProfileState.ts +63 -63
- package/src/engine/indicators/vwapState.ts +29 -29
- package/src/engine/indicators/wmaState.ts +27 -27
- package/src/engine/indicators/wmsrState.ts +25 -25
- package/src/engine/indicators/workerProtocol.ts +613 -613
- package/src/engine/indicators/zonesState.ts +47 -47
- package/src/engine/layout/pane.ts +161 -161
- package/src/engine/marker/registry.ts +265 -265
- package/src/engine/paneRenderer.ts +169 -169
- package/src/engine/renderers/Indicator/atr.ts +237 -237
- package/src/engine/renderers/Indicator/boll.ts +317 -317
- package/src/engine/renderers/Indicator/cci.ts +275 -275
- package/src/engine/renderers/Indicator/chaikinVol.ts +138 -138
- package/src/engine/renderers/Indicator/cmf.ts +137 -137
- package/src/engine/renderers/Indicator/dema.ts +136 -136
- package/src/engine/renderers/Indicator/donchian.ts +137 -137
- package/src/engine/renderers/Indicator/ene.ts +271 -271
- package/src/engine/renderers/Indicator/expma.ts +197 -197
- package/src/engine/renderers/Indicator/fastk.ts +316 -316
- package/src/engine/renderers/Indicator/fib.ts +141 -141
- package/src/engine/renderers/Indicator/hma.ts +136 -136
- package/src/engine/renderers/Indicator/hv.ts +124 -124
- package/src/engine/renderers/Indicator/ichimoku.ts +181 -181
- package/src/engine/renderers/Indicator/index.ts +241 -241
- package/src/engine/renderers/Indicator/indicatorData.ts +650 -650
- package/src/engine/renderers/Indicator/kama.ts +136 -136
- package/src/engine/renderers/Indicator/keltner.ts +137 -137
- package/src/engine/renderers/Indicator/kst.ts +302 -302
- package/src/engine/renderers/Indicator/ma.ts +200 -200
- package/src/engine/renderers/Indicator/macd.ts +477 -477
- package/src/engine/renderers/Indicator/macdLegend.ts +141 -141
- package/src/engine/renderers/Indicator/mainIndicatorLegend.ts +272 -272
- package/src/engine/renderers/Indicator/mfi.ts +142 -142
- package/src/engine/renderers/Indicator/mom.ts +311 -311
- package/src/engine/renderers/Indicator/obv.ts +123 -123
- package/src/engine/renderers/Indicator/parkinson.ts +124 -124
- package/src/engine/renderers/Indicator/pivot.ts +131 -131
- package/src/engine/renderers/Indicator/pvt.ts +123 -123
- package/src/engine/renderers/Indicator/roc.ts +143 -143
- package/src/engine/renderers/Indicator/rsi.ts +390 -390
- package/src/engine/renderers/Indicator/sar.ts +113 -113
- package/src/engine/renderers/Indicator/scale/atr_scale.ts +19 -19
- package/src/engine/renderers/Indicator/scale/cci_scale.ts +19 -19
- package/src/engine/renderers/Indicator/scale/fastk_scale.ts +19 -19
- package/src/engine/renderers/Indicator/scale/indicator_scale.ts +204 -204
- package/src/engine/renderers/Indicator/scale/kst_scale.ts +19 -19
- package/src/engine/renderers/Indicator/scale/macd_scale.ts +22 -22
- package/src/engine/renderers/Indicator/scale/mom_scale.ts +19 -19
- package/src/engine/renderers/Indicator/scale/rsi_scale.ts +19 -19
- package/src/engine/renderers/Indicator/scale/stoch_scale.ts +19 -19
- package/src/engine/renderers/Indicator/scale/volume_scale.ts +26 -26
- package/src/engine/renderers/Indicator/scale/wmsr_scale.ts +19 -19
- package/src/engine/renderers/Indicator/stoch.ts +359 -359
- package/src/engine/renderers/Indicator/structure.ts +126 -126
- package/src/engine/renderers/Indicator/subPaneConfig.ts +265 -265
- package/src/engine/renderers/Indicator/supertrend.ts +115 -115
- package/src/engine/renderers/Indicator/tema.ts +136 -136
- package/src/engine/renderers/Indicator/trix.ts +158 -158
- package/src/engine/renderers/Indicator/vma.ts +124 -124
- package/src/engine/renderers/Indicator/volumeProfile.ts +125 -125
- package/src/engine/renderers/Indicator/vwap.ts +123 -123
- package/src/engine/renderers/Indicator/wma.ts +136 -136
- package/src/engine/renderers/Indicator/wmsr.ts +328 -328
- package/src/engine/renderers/Indicator/zones.ts +104 -104
- package/src/engine/renderers/__tests__/boll.renderer.test.ts +314 -314
- package/src/engine/renderers/__tests__/ene.renderer.test.ts +305 -305
- package/src/engine/renderers/__tests__/expma.renderer.test.ts +279 -279
- package/src/engine/renderers/__tests__/ma.renderer.test.ts +426 -426
- package/src/engine/renderers/__tests__/mainIndicatorLegend.renderer.test.ts +502 -502
- package/src/engine/renderers/__tests__/yAxis.renderer.test.ts +173 -173
- package/src/engine/renderers/candle.ts +459 -459
- package/src/engine/renderers/crosshair.ts +69 -69
- package/src/engine/renderers/customMarkers.ts +162 -162
- package/src/engine/renderers/extremaMarkers.ts +246 -246
- package/src/engine/renderers/gridLines.ts +90 -90
- package/src/engine/renderers/lastPrice.ts +97 -97
- package/src/engine/renderers/paneTitle.ts +136 -136
- package/src/engine/renderers/subVolume.ts +236 -236
- package/src/engine/renderers/timeAxis.ts +121 -121
- package/src/engine/renderers/webgl/candleSurface.ts +955 -955
- package/src/engine/renderers/webgl/sharedWebGLSurface.ts +146 -146
- package/src/engine/renderers/yAxis.ts +105 -105
- package/src/engine/scale/__tests__/logFormula.spec.ts +148 -148
- package/src/engine/scale/logFormula.ts +130 -130
- package/src/engine/scale/price.ts +39 -39
- package/src/engine/scale/priceScale.ts +264 -264
- package/src/engine/subPaneManager.ts +442 -427
- package/src/engine/theme/colors.ts +642 -642
- package/src/engine/theme/fonts.ts +20 -20
- package/src/engine/utils/klineConfig.ts +49 -49
- package/src/engine/utils/tickCount.ts +11 -11
- package/src/engine/utils/tickPosition.ts +214 -214
- package/src/engine/utils/zoom.ts +83 -83
- package/src/engine/viewport/viewport.ts +67 -67
- package/src/index.ts +3 -3
- package/src/plugin/ConfigManager.ts +93 -93
- package/src/plugin/EventBus.ts +77 -77
- package/src/plugin/HookSystem.ts +106 -106
- package/src/plugin/PluginHost.ts +243 -243
- package/src/plugin/PluginRegistry.ts +92 -92
- package/src/plugin/StateStore.ts +73 -73
- package/src/plugin/index.ts +19 -19
- package/src/plugin/rendererPluginManager.ts +368 -368
- package/src/plugin/stateKeys.ts +8 -8
- package/src/plugin/types.ts +526 -526
- package/src/reactivity/index.ts +2 -2
- package/src/reactivity/signal.ts +119 -119
- package/src/semantic/controller.ts +251 -251
- package/src/semantic/drawShape.ts +260 -260
- package/src/semantic/index.ts +28 -28
- package/src/semantic/schema.json +256 -256
- package/src/semantic/types.ts +251 -251
- package/src/semantic/validator.ts +349 -349
- package/src/types/kLine.ts +13 -13
- package/src/types/price.ts +56 -56
- package/src/types/volumePrice.ts +33 -33
- package/src/utils/dateFormat.ts +208 -208
- package/src/utils/kLineDraw/axis.ts +562 -562
- package/src/utils/priceToY.ts +34 -34
- package/src/utils/volumePrice.ts +202 -202
- package/src/version.ts +1 -1
|
@@ -1,26 +1,26 @@
|
|
|
1
|
-
import type { BaseIndicatorState } from '../../plugin'
|
|
2
|
-
import { createIndicatorStateKey } from '../../plugin/stateKeys'
|
|
3
|
-
import type { STOCHPoint } from './calculators'
|
|
4
|
-
|
|
5
|
-
export interface STOCHRenderState extends BaseIndicatorState {
|
|
6
|
-
timestamp: number
|
|
7
|
-
series: STOCHPoint[]
|
|
8
|
-
params: { n: number; m: number; showK: boolean; showD: boolean }
|
|
9
|
-
valueMin: number
|
|
10
|
-
valueMax: number
|
|
11
|
-
visibleMin: number
|
|
12
|
-
visibleMax: number
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
export const createSTOCHStateKey = (paneId: string) =>
|
|
16
|
-
createIndicatorStateKey('stoch', paneId)
|
|
17
|
-
|
|
18
|
-
export const EMPTY_STOCH_STATE: STOCHRenderState = {
|
|
19
|
-
timestamp: 0,
|
|
20
|
-
series: [],
|
|
21
|
-
params: { n: 9, m: 3, showK: true, showD: true },
|
|
22
|
-
valueMin: 0,
|
|
23
|
-
valueMax: 100,
|
|
24
|
-
visibleMin: Infinity,
|
|
25
|
-
visibleMax: -Infinity,
|
|
26
|
-
}
|
|
1
|
+
import type { BaseIndicatorState } from '../../plugin'
|
|
2
|
+
import { createIndicatorStateKey } from '../../plugin/stateKeys'
|
|
3
|
+
import type { STOCHPoint } from './calculators'
|
|
4
|
+
|
|
5
|
+
export interface STOCHRenderState extends BaseIndicatorState {
|
|
6
|
+
timestamp: number
|
|
7
|
+
series: STOCHPoint[]
|
|
8
|
+
params: { n: number; m: number; showK: boolean; showD: boolean }
|
|
9
|
+
valueMin: number
|
|
10
|
+
valueMax: number
|
|
11
|
+
visibleMin: number
|
|
12
|
+
visibleMax: number
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
export const createSTOCHStateKey = (paneId: string) =>
|
|
16
|
+
createIndicatorStateKey('stoch', paneId)
|
|
17
|
+
|
|
18
|
+
export const EMPTY_STOCH_STATE: STOCHRenderState = {
|
|
19
|
+
timestamp: 0,
|
|
20
|
+
series: [],
|
|
21
|
+
params: { n: 9, m: 3, showK: true, showD: true },
|
|
22
|
+
valueMin: 0,
|
|
23
|
+
valueMax: 100,
|
|
24
|
+
visibleMin: Infinity,
|
|
25
|
+
visibleMax: -Infinity,
|
|
26
|
+
}
|
|
@@ -1,69 +1,69 @@
|
|
|
1
|
-
import type { BaseIndicatorState } from '../../plugin'
|
|
2
|
-
import { createIndicatorStateKey } from '../../plugin/stateKeys'
|
|
3
|
-
|
|
4
|
-
export interface SwingPoint {
|
|
5
|
-
index: number
|
|
6
|
-
price: number
|
|
7
|
-
kind: 'high' | 'low'
|
|
8
|
-
label: 'HH' | 'HL' | 'LH' | 'LL'
|
|
9
|
-
confirmed: boolean
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
export type StructureEventKind = 'BOS' | 'CHOCH'
|
|
13
|
-
|
|
14
|
-
export interface StructureEvent {
|
|
15
|
-
kind: StructureEventKind
|
|
16
|
-
index: number
|
|
17
|
-
triggerPrice: number
|
|
18
|
-
brokenLevel: number
|
|
19
|
-
brokenSwingIndex: number
|
|
20
|
-
direction: 'up' | 'down'
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
export interface StructureSnapshot {
|
|
24
|
-
swings: SwingPoint[]
|
|
25
|
-
events: StructureEvent[]
|
|
26
|
-
trend: 'up' | 'down' | 'range'
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
export interface StructureRenderState extends BaseIndicatorState {
|
|
30
|
-
timestamp: number
|
|
31
|
-
series: StructureSnapshot
|
|
32
|
-
params: {
|
|
33
|
-
leftWindow: number
|
|
34
|
-
rightWindow: number
|
|
35
|
-
breakoutSource: 'close' | 'wick'
|
|
36
|
-
showSwingLabels: boolean
|
|
37
|
-
showBOS: boolean
|
|
38
|
-
showCHOCH: boolean
|
|
39
|
-
showProvisional: boolean
|
|
40
|
-
}
|
|
41
|
-
valueMin: number
|
|
42
|
-
valueMax: number
|
|
43
|
-
visibleMin: number
|
|
44
|
-
visibleMax: number
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
export const createStructureStateKey = (paneId: string) =>
|
|
48
|
-
createIndicatorStateKey('structure', paneId)
|
|
49
|
-
|
|
50
|
-
export const DEFAULT_STRUCTURE_LEFT = 2
|
|
51
|
-
export const DEFAULT_STRUCTURE_RIGHT = 2
|
|
52
|
-
|
|
53
|
-
export const EMPTY_STRUCTURE_STATE: StructureRenderState = {
|
|
54
|
-
timestamp: 0,
|
|
55
|
-
series: { swings: [], events: [], trend: 'range' },
|
|
56
|
-
params: {
|
|
57
|
-
leftWindow: DEFAULT_STRUCTURE_LEFT,
|
|
58
|
-
rightWindow: DEFAULT_STRUCTURE_RIGHT,
|
|
59
|
-
breakoutSource: 'close',
|
|
60
|
-
showSwingLabels: true,
|
|
61
|
-
showBOS: true,
|
|
62
|
-
showCHOCH: true,
|
|
63
|
-
showProvisional: false,
|
|
64
|
-
},
|
|
65
|
-
valueMin: 0,
|
|
66
|
-
valueMax: 1,
|
|
67
|
-
visibleMin: Infinity,
|
|
68
|
-
visibleMax: -Infinity,
|
|
69
|
-
}
|
|
1
|
+
import type { BaseIndicatorState } from '../../plugin'
|
|
2
|
+
import { createIndicatorStateKey } from '../../plugin/stateKeys'
|
|
3
|
+
|
|
4
|
+
export interface SwingPoint {
|
|
5
|
+
index: number
|
|
6
|
+
price: number
|
|
7
|
+
kind: 'high' | 'low'
|
|
8
|
+
label: 'HH' | 'HL' | 'LH' | 'LL'
|
|
9
|
+
confirmed: boolean
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
export type StructureEventKind = 'BOS' | 'CHOCH'
|
|
13
|
+
|
|
14
|
+
export interface StructureEvent {
|
|
15
|
+
kind: StructureEventKind
|
|
16
|
+
index: number
|
|
17
|
+
triggerPrice: number
|
|
18
|
+
brokenLevel: number
|
|
19
|
+
brokenSwingIndex: number
|
|
20
|
+
direction: 'up' | 'down'
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
export interface StructureSnapshot {
|
|
24
|
+
swings: SwingPoint[]
|
|
25
|
+
events: StructureEvent[]
|
|
26
|
+
trend: 'up' | 'down' | 'range'
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
export interface StructureRenderState extends BaseIndicatorState {
|
|
30
|
+
timestamp: number
|
|
31
|
+
series: StructureSnapshot
|
|
32
|
+
params: {
|
|
33
|
+
leftWindow: number
|
|
34
|
+
rightWindow: number
|
|
35
|
+
breakoutSource: 'close' | 'wick'
|
|
36
|
+
showSwingLabels: boolean
|
|
37
|
+
showBOS: boolean
|
|
38
|
+
showCHOCH: boolean
|
|
39
|
+
showProvisional: boolean
|
|
40
|
+
}
|
|
41
|
+
valueMin: number
|
|
42
|
+
valueMax: number
|
|
43
|
+
visibleMin: number
|
|
44
|
+
visibleMax: number
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
export const createStructureStateKey = (paneId: string) =>
|
|
48
|
+
createIndicatorStateKey('structure', paneId)
|
|
49
|
+
|
|
50
|
+
export const DEFAULT_STRUCTURE_LEFT = 2
|
|
51
|
+
export const DEFAULT_STRUCTURE_RIGHT = 2
|
|
52
|
+
|
|
53
|
+
export const EMPTY_STRUCTURE_STATE: StructureRenderState = {
|
|
54
|
+
timestamp: 0,
|
|
55
|
+
series: { swings: [], events: [], trend: 'range' },
|
|
56
|
+
params: {
|
|
57
|
+
leftWindow: DEFAULT_STRUCTURE_LEFT,
|
|
58
|
+
rightWindow: DEFAULT_STRUCTURE_RIGHT,
|
|
59
|
+
breakoutSource: 'close',
|
|
60
|
+
showSwingLabels: true,
|
|
61
|
+
showBOS: true,
|
|
62
|
+
showCHOCH: true,
|
|
63
|
+
showProvisional: false,
|
|
64
|
+
},
|
|
65
|
+
valueMin: 0,
|
|
66
|
+
valueMax: 1,
|
|
67
|
+
visibleMin: Infinity,
|
|
68
|
+
visibleMax: -Infinity,
|
|
69
|
+
}
|
|
@@ -1,37 +1,37 @@
|
|
|
1
|
-
import type { BaseIndicatorState } from '../../plugin'
|
|
2
|
-
import { createIndicatorStateKey } from '../../plugin/stateKeys'
|
|
3
|
-
|
|
4
|
-
export interface SuperTrendPoint {
|
|
5
|
-
value: number
|
|
6
|
-
trend: 'up' | 'down'
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
export interface SuperTrendRenderState extends BaseIndicatorState {
|
|
10
|
-
timestamp: number
|
|
11
|
-
series: (SuperTrendPoint | undefined)[]
|
|
12
|
-
params: { atrPeriod: number; multiplier: number; showSuperTrend: boolean }
|
|
13
|
-
valueMin: number
|
|
14
|
-
valueMax: number
|
|
15
|
-
visibleMin: number
|
|
16
|
-
visibleMax: number
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
export const createSuperTrendStateKey = (paneId: string) =>
|
|
20
|
-
createIndicatorStateKey('supertrend', paneId)
|
|
21
|
-
|
|
22
|
-
export const DEFAULT_SUPERTREND_ATR_PERIOD = 10
|
|
23
|
-
export const DEFAULT_SUPERTREND_MULTIPLIER = 3
|
|
24
|
-
|
|
25
|
-
export const EMPTY_SUPERTREND_STATE: SuperTrendRenderState = {
|
|
26
|
-
timestamp: 0,
|
|
27
|
-
series: [],
|
|
28
|
-
params: {
|
|
29
|
-
atrPeriod: DEFAULT_SUPERTREND_ATR_PERIOD,
|
|
30
|
-
multiplier: DEFAULT_SUPERTREND_MULTIPLIER,
|
|
31
|
-
showSuperTrend: true,
|
|
32
|
-
},
|
|
33
|
-
valueMin: 0,
|
|
34
|
-
valueMax: 1,
|
|
35
|
-
visibleMin: Infinity,
|
|
36
|
-
visibleMax: -Infinity,
|
|
37
|
-
}
|
|
1
|
+
import type { BaseIndicatorState } from '../../plugin'
|
|
2
|
+
import { createIndicatorStateKey } from '../../plugin/stateKeys'
|
|
3
|
+
|
|
4
|
+
export interface SuperTrendPoint {
|
|
5
|
+
value: number
|
|
6
|
+
trend: 'up' | 'down'
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
export interface SuperTrendRenderState extends BaseIndicatorState {
|
|
10
|
+
timestamp: number
|
|
11
|
+
series: (SuperTrendPoint | undefined)[]
|
|
12
|
+
params: { atrPeriod: number; multiplier: number; showSuperTrend: boolean }
|
|
13
|
+
valueMin: number
|
|
14
|
+
valueMax: number
|
|
15
|
+
visibleMin: number
|
|
16
|
+
visibleMax: number
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
export const createSuperTrendStateKey = (paneId: string) =>
|
|
20
|
+
createIndicatorStateKey('supertrend', paneId)
|
|
21
|
+
|
|
22
|
+
export const DEFAULT_SUPERTREND_ATR_PERIOD = 10
|
|
23
|
+
export const DEFAULT_SUPERTREND_MULTIPLIER = 3
|
|
24
|
+
|
|
25
|
+
export const EMPTY_SUPERTREND_STATE: SuperTrendRenderState = {
|
|
26
|
+
timestamp: 0,
|
|
27
|
+
series: [],
|
|
28
|
+
params: {
|
|
29
|
+
atrPeriod: DEFAULT_SUPERTREND_ATR_PERIOD,
|
|
30
|
+
multiplier: DEFAULT_SUPERTREND_MULTIPLIER,
|
|
31
|
+
showSuperTrend: true,
|
|
32
|
+
},
|
|
33
|
+
valueMin: 0,
|
|
34
|
+
valueMax: 1,
|
|
35
|
+
visibleMin: Infinity,
|
|
36
|
+
visibleMax: -Infinity,
|
|
37
|
+
}
|
|
@@ -1,27 +1,27 @@
|
|
|
1
|
-
import type { BaseIndicatorState } from '../../plugin'
|
|
2
|
-
import { createIndicatorStateKey } from '../../plugin/stateKeys'
|
|
3
|
-
|
|
4
|
-
export interface TEMARenderState extends BaseIndicatorState {
|
|
5
|
-
timestamp: number
|
|
6
|
-
series: (number | undefined)[]
|
|
7
|
-
params: { period: number; showTEMA: boolean }
|
|
8
|
-
valueMin: number
|
|
9
|
-
valueMax: number
|
|
10
|
-
visibleMin: number
|
|
11
|
-
visibleMax: number
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
export const createTEMAStateKey = (paneId: string) =>
|
|
15
|
-
createIndicatorStateKey('tema', paneId)
|
|
16
|
-
|
|
17
|
-
export const DEFAULT_TEMA_PERIOD = 20
|
|
18
|
-
|
|
19
|
-
export const EMPTY_TEMA_STATE: TEMARenderState = {
|
|
20
|
-
timestamp: 0,
|
|
21
|
-
series: [],
|
|
22
|
-
params: { period: DEFAULT_TEMA_PERIOD, showTEMA: true },
|
|
23
|
-
valueMin: 0,
|
|
24
|
-
valueMax: 1,
|
|
25
|
-
visibleMin: Infinity,
|
|
26
|
-
visibleMax: -Infinity,
|
|
27
|
-
}
|
|
1
|
+
import type { BaseIndicatorState } from '../../plugin'
|
|
2
|
+
import { createIndicatorStateKey } from '../../plugin/stateKeys'
|
|
3
|
+
|
|
4
|
+
export interface TEMARenderState extends BaseIndicatorState {
|
|
5
|
+
timestamp: number
|
|
6
|
+
series: (number | undefined)[]
|
|
7
|
+
params: { period: number; showTEMA: boolean }
|
|
8
|
+
valueMin: number
|
|
9
|
+
valueMax: number
|
|
10
|
+
visibleMin: number
|
|
11
|
+
visibleMax: number
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
export const createTEMAStateKey = (paneId: string) =>
|
|
15
|
+
createIndicatorStateKey('tema', paneId)
|
|
16
|
+
|
|
17
|
+
export const DEFAULT_TEMA_PERIOD = 20
|
|
18
|
+
|
|
19
|
+
export const EMPTY_TEMA_STATE: TEMARenderState = {
|
|
20
|
+
timestamp: 0,
|
|
21
|
+
series: [],
|
|
22
|
+
params: { period: DEFAULT_TEMA_PERIOD, showTEMA: true },
|
|
23
|
+
valueMin: 0,
|
|
24
|
+
valueMax: 1,
|
|
25
|
+
visibleMin: Infinity,
|
|
26
|
+
visibleMax: -Infinity,
|
|
27
|
+
}
|
|
@@ -1,35 +1,35 @@
|
|
|
1
|
-
import type { BaseIndicatorState } from '../../plugin'
|
|
2
|
-
import { createIndicatorStateKey } from '../../plugin/stateKeys'
|
|
3
|
-
|
|
4
|
-
export interface TRIXRenderState extends BaseIndicatorState {
|
|
5
|
-
timestamp: number
|
|
6
|
-
series: (number | undefined)[]
|
|
7
|
-
params: { period: number; signalPeriod: number; showTRIX: boolean; showSignal: boolean }
|
|
8
|
-
signalSeries: (number | undefined)[]
|
|
9
|
-
valueMin: number
|
|
10
|
-
valueMax: number
|
|
11
|
-
visibleMin: number
|
|
12
|
-
visibleMax: number
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
export const createTRIXStateKey = (paneId: string) =>
|
|
16
|
-
createIndicatorStateKey('trix', paneId)
|
|
17
|
-
|
|
18
|
-
export const DEFAULT_TRIX_PERIOD = 15
|
|
19
|
-
export const DEFAULT_TRIX_SIGNAL_PERIOD = 9
|
|
20
|
-
|
|
21
|
-
export const EMPTY_TRIX_STATE: TRIXRenderState = {
|
|
22
|
-
timestamp: 0,
|
|
23
|
-
series: [],
|
|
24
|
-
signalSeries: [],
|
|
25
|
-
params: {
|
|
26
|
-
period: DEFAULT_TRIX_PERIOD,
|
|
27
|
-
signalPeriod: DEFAULT_TRIX_SIGNAL_PERIOD,
|
|
28
|
-
showTRIX: true,
|
|
29
|
-
showSignal: true,
|
|
30
|
-
},
|
|
31
|
-
valueMin: -10,
|
|
32
|
-
valueMax: 10,
|
|
33
|
-
visibleMin: Infinity,
|
|
34
|
-
visibleMax: -Infinity,
|
|
35
|
-
}
|
|
1
|
+
import type { BaseIndicatorState } from '../../plugin'
|
|
2
|
+
import { createIndicatorStateKey } from '../../plugin/stateKeys'
|
|
3
|
+
|
|
4
|
+
export interface TRIXRenderState extends BaseIndicatorState {
|
|
5
|
+
timestamp: number
|
|
6
|
+
series: (number | undefined)[]
|
|
7
|
+
params: { period: number; signalPeriod: number; showTRIX: boolean; showSignal: boolean }
|
|
8
|
+
signalSeries: (number | undefined)[]
|
|
9
|
+
valueMin: number
|
|
10
|
+
valueMax: number
|
|
11
|
+
visibleMin: number
|
|
12
|
+
visibleMax: number
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
export const createTRIXStateKey = (paneId: string) =>
|
|
16
|
+
createIndicatorStateKey('trix', paneId)
|
|
17
|
+
|
|
18
|
+
export const DEFAULT_TRIX_PERIOD = 15
|
|
19
|
+
export const DEFAULT_TRIX_SIGNAL_PERIOD = 9
|
|
20
|
+
|
|
21
|
+
export const EMPTY_TRIX_STATE: TRIXRenderState = {
|
|
22
|
+
timestamp: 0,
|
|
23
|
+
series: [],
|
|
24
|
+
signalSeries: [],
|
|
25
|
+
params: {
|
|
26
|
+
period: DEFAULT_TRIX_PERIOD,
|
|
27
|
+
signalPeriod: DEFAULT_TRIX_SIGNAL_PERIOD,
|
|
28
|
+
showTRIX: true,
|
|
29
|
+
showSignal: true,
|
|
30
|
+
},
|
|
31
|
+
valueMin: -10,
|
|
32
|
+
valueMax: 10,
|
|
33
|
+
visibleMin: Infinity,
|
|
34
|
+
visibleMax: -Infinity,
|
|
35
|
+
}
|
|
@@ -1,27 +1,27 @@
|
|
|
1
|
-
import type { BaseIndicatorState } from '../../plugin'
|
|
2
|
-
import { createIndicatorStateKey } from '../../plugin/stateKeys'
|
|
3
|
-
|
|
4
|
-
export interface VMARenderState extends BaseIndicatorState {
|
|
5
|
-
timestamp: number
|
|
6
|
-
series: (number | undefined)[]
|
|
7
|
-
params: { period: number; showVMA: boolean }
|
|
8
|
-
valueMin: number
|
|
9
|
-
valueMax: number
|
|
10
|
-
visibleMin: number
|
|
11
|
-
visibleMax: number
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
export const createVMAStateKey = (paneId: string) =>
|
|
15
|
-
createIndicatorStateKey('vma', paneId)
|
|
16
|
-
|
|
17
|
-
export const DEFAULT_VMA_PERIOD = 5
|
|
18
|
-
|
|
19
|
-
export const EMPTY_VMA_STATE: VMARenderState = {
|
|
20
|
-
timestamp: 0,
|
|
21
|
-
series: [],
|
|
22
|
-
params: { period: DEFAULT_VMA_PERIOD, showVMA: true },
|
|
23
|
-
valueMin: 0,
|
|
24
|
-
valueMax: 1,
|
|
25
|
-
visibleMin: Infinity,
|
|
26
|
-
visibleMax: -Infinity,
|
|
27
|
-
}
|
|
1
|
+
import type { BaseIndicatorState } from '../../plugin'
|
|
2
|
+
import { createIndicatorStateKey } from '../../plugin/stateKeys'
|
|
3
|
+
|
|
4
|
+
export interface VMARenderState extends BaseIndicatorState {
|
|
5
|
+
timestamp: number
|
|
6
|
+
series: (number | undefined)[]
|
|
7
|
+
params: { period: number; showVMA: boolean }
|
|
8
|
+
valueMin: number
|
|
9
|
+
valueMax: number
|
|
10
|
+
visibleMin: number
|
|
11
|
+
visibleMax: number
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
export const createVMAStateKey = (paneId: string) =>
|
|
15
|
+
createIndicatorStateKey('vma', paneId)
|
|
16
|
+
|
|
17
|
+
export const DEFAULT_VMA_PERIOD = 5
|
|
18
|
+
|
|
19
|
+
export const EMPTY_VMA_STATE: VMARenderState = {
|
|
20
|
+
timestamp: 0,
|
|
21
|
+
series: [],
|
|
22
|
+
params: { period: DEFAULT_VMA_PERIOD, showVMA: true },
|
|
23
|
+
valueMin: 0,
|
|
24
|
+
valueMax: 1,
|
|
25
|
+
visibleMin: Infinity,
|
|
26
|
+
visibleMax: -Infinity,
|
|
27
|
+
}
|
|
@@ -1,63 +1,63 @@
|
|
|
1
|
-
import type { BaseIndicatorState } from '../../plugin'
|
|
2
|
-
import { createIndicatorStateKey } from '../../plugin/stateKeys'
|
|
3
|
-
|
|
4
|
-
export interface VolumeProfileBin {
|
|
5
|
-
priceLow: number
|
|
6
|
-
priceHigh: number
|
|
7
|
-
volume: number
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
export interface VolumeProfileResult {
|
|
11
|
-
bins: VolumeProfileBin[]
|
|
12
|
-
poc: number // Point of Control: price center of max-volume bin
|
|
13
|
-
vah: number // Value Area High: upper bound of 70% volume area
|
|
14
|
-
val: number // Value Area Low: lower bound of 70% volume area
|
|
15
|
-
totalVolume: number
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
export interface VolumeProfileRenderState extends BaseIndicatorState {
|
|
19
|
-
timestamp: number
|
|
20
|
-
series: VolumeProfileResult
|
|
21
|
-
params: {
|
|
22
|
-
bins: number
|
|
23
|
-
lookback: number
|
|
24
|
-
valueAreaPercent: number
|
|
25
|
-
showPOC: boolean
|
|
26
|
-
showValueArea: boolean
|
|
27
|
-
}
|
|
28
|
-
valueMin: number
|
|
29
|
-
valueMax: number
|
|
30
|
-
visibleMin: number
|
|
31
|
-
visibleMax: number
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
export const createVolumeProfileStateKey = (paneId: string) =>
|
|
35
|
-
createIndicatorStateKey('volumeProfile', paneId)
|
|
36
|
-
|
|
37
|
-
export const DEFAULT_VP_BINS = 24
|
|
38
|
-
export const DEFAULT_VP_LOOKBACK = 0 // 0 = use entire data
|
|
39
|
-
export const DEFAULT_VP_VALUE_AREA = 0.7
|
|
40
|
-
|
|
41
|
-
export const EMPTY_VP_RESULT: VolumeProfileResult = {
|
|
42
|
-
bins: [],
|
|
43
|
-
poc: 0,
|
|
44
|
-
vah: 0,
|
|
45
|
-
val: 0,
|
|
46
|
-
totalVolume: 0,
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
export const EMPTY_VOLUME_PROFILE_STATE: VolumeProfileRenderState = {
|
|
50
|
-
timestamp: 0,
|
|
51
|
-
series: EMPTY_VP_RESULT,
|
|
52
|
-
params: {
|
|
53
|
-
bins: DEFAULT_VP_BINS,
|
|
54
|
-
lookback: DEFAULT_VP_LOOKBACK,
|
|
55
|
-
valueAreaPercent: DEFAULT_VP_VALUE_AREA,
|
|
56
|
-
showPOC: true,
|
|
57
|
-
showValueArea: true,
|
|
58
|
-
},
|
|
59
|
-
valueMin: 0,
|
|
60
|
-
valueMax: 1,
|
|
61
|
-
visibleMin: Infinity,
|
|
62
|
-
visibleMax: -Infinity,
|
|
63
|
-
}
|
|
1
|
+
import type { BaseIndicatorState } from '../../plugin'
|
|
2
|
+
import { createIndicatorStateKey } from '../../plugin/stateKeys'
|
|
3
|
+
|
|
4
|
+
export interface VolumeProfileBin {
|
|
5
|
+
priceLow: number
|
|
6
|
+
priceHigh: number
|
|
7
|
+
volume: number
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export interface VolumeProfileResult {
|
|
11
|
+
bins: VolumeProfileBin[]
|
|
12
|
+
poc: number // Point of Control: price center of max-volume bin
|
|
13
|
+
vah: number // Value Area High: upper bound of 70% volume area
|
|
14
|
+
val: number // Value Area Low: lower bound of 70% volume area
|
|
15
|
+
totalVolume: number
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export interface VolumeProfileRenderState extends BaseIndicatorState {
|
|
19
|
+
timestamp: number
|
|
20
|
+
series: VolumeProfileResult
|
|
21
|
+
params: {
|
|
22
|
+
bins: number
|
|
23
|
+
lookback: number
|
|
24
|
+
valueAreaPercent: number
|
|
25
|
+
showPOC: boolean
|
|
26
|
+
showValueArea: boolean
|
|
27
|
+
}
|
|
28
|
+
valueMin: number
|
|
29
|
+
valueMax: number
|
|
30
|
+
visibleMin: number
|
|
31
|
+
visibleMax: number
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
export const createVolumeProfileStateKey = (paneId: string) =>
|
|
35
|
+
createIndicatorStateKey('volumeProfile', paneId)
|
|
36
|
+
|
|
37
|
+
export const DEFAULT_VP_BINS = 24
|
|
38
|
+
export const DEFAULT_VP_LOOKBACK = 0 // 0 = use entire data
|
|
39
|
+
export const DEFAULT_VP_VALUE_AREA = 0.7
|
|
40
|
+
|
|
41
|
+
export const EMPTY_VP_RESULT: VolumeProfileResult = {
|
|
42
|
+
bins: [],
|
|
43
|
+
poc: 0,
|
|
44
|
+
vah: 0,
|
|
45
|
+
val: 0,
|
|
46
|
+
totalVolume: 0,
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
export const EMPTY_VOLUME_PROFILE_STATE: VolumeProfileRenderState = {
|
|
50
|
+
timestamp: 0,
|
|
51
|
+
series: EMPTY_VP_RESULT,
|
|
52
|
+
params: {
|
|
53
|
+
bins: DEFAULT_VP_BINS,
|
|
54
|
+
lookback: DEFAULT_VP_LOOKBACK,
|
|
55
|
+
valueAreaPercent: DEFAULT_VP_VALUE_AREA,
|
|
56
|
+
showPOC: true,
|
|
57
|
+
showValueArea: true,
|
|
58
|
+
},
|
|
59
|
+
valueMin: 0,
|
|
60
|
+
valueMax: 1,
|
|
61
|
+
visibleMin: Infinity,
|
|
62
|
+
visibleMax: -Infinity,
|
|
63
|
+
}
|
|
@@ -1,29 +1,29 @@
|
|
|
1
|
-
import type { BaseIndicatorState } from '../../plugin'
|
|
2
|
-
import { createIndicatorStateKey } from '../../plugin/stateKeys'
|
|
3
|
-
|
|
4
|
-
export interface VWAPRenderState extends BaseIndicatorState {
|
|
5
|
-
timestamp: number
|
|
6
|
-
series: (number | undefined)[]
|
|
7
|
-
params: { sessionResetGapMs: number; showVWAP: boolean }
|
|
8
|
-
valueMin: number
|
|
9
|
-
valueMax: number
|
|
10
|
-
visibleMin: number
|
|
11
|
-
visibleMax: number
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
export const createVWAPStateKey = (paneId: string) =>
|
|
15
|
-
createIndicatorStateKey('vwap', paneId)
|
|
16
|
-
|
|
17
|
-
// 0 = never reset (entire data is one session)
|
|
18
|
-
// > 0 = reset session when consecutive bars' timestamps differ by more than this
|
|
19
|
-
export const DEFAULT_VWAP_SESSION_GAP_MS = 0
|
|
20
|
-
|
|
21
|
-
export const EMPTY_VWAP_STATE: VWAPRenderState = {
|
|
22
|
-
timestamp: 0,
|
|
23
|
-
series: [],
|
|
24
|
-
params: { sessionResetGapMs: DEFAULT_VWAP_SESSION_GAP_MS, showVWAP: true },
|
|
25
|
-
valueMin: 0,
|
|
26
|
-
valueMax: 1,
|
|
27
|
-
visibleMin: Infinity,
|
|
28
|
-
visibleMax: -Infinity,
|
|
29
|
-
}
|
|
1
|
+
import type { BaseIndicatorState } from '../../plugin'
|
|
2
|
+
import { createIndicatorStateKey } from '../../plugin/stateKeys'
|
|
3
|
+
|
|
4
|
+
export interface VWAPRenderState extends BaseIndicatorState {
|
|
5
|
+
timestamp: number
|
|
6
|
+
series: (number | undefined)[]
|
|
7
|
+
params: { sessionResetGapMs: number; showVWAP: boolean }
|
|
8
|
+
valueMin: number
|
|
9
|
+
valueMax: number
|
|
10
|
+
visibleMin: number
|
|
11
|
+
visibleMax: number
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
export const createVWAPStateKey = (paneId: string) =>
|
|
15
|
+
createIndicatorStateKey('vwap', paneId)
|
|
16
|
+
|
|
17
|
+
// 0 = never reset (entire data is one session)
|
|
18
|
+
// > 0 = reset session when consecutive bars' timestamps differ by more than this
|
|
19
|
+
export const DEFAULT_VWAP_SESSION_GAP_MS = 0
|
|
20
|
+
|
|
21
|
+
export const EMPTY_VWAP_STATE: VWAPRenderState = {
|
|
22
|
+
timestamp: 0,
|
|
23
|
+
series: [],
|
|
24
|
+
params: { sessionResetGapMs: DEFAULT_VWAP_SESSION_GAP_MS, showVWAP: true },
|
|
25
|
+
valueMin: 0,
|
|
26
|
+
valueMax: 1,
|
|
27
|
+
visibleMin: Infinity,
|
|
28
|
+
visibleMax: -Infinity,
|
|
29
|
+
}
|