wickra-wasm 0.6.7 → 0.6.8
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 +8 -8
- package/package.json +1 -1
- package/wickra_wasm.d.ts +55 -0
- package/wickra_wasm.js +1 -1
- package/wickra_wasm_bg.js +520 -0
- package/wickra_wasm_bg.wasm +0 -0
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=
|
|
2
|
+
<a href="https://wickra.org"><img src="https://raw.githubusercontent.com/wickra-lib/.github/main/profile/wickra-banner.webp?v=479" alt="Wickra — streaming-first technical indicators" width="100%"></a>
|
|
3
3
|
</p>
|
|
4
4
|
|
|
5
5
|
[](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
|
|
51
|
+
every one of the 479 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),
|
|
@@ -66,7 +66,7 @@ an afterthought — **live, tick-by-tick data** — without giving up the breadt
|
|
|
66
66
|
a full batch library, and without making you reimplement your indicators four
|
|
67
67
|
times to get there.
|
|
68
68
|
|
|
69
|
-
- **The biggest streaming-native catalogue, period.**
|
|
69
|
+
- **The biggest streaming-native catalogue, period.** 479 indicators across 24
|
|
70
70
|
families — candlesticks, harmonic & chart patterns, market profile, market
|
|
71
71
|
breadth, Renko/Kagi/Point&Figure bars, Ehlers DSP cycles, risk/performance
|
|
72
72
|
metrics — every single one updating in **O(1) per tick**. TA-Lib ships ~150 and
|
|
@@ -77,7 +77,7 @@ times to get there.
|
|
|
77
77
|
- **Correct by construction, not by hope.** Every `update` validates its input,
|
|
78
78
|
runs a real warmup, and returns an `Option` so a single bad tick can't silently
|
|
79
79
|
poison state. `batch == streaming` is **bit-exact, fuzzed and 100 %-line-covered
|
|
80
|
-
for all
|
|
80
|
+
for all 479 indicators**.
|
|
81
81
|
- **Orders of magnitude faster where it counts.** In streaming Wickra is **9–58×**
|
|
82
82
|
faster than the only other incremental peer and **thousands of times** faster
|
|
83
83
|
than recompute-on-every-tick libraries. On batch it wins several rows outright
|
|
@@ -95,7 +95,7 @@ Every other library forces one of those compromises. Wickra doesn't:
|
|
|
95
95
|
|
|
96
96
|
| Library | Install | Streaming | Languages | Indicators | Active |
|
|
97
97
|
|------------------|-------------|-------------|-----------------------------|-----------:|--------|
|
|
98
|
-
| **★ Wickra**| **clean** | **yes, O(1)** | **Python · Node · WASM · Rust** | **
|
|
98
|
+
| **★ Wickra**| **clean** | **yes, O(1)** | **Python · Node · WASM · Rust** | **479** | **yes** |
|
|
99
99
|
| kand | clean | yes | Python · WASM · Rust | ~60 | yes |
|
|
100
100
|
| ta-rs | clean | yes | Rust only | ~30 | stale |
|
|
101
101
|
| yata | clean | partial | Rust only | ~35 | yes |
|
|
@@ -128,7 +128,7 @@ Full tables (Rust + Python, streaming + batch) and how to reproduce them live in
|
|
|
128
128
|
|
|
129
129
|
## Indicators
|
|
130
130
|
|
|
131
|
-
|
|
131
|
+
479 streaming-first indicators across twenty-four families. Every one passes the
|
|
132
132
|
`batch == streaming` equivalence test, reference-value tests, and reset
|
|
133
133
|
semantics tests. Each has a per-indicator deep dive (formula, parameters,
|
|
134
134
|
warmup) at [docs.wickra.org](https://docs.wickra.org/Indicators-Overview).
|
|
@@ -147,7 +147,7 @@ warmup) at [docs.wickra.org](https://docs.wickra.org/Indicators-Overview).
|
|
|
147
147
|
| 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 |
|
|
148
148
|
| 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 |
|
|
149
149
|
| 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, TD Camouflage, TD Clop, TD Clopwin, TD Propulsion, TD Trap, TD D-Wave, TD Moving Averages |
|
|
150
|
-
| Ichimoku & Charts | Ichimoku Kinko Hyo (Tenkan, Kijun, Senkou A/B, Chikou), Heikin-Ashi |
|
|
150
|
+
| Ichimoku & Charts | Ichimoku Kinko Hyo (Tenkan, Kijun, Senkou A/B, Chikou), Heikin-Ashi, Heikin-Ashi Oscillator, Three Line Break, Smoothed Heikin-Ashi, Equivolume, CandleVolume |
|
|
151
151
|
| Alt-Chart Bars | Renko (box-size bricks), Kagi (reversal-amount lines), Point & Figure (X/O columns) |
|
|
152
152
|
| 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 |
|
|
153
153
|
| 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 |
|
|
@@ -237,7 +237,7 @@ A Python live-trading example using the public `websockets` package lives at
|
|
|
237
237
|
```
|
|
238
238
|
wickra/
|
|
239
239
|
├── crates/
|
|
240
|
-
│ ├── wickra-core/ core engine + all
|
|
240
|
+
│ ├── wickra-core/ core engine + all 479 indicators
|
|
241
241
|
│ ├── wickra/ top-level facade crate (publishes on crates.io) + benches/
|
|
242
242
|
│ ├── wickra-data/ CSV reader, tick aggregator, live exchange feeds
|
|
243
243
|
│ └── wickra-bench/ internal cross-library benchmark harness (not published)
|
package/package.json
CHANGED
package/wickra_wasm.d.ts
CHANGED
|
@@ -680,6 +680,17 @@ export class Camarilla {
|
|
|
680
680
|
warmupPeriod(): number;
|
|
681
681
|
}
|
|
682
682
|
|
|
683
|
+
export class CandleVolume {
|
|
684
|
+
free(): void;
|
|
685
|
+
[Symbol.dispose](): void;
|
|
686
|
+
batch(open: Float64Array, close: Float64Array, volume: Float64Array): Float64Array;
|
|
687
|
+
isReady(): boolean;
|
|
688
|
+
constructor(period: number);
|
|
689
|
+
reset(): void;
|
|
690
|
+
update(open: number, close: number, volume: number): any;
|
|
691
|
+
warmupPeriod(): number;
|
|
692
|
+
}
|
|
693
|
+
|
|
683
694
|
export class CenterOfGravity {
|
|
684
695
|
free(): void;
|
|
685
696
|
[Symbol.dispose](): void;
|
|
@@ -1350,6 +1361,17 @@ export class Engulfing {
|
|
|
1350
1361
|
warmupPeriod(): number;
|
|
1351
1362
|
}
|
|
1352
1363
|
|
|
1364
|
+
export class Equivolume {
|
|
1365
|
+
free(): void;
|
|
1366
|
+
[Symbol.dispose](): void;
|
|
1367
|
+
batch(high: Float64Array, low: Float64Array, volume: Float64Array): Float64Array;
|
|
1368
|
+
isReady(): boolean;
|
|
1369
|
+
constructor(period: number);
|
|
1370
|
+
reset(): void;
|
|
1371
|
+
update(high: number, low: number, volume: number): any;
|
|
1372
|
+
warmupPeriod(): number;
|
|
1373
|
+
}
|
|
1374
|
+
|
|
1353
1375
|
export class EveningDojiStar {
|
|
1354
1376
|
free(): void;
|
|
1355
1377
|
[Symbol.dispose](): void;
|
|
@@ -1870,6 +1892,17 @@ export class HeikinAshi {
|
|
|
1870
1892
|
warmupPeriod(): number;
|
|
1871
1893
|
}
|
|
1872
1894
|
|
|
1895
|
+
export class HeikinAshiOscillator {
|
|
1896
|
+
free(): void;
|
|
1897
|
+
[Symbol.dispose](): void;
|
|
1898
|
+
batch(open: Float64Array, high: Float64Array, low: Float64Array, close: Float64Array): Float64Array;
|
|
1899
|
+
isReady(): boolean;
|
|
1900
|
+
constructor(period: number);
|
|
1901
|
+
reset(): void;
|
|
1902
|
+
update(open: number, high: number, low: number, close: number): number | undefined;
|
|
1903
|
+
warmupPeriod(): number;
|
|
1904
|
+
}
|
|
1905
|
+
|
|
1873
1906
|
export class HiLoActivator {
|
|
1874
1907
|
free(): void;
|
|
1875
1908
|
[Symbol.dispose](): void;
|
|
@@ -3947,6 +3980,17 @@ export class Skewness {
|
|
|
3947
3980
|
warmupPeriod(): number;
|
|
3948
3981
|
}
|
|
3949
3982
|
|
|
3983
|
+
export class SmoothedHeikinAshi {
|
|
3984
|
+
free(): void;
|
|
3985
|
+
[Symbol.dispose](): void;
|
|
3986
|
+
batch(open: Float64Array, high: Float64Array, low: Float64Array, close: Float64Array): Float64Array;
|
|
3987
|
+
isReady(): boolean;
|
|
3988
|
+
constructor(period: number);
|
|
3989
|
+
reset(): void;
|
|
3990
|
+
update(open: number, high: number, low: number, close: number): any;
|
|
3991
|
+
warmupPeriod(): number;
|
|
3992
|
+
}
|
|
3993
|
+
|
|
3950
3994
|
export class SortinoRatio {
|
|
3951
3995
|
free(): void;
|
|
3952
3996
|
[Symbol.dispose](): void;
|
|
@@ -4586,6 +4630,17 @@ export class ThreeInside {
|
|
|
4586
4630
|
warmupPeriod(): number;
|
|
4587
4631
|
}
|
|
4588
4632
|
|
|
4633
|
+
export class ThreeLineBreak {
|
|
4634
|
+
free(): void;
|
|
4635
|
+
[Symbol.dispose](): void;
|
|
4636
|
+
batch(high: Float64Array, low: Float64Array, close: Float64Array): Float64Array;
|
|
4637
|
+
isReady(): boolean;
|
|
4638
|
+
constructor(lines: number);
|
|
4639
|
+
reset(): void;
|
|
4640
|
+
update(high: number, low: number, close: number): number | undefined;
|
|
4641
|
+
warmupPeriod(): number;
|
|
4642
|
+
}
|
|
4643
|
+
|
|
4589
4644
|
export class ThreeLineStrike {
|
|
4590
4645
|
free(): void;
|
|
4591
4646
|
[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, Butterfly, CCI, CFO, CMO, CTI, CalendarSpread, CalmarRatio, Camarilla, CenterOfGravity, CentralPivotRange, ChaikinMoneyFlow, ChaikinOscillator, ChaikinVolatility, ChandeKrollStop, ChandelierExit, ChoppinessIndex, ClassicPivots, CloseVsOpen, ClosingMarubozu, CoefficientOfVariation, Cointegration, 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, Donchian, DonchianStop, DoubleBollinger, DoubleTopBottom, DownsideGapThreeMethods, DragonflyDoji, DrawdownDuration, DynamicMomentumIndex, EHMA, EMA, EVENBETTERSINE, EVWMA, EaseOfMovement, EffectiveSpread, EhlersStochastic, ElderImpulse, ElderRay, ElderSafeZone, EmpiricalModeDecomposition, Engulfing, EveningDojiStar, EwmaVolatility, Expectancy, FAMA, FRAMA, FallingThreeMethods, FibArcs, FibChannel, FibConfluence, FibExtension, FibFan, FibProjection, FibRetracement, FibTimeZones, FibonacciPivots, FisherRSI, FisherTransform, FlagPennant, Footprint, ForceIndex, FractalChaosBands, FundingBasis, FundingRate, FundingRateMean, FundingRateZScore, GD, GMA, GainLossRatio, GapSideBySideWhite, Garch11, GarmanKlassVolatility, Gartley, GatorOscillator, GoldenPocket, GrangerCausality, GravestoneDoji, HIGHPASS, HMA, HT_DCPHASE, HT_PHASOR, HT_TRENDMODE, Hammer, HangingMan, Harami, HeadAndShoulders, HeikinAshi, HiLoActivator, HighLowIndex, HighLowRange, HighWave, Hikkake, HikkakeModified, HilbertDominantCycle, HistoricalVolatility, HoltWinters, HomingPigeon, HurstChannel, HurstExponent, IMI, Ichimoku, IdenticalThreeCrows, InNeck, Inertia, InformationRatio, InitialBalance, InstantaneousTrendline, IntradayIntensity, IntradayVolatilityProfile, InverseFisherTransform, InvertedHammer, JARQUEBERA, JMA, JumpIndicator, KAMA, 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, MACD, MACDEXT, MACDFIX, MAMA, MFI, MIDPOINT, MIDPRICE, MINUS_DI, MINUS_DM, MOM, MaEnvelope, MacdHistogram, MarketFacilitationIndex, Marubozu, MassIndex, MatHold, MatchingLow, MaxDrawdown, McClellanOscillator, McClellanSummationIndex, McGinleyDynamic, MedianAbsoluteDeviation, MedianChannel, MedianMA, MedianPrice, Microprice, ModifiedMaStop, MorningDojiStar, MorningEveningStar, MurreyMathLines, NATR, NVI, NewHighsNewLows, Nrtr, OBV, OIPriceDivergence, OIWeighted, OmegaRatio, OnNeck, OpenInterestDelta, 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, PiercingDarkCloud, PivotReversal, PointAndFigureBars, PpoHistogram, ProfitFactor, ProjectionBands, ProjectionOscillator, QQE, Qstick, QuartileBands, QuotedSpread, REFLEX, RMI, ROC, ROCP, ROCR, ROCR100, ROLLINGMINMAX, RSI, RSX, RSquared, RVI, RVIVolatility, RWI, RealizedSpread, RealizedVolatility, RecoveryFactor, RectangleRange, RegimeLabel, RelativeStrengthAB, RenkoBars, RenkoTrailingStop, RickshawMan, RisingThreeMethods, RogersSatchellVolatility, RollMeasure, RollingCorrelation, RollingCovariance, RollingIqr, RollingPercentileRank, RollingQuantile, RollingVWAP, RoofingFilter, SAMPLEENT, SAREXT, SHANNONENT, SMA, SMI, SMMA, STC, SWMA, SeasonalZScore, SeparatingLines, SessionHighLow, SessionRange, SessionVwap, Shark, SharpeRatio, ShootingStar, ShortLine, SignedVolume, SineWave, Skewness, SortinoRatio, SpearmanCorrelation, SpinningTop, SpreadAr1Coefficient, SpreadBollingerBands, SpreadHurst, StalledPattern, StandardError, StandardErrorBands, StarcBands, StdDev, StepTrailingStop, 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, TakerBuySellRatio, Takuri, TasukiGap, TermStructureBasis, ThreeDrives, ThreeInside, ThreeLineStrike, ThreeOutside, ThreeSoldiersOrCrows, ThreeStarsInSouth, Thrusting, TickIndex, TimeBasedStop, TimeOfDayReturnProfile, TpoProfile, TradeImbalance, TradeVolumeIndex, TrendLabel, TreynorRatio, Triangle, Trin, TripleTopBottom, TrueRange, TsfOscillator, TtmSqueeze, TurnOfMonth, Tweezer, TwiggsMoneyFlow, TwoCrows, TypicalPrice, UNIVERSALOSC, UlcerIndex, UltimateOscillator, UniqueThreeRiver, UpDownVolumeRatio, UpsideGapThreeMethods, UpsideGapTwoCrows, VIDYA, VWAP, VWMA, VZO, ValueArea, ValueAtRisk, Variance, VarianceRatio, VerticalHorizontalFilter, VolatilityCone, VolatilityOfVolatility, VolatilityRatio, VoltyStop, VolumeByTimeProfile, VolumeOscillator, VolumePriceTrend, VolumeProfile, VolumeRsi, VolumeWeightedMacd, VolumeWeightedSr, Vortex, Vpin, VwapStdDevBands, WAVE_PM, WMA, Wad, WaveTrend, Wedge, WeightedClose, WickRatio, WilliamsAD, WilliamsFractals, WilliamsR, WinRate, WoodiePivots, YangZhangVolatility, YoyoExit, ZLEMA, ZScore, ZeroLagMACD, ZigZag, installPanicHook, version
|
|
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, Butterfly, CCI, CFO, CMO, CTI, CalendarSpread, CalmarRatio, Camarilla, CandleVolume, CenterOfGravity, CentralPivotRange, ChaikinMoneyFlow, ChaikinOscillator, ChaikinVolatility, ChandeKrollStop, ChandelierExit, ChoppinessIndex, ClassicPivots, CloseVsOpen, ClosingMarubozu, CoefficientOfVariation, Cointegration, 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, Donchian, DonchianStop, DoubleBollinger, DoubleTopBottom, DownsideGapThreeMethods, DragonflyDoji, DrawdownDuration, DynamicMomentumIndex, EHMA, EMA, EVENBETTERSINE, EVWMA, EaseOfMovement, EffectiveSpread, EhlersStochastic, ElderImpulse, ElderRay, ElderSafeZone, EmpiricalModeDecomposition, Engulfing, Equivolume, EveningDojiStar, EwmaVolatility, Expectancy, FAMA, FRAMA, FallingThreeMethods, FibArcs, FibChannel, FibConfluence, FibExtension, FibFan, FibProjection, FibRetracement, FibTimeZones, FibonacciPivots, FisherRSI, FisherTransform, FlagPennant, Footprint, ForceIndex, FractalChaosBands, FundingBasis, FundingRate, FundingRateMean, FundingRateZScore, GD, GMA, GainLossRatio, GapSideBySideWhite, Garch11, GarmanKlassVolatility, Gartley, GatorOscillator, GoldenPocket, GrangerCausality, GravestoneDoji, HIGHPASS, HMA, HT_DCPHASE, HT_PHASOR, HT_TRENDMODE, Hammer, HangingMan, Harami, HeadAndShoulders, HeikinAshi, HeikinAshiOscillator, HiLoActivator, HighLowIndex, HighLowRange, HighWave, Hikkake, HikkakeModified, HilbertDominantCycle, HistoricalVolatility, HoltWinters, HomingPigeon, HurstChannel, HurstExponent, IMI, Ichimoku, IdenticalThreeCrows, InNeck, Inertia, InformationRatio, InitialBalance, InstantaneousTrendline, IntradayIntensity, IntradayVolatilityProfile, InverseFisherTransform, InvertedHammer, JARQUEBERA, JMA, JumpIndicator, KAMA, 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, MACD, MACDEXT, MACDFIX, MAMA, MFI, MIDPOINT, MIDPRICE, MINUS_DI, MINUS_DM, MOM, MaEnvelope, MacdHistogram, MarketFacilitationIndex, Marubozu, MassIndex, MatHold, MatchingLow, MaxDrawdown, McClellanOscillator, McClellanSummationIndex, McGinleyDynamic, MedianAbsoluteDeviation, MedianChannel, MedianMA, MedianPrice, Microprice, ModifiedMaStop, MorningDojiStar, MorningEveningStar, MurreyMathLines, NATR, NVI, NewHighsNewLows, Nrtr, OBV, OIPriceDivergence, OIWeighted, OmegaRatio, OnNeck, OpenInterestDelta, 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, PiercingDarkCloud, PivotReversal, PointAndFigureBars, PpoHistogram, ProfitFactor, ProjectionBands, ProjectionOscillator, QQE, Qstick, QuartileBands, QuotedSpread, REFLEX, RMI, ROC, ROCP, ROCR, ROCR100, ROLLINGMINMAX, RSI, RSX, RSquared, RVI, RVIVolatility, RWI, RealizedSpread, RealizedVolatility, RecoveryFactor, RectangleRange, RegimeLabel, RelativeStrengthAB, RenkoBars, RenkoTrailingStop, RickshawMan, RisingThreeMethods, RogersSatchellVolatility, RollMeasure, RollingCorrelation, RollingCovariance, RollingIqr, RollingPercentileRank, RollingQuantile, RollingVWAP, RoofingFilter, SAMPLEENT, SAREXT, SHANNONENT, SMA, SMI, SMMA, STC, SWMA, SeasonalZScore, SeparatingLines, SessionHighLow, SessionRange, SessionVwap, Shark, SharpeRatio, ShootingStar, ShortLine, SignedVolume, SineWave, Skewness, SmoothedHeikinAshi, SortinoRatio, SpearmanCorrelation, SpinningTop, SpreadAr1Coefficient, SpreadBollingerBands, SpreadHurst, StalledPattern, StandardError, StandardErrorBands, StarcBands, StdDev, StepTrailingStop, 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, TakerBuySellRatio, Takuri, TasukiGap, TermStructureBasis, ThreeDrives, ThreeInside, ThreeLineBreak, ThreeLineStrike, ThreeOutside, ThreeSoldiersOrCrows, ThreeStarsInSouth, Thrusting, TickIndex, TimeBasedStop, TimeOfDayReturnProfile, TpoProfile, TradeImbalance, TradeVolumeIndex, TrendLabel, TreynorRatio, Triangle, Trin, TripleTopBottom, TrueRange, TsfOscillator, TtmSqueeze, TurnOfMonth, Tweezer, TwiggsMoneyFlow, TwoCrows, TypicalPrice, UNIVERSALOSC, UlcerIndex, UltimateOscillator, UniqueThreeRiver, UpDownVolumeRatio, UpsideGapThreeMethods, UpsideGapTwoCrows, VIDYA, VWAP, VWMA, VZO, ValueArea, ValueAtRisk, Variance, VarianceRatio, VerticalHorizontalFilter, VolatilityCone, VolatilityOfVolatility, VolatilityRatio, VoltyStop, VolumeByTimeProfile, VolumeOscillator, VolumePriceTrend, VolumeProfile, VolumeRsi, VolumeWeightedMacd, VolumeWeightedSr, Vortex, Vpin, VwapStdDevBands, WAVE_PM, WMA, Wad, WaveTrend, Wedge, WeightedClose, WickRatio, WilliamsAD, 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
|
@@ -5020,6 +5020,105 @@ export class Camarilla {
|
|
|
5020
5020
|
}
|
|
5021
5021
|
if (Symbol.dispose) Camarilla.prototype[Symbol.dispose] = Camarilla.prototype.free;
|
|
5022
5022
|
|
|
5023
|
+
export class CandleVolume {
|
|
5024
|
+
__destroy_into_raw() {
|
|
5025
|
+
const ptr = this.__wbg_ptr;
|
|
5026
|
+
this.__wbg_ptr = 0;
|
|
5027
|
+
CandleVolumeFinalization.unregister(this);
|
|
5028
|
+
return ptr;
|
|
5029
|
+
}
|
|
5030
|
+
free() {
|
|
5031
|
+
const ptr = this.__destroy_into_raw();
|
|
5032
|
+
wasm.__wbg_candlevolume_free(ptr, 0);
|
|
5033
|
+
}
|
|
5034
|
+
/**
|
|
5035
|
+
* @param {Float64Array} open
|
|
5036
|
+
* @param {Float64Array} close
|
|
5037
|
+
* @param {Float64Array} volume
|
|
5038
|
+
* @returns {Float64Array}
|
|
5039
|
+
*/
|
|
5040
|
+
batch(open, close, volume) {
|
|
5041
|
+
try {
|
|
5042
|
+
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
|
|
5043
|
+
const ptr0 = passArrayF64ToWasm0(open, wasm.__wbindgen_export3);
|
|
5044
|
+
const len0 = WASM_VECTOR_LEN;
|
|
5045
|
+
const ptr1 = passArrayF64ToWasm0(close, wasm.__wbindgen_export3);
|
|
5046
|
+
const len1 = WASM_VECTOR_LEN;
|
|
5047
|
+
const ptr2 = passArrayF64ToWasm0(volume, wasm.__wbindgen_export3);
|
|
5048
|
+
const len2 = WASM_VECTOR_LEN;
|
|
5049
|
+
wasm.candlevolume_batch(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1, ptr2, len2);
|
|
5050
|
+
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
|
|
5051
|
+
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
|
|
5052
|
+
var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
|
|
5053
|
+
if (r2) {
|
|
5054
|
+
throw takeObject(r1);
|
|
5055
|
+
}
|
|
5056
|
+
return takeObject(r0);
|
|
5057
|
+
} finally {
|
|
5058
|
+
wasm.__wbindgen_add_to_stack_pointer(16);
|
|
5059
|
+
}
|
|
5060
|
+
}
|
|
5061
|
+
/**
|
|
5062
|
+
* @returns {boolean}
|
|
5063
|
+
*/
|
|
5064
|
+
isReady() {
|
|
5065
|
+
const ret = wasm.candlevolume_isReady(this.__wbg_ptr);
|
|
5066
|
+
return ret !== 0;
|
|
5067
|
+
}
|
|
5068
|
+
/**
|
|
5069
|
+
* @param {number} period
|
|
5070
|
+
*/
|
|
5071
|
+
constructor(period) {
|
|
5072
|
+
try {
|
|
5073
|
+
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
|
|
5074
|
+
wasm.candlevolume_new(retptr, period);
|
|
5075
|
+
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
|
|
5076
|
+
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
|
|
5077
|
+
var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
|
|
5078
|
+
if (r2) {
|
|
5079
|
+
throw takeObject(r1);
|
|
5080
|
+
}
|
|
5081
|
+
this.__wbg_ptr = r0;
|
|
5082
|
+
CandleVolumeFinalization.register(this, this.__wbg_ptr, this);
|
|
5083
|
+
return this;
|
|
5084
|
+
} finally {
|
|
5085
|
+
wasm.__wbindgen_add_to_stack_pointer(16);
|
|
5086
|
+
}
|
|
5087
|
+
}
|
|
5088
|
+
reset() {
|
|
5089
|
+
wasm.candlevolume_reset(this.__wbg_ptr);
|
|
5090
|
+
}
|
|
5091
|
+
/**
|
|
5092
|
+
* @param {number} open
|
|
5093
|
+
* @param {number} close
|
|
5094
|
+
* @param {number} volume
|
|
5095
|
+
* @returns {any}
|
|
5096
|
+
*/
|
|
5097
|
+
update(open, close, volume) {
|
|
5098
|
+
try {
|
|
5099
|
+
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
|
|
5100
|
+
wasm.candlevolume_update(retptr, this.__wbg_ptr, open, close, volume);
|
|
5101
|
+
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
|
|
5102
|
+
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
|
|
5103
|
+
var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
|
|
5104
|
+
if (r2) {
|
|
5105
|
+
throw takeObject(r1);
|
|
5106
|
+
}
|
|
5107
|
+
return takeObject(r0);
|
|
5108
|
+
} finally {
|
|
5109
|
+
wasm.__wbindgen_add_to_stack_pointer(16);
|
|
5110
|
+
}
|
|
5111
|
+
}
|
|
5112
|
+
/**
|
|
5113
|
+
* @returns {number}
|
|
5114
|
+
*/
|
|
5115
|
+
warmupPeriod() {
|
|
5116
|
+
const ret = wasm.candlevolume_warmupPeriod(this.__wbg_ptr);
|
|
5117
|
+
return ret >>> 0;
|
|
5118
|
+
}
|
|
5119
|
+
}
|
|
5120
|
+
if (Symbol.dispose) CandleVolume.prototype[Symbol.dispose] = CandleVolume.prototype.free;
|
|
5121
|
+
|
|
5023
5122
|
export class CenterOfGravity {
|
|
5024
5123
|
__destroy_into_raw() {
|
|
5025
5124
|
const ptr = this.__wbg_ptr;
|
|
@@ -9868,6 +9967,105 @@ export class Engulfing {
|
|
|
9868
9967
|
}
|
|
9869
9968
|
if (Symbol.dispose) Engulfing.prototype[Symbol.dispose] = Engulfing.prototype.free;
|
|
9870
9969
|
|
|
9970
|
+
export class Equivolume {
|
|
9971
|
+
__destroy_into_raw() {
|
|
9972
|
+
const ptr = this.__wbg_ptr;
|
|
9973
|
+
this.__wbg_ptr = 0;
|
|
9974
|
+
EquivolumeFinalization.unregister(this);
|
|
9975
|
+
return ptr;
|
|
9976
|
+
}
|
|
9977
|
+
free() {
|
|
9978
|
+
const ptr = this.__destroy_into_raw();
|
|
9979
|
+
wasm.__wbg_equivolume_free(ptr, 0);
|
|
9980
|
+
}
|
|
9981
|
+
/**
|
|
9982
|
+
* @param {Float64Array} high
|
|
9983
|
+
* @param {Float64Array} low
|
|
9984
|
+
* @param {Float64Array} volume
|
|
9985
|
+
* @returns {Float64Array}
|
|
9986
|
+
*/
|
|
9987
|
+
batch(high, low, volume) {
|
|
9988
|
+
try {
|
|
9989
|
+
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
|
|
9990
|
+
const ptr0 = passArrayF64ToWasm0(high, wasm.__wbindgen_export3);
|
|
9991
|
+
const len0 = WASM_VECTOR_LEN;
|
|
9992
|
+
const ptr1 = passArrayF64ToWasm0(low, wasm.__wbindgen_export3);
|
|
9993
|
+
const len1 = WASM_VECTOR_LEN;
|
|
9994
|
+
const ptr2 = passArrayF64ToWasm0(volume, wasm.__wbindgen_export3);
|
|
9995
|
+
const len2 = WASM_VECTOR_LEN;
|
|
9996
|
+
wasm.equivolume_batch(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1, ptr2, len2);
|
|
9997
|
+
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
|
|
9998
|
+
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
|
|
9999
|
+
var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
|
|
10000
|
+
if (r2) {
|
|
10001
|
+
throw takeObject(r1);
|
|
10002
|
+
}
|
|
10003
|
+
return takeObject(r0);
|
|
10004
|
+
} finally {
|
|
10005
|
+
wasm.__wbindgen_add_to_stack_pointer(16);
|
|
10006
|
+
}
|
|
10007
|
+
}
|
|
10008
|
+
/**
|
|
10009
|
+
* @returns {boolean}
|
|
10010
|
+
*/
|
|
10011
|
+
isReady() {
|
|
10012
|
+
const ret = wasm.equivolume_isReady(this.__wbg_ptr);
|
|
10013
|
+
return ret !== 0;
|
|
10014
|
+
}
|
|
10015
|
+
/**
|
|
10016
|
+
* @param {number} period
|
|
10017
|
+
*/
|
|
10018
|
+
constructor(period) {
|
|
10019
|
+
try {
|
|
10020
|
+
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
|
|
10021
|
+
wasm.equivolume_new(retptr, period);
|
|
10022
|
+
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
|
|
10023
|
+
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
|
|
10024
|
+
var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
|
|
10025
|
+
if (r2) {
|
|
10026
|
+
throw takeObject(r1);
|
|
10027
|
+
}
|
|
10028
|
+
this.__wbg_ptr = r0;
|
|
10029
|
+
EquivolumeFinalization.register(this, this.__wbg_ptr, this);
|
|
10030
|
+
return this;
|
|
10031
|
+
} finally {
|
|
10032
|
+
wasm.__wbindgen_add_to_stack_pointer(16);
|
|
10033
|
+
}
|
|
10034
|
+
}
|
|
10035
|
+
reset() {
|
|
10036
|
+
wasm.equivolume_reset(this.__wbg_ptr);
|
|
10037
|
+
}
|
|
10038
|
+
/**
|
|
10039
|
+
* @param {number} high
|
|
10040
|
+
* @param {number} low
|
|
10041
|
+
* @param {number} volume
|
|
10042
|
+
* @returns {any}
|
|
10043
|
+
*/
|
|
10044
|
+
update(high, low, volume) {
|
|
10045
|
+
try {
|
|
10046
|
+
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
|
|
10047
|
+
wasm.equivolume_update(retptr, this.__wbg_ptr, high, low, volume);
|
|
10048
|
+
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
|
|
10049
|
+
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
|
|
10050
|
+
var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
|
|
10051
|
+
if (r2) {
|
|
10052
|
+
throw takeObject(r1);
|
|
10053
|
+
}
|
|
10054
|
+
return takeObject(r0);
|
|
10055
|
+
} finally {
|
|
10056
|
+
wasm.__wbindgen_add_to_stack_pointer(16);
|
|
10057
|
+
}
|
|
10058
|
+
}
|
|
10059
|
+
/**
|
|
10060
|
+
* @returns {number}
|
|
10061
|
+
*/
|
|
10062
|
+
warmupPeriod() {
|
|
10063
|
+
const ret = wasm.equivolume_warmupPeriod(this.__wbg_ptr);
|
|
10064
|
+
return ret >>> 0;
|
|
10065
|
+
}
|
|
10066
|
+
}
|
|
10067
|
+
if (Symbol.dispose) Equivolume.prototype[Symbol.dispose] = Equivolume.prototype.free;
|
|
10068
|
+
|
|
9871
10069
|
export class EveningDojiStar {
|
|
9872
10070
|
__destroy_into_raw() {
|
|
9873
10071
|
const ptr = this.__wbg_ptr;
|
|
@@ -13565,6 +13763,110 @@ export class HeikinAshi {
|
|
|
13565
13763
|
}
|
|
13566
13764
|
if (Symbol.dispose) HeikinAshi.prototype[Symbol.dispose] = HeikinAshi.prototype.free;
|
|
13567
13765
|
|
|
13766
|
+
export class HeikinAshiOscillator {
|
|
13767
|
+
__destroy_into_raw() {
|
|
13768
|
+
const ptr = this.__wbg_ptr;
|
|
13769
|
+
this.__wbg_ptr = 0;
|
|
13770
|
+
HeikinAshiOscillatorFinalization.unregister(this);
|
|
13771
|
+
return ptr;
|
|
13772
|
+
}
|
|
13773
|
+
free() {
|
|
13774
|
+
const ptr = this.__destroy_into_raw();
|
|
13775
|
+
wasm.__wbg_heikinashioscillator_free(ptr, 0);
|
|
13776
|
+
}
|
|
13777
|
+
/**
|
|
13778
|
+
* @param {Float64Array} open
|
|
13779
|
+
* @param {Float64Array} high
|
|
13780
|
+
* @param {Float64Array} low
|
|
13781
|
+
* @param {Float64Array} close
|
|
13782
|
+
* @returns {Float64Array}
|
|
13783
|
+
*/
|
|
13784
|
+
batch(open, high, low, close) {
|
|
13785
|
+
try {
|
|
13786
|
+
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
|
|
13787
|
+
const ptr0 = passArrayF64ToWasm0(open, wasm.__wbindgen_export3);
|
|
13788
|
+
const len0 = WASM_VECTOR_LEN;
|
|
13789
|
+
const ptr1 = passArrayF64ToWasm0(high, wasm.__wbindgen_export3);
|
|
13790
|
+
const len1 = WASM_VECTOR_LEN;
|
|
13791
|
+
const ptr2 = passArrayF64ToWasm0(low, wasm.__wbindgen_export3);
|
|
13792
|
+
const len2 = WASM_VECTOR_LEN;
|
|
13793
|
+
const ptr3 = passArrayF64ToWasm0(close, wasm.__wbindgen_export3);
|
|
13794
|
+
const len3 = WASM_VECTOR_LEN;
|
|
13795
|
+
wasm.heikinashioscillator_batch(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1, ptr2, len2, ptr3, len3);
|
|
13796
|
+
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
|
|
13797
|
+
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
|
|
13798
|
+
var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
|
|
13799
|
+
if (r2) {
|
|
13800
|
+
throw takeObject(r1);
|
|
13801
|
+
}
|
|
13802
|
+
return takeObject(r0);
|
|
13803
|
+
} finally {
|
|
13804
|
+
wasm.__wbindgen_add_to_stack_pointer(16);
|
|
13805
|
+
}
|
|
13806
|
+
}
|
|
13807
|
+
/**
|
|
13808
|
+
* @returns {boolean}
|
|
13809
|
+
*/
|
|
13810
|
+
isReady() {
|
|
13811
|
+
const ret = wasm.heikinashioscillator_isReady(this.__wbg_ptr);
|
|
13812
|
+
return ret !== 0;
|
|
13813
|
+
}
|
|
13814
|
+
/**
|
|
13815
|
+
* @param {number} period
|
|
13816
|
+
*/
|
|
13817
|
+
constructor(period) {
|
|
13818
|
+
try {
|
|
13819
|
+
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
|
|
13820
|
+
wasm.heikinashioscillator_new(retptr, period);
|
|
13821
|
+
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
|
|
13822
|
+
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
|
|
13823
|
+
var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
|
|
13824
|
+
if (r2) {
|
|
13825
|
+
throw takeObject(r1);
|
|
13826
|
+
}
|
|
13827
|
+
this.__wbg_ptr = r0;
|
|
13828
|
+
HeikinAshiOscillatorFinalization.register(this, this.__wbg_ptr, this);
|
|
13829
|
+
return this;
|
|
13830
|
+
} finally {
|
|
13831
|
+
wasm.__wbindgen_add_to_stack_pointer(16);
|
|
13832
|
+
}
|
|
13833
|
+
}
|
|
13834
|
+
reset() {
|
|
13835
|
+
wasm.heikinashioscillator_reset(this.__wbg_ptr);
|
|
13836
|
+
}
|
|
13837
|
+
/**
|
|
13838
|
+
* @param {number} open
|
|
13839
|
+
* @param {number} high
|
|
13840
|
+
* @param {number} low
|
|
13841
|
+
* @param {number} close
|
|
13842
|
+
* @returns {number | undefined}
|
|
13843
|
+
*/
|
|
13844
|
+
update(open, high, low, close) {
|
|
13845
|
+
try {
|
|
13846
|
+
const retptr = wasm.__wbindgen_add_to_stack_pointer(-32);
|
|
13847
|
+
wasm.heikinashioscillator_update(retptr, this.__wbg_ptr, open, high, low, close);
|
|
13848
|
+
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
|
|
13849
|
+
var r2 = getDataViewMemory0().getFloat64(retptr + 8 * 1, true);
|
|
13850
|
+
var r4 = getDataViewMemory0().getInt32(retptr + 4 * 4, true);
|
|
13851
|
+
var r5 = getDataViewMemory0().getInt32(retptr + 4 * 5, true);
|
|
13852
|
+
if (r5) {
|
|
13853
|
+
throw takeObject(r4);
|
|
13854
|
+
}
|
|
13855
|
+
return r0 === 0 ? undefined : r2;
|
|
13856
|
+
} finally {
|
|
13857
|
+
wasm.__wbindgen_add_to_stack_pointer(32);
|
|
13858
|
+
}
|
|
13859
|
+
}
|
|
13860
|
+
/**
|
|
13861
|
+
* @returns {number}
|
|
13862
|
+
*/
|
|
13863
|
+
warmupPeriod() {
|
|
13864
|
+
const ret = wasm.heikinashioscillator_warmupPeriod(this.__wbg_ptr);
|
|
13865
|
+
return ret >>> 0;
|
|
13866
|
+
}
|
|
13867
|
+
}
|
|
13868
|
+
if (Symbol.dispose) HeikinAshiOscillator.prototype[Symbol.dispose] = HeikinAshiOscillator.prototype.free;
|
|
13869
|
+
|
|
13568
13870
|
export class HiLoActivator {
|
|
13569
13871
|
__destroy_into_raw() {
|
|
13570
13872
|
const ptr = this.__wbg_ptr;
|
|
@@ -28375,6 +28677,109 @@ export class Skewness {
|
|
|
28375
28677
|
}
|
|
28376
28678
|
if (Symbol.dispose) Skewness.prototype[Symbol.dispose] = Skewness.prototype.free;
|
|
28377
28679
|
|
|
28680
|
+
export class SmoothedHeikinAshi {
|
|
28681
|
+
__destroy_into_raw() {
|
|
28682
|
+
const ptr = this.__wbg_ptr;
|
|
28683
|
+
this.__wbg_ptr = 0;
|
|
28684
|
+
SmoothedHeikinAshiFinalization.unregister(this);
|
|
28685
|
+
return ptr;
|
|
28686
|
+
}
|
|
28687
|
+
free() {
|
|
28688
|
+
const ptr = this.__destroy_into_raw();
|
|
28689
|
+
wasm.__wbg_smoothedheikinashi_free(ptr, 0);
|
|
28690
|
+
}
|
|
28691
|
+
/**
|
|
28692
|
+
* @param {Float64Array} open
|
|
28693
|
+
* @param {Float64Array} high
|
|
28694
|
+
* @param {Float64Array} low
|
|
28695
|
+
* @param {Float64Array} close
|
|
28696
|
+
* @returns {Float64Array}
|
|
28697
|
+
*/
|
|
28698
|
+
batch(open, high, low, close) {
|
|
28699
|
+
try {
|
|
28700
|
+
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
|
|
28701
|
+
const ptr0 = passArrayF64ToWasm0(open, wasm.__wbindgen_export3);
|
|
28702
|
+
const len0 = WASM_VECTOR_LEN;
|
|
28703
|
+
const ptr1 = passArrayF64ToWasm0(high, wasm.__wbindgen_export3);
|
|
28704
|
+
const len1 = WASM_VECTOR_LEN;
|
|
28705
|
+
const ptr2 = passArrayF64ToWasm0(low, wasm.__wbindgen_export3);
|
|
28706
|
+
const len2 = WASM_VECTOR_LEN;
|
|
28707
|
+
const ptr3 = passArrayF64ToWasm0(close, wasm.__wbindgen_export3);
|
|
28708
|
+
const len3 = WASM_VECTOR_LEN;
|
|
28709
|
+
wasm.smoothedheikinashi_batch(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1, ptr2, len2, ptr3, len3);
|
|
28710
|
+
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
|
|
28711
|
+
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
|
|
28712
|
+
var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
|
|
28713
|
+
if (r2) {
|
|
28714
|
+
throw takeObject(r1);
|
|
28715
|
+
}
|
|
28716
|
+
return takeObject(r0);
|
|
28717
|
+
} finally {
|
|
28718
|
+
wasm.__wbindgen_add_to_stack_pointer(16);
|
|
28719
|
+
}
|
|
28720
|
+
}
|
|
28721
|
+
/**
|
|
28722
|
+
* @returns {boolean}
|
|
28723
|
+
*/
|
|
28724
|
+
isReady() {
|
|
28725
|
+
const ret = wasm.smoothedheikinashi_isReady(this.__wbg_ptr);
|
|
28726
|
+
return ret !== 0;
|
|
28727
|
+
}
|
|
28728
|
+
/**
|
|
28729
|
+
* @param {number} period
|
|
28730
|
+
*/
|
|
28731
|
+
constructor(period) {
|
|
28732
|
+
try {
|
|
28733
|
+
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
|
|
28734
|
+
wasm.smoothedheikinashi_new(retptr, period);
|
|
28735
|
+
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
|
|
28736
|
+
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
|
|
28737
|
+
var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
|
|
28738
|
+
if (r2) {
|
|
28739
|
+
throw takeObject(r1);
|
|
28740
|
+
}
|
|
28741
|
+
this.__wbg_ptr = r0;
|
|
28742
|
+
SmoothedHeikinAshiFinalization.register(this, this.__wbg_ptr, this);
|
|
28743
|
+
return this;
|
|
28744
|
+
} finally {
|
|
28745
|
+
wasm.__wbindgen_add_to_stack_pointer(16);
|
|
28746
|
+
}
|
|
28747
|
+
}
|
|
28748
|
+
reset() {
|
|
28749
|
+
wasm.smoothedheikinashi_reset(this.__wbg_ptr);
|
|
28750
|
+
}
|
|
28751
|
+
/**
|
|
28752
|
+
* @param {number} open
|
|
28753
|
+
* @param {number} high
|
|
28754
|
+
* @param {number} low
|
|
28755
|
+
* @param {number} close
|
|
28756
|
+
* @returns {any}
|
|
28757
|
+
*/
|
|
28758
|
+
update(open, high, low, close) {
|
|
28759
|
+
try {
|
|
28760
|
+
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
|
|
28761
|
+
wasm.smoothedheikinashi_update(retptr, this.__wbg_ptr, open, high, low, close);
|
|
28762
|
+
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
|
|
28763
|
+
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
|
|
28764
|
+
var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
|
|
28765
|
+
if (r2) {
|
|
28766
|
+
throw takeObject(r1);
|
|
28767
|
+
}
|
|
28768
|
+
return takeObject(r0);
|
|
28769
|
+
} finally {
|
|
28770
|
+
wasm.__wbindgen_add_to_stack_pointer(16);
|
|
28771
|
+
}
|
|
28772
|
+
}
|
|
28773
|
+
/**
|
|
28774
|
+
* @returns {number}
|
|
28775
|
+
*/
|
|
28776
|
+
warmupPeriod() {
|
|
28777
|
+
const ret = wasm.smoothedheikinashi_warmupPeriod(this.__wbg_ptr);
|
|
28778
|
+
return ret >>> 0;
|
|
28779
|
+
}
|
|
28780
|
+
}
|
|
28781
|
+
if (Symbol.dispose) SmoothedHeikinAshi.prototype[Symbol.dispose] = SmoothedHeikinAshi.prototype.free;
|
|
28782
|
+
|
|
28378
28783
|
export class SortinoRatio {
|
|
28379
28784
|
__destroy_into_raw() {
|
|
28380
28785
|
const ptr = this.__wbg_ptr;
|
|
@@ -33064,6 +33469,106 @@ export class ThreeInside {
|
|
|
33064
33469
|
}
|
|
33065
33470
|
if (Symbol.dispose) ThreeInside.prototype[Symbol.dispose] = ThreeInside.prototype.free;
|
|
33066
33471
|
|
|
33472
|
+
export class ThreeLineBreak {
|
|
33473
|
+
__destroy_into_raw() {
|
|
33474
|
+
const ptr = this.__wbg_ptr;
|
|
33475
|
+
this.__wbg_ptr = 0;
|
|
33476
|
+
ThreeLineBreakFinalization.unregister(this);
|
|
33477
|
+
return ptr;
|
|
33478
|
+
}
|
|
33479
|
+
free() {
|
|
33480
|
+
const ptr = this.__destroy_into_raw();
|
|
33481
|
+
wasm.__wbg_threelinebreak_free(ptr, 0);
|
|
33482
|
+
}
|
|
33483
|
+
/**
|
|
33484
|
+
* @param {Float64Array} high
|
|
33485
|
+
* @param {Float64Array} low
|
|
33486
|
+
* @param {Float64Array} close
|
|
33487
|
+
* @returns {Float64Array}
|
|
33488
|
+
*/
|
|
33489
|
+
batch(high, low, close) {
|
|
33490
|
+
try {
|
|
33491
|
+
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
|
|
33492
|
+
const ptr0 = passArrayF64ToWasm0(high, wasm.__wbindgen_export3);
|
|
33493
|
+
const len0 = WASM_VECTOR_LEN;
|
|
33494
|
+
const ptr1 = passArrayF64ToWasm0(low, wasm.__wbindgen_export3);
|
|
33495
|
+
const len1 = WASM_VECTOR_LEN;
|
|
33496
|
+
const ptr2 = passArrayF64ToWasm0(close, wasm.__wbindgen_export3);
|
|
33497
|
+
const len2 = WASM_VECTOR_LEN;
|
|
33498
|
+
wasm.threelinebreak_batch(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1, ptr2, len2);
|
|
33499
|
+
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
|
|
33500
|
+
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
|
|
33501
|
+
var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
|
|
33502
|
+
if (r2) {
|
|
33503
|
+
throw takeObject(r1);
|
|
33504
|
+
}
|
|
33505
|
+
return takeObject(r0);
|
|
33506
|
+
} finally {
|
|
33507
|
+
wasm.__wbindgen_add_to_stack_pointer(16);
|
|
33508
|
+
}
|
|
33509
|
+
}
|
|
33510
|
+
/**
|
|
33511
|
+
* @returns {boolean}
|
|
33512
|
+
*/
|
|
33513
|
+
isReady() {
|
|
33514
|
+
const ret = wasm.threelinebreak_isReady(this.__wbg_ptr);
|
|
33515
|
+
return ret !== 0;
|
|
33516
|
+
}
|
|
33517
|
+
/**
|
|
33518
|
+
* @param {number} lines
|
|
33519
|
+
*/
|
|
33520
|
+
constructor(lines) {
|
|
33521
|
+
try {
|
|
33522
|
+
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
|
|
33523
|
+
wasm.threelinebreak_new(retptr, lines);
|
|
33524
|
+
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
|
|
33525
|
+
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
|
|
33526
|
+
var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
|
|
33527
|
+
if (r2) {
|
|
33528
|
+
throw takeObject(r1);
|
|
33529
|
+
}
|
|
33530
|
+
this.__wbg_ptr = r0;
|
|
33531
|
+
ThreeLineBreakFinalization.register(this, this.__wbg_ptr, this);
|
|
33532
|
+
return this;
|
|
33533
|
+
} finally {
|
|
33534
|
+
wasm.__wbindgen_add_to_stack_pointer(16);
|
|
33535
|
+
}
|
|
33536
|
+
}
|
|
33537
|
+
reset() {
|
|
33538
|
+
wasm.threelinebreak_reset(this.__wbg_ptr);
|
|
33539
|
+
}
|
|
33540
|
+
/**
|
|
33541
|
+
* @param {number} high
|
|
33542
|
+
* @param {number} low
|
|
33543
|
+
* @param {number} close
|
|
33544
|
+
* @returns {number | undefined}
|
|
33545
|
+
*/
|
|
33546
|
+
update(high, low, close) {
|
|
33547
|
+
try {
|
|
33548
|
+
const retptr = wasm.__wbindgen_add_to_stack_pointer(-32);
|
|
33549
|
+
wasm.threelinebreak_update(retptr, this.__wbg_ptr, high, low, close);
|
|
33550
|
+
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
|
|
33551
|
+
var r2 = getDataViewMemory0().getFloat64(retptr + 8 * 1, true);
|
|
33552
|
+
var r4 = getDataViewMemory0().getInt32(retptr + 4 * 4, true);
|
|
33553
|
+
var r5 = getDataViewMemory0().getInt32(retptr + 4 * 5, true);
|
|
33554
|
+
if (r5) {
|
|
33555
|
+
throw takeObject(r4);
|
|
33556
|
+
}
|
|
33557
|
+
return r0 === 0 ? undefined : r2;
|
|
33558
|
+
} finally {
|
|
33559
|
+
wasm.__wbindgen_add_to_stack_pointer(32);
|
|
33560
|
+
}
|
|
33561
|
+
}
|
|
33562
|
+
/**
|
|
33563
|
+
* @returns {number}
|
|
33564
|
+
*/
|
|
33565
|
+
warmupPeriod() {
|
|
33566
|
+
const ret = wasm.threelinebreak_warmupPeriod(this.__wbg_ptr);
|
|
33567
|
+
return ret >>> 0;
|
|
33568
|
+
}
|
|
33569
|
+
}
|
|
33570
|
+
if (Symbol.dispose) ThreeLineBreak.prototype[Symbol.dispose] = ThreeLineBreak.prototype.free;
|
|
33571
|
+
|
|
33067
33572
|
export class ThreeLineStrike {
|
|
33068
33573
|
__destroy_into_raw() {
|
|
33069
33574
|
const ptr = this.__wbg_ptr;
|
|
@@ -39485,6 +39990,9 @@ const CalmarRatioFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
|
39485
39990
|
const CamarillaFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
39486
39991
|
? { register: () => {}, unregister: () => {} }
|
|
39487
39992
|
: new FinalizationRegistry(ptr => wasm.__wbg_camarilla_free(ptr, 1));
|
|
39993
|
+
const CandleVolumeFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
39994
|
+
? { register: () => {}, unregister: () => {} }
|
|
39995
|
+
: new FinalizationRegistry(ptr => wasm.__wbg_candlevolume_free(ptr, 1));
|
|
39488
39996
|
const CCIFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
39489
39997
|
? { register: () => {}, unregister: () => {} }
|
|
39490
39998
|
: new FinalizationRegistry(ptr => wasm.__wbg_cci_free(ptr, 1));
|
|
@@ -39668,6 +40176,9 @@ const EmpiricalModeDecompositionFinalization = (typeof FinalizationRegistry ===
|
|
|
39668
40176
|
const EngulfingFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
39669
40177
|
? { register: () => {}, unregister: () => {} }
|
|
39670
40178
|
: new FinalizationRegistry(ptr => wasm.__wbg_engulfing_free(ptr, 1));
|
|
40179
|
+
const EquivolumeFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
40180
|
+
? { register: () => {}, unregister: () => {} }
|
|
40181
|
+
: new FinalizationRegistry(ptr => wasm.__wbg_equivolume_free(ptr, 1));
|
|
39671
40182
|
const EVENBETTERSINEFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
39672
40183
|
? { register: () => {}, unregister: () => {} }
|
|
39673
40184
|
: new FinalizationRegistry(ptr => wasm.__wbg_evenbettersine_free(ptr, 1));
|
|
@@ -39797,6 +40308,9 @@ const HeadAndShouldersFinalization = (typeof FinalizationRegistry === 'undefined
|
|
|
39797
40308
|
const HeikinAshiFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
39798
40309
|
? { register: () => {}, unregister: () => {} }
|
|
39799
40310
|
: new FinalizationRegistry(ptr => wasm.__wbg_heikinashi_free(ptr, 1));
|
|
40311
|
+
const HeikinAshiOscillatorFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
40312
|
+
? { register: () => {}, unregister: () => {} }
|
|
40313
|
+
: new FinalizationRegistry(ptr => wasm.__wbg_heikinashioscillator_free(ptr, 1));
|
|
39800
40314
|
const HiLoActivatorFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
39801
40315
|
? { register: () => {}, unregister: () => {} }
|
|
39802
40316
|
: new FinalizationRegistry(ptr => wasm.__wbg_hiloactivator_free(ptr, 1));
|
|
@@ -40355,6 +40869,9 @@ const SMIFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
|
40355
40869
|
const SMMAFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
40356
40870
|
? { register: () => {}, unregister: () => {} }
|
|
40357
40871
|
: new FinalizationRegistry(ptr => wasm.__wbg_smma_free(ptr, 1));
|
|
40872
|
+
const SmoothedHeikinAshiFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
40873
|
+
? { register: () => {}, unregister: () => {} }
|
|
40874
|
+
: new FinalizationRegistry(ptr => wasm.__wbg_smoothedheikinashi_free(ptr, 1));
|
|
40358
40875
|
const SortinoRatioFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
40359
40876
|
? { register: () => {}, unregister: () => {} }
|
|
40360
40877
|
: new FinalizationRegistry(ptr => wasm.__wbg_sortinoratio_free(ptr, 1));
|
|
@@ -40493,6 +41010,9 @@ const ThreeDrivesFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
|
40493
41010
|
const ThreeInsideFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
40494
41011
|
? { register: () => {}, unregister: () => {} }
|
|
40495
41012
|
: new FinalizationRegistry(ptr => wasm.__wbg_threeinside_free(ptr, 1));
|
|
41013
|
+
const ThreeLineBreakFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
41014
|
+
? { register: () => {}, unregister: () => {} }
|
|
41015
|
+
: new FinalizationRegistry(ptr => wasm.__wbg_threelinebreak_free(ptr, 1));
|
|
40496
41016
|
const ThreeLineStrikeFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
40497
41017
|
? { register: () => {}, unregister: () => {} }
|
|
40498
41018
|
: new FinalizationRegistry(ptr => wasm.__wbg_threelinestrike_free(ptr, 1));
|
package/wickra_wasm_bg.wasm
CHANGED
|
Binary file
|