@363045841yyt/klinechart 0.6.10 → 0.7.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.
Files changed (53) hide show
  1. package/dist/favicon.ico +0 -0
  2. package/dist/index.cjs +5 -5
  3. package/dist/index.js +8404 -3629
  4. package/dist/klinechart.css +1 -1
  5. package/dist/mock-stock-data.json +1 -0
  6. package/dist/src/components/IndicatorSelector.vue.d.ts +0 -1
  7. package/dist/src/components/KLineChart.vue.d.ts +1 -1
  8. package/dist/src/config/chartSettings.d.ts +6 -0
  9. package/dist/src/core/chart.d.ts +7 -7
  10. package/dist/src/core/drawing/plugin.d.ts +19 -0
  11. package/dist/src/core/indicators/calculators.d.ts +129 -0
  12. package/dist/src/core/indicators/chaikinVolState.d.ts +18 -0
  13. package/dist/src/core/indicators/cmfState.d.ts +16 -0
  14. package/dist/src/core/indicators/fibState.d.ts +26 -0
  15. package/dist/src/core/indicators/hvState.d.ts +18 -0
  16. package/dist/src/core/indicators/ichimokuState.d.ts +44 -0
  17. package/dist/src/core/indicators/indicatorRuntime.d.ts +35 -0
  18. package/dist/src/core/indicators/mfiState.d.ts +16 -0
  19. package/dist/src/core/indicators/obvState.d.ts +14 -0
  20. package/dist/src/core/indicators/parkinsonState.d.ts +18 -0
  21. package/dist/src/core/indicators/pivotState.d.ts +29 -0
  22. package/dist/src/core/indicators/pvtState.d.ts +14 -0
  23. package/dist/src/core/indicators/rocState.d.ts +16 -0
  24. package/dist/src/core/indicators/scheduler.d.ts +56 -2
  25. package/dist/src/core/indicators/stateComposer.d.ts +51 -0
  26. package/dist/src/core/indicators/structureState.d.ts +43 -0
  27. package/dist/src/core/indicators/trixState.d.ts +20 -0
  28. package/dist/src/core/indicators/vmaState.d.ts +16 -0
  29. package/dist/src/core/indicators/volumeProfileState.d.ts +34 -0
  30. package/dist/src/core/indicators/vwapState.d.ts +16 -0
  31. package/dist/src/core/indicators/workerProtocol.d.ts +198 -1
  32. package/dist/src/core/indicators/zonesState.d.ts +26 -0
  33. package/dist/src/core/renderers/Indicator/chaikinVol.d.ts +4 -0
  34. package/dist/src/core/renderers/Indicator/cmf.d.ts +4 -0
  35. package/dist/src/core/renderers/Indicator/fib.d.ts +4 -0
  36. package/dist/src/core/renderers/Indicator/hv.d.ts +4 -0
  37. package/dist/src/core/renderers/Indicator/ichimoku.d.ts +5 -0
  38. package/dist/src/core/renderers/Indicator/index.d.ts +27 -1
  39. package/dist/src/core/renderers/Indicator/mfi.d.ts +4 -0
  40. package/dist/src/core/renderers/Indicator/obv.d.ts +4 -0
  41. package/dist/src/core/renderers/Indicator/parkinson.d.ts +4 -0
  42. package/dist/src/core/renderers/Indicator/pivot.d.ts +4 -0
  43. package/dist/src/core/renderers/Indicator/pvt.d.ts +4 -0
  44. package/dist/src/core/renderers/Indicator/roc.d.ts +5 -0
  45. package/dist/src/core/renderers/Indicator/structure.d.ts +4 -0
  46. package/dist/src/core/renderers/Indicator/subPaneConfig.d.ts +2 -2
  47. package/dist/src/core/renderers/Indicator/trix.d.ts +5 -0
  48. package/dist/src/core/renderers/Indicator/vma.d.ts +4 -0
  49. package/dist/src/core/renderers/Indicator/volumeProfile.d.ts +4 -0
  50. package/dist/src/core/renderers/Indicator/vwap.d.ts +4 -0
  51. package/dist/src/core/renderers/Indicator/zones.d.ts +4 -0
  52. package/dist/src/semantic/types.d.ts +59 -0
  53. package/package.json +1 -1
