wickra 0.4.0 → 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/README.md +25 -4
- package/index.d.ts +100 -0
- package/index.js +54 -50
- package/npm/darwin-arm64/package.json +1 -1
- package/npm/darwin-arm64/wickra.darwin-arm64.node +0 -0
- package/npm/darwin-x64/package.json +1 -1
- package/npm/darwin-x64/wickra.darwin-x64.node +0 -0
- package/npm/linux-arm64-gnu/package.json +1 -1
- package/npm/linux-arm64-gnu/wickra.linux-arm64-gnu.node +0 -0
- package/npm/linux-x64-gnu/package.json +1 -1
- package/npm/linux-x64-gnu/wickra.linux-x64-gnu.node +0 -0
- package/npm/win32-arm64-msvc/package.json +1 -1
- package/npm/win32-arm64-msvc/wickra.win32-arm64-msvc.node +0 -0
- package/npm/win32-x64-msvc/package.json +1 -1
- package/npm/win32-x64-msvc/wickra.win32-x64-msvc.node +0 -0
- package/package.json +7 -7
- package/wickra.darwin-arm64.node +0 -0
- package/wickra.darwin-x64.node +0 -0
- package/wickra.linux-arm64-gnu.node +0 -0
- package/wickra.linux-x64-gnu.node +0 -0
- package/wickra.win32-arm64-msvc.node +0 -0
- package/wickra.win32-x64-msvc.node +0 -0
package/README.md
CHANGED
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
[](LICENSE)
|
|
13
13
|
[](https://scorecard.dev/viewer/?uri=github.com/wickra-lib/wickra)
|
|
14
14
|
[](https://github.com/wickra-lib/wickra/attestations)
|
|
15
|
+
[](https://docs.wickra.org)
|
|
15
16
|
|
|
16
17
|
**Streaming-first technical indicators. Install with `pip install wickra` — no system dependencies.**
|
|
17
18
|
|
|
@@ -37,6 +38,25 @@ for price in live_feed:
|
|
|
37
38
|
print("overbought")
|
|
38
39
|
```
|
|
39
40
|
|
|
41
|
+
## Documentation
|
|
42
|
+
|
|
43
|
+
Full documentation lives at **[docs.wickra.org](https://docs.wickra.org)**:
|
|
44
|
+
|
|
45
|
+
- **Quickstarts** — [Rust](https://docs.wickra.org/Quickstart-Rust),
|
|
46
|
+
[Python](https://docs.wickra.org/Quickstart-Python),
|
|
47
|
+
[Node](https://docs.wickra.org/Quickstart-Node),
|
|
48
|
+
[WASM](https://docs.wickra.org/Quickstart-WASM).
|
|
49
|
+
- **Indicators** — a per-indicator deep dive (formula, parameters, warmup) for
|
|
50
|
+
every one of the 219 indicators; start at the
|
|
51
|
+
[indicators overview](https://docs.wickra.org/Indicators-Overview).
|
|
52
|
+
- **Reference** — [warmup periods](https://docs.wickra.org/Warmup-Periods),
|
|
53
|
+
[streaming vs batch](https://docs.wickra.org/Streaming-vs-Batch),
|
|
54
|
+
[indicator chaining](https://docs.wickra.org/Indicator-Chaining), the
|
|
55
|
+
[data layer](https://docs.wickra.org/Data-Layer).
|
|
56
|
+
- **Guides** — [Cookbook](https://docs.wickra.org/Cookbook),
|
|
57
|
+
[TA-Lib migration](https://docs.wickra.org/TA-Lib-Migration),
|
|
58
|
+
[FAQ](https://docs.wickra.org/FAQ).
|
|
59
|
+
|
|
40
60
|
## Why Wickra exists
|
|
41
61
|
|
|
42
62
|
The Python TA ecosystem has plenty of libraries — TA-Lib, pandas-ta, finta,
|
|
@@ -115,9 +135,10 @@ python -m benchmarks.compare_libraries
|
|
|
115
135
|
|
|
116
136
|
## Indicators
|
|
117
137
|
|
|
118
|
-
|
|
138
|
+
219 streaming-first indicators across sixteen families. Every one passes the
|
|
119
139
|
`batch == streaming` equivalence test, reference-value tests, and reset
|
|
120
|
-
semantics tests.
|
|
140
|
+
semantics tests. Each has a per-indicator deep dive (formula, parameters,
|
|
141
|
+
warmup) at [docs.wickra.org](https://docs.wickra.org/Indicators-Overview).
|
|
121
142
|
|
|
122
143
|
| Family | Indicators |
|
|
123
144
|
|--------|-----------|
|
|
@@ -129,7 +150,7 @@ semantics tests.
|
|
|
129
150
|
| 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 |
|
|
130
151
|
| Trailing Stops | Parabolic SAR, 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 |
|
|
131
152
|
| 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 |
|
|
132
|
-
| 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, Spearman Correlation |
|
|
153
|
+
| 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 |
|
|
133
154
|
| Ehlers / Cycle (DSP) | MAMA, FAMA, Fisher Transform, Inverse Fisher Transform, SuperSmoother, Hilbert Dominant Cycle, Sine Wave, Decycler, Decycler Oscillator, Roofing Filter, Center of Gravity, Cybernetic Cycle, Adaptive Cycle, Empirical Mode Decomposition, Ehlers Stochastic, Instantaneous Trendline |
|
|
134
155
|
| Pivots & S/R | Classic Pivots, Fibonacci Pivots, Camarilla, Woodie Pivots, DeMark Pivots, Williams Fractals, ZigZag |
|
|
135
156
|
| 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 |
|
|
@@ -209,7 +230,7 @@ A Python live-trading example using the public `websockets` package lives at
|
|
|
209
230
|
```
|
|
210
231
|
wickra/
|
|
211
232
|
├── crates/
|
|
212
|
-
│ ├── wickra-core/ core engine + all
|
|
233
|
+
│ ├── wickra-core/ core engine + all 219 indicators
|
|
213
234
|
│ ├── wickra/ top-level facade crate (publishes on crates.io) + benches/
|
|
214
235
|
│ └── wickra-data/ CSV reader, tick aggregator, live exchange feeds
|
|
215
236
|
├── bindings/
|
package/index.d.ts
CHANGED
|
@@ -5,6 +5,34 @@
|
|
|
5
5
|
|
|
6
6
|
/** Library version (matches the Rust crate version). */
|
|
7
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
|
+
}
|
|
8
36
|
/** MACD triple: macd line, signal line, histogram. */
|
|
9
37
|
export interface MacdValue {
|
|
10
38
|
macd: number
|
|
@@ -628,6 +656,19 @@ export declare class Beta {
|
|
|
628
656
|
isReady(): boolean
|
|
629
657
|
warmupPeriod(): number
|
|
630
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
|
+
}
|
|
631
672
|
export type SpearmanCorrelationNode = SpearmanCorrelation
|
|
632
673
|
export declare class SpearmanCorrelation {
|
|
633
674
|
constructor(period: number)
|
|
@@ -641,6 +682,65 @@ export declare class SpearmanCorrelation {
|
|
|
641
682
|
isReady(): boolean
|
|
642
683
|
warmupPeriod(): number
|
|
643
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
|
+
}
|
|
644
744
|
export type MacdNode = MACD
|
|
645
745
|
export declare class MACD {
|
|
646
746
|
constructor(fast: number, slow: number, signal: number)
|
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, MACD, BollingerBands, ATR, Stochastic, OBV, ADX, ADXR, CCI, WilliamsR, MFI, PSAR, Keltner, Donchian, VWAP, RollingVWAP, AwesomeOscillator, Aroon,
|
|
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, Autocorrelation, HurstExponent, PearsonCorrelation, Beta, PairwiseBeta, SpearmanCorrelation, PairSpreadZScore, LeadLagCrossCorrelation, Cointegration, RelativeStrengthAB, MACD, BollingerBands, ATR, 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, 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, HilbertDominantCycle, AdaptiveCycle, SineWave, MAMA, FAMA, Ichimoku, HeikinAshi, ValueArea, InitialBalance, OpeningRange, Doji, Hammer, InvertedHammer, HangingMan, ShootingStar, Engulfing, Harami, MorningEveningStar, ThreeSoldiersOrCrows, PiercingDarkCloud, Marubozu, Tweezer, SpinningTop, ThreeInside, ThreeOutside, SharpeRatio, SortinoRatio, CalmarRatio, OmegaRatio, MaxDrawdown, AverageDrawdown, DrawdownDuration, PainIndex, ValueAtRisk, ConditionalValueAtRisk, ProfitFactor, GainLossRatio, RecoveryFactor, KellyCriterion, TreynorRatio, InformationRatio, Alpha } = nativeBinding
|
|
314
314
|
|
|
315
315
|
module.exports.version = version
|
|
316
316
|
module.exports.SMA = SMA
|
|
@@ -332,6 +332,34 @@ module.exports.StdDev = StdDev
|
|
|
332
332
|
module.exports.UlcerIndex = UlcerIndex
|
|
333
333
|
module.exports.VerticalHorizontalFilter = VerticalHorizontalFilter
|
|
334
334
|
module.exports.ZScore = ZScore
|
|
335
|
+
module.exports.McGinleyDynamic = McGinleyDynamic
|
|
336
|
+
module.exports.FRAMA = FRAMA
|
|
337
|
+
module.exports.SuperSmoother = SuperSmoother
|
|
338
|
+
module.exports.FisherTransform = FisherTransform
|
|
339
|
+
module.exports.Decycler = Decycler
|
|
340
|
+
module.exports.CenterOfGravity = CenterOfGravity
|
|
341
|
+
module.exports.CyberneticCycle = CyberneticCycle
|
|
342
|
+
module.exports.InstantaneousTrendline = InstantaneousTrendline
|
|
343
|
+
module.exports.EhlersStochastic = EhlersStochastic
|
|
344
|
+
module.exports.RVIVolatility = RVIVolatility
|
|
345
|
+
module.exports.Variance = Variance
|
|
346
|
+
module.exports.CoefficientOfVariation = CoefficientOfVariation
|
|
347
|
+
module.exports.Skewness = Skewness
|
|
348
|
+
module.exports.Kurtosis = Kurtosis
|
|
349
|
+
module.exports.StandardError = StandardError
|
|
350
|
+
module.exports.DetrendedStdDev = DetrendedStdDev
|
|
351
|
+
module.exports.RSquared = RSquared
|
|
352
|
+
module.exports.MedianAbsoluteDeviation = MedianAbsoluteDeviation
|
|
353
|
+
module.exports.Autocorrelation = Autocorrelation
|
|
354
|
+
module.exports.HurstExponent = HurstExponent
|
|
355
|
+
module.exports.PearsonCorrelation = PearsonCorrelation
|
|
356
|
+
module.exports.Beta = Beta
|
|
357
|
+
module.exports.PairwiseBeta = PairwiseBeta
|
|
358
|
+
module.exports.SpearmanCorrelation = SpearmanCorrelation
|
|
359
|
+
module.exports.PairSpreadZScore = PairSpreadZScore
|
|
360
|
+
module.exports.LeadLagCrossCorrelation = LeadLagCrossCorrelation
|
|
361
|
+
module.exports.Cointegration = Cointegration
|
|
362
|
+
module.exports.RelativeStrengthAB = RelativeStrengthAB
|
|
335
363
|
module.exports.MACD = MACD
|
|
336
364
|
module.exports.BollingerBands = BollingerBands
|
|
337
365
|
module.exports.ATR = ATR
|
|
@@ -349,27 +377,25 @@ module.exports.VWAP = VWAP
|
|
|
349
377
|
module.exports.RollingVWAP = RollingVWAP
|
|
350
378
|
module.exports.AwesomeOscillator = AwesomeOscillator
|
|
351
379
|
module.exports.Aroon = Aroon
|
|
352
|
-
module.exports.KAMA = KAMA
|
|
353
|
-
module.exports.RVI = RVI
|
|
354
|
-
module.exports.PGO = PGO
|
|
355
|
-
module.exports.KST = KST
|
|
356
|
-
module.exports.SMI = SMI
|
|
357
|
-
module.exports.LaguerreRSI = LaguerreRSI
|
|
358
|
-
module.exports.ConnorsRSI = ConnorsRSI
|
|
359
380
|
module.exports.Inertia = Inertia
|
|
360
|
-
module.exports.
|
|
361
|
-
module.exports.
|
|
362
|
-
module.exports.
|
|
363
|
-
module.exports.
|
|
364
|
-
module.exports.
|
|
365
|
-
module.exports.
|
|
366
|
-
module.exports.EVWMA = EVWMA
|
|
367
|
-
module.exports.APO = APO
|
|
381
|
+
module.exports.ConnorsRSI = ConnorsRSI
|
|
382
|
+
module.exports.LaguerreRSI = LaguerreRSI
|
|
383
|
+
module.exports.SMI = SMI
|
|
384
|
+
module.exports.KST = KST
|
|
385
|
+
module.exports.PGO = PGO
|
|
386
|
+
module.exports.RVI = RVI
|
|
368
387
|
module.exports.AwesomeOscillatorHistogram = AwesomeOscillatorHistogram
|
|
369
|
-
module.exports.CFO = CFO
|
|
370
|
-
module.exports.ZeroLagMACD = ZeroLagMACD
|
|
371
|
-
module.exports.ElderImpulse = ElderImpulse
|
|
372
388
|
module.exports.STC = STC
|
|
389
|
+
module.exports.ElderImpulse = ElderImpulse
|
|
390
|
+
module.exports.ZeroLagMACD = ZeroLagMACD
|
|
391
|
+
module.exports.CFO = CFO
|
|
392
|
+
module.exports.APO = APO
|
|
393
|
+
module.exports.KAMA = KAMA
|
|
394
|
+
module.exports.EVWMA = EVWMA
|
|
395
|
+
module.exports.Alligator = Alligator
|
|
396
|
+
module.exports.JMA = JMA
|
|
397
|
+
module.exports.VIDYA = VIDYA
|
|
398
|
+
module.exports.ALMA = ALMA
|
|
373
399
|
module.exports.T3 = T3
|
|
374
400
|
module.exports.TSI = TSI
|
|
375
401
|
module.exports.PMO = PMO
|
|
@@ -379,17 +405,17 @@ module.exports.VolumePriceTrend = VolumePriceTrend
|
|
|
379
405
|
module.exports.ChaikinMoneyFlow = ChaikinMoneyFlow
|
|
380
406
|
module.exports.ChaikinOscillator = ChaikinOscillator
|
|
381
407
|
module.exports.ForceIndex = ForceIndex
|
|
382
|
-
module.exports.EaseOfMovement = EaseOfMovement
|
|
383
|
-
module.exports.KVO = KVO
|
|
384
|
-
module.exports.VolumeOscillator = VolumeOscillator
|
|
385
408
|
module.exports.NVI = NVI
|
|
386
409
|
module.exports.PVI = PVI
|
|
410
|
+
module.exports.VolumeOscillator = VolumeOscillator
|
|
411
|
+
module.exports.KVO = KVO
|
|
387
412
|
module.exports.WilliamsAD = WilliamsAD
|
|
388
413
|
module.exports.AnchoredVWAP = AnchoredVWAP
|
|
389
414
|
module.exports.DemandIndex = DemandIndex
|
|
390
415
|
module.exports.TSV = TSV
|
|
391
416
|
module.exports.VZO = VZO
|
|
392
417
|
module.exports.MarketFacilitationIndex = MarketFacilitationIndex
|
|
418
|
+
module.exports.EaseOfMovement = EaseOfMovement
|
|
393
419
|
module.exports.SuperTrend = SuperTrend
|
|
394
420
|
module.exports.ChandelierExit = ChandelierExit
|
|
395
421
|
module.exports.ChandeKrollStop = ChandeKrollStop
|
|
@@ -411,26 +437,25 @@ module.exports.BalanceOfPower = BalanceOfPower
|
|
|
411
437
|
module.exports.ChoppinessIndex = ChoppinessIndex
|
|
412
438
|
module.exports.TrueRange = TrueRange
|
|
413
439
|
module.exports.ChaikinVolatility = ChaikinVolatility
|
|
440
|
+
module.exports.YangZhangVolatility = YangZhangVolatility
|
|
441
|
+
module.exports.RogersSatchellVolatility = RogersSatchellVolatility
|
|
442
|
+
module.exports.GarmanKlassVolatility = GarmanKlassVolatility
|
|
443
|
+
module.exports.ParkinsonVolatility = ParkinsonVolatility
|
|
414
444
|
module.exports.LinRegAngle = LinRegAngle
|
|
415
445
|
module.exports.BollingerBandwidth = BollingerBandwidth
|
|
416
446
|
module.exports.PercentB = PercentB
|
|
417
447
|
module.exports.NATR = NATR
|
|
418
448
|
module.exports.HistoricalVolatility = HistoricalVolatility
|
|
419
449
|
module.exports.AroonOscillator = AroonOscillator
|
|
420
|
-
module.exports.Vortex = Vortex
|
|
421
|
-
module.exports.RWI = RWI
|
|
422
450
|
module.exports.WaveTrend = WaveTrend
|
|
451
|
+
module.exports.RWI = RWI
|
|
452
|
+
module.exports.Vortex = Vortex
|
|
423
453
|
module.exports.MassIndex = MassIndex
|
|
424
454
|
module.exports.StochRSI = StochRSI
|
|
425
455
|
module.exports.UltimateOscillator = UltimateOscillator
|
|
426
456
|
module.exports.PPO = PPO
|
|
427
457
|
module.exports.Coppock = Coppock
|
|
428
458
|
module.exports.VWMA = VWMA
|
|
429
|
-
module.exports.RVIVolatility = RVIVolatility
|
|
430
|
-
module.exports.ParkinsonVolatility = ParkinsonVolatility
|
|
431
|
-
module.exports.GarmanKlassVolatility = GarmanKlassVolatility
|
|
432
|
-
module.exports.RogersSatchellVolatility = RogersSatchellVolatility
|
|
433
|
-
module.exports.YangZhangVolatility = YangZhangVolatility
|
|
434
459
|
module.exports.MaEnvelope = MaEnvelope
|
|
435
460
|
module.exports.AccelerationBands = AccelerationBands
|
|
436
461
|
module.exports.StarcBands = StarcBands
|
|
@@ -461,16 +486,9 @@ module.exports.TDRangeProjection = TDRangeProjection
|
|
|
461
486
|
module.exports.TDDifferential = TDDifferential
|
|
462
487
|
module.exports.TDOpen = TDOpen
|
|
463
488
|
module.exports.TDRiskLevel = TDRiskLevel
|
|
464
|
-
module.exports.SuperSmoother = SuperSmoother
|
|
465
|
-
module.exports.FisherTransform = FisherTransform
|
|
466
489
|
module.exports.InverseFisherTransform = InverseFisherTransform
|
|
467
|
-
module.exports.Decycler = Decycler
|
|
468
490
|
module.exports.DecyclerOscillator = DecyclerOscillator
|
|
469
491
|
module.exports.RoofingFilter = RoofingFilter
|
|
470
|
-
module.exports.CenterOfGravity = CenterOfGravity
|
|
471
|
-
module.exports.CyberneticCycle = CyberneticCycle
|
|
472
|
-
module.exports.InstantaneousTrendline = InstantaneousTrendline
|
|
473
|
-
module.exports.EhlersStochastic = EhlersStochastic
|
|
474
492
|
module.exports.EmpiricalModeDecomposition = EmpiricalModeDecomposition
|
|
475
493
|
module.exports.HilbertDominantCycle = HilbertDominantCycle
|
|
476
494
|
module.exports.AdaptiveCycle = AdaptiveCycle
|
|
@@ -479,19 +497,6 @@ module.exports.MAMA = MAMA
|
|
|
479
497
|
module.exports.FAMA = FAMA
|
|
480
498
|
module.exports.Ichimoku = Ichimoku
|
|
481
499
|
module.exports.HeikinAshi = HeikinAshi
|
|
482
|
-
module.exports.Variance = Variance
|
|
483
|
-
module.exports.CoefficientOfVariation = CoefficientOfVariation
|
|
484
|
-
module.exports.Skewness = Skewness
|
|
485
|
-
module.exports.Kurtosis = Kurtosis
|
|
486
|
-
module.exports.StandardError = StandardError
|
|
487
|
-
module.exports.DetrendedStdDev = DetrendedStdDev
|
|
488
|
-
module.exports.RSquared = RSquared
|
|
489
|
-
module.exports.MedianAbsoluteDeviation = MedianAbsoluteDeviation
|
|
490
|
-
module.exports.Autocorrelation = Autocorrelation
|
|
491
|
-
module.exports.HurstExponent = HurstExponent
|
|
492
|
-
module.exports.PearsonCorrelation = PearsonCorrelation
|
|
493
|
-
module.exports.Beta = Beta
|
|
494
|
-
module.exports.SpearmanCorrelation = SpearmanCorrelation
|
|
495
500
|
module.exports.ValueArea = ValueArea
|
|
496
501
|
module.exports.InitialBalance = InitialBalance
|
|
497
502
|
module.exports.OpeningRange = OpeningRange
|
|
@@ -510,7 +515,6 @@ module.exports.Tweezer = Tweezer
|
|
|
510
515
|
module.exports.SpinningTop = SpinningTop
|
|
511
516
|
module.exports.ThreeInside = ThreeInside
|
|
512
517
|
module.exports.ThreeOutside = ThreeOutside
|
|
513
|
-
// Family 15: Risk / Performance metrics
|
|
514
518
|
module.exports.SharpeRatio = SharpeRatio
|
|
515
519
|
module.exports.SortinoRatio = SortinoRatio
|
|
516
520
|
module.exports.CalmarRatio = CalmarRatio
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "wickra-darwin-arm64",
|
|
3
|
-
"version": "0.4.
|
|
3
|
+
"version": "0.4.1",
|
|
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": [
|
|
Binary file
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "wickra-darwin-x64",
|
|
3
|
-
"version": "0.4.
|
|
3
|
+
"version": "0.4.1",
|
|
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": [
|
|
Binary file
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "wickra-linux-arm64-gnu",
|
|
3
|
-
"version": "0.4.
|
|
3
|
+
"version": "0.4.1",
|
|
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": [
|
|
Binary file
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "wickra-linux-x64-gnu",
|
|
3
|
-
"version": "0.4.
|
|
3
|
+
"version": "0.4.1",
|
|
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": [
|
|
Binary file
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "wickra-win32-arm64-msvc",
|
|
3
|
-
"version": "0.4.
|
|
3
|
+
"version": "0.4.1",
|
|
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": [
|
|
Binary file
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "wickra-win32-x64-msvc",
|
|
3
|
-
"version": "0.4.
|
|
3
|
+
"version": "0.4.1",
|
|
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": [
|
|
Binary file
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "wickra",
|
|
3
|
-
"version": "0.4.
|
|
3
|
+
"version": "0.4.1",
|
|
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.4.
|
|
51
|
-
"wickra-linux-arm64-gnu": "0.4.
|
|
52
|
-
"wickra-darwin-x64": "0.4.
|
|
53
|
-
"wickra-darwin-arm64": "0.4.
|
|
54
|
-
"wickra-win32-x64-msvc": "0.4.
|
|
55
|
-
"wickra-win32-arm64-msvc": "0.4.
|
|
50
|
+
"wickra-linux-x64-gnu": "0.4.1",
|
|
51
|
+
"wickra-linux-arm64-gnu": "0.4.1",
|
|
52
|
+
"wickra-darwin-x64": "0.4.1",
|
|
53
|
+
"wickra-darwin-arm64": "0.4.1",
|
|
54
|
+
"wickra-win32-x64-msvc": "0.4.1",
|
|
55
|
+
"wickra-win32-arm64-msvc": "0.4.1"
|
|
56
56
|
},
|
|
57
57
|
"scripts": {
|
|
58
58
|
"build": "napi build --platform --release",
|
package/wickra.darwin-arm64.node
CHANGED
|
Binary file
|
package/wickra.darwin-x64.node
CHANGED
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|