wickra 0.5.2 → 0.5.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,5 +1,5 @@
1
1
  <p align="center">
2
- <a href="https://wickra.org"><img src="https://raw.githubusercontent.com/wickra-lib/.github/main/profile/wickra-banner.webp?v=367" alt="Wickra — streaming-first technical indicators" width="100%"></a>
2
+ <a href="https://wickra.org"><img src="https://raw.githubusercontent.com/wickra-lib/.github/main/profile/wickra-banner.webp?v=396" alt="Wickra — streaming-first technical indicators" width="100%"></a>
3
3
  </p>
4
4
 
5
5
  [![CI](https://github.com/wickra-lib/wickra/actions/workflows/ci.yml/badge.svg)](https://github.com/wickra-lib/wickra/actions/workflows/ci.yml)
@@ -48,7 +48,7 @@ Full documentation lives at **[docs.wickra.org](https://docs.wickra.org)**:
48
48
  [Node](https://docs.wickra.org/Quickstart-Node),
49
49
  [WASM](https://docs.wickra.org/Quickstart-WASM).
50
50
  - **Indicators** — a per-indicator deep dive (formula, parameters, warmup) for
51
- every one of the 367 indicators; start at the
51
+ every one of the 396 indicators; start at the
52
52
  [indicators overview](https://docs.wickra.org/Indicators-Overview).
53
53
  - **Reference** — [warmup periods](https://docs.wickra.org/Warmup-Periods),
54
54
  [streaming vs batch](https://docs.wickra.org/Streaming-vs-Batch),
@@ -136,7 +136,7 @@ python -m benchmarks.compare_libraries
136
136
 
137
137
  ## Indicators
138
138
 
139
- 367 streaming-first indicators across twenty-three families. Every one passes the
139
+ 396 streaming-first indicators across twenty-four families. Every one passes the
140
140
  `batch == streaming` equivalence test, reference-value tests, and reset
141
141
  semantics tests. Each has a per-indicator deep dive (formula, parameters,
142
142
  warmup) at [docs.wickra.org](https://docs.wickra.org/Indicators-Overview).
@@ -151,7 +151,7 @@ warmup) at [docs.wickra.org](https://docs.wickra.org/Indicators-Overview).
151
151
  | Bands & Channels | MA Envelope, Acceleration Bands, STARC Bands, ATR Bands, Hurst Channel, LinReg Channel, Standard Error Bands, Double Bollinger Bands, TTM Squeeze, Fractal Chaos Bands, VWAP StdDev Bands |
152
152
  | Trailing Stops | Parabolic SAR, Parabolic SAR Extended (SAREXT), SuperTrend, Chandelier Exit, Chande Kroll Stop, ATR Trailing Stop, HiLo Activator, Volty Stop, Yo-Yo Exit, Donchian Channel Stop, Percentage Trailing Stop, Step Trailing Stop, Renko Trailing Stop |
153
153
  | Volume | OBV, VWAP (cumulative + rolling), ADL, Volume-Price Trend, Chaikin Money Flow, Chaikin Oscillator, Force Index, Ease of Movement, Klinger Volume Oscillator, Volume Oscillator, NVI, PVI, Williams A/D, Anchored VWAP, Demand Index, TSV, VZO, Market Facilitation Index |
154
- | Price Statistics | Typical Price, Median Price, Weighted Close, Linear Regression, Linear Regression Slope, Z-Score, Linear Regression Angle, Variance, Coefficient of Variation, Skewness, Kurtosis, Standard Error, Detrended StdDev, R², Median Absolute Deviation, Autocorrelation, Hurst Exponent, Pearson Correlation, Beta, Pairwise Beta, Pair Spread Z-Score, Lead-Lag Cross-Correlation, Cointegration, Relative Strength A-vs-B, Spearman Correlation, Mid Price, Mid Point, Average Price, Linear Regression Intercept, Time Series Forecast, Rolling Correlation, Rolling Covariance, OU Half-Life, Spread Hurst, Distance SSD, Beta-Neutral Spread, Variance Ratio, Granger Causality, Kalman Hedge Ratio, Spread Bollinger Bands |
154
+ | Price Statistics | Typical Price, Median Price, Weighted Close, Linear Regression, Linear Regression Slope, Z-Score, Linear Regression Angle, Variance, Coefficient of Variation, Skewness, Kurtosis, Standard Error, Detrended StdDev, R², Median Absolute Deviation, Autocorrelation, Hurst Exponent, Pearson Correlation, Beta, Pairwise Beta, Pair Spread Z-Score, Lead-Lag Cross-Correlation, Cointegration, Relative Strength A-vs-B, Spearman Correlation, Mid Price, Mid Point, Average Price, Linear Regression Intercept, Time Series Forecast, Rolling Correlation, Rolling Covariance, OU Half-Life, Spread Hurst, Distance SSD, Beta-Neutral Spread, Variance Ratio, Granger Causality, Kalman Hedge Ratio, Spread Bollinger Bands, Spread AR(1) Coefficient |
155
155
  | Ehlers / Cycle (DSP) | MAMA, FAMA, Fisher Transform, Inverse Fisher Transform, SuperSmoother, Hilbert Dominant Cycle, Hilbert Phasor, Hilbert DC Phase, Hilbert Trend Mode, Sine Wave, Decycler, Decycler Oscillator, Roofing Filter, Center of Gravity, Cybernetic Cycle, Adaptive Cycle, Empirical Mode Decomposition, Ehlers Stochastic, Instantaneous Trendline |
156
156
  | Pivots & S/R | Classic Pivots, Fibonacci Pivots, Camarilla, Woodie Pivots, DeMark Pivots, Williams Fractals, ZigZag |
157
157
  | DeMark | TD Setup, TD Sequential, TD DeMarker, TD REI, TD Pressure, TD Combo, TD Countdown, TD Lines, TD Range Projection, TD Differential, TD Open, TD Risk Level |
@@ -160,7 +160,8 @@ warmup) at [docs.wickra.org](https://docs.wickra.org/Indicators-Overview).
160
160
  | Candlestick Patterns | Doji, Hammer, Inverted Hammer, Hanging Man, Shooting Star, Engulfing, Harami, Morning/Evening Star, Three White Soldiers/Black Crows, Piercing Line/Dark Cloud Cover, Marubozu, Tweezer, Spinning Top, Three Inside Up/Down, Three Outside Up/Down, Two Crows, Upside Gap Two Crows, Identical Three Crows, Three Line Strike, Three Stars in the South, Abandoned Baby, Advance Block, Belt-hold, Breakaway, Counterattack, Doji Star, Dragonfly Doji, Gravestone Doji, Long-Legged Doji, Rickshaw Man, Evening Doji Star, Morning Doji Star, Gap Side-by-Side White, High-Wave, Hikkake, Modified Hikkake, Homing Pigeon, On-Neck, In-Neck, Thrusting, Separating Lines, Kicking, Kicking by Length, Ladder Bottom, Mat Hold, Matching Low, Long Line, Short Line, Rising Three Methods, Falling Three Methods, Upside Gap Three Methods, Downside Gap Three Methods, Stalled Pattern, Stick Sandwich, Takuri, Closing Marubozu, Opening Marubozu, Tasuki Gap, Unique Three River, Concealing Baby Swallow |
161
161
  | Chart Patterns | Double Top / Bottom, Triple Top / Bottom, Head and Shoulders, Triangle (asc/desc/sym), Wedge (rising/falling), Flag / Pennant, Rectangle / Range, Cup and Handle |
162
162
  | Harmonic Patterns | AB=CD, Gartley, Butterfly, Bat, Crab, Shark, Cypher, Three Drives |
163
- | Microstructure | Order-Book Imbalance (Top-1 / Top-N / Full), Microprice, Quoted Spread, Depth Slope, Signed Volume, Cumulative Volume Delta, Trade Imbalance, Effective Spread, Realized Spread, Kyle's Lambda, Footprint |
163
+ | Fibonacci | Fibonacci Retracement, Fibonacci Extension, Fibonacci Projection, Auto-Fibonacci, Golden Pocket, Fibonacci Confluence, Fibonacci Fan, Fibonacci Arcs, Fibonacci Channel, Fibonacci Time Zones |
164
+ | Microstructure | Order-Book Imbalance (Top-1 / Top-N / Full), Microprice, Quoted Spread, Depth Slope, Signed Volume, Cumulative Volume Delta, Trade Imbalance, Effective Spread, Realized Spread, Kyle's Lambda, Footprint, Order Flow Imbalance, VPIN, Amihud Illiquidity, Roll Measure |
164
165
  | Derivatives | Funding Rate, Funding Rate Mean, Funding Rate Z-Score, Funding Basis, Open-Interest Delta, OI / Price Divergence, OI-Weighted Price, Long/Short Ratio, Taker Buy/Sell Ratio, Liquidation Features, Term-Structure Basis, Calendar Spread |
165
166
  | Market Profile | Value Area (POC / VAH / VAL), Volume Profile (histogram), TPO Profile, Initial Balance, Opening Range |
166
167
  | Market Breadth | Advance/Decline Line, Advance/Decline Ratio, Advance/Decline Volume Line, McClellan Oscillator, McClellan Summation Index, TRIN / Arms Index, Breadth Thrust, New Highs - New Lows, High-Low Index, Percent Above Moving Average, Up/Down Volume Ratio, Bullish Percent Index, Cumulative Volume Index, Absolute Breadth Index, TICK Index |
@@ -244,7 +245,7 @@ A Python live-trading example using the public `websockets` package lives at
244
245
  ```
245
246
  wickra/
246
247
  ├── crates/
247
- │ ├── wickra-core/ core engine + all 367 indicators
248
+ │ ├── wickra-core/ core engine + all 396 indicators
248
249
  │ ├── wickra/ top-level facade crate (publishes on crates.io) + benches/
249
250
  │ └── wickra-data/ CSV reader, tick aggregator, live exchange feeds
250
251
  ├── bindings/
package/index.d.ts CHANGED
@@ -362,6 +362,66 @@ export interface OvernightIntradayReturnValue {
362
362
  overnight: number
363
363
  intraday: number
364
364
  }
365
+ export interface FibRetracementValue {
366
+ level0: number
367
+ level236: number
368
+ level382: number
369
+ level500: number
370
+ level618: number
371
+ level786: number
372
+ level1000: number
373
+ }
374
+ export interface FibExtensionValue {
375
+ level1272: number
376
+ level1414: number
377
+ level1618: number
378
+ level2000: number
379
+ level2618: number
380
+ }
381
+ export interface FibProjectionValue {
382
+ level618: number
383
+ level1000: number
384
+ level1618: number
385
+ level2618: number
386
+ }
387
+ export interface AutoFibValue {
388
+ level0: number
389
+ level236: number
390
+ level382: number
391
+ level500: number
392
+ level618: number
393
+ level786: number
394
+ level1000: number
395
+ }
396
+ export interface GoldenPocketValue {
397
+ low: number
398
+ mid: number
399
+ high: number
400
+ }
401
+ export interface FibConfluenceValue {
402
+ price: number
403
+ strength: number
404
+ }
405
+ export interface FibFanValue {
406
+ fan382: number
407
+ fan500: number
408
+ fan618: number
409
+ }
410
+ export interface FibArcsValue {
411
+ arc382: number
412
+ arc500: number
413
+ arc618: number
414
+ }
415
+ export interface FibChannelValue {
416
+ base: number
417
+ level618: number
418
+ level1000: number
419
+ level1618: number
420
+ }
421
+ export interface FibTimeZonesValue {
422
+ onZone: number
423
+ barsToNext: number
424
+ }
365
425
  export type SmaNode = SMA
366
426
  export declare class SMA {
367
427
  constructor(period: number)
@@ -749,6 +809,96 @@ export declare class TSF {
749
809
  isReady(): boolean
750
810
  warmupPeriod(): number
751
811
  }
812
+ export type LogReturnNode = LogReturn
813
+ export declare class LogReturn {
814
+ constructor(period: number)
815
+ update(value: number): number | null
816
+ batch(prices: Array<number>): Array<number>
817
+ reset(): void
818
+ isReady(): boolean
819
+ warmupPeriod(): number
820
+ }
821
+ export type RealizedVolatilityNode = RealizedVolatility
822
+ export declare class RealizedVolatility {
823
+ constructor(period: number)
824
+ update(value: number): number | null
825
+ batch(prices: Array<number>): Array<number>
826
+ reset(): void
827
+ isReady(): boolean
828
+ warmupPeriod(): number
829
+ }
830
+ export type RollingIqrNode = RollingIqr
831
+ export declare class RollingIqr {
832
+ constructor(period: number)
833
+ update(value: number): number | null
834
+ batch(prices: Array<number>): Array<number>
835
+ reset(): void
836
+ isReady(): boolean
837
+ warmupPeriod(): number
838
+ }
839
+ export type RollingPercentileRankNode = RollingPercentileRank
840
+ export declare class RollingPercentileRank {
841
+ constructor(period: number)
842
+ update(value: number): number | null
843
+ batch(prices: Array<number>): Array<number>
844
+ reset(): void
845
+ isReady(): boolean
846
+ warmupPeriod(): number
847
+ }
848
+ export type TrendLabelNode = TrendLabel
849
+ export declare class TrendLabel {
850
+ constructor(period: number)
851
+ update(value: number): number | null
852
+ batch(prices: Array<number>): Array<number>
853
+ reset(): void
854
+ isReady(): boolean
855
+ warmupPeriod(): number
856
+ }
857
+ export type WinRateNode = WinRate
858
+ export declare class WinRate {
859
+ constructor(period: number)
860
+ update(value: number): number | null
861
+ batch(prices: Array<number>): Array<number>
862
+ reset(): void
863
+ isReady(): boolean
864
+ warmupPeriod(): number
865
+ }
866
+ export type ExpectancyNode = Expectancy
867
+ export declare class Expectancy {
868
+ constructor(period: number)
869
+ update(value: number): number | null
870
+ batch(prices: Array<number>): Array<number>
871
+ reset(): void
872
+ isReady(): boolean
873
+ warmupPeriod(): number
874
+ }
875
+ export type JumpIndicatorNode = JumpIndicator
876
+ export declare class JumpIndicator {
877
+ constructor(period: number, threshold: number)
878
+ update(value: number): number | null
879
+ batch(prices: Array<number>): Array<number>
880
+ reset(): void
881
+ isReady(): boolean
882
+ warmupPeriod(): number
883
+ }
884
+ export type RegimeLabelNode = RegimeLabel
885
+ export declare class RegimeLabel {
886
+ constructor(volPeriod: number, lookback: number)
887
+ update(value: number): number | null
888
+ batch(prices: Array<number>): Array<number>
889
+ reset(): void
890
+ isReady(): boolean
891
+ warmupPeriod(): number
892
+ }
893
+ export type RollingQuantileNode = RollingQuantile
894
+ export declare class RollingQuantile {
895
+ constructor(period: number, quantile: number)
896
+ update(value: number): number | null
897
+ batch(prices: Array<number>): Array<number>
898
+ reset(): void
899
+ isReady(): boolean
900
+ warmupPeriod(): number
901
+ }
752
902
  export type AutocorrelationNode = Autocorrelation
753
903
  export declare class Autocorrelation {
754
904
  constructor(period: number, lag: number)
@@ -806,6 +956,19 @@ export declare class PairwiseBeta {
806
956
  isReady(): boolean
807
957
  warmupPeriod(): number
808
958
  }
959
+ export type SpreadAr1CoefficientNode = SpreadAr1Coefficient
960
+ export declare class SpreadAr1Coefficient {
961
+ constructor(period: number)
962
+ update(x: number, y: number): number | null
963
+ /**
964
+ * Batch over two equally-sized arrays. Returns a length-`n` array
965
+ * with `NaN` for warmup positions.
966
+ */
967
+ batch(x: Array<number>, y: Array<number>): Array<number>
968
+ reset(): void
969
+ isReady(): boolean
970
+ warmupPeriod(): number
971
+ }
809
972
  export type SpearmanCorrelationNode = SpearmanCorrelation
810
973
  export declare class SpearmanCorrelation {
811
974
  constructor(period: number)
@@ -1170,6 +1333,42 @@ export declare class HT_PHASOR {
1170
1333
  isReady(): boolean
1171
1334
  warmupPeriod(): number
1172
1335
  }
1336
+ export type CloseVsOpenNode = CloseVsOpen
1337
+ export declare class CloseVsOpen {
1338
+ constructor()
1339
+ update(open: number, high: number, low: number, close: number): number | null
1340
+ batch(open: Array<number>, high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
1341
+ reset(): void
1342
+ isReady(): boolean
1343
+ warmupPeriod(): number
1344
+ }
1345
+ export type BodySizePctNode = BodySizePct
1346
+ export declare class BodySizePct {
1347
+ constructor()
1348
+ update(open: number, high: number, low: number, close: number): number | null
1349
+ batch(open: Array<number>, high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
1350
+ reset(): void
1351
+ isReady(): boolean
1352
+ warmupPeriod(): number
1353
+ }
1354
+ export type WickRatioNode = WickRatio
1355
+ export declare class WickRatio {
1356
+ constructor()
1357
+ update(open: number, high: number, low: number, close: number): number | null
1358
+ batch(open: Array<number>, high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
1359
+ reset(): void
1360
+ isReady(): boolean
1361
+ warmupPeriod(): number
1362
+ }
1363
+ export type HighLowRangeNode = HighLowRange
1364
+ export declare class HighLowRange {
1365
+ constructor()
1366
+ update(open: number, high: number, low: number, close: number): number | null
1367
+ batch(open: Array<number>, high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
1368
+ reset(): void
1369
+ isReady(): boolean
1370
+ warmupPeriod(): number
1371
+ }
1173
1372
  export type StochNode = Stochastic
1174
1373
  export declare class Stochastic {
1175
1374
  constructor(kPeriod: number, dPeriod: number)
@@ -3257,6 +3456,42 @@ export declare class TradeImbalance {
3257
3456
  isReady(): boolean
3258
3457
  warmupPeriod(): number
3259
3458
  }
3459
+ export type OrderFlowImbalanceNode = OrderFlowImbalance
3460
+ export declare class OrderFlowImbalance {
3461
+ constructor(period: number)
3462
+ update(bidPx: Array<number>, bidSz: Array<number>, askPx: Array<number>, askSz: Array<number>): number | null
3463
+ batch(snapshots: Array<ObSnapshot>): Array<number>
3464
+ reset(): void
3465
+ isReady(): boolean
3466
+ warmupPeriod(): number
3467
+ }
3468
+ export type VpinNode = Vpin
3469
+ export declare class Vpin {
3470
+ constructor(bucketVolume: number, numBuckets: number)
3471
+ update(price: number, size: number, isBuy: boolean): number | null
3472
+ batch(price: Array<number>, size: Array<number>, isBuy: Array<boolean>): Array<number>
3473
+ reset(): void
3474
+ isReady(): boolean
3475
+ warmupPeriod(): number
3476
+ }
3477
+ export type AmihudIlliquidityNode = AmihudIlliquidity
3478
+ export declare class AmihudIlliquidity {
3479
+ constructor(period: number)
3480
+ update(price: number, size: number, isBuy: boolean): number | null
3481
+ batch(price: Array<number>, size: Array<number>, isBuy: Array<boolean>): Array<number>
3482
+ reset(): void
3483
+ isReady(): boolean
3484
+ warmupPeriod(): number
3485
+ }
3486
+ export type RollMeasureNode = RollMeasure
3487
+ export declare class RollMeasure {
3488
+ constructor(period: number)
3489
+ update(price: number, size: number, isBuy: boolean): number | null
3490
+ batch(price: Array<number>, size: Array<number>, isBuy: Array<boolean>): Array<number>
3491
+ reset(): void
3492
+ isReady(): boolean
3493
+ warmupPeriod(): number
3494
+ }
3260
3495
  export type EffectiveSpreadNode = EffectiveSpread
3261
3496
  export declare class EffectiveSpread {
3262
3497
  constructor()
@@ -3832,3 +4067,93 @@ export declare class OvernightIntradayReturn {
3832
4067
  isReady(): boolean
3833
4068
  warmupPeriod(): number
3834
4069
  }
4070
+ export type FibRetracementNode = FibRetracement
4071
+ export declare class FibRetracement {
4072
+ constructor()
4073
+ update(high: number, low: number): FibRetracementValue | null
4074
+ batch(high: Array<number>, low: Array<number>): Array<number>
4075
+ reset(): void
4076
+ isReady(): boolean
4077
+ warmupPeriod(): number
4078
+ }
4079
+ export type FibExtensionNode = FibExtension
4080
+ export declare class FibExtension {
4081
+ constructor()
4082
+ update(high: number, low: number): FibExtensionValue | null
4083
+ batch(high: Array<number>, low: Array<number>): Array<number>
4084
+ reset(): void
4085
+ isReady(): boolean
4086
+ warmupPeriod(): number
4087
+ }
4088
+ export type FibProjectionNode = FibProjection
4089
+ export declare class FibProjection {
4090
+ constructor()
4091
+ update(high: number, low: number): FibProjectionValue | null
4092
+ batch(high: Array<number>, low: Array<number>): Array<number>
4093
+ reset(): void
4094
+ isReady(): boolean
4095
+ warmupPeriod(): number
4096
+ }
4097
+ export type AutoFibNode = AutoFib
4098
+ export declare class AutoFib {
4099
+ constructor()
4100
+ update(high: number, low: number): AutoFibValue | null
4101
+ batch(high: Array<number>, low: Array<number>): Array<number>
4102
+ reset(): void
4103
+ isReady(): boolean
4104
+ warmupPeriod(): number
4105
+ }
4106
+ export type GoldenPocketNode = GoldenPocket
4107
+ export declare class GoldenPocket {
4108
+ constructor()
4109
+ update(high: number, low: number): GoldenPocketValue | null
4110
+ batch(high: Array<number>, low: Array<number>): Array<number>
4111
+ reset(): void
4112
+ isReady(): boolean
4113
+ warmupPeriod(): number
4114
+ }
4115
+ export type FibConfluenceNode = FibConfluence
4116
+ export declare class FibConfluence {
4117
+ constructor()
4118
+ update(high: number, low: number): FibConfluenceValue | null
4119
+ batch(high: Array<number>, low: Array<number>): Array<number>
4120
+ reset(): void
4121
+ isReady(): boolean
4122
+ warmupPeriod(): number
4123
+ }
4124
+ export type FibFanNode = FibFan
4125
+ export declare class FibFan {
4126
+ constructor()
4127
+ update(high: number, low: number): FibFanValue | null
4128
+ batch(high: Array<number>, low: Array<number>): Array<number>
4129
+ reset(): void
4130
+ isReady(): boolean
4131
+ warmupPeriod(): number
4132
+ }
4133
+ export type FibArcsNode = FibArcs
4134
+ export declare class FibArcs {
4135
+ constructor()
4136
+ update(high: number, low: number): FibArcsValue | null
4137
+ batch(high: Array<number>, low: Array<number>): Array<number>
4138
+ reset(): void
4139
+ isReady(): boolean
4140
+ warmupPeriod(): number
4141
+ }
4142
+ export type FibChannelNode = FibChannel
4143
+ export declare class FibChannel {
4144
+ constructor()
4145
+ update(high: number, low: number): FibChannelValue | null
4146
+ batch(high: Array<number>, low: Array<number>): Array<number>
4147
+ reset(): void
4148
+ isReady(): boolean
4149
+ warmupPeriod(): number
4150
+ }
4151
+ export type FibTimeZonesNode = FibTimeZones
4152
+ export declare class FibTimeZones {
4153
+ constructor()
4154
+ update(high: number, low: number): FibTimeZonesValue | null
4155
+ batch(high: Array<number>, low: Array<number>): Array<number>
4156
+ reset(): void
4157
+ isReady(): boolean
4158
+ warmupPeriod(): number
4159
+ }
package/index.js CHANGED
@@ -310,7 +310,7 @@ if (!nativeBinding) {
310
310
  throw new Error(`Failed to load native binding`)
311
311
  }
312
312
 
313
- const { version, SMA, EMA, WMA, RSI, DEMA, TEMA, HMA, ROC, TRIX, SMMA, TRIMA, ZLEMA, MOM, CMO, DPO, StdDev, UlcerIndex, VerticalHorizontalFilter, ZScore, McGinleyDynamic, FRAMA, SuperSmoother, FisherTransform, Decycler, CenterOfGravity, CyberneticCycle, InstantaneousTrendline, EhlersStochastic, RVIVolatility, Variance, CoefficientOfVariation, Skewness, Kurtosis, StandardError, DetrendedStdDev, RSquared, MedianAbsoluteDeviation, MIDPOINT, ROCP, ROCR, ROCR100, LINEARREG_INTERCEPT, TSF, Autocorrelation, HurstExponent, PearsonCorrelation, Beta, PairwiseBeta, SpearmanCorrelation, RollingCorrelation, RollingCovariance, OuHalfLife, SpreadHurst, DistanceSsd, BetaNeutralSpread, PairSpreadZScore, LeadLagCrossCorrelation, Cointegration, RelativeStrengthAB, VarianceRatio, GrangerCausality, KalmanHedgeRatio, SpreadBollingerBands, MACD, MACDFIX, MACDEXT, BollingerBands, ATR, PLUS_DM, MINUS_DM, PLUS_DI, MINUS_DI, DX, MIDPRICE, AVGPRICE, SAREXT, HT_PHASOR, Stochastic, OBV, ADX, ADXR, CCI, WilliamsR, MFI, PSAR, Keltner, Donchian, VWAP, RollingVWAP, AwesomeOscillator, Aroon, Inertia, ConnorsRSI, LaguerreRSI, SMI, KST, PGO, RVI, AwesomeOscillatorHistogram, STC, ElderImpulse, ZeroLagMACD, CFO, APO, KAMA, EVWMA, Alligator, JMA, VIDYA, ALMA, T3, TSI, PMO, TII, ADL, VolumePriceTrend, ChaikinMoneyFlow, ChaikinOscillator, ForceIndex, NVI, PVI, VolumeOscillator, KVO, WilliamsAD, AnchoredRSI, AnchoredVWAP, DemandIndex, TSV, VZO, MarketFacilitationIndex, EaseOfMovement, SuperTrend, ChandelierExit, ChandeKrollStop, AtrTrailingStop, HiLoActivator, VoltyStop, YoyoExit, DonchianStop, PercentageTrailingStop, StepTrailingStop, RenkoTrailingStop, TypicalPrice, MedianPrice, WeightedClose, LinearRegression, LinRegSlope, AcceleratorOscillator, BalanceOfPower, ChoppinessIndex, TrueRange, ChaikinVolatility, YangZhangVolatility, RogersSatchellVolatility, GarmanKlassVolatility, ParkinsonVolatility, LinRegAngle, BollingerBandwidth, PercentB, NATR, HistoricalVolatility, AroonOscillator, WaveTrend, RWI, Vortex, MassIndex, StochRSI, UltimateOscillator, PPO, Coppock, VWMA, MaEnvelope, AccelerationBands, StarcBands, AtrBands, HurstChannel, LinRegChannel, StandardErrorBands, DoubleBollinger, TtmSqueeze, FractalChaosBands, VwapStdDevBands, ClassicPivots, FibonacciPivots, Camarilla, WoodiePivots, DemarkPivots, WilliamsFractals, ZigZag, TDSetup, TDSequential, TDDeMarker, TDREI, TDPressure, TDCombo, TDCountdown, TDLines, TDRangeProjection, TDDifferential, TDOpen, TDRiskLevel, InverseFisherTransform, DecyclerOscillator, RoofingFilter, EmpiricalModeDecomposition, HT_DCPHASE, HT_TRENDMODE, HilbertDominantCycle, AdaptiveCycle, SineWave, MAMA, FAMA, Ichimoku, HeikinAshi, ValueArea, VolumeProfile, TpoProfile, InitialBalance, OpeningRange, Doji, Hammer, InvertedHammer, HangingMan, ShootingStar, Engulfing, Harami, MorningEveningStar, ThreeSoldiersOrCrows, PiercingDarkCloud, Marubozu, Tweezer, SpinningTop, ThreeInside, ThreeOutside, TwoCrows, UpsideGapTwoCrows, IdenticalThreeCrows, ThreeLineStrike, ThreeStarsInSouth, AbandonedBaby, AdvanceBlock, BeltHold, Breakaway, Counterattack, DojiStar, DragonflyDoji, GravestoneDoji, LongLeggedDoji, RickshawMan, EveningDojiStar, MorningDojiStar, GapSideBySideWhite, HighWave, Hikkake, HikkakeModified, HomingPigeon, OnNeck, InNeck, Thrusting, SeparatingLines, Kicking, KickingByLength, LadderBottom, MatHold, MatchingLow, LongLine, ShortLine, RisingThreeMethods, FallingThreeMethods, UpsideGapThreeMethods, DownsideGapThreeMethods, StalledPattern, StickSandwich, Takuri, ClosingMarubozu, OpeningMarubozu, TasukiGap, UniqueThreeRiver, ConcealingBabySwallow, DoubleTopBottom, TripleTopBottom, HeadAndShoulders, Triangle, Wedge, FlagPennant, RectangleRange, CupAndHandle, Abcd, Gartley, Butterfly, Bat, Crab, Shark, Cypher, ThreeDrives, OrderBookImbalanceTop1, OrderBookImbalanceFull, Microprice, QuotedSpread, DepthSlope, OrderBookImbalanceTopN, SignedVolume, CumulativeVolumeDelta, TradeImbalance, EffectiveSpread, RealizedSpread, KylesLambda, Footprint, FundingRate, FundingRateMean, FundingRateZScore, FundingBasis, OpenInterestDelta, OIPriceDivergence, OIWeighted, LongShortRatio, TakerBuySellRatio, LiquidationFeatures, TermStructureBasis, CalendarSpread, AdvanceDecline, AdvanceDeclineRatio, AdVolumeLine, McClellanOscillator, McClellanSummationIndex, Trin, BreadthThrust, NewHighsNewLows, HighLowIndex, PercentAboveMa, UpDownVolumeRatio, BullishPercentIndex, CumulativeVolumeIndex, AbsoluteBreadthIndex, TickIndex, SharpeRatio, SortinoRatio, CalmarRatio, OmegaRatio, MaxDrawdown, AverageDrawdown, DrawdownDuration, PainIndex, ValueAtRisk, ConditionalValueAtRisk, ProfitFactor, GainLossRatio, RecoveryFactor, KellyCriterion, TreynorRatio, InformationRatio, RenkoBars, KagiBars, PointAndFigureBars, Alpha, SessionVwap, OvernightGap, SeasonalZScore, TimeOfDayReturnProfile, IntradayVolatilityProfile, VolumeByTimeProfile, DayOfWeekProfile, AverageDailyRange, TurnOfMonth, SessionHighLow, SessionRange, OvernightIntradayReturn } = nativeBinding
313
+ const { version, SMA, EMA, WMA, RSI, DEMA, TEMA, HMA, ROC, TRIX, SMMA, TRIMA, ZLEMA, MOM, CMO, DPO, StdDev, UlcerIndex, VerticalHorizontalFilter, ZScore, McGinleyDynamic, FRAMA, SuperSmoother, FisherTransform, Decycler, CenterOfGravity, CyberneticCycle, InstantaneousTrendline, EhlersStochastic, RVIVolatility, Variance, CoefficientOfVariation, Skewness, Kurtosis, StandardError, DetrendedStdDev, RSquared, MedianAbsoluteDeviation, MIDPOINT, ROCP, ROCR, ROCR100, LINEARREG_INTERCEPT, TSF, LogReturn, RealizedVolatility, RollingIqr, RollingPercentileRank, TrendLabel, WinRate, Expectancy, JumpIndicator, RegimeLabel, RollingQuantile, Autocorrelation, HurstExponent, PearsonCorrelation, Beta, PairwiseBeta, SpreadAr1Coefficient, SpearmanCorrelation, RollingCorrelation, RollingCovariance, OuHalfLife, SpreadHurst, DistanceSsd, BetaNeutralSpread, PairSpreadZScore, LeadLagCrossCorrelation, Cointegration, RelativeStrengthAB, VarianceRatio, GrangerCausality, KalmanHedgeRatio, SpreadBollingerBands, MACD, MACDFIX, MACDEXT, BollingerBands, ATR, PLUS_DM, MINUS_DM, PLUS_DI, MINUS_DI, DX, MIDPRICE, AVGPRICE, SAREXT, HT_PHASOR, CloseVsOpen, BodySizePct, WickRatio, HighLowRange, Stochastic, OBV, ADX, ADXR, CCI, WilliamsR, MFI, PSAR, Keltner, Donchian, VWAP, RollingVWAP, AwesomeOscillator, Aroon, Inertia, ConnorsRSI, LaguerreRSI, SMI, KST, PGO, RVI, AwesomeOscillatorHistogram, STC, ElderImpulse, ZeroLagMACD, CFO, APO, KAMA, EVWMA, Alligator, JMA, VIDYA, ALMA, T3, TSI, PMO, TII, ADL, VolumePriceTrend, ChaikinMoneyFlow, ChaikinOscillator, ForceIndex, NVI, PVI, VolumeOscillator, KVO, WilliamsAD, AnchoredRSI, AnchoredVWAP, DemandIndex, TSV, VZO, MarketFacilitationIndex, EaseOfMovement, SuperTrend, ChandelierExit, ChandeKrollStop, AtrTrailingStop, HiLoActivator, VoltyStop, YoyoExit, DonchianStop, PercentageTrailingStop, StepTrailingStop, RenkoTrailingStop, TypicalPrice, MedianPrice, WeightedClose, LinearRegression, LinRegSlope, AcceleratorOscillator, BalanceOfPower, ChoppinessIndex, TrueRange, ChaikinVolatility, YangZhangVolatility, RogersSatchellVolatility, GarmanKlassVolatility, ParkinsonVolatility, LinRegAngle, BollingerBandwidth, PercentB, NATR, HistoricalVolatility, AroonOscillator, WaveTrend, RWI, Vortex, MassIndex, StochRSI, UltimateOscillator, PPO, Coppock, VWMA, MaEnvelope, AccelerationBands, StarcBands, AtrBands, HurstChannel, LinRegChannel, StandardErrorBands, DoubleBollinger, TtmSqueeze, FractalChaosBands, VwapStdDevBands, ClassicPivots, FibonacciPivots, Camarilla, WoodiePivots, DemarkPivots, WilliamsFractals, ZigZag, TDSetup, TDSequential, TDDeMarker, TDREI, TDPressure, TDCombo, TDCountdown, TDLines, TDRangeProjection, TDDifferential, TDOpen, TDRiskLevel, InverseFisherTransform, DecyclerOscillator, RoofingFilter, EmpiricalModeDecomposition, HT_DCPHASE, HT_TRENDMODE, HilbertDominantCycle, AdaptiveCycle, SineWave, MAMA, FAMA, Ichimoku, HeikinAshi, ValueArea, VolumeProfile, TpoProfile, InitialBalance, OpeningRange, Doji, Hammer, InvertedHammer, HangingMan, ShootingStar, Engulfing, Harami, MorningEveningStar, ThreeSoldiersOrCrows, PiercingDarkCloud, Marubozu, Tweezer, SpinningTop, ThreeInside, ThreeOutside, TwoCrows, UpsideGapTwoCrows, IdenticalThreeCrows, ThreeLineStrike, ThreeStarsInSouth, AbandonedBaby, AdvanceBlock, BeltHold, Breakaway, Counterattack, DojiStar, DragonflyDoji, GravestoneDoji, LongLeggedDoji, RickshawMan, EveningDojiStar, MorningDojiStar, GapSideBySideWhite, HighWave, Hikkake, HikkakeModified, HomingPigeon, OnNeck, InNeck, Thrusting, SeparatingLines, Kicking, KickingByLength, LadderBottom, MatHold, MatchingLow, LongLine, ShortLine, RisingThreeMethods, FallingThreeMethods, UpsideGapThreeMethods, DownsideGapThreeMethods, StalledPattern, StickSandwich, Takuri, ClosingMarubozu, OpeningMarubozu, TasukiGap, UniqueThreeRiver, ConcealingBabySwallow, DoubleTopBottom, TripleTopBottom, HeadAndShoulders, Triangle, Wedge, FlagPennant, RectangleRange, CupAndHandle, Abcd, Gartley, Butterfly, Bat, Crab, Shark, Cypher, ThreeDrives, OrderBookImbalanceTop1, OrderBookImbalanceFull, Microprice, QuotedSpread, DepthSlope, OrderBookImbalanceTopN, SignedVolume, CumulativeVolumeDelta, TradeImbalance, OrderFlowImbalance, Vpin, AmihudIlliquidity, RollMeasure, EffectiveSpread, RealizedSpread, KylesLambda, Footprint, FundingRate, FundingRateMean, FundingRateZScore, FundingBasis, OpenInterestDelta, OIPriceDivergence, OIWeighted, LongShortRatio, TakerBuySellRatio, LiquidationFeatures, TermStructureBasis, CalendarSpread, AdvanceDecline, AdvanceDeclineRatio, AdVolumeLine, McClellanOscillator, McClellanSummationIndex, Trin, BreadthThrust, NewHighsNewLows, HighLowIndex, PercentAboveMa, UpDownVolumeRatio, BullishPercentIndex, CumulativeVolumeIndex, AbsoluteBreadthIndex, TickIndex, SharpeRatio, SortinoRatio, CalmarRatio, OmegaRatio, MaxDrawdown, AverageDrawdown, DrawdownDuration, PainIndex, ValueAtRisk, ConditionalValueAtRisk, ProfitFactor, GainLossRatio, RecoveryFactor, KellyCriterion, TreynorRatio, InformationRatio, RenkoBars, KagiBars, PointAndFigureBars, Alpha, SessionVwap, OvernightGap, SeasonalZScore, TimeOfDayReturnProfile, IntradayVolatilityProfile, VolumeByTimeProfile, DayOfWeekProfile, AverageDailyRange, TurnOfMonth, SessionHighLow, SessionRange, OvernightIntradayReturn, FibRetracement, FibExtension, FibProjection, AutoFib, GoldenPocket, FibConfluence, FibFan, FibArcs, FibChannel, FibTimeZones } = nativeBinding
314
314
 
315
315
  module.exports.version = version
316
316
  module.exports.SMA = SMA
@@ -356,11 +356,22 @@ module.exports.ROCR = ROCR
356
356
  module.exports.ROCR100 = ROCR100
357
357
  module.exports.LINEARREG_INTERCEPT = LINEARREG_INTERCEPT
358
358
  module.exports.TSF = TSF
359
+ module.exports.LogReturn = LogReturn
360
+ module.exports.RealizedVolatility = RealizedVolatility
361
+ module.exports.RollingIqr = RollingIqr
362
+ module.exports.RollingPercentileRank = RollingPercentileRank
363
+ module.exports.TrendLabel = TrendLabel
364
+ module.exports.WinRate = WinRate
365
+ module.exports.Expectancy = Expectancy
366
+ module.exports.JumpIndicator = JumpIndicator
367
+ module.exports.RegimeLabel = RegimeLabel
368
+ module.exports.RollingQuantile = RollingQuantile
359
369
  module.exports.Autocorrelation = Autocorrelation
360
370
  module.exports.HurstExponent = HurstExponent
361
371
  module.exports.PearsonCorrelation = PearsonCorrelation
362
372
  module.exports.Beta = Beta
363
373
  module.exports.PairwiseBeta = PairwiseBeta
374
+ module.exports.SpreadAr1Coefficient = SpreadAr1Coefficient
364
375
  module.exports.SpearmanCorrelation = SpearmanCorrelation
365
376
  module.exports.RollingCorrelation = RollingCorrelation
366
377
  module.exports.RollingCovariance = RollingCovariance
@@ -390,6 +401,10 @@ module.exports.MIDPRICE = MIDPRICE
390
401
  module.exports.AVGPRICE = AVGPRICE
391
402
  module.exports.SAREXT = SAREXT
392
403
  module.exports.HT_PHASOR = HT_PHASOR
404
+ module.exports.CloseVsOpen = CloseVsOpen
405
+ module.exports.BodySizePct = BodySizePct
406
+ module.exports.WickRatio = WickRatio
407
+ module.exports.HighLowRange = HighLowRange
393
408
  module.exports.Stochastic = Stochastic
394
409
  module.exports.OBV = OBV
395
410
  module.exports.ADX = ADX
@@ -617,6 +632,10 @@ module.exports.OrderBookImbalanceTopN = OrderBookImbalanceTopN
617
632
  module.exports.SignedVolume = SignedVolume
618
633
  module.exports.CumulativeVolumeDelta = CumulativeVolumeDelta
619
634
  module.exports.TradeImbalance = TradeImbalance
635
+ module.exports.OrderFlowImbalance = OrderFlowImbalance
636
+ module.exports.Vpin = Vpin
637
+ module.exports.AmihudIlliquidity = AmihudIlliquidity
638
+ module.exports.RollMeasure = RollMeasure
620
639
  module.exports.EffectiveSpread = EffectiveSpread
621
640
  module.exports.RealizedSpread = RealizedSpread
622
641
  module.exports.KylesLambda = KylesLambda
@@ -680,3 +699,13 @@ module.exports.TurnOfMonth = TurnOfMonth
680
699
  module.exports.SessionHighLow = SessionHighLow
681
700
  module.exports.SessionRange = SessionRange
682
701
  module.exports.OvernightIntradayReturn = OvernightIntradayReturn
702
+ module.exports.FibRetracement = FibRetracement
703
+ module.exports.FibExtension = FibExtension
704
+ module.exports.FibProjection = FibProjection
705
+ module.exports.AutoFib = AutoFib
706
+ module.exports.GoldenPocket = GoldenPocket
707
+ module.exports.FibConfluence = FibConfluence
708
+ module.exports.FibFan = FibFan
709
+ module.exports.FibArcs = FibArcs
710
+ module.exports.FibChannel = FibChannel
711
+ module.exports.FibTimeZones = FibTimeZones
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "wickra-darwin-arm64",
3
- "version": "0.5.2",
3
+ "version": "0.5.4",
4
4
  "description": "Native binding for wickra (macOS Apple Silicon). Installed automatically as an optional dependency of wickra on matching platforms.",
5
5
  "main": "wickra.darwin-arm64.node",
6
6
  "files": [
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "wickra-darwin-x64",
3
- "version": "0.5.2",
3
+ "version": "0.5.4",
4
4
  "description": "Native binding for wickra (macOS Intel). Installed automatically as an optional dependency of wickra on matching platforms.",
5
5
  "main": "wickra.darwin-x64.node",
6
6
  "files": [
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "wickra-linux-arm64-gnu",
3
- "version": "0.5.2",
3
+ "version": "0.5.4",
4
4
  "description": "Native binding for wickra (linux arm64 GNU). Installed automatically as an optional dependency of wickra on matching platforms.",
5
5
  "main": "wickra.linux-arm64-gnu.node",
6
6
  "files": [
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "wickra-linux-x64-gnu",
3
- "version": "0.5.2",
3
+ "version": "0.5.4",
4
4
  "description": "Native binding for wickra (linux x64 GNU). Installed automatically as an optional dependency of wickra on matching platforms.",
5
5
  "main": "wickra.linux-x64-gnu.node",
6
6
  "files": [
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "wickra-win32-arm64-msvc",
3
- "version": "0.5.2",
3
+ "version": "0.5.4",
4
4
  "description": "Native binding for wickra (Windows arm64 MSVC). Installed automatically as an optional dependency of wickra on matching platforms.",
5
5
  "main": "wickra.win32-arm64-msvc.node",
6
6
  "files": [
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "wickra-win32-x64-msvc",
3
- "version": "0.5.2",
3
+ "version": "0.5.4",
4
4
  "description": "Native binding for wickra (Windows x64 MSVC). Installed automatically as an optional dependency of wickra on matching platforms.",
5
5
  "main": "wickra.win32-x64-msvc.node",
6
6
  "files": [
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "wickra",
3
- "version": "0.5.2",
3
+ "version": "0.5.4",
4
4
  "description": "Streaming-first technical indicators: incremental, fast, install-free. Node bindings powered by Rust.",
5
5
  "author": "kingchenc <support@wickra.org>",
6
6
  "main": "index.js",
@@ -47,12 +47,12 @@
47
47
  "node": ">= 18"
48
48
  },
49
49
  "optionalDependencies": {
50
- "wickra-linux-x64-gnu": "0.5.2",
51
- "wickra-linux-arm64-gnu": "0.5.2",
52
- "wickra-darwin-x64": "0.5.2",
53
- "wickra-darwin-arm64": "0.5.2",
54
- "wickra-win32-x64-msvc": "0.5.2",
55
- "wickra-win32-arm64-msvc": "0.5.2"
50
+ "wickra-linux-x64-gnu": "0.5.4",
51
+ "wickra-linux-arm64-gnu": "0.5.4",
52
+ "wickra-darwin-x64": "0.5.4",
53
+ "wickra-darwin-arm64": "0.5.4",
54
+ "wickra-win32-x64-msvc": "0.5.4",
55
+ "wickra-win32-arm64-msvc": "0.5.4"
56
56
  },
57
57
  "scripts": {
58
58
  "build": "napi build --platform --release",
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file