@@ -0,0 +1,34 @@
1
+ import { BaseIndicatorState } from '../../plugin';
2
+ export interface VolumeProfileBin {
3
+ priceLow: number;
4
+ priceHigh: number;
5
+ volume: number;
6
+ }
7
+ export interface VolumeProfileResult {
8
+ bins: VolumeProfileBin[];
9
+ poc: number;
10
+ vah: number;
11
+ val: number;
12
+ totalVolume: number;
13
+ }
14
+ export interface VolumeProfileRenderState extends BaseIndicatorState {
15
+ timestamp: number;
16
+ series: VolumeProfileResult;
17
+ params: {
18
+ bins: number;
19
+ lookback: number;
20
+ valueAreaPercent: number;
21
+ showPOC: boolean;
22
+ showValueArea: boolean;
23
+ };
24
+ valueMin: number;
25
+ valueMax: number;
26
+ visibleMin: number;
27
+ visibleMax: number;
28
+ }
29
+ export declare const createVolumeProfileStateKey: (paneId: string) => `indicator:${string}:${string}`;
30
+ export declare const DEFAULT_VP_BINS = 24;
31
+ export declare const DEFAULT_VP_LOOKBACK = 0;
32
+ export declare const DEFAULT_VP_VALUE_AREA = 0.7;
33
+ export declare const EMPTY_VP_RESULT: VolumeProfileResult;
34
+ export declare const EMPTY_VOLUME_PROFILE_STATE: VolumeProfileRenderState;
@@ -0,0 +1,16 @@
1
+ import { BaseIndicatorState } from '../../plugin';
2
+ export interface VWAPRenderState extends BaseIndicatorState {
3
+ timestamp: number;
4
+ series: (number | undefined)[];
5
+ params: {
6
+ sessionResetGapMs: number;
7
+ showVWAP: boolean;
8
+ };
9
+ valueMin: number;
10
+ valueMax: number;
11
+ visibleMin: number;
12
+ visibleMax: number;
13
+ }
14
+ export declare const createVWAPStateKey: (paneId: string) => `indicator:${string}:${string}`;
15
+ export declare const DEFAULT_VWAP_SESSION_GAP_MS = 0;
16
+ export declare const EMPTY_VWAP_STATE: VWAPRenderState;
@@ -1,5 +1,5 @@
1
1
  import { KLineData } from '../../types/price';
