wickra 0.4.1 → 0.4.3

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://wickra.org/og-banner.webp" 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=232" 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)
@@ -47,7 +47,7 @@ Full documentation lives at **[docs.wickra.org](https://docs.wickra.org)**:
47
47
  [Node](https://docs.wickra.org/Quickstart-Node),
48
48
  [WASM](https://docs.wickra.org/Quickstart-WASM).
49
49
  - **Indicators** — a per-indicator deep dive (formula, parameters, warmup) for
50
- every one of the 219 indicators; start at the
50
+ every one of the 232 indicators; start at the
51
51
  [indicators overview](https://docs.wickra.org/Indicators-Overview).
52
52
  - **Reference** — [warmup periods](https://docs.wickra.org/Warmup-Periods),
53
53
  [streaming vs batch](https://docs.wickra.org/Streaming-vs-Batch),
@@ -135,7 +135,7 @@ python -m benchmarks.compare_libraries
135
135
 
136
136
  ## Indicators
137
137
 
138
- 219 streaming-first indicators across sixteen families. Every one passes the
138
+ 232 streaming-first indicators across seventeen families. Every one passes the
139
139
  `batch == streaming` equivalence test, reference-value tests, and reset
140
140
  semantics tests. Each has a per-indicator deep dive (formula, parameters,
141
141
  warmup) at [docs.wickra.org](https://docs.wickra.org/Indicators-Overview).
@@ -156,9 +156,16 @@ warmup) at [docs.wickra.org](https://docs.wickra.org/Indicators-Overview).
156
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 |
157
157
  | Ichimoku & Charts | Ichimoku Kinko Hyo (Tenkan, Kijun, Senkou A/B, Chikou), Heikin-Ashi |
158
158
  | 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 |
159
+ | 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 |
159
160
  | Market Profile | Value Area (POC / VAH / VAL), Initial Balance, Opening Range |
160
161
  | Risk / Performance | Sharpe Ratio, Sortino Ratio, Calmar Ratio, Omega Ratio, Max Drawdown, Average Drawdown, Drawdown Duration, Pain Index, Value at Risk, Conditional Value at Risk (CVaR), Profit Factor, Gain/Loss Ratio, Recovery Factor, Kelly Criterion, Treynor Ratio, Information Ratio, Alpha (Jensen) |
161
162
 
163
+ Every candlestick pattern emits a signed per-bar value — `+1.0` bullish,
164
+ `−1.0` bearish, `0.0` none — so the family drops straight into a feature matrix
165
+ as one column each. `Doji` is direction-less by default (`+1.0` / `0.0`);
166
+ construct it in signed mode (`Doji::new().signed()`, `Doji(signed=True)`,
167
+ `new Doji(true)`) for a dragonfly / gravestone `±1` reading.
168
+
162
169
  Adding a new indicator means implementing one trait in Rust; all four bindings
163
170
  inherit it automatically.
164
171
 
@@ -230,7 +237,7 @@ A Python live-trading example using the public `websockets` package lives at
230
237
  ```
231
238
  wickra/
232
239
  ├── crates/
233
- │ ├── wickra-core/ core engine + all 219 indicators
240
+ │ ├── wickra-core/ core engine + all 232 indicators
234
241
  │ ├── wickra/ top-level facade crate (publishes on crates.io) + benches/
235
242
  │ └── wickra-data/ CSV reader, tick aggregator, live exchange feeds
236
243
  ├── bindings/
package/index.d.ts CHANGED
@@ -279,6 +279,19 @@ export interface OpeningRangeValue {
279
279
  low: number
280
280
  breakoutDistance: number
281
281
  }
282
+ /** One order-book depth snapshot for batch evaluation. */
283
+ export interface ObSnapshot {
284
+ bidPx: Array<number>
285
+ bidSz: Array<number>
286
+ askPx: Array<number>
287
+ askSz: Array<number>
288
+ }
289
+ /** One price bucket of a footprint. */
290
+ export interface FootprintLevelValue {
291
+ price: number
292
+ bidVol: number
293
+ askVol: number
294
+ }
282
295
  export type SmaNode = SMA
283
296
  export declare class SMA {
284
297
  constructor(period: number)
@@ -2055,12 +2068,13 @@ export declare class OpeningRange {
2055
2068
  }
2056
2069
  export type DojiNode = Doji
2057
2070
  export declare class Doji {
2058
- constructor()
2071
+ constructor(signed?: boolean | undefined | null)
2059
2072
  update(open: number, high: number, low: number, close: number): number | null
2060
2073
  batch(open: Array<number>, high: Array<number>, low: Array<number>, close: Array<number>): Array<number>
2061
2074
  reset(): void
2062
2075
  isReady(): boolean
2063
2076
  warmupPeriod(): number
2077
+ isSigned(): boolean
2064
2078
  }
2065
2079
  export type HammerNode = Hammer
2066
2080
  export declare class Hammer {
@@ -2188,6 +2202,123 @@ export declare class ThreeOutside {
2188
2202
  isReady(): boolean
2189
2203
  warmupPeriod(): number
2190
2204
  }
2205
+ export type OrderBookImbalanceTop1Node = OrderBookImbalanceTop1
2206
+ export declare class OrderBookImbalanceTop1 {
2207
+ constructor()
2208
+ update(bidPx: Array<number>, bidSz: Array<number>, askPx: Array<number>, askSz: Array<number>): number | null
2209
+ batch(snapshots: Array<ObSnapshot>): Array<number>
2210
+ reset(): void
2211
+ isReady(): boolean
2212
+ warmupPeriod(): number
2213
+ }
2214
+ export type OrderBookImbalanceFullNode = OrderBookImbalanceFull
2215
+ export declare class OrderBookImbalanceFull {
2216
+ constructor()
2217
+ update(bidPx: Array<number>, bidSz: Array<number>, askPx: Array<number>, askSz: Array<number>): number | null
2218
+ batch(snapshots: Array<ObSnapshot>): Array<number>
2219
+ reset(): void
2220
+ isReady(): boolean
2221
+ warmupPeriod(): number
2222
+ }
2223
+ export type MicropriceNode = Microprice
2224
+ export declare class Microprice {
2225
+ constructor()
2226
+ update(bidPx: Array<number>, bidSz: Array<number>, askPx: Array<number>, askSz: Array<number>): number | null
2227
+ batch(snapshots: Array<ObSnapshot>): Array<number>
2228
+ reset(): void
2229
+ isReady(): boolean
2230
+ warmupPeriod(): number
2231
+ }
2232
+ export type QuotedSpreadNode = QuotedSpread
2233
+ export declare class QuotedSpread {
2234
+ constructor()
2235
+ update(bidPx: Array<number>, bidSz: Array<number>, askPx: Array<number>, askSz: Array<number>): number | null
2236
+ batch(snapshots: Array<ObSnapshot>): Array<number>
2237
+ reset(): void
2238
+ isReady(): boolean
2239
+ warmupPeriod(): number
2240
+ }
2241
+ export type DepthSlopeNode = DepthSlope
2242
+ export declare class DepthSlope {
2243
+ constructor()
2244
+ update(bidPx: Array<number>, bidSz: Array<number>, askPx: Array<number>, askSz: Array<number>): number | null
2245
+ batch(snapshots: Array<ObSnapshot>): Array<number>
2246
+ reset(): void
2247
+ isReady(): boolean
2248
+ warmupPeriod(): number
2249
+ }
2250
+ export type OrderBookImbalanceTopNNode = OrderBookImbalanceTopN
2251
+ export declare class OrderBookImbalanceTopN {
2252
+ constructor(levels: number)
2253
+ update(bidPx: Array<number>, bidSz: Array<number>, askPx: Array<number>, askSz: Array<number>): number | null
2254
+ batch(snapshots: Array<ObSnapshot>): Array<number>
2255
+ reset(): void
2256
+ isReady(): boolean
2257
+ warmupPeriod(): number
2258
+ }
2259
+ export type SignedVolumeNode = SignedVolume
2260
+ export declare class SignedVolume {
2261
+ constructor()
2262
+ update(price: number, size: number, isBuy: boolean): number | null
2263
+ batch(price: Array<number>, size: Array<number>, isBuy: Array<boolean>): Array<number>
2264
+ reset(): void
2265
+ isReady(): boolean
2266
+ warmupPeriod(): number
2267
+ }
2268
+ export type CumulativeVolumeDeltaNode = CumulativeVolumeDelta
2269
+ export declare class CumulativeVolumeDelta {
2270
+ constructor()
2271
+ update(price: number, size: number, isBuy: boolean): number | null
2272
+ batch(price: Array<number>, size: Array<number>, isBuy: Array<boolean>): Array<number>
2273
+ reset(): void
2274
+ isReady(): boolean
2275
+ warmupPeriod(): number
2276
+ }
2277
+ export type TradeImbalanceNode = TradeImbalance
2278
+ export declare class TradeImbalance {
2279
+ constructor(window: number)
2280
+ update(price: number, size: number, isBuy: boolean): number | null
2281
+ batch(price: Array<number>, size: Array<number>, isBuy: Array<boolean>): Array<number>
2282
+ reset(): void
2283
+ isReady(): boolean
2284
+ warmupPeriod(): number
2285
+ }
2286
+ export type EffectiveSpreadNode = EffectiveSpread
2287
+ export declare class EffectiveSpread {
2288
+ constructor()
2289
+ update(price: number, size: number, isBuy: boolean, mid: number): number | null
2290
+ batch(price: Array<number>, size: Array<number>, isBuy: Array<boolean>, mid: Array<number>): Array<number>
2291
+ reset(): void
2292
+ isReady(): boolean
2293
+ warmupPeriod(): number
2294
+ }
2295
+ export type RealizedSpreadNode = RealizedSpread
2296
+ export declare class RealizedSpread {
2297
+ constructor(horizon: number)
2298
+ update(price: number, size: number, isBuy: boolean, mid: number): number | null
2299
+ batch(price: Array<number>, size: Array<number>, isBuy: Array<boolean>, mid: Array<number>): Array<number>
2300
+ reset(): void
2301
+ isReady(): boolean
2302
+ warmupPeriod(): number
2303
+ }
2304
+ export type KylesLambdaNode = KylesLambda
2305
+ export declare class KylesLambda {
2306
+ constructor(window: number)
2307
+ update(price: number, size: number, isBuy: boolean, mid: number): number | null
2308
+ batch(price: Array<number>, size: Array<number>, isBuy: Array<boolean>, mid: Array<number>): Array<number>
2309
+ reset(): void
2310
+ isReady(): boolean
2311
+ warmupPeriod(): number
2312
+ }
2313
+ export type FootprintNode = Footprint
2314
+ export declare class Footprint {
2315
+ constructor(tickSize: number)
2316
+ update(price: number, size: number, isBuy: boolean): Array<FootprintLevelValue>
2317
+ batch(price: Array<number>, size: Array<number>, isBuy: Array<boolean>): Array<Array<FootprintLevelValue>>
2318
+ reset(): void
2319
+ isReady(): boolean
2320
+ warmupPeriod(): number
2321
+ }
2191
2322
  export type SharpeRatioNode = SharpeRatio
2192
2323
  export declare class SharpeRatio {
2193
2324
  constructor(period: number, riskFree: 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, 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
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, OrderBookImbalanceTop1, OrderBookImbalanceFull, Microprice, QuotedSpread, DepthSlope, OrderBookImbalanceTopN, SignedVolume, CumulativeVolumeDelta, TradeImbalance, EffectiveSpread, RealizedSpread, KylesLambda, Footprint, 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
@@ -515,6 +515,19 @@ module.exports.Tweezer = Tweezer
515
515
  module.exports.SpinningTop = SpinningTop
516
516
  module.exports.ThreeInside = ThreeInside
517
517
  module.exports.ThreeOutside = ThreeOutside
518
+ module.exports.OrderBookImbalanceTop1 = OrderBookImbalanceTop1
519
+ module.exports.OrderBookImbalanceFull = OrderBookImbalanceFull
520
+ module.exports.Microprice = Microprice
521
+ module.exports.QuotedSpread = QuotedSpread
522
+ module.exports.DepthSlope = DepthSlope
523
+ module.exports.OrderBookImbalanceTopN = OrderBookImbalanceTopN
524
+ module.exports.SignedVolume = SignedVolume
525
+ module.exports.CumulativeVolumeDelta = CumulativeVolumeDelta
526
+ module.exports.TradeImbalance = TradeImbalance
527
+ module.exports.EffectiveSpread = EffectiveSpread
528
+ module.exports.RealizedSpread = RealizedSpread
529
+ module.exports.KylesLambda = KylesLambda
530
+ module.exports.Footprint = Footprint
518
531
  module.exports.SharpeRatio = SharpeRatio
519
532
  module.exports.SortinoRatio = SortinoRatio
520
533
  module.exports.CalmarRatio = CalmarRatio
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "wickra-darwin-arm64",
3
- "version": "0.4.1",
3
+ "version": "0.4.3",
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": [
7
7
  "wickra.darwin-arm64.node"
8
8
  ],
9
- "license": "PolyForm-Noncommercial-1.0.0",
9
+ "license": "LicenseRef-Wickra-Noncommercial-1.0.0",
10
10
  "engines": {
11
11
  "node": ">= 18"
12
12
  },
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "wickra-darwin-x64",
3
- "version": "0.4.1",
3
+ "version": "0.4.3",
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": [
7
7
  "wickra.darwin-x64.node"
8
8
  ],
9
- "license": "PolyForm-Noncommercial-1.0.0",
9
+ "license": "LicenseRef-Wickra-Noncommercial-1.0.0",
10
10
  "engines": {
11
11
  "node": ">= 18"
12
12
  },
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "wickra-linux-arm64-gnu",
3
- "version": "0.4.1",
3
+ "version": "0.4.3",
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": [
7
7
  "wickra.linux-arm64-gnu.node"
8
8
  ],
9
- "license": "PolyForm-Noncommercial-1.0.0",
9
+ "license": "LicenseRef-Wickra-Noncommercial-1.0.0",
10
10
  "engines": {
11
11
  "node": ">= 18"
12
12
  },
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "wickra-linux-x64-gnu",
3
- "version": "0.4.1",
3
+ "version": "0.4.3",
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": [
7
7
  "wickra.linux-x64-gnu.node"
8
8
  ],
9
- "license": "PolyForm-Noncommercial-1.0.0",
9
+ "license": "LicenseRef-Wickra-Noncommercial-1.0.0",
10
10
  "engines": {
11
11
  "node": ">= 18"
12
12
  },
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "wickra-win32-arm64-msvc",
3
- "version": "0.4.1",
3
+ "version": "0.4.3",
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": [
7
7
  "wickra.win32-arm64-msvc.node"
8
8
  ],
9
- "license": "PolyForm-Noncommercial-1.0.0",
9
+ "license": "LicenseRef-Wickra-Noncommercial-1.0.0",
10
10
  "engines": {
11
11
  "node": ">= 18"
12
12
  },
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "wickra-win32-x64-msvc",
3
- "version": "0.4.1",
3
+ "version": "0.4.3",
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": [
7
7
  "wickra.win32-x64-msvc.node"
8
8
  ],
9
- "license": "PolyForm-Noncommercial-1.0.0",
9
+ "license": "LicenseRef-Wickra-Noncommercial-1.0.0",
10
10
  "engines": {
11
11
  "node": ">= 18"
12
12
  },
package/package.json CHANGED
@@ -1,11 +1,11 @@
1
1
  {
2
2
  "name": "wickra",
3
- "version": "0.4.1",
3
+ "version": "0.4.3",
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",
7
7
  "types": "index.d.ts",
8
- "license": "PolyForm-Noncommercial-1.0.0",
8
+ "license": "LicenseRef-Wickra-Noncommercial-1.0.0",
9
9
  "keywords": [
10
10
  "trading",
11
11
  "indicators",
@@ -47,12 +47,12 @@
47
47
  "node": ">= 18"
48
48
  },
49
49
  "optionalDependencies": {
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"
50
+ "wickra-linux-x64-gnu": "0.4.3",
51
+ "wickra-linux-arm64-gnu": "0.4.3",
52
+ "wickra-darwin-x64": "0.4.3",
53
+ "wickra-darwin-arm64": "0.4.3",
54
+ "wickra-win32-x64-msvc": "0.4.3",
55
+ "wickra-win32-arm64-msvc": "0.4.3"
56
56
  },
57
57
  "scripts": {
58
58
  "build": "napi build --platform --release",
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file