stock-sdk 2.0.0 → 2.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,195 +1,3 @@
1
- interface OHLCV {
2
- open: number | null;
3
- high: number | null;
4
- low: number | null;
5
- close: number | null;
6
- volume?: number | null;
7
- }
8
- interface MAOptions {
9
- /** 均线周期数组,默认 [5, 10, 20, 30, 60, 120, 250] */
10
- periods?: number[];
11
- /** 均线类型:'sma'(简单) | 'ema'(指数) | 'wma'(加权),默认 'sma' */
12
- type?: 'sma' | 'ema' | 'wma';
13
- }
14
- interface MACDOptions {
15
- /** 短期 EMA 周期,默认 12 */
16
- short?: number;
17
- /** 长期 EMA 周期,默认 26 */
18
- long?: number;
19
- /** 信号线 EMA 周期,默认 9 */
20
- signal?: number;
21
- }
22
- interface BOLLOptions {
23
- /** 均线周期,默认 20 */
24
- period?: number;
25
- /** 标准差倍数,默认 2 */
26
- stdDev?: number;
27
- }
28
- interface KDJOptions {
29
- /** RSV 周期,默认 9 */
30
- period?: number;
31
- /** K 值平滑周期,默认 3 */
32
- kPeriod?: number;
33
- /** D 值平滑周期,默认 3 */
34
- dPeriod?: number;
35
- }
36
- interface RSIOptions {
37
- /** RSI 周期数组,默认 [6, 12, 24] */
38
- periods?: number[];
39
- }
40
- interface WROptions {
41
- /** WR 周期数组,默认 [6, 10] */
42
- periods?: number[];
43
- }
44
- interface BIASOptions {
45
- /** BIAS 周期数组,默认 [6, 12, 24] */
46
- periods?: number[];
47
- }
48
- interface CCIOptions {
49
- /** CCI 周期,默认 14 */
50
- period?: number;
51
- }
52
- interface ATROptions {
53
- /** ATR 周期,默认 14 */
54
- period?: number;
55
- }
56
- /**
57
- * 周期型指标(periods 复数)的文档简写入参:
58
- * - `[5, 20]` 等价于 `{ periods: [5, 20] }`
59
- * - `{ period: 14 }` 等价于 `{ periods: [14] }`
60
- * (文档与 JSDoc 示例即简写形式,registry.normalizeIndicatorOptions 在入口归一)
61
- */
62
- type PeriodsShorthand = number[] | {
63
- period: number;
64
- };
65
- interface IndicatorOptions {
66
- ma?: MAOptions | PeriodsShorthand | boolean;
67
- macd?: MACDOptions | boolean;
68
- boll?: BOLLOptions | boolean;
69
- kdj?: KDJOptions | boolean;
70
- rsi?: RSIOptions | PeriodsShorthand | boolean;
71
- wr?: WROptions | PeriodsShorthand | boolean;
72
- bias?: BIASOptions | PeriodsShorthand | boolean;
73
- cci?: CCIOptions | boolean;
74
- atr?: ATROptions | boolean;
75
- obv?: OBVOptions | boolean;
76
- roc?: ROCOptions | boolean;
77
- dmi?: DMIOptions | boolean;
78
- sar?: SAROptions | boolean;
79
- kc?: KCOptions | boolean;
80
- }
81
- interface MAResult {
82
- [key: string]: number | null;
83
- }
84
- interface MACDResult {
85
- dif: number | null;
86
- dea: number | null;
87
- macd: number | null;
88
- }
89
- interface BOLLResult {
90
- mid: number | null;
91
- upper: number | null;
92
- lower: number | null;
93
- bandwidth: number | null;
94
- }
95
- interface KDJResult {
96
- k: number | null;
97
- d: number | null;
98
- j: number | null;
99
- }
100
- interface RSIResult {
101
- [key: string]: number | null;
102
- }
103
- interface WRResult {
104
- [key: string]: number | null;
105
- }
106
- interface BIASResult {
107
- [key: string]: number | null;
108
- }
109
- interface CCIResult {
110
- cci: number | null;
111
- }
112
- interface ATRResult {
113
- /** 真实波幅 */
114
- tr: number | null;
115
- /** 平均真实波幅 */
116
- atr: number | null;
117
- }
118
- interface OBVOptions {
119
- /** OBV 均线周期 */
120
- maPeriod?: number;
121
- }
122
- interface OBVResult {
123
- /** OBV 值 */
124
- obv: number | null;
125
- /** OBV 均线 */
126
- obvMa: number | null;
127
- }
128
- interface ROCOptions {
129
- /** ROC 周期,默认 12 */
130
- period?: number;
131
- /** 信号线周期 */
132
- signalPeriod?: number;
133
- }
134
- interface ROCResult {
135
- /** ROC 值(百分比) */
136
- roc: number | null;
137
- /** 信号线 */
138
- signal: number | null;
139
- }
140
- interface DMIOptions {
141
- /** 周期,默认 14 */
142
- period?: number;
143
- /** ADX 平滑周期 */
144
- adxPeriod?: number;
145
- }
146
- interface DMIResult {
147
- /** +DI 值 */
148
- pdi: number | null;
149
- /** -DI 值 */
150
- mdi: number | null;
151
- /** ADX 值 */
152
- adx: number | null;
153
- /** ADXR 值 */
154
- adxr: number | null;
155
- }
156
- interface SAROptions {
157
- /** 加速因子初始值,默认 0.02 */
158
- afStart?: number;
159
- /** 加速因子增量,默认 0.02 */
160
- afIncrement?: number;
161
- /** 加速因子最大值,默认 0.2 */
162
- afMax?: number;
163
- }
164
- interface SARResult {
165
- /** SAR 值 */
166
- sar: number | null;
167
- /** 趋势方向:1 上升,-1 下降 */
168
- trend: 1 | -1 | null;
169
- /** 极值点 */
170
- ep: number | null;
171
- /** 加速因子 */
172
- af: number | null;
173
- }
174
- interface KCOptions {
175
- /** EMA 周期,默认 20 */
176
- emaPeriod?: number;
177
- /** ATR 周期,默认 10 */
178
- atrPeriod?: number;
179
- /** ATR 倍数,默认 2 */
180
- multiplier?: number;
181
- }
182
- interface KCResult {
183
- /** 中轨(EMA) */
184
- mid: number | null;
185
- /** 上轨 */
186
- upper: number | null;
187
- /** 下轨 */
188
- lower: number | null;
189
- /** 通道宽度 */
190
- width: number | null;
191
- }
192
-
193
1
  /**
194
2
  * 时间元信息工具
195
3
  *
@@ -513,6 +321,198 @@ interface USMinuteTimeline extends Omit<MinuteTimeline, 'tz'> {
513
321
  code: string;
514
322
  }
515
323
 
324
+ interface OHLCV {
325
+ open: number | null;
326
+ high: number | null;
327
+ low: number | null;
328
+ close: number | null;
329
+ volume?: number | null;
330
+ }
331
+ interface MAOptions {
332
+ /** 均线周期数组,默认 [5, 10, 20, 30, 60, 120, 250] */
333
+ periods?: number[];
334
+ /** 均线类型:'sma'(简单) | 'ema'(指数) | 'wma'(加权),默认 'sma' */
335
+ type?: 'sma' | 'ema' | 'wma';
336
+ }
337
+ interface MACDOptions {
338
+ /** 短期 EMA 周期,默认 12 */
339
+ short?: number;
340
+ /** 长期 EMA 周期,默认 26 */
341
+ long?: number;
342
+ /** 信号线 EMA 周期,默认 9 */
343
+ signal?: number;
344
+ }
345
+ interface BOLLOptions {
346
+ /** 均线周期,默认 20 */
347
+ period?: number;
348
+ /** 标准差倍数,默认 2 */
349
+ stdDev?: number;
350
+ }
351
+ interface KDJOptions {
352
+ /** RSV 周期,默认 9 */
353
+ period?: number;
354
+ /** K 值平滑周期,默认 3 */
355
+ kPeriod?: number;
356
+ /** D 值平滑周期,默认 3 */
357
+ dPeriod?: number;
358
+ }
359
+ interface RSIOptions {
360
+ /** RSI 周期数组,默认 [6, 12, 24] */
361
+ periods?: number[];
362
+ }
363
+ interface WROptions {
364
+ /** WR 周期数组,默认 [6, 10] */
365
+ periods?: number[];
366
+ }
367
+ interface BIASOptions {
368
+ /** BIAS 周期数组,默认 [6, 12, 24] */
369
+ periods?: number[];
370
+ }
371
+ interface CCIOptions {
372
+ /** CCI 周期,默认 14 */
373
+ period?: number;
374
+ }
375
+ interface ATROptions {
376
+ /** ATR 周期,默认 14 */
377
+ period?: number;
378
+ }
379
+ /**
380
+ * 周期型指标(periods 复数)的文档简写入参:
381
+ * - `[5, 20]` 等价于 `{ periods: [5, 20] }`
382
+ * - `{ period: 14 }` 等价于 `{ periods: [14] }`
383
+ * (文档与 JSDoc 示例即简写形式,registry.normalizeIndicatorOptions 在入口归一)
384
+ */
385
+ type PeriodsShorthand = number[] | {
386
+ period: number;
387
+ };
388
+ interface IndicatorOptions {
389
+ ma?: MAOptions | PeriodsShorthand | boolean;
390
+ macd?: MACDOptions | boolean;
391
+ boll?: BOLLOptions | boolean;
392
+ kdj?: KDJOptions | boolean;
393
+ rsi?: RSIOptions | PeriodsShorthand | boolean;
394
+ wr?: WROptions | PeriodsShorthand | boolean;
395
+ bias?: BIASOptions | PeriodsShorthand | boolean;
396
+ cci?: CCIOptions | boolean;
397
+ atr?: ATROptions | boolean;
398
+ obv?: OBVOptions | boolean;
399
+ roc?: ROCOptions | boolean;
400
+ dmi?: DMIOptions | boolean;
401
+ sar?: SAROptions | boolean;
402
+ kc?: KCOptions | boolean;
403
+ }
404
+ interface MAResult {
405
+ [key: string]: number | null;
406
+ }
407
+ interface MACDResult {
408
+ dif: number | null;
409
+ dea: number | null;
410
+ macd: number | null;
411
+ }
412
+ interface BOLLResult {
413
+ mid: number | null;
414
+ upper: number | null;
415
+ lower: number | null;
416
+ bandwidth: number | null;
417
+ }
418
+ interface KDJResult {
419
+ k: number | null;
420
+ d: number | null;
421
+ j: number | null;
422
+ }
423
+ interface RSIResult {
424
+ [key: string]: number | null;
425
+ }
426
+ interface WRResult {
427
+ [key: string]: number | null;
428
+ }
429
+ interface BIASResult {
430
+ [key: string]: number | null;
431
+ }
432
+ interface CCIResult {
433
+ cci: number | null;
434
+ }
435
+ interface ATRResult {
436
+ /** 真实波幅 */
437
+ tr: number | null;
438
+ /** 平均真实波幅 */
439
+ atr: number | null;
440
+ }
441
+ interface OBVOptions {
442
+ /** OBV 均线周期 */
443
+ maPeriod?: number;
444
+ }
445
+ interface OBVResult {
446
+ /** OBV 值 */
447
+ obv: number | null;
448
+ /** OBV 均线 */
449
+ obvMa: number | null;
450
+ }
451
+ interface ROCOptions {
452
+ /** ROC 周期,默认 12 */
453
+ period?: number;
454
+ /** 信号线周期 */
455
+ signalPeriod?: number;
456
+ }
457
+ interface ROCResult {
458
+ /** ROC 值(百分比) */
459
+ roc: number | null;
460
+ /** 信号线 */
461
+ signal: number | null;
462
+ }
463
+ interface DMIOptions {
464
+ /** 周期,默认 14 */
465
+ period?: number;
466
+ /** ADX 平滑周期 */
467
+ adxPeriod?: number;
468
+ }
469
+ interface DMIResult {
470
+ /** +DI 值 */
471
+ pdi: number | null;
472
+ /** -DI 值 */
473
+ mdi: number | null;
474
+ /** ADX 值 */
475
+ adx: number | null;
476
+ /** ADXR 值 */
477
+ adxr: number | null;
478
+ }
479
+ interface SAROptions {
480
+ /** 加速因子初始值,默认 0.02 */
481
+ afStart?: number;
482
+ /** 加速因子增量,默认 0.02 */
483
+ afIncrement?: number;
484
+ /** 加速因子最大值,默认 0.2 */
485
+ afMax?: number;
486
+ }
487
+ interface SARResult {
488
+ /** SAR 值 */
489
+ sar: number | null;
490
+ /** 趋势方向:1 上升,-1 下降 */
491
+ trend: 1 | -1 | null;
492
+ /** 极值点 */
493
+ ep: number | null;
494
+ /** 加速因子 */
495
+ af: number | null;
496
+ }
497
+ interface KCOptions {
498
+ /** EMA 周期,默认 20 */
499
+ emaPeriod?: number;
500
+ /** ATR 周期,默认 10 */
501
+ atrPeriod?: number;
502
+ /** ATR 倍数,默认 2 */
503
+ multiplier?: number;
504
+ }
505
+ interface KCResult {
506
+ /** 中轨(EMA) */
507
+ mid: number | null;
508
+ /** 上轨 */
509
+ upper: number | null;
510
+ /** 下轨 */
511
+ lower: number | null;
512
+ /** 通道宽度 */
513
+ width: number | null;
514
+ }
515
+
516
516
  /**
517
517
  * 带技术指标的 K 线数据
518
518
  */