2
- import { MAFlags, BOLLPoint, EXPMAPoint, ENEPoint, STOCHPoint, KSTPoint, MACDPoint, SARPoint, SuperTrendPoint, KeltnerPoint, DonchianPoint } from './calculators';
2
+ import { MAFlags, BOLLPoint, EXPMAPoint, ENEPoint, STOCHPoint, KSTPoint, MACDPoint, SARPoint, SuperTrendPoint, KeltnerPoint, DonchianPoint, IchimokuPoint, PivotPoint, FibPoint, StructureSnapshot, Zone, VolumeProfileResult } from './calculators';
3
3
  export interface BOLLSchedulerConfig {
4
4
  period: number;
5
5
  multiplier: number;
@@ -113,6 +113,100 @@ export interface DonchianSchedulerConfig {
113
113
  showMiddle: boolean;
114
114
  showLower: boolean;
115
115
  }
116
+ export interface IchimokuSchedulerConfig {
117
+ tenkanPeriod: number;
118
+ kijunPeriod: number;
119
+ spanBPeriod: number;
120
+ displacement: number;
121
+ showTenkan: boolean;
122
+ showKijun: boolean;
123
+ showSpanA: boolean;
124
+ showSpanB: boolean;
125
+ showCloud: boolean;
126
+ showChikou: boolean;
127
+ }
128
+ export interface ROCSchedulerConfig {
129
+ period: number;
130
+ showROC: boolean;
131
+ }
132
+ export interface TRIXSchedulerConfig {
133
+ period: number;
134
+ signalPeriod: number;
135
+ showTRIX: boolean;
136
+ showSignal: boolean;
137
+ }
138
+ export interface HVSchedulerConfig {
139
+ period: number;
140
+ annualizationFactor: number;
141
+ showHV: boolean;
142
+ }
143
+ export interface ParkinsonSchedulerConfig {
144
+ period: number;
145
+ annualizationFactor: number;
146
+ showParkinson: boolean;
147
+ }
148
+ export interface ChaikinVolSchedulerConfig {
149
+ emaPeriod: number;
150
+ rocPeriod: number;
151
+ showChaikinVol: boolean;
152
+ }
153
+ export interface VMASchedulerConfig {
154
+ period: number;
155
+ showVMA: boolean;
156
+ }
157
+ export interface OBVSchedulerConfig {
158
+ showOBV: boolean;
159
+ }
160
+ export interface PVTSchedulerConfig {
161
+ showPVT: boolean;
162
+ }
163
+ export interface VWAPSchedulerConfig {
164
+ sessionResetGapMs: number;
165
+ showVWAP: boolean;
166
+ }
167
+ export interface CMFSchedulerConfig {
168
+ period: number;
169
+ showCMF: boolean;
170
+ }
171
+ export interface MFISchedulerConfig {
172
+ period: number;
173
+ showMFI: boolean;
174
+ }
175
+ export interface PivotSchedulerConfig {
176
+ showPP: boolean;
177
+ showR1: boolean;
178
+ showR2: boolean;
179
+ showR3: boolean;
180
+ showS1: boolean;
181
+ showS2: boolean;
182
+ showS3: boolean;
183
+ }
184
+ export interface FibSchedulerConfig {
185
+ period: number;
186
+ showLevels: boolean;
187
+ }
188
+ export interface StructureSchedulerConfig {
189
+ leftWindow: number;
190
+ rightWindow: number;
191
+ breakoutSource: 'close' | 'wick';
192
+ showSwingLabels: boolean;
193
+ showBOS: boolean;
194
+ showCHOCH: boolean;
195
+ showProvisional: boolean;
196
+ }
197
+ export interface ZonesSchedulerConfig {
198
+ showFVG: boolean;
199
+ showOB: boolean;
200
+ showFilledZones: boolean;
201
+ obLookback: number;
202
+ }
203
+ export interface VolumeProfileSchedulerConfig {
204
+ bins: number;
205
+ lookback: number;
206
+ valueAreaPercent: number;
207
+ showPOC: boolean;
208
+ showValueArea: boolean;
209
+ }
116
210
  export interface InitRequest {
117
211
  type: 'init';
118
212
  protocolVersion: number;
@@ -183,6 +277,23 @@ export interface IndicatorConfigSnapshot {
183
277
  supertrend: SuperTrendSchedulerConfig;
184
278
  keltner: KeltnerSchedulerConfig;
185
279
  donchian: DonchianSchedulerConfig;
280
+ ichimoku: IchimokuSchedulerConfig;
281
+ roc: ROCSchedulerConfig;
282
+ trix: TRIXSchedulerConfig;
283
+ hv: HVSchedulerConfig;
284
+ parkinson: ParkinsonSchedulerConfig;
285
+ chaikinVol: ChaikinVolSchedulerConfig;
286
+ vma: VMASchedulerConfig;
287
+ obv: OBVSchedulerConfig;
288
+ pvt: PVTSchedulerConfig;
289
+ vwap: VWAPSchedulerConfig;
290
+ cmf: CMFSchedulerConfig;
291
+ mfi: MFISchedulerConfig;
292
+ pivot: PivotSchedulerConfig;
293
+ fib: FibSchedulerConfig;
294
+ structure: StructureSchedulerConfig;
295
+ zones: ZonesSchedulerConfig;
296
+ volumeProfile: VolumeProfileSchedulerConfig;
186
297
  rsiPaneId: string;
187
298
  cciPaneId: string;
188
299
  stochPaneId: string;
@@ -201,6 +312,23 @@ export interface IndicatorConfigSnapshot {
201
312
  supertrendPaneId: string;
202
313
  keltnerPaneId: string;
203
314
  donchianPaneId: string;
315
+ ichimokuPaneId: string;
316
+ rocPaneId: string;
317
+ trixPaneId: string;
318
+ hvPaneId: string;
319
+ parkinsonPaneId: string;
320
+ chaikinVolPaneId: string;
321
+ vmaPaneId: string;
322
+ obvPaneId: string;
323
+ pvtPaneId: string;
324
+ vwapPaneId: string;
325
+ cmfPaneId: string;
326
+ mfiPaneId: string;
327
+ pivotPaneId: string;
328
+ fibPaneId: string;
329
+ structurePaneId: string;
330
+ zonesPaneId: string;
331
+ volumeProfilePaneId: string;
204
332
  }
205
333
  export interface IndicatorSeriesBundle {
206
334
  ma: {
@@ -292,6 +420,75 @@ export interface IndicatorSeriesBundle {
292
420
  series: (DonchianPoint | undefined)[];
293
421
  params: DonchianSchedulerConfig;
294
422
  };
423
+ ichimoku: {
424
+ series: (IchimokuPoint | undefined)[];
425
+ params: IchimokuSchedulerConfig;
426
+ };
427
+ roc: {
428
+ series: (number | undefined)[];
429
+ params: ROCSchedulerConfig;
430
+ };
431
+ trix: {
432
+ series: (number | undefined)[];
433
+ signalSeries: (number | undefined)[];
434
+ params: TRIXSchedulerConfig;
435
+ };
436
+ hv: {
437
+ series: (number | undefined)[];
438
+ params: HVSchedulerConfig;
439
+ };
440
+ parkinson: {
441
+ series: (number | undefined)[];
442
+ params: ParkinsonSchedulerConfig;
443
+ };
444
+ chaikinVol: {
445
+ series: (number | undefined)[];
446
+ params: ChaikinVolSchedulerConfig;
447
+ };
448
+ vma: {
449
+ series: (number | undefined)[];
450
+ params: VMASchedulerConfig;
451
+ };
452
+ obv: {
453
+ series: (number | undefined)[];
454
+ params: OBVSchedulerConfig;
455
+ };
456
+ pvt: {
457
+ series: (number | undefined)[];
458
+ params: PVTSchedulerConfig;
459
+ };
460
+ vwap: {
461
+ series: (number | undefined)[];
462
+ params: VWAPSchedulerConfig;
463
+ };
464
+ cmf: {
465
+ series: (number | undefined)[];
466
+ params: CMFSchedulerConfig;
467
+ };
468
+ mfi: {
469
+ series: (number | undefined)[];
470
+ params: MFISchedulerConfig;
471
+ };
472
+ pivot: {
473
+ series: (PivotPoint | undefined)[];
474
+ params: PivotSchedulerConfig;
475
+ };
476
+ fib: {
477
+ series: (FibPoint | undefined)[];
478
+ params: FibSchedulerConfig;
479
+ };
480
+ structure: {
481
+ series: StructureSnapshot;
482
+ params: StructureSchedulerConfig;
483
+ };
484
+ zones: {
485
+ series: Zone[];
486
+ params: ZonesSchedulerConfig;
487
+ };
488
+ volumeProfile: {
489
+ series: VolumeProfileResult;
490
+ params: VolumeProfileSchedulerConfig;
491
+ };
295
492
  /** 本次计算中实际变更的指标列表 */
296
493
  _changed: string[];
297
494
  }
@@ -0,0 +1,26 @@
1
+ import { BaseIndicatorState } from '../../plugin';
2
+ export type ZoneKind = 'FVG_BULL' | 'FVG_BEAR' | 'OB_BULL' | 'OB_BEAR';
3
+ export interface Zone {
4
+ kind: ZoneKind;
5
+ startIndex: number;
6
+ endIndex?: number;
7
+ high: number;
8
+ low: number;
9
+ }
10
+ export interface ZonesRenderState extends BaseIndicatorState {
11
+ timestamp: number;
12
+ series: Zone[];
13
+ params: {
14
+ showFVG: boolean;
15
+ showOB: boolean;
16
+ showFilledZones: boolean;
17
+ obLookback: number;
18
+ };
19
+ valueMin: number;
20
+ valueMax: number;
21
+ visibleMin: number;
22
+ visibleMax: number;
23
+ }
24
+ export declare const createZonesStateKey: (paneId: string) => `indicator:${string}:${string}`;
25
+ export declare const DEFAULT_ZONES_OB_LOOKBACK = 5;
26
+ export declare const EMPTY_ZONES_STATE: ZonesRenderState;
@@ -0,0 +1,4 @@
1
+ import { RendererPluginWithHost } from '../../../plugin';
2
+ export declare function createChaikinVolRendererPlugin(options?: {
3
+ paneId?: string;
4
+ }): RendererPluginWithHost;
@@ -0,0 +1,4 @@
1
+ import { RendererPluginWithHost } from '../../../plugin';
2
+ export declare function createCMFRendererPlugin(options?: {
3
+ paneId?: string;
4
+ }): RendererPluginWithHost;
@@ -0,0 +1,4 @@
1
+ import { RendererPluginWithHost } from '../../../plugin';
2
+ export declare function createFibRendererPlugin(options?: {
3
+ paneId?: string;
4
+ }): RendererPluginWithHost;
@@ -0,0 +1,4 @@
1
+ import { RendererPluginWithHost } from '../../../plugin';
2
+ export declare function createHVRendererPlugin(options?: {
3
+ paneId?: string;
4
+ }): RendererPluginWithHost;
@@ -0,0 +1,5 @@
1
+ import { RendererPluginWithHost } from '../../../plugin';
2
+ export interface IchimokuRendererOptions {
3
+ paneId?: string;
4
+ }
5
+ export declare function createIchimokuRendererPlugin(options?: IchimokuRendererOptions): RendererPluginWithHost;
@@ -14,10 +14,36 @@ export { createWMSRRendererPlugin, type WMSRRendererOptions, getWMSRTitleInfo }
14
14
  export { createKSTRendererPlugin, type KSTRendererOptions, getKSTTitleInfo } from './kst';
15
15
  export { createFASTKRendererPlugin, type FASTKRendererOptions, getFASTKTitleInfo } from './fastk';
16
16
  export { createATRRendererPlugin, type ATRRendererOptions, getATRTitleInfo } from './atr';
17
+ export { createWMARendererPlugin } from './wma';
18
+ export { createDEMARendererPlugin } from './dema';
19
+ export { createTEMARendererPlugin } from './tema';
20
+ export { createHMARendererPlugin } from './hma';
21
+ export { createKAMARendererPlugin } from './kama';
22
+ export { createSARRendererPlugin } from './sar';
23
+ export { createSuperTrendRendererPlugin } from './supertrend';
24
+ export { createKeltnerRendererPlugin } from './keltner';
25
+ export { createDonchianRendererPlugin } from './donchian';
26
+ export { createIchimokuRendererPlugin } from './ichimoku';
27
+ export { createROCRendererPlugin } from './roc';
28
+ export { createTRIXRendererPlugin } from './trix';
29
+ export { createHVRendererPlugin } from './hv';
30
+ export { createParkinsonRendererPlugin } from './parkinson';
31
+ export { createChaikinVolRendererPlugin } from './chaikinVol';
32
+ export { createVMARendererPlugin } from './vma';
33
+ export { createOBVRendererPlugin } from './obv';
34
+ export { createPVTRendererPlugin } from './pvt';
35
+ export { createVWAPRendererPlugin } from './vwap';
36
+ export { createCMFRendererPlugin } from './cmf';
37
+ export { createMFIRendererPlugin } from './mfi';
38
+ export { createPivotRendererPlugin } from './pivot';
39
+ export { createFibRendererPlugin } from './fib';
40
+ export { createStructureRendererPlugin } from './structure';
41
+ export { createZonesRendererPlugin } from './zones';
42
+ export { createVolumeProfileRendererPlugin } from './volumeProfile';
17
43
  /**
18
44
  * 副图指标类型
19
45
  */
20
- export type SubIndicatorType = 'VOLUME' | 'MACD' | 'RSI' | 'CCI' | 'STOCH' | 'MOM' | 'WMSR' | 'KST' | 'FASTK' | 'ATR';
46
+ export type SubIndicatorType = 'VOLUME' | 'MACD' | 'RSI' | 'CCI' | 'STOCH' | 'MOM' | 'WMSR' | 'KST' | 'FASTK' | 'ATR' | 'WMA' | 'DEMA' | 'TEMA' | 'HMA' | 'KAMA' | 'SAR' | 'SUPERTREND' | 'KELTNER' | 'DONCHIAN' | 'ICHIMOKU' | 'ROC' | 'TRIX' | 'HV' | 'PARKINSON' | 'CHAIKIN_VOL' | 'VMA' | 'OBV' | 'PVT' | 'VWAP' | 'CMF' | 'MFI' | 'PIVOT' | 'FIB' | 'STRUCTURE' | 'ZONES' | 'VOLUME_PROFILE';
21
47
  /**
22
48
  * 渲染器工厂选项
23
49
  */
@@ -0,0 +1,4 @@
1
+ import { RendererPluginWithHost } from '../../../plugin';
2
+ export declare function createMFIRendererPlugin(options?: {
3
+ paneId?: string;
4
+ }): RendererPluginWithHost;
@@ -0,0 +1,4 @@
1
+ import { RendererPluginWithHost } from '../../../plugin';
2
+ export declare function createOBVRendererPlugin(options?: {
3
+ paneId?: string;
4
+ }): RendererPluginWithHost;
@@ -0,0 +1,4 @@
1
+ import { RendererPluginWithHost } from '../../../plugin';
2
+ export declare function createParkinsonRendererPlugin(options?: {
3
+ paneId?: string;
4
+ }): RendererPluginWithHost;
@@ -0,0 +1,4 @@
1
+ import { RendererPluginWithHost } from '../../../plugin';
2
+ export declare function createPivotRendererPlugin(options?: {
3
+ paneId?: string;
4
+ }): RendererPluginWithHost;
@@ -0,0 +1,4 @@
1
+ import { RendererPluginWithHost } from '../../../plugin';
2
+ export declare function createPVTRendererPlugin(options?: {
3
+ paneId?: string;
4
+ }): RendererPluginWithHost;
@@ -0,0 +1,5 @@
1
+ import { RendererPluginWithHost } from '../../../plugin';
2
+ export interface ROCRendererOptions {
3
+ paneId?: string;
4
+ }
5
+ export declare function createROCRendererPlugin(options?: ROCRendererOptions): RendererPluginWithHost;
@@ -0,0 +1,4 @@
1
+ import { RendererPluginWithHost } from '../../../plugin';
2
+ export declare function createStructureRendererPlugin(options?: {
3
+ paneId?: string;
4
+ }): RendererPluginWithHost;
@@ -2,8 +2,8 @@ import { TitleInfo } from '../paneTitle';
2
2
  import { PluginHost } from '../../../plugin';
3
3
  import { SubIndicatorType } from '.';
4
4
  export interface SubPaneIndicatorConfig {
5
- defaultParams: Record<string, number | boolean>;
6
- getTitleInfo: (data: any[], index: number | null, params: Record<string, number | boolean>, pluginHost: PluginHost, paneId: string) => TitleInfo | null;
5
+ defaultParams: Record<string, number | boolean | string>;
6
+ getTitleInfo: (data: any[], index: number | null, params: Record<string, number | boolean | string>, pluginHost: PluginHost, paneId: string) => TitleInfo | null;
7
7
  }
8
8
  export declare const SUB_PANE_INDICATOR_CONFIGS: Record<SubIndicatorType, SubPaneIndicatorConfig>;
9
9
  export declare const SUB_PANE_INDICATORS: SubIndicatorType[];
@@ -0,0 +1,5 @@
1
+ import { RendererPluginWithHost } from '../../../plugin';
2
+ export interface TRIXRendererOptions {
3
+ paneId?: string;
4
+ }
5
+ export declare function createTRIXRendererPlugin(options?: TRIXRendererOptions): RendererPluginWithHost;
@@ -0,0 +1,4 @@
1
+ import { RendererPluginWithHost } from '../../../plugin';
2
+ export declare function createVMARendererPlugin(options?: {
3
+ paneId?: string;
4
+ }): RendererPluginWithHost;
@@ -0,0 +1,4 @@
1
+ import { RendererPluginWithHost } from '../../../plugin';
2
+ export declare function createVolumeProfileRendererPlugin(options?: {
3
+ paneId?: string;
4
+ }): RendererPluginWithHost;
@@ -0,0 +1,4 @@
1
+ import { RendererPluginWithHost } from '../../../plugin';
2
+ export declare function createVWAPRendererPlugin(options?: {
3
+ paneId?: string;
4
+ }): RendererPluginWithHost;
@@ -0,0 +1,4 @@
1
+ import { RendererPluginWithHost } from '../../../plugin';
2
+ export declare function createZonesRendererPlugin(options?: {
3
+ paneId?: string;
4
+ }): RendererPluginWithHost;
@@ -140,6 +140,65 @@ export interface SubIndicatorParams {
140
140
  DONCHIAN?: {
141
141
  period?: number;
142
142
  };
143
+ ICHIMOKU?: {
144
+ tenkanPeriod?: number;
145
+ kijunPeriod?: number;
146
+ spanBPeriod?: number;
147
+ displacement?: number;
148
+ };
149
+ ROC?: {
150
+ period?: number;
151
+ };
152
+ TRIX?: {
153
+ period?: number;
154
+ signalPeriod?: number;
155
+ };
156
+ HV?: {
157
+ period?: number;
158
+ annualizationFactor?: number;
159
+ };
160
+ PARKINSON?: {
161
+ period?: number;
162
+ annualizationFactor?: number;
163
+ };
164
+ CHAIKIN_VOL?: {
165
+ emaPeriod?: number;
166
+ rocPeriod?: number;
167
+ };
168
+ VMA?: {
169
+ period?: number;
170
+ };
171
+ OBV?: Record<string, never>;
172
+ PVT?: Record<string, never>;
173
+ VWAP?: {
174
+ sessionResetGapMs?: number;
175
+ };
176
+ CMF?: {
177
+ period?: number;
178
+ };
179
+ MFI?: {
180
+ period?: number;
181
+ };
182
+ PIVOT?: Record<string, never>;
183
+ FIB?: {
184
+ period?: number;
185
+ };
186
+ STRUCTURE?: {
187
+ leftWindow?: number;
188
+ rightWindow?: number;
189
+ breakoutSource?: 'close' | 'wick';
190
+ };
191
+ ZONES?: {
192
+ showFVG?: boolean;
193
+ showOB?: boolean;
194
+ showFilledZones?: boolean;
195
+ obLookback?: number;
196
+ };
197
+ VOLUME_PROFILE?: {
198
+ bins?: number;
199
+ lookback?: number;
200
+ valueAreaPercent?: number;
201
+ };
143
202
  }
144
203
  /** 副图指标类型 */
145
204
  export type SubIndicatorType = keyof SubIndicatorParams;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@363045841yyt/klinechart",
3
- "version": "0.6.10",
3
+ "version": "0.7.0",
4
4
  "description": "A lightweight financial K-line charting library with first-class AI Agent support, crisp ResizeObserver-driven rendering, and plugin-based architecture. Focused on quantitative trading scenarios with TradingView-level interaction experience.",
5
5
  "author": "363045841 <slslswbsy@qq.com>",
6
6
  "license": "MIT",