wickra 0.3.1 → 0.4.1

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/index.d.ts ADDED
@@ -0,0 +1,2343 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+
4
+ /* auto-generated by NAPI-RS */
5
+
6
+ /** Library version (matches the Rust crate version). */
7
+ export declare function version(): string
8
+ /** Lead/lag result: the offset that maximises correlation, and that correlation. */
9
+ export interface LeadLagValue {
10
+ /** Offset that maximises `|corr(a, b shifted)|`. Positive ⇒ `a` leads `b`. */
11
+ lag: number
12
+ /** Signed correlation at that lag, in `[-1, 1]`. */
13
+ correlation: number
14
+ }
15
+ /** Cointegration result: hedge ratio, current spread, and the ADF statistic. */
16
+ export interface CointegrationValue {
17
+ /** Engle–Granger hedge ratio (OLS slope of `a` on `b`). */
18
+ hedgeRatio: number
19
+ /** Current spread (regression residual) `a - (alpha + beta*b)`. */
20
+ spread: number
21
+ /**
22
+ * Augmented Dickey–Fuller statistic on the spread; more negative ⇒ more
23
+ * strongly mean-reverting.
24
+ */
25
+ adfStat: number
26
+ }
27
+ /** Relative-strength triple: the a/b ratio, its moving average, and its RSI. */
28
+ export interface RelativeStrengthValue {
29
+ /** Raw ratio `a / b`. */
30
+ ratio: number
31
+ /** Moving average of the ratio. */
32
+ ratioMa: number
33
+ /** RSI of the ratio. */
34
+ ratioRsi: number
35
+ }
36
+ /** MACD triple: macd line, signal line, histogram. */
37
+ export interface MacdValue {
38
+ macd: number
39
+ signal: number
40
+ histogram: number
41
+ }
42
+ export interface BollingerValue {
43
+ upper: number
44
+ middle: number
45
+ lower: number
46
+ stddev: number
47
+ }
48
+ export interface StochValue {
49
+ k: number
50
+ d: number
51
+ }
52
+ export interface AdxValue {
53
+ plusDi: number
54
+ minusDi: number
55
+ adx: number
56
+ }
57
+ export interface KeltnerValue {
58
+ upper: number
59
+ middle: number
60
+ lower: number
61
+ }
62
+ export interface DonchianValue {
63
+ upper: number
64
+ middle: number
65
+ lower: number
66
+ }
67
+ export interface AroonValue {
68
+ up: number
69
+ down: number
70
+ }
71
+ export interface KstValue {
72
+ kst: number
73
+ signal: number
74
+ }
75
+ export interface ZeroLagMacdValue {
76
+ macd: number
77
+ signal: number
78
+ histogram: number
79
+ }
80
+ export interface AlligatorValue {
81
+ jaw: number
82
+ teeth: number
83
+ lips: number
84
+ }
85
+ export interface SuperTrendValue {
86
+ value: number
87
+ direction: number
88
+ }
89
+ export interface ChandelierExitValue {
90
+ longStop: number
91
+ shortStop: number
92
+ }
93
+ export interface ChandeKrollStopValue {
94
+ stopLong: number
95
+ stopShort: number
96
+ }
97
+ export interface DonchianStopValue {
98
+ stopLong: number
99
+ stopShort: number
100
+ }
101
+ /** Vortex Indicator pair: `VI+` and `VI-`. */
102
+ export interface VortexValue {
103
+ plus: number
104
+ minus: number
105
+ }
106
+ /** Random Walk Index pair: `RWI_High` and `RWI_Low`. */
107
+ export interface RwiValue {
108
+ high: number
109
+ low: number
110
+ }
111
+ /** Wave Trend Oscillator pair: `wt1` (channel index) and `wt2` (signal SMA). */
112
+ export interface WaveTrendValue {
113
+ wt1: number
114
+ wt2: number
115
+ }
116
+ export interface MaEnvelopeValue {
117
+ upper: number
118
+ middle: number
119
+ lower: number
120
+ }
121
+ export interface AccelerationBandsValue {
122
+ upper: number
123
+ middle: number
124
+ lower: number
125
+ }
126
+ export interface StarcBandsValue {
127
+ upper: number
128
+ middle: number
129
+ lower: number
130
+ }
131
+ export interface AtrBandsValue {
132
+ upper: number
133
+ middle: number
134
+ lower: number
135
+ }
136
+ export interface HurstChannelValue {
137
+ upper: number
138
+ middle: number
139
+ lower: number
140
+ }
141
+ export interface LinRegChannelValue {
142
+ upper: number
143
+ middle: number
144
+ lower: number
145
+ }
146
+ export interface StandardErrorBandsValue {
147
+ upper: number
148
+ middle: number
149
+ lower: number
150
+ }
151
+ export interface DoubleBollingerValue {
152
+ upperOuter: number
153
+ upperInner: number
154
+ middle: number
155
+ lowerInner: number
156
+ lowerOuter: number
157
+ }
158
+ export interface TtmSqueezeValue {
159
+ squeeze: number
160
+ momentum: number
161
+ }
162
+ export interface FractalChaosBandsValue {
163
+ upper: number
164
+ lower: number
165
+ }
166
+ export interface VwapStdDevBandsValue {
167
+ upper: number
168
+ middle: number
169
+ lower: number
170
+ stddev: number
171
+ }
172
+ export interface ClassicPivotsValue {
173
+ pp: number
174
+ r1: number
175
+ r2: number
176
+ r3: number
177
+ s1: number
178
+ s2: number
179
+ s3: number
180
+ }
181
+ export interface FibonacciPivotsValue {
182
+ pp: number
183
+ r1: number
184
+ r2: number
185
+ r3: number
186
+ s1: number
187
+ s2: number
188
+ s3: number
189
+ }
190
+ export interface CamarillaValue {
191
+ pp: number
192
+ r1: number
193
+ r2: number
194
+ r3: number
195
+ r4: number
196
+ s1: number
197
+ s2: number
198
+ s3: number
199
+ s4: number
200
+ }
201
+ export interface WoodiePivotsValue {
202
+ pp: number
203
+ r1: number
204
+ r2: number
205
+ s1: number
206
+ s2: number
207
+ }
208
+ export interface DemarkPivotsValue {
209
+ pp: number
210
+ r1: number
211
+ s1: number
212
+ }
213
+ export interface WilliamsFractalsValue {
214
+ /** Up fractal price; NaN when no up fractal was confirmed on this bar. */
215
+ up: number
216
+ /** Down fractal price; NaN when no down fractal was confirmed on this bar. */
217
+ down: number
218
+ }
219
+ export interface ZigZagValue {
220
+ swing: number
221
+ direction: number
222
+ }
223
+ /** TD Sequential output triple: setup count, countdown count, direction. */
224
+ export interface TdSequentialValue {
225
+ setup: number
226
+ countdown: number
227
+ direction: number
228
+ }
229
+ /** TD Lines output pair: latest TDST resistance / support (NaN if unset). */
230
+ export interface TdLinesValue {
231
+ resistance: number
232
+ support: number
233
+ }
234
+ /** TD Range Projection output pair: projected next-bar high / low. */
235
+ export interface TdRangeProjectionValue {
236
+ high: number
237
+ low: number
238
+ }
239
+ /**
240
+ * TD Risk Level output pair: buy-side / sell-side protective stop levels
241
+ * (NaN if unset).
242
+ */
243
+ export interface TdRiskLevelValue {
244
+ buyRisk: number
245
+ sellRisk: number
246
+ }
247
+ export interface MamaValue {
248
+ mama: number
249
+ fama: number
250
+ }
251
+ /**
252
+ * Ichimoku output: five lines, any of which may be `NaN` while the indicator
253
+ * is still warming up.
254
+ */
255
+ export interface IchimokuValue {
256
+ tenkan: number
257
+ kijun: number
258
+ senkouA: number
259
+ senkouB: number
260
+ chikou: number
261
+ }
262
+ export interface HeikinAshiValue {
263
+ open: number
264
+ high: number
265
+ low: number
266
+ close: number
267
+ }
268
+ export interface ValueAreaValue {
269
+ poc: number
270
+ vah: number
271
+ val: number
272
+ }
273
+ export interface InitialBalanceValue {
274
+ high: number
275
+ low: number
276
+ }
277
+ export interface OpeningRangeValue {
278
+ high: number
279
+ low: number
280
+ breakoutDistance: number
281
+ }
282
+ export type SmaNode = SMA
283
+ export declare class SMA {
284
+ constructor(period: number)
285
+ update(value: number): number | null
286
+ batch(prices: Array<number>): Array<number>
287
+ reset(): void
288
+ isReady(): boolean
289
+ warmupPeriod(): number
290
+ }
291
+ export type EmaNode = EMA
292
+ export declare class EMA {
293
+ constructor(period: number)
294
+ update(value: number): number | null
295
+ batch(prices: Array<number>): Array<number>
296
+ reset(): void
297
+ isReady(): boolean
298
+ warmupPeriod(): number
299
+ }
300
+ export type WmaNode = WMA
301
+ export declare class WMA {
302
+ constructor(period: number)
303
+ update(value: number): number | null
304
+ batch(prices: Array<number>): Array<number>
305
+ reset(): void
306
+ isReady(): boolean
307
+ warmupPeriod(): number
308
+ }
309
+ export type RsiNode = RSI
310
+ export declare class RSI {
311
+ constructor(period: number)
312
+ update(value: number): number | null
313
+ batch(prices: Array<number>): Array<number>
314
+ reset(): void
315
+ isReady(): boolean
316
+ warmupPeriod(): number
317
+ }
318
+ export type DemaNode = DEMA
319
+ export declare class DEMA {
320
+ constructor(period: number)
321
+ update(value: number): number | null
322
+ batch(prices: Array<number>): Array<number>
323
+ reset(): void
324
+ isReady(): boolean
325
+ warmupPeriod(): number
326
+ }
327
+ export type TemaNode = TEMA
328
+ export declare class TEMA {
329
+ constructor(period: number)
330
+ update(value: number): number | null
331
+ batch(prices: Array<number>): Array<number>
332
+ reset(): void
333
+ isReady(): boolean
334
+ warmupPeriod(): number
335
+ }
336
+ export type HmaNode = HMA
337
+ export declare class HMA {
338
+ constructor(period: number)
339
+ update(value: number): number | null
340
+ batch(prices: Array<number>): Array<number>
341
+ reset(): void
342
+ isReady(): boolean
343
+ warmupPeriod(): number
344
+ }
345
+ export type RocNode = ROC
346
+ export declare class ROC {
347
+ constructor(period: number)
348
+ update(value: number): number | null
349
+ batch(prices: Array<number>): Array<number>
350
+ reset(): void
351
+ isReady(): boolean
352
+ warmupPeriod(): number
353
+ }
354
+ export type TrixNode = TRIX
355
+ export declare class TRIX {
356
+ constructor(period: number)
357
+ update(value: number): number | null
358
+ batch(prices: Array<number>): Array<number>
359
+ reset(): void
360
+ isReady(): boolean
361
+ warmupPeriod(): number
362
+ }
363
+ export type SmmaNode = SMMA
364
+ export declare class SMMA {
365
+ constructor(period: number)
366
+ update(value: number): number | null
367
+ batch(prices: Array<number>): Array<number>
368
+ reset(): void
369
+ isReady(): boolean
370
+ warmupPeriod(): number
371
+ }
372
+ export type TrimaNode = TRIMA
373
+ export declare class TRIMA {
374
+ constructor(period: number)
375
+ update(value: number): number | null
376
+ batch(prices: Array<number>): Array<number>
377
+ reset(): void
378
+ isReady(): boolean
379
+ warmupPeriod(): number
380
+ }
381
+ export type ZlemaNode = ZLEMA
382
+ export declare class ZLEMA {
383
+ constructor(period: number)
384
+ update(value: number): number | null
385
+ batch(prices: Array<number>): Array<number>
386
+ reset(): void
387
+ isReady(): boolean
388
+ warmupPeriod(): number
389
+ }
390
+ export type MomNode = MOM
391
+ export declare class MOM {
392
+ constructor(period: number)
393
+ update(value: number): number | null
394
+ batch(prices: Array<number>): Array<number>
395
+ reset(): void
396
+ isReady(): boolean
397
+ warmupPeriod(): number
398
+ }
399
+ export type CmoNode = CMO
400
+ export declare class CMO {
401
+ constructor(period: number)
402
+ update(value: number): number | null
403
+ batch(prices: Array<number>): Array<number>
404
+ reset(): void
405
+ isReady(): boolean
406
+ warmupPeriod(): number
407
+ }
408
+ export type DpoNode = DPO
409
+ export declare class DPO {
410
+ constructor(period: number)
411
+ update(value: number): number | null
412
+ batch(prices: Array<number>): Array<number>
413
+ reset(): void
414
+ isReady(): boolean
415
+ warmupPeriod(): number
416
+ }
417
+ export type StdDevNode = StdDev
418
+ export declare class StdDev {
419
+ constructor(period: number)
420
+ update(value: number): number | null
421
+ batch(prices: Array<number>): Array<number>
422
+ reset(): void
423
+ isReady(): boolean
424
+ warmupPeriod(): number
425
+ }
426
+ export type UlcerIndexNode = UlcerIndex
427
+ export declare class UlcerIndex {
428
+ constructor(period: number)
429
+ update(value: number): number | null
430
+ batch(prices: Array<number>): Array<number>
431
+ reset(): void
432
+ isReady(): boolean
433
+ warmupPeriod(): number
434
+ }
435
+ export type VerticalHorizontalFilterNode = VerticalHorizontalFilter
436
+ export declare class VerticalHorizontalFilter {
437
+ constructor(period: number)
438
+ update(value: number): number | null
439
+ batch(prices: Array<number>): Array<number>
440
+ reset(): void
441
+ isReady(): boolean
442
+ warmupPeriod(): number
443
+ }
444
+ export type ZScoreNode = ZScore
445
+ export declare class ZScore {
446
+ constructor(period: number)
447
+ update(value: number): number | null
448
+ batch(prices: Array<number>): Array<number>
449
+ reset(): void
450
+ isReady(): boolean
451
+ warmupPeriod(): number
452
+ }
453
+ export type McGinleyDynamicNode = McGinleyDynamic
454
+ export declare class McGinleyDynamic {
455
+ constructor(period: number)
456
+ update(value: number): number | null
457
+ batch(prices: Array<number>): Array<number>
458
+ reset(): void
459
+ isReady(): boolean
460
+ warmupPeriod(): number
461
+ }
462
+ export type FramaNode = FRAMA
463
+ export declare class FRAMA {
464
+ constructor(period: number)
465
+ update(value: number): number | null
466
+ batch(prices: Array<number>): Array<number>
467
+ reset(): void
468
+ isReady(): boolean
469
+ warmupPeriod(): number
470
+ }
471
+ export type SuperSmootherNode = SuperSmoother
472
+ export declare class SuperSmoother {
473
+ constructor(period: number)
474
+ update(value: number): number | null
475
+ batch(prices: Array<number>): Array<number>
476
+ reset(): void
477
+ isReady(): boolean
478
+ warmupPeriod(): number
479
+ }
480
+ export type FisherTransformNode = FisherTransform
481
+ export declare class FisherTransform {
482
+ constructor(period: number)
483
+ update(value: number): number | null
484
+ batch(prices: Array<number>): Array<number>
485
+ reset(): void
486
+ isReady(): boolean
487
+ warmupPeriod(): number
488
+ }
489
+ export type DecyclerNode = Decycler
490
+ export declare class Decycler {
491
+ constructor(period: number)
492
+ update(value: number): number | null
493
+ batch(prices: Array<number>): Array<number>
494
+ reset(): void
495
+ isReady(): boolean
496
+ warmupPeriod(): number
497
+ }
498
+ export type CenterOfGravityNode = CenterOfGravity
499
+ export declare class CenterOfGravity {
500
+ constructor(period: number)
501
+ update(value: number): number | null
502
+ batch(prices: Array<number>): Array<number>
503
+ reset(): void
504
+ isReady(): boolean
505
+ warmupPeriod(): number
506
+ }
507
+ export type CyberneticCycleNode = CyberneticCycle
508
+ export declare class CyberneticCycle {
509
+ constructor(period: number)
510
+ update(value: number): number | null
511
+ batch(prices: Array<number>): Array<number>
512
+ reset(): void
513
+ isReady(): boolean
514
+ warmupPeriod(): number
515
+ }
516
+ export type InstantaneousTrendlineNode = InstantaneousTrendline
517
+ export declare class InstantaneousTrendline {
518
+ constructor(period: number)
519
+ update(value: number): number | null
520
+ batch(prices: Array<number>): Array<number>
521
+ reset(): void
522
+ isReady(): boolean
523
+ warmupPeriod(): number
524
+ }
525
+ export type EhlersStochasticNode = EhlersStochastic
526
+ export declare class EhlersStochastic {
527
+ constructor(period: number)
528
+ update(value: number): number | null
529
+ batch(prices: Array<number>): Array<number>
530
+ reset(): void
531
+ isReady(): boolean
532
+ warmupPeriod(): number
533
+ }
534
+ export type RviVolatilityNode = RVIVolatility
535
+ export declare class RVIVolatility {
536
+ constructor(period: number)
537
+ update(value: number): number | null
538
+ batch(prices: Array<number>): Array<number>
539
+ reset(): void
540
+ isReady(): boolean
541
+ warmupPeriod(): number
542
+ }
543
+ export type VarianceNode = Variance
544
+ export declare class Variance {
545
+ constructor(period: number)
546
+ update(value: number): number | null
547
+ batch(prices: Array<number>): Array<number>
548
+ reset(): void
549
+ isReady(): boolean
550
+ warmupPeriod(): number
551
+ }
552
+ export type CoefficientOfVariationNode = CoefficientOfVariation
553
+ export declare class CoefficientOfVariation {
554
+ constructor(period: number)
555
+ update(value: number): number | null
556
+ batch(prices: Array<number>): Array<number>
557
+ reset(): void
558
+ isReady(): boolean
559
+ warmupPeriod(): number
560
+ }
561
+ export type SkewnessNode = Skewness
562
+ export declare class Skewness {
563
+ constructor(period: number)
564
+ update(value: number): number | null
565
+ batch(prices: Array<number>): Array<number>
566
+ reset(): void
567
+ isReady(): boolean
568
+ warmupPeriod(): number
569
+ }
570
+ export type KurtosisNode = Kurtosis
571
+ export declare class Kurtosis {
572
+ constructor(period: number)
573
+ update(value: number): number | null
574
+ batch(prices: Array<number>): Array<number>
575
+ reset(): void
576
+ isReady(): boolean
577
+ warmupPeriod(): number
578
+ }
579
+ export type StandardErrorNode = StandardError
580
+ export declare class StandardError {
581
+ constructor(period: number)
582
+ update(value: number): number | null
583
+ batch(prices: Array<number>): Array<number>
584
+ reset(): void
585
+ isReady(): boolean
586
+ warmupPeriod(): number
587
+ }
588
+ export type DetrendedStdDevNode = DetrendedStdDev
589
+ export declare class DetrendedStdDev {
590
+ constructor(period: number)
591
+ update(value: number): number | null
592
+ batch(prices: Array<number>): Array<number>
593
+ reset(): void
594
+ isReady(): boolean
595
+ warmupPeriod(): number
596
+ }
597
+ export type RSquaredNode = RSquared
598
+ export declare class RSquared {
599
+ constructor(period: number)
600
+ update(value: number): number | null
601
+ batch(prices: Array<number>): Array<number>
602
+ reset(): void
603
+ isReady(): boolean
604
+ warmupPeriod(): number
605
+ }
606
+ export type MedianAbsoluteDeviationNode = MedianAbsoluteDeviation
607
+ export declare class MedianAbsoluteDeviation {
608
+ constructor(period: number)
609
+ update(value: number): number | null
610
+ batch(prices: Array<number>): Array<number>
611
+ reset(): void
612
+ isReady(): boolean
613
+ warmupPeriod(): number
614
+ }
615
+ export type AutocorrelationNode = Autocorrelation
616
+ export declare class Autocorrelation {
617
+ constructor(period: number, lag: number)
618
+ update(value: number): number | null
619
+ batch(prices: Array<number>): Array<number>
620
+ reset(): void
621
+ isReady(): boolean
622
+ warmupPeriod(): number
623
+ }
624
+ export type HurstExponentNode = HurstExponent
625
+ export declare class HurstExponent {
626
+ constructor(period: number, chunks: number)
627
+ update(value: number): number | null
628
+ batch(prices: Array<number>): Array<number>
629
+ reset(): void
630
+ isReady(): boolean
631
+ warmupPeriod(): number
632
+ }
633
+ export type PearsonCorrelationNode = PearsonCorrelation
634
+ export declare class PearsonCorrelation {
635
+ constructor(period: number)
636
+ update(x: number, y: number): number | null
637
+ /**
638
+ * Batch over two equally-sized arrays. Returns a length-`n` array
639
+ * with `NaN` for warmup positions.
640
+ */
641
+ batch(x: Array<number>, y: Array<number>): Array<number>
642
+ reset(): void
643
+ isReady(): boolean
644
+ warmupPeriod(): number
645
+ }
646
+ export type BetaNode = Beta
647
+ export declare class Beta {
648
+ constructor(period: number)
649
+ update(x: number, y: number): number | null
650
+ /**
651
+ * Batch over two equally-sized arrays. Returns a length-`n` array
652
+ * with `NaN` for warmup positions.
653
+ */
654
+ batch(x: Array<number>, y: Array<number>): Array<number>
655
+ reset(): void
656
+ isReady(): boolean
657
+ warmupPeriod(): number
658
+ }
659
+ export type PairwiseBetaNode = PairwiseBeta
660
+ export declare class PairwiseBeta {
661
+ constructor(period: number)
662
+ update(x: number, y: number): number | null
663
+ /**
664
+ * Batch over two equally-sized arrays. Returns a length-`n` array
665
+ * with `NaN` for warmup positions.
666
+ */
667
+ batch(x: Array<number>, y: Array<number>): Array<number>
668
+ reset(): void
669
+ isReady(): boolean
670
+ warmupPeriod(): number
671
+ }
672
+ export type SpearmanCorrelationNode = SpearmanCorrelation
673
+ export declare class SpearmanCorrelation {
674
+ constructor(period: number)
675
+ update(x: number, y: number): number | null
676
+ /**
677
+ * Batch over two equally-sized arrays. Returns a length-`n` array
678
+ * with `NaN` for warmup positions.
679
+ */
680
+ batch(x: Array<number>, y: Array<number>): Array<number>
681
+ reset(): void
682
+ isReady(): boolean
683
+ warmupPeriod(): number
684
+ }
685
+ export type PairSpreadZScoreNode = PairSpreadZScore
686
+ /**
687
+ * Pair spread z-score: two ctor params (`betaPeriod`, `zPeriod`), one `(a, b)`
688
+ * price pair per update, a single z-score out.
689
+ */
690
+ export declare class PairSpreadZScore {
691
+ constructor(betaPeriod: number, zPeriod: number)
692
+ update(a: number, b: number): number | null
693
+ /**
694
+ * Batch over two equally-sized arrays of prices. Returns a length-`n`
695
+ * array with `NaN` for warmup positions.
696
+ */
697
+ batch(a: Array<number>, b: Array<number>): Array<number>
698
+ reset(): void
699
+ isReady(): boolean
700
+ warmupPeriod(): number
701
+ }
702
+ export type LeadLagCrossCorrelationNode = LeadLagCrossCorrelation
703
+ export declare class LeadLagCrossCorrelation {
704
+ constructor(window: number, maxLag: number)
705
+ update(a: number, b: number): LeadLagValue | null
706
+ /**
707
+ * Batch over two equally-sized arrays. Returns a flat array of length
708
+ * `2 * n`, interleaved per row as `[lag0, corr0, lag1, corr1, ...]`. Read
709
+ * column `j` of row `i` as `result[i * 2 + j]`. Warmup rows are `NaN`.
710
+ */
711
+ batch(a: Array<number>, b: Array<number>): Array<number>
712
+ reset(): void
713
+ isReady(): boolean
714
+ warmupPeriod(): number
715
+ }
716
+ export type CointegrationNode = Cointegration
717
+ export declare class Cointegration {
718
+ constructor(period: number, adfLags: number)
719
+ update(a: number, b: number): CointegrationValue | null
720
+ /**
721
+ * Batch over two equally-sized arrays. Returns a flat array of length
722
+ * `3 * n`, interleaved per row as `[hedgeRatio0, spread0, adfStat0, ...]`.
723
+ * Read column `j` of row `i` as `result[i * 3 + j]`. Warmup rows are `NaN`.
724
+ */
725
+ batch(a: Array<number>, b: Array<number>): Array<number>
726
+ reset(): void
727
+ isReady(): boolean
728
+ warmupPeriod(): number
729
+ }
730
+ export type RelativeStrengthAbNode = RelativeStrengthAB
731
+ export declare class RelativeStrengthAB {
732
+ constructor(maPeriod: number, rsiPeriod: number)
733
+ update(a: number, b: number): RelativeStrengthValue | null
734
+ /**
735
+ * Batch over two equally-sized arrays. Returns a flat array of length
736
+ * `3 * n`, interleaved per row as `[ratio0, ratioMa0, ratioRsi0, ...]`.
737
+ * Read column `j` of row `i` as `result[i * 3 + j]`. Warmup rows are `NaN`.
738
+ */
739
+ batch(a: Array<number>, b: Array<number>): Array<number>
740
+ reset(): void
741
+ isReady(): boolean
742
+ warmupPeriod(): number
743
+ }
744
+ export type MacdNode = MACD
745
+ export declare class MACD {
746
+ constructor(fast: number, slow: number, signal: number)
747
+ update(value: number): MacdValue | null
748
+ /**
749
+ * Batch over a price array. Returns a flat array of length `3 * n`,
750
+ * interleaved per row as `[macd0, signal0, histogram0, macd1, ...]`.
751
+ * Read column `j` of row `i` as `result[i * 3 + j]`. Warmup rows are `NaN`.
752
+ */
753
+ batch(prices: Array<number>): Array<number>
754
+ reset(): void
755
+ isReady(): boolean
756
+ warmupPeriod(): number
757
+ }
758
+ export type BollingerNode = BollingerBands
759
+ export declare class BollingerBands {
760
+ constructor(period: number, multiplier: number)
761
+ update(value: number): BollingerValue | null
762
+ /**
763
+ * Batch over a price array. Returns a flat array of length `4 * n`,
764
+ * interleaved per row as `[upper0, middle0, lower0, stddev0, upper1, ...]`.
765
+ * Read column `j` of row `i` as `result[i * 4 + j]`. Warmup rows are `NaN`.
766
+ */
767
+ batch(prices: Array<number>): Array<number>
768
+ reset(): void
769
+ isReady(): boolean
770
+ warmupPeriod(): number
771
+ }
772
+ export type AtrNode = ATR
773
+ export declare class ATR {
774
+ constructor(period: number)
775
+ update(high: number, low: number, close: number): number | null
776
+ batch(high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
777
+ reset(): void
778
+ isReady(): boolean
779
+ warmupPeriod(): number
780
+ }
781
+ export type StochNode = Stochastic
782
+ export declare class Stochastic {
783
+ constructor(kPeriod: number, dPeriod: number)
784
+ update(high: number, low: number, close: number): StochValue | null
785
+ batch(high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
786
+ reset(): void
787
+ isReady(): boolean
788
+ warmupPeriod(): number
789
+ }
790
+ export type ObvNode = OBV
791
+ export declare class OBV {
792
+ constructor()
793
+ update(close: number, volume: number): number | null
794
+ batch(close: Array<number>, volume: Array<number>): Array<number>
795
+ reset(): void
796
+ isReady(): boolean
797
+ warmupPeriod(): number
798
+ }
799
+ export type AdxNode = ADX
800
+ export declare class ADX {
801
+ constructor(period: number)
802
+ update(high: number, low: number, close: number): AdxValue | null
803
+ batch(high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
804
+ reset(): void
805
+ isReady(): boolean
806
+ warmupPeriod(): number
807
+ }
808
+ export type AdxrNode = ADXR
809
+ export declare class ADXR {
810
+ constructor(period: number)
811
+ update(high: number, low: number, close: number): number | null
812
+ batch(high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
813
+ reset(): void
814
+ isReady(): boolean
815
+ warmupPeriod(): number
816
+ }
817
+ export type CciNode = CCI
818
+ export declare class CCI {
819
+ constructor(period: number)
820
+ reset(): void
821
+ isReady(): boolean
822
+ warmupPeriod(): number
823
+ update(high: number, low: number, close: number): number | null
824
+ batch(high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
825
+ }
826
+ export type WilliamsRNode = WilliamsR
827
+ export declare class WilliamsR {
828
+ constructor(period: number)
829
+ reset(): void
830
+ isReady(): boolean
831
+ warmupPeriod(): number
832
+ update(high: number, low: number, close: number): number | null
833
+ batch(high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
834
+ }
835
+ export type MfiNode = MFI
836
+ export declare class MFI {
837
+ constructor(period: number)
838
+ reset(): void
839
+ isReady(): boolean
840
+ warmupPeriod(): number
841
+ update(high: number, low: number, close: number, volume: number): number | null
842
+ batch(high: Array<number>, low: Array<number>, close: Array<number>, volume: Array<number>): Array<number>
843
+ }
844
+ export type PsarNode = PSAR
845
+ export declare class PSAR {
846
+ constructor(afStart: number, afStep: number, afMax: number)
847
+ reset(): void
848
+ isReady(): boolean
849
+ warmupPeriod(): number
850
+ update(high: number, low: number, close: number): number | null
851
+ batch(high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
852
+ }
853
+ export type KeltnerNode = Keltner
854
+ export declare class Keltner {
855
+ constructor(emaPeriod: number, atrPeriod: number, multiplier: number)
856
+ reset(): void
857
+ isReady(): boolean
858
+ warmupPeriod(): number
859
+ update(high: number, low: number, close: number): KeltnerValue | null
860
+ batch(high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
861
+ }
862
+ export type DonchianNode = Donchian
863
+ export declare class Donchian {
864
+ constructor(period: number)
865
+ reset(): void
866
+ isReady(): boolean
867
+ warmupPeriod(): number
868
+ update(high: number, low: number): DonchianValue | null
869
+ batch(high: Array<number>, low: Array<number>): Array<number>
870
+ }
871
+ export type VwapNode = VWAP
872
+ export declare class VWAP {
873
+ constructor()
874
+ reset(): void
875
+ isReady(): boolean
876
+ warmupPeriod(): number
877
+ update(high: number, low: number, close: number, volume: number): number | null
878
+ batch(high: Array<number>, low: Array<number>, close: Array<number>, volume: Array<number>): Array<number>
879
+ }
880
+ export type RollingVwapNode = RollingVWAP
881
+ export declare class RollingVWAP {
882
+ constructor(period: number)
883
+ get period(): number
884
+ reset(): void
885
+ isReady(): boolean
886
+ warmupPeriod(): number
887
+ update(high: number, low: number, close: number, volume: number): number | null
888
+ batch(high: Array<number>, low: Array<number>, close: Array<number>, volume: Array<number>): Array<number>
889
+ }
890
+ export type AoNode = AwesomeOscillator
891
+ export declare class AwesomeOscillator {
892
+ constructor(fast: number, slow: number)
893
+ reset(): void
894
+ isReady(): boolean
895
+ warmupPeriod(): number
896
+ update(high: number, low: number): number | null
897
+ batch(high: Array<number>, low: Array<number>): Array<number>
898
+ }
899
+ export type AroonNode = Aroon
900
+ export declare class Aroon {
901
+ constructor(period: number)
902
+ reset(): void
903
+ isReady(): boolean
904
+ warmupPeriod(): number
905
+ update(high: number, low: number): AroonValue | null
906
+ batch(high: Array<number>, low: Array<number>): Array<number>
907
+ }
908
+ export type InertiaNode = Inertia
909
+ export declare class Inertia {
910
+ constructor(rviPeriod: number, linregPeriod: number)
911
+ update(open: number, high: number, low: number, close: number): number | null
912
+ batch(open: Array<number>, high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
913
+ reset(): void
914
+ isReady(): boolean
915
+ warmupPeriod(): number
916
+ }
917
+ export type ConnorsRsiNode = ConnorsRSI
918
+ export declare class ConnorsRSI {
919
+ constructor(periodRsi: number, periodStreak: number, periodRank: number)
920
+ update(value: number): number | null
921
+ batch(prices: Array<number>): Array<number>
922
+ reset(): void
923
+ isReady(): boolean
924
+ warmupPeriod(): number
925
+ }
926
+ export type LaguerreRsiNode = LaguerreRSI
927
+ export declare class LaguerreRSI {
928
+ constructor(gamma: number)
929
+ update(value: number): number | null
930
+ batch(prices: Array<number>): Array<number>
931
+ reset(): void
932
+ isReady(): boolean
933
+ warmupPeriod(): number
934
+ }
935
+ export type SmiNode = SMI
936
+ export declare class SMI {
937
+ constructor(period: number, dPeriod: number, d2Period: number)
938
+ update(high: number, low: number, close: number): number | null
939
+ batch(high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
940
+ reset(): void
941
+ isReady(): boolean
942
+ warmupPeriod(): number
943
+ }
944
+ export type KstNode = KST
945
+ export declare class KST {
946
+ constructor(roc1: number, roc2: number, roc3: number, roc4: number, sma1: number, sma2: number, sma3: number, sma4: number, signal: number)
947
+ static classic(): KstNode
948
+ update(value: number): KstValue | null
949
+ batch(prices: Array<number>): Array<number>
950
+ reset(): void
951
+ isReady(): boolean
952
+ warmupPeriod(): number
953
+ }
954
+ export type PgoNode = PGO
955
+ export declare class PGO {
956
+ constructor(period: number)
957
+ update(high: number, low: number, close: number): number | null
958
+ batch(high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
959
+ reset(): void
960
+ isReady(): boolean
961
+ warmupPeriod(): number
962
+ }
963
+ export type RviNode = RVI
964
+ export declare class RVI {
965
+ constructor(period: number)
966
+ update(open: number, high: number, low: number, close: number): number | null
967
+ batch(open: Array<number>, high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
968
+ reset(): void
969
+ isReady(): boolean
970
+ warmupPeriod(): number
971
+ }
972
+ export type AwesomeOscillatorHistogramNode = AwesomeOscillatorHistogram
973
+ export declare class AwesomeOscillatorHistogram {
974
+ constructor(fast: number, slow: number, smaPeriod: number)
975
+ update(high: number, low: number): number | null
976
+ batch(high: Array<number>, low: Array<number>): Array<number>
977
+ reset(): void
978
+ isReady(): boolean
979
+ warmupPeriod(): number
980
+ }
981
+ export type StcNode = STC
982
+ export declare class STC {
983
+ constructor(fast: number, slow: number, schaffPeriod: number, factor: number)
984
+ update(value: number): number | null
985
+ batch(prices: Array<number>): Array<number>
986
+ reset(): void
987
+ isReady(): boolean
988
+ warmupPeriod(): number
989
+ }
990
+ export type ElderImpulseNode = ElderImpulse
991
+ export declare class ElderImpulse {
992
+ constructor(emaPeriod: number, macdFast: number, macdSlow: number, macdSignal: number)
993
+ update(value: number): number | null
994
+ batch(prices: Array<number>): Array<number>
995
+ reset(): void
996
+ isReady(): boolean
997
+ warmupPeriod(): number
998
+ }
999
+ export type ZeroLagMacdNode = ZeroLagMACD
1000
+ export declare class ZeroLagMACD {
1001
+ constructor(fast: number, slow: number, signal: number)
1002
+ update(value: number): ZeroLagMacdValue | null
1003
+ batch(prices: Array<number>): Array<number>
1004
+ reset(): void
1005
+ isReady(): boolean
1006
+ warmupPeriod(): number
1007
+ }
1008
+ export type CfoNode = CFO
1009
+ export declare class CFO {
1010
+ constructor(period: number)
1011
+ update(value: number): number | null
1012
+ batch(prices: Array<number>): Array<number>
1013
+ reset(): void
1014
+ isReady(): boolean
1015
+ warmupPeriod(): number
1016
+ }
1017
+ export type ApoNode = APO
1018
+ export declare class APO {
1019
+ constructor(fast: number, slow: number)
1020
+ update(value: number): number | null
1021
+ batch(prices: Array<number>): Array<number>
1022
+ reset(): void
1023
+ isReady(): boolean
1024
+ warmupPeriod(): number
1025
+ }
1026
+ export type KamaNode = KAMA
1027
+ export declare class KAMA {
1028
+ constructor(erPeriod: number, fast: number, slow: number)
1029
+ reset(): void
1030
+ isReady(): boolean
1031
+ warmupPeriod(): number
1032
+ update(value: number): number | null
1033
+ batch(prices: Array<number>): Array<number>
1034
+ }
1035
+ export type EvwmaNode = EVWMA
1036
+ export declare class EVWMA {
1037
+ constructor(period: number)
1038
+ update(close: number, volume: number): number | null
1039
+ batch(close: Array<number>, volume: Array<number>): Array<number>
1040
+ reset(): void
1041
+ isReady(): boolean
1042
+ warmupPeriod(): number
1043
+ }
1044
+ export type AlligatorNode = Alligator
1045
+ export declare class Alligator {
1046
+ constructor(jaw: number, teeth: number, lips: number)
1047
+ reset(): void
1048
+ isReady(): boolean
1049
+ warmupPeriod(): number
1050
+ update(high: number, low: number): AlligatorValue | null
1051
+ batch(high: Array<number>, low: Array<number>): Array<number>
1052
+ }
1053
+ export type JmaNode = JMA
1054
+ export declare class JMA {
1055
+ constructor(period: number, phase: number, power: number)
1056
+ reset(): void
1057
+ isReady(): boolean
1058
+ warmupPeriod(): number
1059
+ update(value: number): number | null
1060
+ batch(prices: Array<number>): Array<number>
1061
+ }
1062
+ export type VidyaNode = VIDYA
1063
+ export declare class VIDYA {
1064
+ constructor(period: number, cmoPeriod: number)
1065
+ reset(): void
1066
+ isReady(): boolean
1067
+ warmupPeriod(): number
1068
+ update(value: number): number | null
1069
+ batch(prices: Array<number>): Array<number>
1070
+ }
1071
+ export type AlmaNode = ALMA
1072
+ export declare class ALMA {
1073
+ constructor(period: number, offset: number, sigma: number)
1074
+ reset(): void
1075
+ isReady(): boolean
1076
+ warmupPeriod(): number
1077
+ update(value: number): number | null
1078
+ batch(prices: Array<number>): Array<number>
1079
+ }
1080
+ export type T3Node = T3
1081
+ export declare class T3 {
1082
+ constructor(period: number, v: number)
1083
+ update(value: number): number | null
1084
+ batch(prices: Array<number>): Array<number>
1085
+ reset(): void
1086
+ isReady(): boolean
1087
+ warmupPeriod(): number
1088
+ }
1089
+ export type TsiNode = TSI
1090
+ export declare class TSI {
1091
+ constructor(long: number, short: number)
1092
+ update(value: number): number | null
1093
+ batch(prices: Array<number>): Array<number>
1094
+ reset(): void
1095
+ isReady(): boolean
1096
+ warmupPeriod(): number
1097
+ }
1098
+ export type PmoNode = PMO
1099
+ export declare class PMO {
1100
+ constructor(smoothing1: number, smoothing2: number)
1101
+ update(value: number): number | null
1102
+ batch(prices: Array<number>): Array<number>
1103
+ reset(): void
1104
+ isReady(): boolean
1105
+ warmupPeriod(): number
1106
+ }
1107
+ export type TiiNode = TII
1108
+ export declare class TII {
1109
+ constructor(smaPeriod: number, devPeriod: number)
1110
+ update(value: number): number | null
1111
+ batch(prices: Array<number>): Array<number>
1112
+ reset(): void
1113
+ isReady(): boolean
1114
+ warmupPeriod(): number
1115
+ }
1116
+ export type AdlNode = ADL
1117
+ export declare class ADL {
1118
+ constructor()
1119
+ update(high: number, low: number, close: number, volume: number): number | null
1120
+ batch(high: Array<number>, low: Array<number>, close: Array<number>, volume: Array<number>): Array<number>
1121
+ reset(): void
1122
+ isReady(): boolean
1123
+ warmupPeriod(): number
1124
+ }
1125
+ export type VolumePriceTrendNode = VolumePriceTrend
1126
+ export declare class VolumePriceTrend {
1127
+ constructor()
1128
+ update(close: number, volume: number): number | null
1129
+ batch(close: Array<number>, volume: Array<number>): Array<number>
1130
+ reset(): void
1131
+ isReady(): boolean
1132
+ warmupPeriod(): number
1133
+ }
1134
+ export type ChaikinMoneyFlowNode = ChaikinMoneyFlow
1135
+ export declare class ChaikinMoneyFlow {
1136
+ constructor(period: number)
1137
+ update(high: number, low: number, close: number, volume: number): number | null
1138
+ batch(high: Array<number>, low: Array<number>, close: Array<number>, volume: Array<number>): Array<number>
1139
+ reset(): void
1140
+ isReady(): boolean
1141
+ warmupPeriod(): number
1142
+ }
1143
+ export type ChaikinOscillatorNode = ChaikinOscillator
1144
+ export declare class ChaikinOscillator {
1145
+ constructor(fast: number, slow: number)
1146
+ update(high: number, low: number, close: number, volume: number): number | null
1147
+ batch(high: Array<number>, low: Array<number>, close: Array<number>, volume: Array<number>): Array<number>
1148
+ reset(): void
1149
+ isReady(): boolean
1150
+ warmupPeriod(): number
1151
+ }
1152
+ export type ForceIndexNode = ForceIndex
1153
+ export declare class ForceIndex {
1154
+ constructor(period: number)
1155
+ update(close: number, volume: number): number | null
1156
+ batch(close: Array<number>, volume: Array<number>): Array<number>
1157
+ reset(): void
1158
+ isReady(): boolean
1159
+ warmupPeriod(): number
1160
+ }
1161
+ export type NviNode = NVI
1162
+ export declare class NVI {
1163
+ constructor(baseline?: number | undefined | null)
1164
+ update(close: number, volume: number): number | null
1165
+ batch(close: Array<number>, volume: Array<number>): Array<number>
1166
+ reset(): void
1167
+ isReady(): boolean
1168
+ warmupPeriod(): number
1169
+ }
1170
+ export type PviNode = PVI
1171
+ export declare class PVI {
1172
+ constructor(baseline?: number | undefined | null)
1173
+ update(close: number, volume: number): number | null
1174
+ batch(close: Array<number>, volume: Array<number>): Array<number>
1175
+ reset(): void
1176
+ isReady(): boolean
1177
+ warmupPeriod(): number
1178
+ }
1179
+ export type VolumeOscillatorNode = VolumeOscillator
1180
+ export declare class VolumeOscillator {
1181
+ constructor(fast: number, slow: number)
1182
+ update(volume: number): number | null
1183
+ batch(volume: Array<number>): Array<number>
1184
+ reset(): void
1185
+ isReady(): boolean
1186
+ warmupPeriod(): number
1187
+ }
1188
+ export type KvoNode = KVO
1189
+ export declare class KVO {
1190
+ constructor(fast: number, slow: number)
1191
+ update(high: number, low: number, close: number, volume: number): number | null
1192
+ batch(high: Array<number>, low: Array<number>, close: Array<number>, volume: Array<number>): Array<number>
1193
+ reset(): void
1194
+ isReady(): boolean
1195
+ warmupPeriod(): number
1196
+ }
1197
+ export type AdOscillatorNode = WilliamsAD
1198
+ export declare class WilliamsAD {
1199
+ constructor()
1200
+ update(high: number, low: number, close: number): number | null
1201
+ batch(high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
1202
+ reset(): void
1203
+ isReady(): boolean
1204
+ warmupPeriod(): number
1205
+ }
1206
+ export type AnchoredVwapNode = AnchoredVWAP
1207
+ export declare class AnchoredVWAP {
1208
+ constructor()
1209
+ setAnchor(): void
1210
+ update(high: number, low: number, close: number, volume: number): number | null
1211
+ batch(high: Array<number>, low: Array<number>, close: Array<number>, volume: Array<number>): Array<number>
1212
+ reset(): void
1213
+ isReady(): boolean
1214
+ warmupPeriod(): number
1215
+ }
1216
+ export type DemandIndexNode = DemandIndex
1217
+ export declare class DemandIndex {
1218
+ constructor(period: number)
1219
+ update(high: number, low: number, close: number, volume: number): number | null
1220
+ batch(high: Array<number>, low: Array<number>, close: Array<number>, volume: Array<number>): Array<number>
1221
+ reset(): void
1222
+ isReady(): boolean
1223
+ warmupPeriod(): number
1224
+ }
1225
+ export type TsvNode = TSV
1226
+ export declare class TSV {
1227
+ constructor(period: number)
1228
+ update(close: number, volume: number): number | null
1229
+ batch(close: Array<number>, volume: Array<number>): Array<number>
1230
+ reset(): void
1231
+ isReady(): boolean
1232
+ warmupPeriod(): number
1233
+ }
1234
+ export type VzoNode = VZO
1235
+ export declare class VZO {
1236
+ constructor(period: number)
1237
+ update(close: number, volume: number): number | null
1238
+ batch(close: Array<number>, volume: Array<number>): Array<number>
1239
+ reset(): void
1240
+ isReady(): boolean
1241
+ warmupPeriod(): number
1242
+ }
1243
+ export type MarketFacilitationIndexNode = MarketFacilitationIndex
1244
+ export declare class MarketFacilitationIndex {
1245
+ constructor()
1246
+ update(high: number, low: number, volume: number): number | null
1247
+ batch(high: Array<number>, low: Array<number>, volume: Array<number>): Array<number>
1248
+ reset(): void
1249
+ isReady(): boolean
1250
+ warmupPeriod(): number
1251
+ }
1252
+ export type EaseOfMovementNode = EaseOfMovement
1253
+ export declare class EaseOfMovement {
1254
+ constructor(period: number, divisor: number)
1255
+ update(high: number, low: number, volume: number): number | null
1256
+ batch(high: Array<number>, low: Array<number>, volume: Array<number>): Array<number>
1257
+ reset(): void
1258
+ isReady(): boolean
1259
+ warmupPeriod(): number
1260
+ }
1261
+ export type SuperTrendNode = SuperTrend
1262
+ export declare class SuperTrend {
1263
+ constructor(atrPeriod: number, multiplier: number)
1264
+ update(high: number, low: number, close: number): SuperTrendValue | null
1265
+ /**
1266
+ * Returns `[value0, direction0, value1, direction1, ...]`, length `2 * n`.
1267
+ * Warmup positions are `NaN`.
1268
+ */
1269
+ batch(high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
1270
+ reset(): void
1271
+ isReady(): boolean
1272
+ warmupPeriod(): number
1273
+ }
1274
+ export type ChandelierExitNode = ChandelierExit
1275
+ export declare class ChandelierExit {
1276
+ constructor(period: number, multiplier: number)
1277
+ update(high: number, low: number, close: number): ChandelierExitValue | null
1278
+ /**
1279
+ * Returns `[long0, short0, long1, short1, ...]`, length `2 * n`. Warmup
1280
+ * positions are `NaN`.
1281
+ */
1282
+ batch(high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
1283
+ reset(): void
1284
+ isReady(): boolean
1285
+ warmupPeriod(): number
1286
+ }
1287
+ export type ChandeKrollStopNode = ChandeKrollStop
1288
+ export declare class ChandeKrollStop {
1289
+ constructor(atrPeriod: number, atrMultiplier: number, stopPeriod: number)
1290
+ update(high: number, low: number, close: number): ChandeKrollStopValue | null
1291
+ /**
1292
+ * Returns `[long0, short0, long1, short1, ...]`, length `2 * n`. Warmup
1293
+ * positions are `NaN`.
1294
+ */
1295
+ batch(high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
1296
+ reset(): void
1297
+ isReady(): boolean
1298
+ warmupPeriod(): number
1299
+ }
1300
+ export type AtrTrailingStopNode = AtrTrailingStop
1301
+ export declare class AtrTrailingStop {
1302
+ constructor(atrPeriod: number, multiplier: number)
1303
+ update(high: number, low: number, close: number): number | null
1304
+ batch(high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
1305
+ reset(): void
1306
+ isReady(): boolean
1307
+ warmupPeriod(): number
1308
+ }
1309
+ export type HiLoActivatorNode = HiLoActivator
1310
+ export declare class HiLoActivator {
1311
+ constructor(period: number)
1312
+ update(high: number, low: number, close: number): number | null
1313
+ batch(high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
1314
+ reset(): void
1315
+ isReady(): boolean
1316
+ warmupPeriod(): number
1317
+ }
1318
+ export type VoltyStopNode = VoltyStop
1319
+ export declare class VoltyStop {
1320
+ constructor(atrPeriod: number, multiplier: number)
1321
+ update(high: number, low: number, close: number): number | null
1322
+ batch(high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
1323
+ reset(): void
1324
+ isReady(): boolean
1325
+ warmupPeriod(): number
1326
+ }
1327
+ export type YoyoExitNode = YoyoExit
1328
+ export declare class YoyoExit {
1329
+ constructor(atrPeriod: number, multiplier: number)
1330
+ update(high: number, low: number, close: number): number | null
1331
+ batch(high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
1332
+ reset(): void
1333
+ isReady(): boolean
1334
+ warmupPeriod(): number
1335
+ inTrade(): boolean
1336
+ }
1337
+ export type DonchianStopNode = DonchianStop
1338
+ export declare class DonchianStop {
1339
+ constructor(period: number)
1340
+ update(high: number, low: number): DonchianStopValue | null
1341
+ /**
1342
+ * Returns `[long0, short0, long1, short1, ...]`, length `2 * n`. Warmup
1343
+ * positions are `NaN`.
1344
+ */
1345
+ batch(high: Array<number>, low: Array<number>): Array<number>
1346
+ reset(): void
1347
+ isReady(): boolean
1348
+ warmupPeriod(): number
1349
+ }
1350
+ export type PercentageTrailingStopNode = PercentageTrailingStop
1351
+ export declare class PercentageTrailingStop {
1352
+ constructor(percent: number)
1353
+ update(value: number): number | null
1354
+ batch(prices: Array<number>): Array<number>
1355
+ reset(): void
1356
+ isReady(): boolean
1357
+ warmupPeriod(): number
1358
+ }
1359
+ export type StepTrailingStopNode = StepTrailingStop
1360
+ export declare class StepTrailingStop {
1361
+ constructor(stepSize: number)
1362
+ update(value: number): number | null
1363
+ batch(prices: Array<number>): Array<number>
1364
+ reset(): void
1365
+ isReady(): boolean
1366
+ warmupPeriod(): number
1367
+ }
1368
+ export type RenkoTrailingStopNode = RenkoTrailingStop
1369
+ export declare class RenkoTrailingStop {
1370
+ constructor(blockSize: number)
1371
+ update(value: number): number | null
1372
+ batch(prices: Array<number>): Array<number>
1373
+ reset(): void
1374
+ isReady(): boolean
1375
+ warmupPeriod(): number
1376
+ }
1377
+ export type TypicalPriceNode = TypicalPrice
1378
+ export declare class TypicalPrice {
1379
+ constructor()
1380
+ update(high: number, low: number, close: number): number | null
1381
+ batch(high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
1382
+ reset(): void
1383
+ isReady(): boolean
1384
+ warmupPeriod(): number
1385
+ }
1386
+ export type MedianPriceNode = MedianPrice
1387
+ export declare class MedianPrice {
1388
+ constructor()
1389
+ update(high: number, low: number): number | null
1390
+ batch(high: Array<number>, low: Array<number>): Array<number>
1391
+ reset(): void
1392
+ isReady(): boolean
1393
+ warmupPeriod(): number
1394
+ }
1395
+ export type WeightedCloseNode = WeightedClose
1396
+ export declare class WeightedClose {
1397
+ constructor()
1398
+ update(high: number, low: number, close: number): number | null
1399
+ batch(high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
1400
+ reset(): void
1401
+ isReady(): boolean
1402
+ warmupPeriod(): number
1403
+ }
1404
+ export type LinearRegressionNode = LinearRegression
1405
+ export declare class LinearRegression {
1406
+ constructor(period: number)
1407
+ update(value: number): number | null
1408
+ batch(prices: Array<number>): Array<number>
1409
+ reset(): void
1410
+ isReady(): boolean
1411
+ warmupPeriod(): number
1412
+ }
1413
+ export type LinRegSlopeNode = LinRegSlope
1414
+ export declare class LinRegSlope {
1415
+ constructor(period: number)
1416
+ update(value: number): number | null
1417
+ batch(prices: Array<number>): Array<number>
1418
+ reset(): void
1419
+ isReady(): boolean
1420
+ warmupPeriod(): number
1421
+ }
1422
+ export type AcceleratorOscillatorNode = AcceleratorOscillator
1423
+ export declare class AcceleratorOscillator {
1424
+ constructor(aoFast: number, aoSlow: number, signalPeriod: number)
1425
+ update(high: number, low: number): number | null
1426
+ batch(high: Array<number>, low: Array<number>): Array<number>
1427
+ reset(): void
1428
+ isReady(): boolean
1429
+ warmupPeriod(): number
1430
+ }
1431
+ export type BalanceOfPowerNode = BalanceOfPower
1432
+ export declare class BalanceOfPower {
1433
+ constructor()
1434
+ update(open: number, high: number, low: number, close: number): number | null
1435
+ batch(open: Array<number>, high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
1436
+ reset(): void
1437
+ isReady(): boolean
1438
+ warmupPeriod(): number
1439
+ }
1440
+ export type ChoppinessIndexNode = ChoppinessIndex
1441
+ export declare class ChoppinessIndex {
1442
+ constructor(period: number)
1443
+ update(high: number, low: number, close: number): number | null
1444
+ batch(high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
1445
+ reset(): void
1446
+ isReady(): boolean
1447
+ warmupPeriod(): number
1448
+ }
1449
+ export type TrueRangeNode = TrueRange
1450
+ export declare class TrueRange {
1451
+ constructor()
1452
+ update(high: number, low: number, close: number): number | null
1453
+ batch(high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
1454
+ reset(): void
1455
+ isReady(): boolean
1456
+ warmupPeriod(): number
1457
+ }
1458
+ export type ChaikinVolatilityNode = ChaikinVolatility
1459
+ export declare class ChaikinVolatility {
1460
+ constructor(emaPeriod: number, rocPeriod: number)
1461
+ update(high: number, low: number): number | null
1462
+ batch(high: Array<number>, low: Array<number>): Array<number>
1463
+ reset(): void
1464
+ isReady(): boolean
1465
+ warmupPeriod(): number
1466
+ }
1467
+ export type YangZhangVolatilityNode = YangZhangVolatility
1468
+ export declare class YangZhangVolatility {
1469
+ constructor(period: number, tradingPeriods: number)
1470
+ update(open: number, high: number, low: number, close: number): number | null
1471
+ batch(open: Array<number>, high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
1472
+ reset(): void
1473
+ isReady(): boolean
1474
+ warmupPeriod(): number
1475
+ }
1476
+ export type RogersSatchellVolatilityNode = RogersSatchellVolatility
1477
+ export declare class RogersSatchellVolatility {
1478
+ constructor(period: number, tradingPeriods: number)
1479
+ update(open: number, high: number, low: number, close: number): number | null
1480
+ batch(open: Array<number>, high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
1481
+ reset(): void
1482
+ isReady(): boolean
1483
+ warmupPeriod(): number
1484
+ }
1485
+ export type GarmanKlassVolatilityNode = GarmanKlassVolatility
1486
+ export declare class GarmanKlassVolatility {
1487
+ constructor(period: number, tradingPeriods: number)
1488
+ update(open: number, high: number, low: number, close: number): number | null
1489
+ batch(open: Array<number>, high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
1490
+ reset(): void
1491
+ isReady(): boolean
1492
+ warmupPeriod(): number
1493
+ }
1494
+ export type ParkinsonVolatilityNode = ParkinsonVolatility
1495
+ export declare class ParkinsonVolatility {
1496
+ constructor(period: number, tradingPeriods: number)
1497
+ update(high: number, low: number): number | null
1498
+ batch(high: Array<number>, low: Array<number>): Array<number>
1499
+ reset(): void
1500
+ isReady(): boolean
1501
+ warmupPeriod(): number
1502
+ }
1503
+ export type LinRegAngleNode = LinRegAngle
1504
+ export declare class LinRegAngle {
1505
+ constructor(period: number)
1506
+ update(value: number): number | null
1507
+ batch(prices: Array<number>): Array<number>
1508
+ reset(): void
1509
+ isReady(): boolean
1510
+ warmupPeriod(): number
1511
+ }
1512
+ export type BollingerBandwidthNode = BollingerBandwidth
1513
+ export declare class BollingerBandwidth {
1514
+ constructor(period: number, multiplier: number)
1515
+ update(value: number): number | null
1516
+ batch(prices: Array<number>): Array<number>
1517
+ reset(): void
1518
+ isReady(): boolean
1519
+ warmupPeriod(): number
1520
+ }
1521
+ export type PercentBNode = PercentB
1522
+ export declare class PercentB {
1523
+ constructor(period: number, multiplier: number)
1524
+ update(value: number): number | null
1525
+ batch(prices: Array<number>): Array<number>
1526
+ reset(): void
1527
+ isReady(): boolean
1528
+ warmupPeriod(): number
1529
+ }
1530
+ export type NatrNode = NATR
1531
+ export declare class NATR {
1532
+ constructor(period: number)
1533
+ update(high: number, low: number, close: number): number | null
1534
+ batch(high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
1535
+ reset(): void
1536
+ isReady(): boolean
1537
+ warmupPeriod(): number
1538
+ }
1539
+ export type HistoricalVolatilityNode = HistoricalVolatility
1540
+ export declare class HistoricalVolatility {
1541
+ constructor(period: number, tradingPeriods: number)
1542
+ update(value: number): number | null
1543
+ batch(prices: Array<number>): Array<number>
1544
+ reset(): void
1545
+ isReady(): boolean
1546
+ warmupPeriod(): number
1547
+ }
1548
+ export type AroonOscillatorNode = AroonOscillator
1549
+ export declare class AroonOscillator {
1550
+ constructor(period: number)
1551
+ update(high: number, low: number): number | null
1552
+ batch(high: Array<number>, low: Array<number>): Array<number>
1553
+ reset(): void
1554
+ isReady(): boolean
1555
+ warmupPeriod(): number
1556
+ }
1557
+ export type WaveTrendNode = WaveTrend
1558
+ export declare class WaveTrend {
1559
+ constructor(channelPeriod: number, averagePeriod: number, signalPeriod: number)
1560
+ static classic(): WaveTrendNode
1561
+ update(high: number, low: number, close: number): WaveTrendValue | null
1562
+ batch(high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
1563
+ reset(): void
1564
+ isReady(): boolean
1565
+ warmupPeriod(): number
1566
+ }
1567
+ export type RwiNode = RWI
1568
+ export declare class RWI {
1569
+ constructor(period: number)
1570
+ update(high: number, low: number, close: number): RwiValue | null
1571
+ /** Returns `[high0, low0, high1, low1, ...]`, length `2 * n`. Warmup is NaN. */
1572
+ batch(high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
1573
+ reset(): void
1574
+ isReady(): boolean
1575
+ warmupPeriod(): number
1576
+ }
1577
+ export type VortexNode = Vortex
1578
+ export declare class Vortex {
1579
+ constructor(period: number)
1580
+ update(high: number, low: number, close: number): VortexValue | null
1581
+ /** Returns `[plus0, minus0, plus1, minus1, ...]`, length `2 * n`. Warmup is NaN. */
1582
+ batch(high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
1583
+ reset(): void
1584
+ isReady(): boolean
1585
+ warmupPeriod(): number
1586
+ }
1587
+ export type MassIndexNode = MassIndex
1588
+ export declare class MassIndex {
1589
+ constructor(emaPeriod: number, sumPeriod: number)
1590
+ update(high: number, low: number): number | null
1591
+ batch(high: Array<number>, low: Array<number>): Array<number>
1592
+ reset(): void
1593
+ isReady(): boolean
1594
+ warmupPeriod(): number
1595
+ }
1596
+ export type StochRsiNode = StochRSI
1597
+ export declare class StochRSI {
1598
+ constructor(rsiPeriod: number, stochPeriod: number)
1599
+ update(value: number): number | null
1600
+ batch(prices: Array<number>): Array<number>
1601
+ reset(): void
1602
+ isReady(): boolean
1603
+ warmupPeriod(): number
1604
+ }
1605
+ export type UltimateOscillatorNode = UltimateOscillator
1606
+ export declare class UltimateOscillator {
1607
+ constructor(short: number, mid: number, long: number)
1608
+ update(high: number, low: number, close: number): number | null
1609
+ batch(high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
1610
+ reset(): void
1611
+ isReady(): boolean
1612
+ warmupPeriod(): number
1613
+ }
1614
+ export type PpoNode = PPO
1615
+ export declare class PPO {
1616
+ constructor(fast: number, slow: number)
1617
+ update(value: number): number | null
1618
+ batch(prices: Array<number>): Array<number>
1619
+ reset(): void
1620
+ isReady(): boolean
1621
+ warmupPeriod(): number
1622
+ }
1623
+ export type CoppockNode = Coppock
1624
+ export declare class Coppock {
1625
+ constructor(rocLong: number, rocShort: number, wmaPeriod: number)
1626
+ update(value: number): number | null
1627
+ batch(prices: Array<number>): Array<number>
1628
+ reset(): void
1629
+ isReady(): boolean
1630
+ warmupPeriod(): number
1631
+ }
1632
+ export type VwmaNode = VWMA
1633
+ export declare class VWMA {
1634
+ constructor(period: number)
1635
+ update(close: number, volume: number): number | null
1636
+ batch(close: Array<number>, volume: Array<number>): Array<number>
1637
+ reset(): void
1638
+ isReady(): boolean
1639
+ warmupPeriod(): number
1640
+ }
1641
+ export type MaEnvelopeNode = MaEnvelope
1642
+ export declare class MaEnvelope {
1643
+ constructor(period: number, percent: number)
1644
+ update(value: number): MaEnvelopeValue | null
1645
+ /** Flat `[upper0, middle0, lower0, upper1, ...]`, length `3 * n`. */
1646
+ batch(prices: Array<number>): Array<number>
1647
+ reset(): void
1648
+ isReady(): boolean
1649
+ warmupPeriod(): number
1650
+ }
1651
+ export type AccelerationBandsNode = AccelerationBands
1652
+ export declare class AccelerationBands {
1653
+ constructor(period: number, factor: number)
1654
+ update(high: number, low: number, close: number): AccelerationBandsValue | null
1655
+ batch(high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
1656
+ reset(): void
1657
+ isReady(): boolean
1658
+ warmupPeriod(): number
1659
+ }
1660
+ export type StarcBandsNode = StarcBands
1661
+ export declare class StarcBands {
1662
+ constructor(smaPeriod: number, atrPeriod: number, multiplier: number)
1663
+ update(high: number, low: number, close: number): StarcBandsValue | null
1664
+ batch(high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
1665
+ reset(): void
1666
+ isReady(): boolean
1667
+ warmupPeriod(): number
1668
+ }
1669
+ export type AtrBandsNode = AtrBands
1670
+ export declare class AtrBands {
1671
+ constructor(period: number, multiplier: number)
1672
+ update(high: number, low: number, close: number): AtrBandsValue | null
1673
+ batch(high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
1674
+ reset(): void
1675
+ isReady(): boolean
1676
+ warmupPeriod(): number
1677
+ }
1678
+ export type HurstChannelNode = HurstChannel
1679
+ export declare class HurstChannel {
1680
+ constructor(period: number, multiplier: number)
1681
+ update(high: number, low: number, close: number): HurstChannelValue | null
1682
+ batch(high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
1683
+ reset(): void
1684
+ isReady(): boolean
1685
+ warmupPeriod(): number
1686
+ }
1687
+ export type LinRegChannelNode = LinRegChannel
1688
+ export declare class LinRegChannel {
1689
+ constructor(period: number, multiplier: number)
1690
+ update(value: number): LinRegChannelValue | null
1691
+ batch(prices: Array<number>): Array<number>
1692
+ reset(): void
1693
+ isReady(): boolean
1694
+ warmupPeriod(): number
1695
+ }
1696
+ export type StandardErrorBandsNode = StandardErrorBands
1697
+ export declare class StandardErrorBands {
1698
+ constructor(period: number, multiplier: number)
1699
+ update(value: number): StandardErrorBandsValue | null
1700
+ batch(prices: Array<number>): Array<number>
1701
+ reset(): void
1702
+ isReady(): boolean
1703
+ warmupPeriod(): number
1704
+ }
1705
+ export type DoubleBollingerNode = DoubleBollinger
1706
+ export declare class DoubleBollinger {
1707
+ constructor(period: number, kInner: number, kOuter: number)
1708
+ update(value: number): DoubleBollingerValue | null
1709
+ /** Flat `[u_o, u_i, m, l_i, l_o, ...]`, length `5 * n`. */
1710
+ batch(prices: Array<number>): Array<number>
1711
+ reset(): void
1712
+ isReady(): boolean
1713
+ warmupPeriod(): number
1714
+ }
1715
+ export type TtmSqueezeNode = TtmSqueeze
1716
+ export declare class TtmSqueeze {
1717
+ constructor(period: number, bbMult: number, kcMult: number)
1718
+ update(high: number, low: number, close: number): TtmSqueezeValue | null
1719
+ /** Flat `[sq0, mom0, sq1, mom1, ...]`, length `2 * n`. */
1720
+ batch(high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
1721
+ reset(): void
1722
+ isReady(): boolean
1723
+ warmupPeriod(): number
1724
+ }
1725
+ export type FractalChaosBandsNode = FractalChaosBands
1726
+ export declare class FractalChaosBands {
1727
+ constructor(k: number)
1728
+ update(high: number, low: number): FractalChaosBandsValue | null
1729
+ /** Flat `[u0, l0, u1, l1, ...]`, length `2 * n`. */
1730
+ batch(high: Array<number>, low: Array<number>): Array<number>
1731
+ reset(): void
1732
+ isReady(): boolean
1733
+ warmupPeriod(): number
1734
+ }
1735
+ export type VwapStdDevBandsNode = VwapStdDevBands
1736
+ export declare class VwapStdDevBands {
1737
+ constructor(multiplier: number)
1738
+ update(high: number, low: number, close: number, volume: number): VwapStdDevBandsValue | null
1739
+ /** Flat `[u0, m0, l0, sd0, ...]`, length `4 * n`. */
1740
+ batch(high: Array<number>, low: Array<number>, close: Array<number>, volume: Array<number>): Array<number>
1741
+ reset(): void
1742
+ isReady(): boolean
1743
+ warmupPeriod(): number
1744
+ }
1745
+ export type ClassicPivotsNode = ClassicPivots
1746
+ export declare class ClassicPivots {
1747
+ constructor()
1748
+ update(high: number, low: number, close: number): ClassicPivotsValue | null
1749
+ batch(high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
1750
+ reset(): void
1751
+ isReady(): boolean
1752
+ warmupPeriod(): number
1753
+ }
1754
+ export type FibonacciPivotsNode = FibonacciPivots
1755
+ export declare class FibonacciPivots {
1756
+ constructor()
1757
+ update(high: number, low: number, close: number): FibonacciPivotsValue | null
1758
+ batch(high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
1759
+ reset(): void
1760
+ isReady(): boolean
1761
+ warmupPeriod(): number
1762
+ }
1763
+ export type CamarillaNode = Camarilla
1764
+ export declare class Camarilla {
1765
+ constructor()
1766
+ update(high: number, low: number, close: number): CamarillaValue | null
1767
+ batch(high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
1768
+ reset(): void
1769
+ isReady(): boolean
1770
+ warmupPeriod(): number
1771
+ }
1772
+ export type WoodiePivotsNode = WoodiePivots
1773
+ export declare class WoodiePivots {
1774
+ constructor()
1775
+ update(high: number, low: number, close: number): WoodiePivotsValue | null
1776
+ batch(high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
1777
+ reset(): void
1778
+ isReady(): boolean
1779
+ warmupPeriod(): number
1780
+ }
1781
+ export type DemarkPivotsNode = DemarkPivots
1782
+ export declare class DemarkPivots {
1783
+ constructor()
1784
+ update(open: number, high: number, low: number, close: number): DemarkPivotsValue | null
1785
+ batch(open: Array<number>, high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
1786
+ reset(): void
1787
+ isReady(): boolean
1788
+ warmupPeriod(): number
1789
+ }
1790
+ export type WilliamsFractalsNode = WilliamsFractals
1791
+ export declare class WilliamsFractals {
1792
+ constructor()
1793
+ update(high: number, low: number): WilliamsFractalsValue | null
1794
+ batch(high: Array<number>, low: Array<number>): Array<number>
1795
+ reset(): void
1796
+ isReady(): boolean
1797
+ warmupPeriod(): number
1798
+ }
1799
+ export type ZigZagNode = ZigZag
1800
+ export declare class ZigZag {
1801
+ constructor(threshold: number)
1802
+ update(high: number, low: number): ZigZagValue | null
1803
+ batch(high: Array<number>, low: Array<number>): Array<number>
1804
+ get threshold(): number
1805
+ reset(): void
1806
+ isReady(): boolean
1807
+ warmupPeriod(): number
1808
+ }
1809
+ export type TdSetupNode = TDSetup
1810
+ export declare class TDSetup {
1811
+ constructor(lookback: number, target: number)
1812
+ update(high: number, low: number, close: number): number | null
1813
+ batch(high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
1814
+ reset(): void
1815
+ isReady(): boolean
1816
+ warmupPeriod(): number
1817
+ }
1818
+ export type TdSequentialNode = TDSequential
1819
+ export declare class TDSequential {
1820
+ constructor(setupLookback: number, setupTarget: number, countdownLookback: number, countdownTarget: number)
1821
+ update(high: number, low: number, close: number): TdSequentialValue | null
1822
+ /** Batch returns a flat array `[setup0, countdown0, direction0, setup1, ...]`. */
1823
+ batch(high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
1824
+ reset(): void
1825
+ isReady(): boolean
1826
+ warmupPeriod(): number
1827
+ }
1828
+ export type TdDeMarkerNode = TDDeMarker
1829
+ export declare class TDDeMarker {
1830
+ constructor(period: number)
1831
+ update(high: number, low: number): number | null
1832
+ batch(high: Array<number>, low: Array<number>): Array<number>
1833
+ reset(): void
1834
+ isReady(): boolean
1835
+ warmupPeriod(): number
1836
+ }
1837
+ export type TdReiNode = TDREI
1838
+ export declare class TDREI {
1839
+ constructor(period: number)
1840
+ update(high: number, low: number): number | null
1841
+ batch(high: Array<number>, low: Array<number>): Array<number>
1842
+ reset(): void
1843
+ isReady(): boolean
1844
+ warmupPeriod(): number
1845
+ }
1846
+ export type TdPressureNode = TDPressure
1847
+ export declare class TDPressure {
1848
+ constructor(period: number)
1849
+ update(open: number, high: number, low: number, close: number, volume: number): number | null
1850
+ batch(open: Array<number>, high: Array<number>, low: Array<number>, close: Array<number>, volume: Array<number>): Array<number>
1851
+ reset(): void
1852
+ isReady(): boolean
1853
+ warmupPeriod(): number
1854
+ }
1855
+ export type TdComboNode = TDCombo
1856
+ export declare class TDCombo {
1857
+ constructor(setupLookback: number, setupTarget: number, countdownLookback: number, countdownTarget: number)
1858
+ update(high: number, low: number, close: number): number | null
1859
+ batch(high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
1860
+ reset(): void
1861
+ isReady(): boolean
1862
+ warmupPeriod(): number
1863
+ }
1864
+ export type TdCountdownNode = TDCountdown
1865
+ export declare class TDCountdown {
1866
+ constructor(setupLookback: number, setupTarget: number, countdownLookback: number, countdownTarget: number)
1867
+ update(high: number, low: number, close: number): number | null
1868
+ batch(high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
1869
+ reset(): void
1870
+ isReady(): boolean
1871
+ warmupPeriod(): number
1872
+ }
1873
+ export type TdLinesNode = TDLines
1874
+ export declare class TDLines {
1875
+ constructor(lookback: number, target: number)
1876
+ update(high: number, low: number, close: number): TdLinesValue | null
1877
+ /** Batch returns a flat array `[resistance0, support0, resistance1, ...]`. */
1878
+ batch(high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
1879
+ reset(): void
1880
+ isReady(): boolean
1881
+ warmupPeriod(): number
1882
+ }
1883
+ export type TdRangeProjectionNode = TDRangeProjection
1884
+ export declare class TDRangeProjection {
1885
+ constructor()
1886
+ update(open: number, high: number, low: number, close: number): TdRangeProjectionValue | null
1887
+ /** Batch returns a flat array `[high0, low0, high1, low1, ...]`. */
1888
+ batch(open: Array<number>, high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
1889
+ reset(): void
1890
+ isReady(): boolean
1891
+ warmupPeriod(): number
1892
+ }
1893
+ export type TdDifferentialNode = TDDifferential
1894
+ export declare class TDDifferential {
1895
+ constructor()
1896
+ update(high: number, low: number, close: number): number | null
1897
+ batch(high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
1898
+ reset(): void
1899
+ isReady(): boolean
1900
+ warmupPeriod(): number
1901
+ }
1902
+ export type TdOpenNode = TDOpen
1903
+ export declare class TDOpen {
1904
+ constructor()
1905
+ update(open: number, high: number, low: number, close: number): number | null
1906
+ batch(open: Array<number>, high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
1907
+ reset(): void
1908
+ isReady(): boolean
1909
+ warmupPeriod(): number
1910
+ }
1911
+ export type TdRiskLevelNode = TDRiskLevel
1912
+ export declare class TDRiskLevel {
1913
+ constructor(lookback: number, target: number)
1914
+ update(high: number, low: number, close: number): TdRiskLevelValue | null
1915
+ /** Batch returns a flat array `[buyRisk0, sellRisk0, buyRisk1, ...]`. */
1916
+ batch(high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
1917
+ reset(): void
1918
+ isReady(): boolean
1919
+ warmupPeriod(): number
1920
+ }
1921
+ export type InverseFisherTransformNode = InverseFisherTransform
1922
+ export declare class InverseFisherTransform {
1923
+ constructor(scale: number)
1924
+ update(value: number): number | null
1925
+ batch(prices: Array<number>): Array<number>
1926
+ reset(): void
1927
+ isReady(): boolean
1928
+ warmupPeriod(): number
1929
+ }
1930
+ export type DecyclerOscillatorNode = DecyclerOscillator
1931
+ export declare class DecyclerOscillator {
1932
+ constructor(fast: number, slow: number)
1933
+ update(value: number): number | null
1934
+ batch(prices: Array<number>): Array<number>
1935
+ reset(): void
1936
+ isReady(): boolean
1937
+ warmupPeriod(): number
1938
+ }
1939
+ export type RoofingFilterNode = RoofingFilter
1940
+ export declare class RoofingFilter {
1941
+ constructor(lpPeriod: number, hpPeriod: number)
1942
+ update(value: number): number | null
1943
+ batch(prices: Array<number>): Array<number>
1944
+ reset(): void
1945
+ isReady(): boolean
1946
+ warmupPeriod(): number
1947
+ }
1948
+ export type EmpiricalModeDecompositionNode = EmpiricalModeDecomposition
1949
+ export declare class EmpiricalModeDecomposition {
1950
+ constructor(period: number, fraction: number)
1951
+ update(value: number): number | null
1952
+ batch(prices: Array<number>): Array<number>
1953
+ reset(): void
1954
+ isReady(): boolean
1955
+ warmupPeriod(): number
1956
+ }
1957
+ export type HilbertDominantCycleNode = HilbertDominantCycle
1958
+ export declare class HilbertDominantCycle {
1959
+ constructor()
1960
+ update(value: number): number | null
1961
+ batch(prices: Array<number>): Array<number>
1962
+ reset(): void
1963
+ isReady(): boolean
1964
+ warmupPeriod(): number
1965
+ }
1966
+ export type AdaptiveCycleNode = AdaptiveCycle
1967
+ export declare class AdaptiveCycle {
1968
+ constructor()
1969
+ update(value: number): number | null
1970
+ batch(prices: Array<number>): Array<number>
1971
+ reset(): void
1972
+ isReady(): boolean
1973
+ warmupPeriod(): number
1974
+ }
1975
+ export type SineWaveNode = SineWave
1976
+ export declare class SineWave {
1977
+ constructor()
1978
+ update(value: number): number | null
1979
+ batch(prices: Array<number>): Array<number>
1980
+ lead(): number
1981
+ reset(): void
1982
+ isReady(): boolean
1983
+ warmupPeriod(): number
1984
+ }
1985
+ export type MamaNode = MAMA
1986
+ export declare class MAMA {
1987
+ constructor(fastLimit: number, slowLimit: number)
1988
+ update(value: number): MamaValue | null
1989
+ /** Returns a flat array of length `2 * n`: `[mama0, fama0, mama1, fama1, ...]`. */
1990
+ batch(prices: Array<number>): Array<number>
1991
+ reset(): void
1992
+ isReady(): boolean
1993
+ warmupPeriod(): number
1994
+ }
1995
+ export type FamaNode = FAMA
1996
+ export declare class FAMA {
1997
+ constructor(fastLimit: number, slowLimit: number)
1998
+ update(value: number): number | null
1999
+ batch(prices: Array<number>): Array<number>
2000
+ reset(): void
2001
+ isReady(): boolean
2002
+ warmupPeriod(): number
2003
+ }
2004
+ export type IchimokuNode = Ichimoku
2005
+ export declare class Ichimoku {
2006
+ constructor(tenkanPeriod: number, kijunPeriod: number, senkouBPeriod: number, displacement: number)
2007
+ update(high: number, low: number, close: number): IchimokuValue | null
2008
+ /**
2009
+ * Returns `[tenkan0, kijun0, senkouA0, senkouB0, chikou0, tenkan1, ...]`,
2010
+ * length `5 * n`. Cells without a defined value are `NaN`.
2011
+ */
2012
+ batch(high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
2013
+ reset(): void
2014
+ isReady(): boolean
2015
+ warmupPeriod(): number
2016
+ }
2017
+ export type HeikinAshiNode = HeikinAshi
2018
+ export declare class HeikinAshi {
2019
+ constructor()
2020
+ update(open: number, high: number, low: number, close: number): HeikinAshiValue | null
2021
+ /** Returns `[open0, high0, low0, close0, open1, ...]`, length `4 * n`. */
2022
+ batch(open: Array<number>, high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
2023
+ reset(): void
2024
+ isReady(): boolean
2025
+ warmupPeriod(): number
2026
+ }
2027
+ export type ValueAreaNode = ValueArea
2028
+ export declare class ValueArea {
2029
+ constructor(period: number, binCount: number, valueAreaPct: number)
2030
+ reset(): void
2031
+ isReady(): boolean
2032
+ warmupPeriod(): number
2033
+ update(high: number, low: number, volume: number): ValueAreaValue | null
2034
+ batch(high: Array<number>, low: Array<number>, volume: Array<number>): Array<number>
2035
+ }
2036
+ export type InitialBalanceNode = InitialBalance
2037
+ export declare class InitialBalance {
2038
+ constructor(period: number)
2039
+ reset(): void
2040
+ isReady(): boolean
2041
+ isLocked(): boolean
2042
+ warmupPeriod(): number
2043
+ update(high: number, low: number): InitialBalanceValue | null
2044
+ batch(high: Array<number>, low: Array<number>): Array<number>
2045
+ }
2046
+ export type OpeningRangeNode = OpeningRange
2047
+ export declare class OpeningRange {
2048
+ constructor(period: number)
2049
+ reset(): void
2050
+ isReady(): boolean
2051
+ isLocked(): boolean
2052
+ warmupPeriod(): number
2053
+ update(high: number, low: number, close: number): OpeningRangeValue | null
2054
+ batch(high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
2055
+ }
2056
+ export type DojiNode = Doji
2057
+ export declare class Doji {
2058
+ constructor()
2059
+ update(open: number, high: number, low: number, close: number): number | null
2060
+ batch(open: Array<number>, high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
2061
+ reset(): void
2062
+ isReady(): boolean
2063
+ warmupPeriod(): number
2064
+ }
2065
+ export type HammerNode = Hammer
2066
+ export declare class Hammer {
2067
+ constructor()
2068
+ update(open: number, high: number, low: number, close: number): number | null
2069
+ batch(open: Array<number>, high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
2070
+ reset(): void
2071
+ isReady(): boolean
2072
+ warmupPeriod(): number
2073
+ }
2074
+ export type InvertedHammerNode = InvertedHammer
2075
+ export declare class InvertedHammer {
2076
+ constructor()
2077
+ update(open: number, high: number, low: number, close: number): number | null
2078
+ batch(open: Array<number>, high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
2079
+ reset(): void
2080
+ isReady(): boolean
2081
+ warmupPeriod(): number
2082
+ }
2083
+ export type HangingManNode = HangingMan
2084
+ export declare class HangingMan {
2085
+ constructor()
2086
+ update(open: number, high: number, low: number, close: number): number | null
2087
+ batch(open: Array<number>, high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
2088
+ reset(): void
2089
+ isReady(): boolean
2090
+ warmupPeriod(): number
2091
+ }
2092
+ export type ShootingStarNode = ShootingStar
2093
+ export declare class ShootingStar {
2094
+ constructor()
2095
+ update(open: number, high: number, low: number, close: number): number | null
2096
+ batch(open: Array<number>, high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
2097
+ reset(): void
2098
+ isReady(): boolean
2099
+ warmupPeriod(): number
2100
+ }
2101
+ export type EngulfingNode = Engulfing
2102
+ export declare class Engulfing {
2103
+ constructor()
2104
+ update(open: number, high: number, low: number, close: number): number | null
2105
+ batch(open: Array<number>, high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
2106
+ reset(): void
2107
+ isReady(): boolean
2108
+ warmupPeriod(): number
2109
+ }
2110
+ export type HaramiNode = Harami
2111
+ export declare class Harami {
2112
+ constructor()
2113
+ update(open: number, high: number, low: number, close: number): number | null
2114
+ batch(open: Array<number>, high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
2115
+ reset(): void
2116
+ isReady(): boolean
2117
+ warmupPeriod(): number
2118
+ }
2119
+ export type MorningEveningStarNode = MorningEveningStar
2120
+ export declare class MorningEveningStar {
2121
+ constructor()
2122
+ update(open: number, high: number, low: number, close: number): number | null
2123
+ batch(open: Array<number>, high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
2124
+ reset(): void
2125
+ isReady(): boolean
2126
+ warmupPeriod(): number
2127
+ }
2128
+ export type ThreeSoldiersOrCrowsNode = ThreeSoldiersOrCrows
2129
+ export declare class ThreeSoldiersOrCrows {
2130
+ constructor()
2131
+ update(open: number, high: number, low: number, close: number): number | null
2132
+ batch(open: Array<number>, high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
2133
+ reset(): void
2134
+ isReady(): boolean
2135
+ warmupPeriod(): number
2136
+ }
2137
+ export type PiercingDarkCloudNode = PiercingDarkCloud
2138
+ export declare class PiercingDarkCloud {
2139
+ constructor()
2140
+ update(open: number, high: number, low: number, close: number): number | null
2141
+ batch(open: Array<number>, high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
2142
+ reset(): void
2143
+ isReady(): boolean
2144
+ warmupPeriod(): number
2145
+ }
2146
+ export type MarubozuNode = Marubozu
2147
+ export declare class Marubozu {
2148
+ constructor()
2149
+ update(open: number, high: number, low: number, close: number): number | null
2150
+ batch(open: Array<number>, high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
2151
+ reset(): void
2152
+ isReady(): boolean
2153
+ warmupPeriod(): number
2154
+ }
2155
+ export type TweezerNode = Tweezer
2156
+ export declare class Tweezer {
2157
+ constructor()
2158
+ update(open: number, high: number, low: number, close: number): number | null
2159
+ batch(open: Array<number>, high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
2160
+ reset(): void
2161
+ isReady(): boolean
2162
+ warmupPeriod(): number
2163
+ }
2164
+ export type SpinningTopNode = SpinningTop
2165
+ export declare class SpinningTop {
2166
+ constructor()
2167
+ update(open: number, high: number, low: number, close: number): number | null
2168
+ batch(open: Array<number>, high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
2169
+ reset(): void
2170
+ isReady(): boolean
2171
+ warmupPeriod(): number
2172
+ }
2173
+ export type ThreeInsideNode = ThreeInside
2174
+ export declare class ThreeInside {
2175
+ constructor()
2176
+ update(open: number, high: number, low: number, close: number): number | null
2177
+ batch(open: Array<number>, high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
2178
+ reset(): void
2179
+ isReady(): boolean
2180
+ warmupPeriod(): number
2181
+ }
2182
+ export type ThreeOutsideNode = ThreeOutside
2183
+ export declare class ThreeOutside {
2184
+ constructor()
2185
+ update(open: number, high: number, low: number, close: number): number | null
2186
+ batch(open: Array<number>, high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
2187
+ reset(): void
2188
+ isReady(): boolean
2189
+ warmupPeriod(): number
2190
+ }
2191
+ export type SharpeRatioNode = SharpeRatio
2192
+ export declare class SharpeRatio {
2193
+ constructor(period: number, riskFree: number)
2194
+ update(value: number): number | null
2195
+ batch(prices: Array<number>): Array<number>
2196
+ reset(): void
2197
+ isReady(): boolean
2198
+ warmupPeriod(): number
2199
+ }
2200
+ export type SortinoRatioNode = SortinoRatio
2201
+ export declare class SortinoRatio {
2202
+ constructor(period: number, mar: number)
2203
+ update(value: number): number | null
2204
+ batch(prices: Array<number>): Array<number>
2205
+ reset(): void
2206
+ isReady(): boolean
2207
+ warmupPeriod(): number
2208
+ }
2209
+ export type CalmarRatioNode = CalmarRatio
2210
+ export declare class CalmarRatio {
2211
+ constructor(period: number)
2212
+ update(value: number): number | null
2213
+ batch(prices: Array<number>): Array<number>
2214
+ reset(): void
2215
+ isReady(): boolean
2216
+ warmupPeriod(): number
2217
+ }
2218
+ export type OmegaRatioNode = OmegaRatio
2219
+ export declare class OmegaRatio {
2220
+ constructor(period: number, threshold: number)
2221
+ update(value: number): number | null
2222
+ batch(prices: Array<number>): Array<number>
2223
+ reset(): void
2224
+ isReady(): boolean
2225
+ warmupPeriod(): number
2226
+ }
2227
+ export type MaxDrawdownNode = MaxDrawdown
2228
+ export declare class MaxDrawdown {
2229
+ constructor(period: number)
2230
+ update(value: number): number | null
2231
+ batch(prices: Array<number>): Array<number>
2232
+ reset(): void
2233
+ isReady(): boolean
2234
+ warmupPeriod(): number
2235
+ }
2236
+ export type AverageDrawdownNode = AverageDrawdown
2237
+ export declare class AverageDrawdown {
2238
+ constructor(period: number)
2239
+ update(value: number): number | null
2240
+ batch(prices: Array<number>): Array<number>
2241
+ reset(): void
2242
+ isReady(): boolean
2243
+ warmupPeriod(): number
2244
+ }
2245
+ export type DrawdownDurationNode = DrawdownDuration
2246
+ export declare class DrawdownDuration {
2247
+ constructor()
2248
+ update(value: number): number | null
2249
+ batch(prices: Array<number>): Array<number>
2250
+ reset(): void
2251
+ isReady(): boolean
2252
+ warmupPeriod(): number
2253
+ }
2254
+ export type PainIndexNode = PainIndex
2255
+ export declare class PainIndex {
2256
+ constructor(period: number)
2257
+ update(value: number): number | null
2258
+ batch(prices: Array<number>): Array<number>
2259
+ reset(): void
2260
+ isReady(): boolean
2261
+ warmupPeriod(): number
2262
+ }
2263
+ export type ValueAtRiskNode = ValueAtRisk
2264
+ export declare class ValueAtRisk {
2265
+ constructor(period: number, confidence: number)
2266
+ update(value: number): number | null
2267
+ batch(prices: Array<number>): Array<number>
2268
+ reset(): void
2269
+ isReady(): boolean
2270
+ warmupPeriod(): number
2271
+ }
2272
+ export type ConditionalValueAtRiskNode = ConditionalValueAtRisk
2273
+ export declare class ConditionalValueAtRisk {
2274
+ constructor(period: number, confidence: number)
2275
+ update(value: number): number | null
2276
+ batch(prices: Array<number>): Array<number>
2277
+ reset(): void
2278
+ isReady(): boolean
2279
+ warmupPeriod(): number
2280
+ }
2281
+ export type ProfitFactorNode = ProfitFactor
2282
+ export declare class ProfitFactor {
2283
+ constructor(period: number)
2284
+ update(value: number): number | null
2285
+ batch(prices: Array<number>): Array<number>
2286
+ reset(): void
2287
+ isReady(): boolean
2288
+ warmupPeriod(): number
2289
+ }
2290
+ export type GainLossRatioNode = GainLossRatio
2291
+ export declare class GainLossRatio {
2292
+ constructor(period: number)
2293
+ update(value: number): number | null
2294
+ batch(prices: Array<number>): Array<number>
2295
+ reset(): void
2296
+ isReady(): boolean
2297
+ warmupPeriod(): number
2298
+ }
2299
+ export type RecoveryFactorNode = RecoveryFactor
2300
+ export declare class RecoveryFactor {
2301
+ constructor()
2302
+ update(value: number): number | null
2303
+ batch(prices: Array<number>): Array<number>
2304
+ reset(): void
2305
+ isReady(): boolean
2306
+ warmupPeriod(): number
2307
+ }
2308
+ export type KellyCriterionNode = KellyCriterion
2309
+ export declare class KellyCriterion {
2310
+ constructor(period: number)
2311
+ update(value: number): number | null
2312
+ batch(prices: Array<number>): Array<number>
2313
+ reset(): void
2314
+ isReady(): boolean
2315
+ warmupPeriod(): number
2316
+ }
2317
+ export type TreynorRatioNode = TreynorRatio
2318
+ export declare class TreynorRatio {
2319
+ constructor(period: number, riskFree: number)
2320
+ update(asset: number, benchmark: number): number | null
2321
+ batch(asset: Array<number>, benchmark: Array<number>): Array<number>
2322
+ reset(): void
2323
+ isReady(): boolean
2324
+ warmupPeriod(): number
2325
+ }
2326
+ export type InformationRatioNode = InformationRatio
2327
+ export declare class InformationRatio {
2328
+ constructor(period: number)
2329
+ update(asset: number, benchmark: number): number | null
2330
+ batch(asset: Array<number>, benchmark: Array<number>): Array<number>
2331
+ reset(): void
2332
+ isReady(): boolean
2333
+ warmupPeriod(): number
2334
+ }
2335
+ export type AlphaNode = Alpha
2336
+ export declare class Alpha {
2337
+ constructor(period: number, riskFree: number)
2338
+ update(asset: number, benchmark: number): number | null
2339
+ batch(asset: Array<number>, benchmark: Array<number>): Array<number>
2340
+ reset(): void
2341
+ isReady(): boolean
2342
+ warmupPeriod(): number
2343
+ }