wickra-wasm 0.6.9 → 0.7.0
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 +35 -0
- package/wickra_wasm.js +1 -1
- package/wickra_wasm_bg.js +248 -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=488" 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 488 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.** 488 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 488 indicators**.
|
|
81
81
|
- **Orders of magnitude faster where it counts.** In streaming Wickra is **11–56×**
|
|
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** | **488** | **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
|
+
488 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).
|
|
@@ -153,7 +153,7 @@ warmup) at [docs.wickra.org](https://docs.wickra.org/Indicators-Overview).
|
|
|
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 |
|
|
154
154
|
| Harmonic Patterns | AB=CD, Gartley, Butterfly, Bat, Crab, Shark, Cypher, Three Drives |
|
|
155
155
|
| Fibonacci | Fibonacci Retracement, Fibonacci Extension, Fibonacci Projection, Auto-Fibonacci, Golden Pocket, Fibonacci Confluence, Fibonacci Fan, Fibonacci Arcs, Fibonacci Channel, Fibonacci Time Zones |
|
|
156
|
-
| Microstructure | Order-Book Imbalance (Top-1 / Top-N / Full), Microprice, Quoted Spread, Depth Slope, Signed Volume, Cumulative Volume Delta, Trade Imbalance, Effective Spread, Realized Spread, Kyle's Lambda, Footprint, Order Flow Imbalance, VPIN, Amihud Illiquidity, Roll Measure |
|
|
156
|
+
| Microstructure | Order-Book Imbalance (Top-1 / Top-N / Full), Microprice, Quoted Spread, Depth Slope, Signed Volume, Cumulative Volume Delta, Trade Imbalance, Effective Spread, Realized Spread, Kyle's Lambda, Footprint, Order Flow Imbalance, VPIN, Amihud Illiquidity, Roll Measure, Trade-Sign Autocorrelation, Hasbrouck Information Share |
|
|
157
157
|
| Derivatives | Funding Rate, Funding Rate Mean, Funding Rate Z-Score, Funding Basis, Open-Interest Delta, OI / Price Divergence, OI-Weighted Price, Long/Short Ratio, Taker Buy/Sell Ratio, Liquidation Features, Term-Structure Basis, Calendar Spread |
|
|
158
158
|
| Market Profile | Value Area (POC / VAH / VAL), Volume Profile (histogram), TPO Profile, Initial Balance, Opening Range |
|
|
159
159
|
| Market Breadth | Advance/Decline Line, Advance/Decline Ratio, Advance/Decline Volume Line, McClellan Oscillator, McClellan Summation Index, TRIN / Arms Index, Breadth Thrust, New Highs - New Lows, High-Low Index, Percent Above Moving Average, Up/Down Volume Ratio, Bullish Percent Index, Cumulative Volume Index, Absolute Breadth Index, TICK Index |
|
|
@@ -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 488 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
|
@@ -1896,6 +1896,21 @@ export class HaramiCross {
|
|
|
1896
1896
|
warmupPeriod(): number;
|
|
1897
1897
|
}
|
|
1898
1898
|
|
|
1899
|
+
export class HasbrouckInformationShare {
|
|
1900
|
+
free(): void;
|
|
1901
|
+
[Symbol.dispose](): void;
|
|
1902
|
+
/**
|
|
1903
|
+
* Batch over two equally-sized arrays. Returns one `f64` per
|
|
1904
|
+
* input position (`NaN` during warmup).
|
|
1905
|
+
*/
|
|
1906
|
+
batch(x: Float64Array, y: Float64Array): Float64Array;
|
|
1907
|
+
isReady(): boolean;
|
|
1908
|
+
constructor(period: number);
|
|
1909
|
+
reset(): void;
|
|
1910
|
+
update(x: number, y: number): number | undefined;
|
|
1911
|
+
warmupPeriod(): number;
|
|
1912
|
+
}
|
|
1913
|
+
|
|
1899
1914
|
export class HeadAndShoulders {
|
|
1900
1915
|
free(): void;
|
|
1901
1916
|
[Symbol.dispose](): void;
|
|
@@ -3319,6 +3334,16 @@ export class PiercingDarkCloud {
|
|
|
3319
3334
|
warmupPeriod(): number;
|
|
3320
3335
|
}
|
|
3321
3336
|
|
|
3337
|
+
export class Pin {
|
|
3338
|
+
free(): void;
|
|
3339
|
+
[Symbol.dispose](): void;
|
|
3340
|
+
isReady(): boolean;
|
|
3341
|
+
constructor(window: number);
|
|
3342
|
+
reset(): void;
|
|
3343
|
+
update(price: number, size: number, is_buy: boolean): number | undefined;
|
|
3344
|
+
warmupPeriod(): number;
|
|
3345
|
+
}
|
|
3346
|
+
|
|
3322
3347
|
export class PivotReversal {
|
|
3323
3348
|
free(): void;
|
|
3324
3349
|
[Symbol.dispose](): void;
|
|
@@ -4805,6 +4830,16 @@ export class TradeImbalance {
|
|
|
4805
4830
|
warmupPeriod(): number;
|
|
4806
4831
|
}
|
|
4807
4832
|
|
|
4833
|
+
export class TradeSignAutocorrelation {
|
|
4834
|
+
free(): void;
|
|
4835
|
+
[Symbol.dispose](): void;
|
|
4836
|
+
isReady(): boolean;
|
|
4837
|
+
constructor(period: number);
|
|
4838
|
+
reset(): void;
|
|
4839
|
+
update(price: number, size: number, is_buy: boolean): number | undefined;
|
|
4840
|
+
warmupPeriod(): number;
|
|
4841
|
+
}
|
|
4842
|
+
|
|
4808
4843
|
export class TradeVolumeIndex {
|
|
4809
4844
|
free(): void;
|
|
4810
4845
|
[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, 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, DumplingTop, 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, FryPanBottom, 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, HaramiCross, 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, NewPriceLines, 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, TowerTopBottom, TpoProfile, TradeImbalance, TradeVolumeIndex, TrendLabel, TreynorRatio, Triangle, Trin, TripleTopBottom, Tristar, 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, DumplingTop, 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, FryPanBottom, 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, HaramiCross, HasbrouckInformationShare, 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, NewPriceLines, 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, Pin, 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, 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, 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
|
@@ -13871,6 +13871,99 @@ export class HaramiCross {
|
|
|
13871
13871
|
}
|
|
13872
13872
|
if (Symbol.dispose) HaramiCross.prototype[Symbol.dispose] = HaramiCross.prototype.free;
|
|
13873
13873
|
|
|
13874
|
+
export class HasbrouckInformationShare {
|
|
13875
|
+
__destroy_into_raw() {
|
|
13876
|
+
const ptr = this.__wbg_ptr;
|
|
13877
|
+
this.__wbg_ptr = 0;
|
|
13878
|
+
HasbrouckInformationShareFinalization.unregister(this);
|
|
13879
|
+
return ptr;
|
|
13880
|
+
}
|
|
13881
|
+
free() {
|
|
13882
|
+
const ptr = this.__destroy_into_raw();
|
|
13883
|
+
wasm.__wbg_hasbrouckinformationshare_free(ptr, 0);
|
|
13884
|
+
}
|
|
13885
|
+
/**
|
|
13886
|
+
* Batch over two equally-sized arrays. Returns one `f64` per
|
|
13887
|
+
* input position (`NaN` during warmup).
|
|
13888
|
+
* @param {Float64Array} x
|
|
13889
|
+
* @param {Float64Array} y
|
|
13890
|
+
* @returns {Float64Array}
|
|
13891
|
+
*/
|
|
13892
|
+
batch(x, y) {
|
|
13893
|
+
try {
|
|
13894
|
+
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
|
|
13895
|
+
const ptr0 = passArrayF64ToWasm0(x, wasm.__wbindgen_export3);
|
|
13896
|
+
const len0 = WASM_VECTOR_LEN;
|
|
13897
|
+
const ptr1 = passArrayF64ToWasm0(y, wasm.__wbindgen_export3);
|
|
13898
|
+
const len1 = WASM_VECTOR_LEN;
|
|
13899
|
+
wasm.hasbrouckinformationshare_batch(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1);
|
|
13900
|
+
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
|
|
13901
|
+
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
|
|
13902
|
+
var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
|
|
13903
|
+
if (r2) {
|
|
13904
|
+
throw takeObject(r1);
|
|
13905
|
+
}
|
|
13906
|
+
return takeObject(r0);
|
|
13907
|
+
} finally {
|
|
13908
|
+
wasm.__wbindgen_add_to_stack_pointer(16);
|
|
13909
|
+
}
|
|
13910
|
+
}
|
|
13911
|
+
/**
|
|
13912
|
+
* @returns {boolean}
|
|
13913
|
+
*/
|
|
13914
|
+
isReady() {
|
|
13915
|
+
const ret = wasm.hasbrouckinformationshare_isReady(this.__wbg_ptr);
|
|
13916
|
+
return ret !== 0;
|
|
13917
|
+
}
|
|
13918
|
+
/**
|
|
13919
|
+
* @param {number} period
|
|
13920
|
+
*/
|
|
13921
|
+
constructor(period) {
|
|
13922
|
+
try {
|
|
13923
|
+
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
|
|
13924
|
+
wasm.hasbrouckinformationshare_new(retptr, period);
|
|
13925
|
+
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
|
|
13926
|
+
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
|
|
13927
|
+
var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
|
|
13928
|
+
if (r2) {
|
|
13929
|
+
throw takeObject(r1);
|
|
13930
|
+
}
|
|
13931
|
+
this.__wbg_ptr = r0;
|
|
13932
|
+
HasbrouckInformationShareFinalization.register(this, this.__wbg_ptr, this);
|
|
13933
|
+
return this;
|
|
13934
|
+
} finally {
|
|
13935
|
+
wasm.__wbindgen_add_to_stack_pointer(16);
|
|
13936
|
+
}
|
|
13937
|
+
}
|
|
13938
|
+
reset() {
|
|
13939
|
+
wasm.hasbrouckinformationshare_reset(this.__wbg_ptr);
|
|
13940
|
+
}
|
|
13941
|
+
/**
|
|
13942
|
+
* @param {number} x
|
|
13943
|
+
* @param {number} y
|
|
13944
|
+
* @returns {number | undefined}
|
|
13945
|
+
*/
|
|
13946
|
+
update(x, y) {
|
|
13947
|
+
try {
|
|
13948
|
+
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
|
|
13949
|
+
wasm.hasbrouckinformationshare_update(retptr, this.__wbg_ptr, x, y);
|
|
13950
|
+
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
|
|
13951
|
+
var r2 = getDataViewMemory0().getFloat64(retptr + 8 * 1, true);
|
|
13952
|
+
return r0 === 0 ? undefined : r2;
|
|
13953
|
+
} finally {
|
|
13954
|
+
wasm.__wbindgen_add_to_stack_pointer(16);
|
|
13955
|
+
}
|
|
13956
|
+
}
|
|
13957
|
+
/**
|
|
13958
|
+
* @returns {number}
|
|
13959
|
+
*/
|
|
13960
|
+
warmupPeriod() {
|
|
13961
|
+
const ret = wasm.hasbrouckinformationshare_warmupPeriod(this.__wbg_ptr);
|
|
13962
|
+
return ret >>> 0;
|
|
13963
|
+
}
|
|
13964
|
+
}
|
|
13965
|
+
if (Symbol.dispose) HasbrouckInformationShare.prototype[Symbol.dispose] = HasbrouckInformationShare.prototype.free;
|
|
13966
|
+
|
|
13874
13967
|
export class HeadAndShoulders {
|
|
13875
13968
|
__destroy_into_raw() {
|
|
13876
13969
|
const ptr = this.__wbg_ptr;
|
|
@@ -24058,6 +24151,79 @@ export class PiercingDarkCloud {
|
|
|
24058
24151
|
}
|
|
24059
24152
|
if (Symbol.dispose) PiercingDarkCloud.prototype[Symbol.dispose] = PiercingDarkCloud.prototype.free;
|
|
24060
24153
|
|
|
24154
|
+
export class Pin {
|
|
24155
|
+
__destroy_into_raw() {
|
|
24156
|
+
const ptr = this.__wbg_ptr;
|
|
24157
|
+
this.__wbg_ptr = 0;
|
|
24158
|
+
PinFinalization.unregister(this);
|
|
24159
|
+
return ptr;
|
|
24160
|
+
}
|
|
24161
|
+
free() {
|
|
24162
|
+
const ptr = this.__destroy_into_raw();
|
|
24163
|
+
wasm.__wbg_pin_free(ptr, 0);
|
|
24164
|
+
}
|
|
24165
|
+
/**
|
|
24166
|
+
* @returns {boolean}
|
|
24167
|
+
*/
|
|
24168
|
+
isReady() {
|
|
24169
|
+
const ret = wasm.pin_isReady(this.__wbg_ptr);
|
|
24170
|
+
return ret !== 0;
|
|
24171
|
+
}
|
|
24172
|
+
/**
|
|
24173
|
+
* @param {number} window
|
|
24174
|
+
*/
|
|
24175
|
+
constructor(window) {
|
|
24176
|
+
try {
|
|
24177
|
+
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
|
|
24178
|
+
wasm.pin_new(retptr, window);
|
|
24179
|
+
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
|
|
24180
|
+
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
|
|
24181
|
+
var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
|
|
24182
|
+
if (r2) {
|
|
24183
|
+
throw takeObject(r1);
|
|
24184
|
+
}
|
|
24185
|
+
this.__wbg_ptr = r0;
|
|
24186
|
+
PinFinalization.register(this, this.__wbg_ptr, this);
|
|
24187
|
+
return this;
|
|
24188
|
+
} finally {
|
|
24189
|
+
wasm.__wbindgen_add_to_stack_pointer(16);
|
|
24190
|
+
}
|
|
24191
|
+
}
|
|
24192
|
+
reset() {
|
|
24193
|
+
wasm.pin_reset(this.__wbg_ptr);
|
|
24194
|
+
}
|
|
24195
|
+
/**
|
|
24196
|
+
* @param {number} price
|
|
24197
|
+
* @param {number} size
|
|
24198
|
+
* @param {boolean} is_buy
|
|
24199
|
+
* @returns {number | undefined}
|
|
24200
|
+
*/
|
|
24201
|
+
update(price, size, is_buy) {
|
|
24202
|
+
try {
|
|
24203
|
+
const retptr = wasm.__wbindgen_add_to_stack_pointer(-32);
|
|
24204
|
+
wasm.pin_update(retptr, this.__wbg_ptr, price, size, is_buy);
|
|
24205
|
+
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
|
|
24206
|
+
var r2 = getDataViewMemory0().getFloat64(retptr + 8 * 1, true);
|
|
24207
|
+
var r4 = getDataViewMemory0().getInt32(retptr + 4 * 4, true);
|
|
24208
|
+
var r5 = getDataViewMemory0().getInt32(retptr + 4 * 5, true);
|
|
24209
|
+
if (r5) {
|
|
24210
|
+
throw takeObject(r4);
|
|
24211
|
+
}
|
|
24212
|
+
return r0 === 0 ? undefined : r2;
|
|
24213
|
+
} finally {
|
|
24214
|
+
wasm.__wbindgen_add_to_stack_pointer(32);
|
|
24215
|
+
}
|
|
24216
|
+
}
|
|
24217
|
+
/**
|
|
24218
|
+
* @returns {number}
|
|
24219
|
+
*/
|
|
24220
|
+
warmupPeriod() {
|
|
24221
|
+
const ret = wasm.pin_warmupPeriod(this.__wbg_ptr);
|
|
24222
|
+
return ret >>> 0;
|
|
24223
|
+
}
|
|
24224
|
+
}
|
|
24225
|
+
if (Symbol.dispose) Pin.prototype[Symbol.dispose] = Pin.prototype.free;
|
|
24226
|
+
|
|
24061
24227
|
export class PivotReversal {
|
|
24062
24228
|
__destroy_into_raw() {
|
|
24063
24229
|
const ptr = this.__wbg_ptr;
|
|
@@ -34906,6 +35072,79 @@ export class TradeImbalance {
|
|
|
34906
35072
|
}
|
|
34907
35073
|
if (Symbol.dispose) TradeImbalance.prototype[Symbol.dispose] = TradeImbalance.prototype.free;
|
|
34908
35074
|
|
|
35075
|
+
export class TradeSignAutocorrelation {
|
|
35076
|
+
__destroy_into_raw() {
|
|
35077
|
+
const ptr = this.__wbg_ptr;
|
|
35078
|
+
this.__wbg_ptr = 0;
|
|
35079
|
+
TradeSignAutocorrelationFinalization.unregister(this);
|
|
35080
|
+
return ptr;
|
|
35081
|
+
}
|
|
35082
|
+
free() {
|
|
35083
|
+
const ptr = this.__destroy_into_raw();
|
|
35084
|
+
wasm.__wbg_tradesignautocorrelation_free(ptr, 0);
|
|
35085
|
+
}
|
|
35086
|
+
/**
|
|
35087
|
+
* @returns {boolean}
|
|
35088
|
+
*/
|
|
35089
|
+
isReady() {
|
|
35090
|
+
const ret = wasm.tradesignautocorrelation_isReady(this.__wbg_ptr);
|
|
35091
|
+
return ret !== 0;
|
|
35092
|
+
}
|
|
35093
|
+
/**
|
|
35094
|
+
* @param {number} period
|
|
35095
|
+
*/
|
|
35096
|
+
constructor(period) {
|
|
35097
|
+
try {
|
|
35098
|
+
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
|
|
35099
|
+
wasm.tradesignautocorrelation_new(retptr, period);
|
|
35100
|
+
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
|
|
35101
|
+
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
|
|
35102
|
+
var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
|
|
35103
|
+
if (r2) {
|
|
35104
|
+
throw takeObject(r1);
|
|
35105
|
+
}
|
|
35106
|
+
this.__wbg_ptr = r0;
|
|
35107
|
+
TradeSignAutocorrelationFinalization.register(this, this.__wbg_ptr, this);
|
|
35108
|
+
return this;
|
|
35109
|
+
} finally {
|
|
35110
|
+
wasm.__wbindgen_add_to_stack_pointer(16);
|
|
35111
|
+
}
|
|
35112
|
+
}
|
|
35113
|
+
reset() {
|
|
35114
|
+
wasm.tradesignautocorrelation_reset(this.__wbg_ptr);
|
|
35115
|
+
}
|
|
35116
|
+
/**
|
|
35117
|
+
* @param {number} price
|
|
35118
|
+
* @param {number} size
|
|
35119
|
+
* @param {boolean} is_buy
|
|
35120
|
+
* @returns {number | undefined}
|
|
35121
|
+
*/
|
|
35122
|
+
update(price, size, is_buy) {
|
|
35123
|
+
try {
|
|
35124
|
+
const retptr = wasm.__wbindgen_add_to_stack_pointer(-32);
|
|
35125
|
+
wasm.tradesignautocorrelation_update(retptr, this.__wbg_ptr, price, size, is_buy);
|
|
35126
|
+
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
|
|
35127
|
+
var r2 = getDataViewMemory0().getFloat64(retptr + 8 * 1, true);
|
|
35128
|
+
var r4 = getDataViewMemory0().getInt32(retptr + 4 * 4, true);
|
|
35129
|
+
var r5 = getDataViewMemory0().getInt32(retptr + 4 * 5, true);
|
|
35130
|
+
if (r5) {
|
|
35131
|
+
throw takeObject(r4);
|
|
35132
|
+
}
|
|
35133
|
+
return r0 === 0 ? undefined : r2;
|
|
35134
|
+
} finally {
|
|
35135
|
+
wasm.__wbindgen_add_to_stack_pointer(32);
|
|
35136
|
+
}
|
|
35137
|
+
}
|
|
35138
|
+
/**
|
|
35139
|
+
* @returns {number}
|
|
35140
|
+
*/
|
|
35141
|
+
warmupPeriod() {
|
|
35142
|
+
const ret = wasm.tradesignautocorrelation_warmupPeriod(this.__wbg_ptr);
|
|
35143
|
+
return ret >>> 0;
|
|
35144
|
+
}
|
|
35145
|
+
}
|
|
35146
|
+
if (Symbol.dispose) TradeSignAutocorrelation.prototype[Symbol.dispose] = TradeSignAutocorrelation.prototype.free;
|
|
35147
|
+
|
|
34909
35148
|
export class TradeVolumeIndex {
|
|
34910
35149
|
__destroy_into_raw() {
|
|
34911
35150
|
const ptr = this.__wbg_ptr;
|
|
@@ -40881,6 +41120,9 @@ const HaramiFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
|
40881
41120
|
const HaramiCrossFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
40882
41121
|
? { register: () => {}, unregister: () => {} }
|
|
40883
41122
|
: new FinalizationRegistry(ptr => wasm.__wbg_haramicross_free(ptr, 1));
|
|
41123
|
+
const HasbrouckInformationShareFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
41124
|
+
? { register: () => {}, unregister: () => {} }
|
|
41125
|
+
: new FinalizationRegistry(ptr => wasm.__wbg_hasbrouckinformationshare_free(ptr, 1));
|
|
40884
41126
|
const HeadAndShouldersFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
40885
41127
|
? { register: () => {}, unregister: () => {} }
|
|
40886
41128
|
: new FinalizationRegistry(ptr => wasm.__wbg_headandshoulders_free(ptr, 1));
|
|
@@ -41247,6 +41489,9 @@ const PGOFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
|
41247
41489
|
const PiercingDarkCloudFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
41248
41490
|
? { register: () => {}, unregister: () => {} }
|
|
41249
41491
|
: new FinalizationRegistry(ptr => wasm.__wbg_piercingdarkcloud_free(ptr, 1));
|
|
41492
|
+
const PinFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
41493
|
+
? { register: () => {}, unregister: () => {} }
|
|
41494
|
+
: new FinalizationRegistry(ptr => wasm.__wbg_pin_free(ptr, 1));
|
|
41250
41495
|
const PivotReversalFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
41251
41496
|
? { register: () => {}, unregister: () => {} }
|
|
41252
41497
|
: new FinalizationRegistry(ptr => wasm.__wbg_pivotreversal_free(ptr, 1));
|
|
@@ -41631,6 +41876,9 @@ const TpoProfileFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
|
41631
41876
|
const TradeImbalanceFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
41632
41877
|
? { register: () => {}, unregister: () => {} }
|
|
41633
41878
|
: new FinalizationRegistry(ptr => wasm.__wbg_tradeimbalance_free(ptr, 1));
|
|
41879
|
+
const TradeSignAutocorrelationFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
41880
|
+
? { register: () => {}, unregister: () => {} }
|
|
41881
|
+
: new FinalizationRegistry(ptr => wasm.__wbg_tradesignautocorrelation_free(ptr, 1));
|
|
41634
41882
|
const TradeVolumeIndexFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
41635
41883
|
? { register: () => {}, unregister: () => {} }
|
|
41636
41884
|
: new FinalizationRegistry(ptr => wasm.__wbg_tradevolumeindex_free(ptr, 1));
|
package/wickra_wasm_bg.wasm
CHANGED
|
Binary file
|