wickra-wasm 0.4.0 → 0.4.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/wickra_wasm_bg.js CHANGED
@@ -3227,6 +3227,94 @@ export class CoefficientOfVariation {
3227
3227
  }
3228
3228
  if (Symbol.dispose) CoefficientOfVariation.prototype[Symbol.dispose] = CoefficientOfVariation.prototype.free;
3229
3229
 
3230
+ export class Cointegration {
3231
+ __destroy_into_raw() {
3232
+ const ptr = this.__wbg_ptr;
3233
+ this.__wbg_ptr = 0;
3234
+ CointegrationFinalization.unregister(this);
3235
+ return ptr;
3236
+ }
3237
+ free() {
3238
+ const ptr = this.__destroy_into_raw();
3239
+ wasm.__wbg_cointegration_free(ptr, 0);
3240
+ }
3241
+ /**
3242
+ * Flat `Float64Array` of length `3 * n`:
3243
+ * `[hedgeRatio0, spread0, adfStat0, hedgeRatio1, ...]`. Warmup rows are NaN.
3244
+ * @param {Float64Array} a
3245
+ * @param {Float64Array} b
3246
+ * @returns {Float64Array}
3247
+ */
3248
+ batch(a, b) {
3249
+ try {
3250
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
3251
+ const ptr0 = passArrayF64ToWasm0(a, wasm.__wbindgen_export3);
3252
+ const len0 = WASM_VECTOR_LEN;
3253
+ const ptr1 = passArrayF64ToWasm0(b, wasm.__wbindgen_export3);
3254
+ const len1 = WASM_VECTOR_LEN;
3255
+ wasm.cointegration_batch(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1);
3256
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
3257
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
3258
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
3259
+ if (r2) {
3260
+ throw takeObject(r1);
3261
+ }
3262
+ return takeObject(r0);
3263
+ } finally {
3264
+ wasm.__wbindgen_add_to_stack_pointer(16);
3265
+ }
3266
+ }
3267
+ /**
3268
+ * @returns {boolean}
3269
+ */
3270
+ isReady() {
3271
+ const ret = wasm.cointegration_isReady(this.__wbg_ptr);
3272
+ return ret !== 0;
3273
+ }
3274
+ /**
3275
+ * @param {number} period
3276
+ * @param {number} adf_lags
3277
+ */
3278
+ constructor(period, adf_lags) {
3279
+ try {
3280
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
3281
+ wasm.cointegration_new(retptr, period, adf_lags);
3282
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
3283
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
3284
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
3285
+ if (r2) {
3286
+ throw takeObject(r1);
3287
+ }
3288
+ this.__wbg_ptr = r0;
3289
+ CointegrationFinalization.register(this, this.__wbg_ptr, this);
3290
+ return this;
3291
+ } finally {
3292
+ wasm.__wbindgen_add_to_stack_pointer(16);
3293
+ }
3294
+ }
3295
+ reset() {
3296
+ wasm.cointegration_reset(this.__wbg_ptr);
3297
+ }
3298
+ /**
3299
+ * Returns `{ hedgeRatio, spread, adfStat }`, or `null` during warmup.
3300
+ * @param {number} a
3301
+ * @param {number} b
3302
+ * @returns {any}
3303
+ */
3304
+ update(a, b) {
3305
+ const ret = wasm.cointegration_update(this.__wbg_ptr, a, b);
3306
+ return takeObject(ret);
3307
+ }
3308
+ /**
3309
+ * @returns {number}
3310
+ */
3311
+ warmupPeriod() {
3312
+ const ret = wasm.cointegration_warmupPeriod(this.__wbg_ptr);
3313
+ return ret >>> 0;
3314
+ }
3315
+ }
3316
+ if (Symbol.dispose) Cointegration.prototype[Symbol.dispose] = Cointegration.prototype.free;
3317
+
3230
3318
  export class ConditionalValueAtRisk {
3231
3319
  __destroy_into_raw() {
3232
3320
  const ptr = this.__wbg_ptr;
@@ -3460,6 +3548,65 @@ export class Coppock {
3460
3548
  }
3461
3549
  if (Symbol.dispose) Coppock.prototype[Symbol.dispose] = Coppock.prototype.free;
3462
3550
 
3551
+ export class CumulativeVolumeDelta {
3552
+ __destroy_into_raw() {
3553
+ const ptr = this.__wbg_ptr;
3554
+ this.__wbg_ptr = 0;
3555
+ CumulativeVolumeDeltaFinalization.unregister(this);
3556
+ return ptr;
3557
+ }
3558
+ free() {
3559
+ const ptr = this.__destroy_into_raw();
3560
+ wasm.__wbg_cumulativevolumedelta_free(ptr, 0);
3561
+ }
3562
+ /**
3563
+ * @returns {boolean}
3564
+ */
3565
+ isReady() {
3566
+ const ret = wasm.cumulativevolumedelta_isReady(this.__wbg_ptr);
3567
+ return ret !== 0;
3568
+ }
3569
+ constructor() {
3570
+ const ret = wasm.cumulativevolumedelta_new();
3571
+ this.__wbg_ptr = ret;
3572
+ CumulativeVolumeDeltaFinalization.register(this, this.__wbg_ptr, this);
3573
+ return this;
3574
+ }
3575
+ reset() {
3576
+ wasm.cumulativevolumedelta_reset(this.__wbg_ptr);
3577
+ }
3578
+ /**
3579
+ * @param {number} price
3580
+ * @param {number} size
3581
+ * @param {boolean} is_buy
3582
+ * @returns {number | undefined}
3583
+ */
3584
+ update(price, size, is_buy) {
3585
+ try {
3586
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-32);
3587
+ wasm.cumulativevolumedelta_update(retptr, this.__wbg_ptr, price, size, is_buy);
3588
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
3589
+ var r2 = getDataViewMemory0().getFloat64(retptr + 8 * 1, true);
3590
+ var r4 = getDataViewMemory0().getInt32(retptr + 4 * 4, true);
3591
+ var r5 = getDataViewMemory0().getInt32(retptr + 4 * 5, true);
3592
+ if (r5) {
3593
+ throw takeObject(r4);
3594
+ }
3595
+ return r0 === 0 ? undefined : r2;
3596
+ } finally {
3597
+ wasm.__wbindgen_add_to_stack_pointer(32);
3598
+ }
3599
+ }
3600
+ /**
3601
+ * @returns {number}
3602
+ */
3603
+ warmupPeriod() {
3604
+ const ret = wasm.cumulativevolumedelta_warmupPeriod(this.__wbg_ptr);
3605
+ return ret >>> 0;
3606
+ }
3607
+ }
3608
+ if (Symbol.dispose) CumulativeVolumeDelta.prototype[Symbol.dispose] = CumulativeVolumeDelta.prototype.free;
3609
+
3463
3610
  export class CyberneticCycle {
3464
3611
  __destroy_into_raw() {
3465
3612
  const ptr = this.__wbg_ptr;
@@ -4144,8 +4291,18 @@ export class Doji {
4144
4291
  const ret = wasm.doji_isReady(this.__wbg_ptr);
4145
4292
  return ret !== 0;
4146
4293
  }
4147
- constructor() {
4148
- const ret = wasm.doji_new();
4294
+ /**
4295
+ * @returns {boolean}
4296
+ */
4297
+ isSigned() {
4298
+ const ret = wasm.doji_isSigned(this.__wbg_ptr);
4299
+ return ret !== 0;
4300
+ }
4301
+ /**
4302
+ * @param {boolean | null} [signed]
4303
+ */
4304
+ constructor(signed) {
4305
+ const ret = wasm.doji_new(isLikeNone(signed) ? 0xFFFFFF : signed ? 1 : 0);
4149
4306
  this.__wbg_ptr = ret;
4150
4307
  DojiFinalization.register(this, this.__wbg_ptr, this);
4151
4308
  return this;
@@ -7887,6 +8044,95 @@ export class LaguerreRSI {
7887
8044
  }
7888
8045
  if (Symbol.dispose) LaguerreRSI.prototype[Symbol.dispose] = LaguerreRSI.prototype.free;
7889
8046
 
8047
+ export class LeadLagCrossCorrelation {
8048
+ __destroy_into_raw() {
8049
+ const ptr = this.__wbg_ptr;
8050
+ this.__wbg_ptr = 0;
8051
+ LeadLagCrossCorrelationFinalization.unregister(this);
8052
+ return ptr;
8053
+ }
8054
+ free() {
8055
+ const ptr = this.__destroy_into_raw();
8056
+ wasm.__wbg_leadlagcrosscorrelation_free(ptr, 0);
8057
+ }
8058
+ /**
8059
+ * Flat `Float64Array` of length `2 * n`: `[lag0, corr0, lag1, corr1, ...]`.
8060
+ * Warmup positions are NaN.
8061
+ * @param {Float64Array} a
8062
+ * @param {Float64Array} b
8063
+ * @returns {Float64Array}
8064
+ */
8065
+ batch(a, b) {
8066
+ try {
8067
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
8068
+ const ptr0 = passArrayF64ToWasm0(a, wasm.__wbindgen_export3);
8069
+ const len0 = WASM_VECTOR_LEN;
8070
+ const ptr1 = passArrayF64ToWasm0(b, wasm.__wbindgen_export3);
8071
+ const len1 = WASM_VECTOR_LEN;
8072
+ wasm.leadlagcrosscorrelation_batch(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1);
8073
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
8074
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
8075
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
8076
+ if (r2) {
8077
+ throw takeObject(r1);
8078
+ }
8079
+ return takeObject(r0);
8080
+ } finally {
8081
+ wasm.__wbindgen_add_to_stack_pointer(16);
8082
+ }
8083
+ }
8084
+ /**
8085
+ * @returns {boolean}
8086
+ */
8087
+ isReady() {
8088
+ const ret = wasm.leadlagcrosscorrelation_isReady(this.__wbg_ptr);
8089
+ return ret !== 0;
8090
+ }
8091
+ /**
8092
+ * @param {number} window
8093
+ * @param {number} max_lag
8094
+ */
8095
+ constructor(window, max_lag) {
8096
+ try {
8097
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
8098
+ wasm.leadlagcrosscorrelation_new(retptr, window, max_lag);
8099
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
8100
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
8101
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
8102
+ if (r2) {
8103
+ throw takeObject(r1);
8104
+ }
8105
+ this.__wbg_ptr = r0;
8106
+ LeadLagCrossCorrelationFinalization.register(this, this.__wbg_ptr, this);
8107
+ return this;
8108
+ } finally {
8109
+ wasm.__wbindgen_add_to_stack_pointer(16);
8110
+ }
8111
+ }
8112
+ reset() {
8113
+ wasm.leadlagcrosscorrelation_reset(this.__wbg_ptr);
8114
+ }
8115
+ /**
8116
+ * Returns `{ lag, correlation }`, or `null` during warmup. Positive lag
8117
+ * means `a` leads `b`.
8118
+ * @param {number} a
8119
+ * @param {number} b
8120
+ * @returns {any}
8121
+ */
8122
+ update(a, b) {
8123
+ const ret = wasm.leadlagcrosscorrelation_update(this.__wbg_ptr, a, b);
8124
+ return takeObject(ret);
8125
+ }
8126
+ /**
8127
+ * @returns {number}
8128
+ */
8129
+ warmupPeriod() {
8130
+ const ret = wasm.leadlagcrosscorrelation_warmupPeriod(this.__wbg_ptr);
8131
+ return ret >>> 0;
8132
+ }
8133
+ }
8134
+ if (Symbol.dispose) LeadLagCrossCorrelation.prototype[Symbol.dispose] = LeadLagCrossCorrelation.prototype.free;
8135
+
7890
8136
  export class LinRegAngle {
7891
8137
  __destroy_into_raw() {
7892
8138
  const ptr = this.__wbg_ptr;
@@ -9114,6 +9360,74 @@ export class MedianPrice {
9114
9360
  }
9115
9361
  if (Symbol.dispose) MedianPrice.prototype[Symbol.dispose] = MedianPrice.prototype.free;
9116
9362
 
9363
+ export class Microprice {
9364
+ __destroy_into_raw() {
9365
+ const ptr = this.__wbg_ptr;
9366
+ this.__wbg_ptr = 0;
9367
+ MicropriceFinalization.unregister(this);
9368
+ return ptr;
9369
+ }
9370
+ free() {
9371
+ const ptr = this.__destroy_into_raw();
9372
+ wasm.__wbg_microprice_free(ptr, 0);
9373
+ }
9374
+ /**
9375
+ * @returns {boolean}
9376
+ */
9377
+ isReady() {
9378
+ const ret = wasm.microprice_isReady(this.__wbg_ptr);
9379
+ return ret !== 0;
9380
+ }
9381
+ constructor() {
9382
+ const ret = wasm.microprice_new();
9383
+ this.__wbg_ptr = ret;
9384
+ MicropriceFinalization.register(this, this.__wbg_ptr, this);
9385
+ return this;
9386
+ }
9387
+ reset() {
9388
+ wasm.microprice_reset(this.__wbg_ptr);
9389
+ }
9390
+ /**
9391
+ * @param {Float64Array} bid_px
9392
+ * @param {Float64Array} bid_sz
9393
+ * @param {Float64Array} ask_px
9394
+ * @param {Float64Array} ask_sz
9395
+ * @returns {number | undefined}
9396
+ */
9397
+ update(bid_px, bid_sz, ask_px, ask_sz) {
9398
+ try {
9399
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-32);
9400
+ const ptr0 = passArrayF64ToWasm0(bid_px, wasm.__wbindgen_export3);
9401
+ const len0 = WASM_VECTOR_LEN;
9402
+ const ptr1 = passArrayF64ToWasm0(bid_sz, wasm.__wbindgen_export3);
9403
+ const len1 = WASM_VECTOR_LEN;
9404
+ const ptr2 = passArrayF64ToWasm0(ask_px, wasm.__wbindgen_export3);
9405
+ const len2 = WASM_VECTOR_LEN;
9406
+ const ptr3 = passArrayF64ToWasm0(ask_sz, wasm.__wbindgen_export3);
9407
+ const len3 = WASM_VECTOR_LEN;
9408
+ wasm.microprice_update(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1, ptr2, len2, ptr3, len3);
9409
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
9410
+ var r2 = getDataViewMemory0().getFloat64(retptr + 8 * 1, true);
9411
+ var r4 = getDataViewMemory0().getInt32(retptr + 4 * 4, true);
9412
+ var r5 = getDataViewMemory0().getInt32(retptr + 4 * 5, true);
9413
+ if (r5) {
9414
+ throw takeObject(r4);
9415
+ }
9416
+ return r0 === 0 ? undefined : r2;
9417
+ } finally {
9418
+ wasm.__wbindgen_add_to_stack_pointer(32);
9419
+ }
9420
+ }
9421
+ /**
9422
+ * @returns {number}
9423
+ */
9424
+ warmupPeriod() {
9425
+ const ret = wasm.microprice_warmupPeriod(this.__wbg_ptr);
9426
+ return ret >>> 0;
9427
+ }
9428
+ }
9429
+ if (Symbol.dispose) Microprice.prototype[Symbol.dispose] = Microprice.prototype.free;
9430
+
9117
9431
  export class MorningEveningStar {
9118
9432
  __destroy_into_raw() {
9119
9433
  const ptr = this.__wbg_ptr;
@@ -9627,31 +9941,249 @@ export class OpeningRange {
9627
9941
  }
9628
9942
  if (Symbol.dispose) OpeningRange.prototype[Symbol.dispose] = OpeningRange.prototype.free;
9629
9943
 
9630
- export class PGO {
9944
+ export class OrderBookImbalanceFull {
9631
9945
  __destroy_into_raw() {
9632
9946
  const ptr = this.__wbg_ptr;
9633
9947
  this.__wbg_ptr = 0;
9634
- PGOFinalization.unregister(this);
9948
+ OrderBookImbalanceFullFinalization.unregister(this);
9635
9949
  return ptr;
9636
9950
  }
9637
9951
  free() {
9638
9952
  const ptr = this.__destroy_into_raw();
9639
- wasm.__wbg_pgo_free(ptr, 0);
9953
+ wasm.__wbg_orderbookimbalancefull_free(ptr, 0);
9640
9954
  }
9641
9955
  /**
9642
- * @param {Float64Array} high
9643
- * @param {Float64Array} low
9644
- * @param {Float64Array} close
9645
- * @returns {Float64Array}
9956
+ * @returns {boolean}
9646
9957
  */
9647
- batch(high, low, close) {
9958
+ isReady() {
9959
+ const ret = wasm.orderbookimbalancefull_isReady(this.__wbg_ptr);
9960
+ return ret !== 0;
9961
+ }
9962
+ constructor() {
9963
+ const ret = wasm.orderbookimbalancefull_new();
9964
+ this.__wbg_ptr = ret;
9965
+ OrderBookImbalanceFullFinalization.register(this, this.__wbg_ptr, this);
9966
+ return this;
9967
+ }
9968
+ reset() {
9969
+ wasm.orderbookimbalancefull_reset(this.__wbg_ptr);
9970
+ }
9971
+ /**
9972
+ * @param {Float64Array} bid_px
9973
+ * @param {Float64Array} bid_sz
9974
+ * @param {Float64Array} ask_px
9975
+ * @param {Float64Array} ask_sz
9976
+ * @returns {number | undefined}
9977
+ */
9978
+ update(bid_px, bid_sz, ask_px, ask_sz) {
9648
9979
  try {
9649
- const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
9650
- const ptr0 = passArrayF64ToWasm0(high, wasm.__wbindgen_export3);
9980
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-32);
9981
+ const ptr0 = passArrayF64ToWasm0(bid_px, wasm.__wbindgen_export3);
9651
9982
  const len0 = WASM_VECTOR_LEN;
9652
- const ptr1 = passArrayF64ToWasm0(low, wasm.__wbindgen_export3);
9983
+ const ptr1 = passArrayF64ToWasm0(bid_sz, wasm.__wbindgen_export3);
9653
9984
  const len1 = WASM_VECTOR_LEN;
9654
- const ptr2 = passArrayF64ToWasm0(close, wasm.__wbindgen_export3);
9985
+ const ptr2 = passArrayF64ToWasm0(ask_px, wasm.__wbindgen_export3);
9986
+ const len2 = WASM_VECTOR_LEN;
9987
+ const ptr3 = passArrayF64ToWasm0(ask_sz, wasm.__wbindgen_export3);
9988
+ const len3 = WASM_VECTOR_LEN;
9989
+ wasm.orderbookimbalancefull_update(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1, ptr2, len2, ptr3, len3);
9990
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
9991
+ var r2 = getDataViewMemory0().getFloat64(retptr + 8 * 1, true);
9992
+ var r4 = getDataViewMemory0().getInt32(retptr + 4 * 4, true);
9993
+ var r5 = getDataViewMemory0().getInt32(retptr + 4 * 5, true);
9994
+ if (r5) {
9995
+ throw takeObject(r4);
9996
+ }
9997
+ return r0 === 0 ? undefined : r2;
9998
+ } finally {
9999
+ wasm.__wbindgen_add_to_stack_pointer(32);
10000
+ }
10001
+ }
10002
+ /**
10003
+ * @returns {number}
10004
+ */
10005
+ warmupPeriod() {
10006
+ const ret = wasm.orderbookimbalancefull_warmupPeriod(this.__wbg_ptr);
10007
+ return ret >>> 0;
10008
+ }
10009
+ }
10010
+ if (Symbol.dispose) OrderBookImbalanceFull.prototype[Symbol.dispose] = OrderBookImbalanceFull.prototype.free;
10011
+
10012
+ export class OrderBookImbalanceTop1 {
10013
+ __destroy_into_raw() {
10014
+ const ptr = this.__wbg_ptr;
10015
+ this.__wbg_ptr = 0;
10016
+ OrderBookImbalanceTop1Finalization.unregister(this);
10017
+ return ptr;
10018
+ }
10019
+ free() {
10020
+ const ptr = this.__destroy_into_raw();
10021
+ wasm.__wbg_orderbookimbalancetop1_free(ptr, 0);
10022
+ }
10023
+ /**
10024
+ * @returns {boolean}
10025
+ */
10026
+ isReady() {
10027
+ const ret = wasm.orderbookimbalancetop1_isReady(this.__wbg_ptr);
10028
+ return ret !== 0;
10029
+ }
10030
+ constructor() {
10031
+ const ret = wasm.orderbookimbalancetop1_new();
10032
+ this.__wbg_ptr = ret;
10033
+ OrderBookImbalanceTop1Finalization.register(this, this.__wbg_ptr, this);
10034
+ return this;
10035
+ }
10036
+ reset() {
10037
+ wasm.orderbookimbalancetop1_reset(this.__wbg_ptr);
10038
+ }
10039
+ /**
10040
+ * @param {Float64Array} bid_px
10041
+ * @param {Float64Array} bid_sz
10042
+ * @param {Float64Array} ask_px
10043
+ * @param {Float64Array} ask_sz
10044
+ * @returns {number | undefined}
10045
+ */
10046
+ update(bid_px, bid_sz, ask_px, ask_sz) {
10047
+ try {
10048
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-32);
10049
+ const ptr0 = passArrayF64ToWasm0(bid_px, wasm.__wbindgen_export3);
10050
+ const len0 = WASM_VECTOR_LEN;
10051
+ const ptr1 = passArrayF64ToWasm0(bid_sz, wasm.__wbindgen_export3);
10052
+ const len1 = WASM_VECTOR_LEN;
10053
+ const ptr2 = passArrayF64ToWasm0(ask_px, wasm.__wbindgen_export3);
10054
+ const len2 = WASM_VECTOR_LEN;
10055
+ const ptr3 = passArrayF64ToWasm0(ask_sz, wasm.__wbindgen_export3);
10056
+ const len3 = WASM_VECTOR_LEN;
10057
+ wasm.orderbookimbalancetop1_update(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1, ptr2, len2, ptr3, len3);
10058
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
10059
+ var r2 = getDataViewMemory0().getFloat64(retptr + 8 * 1, true);
10060
+ var r4 = getDataViewMemory0().getInt32(retptr + 4 * 4, true);
10061
+ var r5 = getDataViewMemory0().getInt32(retptr + 4 * 5, true);
10062
+ if (r5) {
10063
+ throw takeObject(r4);
10064
+ }
10065
+ return r0 === 0 ? undefined : r2;
10066
+ } finally {
10067
+ wasm.__wbindgen_add_to_stack_pointer(32);
10068
+ }
10069
+ }
10070
+ /**
10071
+ * @returns {number}
10072
+ */
10073
+ warmupPeriod() {
10074
+ const ret = wasm.orderbookimbalancetop1_warmupPeriod(this.__wbg_ptr);
10075
+ return ret >>> 0;
10076
+ }
10077
+ }
10078
+ if (Symbol.dispose) OrderBookImbalanceTop1.prototype[Symbol.dispose] = OrderBookImbalanceTop1.prototype.free;
10079
+
10080
+ export class OrderBookImbalanceTopN {
10081
+ __destroy_into_raw() {
10082
+ const ptr = this.__wbg_ptr;
10083
+ this.__wbg_ptr = 0;
10084
+ OrderBookImbalanceTopNFinalization.unregister(this);
10085
+ return ptr;
10086
+ }
10087
+ free() {
10088
+ const ptr = this.__destroy_into_raw();
10089
+ wasm.__wbg_orderbookimbalancetopn_free(ptr, 0);
10090
+ }
10091
+ /**
10092
+ * @returns {boolean}
10093
+ */
10094
+ isReady() {
10095
+ const ret = wasm.orderbookimbalancetopn_isReady(this.__wbg_ptr);
10096
+ return ret !== 0;
10097
+ }
10098
+ /**
10099
+ * @param {number} levels
10100
+ */
10101
+ constructor(levels) {
10102
+ try {
10103
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
10104
+ wasm.orderbookimbalancetopn_new(retptr, levels);
10105
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
10106
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
10107
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
10108
+ if (r2) {
10109
+ throw takeObject(r1);
10110
+ }
10111
+ this.__wbg_ptr = r0;
10112
+ OrderBookImbalanceTopNFinalization.register(this, this.__wbg_ptr, this);
10113
+ return this;
10114
+ } finally {
10115
+ wasm.__wbindgen_add_to_stack_pointer(16);
10116
+ }
10117
+ }
10118
+ reset() {
10119
+ wasm.orderbookimbalancetopn_reset(this.__wbg_ptr);
10120
+ }
10121
+ /**
10122
+ * @param {Float64Array} bid_px
10123
+ * @param {Float64Array} bid_sz
10124
+ * @param {Float64Array} ask_px
10125
+ * @param {Float64Array} ask_sz
10126
+ * @returns {number | undefined}
10127
+ */
10128
+ update(bid_px, bid_sz, ask_px, ask_sz) {
10129
+ try {
10130
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-32);
10131
+ const ptr0 = passArrayF64ToWasm0(bid_px, wasm.__wbindgen_export3);
10132
+ const len0 = WASM_VECTOR_LEN;
10133
+ const ptr1 = passArrayF64ToWasm0(bid_sz, wasm.__wbindgen_export3);
10134
+ const len1 = WASM_VECTOR_LEN;
10135
+ const ptr2 = passArrayF64ToWasm0(ask_px, wasm.__wbindgen_export3);
10136
+ const len2 = WASM_VECTOR_LEN;
10137
+ const ptr3 = passArrayF64ToWasm0(ask_sz, wasm.__wbindgen_export3);
10138
+ const len3 = WASM_VECTOR_LEN;
10139
+ wasm.orderbookimbalancetopn_update(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1, ptr2, len2, ptr3, len3);
10140
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
10141
+ var r2 = getDataViewMemory0().getFloat64(retptr + 8 * 1, true);
10142
+ var r4 = getDataViewMemory0().getInt32(retptr + 4 * 4, true);
10143
+ var r5 = getDataViewMemory0().getInt32(retptr + 4 * 5, true);
10144
+ if (r5) {
10145
+ throw takeObject(r4);
10146
+ }
10147
+ return r0 === 0 ? undefined : r2;
10148
+ } finally {
10149
+ wasm.__wbindgen_add_to_stack_pointer(32);
10150
+ }
10151
+ }
10152
+ /**
10153
+ * @returns {number}
10154
+ */
10155
+ warmupPeriod() {
10156
+ const ret = wasm.orderbookimbalancetopn_warmupPeriod(this.__wbg_ptr);
10157
+ return ret >>> 0;
10158
+ }
10159
+ }
10160
+ if (Symbol.dispose) OrderBookImbalanceTopN.prototype[Symbol.dispose] = OrderBookImbalanceTopN.prototype.free;
10161
+
10162
+ export class PGO {
10163
+ __destroy_into_raw() {
10164
+ const ptr = this.__wbg_ptr;
10165
+ this.__wbg_ptr = 0;
10166
+ PGOFinalization.unregister(this);
10167
+ return ptr;
10168
+ }
10169
+ free() {
10170
+ const ptr = this.__destroy_into_raw();
10171
+ wasm.__wbg_pgo_free(ptr, 0);
10172
+ }
10173
+ /**
10174
+ * @param {Float64Array} high
10175
+ * @param {Float64Array} low
10176
+ * @param {Float64Array} close
10177
+ * @returns {Float64Array}
10178
+ */
10179
+ batch(high, low, close) {
10180
+ try {
10181
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
10182
+ const ptr0 = passArrayF64ToWasm0(high, wasm.__wbindgen_export3);
10183
+ const len0 = WASM_VECTOR_LEN;
10184
+ const ptr1 = passArrayF64ToWasm0(low, wasm.__wbindgen_export3);
10185
+ const len1 = WASM_VECTOR_LEN;
10186
+ const ptr2 = passArrayF64ToWasm0(close, wasm.__wbindgen_export3);
9655
10187
  const len2 = WASM_VECTOR_LEN;
9656
10188
  wasm.pgo_batch(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1, ptr2, len2);
9657
10189
  var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
@@ -10079,7 +10611,193 @@ export class PainIndex {
10079
10611
  * @returns {boolean}
10080
10612
  */
10081
10613
  isReady() {
10082
- const ret = wasm.painindex_isReady(this.__wbg_ptr);
10614
+ const ret = wasm.painindex_isReady(this.__wbg_ptr);
10615
+ return ret !== 0;
10616
+ }
10617
+ /**
10618
+ * @param {number} period
10619
+ */
10620
+ constructor(period) {
10621
+ try {
10622
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
10623
+ wasm.painindex_new(retptr, period);
10624
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
10625
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
10626
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
10627
+ if (r2) {
10628
+ throw takeObject(r1);
10629
+ }
10630
+ this.__wbg_ptr = r0;
10631
+ PainIndexFinalization.register(this, this.__wbg_ptr, this);
10632
+ return this;
10633
+ } finally {
10634
+ wasm.__wbindgen_add_to_stack_pointer(16);
10635
+ }
10636
+ }
10637
+ reset() {
10638
+ wasm.painindex_reset(this.__wbg_ptr);
10639
+ }
10640
+ /**
10641
+ * @param {number} value
10642
+ * @returns {number | undefined}
10643
+ */
10644
+ update(value) {
10645
+ try {
10646
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
10647
+ wasm.painindex_update(retptr, this.__wbg_ptr, value);
10648
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
10649
+ var r2 = getDataViewMemory0().getFloat64(retptr + 8 * 1, true);
10650
+ return r0 === 0 ? undefined : r2;
10651
+ } finally {
10652
+ wasm.__wbindgen_add_to_stack_pointer(16);
10653
+ }
10654
+ }
10655
+ /**
10656
+ * @returns {number}
10657
+ */
10658
+ warmupPeriod() {
10659
+ const ret = wasm.painindex_warmupPeriod(this.__wbg_ptr);
10660
+ return ret >>> 0;
10661
+ }
10662
+ }
10663
+ if (Symbol.dispose) PainIndex.prototype[Symbol.dispose] = PainIndex.prototype.free;
10664
+
10665
+ export class PairSpreadZScore {
10666
+ __destroy_into_raw() {
10667
+ const ptr = this.__wbg_ptr;
10668
+ this.__wbg_ptr = 0;
10669
+ PairSpreadZScoreFinalization.unregister(this);
10670
+ return ptr;
10671
+ }
10672
+ free() {
10673
+ const ptr = this.__destroy_into_raw();
10674
+ wasm.__wbg_pairspreadzscore_free(ptr, 0);
10675
+ }
10676
+ /**
10677
+ * Batch over two equally-sized arrays of prices. Returns one `f64` per
10678
+ * input position (`NaN` during warmup).
10679
+ * @param {Float64Array} a
10680
+ * @param {Float64Array} b
10681
+ * @returns {Float64Array}
10682
+ */
10683
+ batch(a, b) {
10684
+ try {
10685
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
10686
+ const ptr0 = passArrayF64ToWasm0(a, wasm.__wbindgen_export3);
10687
+ const len0 = WASM_VECTOR_LEN;
10688
+ const ptr1 = passArrayF64ToWasm0(b, wasm.__wbindgen_export3);
10689
+ const len1 = WASM_VECTOR_LEN;
10690
+ wasm.pairspreadzscore_batch(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1);
10691
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
10692
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
10693
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
10694
+ if (r2) {
10695
+ throw takeObject(r1);
10696
+ }
10697
+ return takeObject(r0);
10698
+ } finally {
10699
+ wasm.__wbindgen_add_to_stack_pointer(16);
10700
+ }
10701
+ }
10702
+ /**
10703
+ * @returns {boolean}
10704
+ */
10705
+ isReady() {
10706
+ const ret = wasm.pairspreadzscore_isReady(this.__wbg_ptr);
10707
+ return ret !== 0;
10708
+ }
10709
+ /**
10710
+ * @param {number} beta_period
10711
+ * @param {number} z_period
10712
+ */
10713
+ constructor(beta_period, z_period) {
10714
+ try {
10715
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
10716
+ wasm.pairspreadzscore_new(retptr, beta_period, z_period);
10717
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
10718
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
10719
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
10720
+ if (r2) {
10721
+ throw takeObject(r1);
10722
+ }
10723
+ this.__wbg_ptr = r0;
10724
+ PairSpreadZScoreFinalization.register(this, this.__wbg_ptr, this);
10725
+ return this;
10726
+ } finally {
10727
+ wasm.__wbindgen_add_to_stack_pointer(16);
10728
+ }
10729
+ }
10730
+ reset() {
10731
+ wasm.pairspreadzscore_reset(this.__wbg_ptr);
10732
+ }
10733
+ /**
10734
+ * @param {number} a
10735
+ * @param {number} b
10736
+ * @returns {number | undefined}
10737
+ */
10738
+ update(a, b) {
10739
+ try {
10740
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
10741
+ wasm.pairspreadzscore_update(retptr, this.__wbg_ptr, a, b);
10742
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
10743
+ var r2 = getDataViewMemory0().getFloat64(retptr + 8 * 1, true);
10744
+ return r0 === 0 ? undefined : r2;
10745
+ } finally {
10746
+ wasm.__wbindgen_add_to_stack_pointer(16);
10747
+ }
10748
+ }
10749
+ /**
10750
+ * @returns {number}
10751
+ */
10752
+ warmupPeriod() {
10753
+ const ret = wasm.pairspreadzscore_warmupPeriod(this.__wbg_ptr);
10754
+ return ret >>> 0;
10755
+ }
10756
+ }
10757
+ if (Symbol.dispose) PairSpreadZScore.prototype[Symbol.dispose] = PairSpreadZScore.prototype.free;
10758
+
10759
+ export class PairwiseBeta {
10760
+ __destroy_into_raw() {
10761
+ const ptr = this.__wbg_ptr;
10762
+ this.__wbg_ptr = 0;
10763
+ PairwiseBetaFinalization.unregister(this);
10764
+ return ptr;
10765
+ }
10766
+ free() {
10767
+ const ptr = this.__destroy_into_raw();
10768
+ wasm.__wbg_pairwisebeta_free(ptr, 0);
10769
+ }
10770
+ /**
10771
+ * Batch over two equally-sized arrays. Returns one `f64` per
10772
+ * input position (`NaN` during warmup).
10773
+ * @param {Float64Array} x
10774
+ * @param {Float64Array} y
10775
+ * @returns {Float64Array}
10776
+ */
10777
+ batch(x, y) {
10778
+ try {
10779
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
10780
+ const ptr0 = passArrayF64ToWasm0(x, wasm.__wbindgen_export3);
10781
+ const len0 = WASM_VECTOR_LEN;
10782
+ const ptr1 = passArrayF64ToWasm0(y, wasm.__wbindgen_export3);
10783
+ const len1 = WASM_VECTOR_LEN;
10784
+ wasm.pairwisebeta_batch(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1);
10785
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
10786
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
10787
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
10788
+ if (r2) {
10789
+ throw takeObject(r1);
10790
+ }
10791
+ return takeObject(r0);
10792
+ } finally {
10793
+ wasm.__wbindgen_add_to_stack_pointer(16);
10794
+ }
10795
+ }
10796
+ /**
10797
+ * @returns {boolean}
10798
+ */
10799
+ isReady() {
10800
+ const ret = wasm.pairwisebeta_isReady(this.__wbg_ptr);
10083
10801
  return ret !== 0;
10084
10802
  }
10085
10803
  /**
@@ -10088,7 +10806,7 @@ export class PainIndex {
10088
10806
  constructor(period) {
10089
10807
  try {
10090
10808
  const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
10091
- wasm.painindex_new(retptr, period);
10809
+ wasm.pairwisebeta_new(retptr, period);
10092
10810
  var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
10093
10811
  var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
10094
10812
  var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
@@ -10096,23 +10814,24 @@ export class PainIndex {
10096
10814
  throw takeObject(r1);
10097
10815
  }
10098
10816
  this.__wbg_ptr = r0;
10099
- PainIndexFinalization.register(this, this.__wbg_ptr, this);
10817
+ PairwiseBetaFinalization.register(this, this.__wbg_ptr, this);
10100
10818
  return this;
10101
10819
  } finally {
10102
10820
  wasm.__wbindgen_add_to_stack_pointer(16);
10103
10821
  }
10104
10822
  }
10105
10823
  reset() {
10106
- wasm.painindex_reset(this.__wbg_ptr);
10824
+ wasm.pairwisebeta_reset(this.__wbg_ptr);
10107
10825
  }
10108
10826
  /**
10109
- * @param {number} value
10827
+ * @param {number} x
10828
+ * @param {number} y
10110
10829
  * @returns {number | undefined}
10111
10830
  */
10112
- update(value) {
10831
+ update(x, y) {
10113
10832
  try {
10114
10833
  const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
10115
- wasm.painindex_update(retptr, this.__wbg_ptr, value);
10834
+ wasm.pairwisebeta_update(retptr, this.__wbg_ptr, x, y);
10116
10835
  var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
10117
10836
  var r2 = getDataViewMemory0().getFloat64(retptr + 8 * 1, true);
10118
10837
  return r0 === 0 ? undefined : r2;
@@ -10124,11 +10843,11 @@ export class PainIndex {
10124
10843
  * @returns {number}
10125
10844
  */
10126
10845
  warmupPeriod() {
10127
- const ret = wasm.painindex_warmupPeriod(this.__wbg_ptr);
10846
+ const ret = wasm.pairwisebeta_warmupPeriod(this.__wbg_ptr);
10128
10847
  return ret >>> 0;
10129
10848
  }
10130
10849
  }
10131
- if (Symbol.dispose) PainIndex.prototype[Symbol.dispose] = PainIndex.prototype.free;
10850
+ if (Symbol.dispose) PairwiseBeta.prototype[Symbol.dispose] = PairwiseBeta.prototype.free;
10132
10851
 
10133
10852
  export class ParkinsonVolatility {
10134
10853
  __destroy_into_raw() {
@@ -10625,6 +11344,74 @@ export class ProfitFactor {
10625
11344
  }
10626
11345
  if (Symbol.dispose) ProfitFactor.prototype[Symbol.dispose] = ProfitFactor.prototype.free;
10627
11346
 
11347
+ export class QuotedSpread {
11348
+ __destroy_into_raw() {
11349
+ const ptr = this.__wbg_ptr;
11350
+ this.__wbg_ptr = 0;
11351
+ QuotedSpreadFinalization.unregister(this);
11352
+ return ptr;
11353
+ }
11354
+ free() {
11355
+ const ptr = this.__destroy_into_raw();
11356
+ wasm.__wbg_quotedspread_free(ptr, 0);
11357
+ }
11358
+ /**
11359
+ * @returns {boolean}
11360
+ */
11361
+ isReady() {
11362
+ const ret = wasm.quotedspread_isReady(this.__wbg_ptr);
11363
+ return ret !== 0;
11364
+ }
11365
+ constructor() {
11366
+ const ret = wasm.quotedspread_new();
11367
+ this.__wbg_ptr = ret;
11368
+ QuotedSpreadFinalization.register(this, this.__wbg_ptr, this);
11369
+ return this;
11370
+ }
11371
+ reset() {
11372
+ wasm.quotedspread_reset(this.__wbg_ptr);
11373
+ }
11374
+ /**
11375
+ * @param {Float64Array} bid_px
11376
+ * @param {Float64Array} bid_sz
11377
+ * @param {Float64Array} ask_px
11378
+ * @param {Float64Array} ask_sz
11379
+ * @returns {number | undefined}
11380
+ */
11381
+ update(bid_px, bid_sz, ask_px, ask_sz) {
11382
+ try {
11383
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-32);
11384
+ const ptr0 = passArrayF64ToWasm0(bid_px, wasm.__wbindgen_export3);
11385
+ const len0 = WASM_VECTOR_LEN;
11386
+ const ptr1 = passArrayF64ToWasm0(bid_sz, wasm.__wbindgen_export3);
11387
+ const len1 = WASM_VECTOR_LEN;
11388
+ const ptr2 = passArrayF64ToWasm0(ask_px, wasm.__wbindgen_export3);
11389
+ const len2 = WASM_VECTOR_LEN;
11390
+ const ptr3 = passArrayF64ToWasm0(ask_sz, wasm.__wbindgen_export3);
11391
+ const len3 = WASM_VECTOR_LEN;
11392
+ wasm.quotedspread_update(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1, ptr2, len2, ptr3, len3);
11393
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
11394
+ var r2 = getDataViewMemory0().getFloat64(retptr + 8 * 1, true);
11395
+ var r4 = getDataViewMemory0().getInt32(retptr + 4 * 4, true);
11396
+ var r5 = getDataViewMemory0().getInt32(retptr + 4 * 5, true);
11397
+ if (r5) {
11398
+ throw takeObject(r4);
11399
+ }
11400
+ return r0 === 0 ? undefined : r2;
11401
+ } finally {
11402
+ wasm.__wbindgen_add_to_stack_pointer(32);
11403
+ }
11404
+ }
11405
+ /**
11406
+ * @returns {number}
11407
+ */
11408
+ warmupPeriod() {
11409
+ const ret = wasm.quotedspread_warmupPeriod(this.__wbg_ptr);
11410
+ return ret >>> 0;
11411
+ }
11412
+ }
11413
+ if (Symbol.dispose) QuotedSpread.prototype[Symbol.dispose] = QuotedSpread.prototype.free;
11414
+
10628
11415
  export class ROC {
10629
11416
  __destroy_into_raw() {
10630
11417
  const ptr = this.__wbg_ptr;
@@ -11181,6 +11968,94 @@ export class RecoveryFactor {
11181
11968
  }
11182
11969
  if (Symbol.dispose) RecoveryFactor.prototype[Symbol.dispose] = RecoveryFactor.prototype.free;
11183
11970
 
11971
+ export class RelativeStrengthAB {
11972
+ __destroy_into_raw() {
11973
+ const ptr = this.__wbg_ptr;
11974
+ this.__wbg_ptr = 0;
11975
+ RelativeStrengthABFinalization.unregister(this);
11976
+ return ptr;
11977
+ }
11978
+ free() {
11979
+ const ptr = this.__destroy_into_raw();
11980
+ wasm.__wbg_relativestrengthab_free(ptr, 0);
11981
+ }
11982
+ /**
11983
+ * Flat `Float64Array` of length `3 * n`:
11984
+ * `[ratio0, ratioMa0, ratioRsi0, ratio1, ...]`. Warmup rows are NaN.
11985
+ * @param {Float64Array} a
11986
+ * @param {Float64Array} b
11987
+ * @returns {Float64Array}
11988
+ */
11989
+ batch(a, b) {
11990
+ try {
11991
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
11992
+ const ptr0 = passArrayF64ToWasm0(a, wasm.__wbindgen_export3);
11993
+ const len0 = WASM_VECTOR_LEN;
11994
+ const ptr1 = passArrayF64ToWasm0(b, wasm.__wbindgen_export3);
11995
+ const len1 = WASM_VECTOR_LEN;
11996
+ wasm.relativestrengthab_batch(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1);
11997
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
11998
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
11999
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
12000
+ if (r2) {
12001
+ throw takeObject(r1);
12002
+ }
12003
+ return takeObject(r0);
12004
+ } finally {
12005
+ wasm.__wbindgen_add_to_stack_pointer(16);
12006
+ }
12007
+ }
12008
+ /**
12009
+ * @returns {boolean}
12010
+ */
12011
+ isReady() {
12012
+ const ret = wasm.relativestrengthab_isReady(this.__wbg_ptr);
12013
+ return ret !== 0;
12014
+ }
12015
+ /**
12016
+ * @param {number} ma_period
12017
+ * @param {number} rsi_period
12018
+ */
12019
+ constructor(ma_period, rsi_period) {
12020
+ try {
12021
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
12022
+ wasm.relativestrengthab_new(retptr, ma_period, rsi_period);
12023
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
12024
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
12025
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
12026
+ if (r2) {
12027
+ throw takeObject(r1);
12028
+ }
12029
+ this.__wbg_ptr = r0;
12030
+ RelativeStrengthABFinalization.register(this, this.__wbg_ptr, this);
12031
+ return this;
12032
+ } finally {
12033
+ wasm.__wbindgen_add_to_stack_pointer(16);
12034
+ }
12035
+ }
12036
+ reset() {
12037
+ wasm.relativestrengthab_reset(this.__wbg_ptr);
12038
+ }
12039
+ /**
12040
+ * Returns `{ ratio, ratioMa, ratioRsi }`, or `null` during warmup.
12041
+ * @param {number} a
12042
+ * @param {number} b
12043
+ * @returns {any}
12044
+ */
12045
+ update(a, b) {
12046
+ const ret = wasm.relativestrengthab_update(this.__wbg_ptr, a, b);
12047
+ return takeObject(ret);
12048
+ }
12049
+ /**
12050
+ * @returns {number}
12051
+ */
12052
+ warmupPeriod() {
12053
+ const ret = wasm.relativestrengthab_warmupPeriod(this.__wbg_ptr);
12054
+ return ret >>> 0;
12055
+ }
12056
+ }
12057
+ if (Symbol.dispose) RelativeStrengthAB.prototype[Symbol.dispose] = RelativeStrengthAB.prototype.free;
12058
+
11184
12059
  export class RenkoTrailingStop {
11185
12060
  __destroy_into_raw() {
11186
12061
  const ptr = this.__wbg_ptr;
@@ -12036,6 +12911,65 @@ export class ShootingStar {
12036
12911
  }
12037
12912
  if (Symbol.dispose) ShootingStar.prototype[Symbol.dispose] = ShootingStar.prototype.free;
12038
12913
 
12914
+ export class SignedVolume {
12915
+ __destroy_into_raw() {
12916
+ const ptr = this.__wbg_ptr;
12917
+ this.__wbg_ptr = 0;
12918
+ SignedVolumeFinalization.unregister(this);
12919
+ return ptr;
12920
+ }
12921
+ free() {
12922
+ const ptr = this.__destroy_into_raw();
12923
+ wasm.__wbg_signedvolume_free(ptr, 0);
12924
+ }
12925
+ /**
12926
+ * @returns {boolean}
12927
+ */
12928
+ isReady() {
12929
+ const ret = wasm.signedvolume_isReady(this.__wbg_ptr);
12930
+ return ret !== 0;
12931
+ }
12932
+ constructor() {
12933
+ const ret = wasm.signedvolume_new();
12934
+ this.__wbg_ptr = ret;
12935
+ SignedVolumeFinalization.register(this, this.__wbg_ptr, this);
12936
+ return this;
12937
+ }
12938
+ reset() {
12939
+ wasm.signedvolume_reset(this.__wbg_ptr);
12940
+ }
12941
+ /**
12942
+ * @param {number} price
12943
+ * @param {number} size
12944
+ * @param {boolean} is_buy
12945
+ * @returns {number | undefined}
12946
+ */
12947
+ update(price, size, is_buy) {
12948
+ try {
12949
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-32);
12950
+ wasm.signedvolume_update(retptr, this.__wbg_ptr, price, size, is_buy);
12951
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
12952
+ var r2 = getDataViewMemory0().getFloat64(retptr + 8 * 1, true);
12953
+ var r4 = getDataViewMemory0().getInt32(retptr + 4 * 4, true);
12954
+ var r5 = getDataViewMemory0().getInt32(retptr + 4 * 5, true);
12955
+ if (r5) {
12956
+ throw takeObject(r4);
12957
+ }
12958
+ return r0 === 0 ? undefined : r2;
12959
+ } finally {
12960
+ wasm.__wbindgen_add_to_stack_pointer(32);
12961
+ }
12962
+ }
12963
+ /**
12964
+ * @returns {number}
12965
+ */
12966
+ warmupPeriod() {
12967
+ const ret = wasm.signedvolume_warmupPeriod(this.__wbg_ptr);
12968
+ return ret >>> 0;
12969
+ }
12970
+ }
12971
+ if (Symbol.dispose) SignedVolume.prototype[Symbol.dispose] = SignedVolume.prototype.free;
12972
+
12039
12973
  export class SineWave {
12040
12974
  __destroy_into_raw() {
12041
12975
  const ptr = this.__wbg_ptr;
@@ -15164,6 +16098,79 @@ export class ThreeSoldiersOrCrows {
15164
16098
  }
15165
16099
  if (Symbol.dispose) ThreeSoldiersOrCrows.prototype[Symbol.dispose] = ThreeSoldiersOrCrows.prototype.free;
15166
16100
 
16101
+ export class TradeImbalance {
16102
+ __destroy_into_raw() {
16103
+ const ptr = this.__wbg_ptr;
16104
+ this.__wbg_ptr = 0;
16105
+ TradeImbalanceFinalization.unregister(this);
16106
+ return ptr;
16107
+ }
16108
+ free() {
16109
+ const ptr = this.__destroy_into_raw();
16110
+ wasm.__wbg_tradeimbalance_free(ptr, 0);
16111
+ }
16112
+ /**
16113
+ * @returns {boolean}
16114
+ */
16115
+ isReady() {
16116
+ const ret = wasm.tradeimbalance_isReady(this.__wbg_ptr);
16117
+ return ret !== 0;
16118
+ }
16119
+ /**
16120
+ * @param {number} window
16121
+ */
16122
+ constructor(window) {
16123
+ try {
16124
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
16125
+ wasm.tradeimbalance_new(retptr, window);
16126
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
16127
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
16128
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
16129
+ if (r2) {
16130
+ throw takeObject(r1);
16131
+ }
16132
+ this.__wbg_ptr = r0;
16133
+ TradeImbalanceFinalization.register(this, this.__wbg_ptr, this);
16134
+ return this;
16135
+ } finally {
16136
+ wasm.__wbindgen_add_to_stack_pointer(16);
16137
+ }
16138
+ }
16139
+ reset() {
16140
+ wasm.tradeimbalance_reset(this.__wbg_ptr);
16141
+ }
16142
+ /**
16143
+ * @param {number} price
16144
+ * @param {number} size
16145
+ * @param {boolean} is_buy
16146
+ * @returns {number | undefined}
16147
+ */
16148
+ update(price, size, is_buy) {
16149
+ try {
16150
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-32);
16151
+ wasm.tradeimbalance_update(retptr, this.__wbg_ptr, price, size, is_buy);
16152
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
16153
+ var r2 = getDataViewMemory0().getFloat64(retptr + 8 * 1, true);
16154
+ var r4 = getDataViewMemory0().getInt32(retptr + 4 * 4, true);
16155
+ var r5 = getDataViewMemory0().getInt32(retptr + 4 * 5, true);
16156
+ if (r5) {
16157
+ throw takeObject(r4);
16158
+ }
16159
+ return r0 === 0 ? undefined : r2;
16160
+ } finally {
16161
+ wasm.__wbindgen_add_to_stack_pointer(32);
16162
+ }
16163
+ }
16164
+ /**
16165
+ * @returns {number}
16166
+ */
16167
+ warmupPeriod() {
16168
+ const ret = wasm.tradeimbalance_warmupPeriod(this.__wbg_ptr);
16169
+ return ret >>> 0;
16170
+ }
16171
+ }
16172
+ if (Symbol.dispose) TradeImbalance.prototype[Symbol.dispose] = TradeImbalance.prototype.free;
16173
+
15167
16174
  export class TreynorRatio {
15168
16175
  __destroy_into_raw() {
15169
16176
  const ptr = this.__wbg_ptr;
@@ -18166,6 +19173,9 @@ const CMOFinalization = (typeof FinalizationRegistry === 'undefined')
18166
19173
  const CoefficientOfVariationFinalization = (typeof FinalizationRegistry === 'undefined')
18167
19174
  ? { register: () => {}, unregister: () => {} }
18168
19175
  : new FinalizationRegistry(ptr => wasm.__wbg_coefficientofvariation_free(ptr, 1));
19176
+ const CointegrationFinalization = (typeof FinalizationRegistry === 'undefined')
19177
+ ? { register: () => {}, unregister: () => {} }
19178
+ : new FinalizationRegistry(ptr => wasm.__wbg_cointegration_free(ptr, 1));
18169
19179
  const ConditionalValueAtRiskFinalization = (typeof FinalizationRegistry === 'undefined')
18170
19180
  ? { register: () => {}, unregister: () => {} }
18171
19181
  : new FinalizationRegistry(ptr => wasm.__wbg_conditionalvalueatrisk_free(ptr, 1));
@@ -18175,6 +19185,9 @@ const ConnorsRSIFinalization = (typeof FinalizationRegistry === 'undefined')
18175
19185
  const CoppockFinalization = (typeof FinalizationRegistry === 'undefined')
18176
19186
  ? { register: () => {}, unregister: () => {} }
18177
19187
  : new FinalizationRegistry(ptr => wasm.__wbg_coppock_free(ptr, 1));
19188
+ const CumulativeVolumeDeltaFinalization = (typeof FinalizationRegistry === 'undefined')
19189
+ ? { register: () => {}, unregister: () => {} }
19190
+ : new FinalizationRegistry(ptr => wasm.__wbg_cumulativevolumedelta_free(ptr, 1));
18178
19191
  const CyberneticCycleFinalization = (typeof FinalizationRegistry === 'undefined')
18179
19192
  ? { register: () => {}, unregister: () => {} }
18180
19193
  : new FinalizationRegistry(ptr => wasm.__wbg_cyberneticcycle_free(ptr, 1));
@@ -18334,6 +19347,9 @@ const KVOFinalization = (typeof FinalizationRegistry === 'undefined')
18334
19347
  const LaguerreRSIFinalization = (typeof FinalizationRegistry === 'undefined')
18335
19348
  ? { register: () => {}, unregister: () => {} }
18336
19349
  : new FinalizationRegistry(ptr => wasm.__wbg_laguerrersi_free(ptr, 1));
19350
+ const LeadLagCrossCorrelationFinalization = (typeof FinalizationRegistry === 'undefined')
19351
+ ? { register: () => {}, unregister: () => {} }
19352
+ : new FinalizationRegistry(ptr => wasm.__wbg_leadlagcrosscorrelation_free(ptr, 1));
18337
19353
  const LinRegAngleFinalization = (typeof FinalizationRegistry === 'undefined')
18338
19354
  ? { register: () => {}, unregister: () => {} }
18339
19355
  : new FinalizationRegistry(ptr => wasm.__wbg_linregangle_free(ptr, 1));
@@ -18379,6 +19395,9 @@ const MedianPriceFinalization = (typeof FinalizationRegistry === 'undefined')
18379
19395
  const MFIFinalization = (typeof FinalizationRegistry === 'undefined')
18380
19396
  ? { register: () => {}, unregister: () => {} }
18381
19397
  : new FinalizationRegistry(ptr => wasm.__wbg_mfi_free(ptr, 1));
19398
+ const MicropriceFinalization = (typeof FinalizationRegistry === 'undefined')
19399
+ ? { register: () => {}, unregister: () => {} }
19400
+ : new FinalizationRegistry(ptr => wasm.__wbg_microprice_free(ptr, 1));
18382
19401
  const MOMFinalization = (typeof FinalizationRegistry === 'undefined')
18383
19402
  ? { register: () => {}, unregister: () => {} }
18384
19403
  : new FinalizationRegistry(ptr => wasm.__wbg_mom_free(ptr, 1));
@@ -18400,9 +19419,24 @@ const OmegaRatioFinalization = (typeof FinalizationRegistry === 'undefined')
18400
19419
  const OpeningRangeFinalization = (typeof FinalizationRegistry === 'undefined')
18401
19420
  ? { register: () => {}, unregister: () => {} }
18402
19421
  : new FinalizationRegistry(ptr => wasm.__wbg_openingrange_free(ptr, 1));
19422
+ const OrderBookImbalanceFullFinalization = (typeof FinalizationRegistry === 'undefined')
19423
+ ? { register: () => {}, unregister: () => {} }
19424
+ : new FinalizationRegistry(ptr => wasm.__wbg_orderbookimbalancefull_free(ptr, 1));
19425
+ const OrderBookImbalanceTop1Finalization = (typeof FinalizationRegistry === 'undefined')
19426
+ ? { register: () => {}, unregister: () => {} }
19427
+ : new FinalizationRegistry(ptr => wasm.__wbg_orderbookimbalancetop1_free(ptr, 1));
19428
+ const OrderBookImbalanceTopNFinalization = (typeof FinalizationRegistry === 'undefined')
19429
+ ? { register: () => {}, unregister: () => {} }
19430
+ : new FinalizationRegistry(ptr => wasm.__wbg_orderbookimbalancetopn_free(ptr, 1));
18403
19431
  const PainIndexFinalization = (typeof FinalizationRegistry === 'undefined')
18404
19432
  ? { register: () => {}, unregister: () => {} }
18405
19433
  : new FinalizationRegistry(ptr => wasm.__wbg_painindex_free(ptr, 1));
19434
+ const PairSpreadZScoreFinalization = (typeof FinalizationRegistry === 'undefined')
19435
+ ? { register: () => {}, unregister: () => {} }
19436
+ : new FinalizationRegistry(ptr => wasm.__wbg_pairspreadzscore_free(ptr, 1));
19437
+ const PairwiseBetaFinalization = (typeof FinalizationRegistry === 'undefined')
19438
+ ? { register: () => {}, unregister: () => {} }
19439
+ : new FinalizationRegistry(ptr => wasm.__wbg_pairwisebeta_free(ptr, 1));
18406
19440
  const ParkinsonVolatilityFinalization = (typeof FinalizationRegistry === 'undefined')
18407
19441
  ? { register: () => {}, unregister: () => {} }
18408
19442
  : new FinalizationRegistry(ptr => wasm.__wbg_parkinsonvolatility_free(ptr, 1));
@@ -18436,12 +19470,18 @@ const PSARFinalization = (typeof FinalizationRegistry === 'undefined')
18436
19470
  const PVIFinalization = (typeof FinalizationRegistry === 'undefined')
18437
19471
  ? { register: () => {}, unregister: () => {} }
18438
19472
  : new FinalizationRegistry(ptr => wasm.__wbg_pvi_free(ptr, 1));
19473
+ const QuotedSpreadFinalization = (typeof FinalizationRegistry === 'undefined')
19474
+ ? { register: () => {}, unregister: () => {} }
19475
+ : new FinalizationRegistry(ptr => wasm.__wbg_quotedspread_free(ptr, 1));
18439
19476
  const RSquaredFinalization = (typeof FinalizationRegistry === 'undefined')
18440
19477
  ? { register: () => {}, unregister: () => {} }
18441
19478
  : new FinalizationRegistry(ptr => wasm.__wbg_rsquared_free(ptr, 1));
18442
19479
  const RecoveryFactorFinalization = (typeof FinalizationRegistry === 'undefined')
18443
19480
  ? { register: () => {}, unregister: () => {} }
18444
19481
  : new FinalizationRegistry(ptr => wasm.__wbg_recoveryfactor_free(ptr, 1));
19482
+ const RelativeStrengthABFinalization = (typeof FinalizationRegistry === 'undefined')
19483
+ ? { register: () => {}, unregister: () => {} }
19484
+ : new FinalizationRegistry(ptr => wasm.__wbg_relativestrengthab_free(ptr, 1));
18445
19485
  const RenkoTrailingStopFinalization = (typeof FinalizationRegistry === 'undefined')
18446
19486
  ? { register: () => {}, unregister: () => {} }
18447
19487
  : new FinalizationRegistry(ptr => wasm.__wbg_renkotrailingstop_free(ptr, 1));
@@ -18475,6 +19515,9 @@ const SharpeRatioFinalization = (typeof FinalizationRegistry === 'undefined')
18475
19515
  const ShootingStarFinalization = (typeof FinalizationRegistry === 'undefined')
18476
19516
  ? { register: () => {}, unregister: () => {} }
18477
19517
  : new FinalizationRegistry(ptr => wasm.__wbg_shootingstar_free(ptr, 1));
19518
+ const SignedVolumeFinalization = (typeof FinalizationRegistry === 'undefined')
19519
+ ? { register: () => {}, unregister: () => {} }
19520
+ : new FinalizationRegistry(ptr => wasm.__wbg_signedvolume_free(ptr, 1));
18478
19521
  const SineWaveFinalization = (typeof FinalizationRegistry === 'undefined')
18479
19522
  ? { register: () => {}, unregister: () => {} }
18480
19523
  : new FinalizationRegistry(ptr => wasm.__wbg_sinewave_free(ptr, 1));
@@ -18583,6 +19626,9 @@ const ThreeSoldiersOrCrowsFinalization = (typeof FinalizationRegistry === 'undef
18583
19626
  const TIIFinalization = (typeof FinalizationRegistry === 'undefined')
18584
19627
  ? { register: () => {}, unregister: () => {} }
18585
19628
  : new FinalizationRegistry(ptr => wasm.__wbg_tii_free(ptr, 1));
19629
+ const TradeImbalanceFinalization = (typeof FinalizationRegistry === 'undefined')
19630
+ ? { register: () => {}, unregister: () => {} }
19631
+ : new FinalizationRegistry(ptr => wasm.__wbg_tradeimbalance_free(ptr, 1));
18586
19632
  const TreynorRatioFinalization = (typeof FinalizationRegistry === 'undefined')
18587
19633
  ? { register: () => {}, unregister: () => {} }
18588
19634
  : new FinalizationRegistry(ptr => wasm.__wbg_treynorratio_free(ptr, 1));