wickra-wasm 0.9.0 → 0.9.2
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 +80 -20
- package/package.json +1 -1
- package/wickra_wasm.d.ts +9 -9
- package/wickra_wasm.js +1 -1
- package/wickra_wasm_bg.js +74 -74
- package/wickra_wasm_bg.wasm +0 -0
package/README.md
CHANGED
|
@@ -18,12 +18,13 @@
|
|
|
18
18
|
[](https://www.bestpractices.dev/projects/13094)
|
|
19
19
|
[](https://github.com/wickra-lib/wickra/attestations)
|
|
20
20
|
[](https://docs.wickra.org)
|
|
21
|
+
[](https://docs.wickra.org/FAQ#do-all-the-language-bindings-compute-the-same-values)
|
|
21
22
|
|
|
22
23
|
**Streaming-first technical indicators. Install with `pip install wickra` — no system dependencies.**
|
|
23
24
|
|
|
24
25
|
Wickra is a multi-language technical-analysis library with a Rust core and
|
|
25
|
-
native bindings for Python, Node.js and
|
|
26
|
-
C
|
|
26
|
+
native bindings for Python, Node.js and WASM, plus a C ABI that C, C++,
|
|
27
|
+
C#, Go, Java, R and any other C-capable language links against. Every indicator is a
|
|
27
28
|
state machine that updates in O(1) per new data point, so live trading bots and
|
|
28
29
|
historical backtests share the exact same implementation.
|
|
29
30
|
|
|
@@ -53,6 +54,7 @@ Full documentation lives at **[docs.wickra.org](https://docs.wickra.org)**:
|
|
|
53
54
|
[Node](https://docs.wickra.org/Quickstart-Node),
|
|
54
55
|
[WASM](https://docs.wickra.org/Quickstart-WASM),
|
|
55
56
|
[C](https://docs.wickra.org/Quickstart-C),
|
|
57
|
+
[C++](https://docs.wickra.org/Quickstart-C),
|
|
56
58
|
[C#](https://docs.wickra.org/Quickstart-CSharp),
|
|
57
59
|
[Go](https://docs.wickra.org/Quickstart-Go),
|
|
58
60
|
[Java](https://docs.wickra.org/Quickstart-Java),
|
|
@@ -81,14 +83,19 @@ times to get there.
|
|
|
81
83
|
breadth, Renko/Kagi/Point&Figure bars, Ehlers DSP cycles, risk/performance
|
|
82
84
|
metrics — every single one updating in **O(1) per tick**. TA-Lib ships ~150 and
|
|
83
85
|
none of them stream.
|
|
84
|
-
- **One Rust core, five first-class targets.** Native **Python · Node.js ·
|
|
85
|
-
|
|
86
|
+
- **One Rust core, five first-class targets.** Native **Rust · Python · Node.js ·
|
|
87
|
+
WASM** plus a **C ABI** for C, C++, C#, Go, Java, R and any other C-capable language —
|
|
86
88
|
identical math, identical results, zero per-language reimplementation and zero
|
|
87
89
|
GIL bottleneck.
|
|
88
90
|
- **Correct by construction, not by hope.** Every `update` validates its input,
|
|
89
91
|
runs a real warmup, and returns an `Option` so a single bad tick can't silently
|
|
90
92
|
poison state. `batch == streaming` is **bit-exact, fuzzed and 100 %-line-covered
|
|
91
93
|
for all 514 indicators**.
|
|
94
|
+
- **Identical across every language — proven, not promised.** All 514 indicators
|
|
95
|
+
are replayed through **all 10 languages** (Rust · Python · Node.js · WASM · C ·
|
|
96
|
+
C++ · C# · Go · Java · R) and checked **bit-for-bit against the Rust reference**
|
|
97
|
+
via shared golden fixtures in CI. The math is verifiably the same everywhere —
|
|
98
|
+
this very check caught and fixed two real cross-language marshalling bugs.
|
|
92
99
|
- **Orders of magnitude faster where it counts.** In streaming Wickra is **11–56×**
|
|
93
100
|
faster than the only other incremental peer and **thousands of times** faster
|
|
94
101
|
than recompute-on-every-tick libraries. On batch it wins several rows outright
|
|
@@ -106,7 +113,7 @@ Every other library forces one of those compromises. Wickra doesn't:
|
|
|
106
113
|
|
|
107
114
|
| Library | Install | Streaming | Languages | Indicators | Active |
|
|
108
115
|
|------------------|-------------|-------------|-----------------------------|-----------:|--------|
|
|
109
|
-
| **★ Wickra**| **clean** | **yes, O(1)** | **Rust · Python · Node · WASM · C · C# · Go · Java · R** | **514** | **yes** |
|
|
116
|
+
| **★ Wickra**| **clean** | **yes, O(1)** | **Rust · Python · Node.js · WASM · C · C++ · C# · Go · Java · R** | **514** | **yes** |
|
|
110
117
|
| kand | clean | yes | Python · WASM · Rust | ~60 | yes |
|
|
111
118
|
| ta-rs | clean | yes | Rust only | ~30 | stale |
|
|
112
119
|
| yata | clean | partial | Rust only | ~35 | yes |
|
|
@@ -137,12 +144,38 @@ elsewhere for `None`-warmup, NaN-safety and bit-exact `batch == streaming`.
|
|
|
137
144
|
Full tables (Rust + Python, streaming + batch) and how to reproduce them live in
|
|
138
145
|
**[BENCHMARKS.md](BENCHMARKS.md)**.
|
|
139
146
|
|
|
147
|
+
### Pick your language with eyes open — per-binding throughput
|
|
148
|
+
|
|
149
|
+
Every binding calls the **same** Rust core, so this is **not** a speed claim — it
|
|
150
|
+
is the raw cost of crossing each language's FFI boundary (`SMA(20)`, 200 000 bars,
|
|
151
|
+
Ryzen 9 9950X, million updates/sec). **Batch is near-core everywhere; streaming is
|
|
152
|
+
where the boundary shows** — so if you stream tick-by-tick, the table tells you
|
|
153
|
+
which binding keeps up and which to avoid for hot loops.
|
|
154
|
+
|
|
155
|
+
| Language | streaming (Mupd/s) | batch (Mupd/s) |
|
|
156
|
+
|-----------------|-------------------:|---------------:|
|
|
157
|
+
| Rust (no FFI) | 391 | 500 |
|
|
158
|
+
| C / C++ | 383 | 330 |
|
|
159
|
+
| C# | 337 | 244 |
|
|
160
|
+
| Python | 33 | 488 |
|
|
161
|
+
| Java | 28 | 175 |
|
|
162
|
+
| Go | 24 | 400 |
|
|
163
|
+
| WASM | 19 | 167 |
|
|
164
|
+
| Node.js | 17 | 10 |
|
|
165
|
+
| R | 0.1 | 193 |
|
|
166
|
+
|
|
167
|
+
All ten share one verified implementation (see the verification badge above), so
|
|
168
|
+
the *numbers* differ but the *values* are bit-for-bit identical. Methodology and
|
|
169
|
+
the per-indicator breakdown are in [BENCHMARKS.md](BENCHMARKS.md#3-per-binding-throughput--the-cost-of-the-boundary).
|
|
170
|
+
|
|
140
171
|
## Indicators
|
|
141
172
|
|
|
142
173
|
514 streaming-first indicators across twenty-four families. Every one passes the
|
|
143
174
|
`batch == streaming` equivalence test, reference-value tests, and reset
|
|
144
|
-
semantics tests
|
|
145
|
-
|
|
175
|
+
semantics tests — and is replayed through **all 10 languages** and checked
|
|
176
|
+
bit-for-bit against the Rust reference (golden fixtures, in CI). Each has a
|
|
177
|
+
per-indicator deep dive (formula, parameters, warmup) at
|
|
178
|
+
[docs.wickra.org](https://docs.wickra.org/Indicators-Overview).
|
|
146
179
|
|
|
147
180
|
| Family | Indicators |
|
|
148
181
|
|--------|-----------|
|
|
@@ -153,7 +186,7 @@ warmup) at [docs.wickra.org](https://docs.wickra.org/Indicators-Overview).
|
|
|
153
186
|
| Volatility & Bands | ATR, Bollinger Bands, Keltner Channels, Donchian Channels, NATR, StdDev, Ulcer Index, Historical Volatility, Bollinger Bandwidth, %B, True Range, Chaikin Volatility, RVI (Relative Volatility Index), Parkinson Volatility, Garman-Klass Volatility, Rogers-Satchell Volatility, Yang-Zhang Volatility, Volatility Cone |
|
|
154
187
|
| 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, Quartile Bands, Bomar Bands, Median Channel, Projection Bands, Projection Oscillator |
|
|
155
188
|
| 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, Kase DevStop, Elder SafeZone, ATR Ratchet, NRTR, Time-Based Stop, Modified MA Stop |
|
|
156
|
-
| 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, Volume RSI, Williams Accumulation/Distribution, Twiggs Money Flow, Trade Volume Index, Intraday Intensity
|
|
189
|
+
| 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 Oscillator, Anchored VWAP, Demand Index, TSV, VZO, Market Facilitation Index, Volume RSI, Williams Accumulation/Distribution, Twiggs Money Flow, Trade Volume Index, Intraday Intensity, Better Volume, Volume-Weighted MACD |
|
|
157
190
|
| 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, Jarque-Bera, Rolling Min-Max Scaler, Shannon Entropy, Sample Entropy, Kendall Tau |
|
|
158
191
|
| 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, Highpass Filter, Reflex, Trendflex, Correlation Trend Indicator, Adaptive RSI, Universal Oscillator, Adaptive CCI, Bandpass Filter, Even Better Sinewave, Autocorrelation Periodogram |
|
|
159
192
|
| Pivots & S/R | Classic Pivots, Fibonacci Pivots, Camarilla, Woodie Pivots, DeMark Pivots, Williams Fractals, ZigZag, Central Pivot Range, Murrey Math Lines, Andrews Pitchfork, Volume-Weighted Support/Resistance, Pivot Reversal |
|
|
@@ -190,7 +223,7 @@ it — regenerate from the core).
|
|
|
190
223
|
| Browser / WASM | `npm install wickra-wasm` | `examples/wasm/index.html` |
|
|
191
224
|
| Rust | `cargo add wickra` | `examples/rust/src/bin/backtest.rs` |
|
|
192
225
|
| C / C++ (C ABI) | header + library, see [`bindings/c`](bindings/c) | `examples/c/streaming.c` |
|
|
193
|
-
| C#
|
|
226
|
+
| C# (C ABI) | `dotnet add package Wickra`, see [`bindings/csharp`](bindings/csharp) | `examples/csharp/streaming` |
|
|
194
227
|
| Go (cgo, C ABI) | `go get github.com/wickra-lib/wickra/bindings/go`, see [`bindings/go`](bindings/go) | `examples/go/streaming` |
|
|
195
228
|
| Java (FFM, C ABI) | Maven Central `org.wickra:wickra`, see [`bindings/java`](bindings/java) | `examples/java` (`Streaming`) |
|
|
196
229
|
| R (`.Call`, C ABI) | `R CMD INSTALL bindings/r`, see [`bindings/r`](bindings/r) | `examples/r/streaming.R` |
|
|
@@ -202,6 +235,29 @@ The wickra-core crate is `unsafe`-forbidden, so the native bindings are
|
|
|
202
235
|
memory-safe end to end. The C ABI runs the same safe core; only its thin FFI
|
|
203
236
|
boundary uses `unsafe`, and the caller owns handle lifetimes (`_new` / `_free`).
|
|
204
237
|
|
|
238
|
+
## Requirements
|
|
239
|
+
|
|
240
|
+
The minimum supported version per language. Prebuilt packages (Rust, Python,
|
|
241
|
+
Node.js, WASM, C#) need only the runtime; the C-ABI bindings that compile on
|
|
242
|
+
install — Go (cgo) and R (`.Call`) — also need a C compiler, and Java runs with
|
|
243
|
+
`--enable-native-access=ALL-UNNAMED`.
|
|
244
|
+
|
|
245
|
+
| Language | Package | Minimum supported |
|
|
246
|
+
|-------------|--------------------------------------|----------------------------|
|
|
247
|
+
| Rust | crates.io · `wickra` | 1.86 (MSRV) |
|
|
248
|
+
| Python | PyPI · `wickra` (abi3 wheel) | 3.9 (tested through 3.13) |
|
|
249
|
+
| Node.js | npm · `wickra` (N-API 8) | 20 (tested on 22 · 24 LTS) |
|
|
250
|
+
| WASM | npm · `wickra-wasm` | any modern JS engine |
|
|
251
|
+
| C | `wickra.h` + library (releases) | C99 compiler |
|
|
252
|
+
| C++ | `wickra.hpp` over the C ABI | C++14 compiler |
|
|
253
|
+
| C# | NuGet · `Wickra` | .NET 8 (`net8.0`) |
|
|
254
|
+
| Go | module · `wickra-lib/wickra-go` | Go 1.23 (cgo) |
|
|
255
|
+
| Java | Maven Central · `org.wickra:wickra` | Java 22 (FFM / Panama) |
|
|
256
|
+
| R | source package | R ≥ 2.10 (Rtools on Win.) |
|
|
257
|
+
|
|
258
|
+
Full per-language detail (runtime vs. build-from-source) is on the
|
|
259
|
+
[Requirements page](https://docs.wickra.org/Requirements) in the docs.
|
|
260
|
+
|
|
205
261
|
## Rust API
|
|
206
262
|
|
|
207
263
|
```rust
|
|
@@ -247,8 +303,8 @@ while let Some(event) = stream.next_event().await? {
|
|
|
247
303
|
}
|
|
248
304
|
```
|
|
249
305
|
|
|
250
|
-
A Python live
|
|
251
|
-
`examples/python/
|
|
306
|
+
A Python live Binance feed example using the public `websockets` package lives at
|
|
307
|
+
`examples/python/live_binance.py`.
|
|
252
308
|
|
|
253
309
|
## Project layout
|
|
254
310
|
|
|
@@ -264,15 +320,15 @@ wickra/
|
|
|
264
320
|
│ ├── node/ napi-rs (publishes on npm)
|
|
265
321
|
│ ├── wasm/ wasm-bindgen (browsers, bundlers, Node)
|
|
266
322
|
│ ├── c/ C ABI (cdylib + staticlib) + generated include/wickra.h
|
|
267
|
-
│ ├── csharp/
|
|
323
|
+
│ ├── csharp/ C# binding over the C ABI (publishes on NuGet)
|
|
268
324
|
│ ├── go/ Go binding over the C ABI via cgo (module tag)
|
|
269
325
|
│ ├── r/ R binding over the C ABI via .Call (R package)
|
|
270
326
|
│ └── java/ Java binding over the C ABI via the FFM API (Maven Central)
|
|
271
327
|
├── examples/ examples/README.md indexes every language
|
|
272
328
|
│ ├── data/ real BTCUSDT OHLCV datasets, one per timeframe
|
|
273
329
|
│ ├── rust/ Rust workspace member (`wickra-examples`)
|
|
274
|
-
│ ├── python/ backtest, live
|
|
275
|
-
│ ├── node/ streaming, backtest, live
|
|
330
|
+
│ ├── python/ backtest, live Binance feed, parallel assets, multi-tf
|
|
331
|
+
│ ├── node/ streaming, backtest, live Binance feed (load `wickra`)
|
|
276
332
|
│ ├── wasm/ browser demo for `wickra-wasm`
|
|
277
333
|
│ ├── c/ C smoke + streaming, C++ RAII wrapper
|
|
278
334
|
│ ├── csharp/ streaming, backtest, strategies (load `Wickra`)
|
|
@@ -312,7 +368,7 @@ cargo build -p wickra-c --release
|
|
|
312
368
|
cmake -S examples/c -B examples/c/build -DWICKRA_LIB_DIR="$PWD/target/release"
|
|
313
369
|
cmake --build examples/c/build && ctest --test-dir examples/c/build --output-on-failure
|
|
314
370
|
|
|
315
|
-
# C#
|
|
371
|
+
# C# binding (requires the .NET 8 SDK; links the C ABI above)
|
|
316
372
|
dotnet test bindings/csharp/Wickra.Tests/Wickra.Tests.csproj
|
|
317
373
|
|
|
318
374
|
# Go binding (requires a C compiler for cgo; links the C ABI above)
|
|
@@ -358,11 +414,15 @@ Every layer is covered; run the suites with the commands in
|
|
|
358
414
|
- `bindings/java`: JUnit cases covering one indicator per FFI archetype
|
|
359
415
|
(scalar/batch, multi-output, bars, profile, array input) plus batch equivalence.
|
|
360
416
|
|
|
361
|
-
|
|
362
|
-
language-neutral golden fixture
|
|
363
|
-
`
|
|
364
|
-
|
|
365
|
-
|
|
417
|
+
On top of those per-binding tests, **all 10 languages** (Rust, Python, Node.js,
|
|
418
|
+
WASM, C, C++, C#, Go, Java, R) replay a shared, language-neutral golden fixture
|
|
419
|
+
(`testdata/golden/*.csv`, generated by
|
|
420
|
+
`cargo run -p wickra-examples --bin gen_golden`) and assert **bit-for-bit parity
|
|
421
|
+
with the Rust reference for every one of the 514 indicators** across every
|
|
422
|
+
archetype (scalar, multi-output, pairwise, derivatives-tick, cross-section,
|
|
423
|
+
order-book, trade, profile, alt-chart bars, footprint). This catches FFI wiring
|
|
424
|
+
bugs the math-only core tests cannot see — it has already found and fixed real
|
|
425
|
+
cross-language marshalling bugs in the Java and R bindings.
|
|
366
426
|
|
|
367
427
|
## Contributing
|
|
368
428
|
|
package/package.json
CHANGED
package/wickra_wasm.d.ts
CHANGED
|
@@ -30,6 +30,15 @@ export class ADL {
|
|
|
30
30
|
update(high: number, low: number, close: number, volume: number): number | undefined;
|
|
31
31
|
}
|
|
32
32
|
|
|
33
|
+
export class ADOSC {
|
|
34
|
+
free(): void;
|
|
35
|
+
[Symbol.dispose](): void;
|
|
36
|
+
batch(high: Float64Array, low: Float64Array, close: Float64Array): Float64Array;
|
|
37
|
+
constructor();
|
|
38
|
+
reset(): void;
|
|
39
|
+
update(high: number, low: number, close: number): number | undefined;
|
|
40
|
+
}
|
|
41
|
+
|
|
33
42
|
export class ADX {
|
|
34
43
|
free(): void;
|
|
35
44
|
[Symbol.dispose](): void;
|
|
@@ -5705,15 +5714,6 @@ export class WickRatio {
|
|
|
5705
5714
|
update(open: number, high: number, low: number, close: number): number | undefined;
|
|
5706
5715
|
}
|
|
5707
5716
|
|
|
5708
|
-
export class WilliamsAD {
|
|
5709
|
-
free(): void;
|
|
5710
|
-
[Symbol.dispose](): void;
|
|
5711
|
-
batch(high: Float64Array, low: Float64Array, close: Float64Array): Float64Array;
|
|
5712
|
-
constructor();
|
|
5713
|
-
reset(): void;
|
|
5714
|
-
update(high: number, low: number, close: number): number | undefined;
|
|
5715
|
-
}
|
|
5716
|
-
|
|
5717
5717
|
export class WilliamsFractals {
|
|
5718
5718
|
free(): void;
|
|
5719
5719
|
[Symbol.dispose](): void;
|
package/wickra_wasm.js
CHANGED
|
@@ -5,5 +5,5 @@ import { __wbg_set_wasm } from "./wickra_wasm_bg.js";
|
|
|
5
5
|
__wbg_set_wasm(wasm);
|
|
6
6
|
|
|
7
7
|
export {
|
|
8
|
-
ADAPTIVECCI, ADAPTIVERSI, ADL, ADX, ADXR, ALMA, APO, ATR, AUTOCORRPGRAM, AVGPRICE, AbandonedBaby, Abcd, AbsoluteBreadthIndex, AccelerationBands, AcceleratorOscillator, AdVolumeLine, AdaptiveCycle, AdaptiveLaguerre, AdvanceBlock, AdvanceDecline, AdvanceDeclineRatio, Alligator, Alpha, AmihudIlliquidity, AnchoredRSI, AnchoredVWAP, AndrewsPitchfork, Aroon, AroonOscillator, AtrBands, AtrRatchet, AtrTrailingStop, AutoFib, Autocorrelation, AverageDailyRange, AverageDrawdown, AwesomeOscillator, AwesomeOscillatorHistogram, BANDPASS, BalanceOfPower, Bat, BeltHold, Beta, BetaNeutralSpread, BetterVolume, BipowerVariation, BodySizePct, BollingerBands, BollingerBandwidth, BomarBands, BreadthThrust, Breakaway, BullishPercentIndex, BurkeRatio, Butterfly, CCI, CFO, CMO, CTI, CalendarSpread, CalmarRatio, Camarilla, CandleVolume, CenterOfGravity, CentralPivotRange, ChaikinMoneyFlow, ChaikinOscillator, ChaikinVolatility, ChandeKrollStop, ChandelierExit, ChoppinessIndex, ClassicPivots, CloseVsOpen, ClosingMarubozu, CoefficientOfVariation, Cointegration, CommonSenseRatio, CompositeProfile, ConcealingBabySwallow, ConditionalValueAtRisk, ConnorsRSI, Coppock, Counterattack, Crab, CumulativeVolumeDelta, CumulativeVolumeIndex, CupAndHandle, CyberneticCycle, Cypher, DEMA, DPO, DX, DayOfWeekProfile, Decycler, DecyclerOscillator, DemandIndex, DemarkPivots, DepthSlope, DerivativeOscillator, DetrendedStdDev, DisparityIndex, DistanceSsd, Doji, DojiStar, DollarBars, Donchian, DonchianStop, DoubleBollinger, DoubleTopBottom, DownsideGapThreeMethods, DragonflyDoji, DrawdownDuration, DumplingTop, DynamicMomentumIndex, EHMA, EMA, EVENBETTERSINE, EVWMA, EaseOfMovement, EffectiveSpread, EhlersStochastic, ElderImpulse, ElderRay, ElderSafeZone, EmpiricalModeDecomposition, Engulfing, Equivolume, EstimatedLeverageRatio, EveningDojiStar, EwmaVolatility, Expectancy, FAMA, FRAMA, FallingThreeMethods, FibArcs, FibChannel, FibConfluence, FibExtension, FibFan, FibProjection, FibRetracement, FibTimeZones, FibonacciPivots, FisherRSI, FisherTransform, FlagPennant, Footprint, ForceIndex, FractalChaosBands, FryPanBottom, FundingBasis, FundingImpliedApr, FundingRate, FundingRateMean, FundingRateZScore, GD, GMA, GainLossRatio, GainToPainRatio, GapSideBySideWhite, Garch11, GarmanKlassVolatility, Gartley, GatorOscillator, GoldenPocket, GrangerCausality, GravestoneDoji, HIGHPASS, HMA, HT_DCPHASE, HT_PHASOR, HT_TRENDMODE, Hammer, HangingMan, Harami, HaramiCross, HasbrouckInformationShare, HeadAndShoulders, HeikinAshi, HeikinAshiOscillator, HiLoActivator, HighLowIndex, HighLowRange, HighLowVolumeNodes, HighWave, Hikkake, HikkakeModified, HilbertDominantCycle, HistoricalVolatility, HoltWinters, HomingPigeon, HurstChannel, HurstExponent, IMI, Ichimoku, IdenticalThreeCrows, ImbalanceBars, InNeck, Inertia, InformationRatio, InitialBalance, InstantaneousTrendline, IntradayIntensity, IntradayVolatilityProfile, InverseFisherTransform, InvertedHammer, JARQUEBERA, JMA, JumpIndicator, KAMA, KRatio, KST, KVO, KagiBars, KalmanHedgeRatio, KaseDevStop, KasePermissionStochastic, KellyCriterion, Keltner, KendallTau, Kicking, KickingByLength, Kurtosis, KylesLambda, LINEARREG_INTERCEPT, LadderBottom, LaguerreRSI, LeadLagCrossCorrelation, LinRegAngle, LinRegChannel, LinRegSlope, LinearRegression, LiquidationFeatures, LogReturn, LongLeggedDoji, LongLine, LongShortRatio, M2Measure, MACD, MACDEXT, MACDFIX, MAMA, MFI, MIDPOINT, MIDPRICE, MINUS_DI, MINUS_DM, MOM, MaEnvelope, MacdHistogram, MarketFacilitationIndex, MartinRatio, Marubozu, MassIndex, MatHold, MatchingLow, MaxDrawdown, McClellanOscillator, McClellanSummationIndex, McGinleyDynamic, MedianAbsoluteDeviation, MedianChannel, MedianMA, MedianPrice, Microprice, ModifiedMaStop, MorningDojiStar, MorningEveningStar, MurreyMathLines, NATR, NVI, NakedPoc, NewHighsNewLows, NewPriceLines, Nrtr, OBV, OIPriceDivergence, OIWeighted, OiToVolumeRatio, OmegaRatio, OnNeck, OpenInterestDelta, OpenInterestMomentum, OpeningMarubozu, OpeningRange, OrderBookImbalanceFull, OrderBookImbalanceTop1, OrderBookImbalanceTopN, OrderFlowImbalance, OuHalfLife, OvernightGap, OvernightIntradayReturn, PGO, PLUS_DI, PLUS_DM, PMO, POLARIZED_FRACTAL_EFFICIENCY, PPO, PSAR, PVI, PainIndex, PairSpreadZScore, PairwiseBeta, ParkinsonVolatility, PearsonCorrelation, PercentAboveMa, PercentB, PercentageTrailingStop, PerpetualPremiumIndex, PiercingDarkCloud, Pin, PivotReversal, PointAndFigureBars, PpoHistogram, ProfileShape, ProfitFactor, ProjectionBands, ProjectionOscillator, QQE, Qstick, QuartileBands, QuotedSpread, REFLEX, RMI, ROC, ROCP, ROCR, ROCR100, ROLLINGMINMAX, RSI, RSX, RSquared, RVI, RVIVolatility, RWI, RangeBars, RealizedSpread, RealizedVolatility, RecoveryFactor, RectangleRange, RegimeLabel, RelativeStrengthAB, RenkoBars, RenkoTrailingStop, RickshawMan, RisingThreeMethods, RogersSatchellVolatility, RollMeasure, RollingCorrelation, RollingCovariance, RollingIqr, RollingPercentileRank, RollingQuantile, RollingVWAP, RoofingFilter, RunBars, SAMPLEENT, SAREXT, SHANNONENT, SMA, SMI, SMMA, STC, SWMA, SeasonalZScore, SeparatingLines, SessionHighLow, SessionRange, SessionVwap, Shark, SharpeRatio, ShootingStar, ShortLine, SignedVolume, SineWave, SinglePrints, Skewness, SmoothedHeikinAshi, SortinoRatio, SpearmanCorrelation, SpinningTop, SpreadAr1Coefficient, SpreadBollingerBands, SpreadHurst, StalledPattern, StandardError, StandardErrorBands, StarcBands, StdDev, StepTrailingStop, SterlingRatio, StickSandwich, StochRSI, Stochastic, StochasticCCI, SuperSmoother, SuperTrend, T3, TDCamouflage, TDClop, TDClopwin, TDCombo, TDCountdown, TDDWave, TDDeMarker, TDDifferential, TDLines, TDMovingAverage, TDOpen, TDPressure, TDPropulsion, TDREI, TDRangeProjection, TDRiskLevel, TDSequential, TDSetup, TDTrap, TEMA, TII, TRENDFLEX, TREND_STRENGTH_INDEX, TRIMA, TRIX, TSF, TSI, TSV, TTM_TREND, TailRatio, TakerBuySellRatio, Takuri, TasukiGap, TermStructureBasis, ThreeDrives, ThreeInside, ThreeLineBreak, ThreeLineBreakBars, ThreeLineStrike, ThreeOutside, ThreeSoldiersOrCrows, ThreeStarsInSouth, Thrusting, TickBars, TickIndex, TimeBasedStop, TimeOfDayReturnProfile, TowerTopBottom, TpoProfile, TradeImbalance, TradeSignAutocorrelation, TradeVolumeIndex, TrendLabel, TreynorRatio, Triangle, Trin, TripleTopBottom, Tristar, TrueRange, TsfOscillator, TtmSqueeze, TurnOfMonth, Tweezer, TwiggsMoneyFlow, TwoCrows, TypicalPrice, UNIVERSALOSC, UlcerIndex, UltimateOscillator, UniqueThreeRiver, UpDownVolumeRatio, UpsideGapThreeMethods, UpsideGapTwoCrows, UpsidePotentialRatio, VIDYA, VWAP, VWMA, VZO, ValueArea, ValueAtRisk, Variance, VarianceRatio, VerticalHorizontalFilter, VolatilityCone, VolatilityOfVolatility, VolatilityRatio, VoltyStop, VolumeBars, VolumeByTimeProfile, VolumeOscillator, VolumePriceTrend, VolumeProfile, VolumeRsi, VolumeWeightedMacd, VolumeWeightedSr, Vortex, Vpin, VwapStdDevBands, WAVE_PM, WMA, Wad, WaveTrend, Wedge, WeightedClose, WickRatio,
|
|
8
|
+
ADAPTIVECCI, ADAPTIVERSI, ADL, ADOSC, ADX, ADXR, ALMA, APO, ATR, AUTOCORRPGRAM, AVGPRICE, AbandonedBaby, Abcd, AbsoluteBreadthIndex, AccelerationBands, AcceleratorOscillator, AdVolumeLine, AdaptiveCycle, AdaptiveLaguerre, AdvanceBlock, AdvanceDecline, AdvanceDeclineRatio, Alligator, Alpha, AmihudIlliquidity, AnchoredRSI, AnchoredVWAP, AndrewsPitchfork, Aroon, AroonOscillator, AtrBands, AtrRatchet, AtrTrailingStop, AutoFib, Autocorrelation, AverageDailyRange, AverageDrawdown, AwesomeOscillator, AwesomeOscillatorHistogram, BANDPASS, BalanceOfPower, Bat, BeltHold, Beta, BetaNeutralSpread, BetterVolume, BipowerVariation, BodySizePct, BollingerBands, BollingerBandwidth, BomarBands, BreadthThrust, Breakaway, BullishPercentIndex, BurkeRatio, Butterfly, CCI, CFO, CMO, CTI, CalendarSpread, CalmarRatio, Camarilla, CandleVolume, CenterOfGravity, CentralPivotRange, ChaikinMoneyFlow, ChaikinOscillator, ChaikinVolatility, ChandeKrollStop, ChandelierExit, ChoppinessIndex, ClassicPivots, CloseVsOpen, ClosingMarubozu, CoefficientOfVariation, Cointegration, CommonSenseRatio, CompositeProfile, ConcealingBabySwallow, ConditionalValueAtRisk, ConnorsRSI, Coppock, Counterattack, Crab, CumulativeVolumeDelta, CumulativeVolumeIndex, CupAndHandle, CyberneticCycle, Cypher, DEMA, DPO, DX, DayOfWeekProfile, Decycler, DecyclerOscillator, DemandIndex, DemarkPivots, DepthSlope, DerivativeOscillator, DetrendedStdDev, DisparityIndex, DistanceSsd, Doji, DojiStar, DollarBars, Donchian, DonchianStop, DoubleBollinger, DoubleTopBottom, DownsideGapThreeMethods, DragonflyDoji, DrawdownDuration, DumplingTop, DynamicMomentumIndex, EHMA, EMA, EVENBETTERSINE, EVWMA, EaseOfMovement, EffectiveSpread, EhlersStochastic, ElderImpulse, ElderRay, ElderSafeZone, EmpiricalModeDecomposition, Engulfing, Equivolume, EstimatedLeverageRatio, EveningDojiStar, EwmaVolatility, Expectancy, FAMA, FRAMA, FallingThreeMethods, FibArcs, FibChannel, FibConfluence, FibExtension, FibFan, FibProjection, FibRetracement, FibTimeZones, FibonacciPivots, FisherRSI, FisherTransform, FlagPennant, Footprint, ForceIndex, FractalChaosBands, FryPanBottom, FundingBasis, FundingImpliedApr, FundingRate, FundingRateMean, FundingRateZScore, GD, GMA, GainLossRatio, GainToPainRatio, GapSideBySideWhite, Garch11, GarmanKlassVolatility, Gartley, GatorOscillator, GoldenPocket, GrangerCausality, GravestoneDoji, HIGHPASS, HMA, HT_DCPHASE, HT_PHASOR, HT_TRENDMODE, Hammer, HangingMan, Harami, HaramiCross, HasbrouckInformationShare, HeadAndShoulders, HeikinAshi, HeikinAshiOscillator, HiLoActivator, HighLowIndex, HighLowRange, HighLowVolumeNodes, HighWave, Hikkake, HikkakeModified, HilbertDominantCycle, HistoricalVolatility, HoltWinters, HomingPigeon, HurstChannel, HurstExponent, IMI, Ichimoku, IdenticalThreeCrows, ImbalanceBars, InNeck, Inertia, InformationRatio, InitialBalance, InstantaneousTrendline, IntradayIntensity, IntradayVolatilityProfile, InverseFisherTransform, InvertedHammer, JARQUEBERA, JMA, JumpIndicator, KAMA, KRatio, KST, KVO, KagiBars, KalmanHedgeRatio, KaseDevStop, KasePermissionStochastic, KellyCriterion, Keltner, KendallTau, Kicking, KickingByLength, Kurtosis, KylesLambda, LINEARREG_INTERCEPT, LadderBottom, LaguerreRSI, LeadLagCrossCorrelation, LinRegAngle, LinRegChannel, LinRegSlope, LinearRegression, LiquidationFeatures, LogReturn, LongLeggedDoji, LongLine, LongShortRatio, M2Measure, MACD, MACDEXT, MACDFIX, MAMA, MFI, MIDPOINT, MIDPRICE, MINUS_DI, MINUS_DM, MOM, MaEnvelope, MacdHistogram, MarketFacilitationIndex, MartinRatio, Marubozu, MassIndex, MatHold, MatchingLow, MaxDrawdown, McClellanOscillator, McClellanSummationIndex, McGinleyDynamic, MedianAbsoluteDeviation, MedianChannel, MedianMA, MedianPrice, Microprice, ModifiedMaStop, MorningDojiStar, MorningEveningStar, MurreyMathLines, NATR, NVI, NakedPoc, NewHighsNewLows, NewPriceLines, Nrtr, OBV, OIPriceDivergence, OIWeighted, OiToVolumeRatio, OmegaRatio, OnNeck, OpenInterestDelta, OpenInterestMomentum, OpeningMarubozu, OpeningRange, OrderBookImbalanceFull, OrderBookImbalanceTop1, OrderBookImbalanceTopN, OrderFlowImbalance, OuHalfLife, OvernightGap, OvernightIntradayReturn, PGO, PLUS_DI, PLUS_DM, PMO, POLARIZED_FRACTAL_EFFICIENCY, PPO, PSAR, PVI, PainIndex, PairSpreadZScore, PairwiseBeta, ParkinsonVolatility, PearsonCorrelation, PercentAboveMa, PercentB, PercentageTrailingStop, PerpetualPremiumIndex, PiercingDarkCloud, Pin, PivotReversal, PointAndFigureBars, PpoHistogram, ProfileShape, ProfitFactor, ProjectionBands, ProjectionOscillator, QQE, Qstick, QuartileBands, QuotedSpread, REFLEX, RMI, ROC, ROCP, ROCR, ROCR100, ROLLINGMINMAX, RSI, RSX, RSquared, RVI, RVIVolatility, RWI, RangeBars, RealizedSpread, RealizedVolatility, RecoveryFactor, RectangleRange, RegimeLabel, RelativeStrengthAB, RenkoBars, RenkoTrailingStop, RickshawMan, RisingThreeMethods, RogersSatchellVolatility, RollMeasure, RollingCorrelation, RollingCovariance, RollingIqr, RollingPercentileRank, RollingQuantile, RollingVWAP, RoofingFilter, RunBars, SAMPLEENT, SAREXT, SHANNONENT, SMA, SMI, SMMA, STC, SWMA, SeasonalZScore, SeparatingLines, SessionHighLow, SessionRange, SessionVwap, Shark, SharpeRatio, ShootingStar, ShortLine, SignedVolume, SineWave, SinglePrints, Skewness, SmoothedHeikinAshi, SortinoRatio, SpearmanCorrelation, SpinningTop, SpreadAr1Coefficient, SpreadBollingerBands, SpreadHurst, StalledPattern, StandardError, StandardErrorBands, StarcBands, StdDev, StepTrailingStop, SterlingRatio, StickSandwich, StochRSI, Stochastic, StochasticCCI, SuperSmoother, SuperTrend, T3, TDCamouflage, TDClop, TDClopwin, TDCombo, TDCountdown, TDDWave, TDDeMarker, TDDifferential, TDLines, TDMovingAverage, TDOpen, TDPressure, TDPropulsion, TDREI, TDRangeProjection, TDRiskLevel, TDSequential, TDSetup, TDTrap, TEMA, TII, TRENDFLEX, TREND_STRENGTH_INDEX, TRIMA, TRIX, TSF, TSI, TSV, TTM_TREND, TailRatio, TakerBuySellRatio, Takuri, TasukiGap, TermStructureBasis, ThreeDrives, ThreeInside, ThreeLineBreak, ThreeLineBreakBars, ThreeLineStrike, ThreeOutside, ThreeSoldiersOrCrows, ThreeStarsInSouth, Thrusting, TickBars, TickIndex, TimeBasedStop, TimeOfDayReturnProfile, TowerTopBottom, TpoProfile, TradeImbalance, TradeSignAutocorrelation, TradeVolumeIndex, TrendLabel, TreynorRatio, Triangle, Trin, TripleTopBottom, Tristar, TrueRange, TsfOscillator, TtmSqueeze, TurnOfMonth, Tweezer, TwiggsMoneyFlow, TwoCrows, TypicalPrice, UNIVERSALOSC, UlcerIndex, UltimateOscillator, UniqueThreeRiver, UpDownVolumeRatio, UpsideGapThreeMethods, UpsideGapTwoCrows, UpsidePotentialRatio, VIDYA, VWAP, VWMA, VZO, ValueArea, ValueAtRisk, Variance, VarianceRatio, VerticalHorizontalFilter, VolatilityCone, VolatilityOfVolatility, VolatilityRatio, VoltyStop, VolumeBars, VolumeByTimeProfile, VolumeOscillator, VolumePriceTrend, VolumeProfile, VolumeRsi, VolumeWeightedMacd, VolumeWeightedSr, Vortex, Vpin, VwapStdDevBands, WAVE_PM, WMA, Wad, WaveTrend, Wedge, WeightedClose, WickRatio, WilliamsFractals, WilliamsR, WinRate, WoodiePivots, YangZhangVolatility, YoyoExit, ZLEMA, ZScore, ZeroLagMACD, ZigZag, installPanicHook, version
|
|
9
9
|
} from "./wickra_wasm_bg.js";
|
package/wickra_wasm_bg.js
CHANGED
|
@@ -236,6 +236,78 @@ export class ADL {
|
|
|
236
236
|
}
|
|
237
237
|
if (Symbol.dispose) ADL.prototype[Symbol.dispose] = ADL.prototype.free;
|
|
238
238
|
|
|
239
|
+
export class ADOSC {
|
|
240
|
+
__destroy_into_raw() {
|
|
241
|
+
const ptr = this.__wbg_ptr;
|
|
242
|
+
this.__wbg_ptr = 0;
|
|
243
|
+
ADOSCFinalization.unregister(this);
|
|
244
|
+
return ptr;
|
|
245
|
+
}
|
|
246
|
+
free() {
|
|
247
|
+
const ptr = this.__destroy_into_raw();
|
|
248
|
+
wasm.__wbg_adosc_free(ptr, 0);
|
|
249
|
+
}
|
|
250
|
+
/**
|
|
251
|
+
* @param {Float64Array} high
|
|
252
|
+
* @param {Float64Array} low
|
|
253
|
+
* @param {Float64Array} close
|
|
254
|
+
* @returns {Float64Array}
|
|
255
|
+
*/
|
|
256
|
+
batch(high, low, close) {
|
|
257
|
+
try {
|
|
258
|
+
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
|
|
259
|
+
const ptr0 = passArrayF64ToWasm0(high, wasm.__wbindgen_export3);
|
|
260
|
+
const len0 = WASM_VECTOR_LEN;
|
|
261
|
+
const ptr1 = passArrayF64ToWasm0(low, wasm.__wbindgen_export3);
|
|
262
|
+
const len1 = WASM_VECTOR_LEN;
|
|
263
|
+
const ptr2 = passArrayF64ToWasm0(close, wasm.__wbindgen_export3);
|
|
264
|
+
const len2 = WASM_VECTOR_LEN;
|
|
265
|
+
wasm.adosc_batch(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1, ptr2, len2);
|
|
266
|
+
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
|
|
267
|
+
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
|
|
268
|
+
var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
|
|
269
|
+
if (r2) {
|
|
270
|
+
throw takeObject(r1);
|
|
271
|
+
}
|
|
272
|
+
return takeObject(r0);
|
|
273
|
+
} finally {
|
|
274
|
+
wasm.__wbindgen_add_to_stack_pointer(16);
|
|
275
|
+
}
|
|
276
|
+
}
|
|
277
|
+
constructor() {
|
|
278
|
+
const ret = wasm.adosc_new();
|
|
279
|
+
this.__wbg_ptr = ret;
|
|
280
|
+
ADOSCFinalization.register(this, this.__wbg_ptr, this);
|
|
281
|
+
return this;
|
|
282
|
+
}
|
|
283
|
+
reset() {
|
|
284
|
+
wasm.adosc_reset(this.__wbg_ptr);
|
|
285
|
+
}
|
|
286
|
+
/**
|
|
287
|
+
* @param {number} high
|
|
288
|
+
* @param {number} low
|
|
289
|
+
* @param {number} close
|
|
290
|
+
* @returns {number | undefined}
|
|
291
|
+
*/
|
|
292
|
+
update(high, low, close) {
|
|
293
|
+
try {
|
|
294
|
+
const retptr = wasm.__wbindgen_add_to_stack_pointer(-32);
|
|
295
|
+
wasm.adosc_update(retptr, this.__wbg_ptr, high, low, close);
|
|
296
|
+
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
|
|
297
|
+
var r2 = getDataViewMemory0().getFloat64(retptr + 8 * 1, true);
|
|
298
|
+
var r4 = getDataViewMemory0().getInt32(retptr + 4 * 4, true);
|
|
299
|
+
var r5 = getDataViewMemory0().getInt32(retptr + 4 * 5, true);
|
|
300
|
+
if (r5) {
|
|
301
|
+
throw takeObject(r4);
|
|
302
|
+
}
|
|
303
|
+
return r0 === 0 ? undefined : r2;
|
|
304
|
+
} finally {
|
|
305
|
+
wasm.__wbindgen_add_to_stack_pointer(32);
|
|
306
|
+
}
|
|
307
|
+
}
|
|
308
|
+
}
|
|
309
|
+
if (Symbol.dispose) ADOSC.prototype[Symbol.dispose] = ADOSC.prototype.free;
|
|
310
|
+
|
|
239
311
|
export class ADX {
|
|
240
312
|
__destroy_into_raw() {
|
|
241
313
|
const ptr = this.__wbg_ptr;
|
|
@@ -41612,78 +41684,6 @@ export class WickRatio {
|
|
|
41612
41684
|
}
|
|
41613
41685
|
if (Symbol.dispose) WickRatio.prototype[Symbol.dispose] = WickRatio.prototype.free;
|
|
41614
41686
|
|
|
41615
|
-
export class WilliamsAD {
|
|
41616
|
-
__destroy_into_raw() {
|
|
41617
|
-
const ptr = this.__wbg_ptr;
|
|
41618
|
-
this.__wbg_ptr = 0;
|
|
41619
|
-
WilliamsADFinalization.unregister(this);
|
|
41620
|
-
return ptr;
|
|
41621
|
-
}
|
|
41622
|
-
free() {
|
|
41623
|
-
const ptr = this.__destroy_into_raw();
|
|
41624
|
-
wasm.__wbg_williamsad_free(ptr, 0);
|
|
41625
|
-
}
|
|
41626
|
-
/**
|
|
41627
|
-
* @param {Float64Array} high
|
|
41628
|
-
* @param {Float64Array} low
|
|
41629
|
-
* @param {Float64Array} close
|
|
41630
|
-
* @returns {Float64Array}
|
|
41631
|
-
*/
|
|
41632
|
-
batch(high, low, close) {
|
|
41633
|
-
try {
|
|
41634
|
-
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
|
|
41635
|
-
const ptr0 = passArrayF64ToWasm0(high, wasm.__wbindgen_export3);
|
|
41636
|
-
const len0 = WASM_VECTOR_LEN;
|
|
41637
|
-
const ptr1 = passArrayF64ToWasm0(low, wasm.__wbindgen_export3);
|
|
41638
|
-
const len1 = WASM_VECTOR_LEN;
|
|
41639
|
-
const ptr2 = passArrayF64ToWasm0(close, wasm.__wbindgen_export3);
|
|
41640
|
-
const len2 = WASM_VECTOR_LEN;
|
|
41641
|
-
wasm.williamsad_batch(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1, ptr2, len2);
|
|
41642
|
-
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
|
|
41643
|
-
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
|
|
41644
|
-
var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
|
|
41645
|
-
if (r2) {
|
|
41646
|
-
throw takeObject(r1);
|
|
41647
|
-
}
|
|
41648
|
-
return takeObject(r0);
|
|
41649
|
-
} finally {
|
|
41650
|
-
wasm.__wbindgen_add_to_stack_pointer(16);
|
|
41651
|
-
}
|
|
41652
|
-
}
|
|
41653
|
-
constructor() {
|
|
41654
|
-
const ret = wasm.williamsad_new();
|
|
41655
|
-
this.__wbg_ptr = ret;
|
|
41656
|
-
WilliamsADFinalization.register(this, this.__wbg_ptr, this);
|
|
41657
|
-
return this;
|
|
41658
|
-
}
|
|
41659
|
-
reset() {
|
|
41660
|
-
wasm.williamsad_reset(this.__wbg_ptr);
|
|
41661
|
-
}
|
|
41662
|
-
/**
|
|
41663
|
-
* @param {number} high
|
|
41664
|
-
* @param {number} low
|
|
41665
|
-
* @param {number} close
|
|
41666
|
-
* @returns {number | undefined}
|
|
41667
|
-
*/
|
|
41668
|
-
update(high, low, close) {
|
|
41669
|
-
try {
|
|
41670
|
-
const retptr = wasm.__wbindgen_add_to_stack_pointer(-32);
|
|
41671
|
-
wasm.williamsad_update(retptr, this.__wbg_ptr, high, low, close);
|
|
41672
|
-
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
|
|
41673
|
-
var r2 = getDataViewMemory0().getFloat64(retptr + 8 * 1, true);
|
|
41674
|
-
var r4 = getDataViewMemory0().getInt32(retptr + 4 * 4, true);
|
|
41675
|
-
var r5 = getDataViewMemory0().getInt32(retptr + 4 * 5, true);
|
|
41676
|
-
if (r5) {
|
|
41677
|
-
throw takeObject(r4);
|
|
41678
|
-
}
|
|
41679
|
-
return r0 === 0 ? undefined : r2;
|
|
41680
|
-
} finally {
|
|
41681
|
-
wasm.__wbindgen_add_to_stack_pointer(32);
|
|
41682
|
-
}
|
|
41683
|
-
}
|
|
41684
|
-
}
|
|
41685
|
-
if (Symbol.dispose) WilliamsAD.prototype[Symbol.dispose] = WilliamsAD.prototype.free;
|
|
41686
|
-
|
|
41687
41687
|
export class WilliamsFractals {
|
|
41688
41688
|
__destroy_into_raw() {
|
|
41689
41689
|
const ptr = this.__wbg_ptr;
|
|
@@ -42659,9 +42659,9 @@ const AccelerationBandsFinalization = (typeof FinalizationRegistry === 'undefine
|
|
|
42659
42659
|
const AcceleratorOscillatorFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
42660
42660
|
? { register: () => {}, unregister: () => {} }
|
|
42661
42661
|
: new FinalizationRegistry(ptr => wasm.__wbg_acceleratoroscillator_free(ptr, 1));
|
|
42662
|
-
const
|
|
42662
|
+
const ADOSCFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
42663
42663
|
? { register: () => {}, unregister: () => {} }
|
|
42664
|
-
: new FinalizationRegistry(ptr => wasm.
|
|
42664
|
+
: new FinalizationRegistry(ptr => wasm.__wbg_adosc_free(ptr, 1));
|
|
42665
42665
|
const AdVolumeLineFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
42666
42666
|
? { register: () => {}, unregister: () => {} }
|
|
42667
42667
|
: new FinalizationRegistry(ptr => wasm.__wbg_advolumeline_free(ptr, 1));
|
package/wickra_wasm_bg.wasm
CHANGED
|
Binary file
|